gpt4 book ai didi

us.ihmc.yoVariables.variable.YoFrameVector2D类的使用及代码示例

转载 作者:知者 更新时间:2024-03-15 03:12:49 28 4
gpt4 key购买 nike

本文整理了Java中us.ihmc.yoVariables.variable.YoFrameVector2D类的一些代码示例,展示了YoFrameVector2D类的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。YoFrameVector2D类的具体详情如下:
包路径:us.ihmc.yoVariables.variable.YoFrameVector2D
类名称:YoFrameVector2D

YoFrameVector2D介绍

[英]FixedFrameVector2DBasics implementation which components x, y are baked with YoDoubles.
[中]FixedFrameVector2DBasics实现,其中x、y组件用Yodouble烘焙。

代码示例

代码示例来源:origin: us.ihmc/ihmc-yovariables

/**
  * Creates a copy of {@code this} by finding the duplicated {@code YoVariable}s in the given
  * {@link YoVariableRegistry}.
  * <p>
  * This method does not duplicate {@code YoVariable}s. Assuming the given registry is a duplicate
  * of the registry that was used to create {@code this}, this method searches for the duplicated
  * {@code YoVariable}s and use them to duplicate {@code this}.
  * </p>
  *
  * @param newRegistry YoVariableRegistry to duplicate {@code this} to.
  * @return the duplicate of {@code this}.
  */
  public YoFrameVector2D duplicate(YoVariableRegistry newRegistry)
  {
   YoDouble x = (YoDouble) newRegistry.getVariable(getYoX().getFullNameWithNameSpace());
   YoDouble y = (YoDouble) newRegistry.getVariable(getYoY().getFullNameWithNameSpace());
   return new YoFrameVector2D(x, y, getReferenceFrame());
  }
}

代码示例来源:origin: us.ihmc/simulation-construction-set-tools

public void computeForcePerturbance()
{
 if (perturbanceUnitVector.getX() > 0.0)
 {
   perturbanceForce.setX(perturbanceUnitVector.getX() * xPosForce);
 }
 else
 {
   perturbanceForce.setX(perturbanceUnitVector.getX() * xNegForce);
 }
 
 if (perturbanceUnitVector.getY() > 0.0)
 {
   perturbanceForce.setY(perturbanceUnitVector.getY() * yPosForce);
 }
 else
 {
   perturbanceForce.setY(perturbanceUnitVector.getY() * yNegForce);
 }
}

代码示例来源:origin: us.ihmc/ihmc-graphics-description

public YoArtifactOval(String name, YoFramePoint2D center, YoFrameVector2D radii, Color color)
{
 super(name, new double[0], color, center.getYoX(), center.getYoY(), radii.getYoX(), radii.getYoY());
 this.center = center;
 this.radii = radii;
}

代码示例来源:origin: us.ihmc/ihmc-robotics-toolkit

public static RateLimitedYoFrameVector2d createRateLimitedYoFrameVector2d(String namePrefix, String nameSuffix, YoVariableRegistry registry,
    YoDouble maxRate, double dt, YoFrameVector2D unfilteredVector)
{
 RateLimitedYoVariable x = new RateLimitedYoVariable(YoFrameVariableNameTools.createXName(namePrefix, nameSuffix), registry, maxRate, unfilteredVector.getYoX(), dt);
 RateLimitedYoVariable y = new RateLimitedYoVariable(YoFrameVariableNameTools.createYName(namePrefix, nameSuffix), registry, maxRate, unfilteredVector.getYoY(), dt);
 RateLimitedYoFrameVector2d ret = new RateLimitedYoFrameVector2d(x, y, unfilteredVector.getReferenceFrame());
 return ret;
}

代码示例来源:origin: us.ihmc/ihmc-yovariables

