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