Module rgg

Class HDir

All Implemented Interfaces:
Transformation, Manageable, PersistenceCapable, Shareable, UserFields, XObject, Map, Serializable

public class HDir extends Node implements Transformation
Set the local z-axis (the turtle's head axis) so that it encompasses the given angle to the world's up axis. This is performed by a rotation in the plane spanned by the world's up axis and the former head direction of the turtle.
Author:
Reinhard Hemmerling
See Also:
  • Field Details

    • angle

      public float angle
      The rotation angle in degrees.
    • $TYPE

      public static final Node.NType $TYPE
    • angle$FIELD

      public static final Node.NType.Field angle$FIELD
  • Constructor Details

    • HDir

      public HDir()
      Creates a new HDir node with an initial angle of 0 degrees.
    • HDir

      public HDir(float angle)
      Creates a new HDir node which set's the head axis of the turtle such that it spans the given angle in degrees to the world's up-axis.
      Parameters:
      angle - angle between head and world's up direction in degrees
  • Method Details

    • getNTypeImpl

      protected Node.NType getNTypeImpl()
      Description copied from class: Node
      This method returns the Node.NType which describes the managed fields of the class of this node. This method has to be implemented in every concrete subclass.
      Overrides:
      getNTypeImpl in class Node
      Returns:
      type describing the managed fields of the class of this node
    • newInstance

      protected Node newInstance()
      Description copied from class: Node
      This method returns a new instance of the class of this node. This method has to be implemented in every concrete subclass.
      Overrides:
      newInstance in class Node
      Returns:
      new instance of class of this node
    • getAngle

      public float getAngle()
    • setAngle

      public void setAngle(float value)
    • preTransform

      public void preTransform(Object node, boolean asNode, Matrix4d in, Matrix4d out, GraphState gs)
      Description copied from interface: Transformation
      Implements the change from the parent's post-transformation in to the object's transformation out.
      Specified by:
      preTransform in interface Transformation
      Parameters:
      node - the object for which the transformation is computed
      asNode - is object a node or an edge?
      in - the post-transformation of the object's parent
      out - the tranformation of the object to be computed
      gs - the graph state in which the computation has to be done
    • postTransform

      public void postTransform(Object node, boolean asNode, Matrix4d in, Matrix4d out, Matrix4d pre, GraphState gs)
      Description copied from interface: Transformation
      Implements the change from object's transformation in to the object's post-transformation out.
      Specified by:
      postTransform in interface Transformation
      Parameters:
      node - the object for which the transformation is computed
      asNode - is object a node or an edge?
      in - the transformation of the object
      out - the post-tranformation of the object to be computed
      pre - the post-transformation of the object's parent
      gs - the graph state in which the computation has to be done