TheRamp
v0r11
Click to Launch
New in this version:
- Graphics have been moved to Piccolo.
- Charts are delegated to JFreeChart.
- Water splash to cool off on reset
thermal energy button.
- Force Vector Arrows (and labels)
should be offset (non-overlapping).
- Especially problematic for small
force arrows.
- Force Vector Arrows are much smaller,
and opaque.
- Audio (for crashes)
- Improved force arrow colors.
- Checkboxes should allow user to show
any combination of energy (on graphs)
- Add vertical & horizontal axes to
bar graphs.
- Man is now crushable.
- Wiggle me for applied force.
- Added Advanced control to set initial
conditions.:
- Angle, Position, Applied force
- Added in-play-area applied force
control.
- text boxes on left hand side.
- Go/Pause/Clear next to the slider (not
the energy or work graphs).
- Charts have value readouts.
- Add option to graph Parallel
Components of forces
- Plots resize to fill available area
(when others are minimized).
- Charts are zoomable.
- The mouse interaction is thresholded.
- On intro panel, all grab bag choices
are shown at once.
- Added FBD in advanced control panel.
- Added Minimize buttons for bar graphs.
- Added sparse stripes in the
perpendicular direction of the unit vector.
- Implemented for x & y, waiting
for feedback.
- The simulation is segregated into 2
Tabs:
- Introduction
- More Features
Bugfixes
- 100% processor while just sitting
(graphs visible)
- Simulation should stop at 20 seconds.
- Reset has no warning box.
- Play Button should not be selectable
until the user has stopped taking data.
- Applying a force across the surface
boundary should recompute the force arrow (it shows up at the wrong
(same old) angle).
- Man position should move with block
(not merely when applied force changes.)
- Timer should stop after 20 seconds
(like moving man). This is because the x-y
graph also stops at that point and it’ll help reduce the heat.
- Chart cursor drags past
end of graph.
- There should be a
transient wall force upon crash.
- The object ‘sticks’ at
the boundary between ramp & ground, causing discontinuity in
velocity.
- Visibility of objects
in chart needs to be redesigned.
- Chart cursor incorrectly appears when
invisible & other chart cursor is dragged.
- Reset should remove
‘warning overheated’ item.
- Wall force and applied
force are similar color.
- Sometimes after record,
then playback, then grab-to-start-record, the model gets messed up.
- Man is at wrong
location during playback.
- The man jumps location when the block
changes surfaces.
- Arrow text label centering fails for
arrows at angles.
- Text has been moved to where arrows
point (not in the center of the arrow)
Finalization:
- Start the block at zero height,
halfway along the ramp.
- Performance Enhancement:
- Piccolo incorrectly
calls repaint on a region with invisible graphics (when invisible bar
charts change).
- Man graphic isn’t
changing, but is getting set as dirty region on playback. (These
problems can recur.)
- Tested at 1024x768.
Discarded Tasks:
- The Total energy bar should be
multicolored showing the addition of all other energy as with the
springs and masses bar graphs. I would not
suggest this feature for Net Work because of the negative work done by
friction. VS. Both Applied Work and
Total energy having the same (solid) color.
- Since this can’t be done for the
work bar, we decided against this.
- Add a Work done by Normal Force bar
(even though it’s always zero)?
- This seems like the wrong way to
convey this idea.
- If only 4 choices I’d replace crate
with sleepy dog: 25kg
- We chose to stay in the above 100kg
range to constrain the force arrow vector graphics.
Remaining Features
Graphics:
- Striped Arrow coordinate view stripes
for perp & parallel?
- My technique will be difficult for
perp & parallel. We shall confer about
the Cartesian arrow graphics before pursuing.
Bugs:
- When reset button changes (in go pause
clear), it is not added to dirty regions.
- The height readout of the ramp’s end
doesn’t respect the zero-point potential energy height level.
Internal:
- Convert layout code to size-agnostic
(not hard-coded).
- Refactor RampLookAndFeel to be field
of RampPanel.
Questions:
- Rename or coname Applied Force to Push
or Man or Applied (push) or something like that. I
don’t think students will easily make the connection between applied
and the push.
- Some other object (not a brick wall)
at the top of the ramp?
- Someone else suggested this, I think
a brick wall is fine.
- Block incorrectly
curves around a 90 degree angle.
- Should we ignore this?
- Or restrict the angle
of the ramp?
- Or implement correct
crash physics?
- How to cue user when no graphs are
visible & time runs out (so that things stop moving?)
Finalizing:
- Performance Enhancement.
- How to render images
at high resolution at view scale = 1.0?
- Test at lower resolution.
- Wiggle me to drag the ramp (2nd
panel only).
- Add help.
Extremely Low
Priority:
- Water splash should hit
the block.
- Running over the man
with the block should squash him.
- Reduce overlapping of force vector
labels.