/**
* Creates a new {@code YoFrameLine2D}.
*
* @param namePrefix a unique name string to use as the prefix for child variable names.
* @param nameSuffix a string to use as the suffix for child variable names.
* @param referenceFrame the reference frame for this line.
* @param registry the registry to register child variables to.
*/
public YoFrameLine2D(String namePrefix, String nameSuffix, ReferenceFrame referenceFrame, YoVariableRegistry registry)
{
 point = new YoFramePoint2D(namePrefix, nameSuffix, referenceFrame, registry);
 direction = new YoFrameVector2D(namePrefix, nameSuffix, referenceFrame, registry);
}

代码示例来源:origin: us.ihmc/simulation-construction-set-test

YoFrameVector2D radii = new YoFrameVector2D("radii", ReferenceFrame.getWorldFrame(), registry);
center.set(-1.0, -1.0);
radii.set(1.0, 0.7);

代码示例来源:origin: us.ihmc/ihmc-footstep-planning

@Override
public double calculateCost(FramePose3D stanceFoot, FramePose3D swingStartFoot, FramePose3D idealFootstep, FramePose3D candidateFootstep, double percentageOfFoothold)
{
 double cost = footstepBaseCost.getDoubleValue();
 setXYVectorFromPoseToPoseNormalize(forwardCostVector, swingStartFoot, idealFootstep);
 setXYVectorFromPoseToPoseNormalize(backwardCostVector, idealFootstep, swingStartFoot);
 inwardCostVector.set(forwardCostVector.getY(), -forwardCostVector.getX());
 outwardCostVector.set(-forwardCostVector.getY(), forwardCostVector.getX());
 upwardCostVector.set(0.0, 0.0, 1.0);
 downwardVector.set(0.0, 0.0, -1.0);
 setVectorFromPoseToPose(idealToCandidateVector, idealFootstep, candidateFootstep);
 setOrientationFromPoseToPose(idealToCandidateOrientation, idealFootstep, candidateFootstep);
 double downwardPenalizationWeightConsideringStancePitch = downwardCostScalar.getDoubleValue();
 if (stanceFoot.getPitch() < 0)
 {
   downwardPenalizationWeightConsideringStancePitch += -stanceFoot.getPitch() * stancePitchDownwardCostScalar.getDoubleValue();
 }
 cost += penalizeCandidateFootstep(forwardCostVector, forwardCostScalar.getDoubleValue());
 cost += penalizeCandidateFootstep(backwardCostVector, backwardCostScalar.getDoubleValue());
 cost += penalizeCandidateFootstep(inwardCostVector, inwardCostScalar.getDoubleValue());
 cost += penalizeCandidateFootstep(outwardCostVector, outwardCostScalar.getDoubleValue());
 cost += penalizeCandidateFootstep(upwardCostVector, upwardCostScalar.getDoubleValue());
 cost += penalizeCandidateFootstep(downwardVector, downwardPenalizationWeightConsideringStancePitch);
 cost += angularCostScalar.getDoubleValue() * Math.abs(idealToCandidateOrientation.getYaw().getDoubleValue());
 cost += angularCostScalar.getDoubleValue() * Math.abs(idealToCandidateOrientation.getPitch().getDoubleValue());
 cost += angularCostScalar.getDoubleValue() * Math.abs(idealToCandidateOrientation.getRoll().getDoubleValue());
 cost += (1.0 - percentageOfFoothold) * negativeFootholdLinearCostScalar.getDoubleValue();
 return cost;
}

代码示例来源:origin: us.ihmc/ihmc-robotics-toolkit

public void update(Tuple2DReadOnly currentPosition)
  {
   if (!hasBeenCalled.getBooleanValue())
   {
     hasBeenCalled.set(true);
     lastPosition.set(currentPosition);
     setToZero();
   }

   currentRawDerivative.sub(currentPosition, lastPosition);
   currentRawDerivative.scale(1.0 / dt);

   interpolate(currentRawDerivative, this, alphaProvider.getValue());

   lastPosition.set(currentPosition);
  }
}

代码示例来源:origin: us.ihmc/ihmc-yovariables

/**
* Gets the internal reference to the x-component used for this line direction.
* 
* @return the direction x-component as {@code YoVariable}.
*/
public YoDouble getYoDirectionX()
{
 return direction.getYoX();
}

