Moving Smoothly
-
I want to move things smoothly. I'm experimenting with thread functions, so far without success. In the sample code, I added a
sleep( 1 )to a move/copy routine, hoping to see copies added at 1 second intervals. What I see is a long wait and then everything appears at once.def move_copy( component, distance, number_of_copies ) =begin Creates an outer array, moving a component "distance" as many times as specified. "distance" is a vector, an array of [r, g, b]. "number_of_copies" is like the "Nx" in the VCB after a Move/Copy. For 15 steps, you make 14 copies. =end ents = Sketchup.active_model.entities defi = component.definition # the original component's definition trans = component.transformation # the original's transformation pt = trans.origin # the original's location, a Point3d for i in ( 1..number_of_copies ) pt += distance # add vector to Point3d getting new Point3d trans = Geom;;Transformation.new( pt ) # create new Transformation at the new Point3d ents.add_instance( defi, trans ) # add another instance at the new Point3d sleep( 1 ) end end # of move_copy()Ideas?
-
Use the Animation class. Or a timer.
-
Or a frame change observer to animate entities a'tween scenes.
Some plugins that use these techniques:
- Proper Animation - morrisdov
- mover - cmd
- mover modified with easings and dialog
- SketchyPhysics
- animation.rb - @last
- animation2.rb - @last
- animated clock - todd burch
- transformer beta - didier bur
-
Maybe the view just isn't refreshing on each iteration? Try adding a view.invalidate of view.refresh before each sleep.
-
-
Don't forget that refresh is new to 7.1 (or was it 7.0?). Anyhow, it is new and not compatible with older versions...
Chris
-
@chris fullmer said:
Don't forget that refresh is new to 7.1 (or was it 7.0?). Anyhow, it is new and not compatible with older versions...
Chris
7.1
http://code.google.com/intl/nb/apis/sketchup/docs/releases.html
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better π
Register LoginAdvertisement