Class PositionVector

All Implemented Interfaces:
Serializable, Cloneable, Iterable<Position>, Absolute, Vector<PositionUnit,​Position,​PositionVector>, Vector.Abs<PositionUnit,​Position,​PositionVector,​LengthUnit,​Length,​LengthVector>, ValueFunctions<PositionUnit,​PositionVector>, IndexedValue<PositionUnit,​Position,​PositionVector>, Value<PositionUnit,​PositionVector>, DoubleVectorInterface<PositionUnit,​Position,​PositionVector>

@Generated(value="org.djunits.generator.GenerateDJUNIT",
           date="2020-01-19T15:21:24.964166400Z")
public class PositionVector
extends AbstractDoubleVectorAbs<PositionUnit,​Position,​PositionVector,​LengthUnit,​Length,​LengthVector>
Double PositionVector, a vector of values with a PositionUnit.

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

Author:
Alexander Verbraeck, Peter Knoppers
See Also:
Serialized Form
  • Constructor Details

    • PositionVector

      public PositionVector​(DoubleVectorData data, PositionUnit unit)
      Construct an PositionVector from an internal data object.
      Parameters:
      data - DoubleVectorData; the internal data object for the vector data
      unit - PositionUnit; the display unit of the vector data
  • Method Details

    • getScalarClass

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

      public PositionVector instantiateVector​(DoubleVectorData dvd, PositionUnit displayUnit)
      Instantiate a new vector of the class of this vector. This can be used instead of the DoubleVector.instiantiate() methods in case another vector of this class is known. The method is faster than DoubleVector.instantiate, and it will also work if the vector is 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 vector. This can be used instead of the DoubleScalar.instiantiate() methods in case a vector of this class is known. The method is faster than DoubleScalar.instantiate, and it will also work if the vector 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 vector type
    • instantiateVectorRel

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

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