本文整理了Java中us.ihmc.mecano.multiBodySystem.interfaces.RigidBodyBasics.getBodyFixedFrame
方法的一些代码示例,展示了RigidBodyBasics.getBodyFixedFrame
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。RigidBodyBasics.getBodyFixedFrame
方法的具体详情如下:
包路径:us.ihmc.mecano.multiBodySystem.interfaces.RigidBodyBasics
类名称:RigidBodyBasics
方法名:getBodyFixedFrame
暂无
代码示例来源:origin: us.ihmc/ihmc-robot-models
/** {@inheritDoc} */
@Override
public MovingReferenceFrame getElevatorFrame()
{
return elevator.getBodyFixedFrame();
}
代码示例来源:origin: us.ihmc/mecano
/** {@inheritDoc} */
@Override
public void setSuccessor(RigidBodyBasics successor)
{
this.successor = successor;
ReferenceFrame successorFrame = successor.getBodyFixedFrame();
jointWrench = MecanoFactories.newPlanarFixedFrameWrenchBasics(successorFrame, afterJointFrame);
}
代码示例来源:origin: us.ihmc/ihmc-robotics-toolkit
/**
* Returns the body fixed frame of the base {@code RigidBody} of this Jacobian. The base is the
* predecessor of the first joint that this Jacobian considers.
*
* @return the body fixed frame of the base.
*/
public ReferenceFrame getBaseFrame()
{
return getBase().getBodyFixedFrame();
}
代码示例来源:origin: us.ihmc/ihmc-robotics-toolkit
/**
* Returns the body fixed frame of the end-effector {@code RigidBody} of this Jacobian. The
* end-effector is the successor of the last joint this Jacobian considers.
*
* @return the body fixed frame of the end-effector.
*/
public ReferenceFrame getEndEffectorFrame()
{
return getEndEffector().getBodyFixedFrame();
}
代码示例来源:origin: us.ihmc/ihmc-common-walking-control-modules-test
LegReferenceFrames(RigidBodyBasics pelvis, RigidBodyBasics elevator, SideDependentList<RigidBodyBasics> feet, SideDependentList<MovingReferenceFrame> soleFrames)
{
pelvisFrame = pelvis.getBodyFixedFrame();
centerOfMassFrame = new CenterOfMassReferenceFrame("centerOfMass", ReferenceFrame.getWorldFrame(), elevator);
for (RobotSide robotSide : RobotSide.values)
{
footReferenceFrames.put(robotSide, feet.get(robotSide).getBodyFixedFrame());
soleReferenceFrames.put(robotSide, soleFrames.get(robotSide));
}
}
代码示例来源:origin: us.ihmc/ihmc-avatar-interfaces-test
private FrameQuaternion getHandEndEffectorOrientation()
{
ReferenceFrame handEndEffectorFrame = fullRobotModel.getHand(RobotSide.LEFT).getBodyFixedFrame();
FrameQuaternion handEndEffectorOrientation = new FrameQuaternion(handEndEffectorFrame);
handEndEffectorOrientation.changeFrame(worldFrame);
return handEndEffectorOrientation;
}
代码示例来源:origin: us.ihmc/ihmc-avatar-interfaces-test
private FramePoint3D getHandEndEffectorPosition()
{
ReferenceFrame handEndEffectorFrame = fullRobotModel.getHand(RobotSide.LEFT).getBodyFixedFrame();
FramePoint3D handEndEffectorPosition = new FramePoint3D(handEndEffectorFrame);
handEndEffectorPosition.changeFrame(worldFrame);
return handEndEffectorPosition;
}
代码示例来源:origin: us.ihmc/ihmc-humanoid-behaviors
private void sendHeadTrajectoryMessage(double trajectoryTime, Quaternion desiredOrientation)
{
ReferenceFrame chestCoMFrame = fullRobotModel.getChest().getBodyFixedFrame();
HeadTrajectoryMessage headTrajectoryMessage = HumanoidMessageTools.createHeadTrajectoryMessage(trajectoryTime, desiredOrientation,
ReferenceFrame.getWorldFrame(), chestCoMFrame);
headTrajectoryPublisher.publish(headTrajectoryMessage);
// footstepSentTimer.reset();
}
代码示例来源:origin: us.ihmc/ihmc-robotics-toolkit
public ConstrainedCenterOfMassJacobianCalculator(FloatingJointBasics rootJoint)
{
this.dynamicallyConsistentNullspaceCalculator = new OriginalDynamicallyConsistentNullspaceCalculator(rootJoint, true);
this.centerOfMassJacobian = new CenterOfMassJacobian(rootJoint.getSuccessor(), rootJoint.getSuccessor().getBodyFixedFrame());
}
代码示例来源:origin: us.ihmc/simulation-construction-set-tools-test
public TestingRobotModel()
{
worldFrame = ReferenceFrame.getWorldFrame();
elevator = new RigidBody("elevator", worldFrame);
elevatorFrame = elevator.getBodyFixedFrame();
rootJoint = new SixDoFJoint("rootJoint", elevator);
body = new RigidBody("body", rootJoint, Ixx, Iyy, Izz, mass, comOffset);
bodyFrame = rootJoint.getFrameAfterJoint();
}
代码示例来源:origin: us.ihmc/ihmc-avatar-interfaces-test
protected FramePoint3D getRandomPelvisPosition(Random random, RigidBodyBasics pelvis)
{
FramePoint3D desiredRandomPelvisPosition = new FramePoint3D(pelvis.getBodyFixedFrame());
desiredRandomPelvisPosition.set(RandomGeometry.nextPoint3D(random, 0.10, 0.20, 0.05));
desiredRandomPelvisPosition.setZ(desiredRandomPelvisPosition.getZ() - 0.1);
return desiredRandomPelvisPosition;
}
代码示例来源:origin: us.ihmc/ihmc-humanoid-robotics
public static KinematicsPlanningToolboxRigidBodyMessage holdRigidBodyCurrentPose(RigidBodyBasics rigidBody, TDoubleArrayList keyFrameTimes)
{
List<Pose3DReadOnly> currentPoses = new ArrayList<Pose3DReadOnly>();
for (int i = 0; i < keyFrameTimes.size(); i++)
currentPoses.add(new Pose3D(rigidBody.getBodyFixedFrame().getTransformToWorldFrame()));
KinematicsPlanningToolboxRigidBodyMessage message = HumanoidMessageTools.createKinematicsPlanningToolboxRigidBodyMessage(rigidBody, keyFrameTimes,
currentPoses);
message.getAngularWeightMatrix().set(MessageTools.createWeightMatrix3DMessage(20.0));
message.getLinearWeightMatrix().set(MessageTools.createWeightMatrix3DMessage(20.0));
return message;
}
}
代码示例来源:origin: us.ihmc/ihmc-perception
private double getAngleToPelvis(Point3D point, Point3D lidarOrigin)
{
RigidBodyTransform tf = new RigidBodyTransform();
ReferenceFrame.getWorldFrame().getTransformToDesiredFrame(tf, fullRobotModel.getPelvis().getBodyFixedFrame());
Point3D tfPoint = new Point3D(point);
tf.transform(tfPoint);
return Math.atan2(tfPoint.getY(), tfPoint.getX());
}
代码示例来源:origin: us.ihmc/ihmc-avatar-interfaces-test
private FramePose3D getCurrentPelvisPose()
{
fullRobotModel.updateFrames();
FramePose3D ret = new FramePose3D();
ret.setToZero(fullRobotModel.getPelvis().getBodyFixedFrame());
ret.changeFrame(ReferenceFrame.getWorldFrame());
return ret;
}
代码示例来源:origin: us.ihmc/ihmc-avatar-interfaces-test
public void setFullRobotModelExternalForcesRandomly(Random random, double maxFeetExternalForce, double maxFeetExternalTorque)
{
inverseDynamicsCalculator.setExternalWrenchesToZero();
for (RobotSide robotSide : RobotSide.values)
{
RigidBodyBasics foot = fullRobotModel.getFoot(robotSide);
ReferenceFrame bodyFixedFrame = foot.getBodyFixedFrame();
Wrench wrench = new Wrench(bodyFixedFrame, bodyFixedFrame, RandomGeometry.nextVector3D(random, maxFeetExternalTorque),
RandomGeometry.nextVector3D(random, maxFeetExternalForce));
inverseDynamicsCalculator.setExternalWrench(foot, wrench);
}
}
代码示例来源:origin: us.ihmc/ihmc-robotics-toolkit
private void calculateErrorTransform(RigidBodyTransform transformShoulderToDesired)
{
jacobian.getEndEffector().getBodyFixedFrame().getTransformToDesiredFrame(transformShoulderToEndEffector, jacobian.getBaseFrame());
transformEndEffectorToShoulder.setAndInvert(transformShoulderToEndEffector);
transformEndEffectorToDesired.set(transformEndEffectorToShoulder);
transformEndEffectorToDesired.multiply(transformShoulderToDesired);
}
代码示例来源:origin: us.ihmc/ihmc-avatar-interfaces-test
private FramePose3D getCurrentHeadPose(FullRobotModel fullRobotModel)
{
FramePose3D ret = new FramePose3D();
fullRobotModel.updateFrames();
ReferenceFrame headFrame = fullRobotModel.getHead().getBodyFixedFrame();
ret.setToZero(headFrame);
ret.changeFrame(ReferenceFrame.getWorldFrame());
return ret;
}
代码示例来源:origin: us.ihmc/ihmc-avatar-interfaces-test
private FramePose3D getCurrentChestPose()
{
drcBehaviorTestHelper.updateRobotModel();
FramePose3D ret = new FramePose3D();
ret.setToZero(drcBehaviorTestHelper.getSDFFullRobotModel().getChest().getBodyFixedFrame());
ret.changeFrame(ReferenceFrame.getWorldFrame());
return ret;
}
代码示例来源:origin: us.ihmc/ihmc-perception
private boolean isAheadOfPelvis(Point3D point)
{
RigidBodyTransform tf = new RigidBodyTransform();
ReferenceFrame.getWorldFrame().getTransformToDesiredFrame(tf, fullRobotModel.getPelvis().getBodyFixedFrame());
Point3D tfPoint = new Point3D(point);
tf.transform(tfPoint);
return tfPoint.getX() > parameters.xCutoffPelvis;
}
代码示例来源:origin: us.ihmc/ihmc-avatar-interfaces-test
private HeadTrajectoryMessage createHeadOrientationPacket(Vector3D axis, double rotationAngle, double trajectoryTime)
{
AxisAngle desiredAxisAngle = new AxisAngle();
desiredAxisAngle.set(axis, rotationAngle);
Quaternion desiredHeadQuat = new Quaternion();
desiredHeadQuat.set(desiredAxisAngle);
FullHumanoidRobotModel controllerFullRobotModel = drcBehaviorTestHelper.getControllerFullRobotModel();
ReferenceFrame chestCoMFrame = controllerFullRobotModel.getChest().getBodyFixedFrame();
HeadTrajectoryMessage message = HumanoidMessageTools.createHeadTrajectoryMessage(trajectoryTime, desiredHeadQuat, chestCoMFrame);
message.getSo3Trajectory().getFrameInformation().setDataReferenceFrameId(MessageTools.toFrameId(ReferenceFrame.getWorldFrame()));
return message;
}
内容来源于网络,如有侵权,请联系作者删除!