ok, but this way i can use position3d to control end-effector position instead of limb.
So why we need limb interface, i think there should be single interface to control end effector.
Limb should provide full control over end effector.
Maybe position3d should be used instead ?

2009/6/22 Geoff
If you want to control the linear and angular velocity of the end
effector, you should make your driver provide a position3d interface as
well.

Geoff

> Thanks for explanation.
> I have few more questions.
> I want to be able to get and set linear and angular velocity of the end
> effector.
> As far as i know this will require modification of interface.
> How to describe velocities in the same manner like orientation ?
> How to add it to interface ?
> Velocities should be part of limb_data or be available on request ?
>
> 2009/6/21 Geoff <gbiggs@killbots.net <mailto:gbiggs@killbots.net>>
>
>     The limb interface uses the standard method of specifying orientation of
>     an end effector. The two vectors used are the approach vector and the
>     orientation vector. The approach vector is a vector that runs down the
>     length of the end effector in its direction of approach, i.e. it points
>     where the end effector is pointing. The orientation vector is
>     perpendicular to the approach vector, usually in the same horizontal
>     plane in end effector space. It is used to define the end effector's
>     rotation around the axis that is parallel to the approach vector.
>     Usually, a third vector is given as well. This is the normal vector. It
>     is perpendicular to both the approach and orientation vectors. However,
>     because it can be calculated using the cross product of the other two
>     vectors, there is no need to transmit it. All vectors extend from the
>     origin of the end effector, that is, the final joint before it.
>     Together, they also define the three axes of the end effector coordinate
>     space.
>
>     As an example, think of your hand. If your hand is straight, then there
>     is a straight line running down your lower arm and through your hand.
>     The approach vector extends from your wrist out through your hand along
>     this line. Hold your thumb out at a right angle to your hand, keeping it
>     flat in the same plane as your fingers. The orientation vector runs from
>     your wrist out either in the same direction as your thumb or in the
>     opposite direction, depending on which hand you're looking at and
>     whether you're using a right- or left-handed coordinate system, and
>     perpendicular to the line down your arm. The normal vector will run from
>     your wrist perpendicular to both of the other two. Typically it will be
>     defined to point "up."
>
>     Now try rotating your hand around your wrist along the line that runs
>     down your arm. The orientation and normal vectors will move, while the
>     approach vector stays the same. If you point your hand downwards, the
>     orientation vector stays the same while the normal and approach vectors
>     move.
>
>     If you want to make a rotation matrix from these three vectors, you can
>     do it by using dot products to calculate their angles around some other
>     coordinate space's axes.
>
>     Geoff
>
>     > Hi all,
>     > I'm writing IK driver for manipulator and I have few questions about
>     > limb interface.
>     > Why orientation is discribed with two vectors instead of
>     player_pose3d_t ?
>     > How exactly these vectors describe orientation, how to create rotation
>     > matrix from them?
>
>
>
>     ------------------------------------------------------------------------------
>     Are you an open source citizen? Join us for the Open Source Bridge
>     conference!
>     Portland, OR, June 17-19. Two days of sessions, one day of
>     unconference: \$250.
>     Need another reason to go? 24-hour hacker lounge. Register today!
>     _______________________________________________
>     Playerstage-users mailing list
>     Playerstage-users@lists.sourceforge.net
>     <mailto:Playerstage-users@lists.sourceforge.net>
> ------------------------------------------------------------------------
>
> ------------------------------------------------------------------------------
> Are you an open source citizen? Join us for the Open Source Bridge conference!
> Portland, OR, June 17-19. Two days of sessions, one day of unconference: \$250.
> Need another reason to go? 24-hour hacker lounge. Register today!
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Playerstage-users mailing list
> Playerstage-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/playerstage-users

------------------------------------------------------------------------------
Are you an open source citizen? Join us for the Open Source Bridge conference!
Portland, OR, June 17-19. Two days of sessions, one day of unconference: \$250.
Need another reason to go? 24-hour hacker lounge. Register today!