us.ihmc.utilities.screwTheory
Class ScrewTools

java.lang.Object
  extended by us.ihmc.utilities.screwTheory.ScrewTools

public class ScrewTools
extends java.lang.Object


Constructor Summary
ScrewTools()
           
 
Method Summary
static void addExternalWrenches(java.util.Map<RigidBody,Wrench> externalWrenches, java.util.Map<RigidBody,Wrench> wrenchMapToAdd)
           
static PrismaticJoint addPrismaticJoint(java.lang.String jointName, RigidBody parentBody, javax.media.j3d.Transform3D transformToParent, javax.vecmath.Vector3d jointAxis)
           
static PrismaticJoint addPrismaticJoint(java.lang.String jointName, RigidBody parentBody, javax.vecmath.Vector3d jointOffset, javax.vecmath.Vector3d jointAxis)
           
static RevoluteJoint addRevoluteJoint(java.lang.String jointName, RigidBody parentBody, javax.media.j3d.Transform3D transformToParent, javax.vecmath.Vector3d jointAxis)
           
static RevoluteJoint addRevoluteJoint(java.lang.String jointName, RigidBody parentBody, javax.vecmath.Vector3d jointOffset, javax.vecmath.Vector3d jointAxis)
           
static RigidBody addRigidBody(java.lang.String name, InverseDynamicsJoint parentJoint, javax.vecmath.Matrix3d momentOfInertia, double mass, javax.vecmath.Vector3d centerOfMassOffset)
           
static RigidBody[] computeConnectedBodies(InverseDynamicsJoint[] joints, boolean includeRoot)
           
static int computeDegreesOfFreedom(InverseDynamicsJoint[] jointList)
           
static int computeDegreesOfFreedom(java.lang.Iterable<? extends InverseDynamicsJoint> jointList)
           
static int computeDistanceToAncestor(RigidBody descendant, RigidBody ancestor)
           
static int[] computeIndicesForJoint(InverseDynamicsJoint[] jointsInOrder, InverseDynamicsJoint... jointsToComputeIndicesFor)
           
static InverseDynamicsJoint[] computeJointsInOrder(RigidBody rootBody)
          Deprecated. 
static InverseDynamicsJoint[] computeJointsInOrder(RigidBody rootBody, java.util.Set<InverseDynamicsJoint> excludeSubTrees)
          Deprecated. 
static
<T extends InverseDynamicsJoint>
int
computeNumberOfJointsOfType(java.lang.Class<T> clazz, InverseDynamicsJoint[] joints)
           
static RigidBody[] computeRigidBodiesInOrder(InverseDynamicsJoint rootJoint)
          Deprecated. 
static RigidBody[] computeRigidBodiesInOrder(InverseDynamicsJoint rootJoint, java.util.Set<RigidBody> excludeSubTrees)
          Deprecated. 
static RigidBody[] computeRigidBodiesInOrder(RigidBody rootBody, java.util.Set<RigidBody> excludeSubTrees)
          Deprecated. 
static InverseDynamicsJoint[] computeSubtreeJoints(RigidBody... rootBodies)
           
static RigidBody[] computeSuccessors(InverseDynamicsJoint[] joints)
           
static InverseDynamicsJoint[] computeSupportAndSubtreeJoints(RigidBody... bodies)
           
static RigidBody[] computeSupportAndSubtreeSuccessors(RigidBody... bodies)
           
static InverseDynamicsJoint[] computeSupportJoints(RigidBody... bodies)
           
static SpatialAccelerationVector createGravitationalSpatialAcceleration(RigidBody rootBody, double gravity)
           
static InverseDynamicsJoint[] createJointPath(RigidBody start, RigidBody end)
           
static int[] createParentMap(RigidBody[] rigidBodiesInOrder)
           
static RevoluteJoint[] extractRevoluteJoints(InverseDynamicsJoint[] allJoints)
           
static
<T extends InverseDynamicsJoint>
T[]
filterJoints(InverseDynamicsJoint[] source, java.lang.Class<T> clazz)
           
