Class PositionMatrix

    • Constructor Detail

      • PositionMatrix

        public PositionMatrix​(DoubleMatrixData data,
                              PositionUnit unit)
        Parameters:
        data - DoubleMatrixData; an internal data object
        unit - PositionUnit; the unit
    • Method Detail

      • getScalarClass

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

        public Class<PositionVector> getVectorClass()
        Return the class of the corresponding vector.
        Returns:
        Class<V>; the class of the corresponding vector
      • instantiateMatrix

        public PositionMatrix instantiateMatrix​(DoubleMatrixData dmd,
                                                PositionUnit displayUnit)
        Instantiate a new matrix of the class of this matrix. This can be used instead of the DoubleMatrix.instiantiate() methods in case another matrix of this class is known. The method is faster than DoubleMatrix.instantiate, and it will also work if the matrix is user-defined.
        Parameters:
        dmd - DoubleMatrixData; the data used to instantiate the matrix
        displayUnit - U; the display unit of the matrix
        Returns:
        V; a matrix of the correct type
      • instantiateVector

        public PositionVector instantiateVector​(DoubleVectorData dvd,
                                                PositionUnit displayUnit)
        Instantiate a new vector of the class of this matrix. This can be used instead of the DoubleVector.instiantiate() methods in case another matrix of this class is known. The method is faster than DoubleVector.instantiate, and it will also work if the matrix and/or vector are user-defined.
        Parameters:
        dvd - DoubleVectorData; 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 Position instantiateScalarSI​(double valueSI,
                                            PositionUnit displayUnit)
        Instantiate a new scalar for the class of this matrix. This can be used instead of the DoubleScalar.instiantiate() methods in case a matrix of this class is known. The method is faster than DoubleScalar.instantiate, and it will also work if the matrix and/or scalar are user-defined.
        Parameters:
        valueSI - double; 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 matrix type
      • instantiateVectorRel

        public LengthVector instantiateVectorRel​(DoubleVectorData dvd,
                                                 LengthUnit displayUnit)
        Instantiate a new relative vector of the class of this absolute matrix. This can be used instead of the DoubleVector.instiantiate() methods in case another matrix of this absolute matrix class is known. The method is faster than DoubleVector.instantiate, and it will also work if the matrix or vector is user-defined.
        Specified by:
        instantiateVectorRel in class AbstractDoubleMatrixAbs<PositionUnit,​Position,​PositionVector,​PositionMatrix,​LengthUnit,​Length,​LengthVector,​LengthMatrix>
        Parameters:
        dvd - DoubleVectorData; 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 matrix type
      • instantiateScalarRelSI

        public Length instantiateScalarRelSI​(double valueSI,
                                             LengthUnit displayUnit)
        Instantiate a new relative scalar for the class of this absolute matrix. This can be used instead of the DoubleScalar.instiantiate() methods in case a matrix of this class is known. The method is faster than DoubleScalar.instantiate, and it will also work if the matrix and/or scalar are user-defined.
        Specified by:
        instantiateScalarRelSI in class AbstractDoubleMatrixAbs<PositionUnit,​Position,​PositionVector,​PositionMatrix,​LengthUnit,​Length,​LengthVector,​LengthMatrix>
        Parameters:
        valueSI - double; 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 matrix type