本文整理了Java中us.ihmc.euclid.tuple4D.interfaces.QuaternionBasics.setToNaN
方法的一些代码示例,展示了QuaternionBasics.setToNaN
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。QuaternionBasics.setToNaN
方法的具体详情如下:
包路径:us.ihmc.euclid.tuple4D.interfaces.QuaternionBasics
类名称:QuaternionBasics
方法名:setToNaN
暂无
代码示例来源:origin: us.ihmc/euclid-geometry
/** {@inheritDoc} */
@Override
default void setToNaN()
{
getOrientation().setToNaN();
getPosition().setToNaN();
}
代码示例来源:origin: us.ihmc/ihmc-robotics-toolkit
public static void computeQuaternionFromYawAndZNormal(double yaw, Vector3DReadOnly zNormal, QuaternionBasics quaternionToPack)
{
double Cx = 1.0;
double Cy = Math.tan(yaw);
if (Math.abs(zNormal.getZ()) < 1e-9)
{
quaternionToPack.setToNaN();
return;
}
double Cz = -1.0 * (zNormal.getX() + Cy * zNormal.getY()) / zNormal.getZ();
double CT = Math.sqrt(Cx * Cx + Cy * Cy + Cz * Cz);
if (CT < 1e-9)
throw new RuntimeException("Error calculating Quaternion");
Vector3D xAxis = new Vector3D(Cx / CT, Cy / CT, Cz / CT);
if (xAxis.getX() * Math.cos(yaw) + xAxis.getY() * Math.sin(yaw) < 0.0)
{
xAxis.negate();
}
Vector3D yAxis = new Vector3D();
Vector3DReadOnly zAxis = zNormal;
yAxis.cross(zAxis, xAxis);
RotationMatrix rotationMatrix = rotationMatrixForQuaternionFromYawAndZNormal.get();
rotationMatrix.setColumns(xAxis, yAxis, zAxis);
quaternionToPack.set(rotationMatrix);
}
代码示例来源:origin: us.ihmc/euclid-test
tuple1 = createTuple(xOriginal, yOriginal, zOriginal, sOriginal);
tuple2.setToNaN();
tuple2.setAndNegate(tuple1);
assertEquals(tuple2.getX(), -xOriginal, getEpsilon());
内容来源于网络,如有侵权,请联系作者删除!