Class Angle3D

java.lang.Object
org.opentrafficsim.core.math.Angle3D
All Implemented Interfaces:
java.io.Serializable

public class Angle3D
extends java.lang.Object
implements java.io.Serializable
3D-rotation, RPY coded (longitudinal roll along the x-axis, lateral pitch along the y-axis and vertical yaw along the z-axis), also called Tait–Bryan angles or Cardan angles. Angles are relative, and can relate to e.g. the inertial frame of a GTU.

Copyright (c) 2013-2019 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved.
BSD-style license. See OpenTrafficSim License.

$LastChangedDate: 2015-07-24 02:58:59 +0200 (Fri, 24 Jul 2015) $, @version $Revision: 1147 $, by $Author: averbraeck $, initial version Dec 10, 2015
Author:
Alexander Verbraeck, Peter Knoppers
See Also:
Serialized Form
  • Constructor Summary

    Constructors 
    Constructor Description
    Angle3D​(double roll, double pitch, double yaw, AngleUnit unit)  
    Angle3D​(Angle roll, Angle pitch, Angle yaw)  
    Angle3D​(AngleVector rotation)  
  • Method Summary

    Modifier and Type Method Description
    Angle getPitch()  
    Angle getRoll()  
    Angle getYaw()  
    java.lang.String toString()

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • Angle3D

      public Angle3D​(AngleVector rotation) throws ValueRuntimeException
      Parameters:
      rotation - AngleVector; the angles of the rotation in 3D (RPY coded)
      Throws:
      ValueRuntimeException - in case the vector does not have exactly three elements
    • Angle3D

      public Angle3D​(Angle roll, Angle pitch, Angle yaw) throws ValueRuntimeException
      Parameters:
      roll - Angle; (phi) the rotation around the x-axis
      pitch - Angle; (theta) the rotation around the y-axis
      yaw - Angle; (psi) the rotation around the z-axis
      Throws:
      ValueRuntimeException - in case the units are incorrect
    • Angle3D

      public Angle3D​(double roll, double pitch, double yaw, AngleUnit unit) throws ValueRuntimeException
      Parameters:
      roll - double; (phi) the rotation around the x-axis
      pitch - double; (theta) the rotation around the y-axis
      yaw - double; (psi) the rotation around the z-axis
      unit - AngleUnit; the unit of the RPY parameters
      Throws:
      ValueRuntimeException - in case the units are incorrect
  • Method Details

    • getRoll

      public final Angle getRoll()
      Returns:
      the roll.
    • getPitch

      public final Angle getPitch()
      Returns:
      the pitch.
    • getYaw

      public final Angle getYaw()
      Returns:
      the yaw.
    • toString

      public final java.lang.String toString()
      Overrides:
      toString in class java.lang.Object