Class Euler

    • Constructor Detail

      • Euler

        public Euler()
        Simple constructor.
    • Method Detail

      • validate

        public void validate​(double version)
        Check is all mandatory entries have been initialized.

        This method should throw an exception if some mandatory entries are missing or not compatible with version number.

        Specified by:
        validate in interface Section
        Overrides:
        validate in class CommentsContainer
        Parameters:
        version - format version
      • getEndpoints

        public AttitudeEndoints getEndpoints()
        Get the endpoints (i.e. frames A, B and their relationship).
        Returns:
        endpoints
      • getEulerRotSeq

        public RotationOrder getEulerRotSeq()
        Get the rotation order of Euler angles.
        Returns:
        rotation order
      • setEulerRotSeq

        public void setEulerRotSeq​(RotationOrder eulerRotSeq)
        Set the rotation order for Euler angles.
        Parameters:
        eulerRotSeq - order to be set
      • rateFrameIsA

        public boolean rateFrameIsA()
        Check if rates are specified in frame A.
        Returns:
        true if rates are specified in frame A
      • setRateFrameIsA

        public void setRateFrameIsA​(boolean rateFrameIsA)
        Set the frame in which rates are specified.
        Parameters:
        rateFrameIsA - if true, rates are specified in frame A
      • isSpacecraftBodyRate

        public boolean isSpacecraftBodyRate()
        Check if rates are specified in spacecraft body frame.

        Mandatory entries must have been initialized properly to non-null values before this method is called, otherwise NullPointerException will be thrown.

        Returns:
        true if rates are specified in spacecraft body frame
      • getRotationAngles

        public double[] getRotationAngles()
        Get the coordinates of the Euler angles (rad).
        Returns:
        rotation angles
      • setRotationAngle

        public void setRotationAngle​(char axis,
                                     double angle)
        Set the Euler angle about (rad).
        Parameters:
        axis - rotation axis
        angle - angle to set
      • getRotationRates

        public double[] getRotationRates()
        Get the rates of the Euler angles (rad/s).
        Returns:
        rotation rates
      • setRotationRate

        public void setRotationRate​(char axis,
                                    double rate)
        Set the rate of Euler angle (rad/s).
        Parameters:
        axis - rotation axis
        rate - angle rate to set
      • setInRotationAngles

        public void setInRotationAngles​(boolean inRotationAngles)
        Set flag for rotation angle parsing.
        Parameters:
        inRotationAngles - if true, we are in the rotationAngles part of XML files
      • hasRates

        public boolean hasRates()
        Check if the logical block includes rates.
        Returns:
        true if logical block includes rates