static
<T extends InverseDynamicsJoint>
void
filterJoints(InverseDynamicsJoint[] source, java.lang.Object[] dest, java.lang.Class<T> clazz)
           
static InverseDynamicsJoint[] findJointsWithNames(InverseDynamicsJoint[] allJoints, java.lang.String... jointNames)
           
static RigidBody[] findRigidBodiesWithNames(RigidBody[] allBodies, java.lang.String... names)
           
static RigidBody getRootBody(RigidBody body)
           
static org.ejml.data.DenseMatrix64F getTauMatrix(InverseDynamicsJoint[] jointsInOrder)
           
static boolean isAncestor(RigidBody candidateDescendant, RigidBody ancestor)
           
static void packDesiredJointAccelerationsMatrix(InverseDynamicsJoint[] joints, org.ejml.data.DenseMatrix64F desiredJointAccelerationsMatrixToPack)
           
static void packJointVelocitiesMatrix(InverseDynamicsJoint[] joints, org.ejml.data.DenseMatrix64F jointVelocitiesMatrixToPack)
           
static void packJointVelocitiesMatrix(java.lang.Iterable<InverseDynamicsJoint> joints, org.ejml.data.DenseMatrix64F jointVelocitiesMatrixToPack)
           
static void setDesiredAccelerations(InverseDynamicsJoint[] jointList, org.ejml.data.DenseMatrix64F jointAccelerations)
           
static void setVelocities(InverseDynamicsJoint[] jointList, org.ejml.data.DenseMatrix64F jointVelocities)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ScrewTools

public ScrewTools()
Method Detail

addRevoluteJoint

public static RevoluteJoint addRevoluteJoint(java.lang.String jointName,
                                             RigidBody parentBody,
                                             javax.vecmath.Vector3d jointOffset,
                                             javax.vecmath.Vector3d jointAxis)

addRevoluteJoint

public static RevoluteJoint addRevoluteJoint(java.lang.String jointName,
                                             RigidBody parentBody,
                                             javax.media.j3d.Transform3D transformToParent,
                                             javax.vecmath.Vector3d jointAxis)

addPrismaticJoint

public static PrismaticJoint addPrismaticJoint(java.lang.String jointName,
                                               RigidBody parentBody,
                                               javax.vecmath.Vector3d jointOffset,
                                               javax.vecmath.Vector3d jointAxis)

addPrismaticJoint

public static PrismaticJoint addPrismaticJoint(java.lang.String jointName,
                                               RigidBody parentBody,
                                               javax.media.j3d.Transform3D transformToParent,
                                               javax.vecmath.Vector3d jointAxis)

addRigidBody

public static RigidBody addRigidBody(java.lang.String name,
                                     InverseDynamicsJoint parentJoint,
                                     javax.vecmath.Matrix3d momentOfInertia,
                                     double mass,
                                     javax.vecmath.Vector3d centerOfMassOffset)

computeRigidBodiesInOrder

@Deprecated
public static RigidBody[] computeRigidBodiesInOrder(RigidBody rootBody,
                                                               java.util.Set<RigidBody> excludeSubTrees)
Deprecated. 


computeRigidBodiesInOrder

@Deprecated
public static RigidBody[] computeRigidBodiesInOrder(InverseDynamicsJoint rootJoint)
Deprecated. 


computeRigidBodiesInOrder

@Deprecated
public static RigidBody[] computeRigidBodiesInOrder(InverseDynamicsJoint rootJoint,
                                                               java.util.Set<RigidBody> excludeSubTrees)
Deprecated. 


computeJointsInOrder

@Deprecated
public static InverseDynamicsJoint[] computeJointsInOrder(RigidBody rootBody)
Deprecated. 


computeJointsInOrder

@Deprecated
public static InverseDynamicsJoint[] computeJointsInOrder(RigidBody rootBody,
                                                                     java.util.Set<InverseDynamicsJoint> excludeSubTrees)
Deprecated. 


computeSuccessors

public static RigidBody[] computeSuccessors(InverseDynamicsJoint[] joints)

computeConnectedBodies

public static RigidBody[] computeConnectedBodies(InverseDynamicsJoint[] joints,
                                                 boolean includeRoot)

