- 使用 Spring Initializr 创建 Spring Boot 应用程序
- 在Spring Boot中配置Cassandra
- 在 Spring Boot 上配置 Tomcat 连接池
- 将Camel消息路由到嵌入WildFly的Artemis上
本文整理了Java中us.ihmc.robotics.screwTheory.Wrench.getExpressedInFrame()
方法的一些代码示例,展示了Wrench.getExpressedInFrame()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Wrench.getExpressedInFrame()
方法的具体详情如下:
包路径:us.ihmc.robotics.screwTheory.Wrench
类名称:Wrench
方法名:getExpressedInFrame
暂无
代码示例来源:origin: us.ihmc/IHMCRoboticsToolkit
public void reset()
{
for (int i = 0; i < listOfBodiesWithExternalWrenches.size(); i++)
{
Wrench externalWrench = externalWrenches.get(listOfBodiesWithExternalWrenches.get(i));
externalWrench.setToZero(externalWrench.getBodyFrame(), externalWrench.getExpressedInFrame());
}
}
代码示例来源:origin: us.ihmc/CommonWalkingControlModules
public void setExternalWrenchToCompensateFor(RigidBody rigidBody, Wrench wrench)
{
boolean containsRigidBody = externalWrenchesToCompensateFor.get(rigidBody) != null;
if (!containsRigidBody)
{
externalWrenches.put(rigidBody, new Wrench(rigidBody.getBodyFixedFrame(), rigidBody.getBodyFixedFrame()));
externalWrenchesToCompensateFor.put(rigidBody, new Wrench(rigidBody.getBodyFixedFrame(), rigidBody.getBodyFixedFrame()));
externalWrenchesToCompensateForList.add(externalWrenchesToCompensateFor.get(rigidBody));
rigidBodiesWithWrenchToCompensateFor.add(rigidBody);
}
ReferenceFrame bodyFixedFrame = rigidBody.getBodyFixedFrame();
wrench.getBodyFrame().checkReferenceFrameMatch(bodyFixedFrame);
wrench.getExpressedInFrame().checkReferenceFrameMatch(bodyFixedFrame);
externalWrenchesToCompensateFor.get(rigidBody).set(wrench);
}
代码示例来源:origin: us.ihmc/IHMCRoboticsToolkit
protected void getYoValuesFromWrench()
{
linearPart.set(wrench.getExpressedInFrame(), wrench.getLinearPartX(), wrench.getLinearPartY(), wrench.getLinearPartZ());
angularPart.set(wrench.getExpressedInFrame(), wrench.getAngularPartX(), wrench.getAngularPartY(), wrench.getAngularPartZ());
}
代码示例来源:origin: us.ihmc/IHMCRoboticsToolkit
public void setWrench(Wrench newWrench)
{
measurementFrame.checkReferenceFrameMatch(newWrench.getExpressedInFrame());
measurementFrame.checkReferenceFrameMatch(newWrench.getBodyFrame());
newWrench.getMatrix(wrench);
}
代码示例来源:origin: us.ihmc/IHMCRoboticsToolkit
private void computeJointWrenchesAndTorques()
{
for (int jointIndex = allJoints.size() - 1; jointIndex >= 0; jointIndex--)
{
InverseDynamicsJoint joint = allJoints.get(jointIndex);
RigidBody successor = joint.getSuccessor();
Wrench jointWrench = jointWrenches.get(joint);
jointWrench.set(netWrenches.get(successor));
Wrench externalWrench = externalWrenches.get(successor);
jointWrench.sub(externalWrench);
List<InverseDynamicsJoint> childrenJoints = successor.getChildrenJoints();
for (int childIndex = 0; childIndex < childrenJoints.size(); childIndex++)
{
InverseDynamicsJoint child = childrenJoints.get(childIndex);
if (!jointsToIgnore.contains(child))
{
Wrench wrenchExertedOnChild = jointWrenches.get(child);
ReferenceFrame successorFrame = successor.getBodyFixedFrame();
wrenchExertedByChild.set(wrenchExertedOnChild);
wrenchExertedByChild.changeBodyFrameAttachedToSameBody(successorFrame);
wrenchExertedByChild.scale(-1.0); // Action = -reaction
wrenchExertedByChild.changeFrame(jointWrench.getExpressedInFrame());
jointWrench.sub(wrenchExertedByChild);
}
}
joint.setTorqueFromWrench(jointWrench);
}
}
代码示例来源:origin: us.ihmc/IHMCRoboticsToolkit
public void setWrench(Wrench jointWrench)
{
successorWrench.getBodyFrame().checkReferenceFrameMatch(jointWrench.getBodyFrame());
successorWrench.getExpressedInFrame().checkReferenceFrameMatch(jointWrench.getExpressedInFrame());
successorWrench.setAngularPartY(jointWrench.getAngularPartY());
successorWrench.setLinearPartX(jointWrench.getLinearPartX());
successorWrench.setLinearPartZ(jointWrench.getLinearPartZ());
}
代码示例来源:origin: us.ihmc/DarpaRoboticsChallenge
@Override
public void doControl()
{
forceSensorData.getWrench(tempWrench);
for(int i = 0; i < yoTorqueInJoints.size(); i++)
{
ImmutablePair<FrameVector, DoubleYoVariable> pair = yoTorqueInJoints.get(i);
FrameVector jointAxis = pair.getLeft();
DoubleYoVariable torqueAboutJointAxis = pair.getRight();
tempWrench.changeFrame(jointAxis.getReferenceFrame());
tempFrameVector.setToZero(tempWrench.getExpressedInFrame());
tempWrench.getAngularPart(tempFrameVector);
torqueAboutJointAxis.set(-tempFrameVector.dot(jointAxis));
}
}
代码示例来源:origin: us.ihmc/CommonWalkingControlModules
@Override
public void doControl()
{
forceSensorData.getWrench(tempWrench);
for(int i = 0; i < yoTorqueInJoints.size(); i++)
{
ImmutablePair<FrameVector, DoubleYoVariable> pair = yoTorqueInJoints.get(i);
FrameVector jointAxis = pair.getLeft();
DoubleYoVariable torqueAboutJointAxis = pair.getRight();
tempWrench.changeFrame(jointAxis.getReferenceFrame());
tempFrameVector.setToZero(tempWrench.getExpressedInFrame());
tempWrench.getAngularPart(tempFrameVector);
torqueAboutJointAxis.set(-tempFrameVector.dot(jointAxis));
}
}
代码示例来源:origin: us.ihmc/IHMCRoboticsToolkit
@Override
public void setTorqueFromWrench(Wrench jointWrench)
{
unitSuccessorTwist.getBodyFrame().checkReferenceFrameMatch(jointWrench.getBodyFrame());
unitSuccessorTwist.getExpressedInFrame().checkReferenceFrameMatch(jointWrench.getExpressedInFrame());
this.tau = unitSuccessorTwist.dot(jointWrench);
// cheating a little bit; tau = J^T * wrench. J maps joint velocities to joint twists.
// the unit twist is actually exactly the same as J, except that its entries have different dimensions.
// we disregard dimensions and just use .dot(.) for efficiency
}
代码示例来源:origin: us.ihmc/SensorProcessing
public void update(Wrench sensorWrench)
{
sensorWrench.changeFrame(world);
yoSensorForce.set(sensorWrench.getExpressedInFrame(), sensorWrench.getLinearPartX(), sensorWrench.getLinearPartY(), sensorWrench.getLinearPartZ());
yoSensorTorque.set(sensorWrench.getExpressedInFrame(), sensorWrench.getAngularPartX(), sensorWrench.getAngularPartY(), sensorWrench.getAngularPartZ());
if (addSimulatedSensorNoise.getBooleanValue())
{
double amp = 0.1;
double bias = 0.25;
yoSensorForce.add(amp*2.0*(Math.random()-0.5)+bias, amp*2.0*(Math.random()-0.5)+bias, amp*2.0*(Math.random()-0.5)+bias);
yoSensorTorque.add(amp*2.0*(Math.random()-0.5)+bias, amp*2.0*(Math.random()-0.5)+bias, amp*2.0*(Math.random()-0.5)+bias);
}
updateSensorPosition();
updateCenterOfMass();
yoSensorToDistalCoMvectorInWorld.sub(distalCoMInWorld, yoSensorPositionInWorld);
distalMassWrench.setToZero(world);
distalMassWrench.setUsingArm(world, distalMassForceInWorld.getFrameTuple().getVector(), yoSensorToDistalCoMvectorInWorld.getFrameTuple().getVector());
yoSensorForceFromDistalMass.set(distalMassWrench.getExpressedInFrame(), distalMassWrench.getLinearPartX(), distalMassWrench.getLinearPartY(), distalMassWrench.getLinearPartZ());
yoSensorTorqueFromDistalMass.set(distalMassWrench.getExpressedInFrame(), distalMassWrench.getAngularPartX(), distalMassWrench.getAngularPartY(), distalMassWrench.getAngularPartZ());
yoSensorForceMassCompensated.sub(yoSensorForce, yoSensorForceFromDistalMass);
yoSensorTorqueMassCompensated.sub(yoSensorTorque, yoSensorTorqueFromDistalMass);
}
代码示例来源:origin: us.ihmc/CommonWalkingControlModules
tempVector.setToZero(tempWrench.getExpressedInFrame());
tempWrench.getLinearPart(tempVector);
tempVector.changeFrame(ReferenceFrame.getWorldFrame());
tempVector.setToZero(tempWrench.getExpressedInFrame());
tempWrench.getAngularPart(tempVector);
tempVector.changeFrame(ReferenceFrame.getWorldFrame());
代码示例来源:origin: us.ihmc/IHMCRoboticsToolkit
/**
* Computes and packs the joint torque vector that corresponds to the given wrench.
*
* @param wrench the resulting wrench at the end effector.
* The wrench should be expressed in {@code jacobianFrame} and the wrench's {@code bodyFrame}
* should be the body fixed frame of the end-effector.
* @throws ReferenceFrameMismatchException if the given wrench {@code wrench.getExpressedInFrame() != this.getJacobianFrame()} or
* {@code wrench.getBodyFrame() != this.getEndEffectorFrame()}.
*/
public void computeJointTorques(Wrench wrench, DenseMatrix64F jointTorquesToPack)
{
// reference frame check
wrench.getExpressedInFrame().checkReferenceFrameMatch(this.jacobianFrame);
// FIXME add the following reference frame check
// wrench.getBodyFrame().checkReferenceFrameMatch(getEndEffectorFrame());
wrench.getMatrix(tempMatrix);
jointTorquesToPack.reshape(1, jacobian.getNumCols());
CommonOps.multTransA(tempMatrix, jacobian, jointTorquesToPack);
CommonOps.transpose(jointTorquesToPack);
}
代码示例来源:origin: us.ihmc/IHMCRoboticsToolkit
@Override
public void setTorqueFromWrench(Wrench jointWrench)
{
jointWrench.getBodyFrame().checkReferenceFrameMatch(successor.getBodyFixedFrame());
jointWrench.getExpressedInFrame().checkReferenceFrameMatch(jointTorque.getReferenceFrame());
jointTorque.set(jointWrench.getAngularPart());
}
代码示例来源:origin: us.ihmc/IHMCRoboticsToolkit
/**
* Takes the dot product of this twist and a wrench, resulting in the (reference frame independent) instantaneous power.
* @param wrench a wrench that
* 1) has an 'onWhat' reference frame that is the same as this twist's 'bodyFrame' reference frame.
* 2) is expressed in the same reference frame as this twist
* @return the instantaneous power associated with this twist and the wrench
*/
public double dot(Wrench wrench)
{
this.bodyFrame.checkReferenceFrameMatch(wrench.getBodyFrame());
this.expressedInFrame.checkReferenceFrameMatch(wrench.getExpressedInFrame());
double power = this.angularPart.dot(wrench.getAngularPart()) + this.linearPart.dot(wrench.getLinearPart());
return power;
}
代码示例来源:origin: us.ihmc/IHMCRoboticsToolkit
public void getWrench(Wrench wrenchToPack)
{
wrenchToPack.setToZero(successorWrench.getBodyFrame(), successorWrench.getExpressedInFrame());
wrenchToPack.setAngularPartY(successorWrench.getAngularPartY());
wrenchToPack.setLinearPartX(successorWrench.getLinearPartX());
wrenchToPack.setLinearPartZ(successorWrench.getLinearPartZ());
}
代码示例来源:origin: us.ihmc/CommonWalkingControlModules
private void readSensorData(Wrench footWrenchToPack)
{
forceSensorData.getWrench(footWrenchToPack);
// First in measurement frame for all the frames...
footForce.setToZero(footWrenchToPack.getExpressedInFrame());
footWrenchToPack.getLinearPart(footForce);
yoFootForce.set(footForce);
footTorque.setToZero(footWrenchToPack.getExpressedInFrame());
footWrenchToPack.getAngularPart(footTorque);
yoFootTorque.set(footTorque);
// magnitude of force part is independent of frame
footForceMagnitude.set(footForce.length());
// Now change to frame after the parent joint (ankle or wrist for example):
footWrenchInBodyFixedFrame.set(footWrenchToPack);
footWrenchInBodyFixedFrame.changeFrame(contactablePlaneBody.getRigidBody().getBodyFixedFrame());
footForce.setToZero(footWrenchInBodyFixedFrame.getExpressedInFrame());
footWrenchInBodyFixedFrame.getLinearPart(footForce);
footTorque.setToZero(footWrenchInBodyFixedFrame.getExpressedInFrame());
footWrenchInBodyFixedFrame.getAngularPart(footTorque);
footForce.changeFrame(contactablePlaneBody.getFrameAfterParentJoint());
yoFootForceInFoot.set(footForce);
footTorque.changeFrame(contactablePlaneBody.getFrameAfterParentJoint());
yoFootTorqueInFoot.set(footTorque);
footForce.changeFrame(ReferenceFrame.getWorldFrame());
footTorque.changeFrame(ReferenceFrame.getWorldFrame());
yoFootForceInWorld.set(footForce);
yoFootTorqueInWorld.set(footTorque);
updateSensorVisualizer();
}
代码示例来源:origin: us.ihmc/IHMCRoboticsToolkit
@Override
public void setTorqueFromWrench(Wrench jointWrench)
{
jointWrench.getBodyFrame().checkReferenceFrameMatch(successor.getBodyFixedFrame());
jointWrench.setToZero(successor.getBodyFixedFrame(), successorWrench.getExpressedInFrame());
jointWrench.setAngularPartY(successorWrench.getAngularPartY());
jointWrench.setLinearPartX(successorWrench.getLinearPartX());
jointWrench.setLinearPartZ(successorWrench.getLinearPartZ());
jointWrench.changeFrame(successor.getBodyFixedFrame());
}
代码示例来源:origin: us.ihmc/IHMCRoboticsToolkit
public void computeDynamicWrenchInBodyCoordinates(SpatialAccelerationVector acceleration, Twist twist, Wrench dynamicWrenchToPack) // TODO: write test
{
checkExpressedInBodyFixedFrame();
checkIsCrossPartZero(); // otherwise this operation would be a lot less efficient
acceleration.getBodyFrame().checkReferenceFrameMatch(this.bodyFrame);
acceleration.getBaseFrame().checkIsWorldFrame();
acceleration.getExpressedInFrame().checkReferenceFrameMatch(this.expressedInframe);
twist.getBodyFrame().checkReferenceFrameMatch(this.bodyFrame);
twist.getBaseFrame().checkIsWorldFrame();
twist.getExpressedInFrame().checkReferenceFrameMatch(this.expressedInframe);
dynamicWrenchToPack.getBodyFrame().checkReferenceFrameMatch(this.bodyFrame);
dynamicWrenchToPack.getExpressedInFrame().checkReferenceFrameMatch(this.expressedInframe);
massMomentOfInertiaPart.transform(acceleration.getAngularPart(), tempVector); // J * omegad
dynamicWrenchToPack.setAngularPart(tempVector); // [J * omegad; 0]
massMomentOfInertiaPart.transform(twist.getAngularPart(), tempVector); // J * omega
tempVector.cross(twist.getAngularPart(), tempVector); // omega x J * omega
dynamicWrenchToPack.addAngularPart(tempVector); // [J * omegad + omega x J * omega; 0]
tempVector.set(acceleration.getLinearPart()); // vd
tempVector.scale(mass); // m * vd
dynamicWrenchToPack.setLinearPart(tempVector); // [J * omegad + omega x J * omega; m * vd]
tempVector.set(twist.getLinearPart()); // v
tempVector.scale(mass); // m * v
tempVector.cross(twist.getAngularPart(), tempVector); // omega x m * v
dynamicWrenchToPack.addLinearPart(tempVector); // [J * omegad + omega x J * omega; m * vd + omega x m * v]
}
这个问题在这里已经有了答案: 关闭 11 年前。 Possible Duplicate: Sample data for IPv6? 除了 wireshark 在其网站上提供的内容之外,是否有可以下
我正在寻找可以集成到现有应用程序中并使用多拖放功能的示例或任何现成的解决方案。我在互联网上找到的大多数解决方案在将多个项目从 ListBox 等控件拖放到另一个 ListBox 时效果不佳。谁能指出我
我是 GATE Embedded 的新手,我尝试了简单的示例并得到了 NoClassDefFoundError。首先我会解释我尝试了什么 在 D:\project\gate-7.0 中下载并提取 Ga
是否有像 Eclipse 中的 SWT 示例那样的多合一 JFace 控件示例?搜索(在 stackoverflow.com 上使用谷歌搜索和搜索)对我没有帮助。 如果它是一个独立的应用程序或 ecl
我找不到任何可以清楚地解释如何通过 .net API(特别是 c#)使用谷歌计算引擎的内容。有没有人可以指点我什么? 附言我知道 API 引用 ( https://developers.google.
最近在做公司的一个项目时,客户需要我们定时获取他们矩阵系统的数据。在与客户进行对接时,提到他们的接口使用的目前不常用的BASIC 认证。天呢,它好不安全,容易被不法人监听,咋还在使用呀。但是没办法呀,
最近在做公司的一个项目时,客户需要我们定时获取他们矩阵系统的数据。在与客户进行对接时,提到他们的接口使用的目前不常用的BASIC 认证。天呢,它好不安全,容易被不法人监听,咋还在使用呀。但是没办法呀,
我正在尝试为我的应用程序设计配置文件格式并选择了 YAML。但是,这(显然)意味着我需要能够定义、解析和验证正确的 YAML 语法! 在配置文件中,必须有一个名为 widgets 的集合/序列。 .这
你能给我一个使用 pysmb 库连接到一些 samba 服务器的例子吗?我读过有类 smb.SMBConnection.SMBConnection(用户名、密码、my_name、remote_name
linux服务器默认通过22端口用ssh协议登录,这种不安全。今天想做限制,即允许部分来源ip连接服务器。 案例目标:通过iptables规则限制对linux服务器的登录。 处理方法:编
我一直在寻找任何 PostProjectAnalysisTask 工作代码示例,但没有看。 This页面指出 HipChat plugin使用这个钩子(Hook),但在我看来它仍然使用遗留的 Po
我发现了 GWT 的 CustomScrollPanel 以及如何自定义滚动条,但我找不到任何示例或如何设置它。是否有任何示例显示正在使用的自定义滚动条? 最佳答案 这是自定义 native 滚动条的
我正在尝试开发一个 Backbone Marionette 应用程序,我需要知道如何以最佳方式执行 CRUD(创建、读取、更新和销毁)操作。我找不到任何解释这一点的资源(仅适用于 Backbone)。
关闭。这个问题需要details or clarity .它目前不接受答案。 想改进这个问题?通过 editing this post 添加详细信息并澄清问题. 去年关闭。 Improve this
我需要一个提交多个单独请求的 django 表单,如果没有大量定制,我找不到如何做到这一点的示例。即,假设有一个汽车维修店使用的表格。该表格将列出商店能够进行的所有可能的维修,并且用户将选择他们想要进
我有一个 Multi-Tenancy 应用程序。然而,这个相同的应用程序有 liquibase。我需要在我的所有数据源中运行 liquibase,但是我不能使用这个 Bean。 我的应用程序.yml
我了解有关单元测试的一般思想,并已在系统中发生复杂交互的场景中使用它,但我仍然对所有这些原则结合在一起有疑问。 我们被警告不要测试框架或数据库。好的 UI 设计不适合非人工测试。 MVC 框架不包括一
我正在使用 docjure并且它的 select-columns 函数需要一个列映射。我想获取所有列而无需手动指定。 如何将以下内容生成为惰性无限向量序列 [:A :B :C :D :E ... :A
$condition使用说明和 $param在 findByAttributes在 Yii 在大多数情况下,这就是我使用 findByAttributes 的方式 Person::model()->f
我在 Ubuntu 11.10 上安装了 qtcreator sudo apt-get install qtcreator 安装的版本有:QT Creator 2.2.1、QT 4.7.3 当我启动
我是一名优秀的程序员,十分优秀!