com.kuka.nav.fleet.graph.properties
Class GraphTransition

java.lang.Object
  extended by com.kuka.nav.fleet.graph.properties.AbstractProperty
      extended by com.kuka.nav.fleet.graph.properties.GraphTransition
All Implemented Interfaces:
Property, Serializable

public class GraphTransition
extends AbstractProperty

Node property defining a transition between two graphs. The property specifies the id of the node to which the transition is defined, the id of the graph where this node lies, and the rotation by which the robot's orientation needs to be adapted after it has switched from the node defining the graph transition property to the specified transition node.

The specified transition node may be located in a different map. It is required, though, that globally the position of the node defining the node transition property and the position of the specified transition node coincide. The specified rotation is to be understood such that after switching to the specified transition node (and changing to the corresponding map) the robot can be localized at the pose resulting from the transition node's position and sum of the robot orientation on the old map and the specified rotation. Note, that this value corresponds to negative the value by which the old map's coordinate system needs to be rotated in order to match the transition node's coordinate system.

The fleet manager constructs a global graph resulting from graphs and their defined graph transitions. Graph motions are planned and executed in this graph. For purposes of collision checks it must be possible to compute transformations between different graphs' maps' coordinate systems based on the defined graph transitions. Therefore it should be ensured that graphs on different maps which are globally located in the same area must be reachable from each other by means of graph transitions.

See Also:
Serialized Form

Constructor Summary
GraphTransition()
          Default constructor.
GraphTransition(int graphId, int nodeId, double rotation)
          Constructor.
 
Method Summary
 Integer getGraphId()
          Returns the id of the graph of the transition node.
 Integer getNodeId()
          Returns the id of the transition node.
 String getPoseSigma()
          Returns the initial translational and rotational standard deviation of the localizer as a comma separated list, e.g. "0.03, 1.5".
 double getRotation()
          Returns the rotation value in radians.
 Double getRotationDeg()
          Returns the specified rotation value in degrees.
 Double getSigmaRot()
          Returns the initial rotational standard deviation of the localizer.
 Double getSigmaTrans()
          Returns the initial translational standard deviation of the localizer.
 String getValueToDisplay()
          Returns the value(s) in a way to show it in a UI.
 void setGraphId(Integer graphId)
          Sets the id of the graph of the transition node.
 void setNodeId(Integer nodeId)
          Sets the id of the transition node.
 void setPoseSigma(double sigmaTrans, double sigmaRot)
          Sets the initial standard deviation of the localizer.
 void setPoseSigma(String poseSigma)
          Sets the initial translational and rotational standard deviation of the localizer as a comma separated list, e.g. "0.03, 1.5".
 void setRotation(double rotation)
          Sets the rotation value in radians.
 void setRotationDeg(Double rotation)
          Sets the rotation value in degrees.
 String toString()
           
 
Methods inherited from class com.kuka.nav.fleet.graph.properties.AbstractProperty
equals, fireChanged, getAllowedTypes, getId, hashCode, setId, tryGetParamFromString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

GraphTransition

public GraphTransition()
Default constructor. Sets graph and node id to -1 and rotation to 0.0.


GraphTransition

public GraphTransition(int graphId,
                       int nodeId,
                       double rotation)
Constructor.

Parameters:
graphId - the id of the graph where the transition node is located.
nodeId - the id of the transition node
rotation - the rotation value (after switching to the transition node (and changing to the corresponding map) the robot can be localized at the pose resulting from the transition node's position and sum of the robot orientation on the old map and this value)
Method Detail

getGraphId

public Integer getGraphId()
Returns the id of the graph of the transition node.

Returns:
the graph id

setGraphId

public void setGraphId(Integer graphId)
Sets the id of the graph of the transition node.

Parameters:
graphId - the graph id to be set

getNodeId

public Integer getNodeId()
Returns the id of the transition node.

Returns:
the transition node id

setNodeId

public void setNodeId(Integer nodeId)
Sets the id of the transition node.

Parameters:
nodeId - the transition node id to be set

getRotationDeg

public Double getRotationDeg()
Returns the specified rotation value in degrees.

Returns:
the specified rotation value in degrees

setRotationDeg

public void setRotationDeg(Double rotation)
Sets the rotation value in degrees.

Parameters:
rotation - the rotation value in degrees to be set

getRotation

public double getRotation()
Returns the rotation value in radians.

Returns:
the rotation value in radians.

setRotation

public void setRotation(double rotation)
Sets the rotation value in radians.

Parameters:
rotation - the rotation value in radians to be set

getPoseSigma

public String getPoseSigma()
Returns the initial translational and rotational standard deviation of the localizer as a comma separated list, e.g. "0.03, 1.5".

Returns:
the initial standard deviation of the localizer in [m, °]

setPoseSigma

public void setPoseSigma(String poseSigma)
Sets the initial translational and rotational standard deviation of the localizer as a comma separated list, e.g. "0.03, 1.5".

Parameters:
poseSigma - the initial standard deviation of the localizer in [m, °]

getSigmaTrans

public Double getSigmaTrans()
Returns the initial translational standard deviation of the localizer.

Returns:
the initial translational standard deviation of the localizer in [m]

getSigmaRot

public Double getSigmaRot()
Returns the initial rotational standard deviation of the localizer.

Returns:
the initial rotational standard deviation of the localizer in [rad]

setPoseSigma

public void setPoseSigma(double sigmaTrans,
                         double sigmaRot)
Sets the initial standard deviation of the localizer.

Parameters:
sigmaTrans - the initial translational standard deviation of the localizer in [m]
sigmaRot - the initial rotational standard deviation of the localizer in [rad]

getValueToDisplay

public String getValueToDisplay()
Description copied from interface: Property
Returns the value(s) in a way to show it in a UI.

Returns:
the values

toString

public String toString()
Overrides:
toString in class Object


Copyright © 2019. All rights reserved.