代码示例来源:origin: us.ihmc/ihmc-yovariables

/**
* Gets the internal reference to the y-component used for this line direction.
* 
* @return the direction y-component as {@code YoVariable}.
*/
public YoDouble getYoDirectionY()
{
 return direction.getYoY();
}

代码示例来源:origin: us.ihmc/ihmc-yovariables

/**
* Creates a copy of {@code this} by finding the duplicated {@code YoVariable}s in the given
* {@link YoVariableRegistry}.
* <p>
* This method does not duplicate {@code YoVariable}s. Assuming the given registry is a duplicate
* of the registry that was used to create {@code this}, this method searches for the duplicated
* {@code YoVariable}s and use them to duplicate {@code this}.
* </p>
*
* @param newRegistry YoVariableRegistry to duplicate {@code this} to.
* @return the duplicate of {@code this}.
*/
public YoFrameLine2D duplicate(YoVariableRegistry newRegistry)
{
 return new YoFrameLine2D(point.duplicate(newRegistry), direction.duplicate(newRegistry));
}

代码示例来源:origin: us.ihmc/ihmc-robotics-toolkit

public static BetaFilteredYoFrameVector2d createBetaFilteredYoFrameVector2d(String namePrefix, String nameSuffix, YoVariableRegistry registry, int beta, YoFrameVector2D unfilteredVector)
{
 // beta is a int
 BetaFilteredYoVariable x = new BetaFilteredYoVariable(YoFrameVariableNameTools.createXName(namePrefix, nameSuffix), registry, beta, unfilteredVector.getYoX());
 BetaFilteredYoVariable y = new BetaFilteredYoVariable(YoFrameVariableNameTools.createYName(namePrefix, nameSuffix), registry, beta, unfilteredVector.getYoY());
 BetaFilteredYoFrameVector2d ret = new BetaFilteredYoFrameVector2d(x, y, unfilteredVector.getReferenceFrame());
 return ret;
}

代码示例来源:origin: us.ihmc/ihmc-yovariables

/**
* Creates a new {@code YoFrameLine2D} using the given {@code YoVariable}s and sets its reference
* frame to {@code referenceFrame}.
*
* @param pointX the variable to use for the x-coordinate of this line point.
* @param pointY the variable to use for the y-coordinate of this line point.
* @param directionX the variable to use for the x-component of this line direction.
* @param directionY the variable to use for the x-component of this line direction.
* @param referenceFrame the reference frame for this line.
*/
public YoFrameLine2D(YoDouble pointX, YoDouble pointY, YoDouble directionX, YoDouble directionY, ReferenceFrame referenceFrame)
{
 point = new YoFramePoint2D(pointX, pointY, referenceFrame);
 direction = new YoFrameVector2D(directionX, directionY, referenceFrame);
}

代码示例来源:origin: us.ihmc/ihmc-humanoid-behaviors

doPelvisAndChestYaw.set(true);
pelvisShiftScaleFactor = new YoFrameVector2D("DiagnosticPelvisShiftScaleFactor", null, registry);
pelvisShiftScaleFactor.set(0.4, 0.7);

代码示例来源:origin: us.ihmc/ihmc-yovariables

/**
* Creates a new {@code YoFrameLine2D} using the given {@code YoVariable}s and sets its reference
* frame to {@code referenceFrame}.
*
* @param point the {@code YoFramePoint2D} to use internally for this line point.
* @param direction the {@code YoFrameVector2D} to use internally for this line direction.
* @throws ReferenceFrameMismatchException if {@code point} and {@code direction} are not
*            expressed in the same reference frame.
*/
public YoFrameLine2D(YoFramePoint2D point, YoFrameVector2D direction)
{
 this(point.getYoX(), point.getYoY(), direction.getYoX(), direction.getYoY(), point.getReferenceFrame());
 point.checkReferenceFrameMatch(direction);
}

代码示例来源:origin: us.ihmc/ihmc-footstep-planning