computeSupportAndSubtreeSuccessors

public static RigidBody[] computeSupportAndSubtreeSuccessors(RigidBody... bodies)

computeSupportAndSubtreeJoints

public static InverseDynamicsJoint[] computeSupportAndSubtreeJoints(RigidBody... bodies)

computeSupportJoints

public static InverseDynamicsJoint[] computeSupportJoints(RigidBody... bodies)

computeSubtreeJoints

public static InverseDynamicsJoint[] computeSubtreeJoints(RigidBody... rootBodies)

getRootBody

public static RigidBody getRootBody(RigidBody body)

createParentMap

public static int[] createParentMap(RigidBody[] rigidBodiesInOrder)

getTauMatrix

public static org.ejml.data.DenseMatrix64F getTauMatrix(InverseDynamicsJoint[] jointsInOrder)

createJointPath

public static InverseDynamicsJoint[] createJointPath(RigidBody start,
                                                     RigidBody end)

isAncestor

public static boolean isAncestor(RigidBody candidateDescendant,
                                 RigidBody ancestor)

computeDistanceToAncestor

public static int computeDistanceToAncestor(RigidBody descendant,
                                            RigidBody ancestor)

packJointVelocitiesMatrix

public static void packJointVelocitiesMatrix(InverseDynamicsJoint[] joints,
                                             org.ejml.data.DenseMatrix64F jointVelocitiesMatrixToPack)

packJointVelocitiesMatrix

public static void packJointVelocitiesMatrix(java.lang.Iterable<InverseDynamicsJoint> joints,
                                             org.ejml.data.DenseMatrix64F jointVelocitiesMatrixToPack)

packDesiredJointAccelerationsMatrix

public static void packDesiredJointAccelerationsMatrix(InverseDynamicsJoint[] joints,
                                                       org.ejml.data.DenseMatrix64F desiredJointAccelerationsMatrixToPack)

computeDegreesOfFreedom

public static int computeDegreesOfFreedom(InverseDynamicsJoint[] jointList)

computeDegreesOfFreedom

public static int computeDegreesOfFreedom(java.lang.Iterable<? extends InverseDynamicsJoint> jointList)

createGravitationalSpatialAcceleration

public static SpatialAccelerationVector createGravitationalSpatialAcceleration(RigidBody rootBody,
                                                                               double gravity)

setDesiredAccelerations

public static void setDesiredAccelerations(InverseDynamicsJoint[] jointList,
                                           org.ejml.data.DenseMatrix64F jointAccelerations)

setVelocities

public static void setVelocities(InverseDynamicsJoint[] jointList,
                                 org.ejml.data.DenseMatrix64F jointVelocities)

computeIndicesForJoint

public static int[] computeIndicesForJoint(InverseDynamicsJoint[] jointsInOrder,
                                           InverseDynamicsJoint... jointsToComputeIndicesFor)

extractRevoluteJoints

public static RevoluteJoint[] extractRevoluteJoints(InverseDynamicsJoint[] allJoints)

computeNumberOfJointsOfType

public static <T extends InverseDynamicsJoint> int computeNumberOfJointsOfType(java.lang.Class<T> clazz,
                                                                               InverseDynamicsJoint[] joints)

filterJoints

public static <T extends InverseDynamicsJoint> T[] filterJoints(InverseDynamicsJoint[] source,
                                                                java.lang.Class<T> clazz)

filterJoints

public static <T extends InverseDynamicsJoint> void filterJoints(InverseDynamicsJoint[] source,
                                                                 java.lang.Object[] dest,
                                                                 java.lang.Class<T> clazz)

findJointsWithNames

public static InverseDynamicsJoint[] findJointsWithNames(InverseDynamicsJoint[] allJoints,
                                                         java.lang.String... jointNames)

findRigidBodiesWithNames

public static RigidBody[] findRigidBodiesWithNames(RigidBody[] allBodies,
                                                   java.lang.String... names)

addExternalWrenches

public static void addExternalWrenches(java.util.Map<RigidBody,Wrench> externalWrenches,
                                       java.util.Map<RigidBody,Wrench> wrenchMapToAdd)