Roger Guay Wrote:Roger,
Sarah, Jim
What I'm trying to do is trace a line in time as a ball is moved across
the screen. Near as I can tell, I want the screen to update but not
redraw (if that makes any sense?) I've done this in ToolBook on the PC
but I much prefer to stay on my Mac. Here is a description of my stack:
Create a vertical line and label it "Yaxis" and an horizontal line and
Label it "Xaxis" such that they intersect and define the origin somewhere near the lower left corner of your stack. Create a brightly
colored circle graphic and name it "Ball." Create 2 fields, one for
Theta so labeled which defines the angle from the horizon that the ball
is being fired, and one for V so labeled which defines the velocity of
the ball when fired. Create a "Fire" button and insert the following
script:
on MouseUp
global V, Xo, Yo, Theta, T, X
--put item 1 of the rect of graphic "Yaxis" into Xo. Yaxis is a
vertical line and Xo,Yo define the origin of motion
--put item 4 of the rect of graphic "Yaxis" into Yo.
put field "V" into V ---- try a value of about 27 in field "V"
Put the value of field "Theta" into Theta ----try a value of 1.2 in
field "Theta"
set the loc of graphic "mortor" to Xo,Yo ---- Graphic "mortor" is a
small red round ball.
show graphic "mortor"
put 0 into T
put xo into x
put Yo into y
play "Mortor.aiff"
repeat while Y <= Yo + 1
add 1 to T
put the value of (Xo+V*cos(Theta)*T ) into x
put the value of (Yo - V*sin(Theta)*T + .5*T^2 ) into Y
set the loc of graphic "mortor" to X,Y
wait 1
end repeat
---------- the rest of the script results in a silly explosion at the
last location of the mortor -------
play "Boom.aiff"
hide graphic "mortor"
set the loc of graphic "Burst" to x,Yo
repeat 35
show graphic "burst"
wait 1
hide graphic "burst"
wait 1
end repeat
end MouseUp
Jim has actually provided a solution for me that works well if I insert
"wait .01" in his repeat loops. I can only assume it has something to
do with processing speed of the computer (I'm using a high end iMac
with OS X.) Without the "wait" command in the repeat loop, Jim's
scripts are very choppy on my computer.
Finally, as I say, Jim's solution works well but I think it would
nevertheless be more "elegant" to do this as I have in ToolBook where
one is able to stop the screen redraw.
Thanks very much for joining in the fun, Roger
I think I see the problem. It is not a difficulty with refreshing the screen but the very large sampling times in the trajectory equations. If you change "add 1 to T" to "add .05 to T" you will get a much smoother motion. At least it does on my PowerBook running OS 8.6
But I thought you wanted a line drawn in the wake of the graphic motion?
I couldn't try your sound effects. They should add a nice touch to the visual. I have seen discussions on this list of problems with sound effects timing; that could be a conflict for you. I can't help you there.
You will find a number of these problems in dynamics illustrated in the demo on the RR web site on the Education page including the projectile motion you are working on as well as planetary motion, Kepler's 2nd law (planets sweep out equal areas in equal times), the voyager sling shot effect as it moved around Jupiter and others. The graphic I use there is the turtle, which I represent with an arrow icon, which allows me to show heading as well as position. But it is easily modified to move any one or more RR controls (buttons, fields, graphics, images, etc.). You have the option of leaving a line in the turtle's wake or not.
Good luck with your project. The sound effects are a nice touch.
Jim
_______________________________________________
use-revolution mailing list
[EMAIL PROTECTED]
http://lists.runrev.com/mailman/listinfo/use-revolution