private void setXYVectorFromPoseToPoseNormalize(YoFrameVector2D vectorToPack, FramePose3D fromPose, FramePose3D toPose)
{
 if (fromPose.getPosition().epsilonEquals(toPose.getPosition(), 1e-7))
 {
   vectorToPack.set(fromPose.getReferenceFrame(), 0.0, 0.0);
 }
 else
 {
   FrameVector2D frameTuple2d = new FrameVector2D(vectorToPack);
   frameTuple2d.set(toPose.getPosition());
   fromPose.checkReferenceFrameMatch(vectorToPack);
   frameTuple2d.sub(fromPose.getX(), fromPose.getY());
   frameTuple2d.normalize();
   vectorToPack.set((Tuple2DReadOnly) frameTuple2d);
 }
}

代码示例来源:origin: us.ihmc/ihmc-graphics-description

@Override
  public YoArtifact duplicate(YoVariableRegistry newRegistry)
  {
   return new YoArtifactOval(getName(), center.duplicate(newRegistry), radii.duplicate(newRegistry), color);
  }
}

代码示例来源:origin: us.ihmc/ihmc-robotics-toolkit

public static AccelerationLimitedYoFrameVector2d createAccelerationLimitedYoFrameVector2d(String namePrefix, String nameSuffix, YoVariableRegistry registry,
   YoDouble maxRate, YoDouble maxAcceleration, double dt, YoFrameVector2D unfilteredVector)
{
 AccelerationLimitedYoVariable x = new AccelerationLimitedYoVariable(YoFrameVariableNameTools.createXName(namePrefix, nameSuffix), registry, maxRate, maxAcceleration, unfilteredVector.getYoX(), dt);
 AccelerationLimitedYoVariable y = new AccelerationLimitedYoVariable(YoFrameVariableNameTools.createYName(namePrefix, nameSuffix), registry, maxRate, maxAcceleration, unfilteredVector.getYoY(), dt);
 AccelerationLimitedYoFrameVector2d ret = new AccelerationLimitedYoFrameVector2d(x, y, unfilteredVector.getReferenceFrame());
 return ret;
}

代码示例来源:origin: us.ihmc/ihmc-robotics-toolkit

public FilteredVelocityYoFrameVector2d(String namePrefix, String nameSuffix, DoubleProvider alpha, double dt, YoVariableRegistry registry,
                   ReferenceFrame referenceFrame)
{
 super(namePrefix, nameSuffix, referenceFrame, registry);
 this.alphaProvider = alpha;
 this.dt = dt;
 hasBeenCalled = new YoBoolean(namePrefix + nameSuffix + "HasBeenCalled", registry);
 currentPosition = null;
 lastPosition = new YoFrameVector2D(namePrefix + "_lastPosition", nameSuffix, getReferenceFrame(), registry);
 reset();
}

代码示例来源:origin: us.ihmc/ihmc-simulation-toolkit

public ActualCMPComputer(boolean createViz, SimulationConstructionSet scs, FloatingRootJointRobot simulatedRobot)
{
 this.simulatedRobot = simulatedRobot;
 simulateDT = scs.getDT();
 gravity = simulatedRobot.getGravityZ();
 momentumChange = FilteredVelocityYoFrameVector
    .createFilteredVelocityYoFrameVector("rateOfChangeLinearMomentum", "", alpha, simulateDT, registry, yoLinearMomentum);
 if (createViz)
 {
   yoGraphicsListRegistry = new YoGraphicsListRegistry();
   YoArtifactPosition cmpViz = new YoArtifactPosition("SimulationCMP", yoCmp.getYoX(), yoCmp.getYoY(), GraphicType.BALL_WITH_CROSS, Color.RED, 0.005);
   cmpViz.setVisible(visibleByDefault);
   yoGraphicsListRegistry.registerArtifact(getClass().getSimpleName(), cmpViz);
   scs.addYoGraphicsListRegistry(yoGraphicsListRegistry);
 }
 else
 {
   yoGraphicsListRegistry = null;
 }
}

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com