Class FloatDirectionVector

    • Constructor Detail

      • FloatDirectionVector

        public FloatDirectionVector​(FloatVectorData data,
                                    DirectionUnit unit)
        Construct a new Absative Immutable FloatDirectionVector.
        Parameters:
        data - FloatVectorData; an internal data object
        unit - DirectionUnit; the unit
    • Method Detail

      • getScalarClass

        public Class<FloatDirection> getScalarClass()
        Return the class of the corresponding scalar.
        Returns:
        Class<S>; the class of the corresponding scalar
      • instantiateVector

        public FloatDirectionVector instantiateVector​(FloatVectorData fvd,
                                                      DirectionUnit displayUnit)
        Instantiate a new vector of the class of this vector. This can be used instead of the FloatVector.instiantiate() methods in case another vector of this class is known. The method is faster than FloatVector.instantiate, and it will also work if the vector is user-defined.
        Parameters:
        fvd - FloatVectorData; the data used to instantiate the vector
        displayUnit - U; the display unit of the vector
        Returns:
        V; a vector of the correct type
      • instantiateScalarSI

        public FloatDirection instantiateScalarSI​(float valueSI,
                                                  DirectionUnit displayUnit)
        Instantiate a new scalar for the class of this vector. This can be used instead of the FloatScalar.instiantiate() methods in case a vector of this class is known. The method is faster than FloatScalar.instantiate, and it will also work if the vector and/or scalar are user-defined.
        Parameters:
        valueSI - float; the SI value of the scalar
        displayUnit - U; the unit in which the value will be displayed
        Returns:
        S; a scalar of the correct type, belonging to the vector type
      • instantiateVectorRel

        public FloatAngleVector instantiateVectorRel​(FloatVectorData fvd,
                                                     AngleUnit displayUnit)
        Instantiate a new relative vector of the class of this absolute vector. This can be used instead of the FloatVector.instiantiate() methods in case another vector of this absolute vector class is known. The method is faster than FloatVector.instantiate, and it will also work if the vector is user-defined.
        Specified by:
        instantiateVectorRel in class AbstractFloatVectorAbs<DirectionUnit,​FloatDirection,​FloatDirectionVector,​AngleUnit,​FloatAngle,​FloatAngleVector>
        Parameters:
        fvd - FloatVectorData; the data used to instantiate the vector
        displayUnit - RU; the display unit of the relative vector
        Returns:
        RV; a relative vector of the correct type, belonging to this absolute vector type
      • instantiateScalarRelSI

        public FloatAngle instantiateScalarRelSI​(float valueSI,
                                                 AngleUnit displayUnit)
        Instantiate a new relative scalar for the class of this absolute vector. This can be used instead of the FloatScalar.instiantiate() methods in case a vector of this class is known. The method is faster than FloatScalar.instantiate, and it will also work if the vector and/or scalar are user-defined.
        Specified by:
        instantiateScalarRelSI in class AbstractFloatVectorAbs<DirectionUnit,​FloatDirection,​FloatDirectionVector,​AngleUnit,​FloatAngle,​FloatAngleVector>
        Parameters:
        valueSI - float; the SI value of the relative scalar
        displayUnit - RU; the unit in which the relative value will be displayed
        Returns:
        R; a relative scalar of the correct type, belonging to this absolute vector type