Doug,

First I'd like to say how much I enjoy your blog and tinkering with
the things you create. I learn a ton off your blog.  :-)

I had posted on Michael's blog a couple days ago asking if he was
going to post the source for the carousel.  I wan't holding my breath
though since I noticed he just had a new addition to his family
arrive.  I'm happy to hear he found the time to post it.  I knew there
had to be something going on in his carousel that I wasn't thinking
about.  Tweening the one currentPosition property instead of a
bazillion tweens makes absolute sense.

Funny you should mention Jim Armstrong's site.  I spend quite some
time there yesterday reading his stuff.  Very interesting stuff but
like you said, complete overkill for what I am trying to achieve.  

I also wanted to avoid a heavy height engine like papervision.

Thanks for your post, it helped a lot.

Mike

--- In [email protected], "Doug McCune" <[EMAIL PROTECTED]> wrote:
>
> For starters, the presentation you're referring from Michael
Labriola to was
> just posted online: http://blogs.digitalpri
> mates.net/codeSlinger/index.cfm/2007/10/28/Max-Presentation
> 
> The basic idea that I think makes sense for you to approach the
problem with
> is that you want a function that lays out all your items for any given
> rotation of the circle. This function doesn't do anything in terms of
> animating. All it does is lays out your items given a particular
rotation of
> your circle. So if you have a method like:
> 
> function layoutItems(angle:Number):void {
> //layout all your items here for the given angle passed in
> }
> 
> then you just make sure to call that function whenever you change the
> rotation of your circle. You can make that happen in a setter for a
property
> on your class, and then you can tween that property. Not sure if
that's all
> making sense. Take a look at the code from the MAX preso in the link
above.
> You'll see a setter for a property called currentPosition. That
setter calls
> invalidateDisplayList(), and in updateDisplayist he's got the code that
> moves all the items to their proper positions given whatever
currentPosition
> has been set to.
> 
> Then what he does is tweens the currentPosition property. So he
doesn't have
> to have a bazillion tweens running for each of his items. He tweens
a single
> property, and then when that property gets set, he makes sure to
re-layout
> the items.
> 
> If you want to go completely overboard and learn how to do crazy
stuff with
> animating on paths (in 2D and in 3D) then you can read up on Jim
Armstrong's
> blog: http://algorithmist.wordpress.com He has tons of stuff about
animating
> along curves and gets into the crazy math you need. That's overkill
for what
> you're trying to do, but worth checking out.
> 
> Doug
> 
> On 10/28/07, Bjorn Schultheiss <[EMAIL PROTECTED]> wrote:
> >
> >   I wasn't at Max, but have you seen this,
> > http://labs.zeh.com.br/blog/?p=95 ?
> >
> > Bjorn
> >
> >
> > On 29/10/2007, at 1:34 AM, snowjunkie73 wrote:
> >
> > At Adobe Max 2007 I went to a session on creating custom components in
> > Flex. The example component used in the session was a custom carousel
> > component where objects would tween along a circular path. The source
> > for this example class was never released, but I am fairly certain
> > that the math for the path was done entirely in Flex, and it was not
> > using a Flash CS3 generated path. The movement was nice and smooth.
> >
> > I'm trying to do my own tweening along a circular path but in a flat
> > 2d manner. I've done all the math in action script 3 to find the
> > circular path but I am having trouble getting objects to move smoothly
> > along the path. Basically I pick a number of points along the path
> > and use Move effects from point to point. The more points I pick the
> > closer it appears to be on a true circle. I've tried both manually
> > kicking off each individual move effect from the effect end event and
> > also putting the move effects in a sequence effect. Both methods
> > cause the motion to be either extremely slow (if I set each move
> > duration to be large) or pretty jerky (if I set the move duration to
> > be very small like 0-2). It appears that there is a pause between the
> > end of each move effect before the next move effect starts.
> >
> > The reason I want to do it all in code is that I want to be able to
> > vary the radius of my circular path dynamically. Anyone have ideas on
> > how I can get smoother motion along my path? Thanks in advance.
> >
> >
> >
>


Reply via email to