RE: [script] Creating relative values fcurve

Date : Mon, 30 Apr 2007 16:53:58 +0100
To : <XSI(at)Softimage.COM>
From : "kim aldis" <kim.aldis(at)gmail.com>
Subject : RE: [script] Creating relative values fcurve
Just for the pure pendency of it Bernard, try just cutting the script out of
my  mail and pasting from one of these mails into a new xsi at your end, see
what happens. You never know.

> -----Original Message-----
> From: owner-xsi(at)Softimage.COM [mailto:owner-xsi(at)Softimage.COM] On
> Behalf Of Bernard Lebel
> Sent: 30 April 2007 16:47
> To: XSI(at)Softimage.COM
> Subject: Re: [script] Creating relative values fcurve
> 
> Hum, the mystery is getting thicker!
> Thanks a lot guys for trying out.
> 
> 
> Storing the expressions in an action clip prior to re-create them is
> good enough for what I need now, but it's annoying I can't re-create
> them entirely by scripting.
> 
> Cheers
> Bernard
> 
> 
> 
> On 4/30/07, squid <squid(at)3d-palace.com> wrote:
> > same here.
> >
> > var nullobj = ActiveSceneRoot.AddNull("nullToCopyFrom");
> > var aValues = [0.00, 0.00, 25.00, 5.00]
> > nullobj.posx.AddFCurve2(aValues);
> >
> > var nullobj1 = ActiveSceneRoot.AddNull("CopiedKeys");
> > var fc = nullobj1.posy.AddFCurve();
> >
> > var iLen = aValues.length;
> > fc.beginEdit();
> > for(var i =0; i < iLen; i+=2)
> > {
> >     var fTime = aValues[i];
> >     var fVal =     aValues[1+i];
> >     fc.addKey(fTime, fVal, 0, true);
> > }
> >
> > fc.endEdit();
> >
> > kim aldis wrote:
> > > The code below works as I'd expect, Bernard. One key added at frame
> one,
> > > value 1.0 the next at frame 25, value 10.
> > >
> > > oFcurve = selection(0).posx.source;
> > >
> > > var oFcurveKeys = new Array( 1,0,25,10 )
> > > oFcurve.beginedit();
> > > iLength = oFcurveKeys.length;
> > >
> > >
> > >  for( i = 0; i < iLength; i=i+2 ) {
> > >    fTime = oFcurveKeys[i];
> > >   fValue = oFcurveKeys[i+1];
> > >   oFcurve.addkey( fTime, fValue, 0, true );
> > >
> > > }
> > >  oFcurve.endedit();
> > >
> > >
> > >> -----Original Message-----
> > >> From: owner-xsi(at)Softimage.COM [mailto:owner-xsi(at)Softimage.COM] On
> > >> Behalf Of Bernard Lebel
> > >> Sent: 30 April 2007 14:58
> > >> To: XSI(at)Softimage.COM
> > >> Subject: Re: [script] Creating relative values fcurve
> > >>
> > >> Okay I tried it with the other possible tolerance value, -1. Same
> > >> result: the second key is at frame 1/value 1 instead of frame
> 25/value
> > >> 1.
> > >>
> > >>
> > >>
> > >> "The tolerance argument can be used to merge all keys within a
> certain
> > >> range. The range is defined as Frame - Tolerance and Frame +
> > >> Tolerance. The merged key inherits the constraints of the nearest
> key
> > >> within this range. "
> > >>
> > >> I don't see how this description explains the result I'm
> getting.... :-
> > >> (
> > >>
> > >>
> > >> Cheers
> > >> Bernard
> > >>
> > >>
> > >>
> > >>
> > >> On 4/27/07, Bradley Gabe <withanar(at)stanwinston.com> wrote:
> > >>
> > >>>  Bernard, not a showstopper. Check the documentation on the
> addkey()
> > >>>
> > >> method
> > >>
> > >>> and you'll see what's happening. The third parameter is for
> > >>>
> > >> tolerance, which
> > >>
> > >>> you have set to 0, and that forces the key to be set on exact
> frames.
> > >>>
> > >>>  -Brad
> > >>>
> > >>>
> > >>>
> > >>>
> > >>> Hello,
> > >>>
> > >>> I'm running into this show-stopper.
> > >>>
> > >>> I'm trying to re-create the fcurve of a relative value
> expression.
> > >>> I create the expression, no problem at all.
> > >>> Then I get its relative fcurve parameter, no problem.
> > >>> Then I loop over a one dimensional array of time/value numbers,
> and
> > >>> create the keyframes:
> > >>>
> > >>>
> > >>> oFcurve.beginedit();
> > >>> iLength = oFcurveKeys.length;
> > >>>
> > >>> for( i = 0; i < iLength; i=i+2 ) {
> > >>>  fTime = oFcurveKeys[i];
> > >>>  fValue = oFcurveKeys[i+1];
> > >>>  oFcurve.addkey( fTime, fValue, 0, true );
> > >>> }
> > >>>
> > >>> oFcurve.endedit();
> > >>>
> > >>> (in this example I use a loop, but the SetKeys method gives the
> same
> > >>> result I'm about to describe)
> > >>>
> > >>>
> > >>> Now, I get all the keyframes. In this particular, I have two
> > >>> keyframes. The first one is all right. BUT the second one, for
> the
> > >>> life of me, refuses to be placed anywhere else than at frame 1.0.
> > >>>
> > >>> If I then print its frame, it's the frame I specified (25, for
> > >>> example). But in the animation editor, it's located at 1/1. Also,
> > >>>
> > >> when
> > >>
> > >>> viewing its effect in viewport, I can *see* it's 1/1. Yet
> printing
> > >>>
> > >> its
> > >>
> > >>> frame says 25.
> > >>>
> > >>> ARGGGGHHHH
> > >>>
> > >>>
> > >>> Any idea?
> > >>>
> > >>>
> > >>> Thanks
> > >>> Bernard
> > >>> ---
> > >>> Unsubscribe? Mail Majordomo(at)Softimage.COM with the following text
> in
> > >>>
> > >> body:
> > >>
> > >>> unsubscribe xsi
> > >>>
> > >>>
> > >>>
> > >> ---
> > >> Unsubscribe? Mail Majordomo(at)Softimage.COM with the following text
> in
> > >> body:
> > >> unsubscribe xsi
> > >>
> > >
> > > ---
> > > Unsubscribe? Mail Majordomo(at)Softimage.COM with the following text
> in body:
> > > unsubscribe xsi
> > >
> > >
> > >
> > ---
> > Unsubscribe? Mail Majordomo(at)Softimage.COM with the following text in
> body:
> > unsubscribe xsi
> >
> ---
> Unsubscribe? Mail Majordomo(at)Softimage.COM with the following text in
> body:
> unsubscribe xsi

---
Unsubscribe? Mail Majordomo(at)Softimage.COM with the following text in body:
unsubscribe xsi


Search the XSI List archives here or use the advanced search form to search across mailing lists. Searching help is available.
This site supposedly brought to you by Benjamin Grosser and the Imaging Technology Group.