@Override public boolean isCommandValid() { return getNumberOfFootsteps() > 0 && executionModeValid(); }
public void clearFoosteps() { clear(); }
@Override public void clear() { defaultSwingDuration = 0.0; defaultTransferDuration = 0.0; finalTransferDuration = 0.0; footsteps.clear(); clearQueuableCommandVariables(); }
FootstepDataListCommand footstepList = new FootstepDataListCommand(); FootstepDataCommand footstepCommand = new FootstepDataCommand(); footstepCommand.setPose(position, orientation); footstepCommand.setRobotSide(RobotSide.LEFT); footstepList.addFootstep(footstepCommand); footstepCommand.setPose(position, orientation); footstepCommand.setRobotSide(RobotSide.RIGHT); footstepList.addFootstep(footstepCommand); footstepCommand.setPose(position, orientation); footstepCommand.setRobotSide(RobotSide.LEFT); footstepList.addFootstep(footstepCommand); footstepCommand.setPose(position, orientation); footstepCommand.setRobotSide(RobotSide.RIGHT); footstepList.addFootstep(footstepCommand); double simulationDuration = footstepList.getNumberOfFootsteps() * perStepDuration + getRobotModel().getWalkingControllerParameters().getDefaultFinalTransferTime() + getRobotModel().getWalkingControllerParameters().getDefaultInitialTransferTime(); footstepList = new FootstepDataListCommand(); footstepCommand = new FootstepDataCommand(); footstepCommand.setPose(position, orientation); footstepCommand.setRobotSide(RobotSide.LEFT); footstepList.addFootstep(footstepCommand);
if (command.getNumberOfFootsteps() > 0) switch(command.getExecutionMode()) currentFootstepIndex.set(0); clearFootTrajectory(); currentNumberOfFootsteps.set(command.getNumberOfFootsteps()); break; case QUEUE: currentNumberOfFootsteps.add(command.getNumberOfFootsteps()); break; default: PrintTools.warn(this, "Unknown " + ExecutionMode.class.getSimpleName() + " value: " + command.getExecutionMode() + ". Command ignored."); return; double commandDefaultTransferTime = command.getDefaultTransferTime(); double commandDefaultSwingTime = command.getDefaultSwingTime(); if (!Double.isNaN(commandDefaultSwingTime) && commandDefaultSwingTime > 1.0e-2 && !Double.isNaN(commandDefaultTransferTime) && commandDefaultTransferTime >= 0.0) double commandFinalTransferTime = command.getFinalTransferTime(); if (commandFinalTransferTime >= 0.0) finalTransferTime.set(commandFinalTransferTime); for (int i = 0; i < command.getNumberOfFootsteps(); i++) Footstep newFootstep = createFootstep(command.getFootstep(i)); upcomingFootsteps.add(newFootstep); FootstepTiming newFootstepTiming = createFootstepTiming(command.getFootstep(i)); upcomingFootstepTimings.add(newFootstepTiming);
FootstepDataListCommand command = new FootstepDataListCommand(); command.set(message); controllerCommands.add(command);
public void createStepPlan() footstepCommandList.clear(); footstepCommandList.addFootstep(desiredFootstepCommand); footstepCommandList.setExecutionMode(ExecutionMode.OVERRIDE); footstepCommandList.setSwingTime(swingTime.getDoubleValue()); footstepCommandList.setTransferTime(transferTime.getDoubleValue());
@Override public void set(FootstepDataListCommand other) { clear(); defaultSwingDuration = other.defaultSwingDuration; defaultTransferDuration = other.defaultTransferDuration; finalTransferDuration = other.finalTransferDuration; executionTiming = other.executionTiming; adjustedExecutionTime = other.adjustedExecutionTime; trustHeightOfFootsteps = other.trustHeightOfFootsteps; areFootstepsAdjustable = other.areFootstepsAdjustable; offsetFootstepsWithExecutionError = other.offsetFootstepsWithExecutionError; RecyclingArrayList<FootstepDataCommand> otherFootsteps = other.getFootsteps(); if (otherFootsteps != null) { for (int i = 0; i < otherFootsteps.size(); i++) footsteps.add().set(otherFootsteps.get(i)); } setQueueableCommandVariables(other); }
FootstepDataListCommand footstepList = new FootstepDataListCommand(); FootstepDataCommand footstepCommand = new FootstepDataCommand(); footstepCommand.setPose(position, orientation); footstepCommand.setRobotSide(RobotSide.LEFT); footstepList.addFootstep(footstepCommand); footstepCommand.setPose(position, orientation); footstepCommand.setRobotSide(RobotSide.RIGHT); footstepList.addFootstep(footstepCommand); footstepList = new FootstepDataListCommand(); footstepCommand = new FootstepDataCommand(); footstepCommand.setPose(position, orientation); footstepCommand.setRobotSide(RobotSide.LEFT); footstepList.addFootstep(footstepCommand); footstepCommand.setPose(position, orientation); footstepCommand.setRobotSide(RobotSide.RIGHT); footstepList.addFootstep(footstepCommand); footstepCommand.setPose(position, orientation); footstepCommand.setRobotSide(RobotSide.LEFT); footstepList.addFootstep(footstepCommand); footstepCommand.setPose(position, orientation); footstepCommand.setRobotSide(RobotSide.RIGHT); footstepList.addFootstep(footstepCommand);
@Override public void set(FootstepDataListCommand other) { clear(); defaultSwingTime = other.defaultSwingTime; defaultTransferTime = other.defaultTransferTime; finalTransferTime = other.finalTransferTime; executionMode = other.executionMode; RecyclingArrayList<FootstepDataCommand> otherFootsteps = other.getFootsteps(); if (otherFootsteps != null) { for (int i = 0; i < otherFootsteps.size(); i++) footsteps.add().set(otherFootsteps.get(i)); } }
@Override public boolean isCommandValid() { return getNumberOfFootsteps() > 0; } }
FootstepDataListCommand command = new FootstepDataListCommand(); command.setFromMessage(message); controllerCommands.add(command);
@Override public void setFromMessage(FootstepDataListMessage message) { clear(); defaultSwingDuration = message.getDefaultSwingDuration(); defaultTransferDuration = message.getDefaultTransferDuration(); finalTransferDuration = message.getFinalTransferDuration(); executionTiming = ExecutionTiming.fromByte(message.getExecutionTiming()); trustHeightOfFootsteps = message.getTrustHeightOfFootsteps(); areFootstepsAdjustable = message.getAreFootstepsAdjustable(); offsetFootstepsWithExecutionError = message.getOffsetFootstepsWithExecutionError(); List<FootstepDataMessage> dataList = message.getFootstepDataList(); ReferenceFrame worldFrame = ReferenceFrame.getWorldFrame(); if (dataList != null) { for (int i = 0; i < dataList.size(); i++) footsteps.add().set(worldFrame, dataList.get(i)); } setQueueableCommandVariables(message.getQueueingProperties()); }
FootstepDataListCommand command = new FootstepDataListCommand(); command.set(message); controllerCommands.add(command);
public FootstepDataListCommand() { clear(); }
public FootstepDataListCommand() { clear(); }
public void clearFoosteps() { clear(); }
@Override public void set(FootstepDataListMessage message) { clear(); defaultSwingTime = message.defaultSwingTime; defaultTransferTime = message.defaultTransferTime; finalTransferTime = message.finalTransferTime; executionMode = message.executionMode; ArrayList<FootstepDataMessage> dataList = message.getDataList(); if (dataList != null) { for (int i = 0; i < dataList.size(); i++) footsteps.add().set(dataList.get(i)); } }