Quantcast

Trajectories with different internal and external representations

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Trajectories with different internal and external representations

Michael Koval
Hi All,

I'm implementing a trajectory plugin (F-curves) that is parameterized by a sequence of keyframes. Each keyframe contains several control points that are the control points are used internally to implement the Sample() function, but don't have an intuitive mapping to the joint values.

I am having trouble figuring out what exactly GetConfigurationSpecification should return. There are a few reasonable options:

1. groups for internal parameters
2. groups for joint values, joint velocities, joint accelerations
3. all of the above

They all seem to have quirks: (1) makes it difficult to programatically extract joint values, (2) makes it difficult to modify the control points, and (3) is a confusing combination of both.

Any thoughts?

-Michael

------------------------------------------------------------------------------
Shape the Mobile Experience: Free Subscription
Software experts and developers: Be at the forefront of tech innovation.
Intel(R) Software Adrenaline delivers strategic insight and game-changing
conversations that shape the rapidly evolving mobile landscape. Sign up now.
http://pubads.g.doubleclick.net/gampad/clk?id=63431311&iu=/4140/ostg.clktrk
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Trajectories with different internal and external representations

Rosen Diankov
Administrator
not sure what F-curves are, but it seems that your configuration space isn't joint values, so your GetConfigurationSpecification should just use 1), then provide a separate function that converts to joint values. I'm guessing you'll never be converting jointvalues -> F-curves?


2013/11/23 Michael Koval <[hidden email]>
Hi All,

I'm implementing a trajectory plugin (F-curves) that is parameterized by a sequence of keyframes. Each keyframe contains several control points that are the control points are used internally to implement the Sample() function, but don't have an intuitive mapping to the joint values.

I am having trouble figuring out what exactly GetConfigurationSpecification should return. There are a few reasonable options:

1. groups for internal parameters
2. groups for joint values, joint velocities, joint accelerations
3. all of the above

They all seem to have quirks: (1) makes it difficult to programatically extract joint values, (2) makes it difficult to modify the control points, and (3) is a confusing combination of both.

Any thoughts?

-Michael

------------------------------------------------------------------------------
Shape the Mobile Experience: Free Subscription
Software experts and developers: Be at the forefront of tech innovation.
Intel(R) Software Adrenaline delivers strategic insight and game-changing
conversations that shape the rapidly evolving mobile landscape. Sign up now.
http://pubads.g.doubleclick.net/gampad/clk?id=63431311&iu=/4140/ostg.clktrk
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users



------------------------------------------------------------------------------
Shape the Mobile Experience: Free Subscription
Software experts and developers: Be at the forefront of tech innovation.
Intel(R) Software Adrenaline delivers strategic insight and game-changing
conversations that shape the rapidly evolving mobile landscape. Sign up now.
http://pubads.g.doubleclick.net/gampad/clk?id=63431311&iu=/4140/ostg.clktrk
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Trajectories with different internal and external representations

Michael Koval
Thanks for the reply.

F-curves are a trajectory representation used in animation software (e.g. Blender) and, in our case, are third-order Bezier curves constrained to have monotone time. An F-curve is parameterized by a vector of handle positions over a sequence of waypoints. We will never be converting joint values to F-curves, but we will be sampling joint values from F-curves.

We are currently doing (1) and have implemented a Sample function that accepts a ConfigurationSpecification like (2). Calling the default Sample method throws an exception because it doesn't make any sense to sample F-curve parameters. This is a bit awkward because GetConfigurationSpecification returns only the F-curve parameters and, as a result, there is no programmatic way to tell that the trajectory can be sampled with joint_values, joint_velocities, and joint_accelerations groups.


On Fri, Nov 22, 2013 at 8:53 PM, Rosen Diankov <[hidden email]> wrote:
not sure what F-curves are, but it seems that your configuration space isn't joint values, so your GetConfigurationSpecification should just use 1), then provide a separate function that converts to joint values. I'm guessing you'll never be converting jointvalues -> F-curves?


2013/11/23 Michael Koval <[hidden email]>
Hi All,

I'm implementing a trajectory plugin (F-curves) that is parameterized by a sequence of keyframes. Each keyframe contains several control points that are the control points are used internally to implement the Sample() function, but don't have an intuitive mapping to the joint values.

I am having trouble figuring out what exactly GetConfigurationSpecification should return. There are a few reasonable options:

1. groups for internal parameters
2. groups for joint values, joint velocities, joint accelerations
3. all of the above

They all seem to have quirks: (1) makes it difficult to programatically extract joint values, (2) makes it difficult to modify the control points, and (3) is a confusing combination of both.

Any thoughts?

-Michael

------------------------------------------------------------------------------
Shape the Mobile Experience: Free Subscription
Software experts and developers: Be at the forefront of tech innovation.
Intel(R) Software Adrenaline delivers strategic insight and game-changing
conversations that shape the rapidly evolving mobile landscape. Sign up now.
http://pubads.g.doubleclick.net/gampad/clk?id=63431311&iu=/4140/ostg.clktrk
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users




------------------------------------------------------------------------------
Shape the Mobile Experience: Free Subscription
Software experts and developers: Be at the forefront of tech innovation.
Intel(R) Software Adrenaline delivers strategic insight and game-changing
conversations that shape the rapidly evolving mobile landscape. Sign up now.
http://pubads.g.doubleclick.net/gampad/clk?id=63431311&iu=/4140/ostg.clktrk
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users
Loading...