/** * Packs the offset from the frame before this joint to the frame after this parent joint. * * @param jointOffsetTransformToPack the transform in which this joint's offset is stored. * Modified. */ default void getJointOffset(RigidBodyTransform jointOffsetTransformToPack) { getFrameBeforeJoint().getTransformToParent(jointOffsetTransformToPack); }
@Override public RigidBodyTransform getJointTransform3D() { return new RigidBodyTransform(jointToWrap.getFrameAfterJoint().getTransformToParent()); } };
@Override public RigidBodyTransform getOffsetTransform3D() { return new RigidBodyTransform(jointToWrap.getFrameBeforeJoint().getTransformToParent()); }
private static RigidBodyTransform getCloneJointTransformToParent(JointReadOnly original) { if (original.getFrameBeforeJoint() == original.getPredecessor().getBodyFixedFrame()) return null; else return original.getFrameBeforeJoint().getTransformToParent(); }
if (cloneStationaryFrame == null) cloneStationaryFrame = originalBodyFixedFrame; return rigidBodyBuilder.buildRoot(nameOriginal + cloneSuffix, originalBodyFixedFrame.getTransformToParent(), cloneStationaryFrame); RigidBodyTransform inertiaPose = new RigidBodyTransform(original.getBodyFixedFrame().getTransformToParent()); RigidBodyBasics clone = rigidBodyBuilder.build(nameOriginal + cloneSuffix, parentJointOfClone, momentOfInertia, mass, inertiaPose); clone.getInertia().getCenterOfMassOffset().set((Tuple3DReadOnly) originalInertia.getCenterOfMassOffset());