Class FloatDirectionVector

All Implemented Interfaces:
Serializable, Cloneable, Iterable<FloatDirection>, Absolute<DirectionUnit,FloatDirectionVector,AngleUnit,FloatAngleVector>, Value<DirectionUnit,FloatDirectionVector>

@Generated(value="org.djunits.generator.GenerateDJUNIT", date="2023-07-23T14:06:38.224104100Z") public class FloatDirectionVector extends FloatVectorAbs<DirectionUnit,FloatDirection,FloatDirectionVector,AngleUnit,FloatAngle,FloatAngleVector>
Absolute FloatDirection Vector.

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

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

    • FloatDirectionVector

      public FloatDirectionVector(FloatVectorData data, DirectionUnit displayUnit)
      Construct a FloatDirectionVector from an internal data object.
      Parameters:
      data - FloatVectorData; the internal data object for the vector
      displayUnit - DirectionUnit; the display unit of the vector data
    • FloatDirectionVector

      public FloatDirectionVector(float[] data, DirectionUnit displayUnit, StorageType storageType)
      Construct a FloatDirectionVector from a float[] object. The Float values are expressed in the displayUnit, and will be printed using the displayUnit.
      Parameters:
      data - float[]; the data for the vector, expressed in the displayUnit
      displayUnit - DirectionUnit; the unit of the values in the data array, and display unit when printing
      storageType - StorageType; the StorageType (SPARSE or DENSE) to use for constructing the Vector
    • FloatDirectionVector

      public FloatDirectionVector(float[] data, DirectionUnit displayUnit)
      Construct a FloatDirectionVector from a float[] object. The Float values are expressed in the displayUnit. Assume that the StorageType is DENSE since we offer the data as an array.
      Parameters:
      data - float[]; the data for the vector
      displayUnit - DirectionUnit; the unit of the values in the data array, and display unit when printing
    • FloatDirectionVector

      public FloatDirectionVector(float[] data, StorageType storageType)
      Construct a FloatDirectionVector from a float[] object with SI-unit values.
      Parameters:
      data - float[]; the data for the vector, in SI units
      storageType - StorageType; the StorageType (SPARSE or DENSE) to use for constructing the Vector
    • FloatDirectionVector

      public FloatDirectionVector(float[] data)
      Construct a FloatDirectionVector from a float[] object with SI-unit values. Assume that the StorageType is DENSE since we offer the data as an array.
      Parameters:
      data - float[]; the data for the vector, in SI units
    • FloatDirectionVector

      public FloatDirectionVector(FloatDirection[] data, DirectionUnit displayUnit, StorageType storageType)
      Construct a FloatDirectionVector from an array of FloatDirection objects. The FloatDirection values are each expressed in their own unit, but will be internally stored as SI values, all expressed in the displayUnit when printing.
      Parameters:
      data - FloatDirection[]; the data for the vector
      displayUnit - DirectionUnit; the display unit of the values when printing
      storageType - StorageType; the StorageType (SPARSE or DENSE) to use for constructing the Vector
    • FloatDirectionVector

      public FloatDirectionVector(FloatDirection[] data, DirectionUnit displayUnit)
      Construct a FloatDirectionVector from an array of FloatDirection objects. The FloatDirection values are each expressed in their own unit, but will be internally stored as SI values, all expressed in the displayUnit when printing. Assume that the StorageType is DENSE since we offer the data as an array.
      Parameters:
      data - FloatDirection[]; the data for the vector
      displayUnit - DirectionUnit; the display unit of the values when printing
    • FloatDirectionVector

      public FloatDirectionVector(FloatDirection[] data, StorageType storageType)
      Construct a FloatDirectionVector from an array of FloatDirection objects. The FloatDirection values are each expressed in their own unit, but will be internally stored as SI values, and expressed using SI units when printing. since we offer the data as an array.
      Parameters:
      data - FloatDirection[]; the data for the vector
      storageType - StorageType; the StorageType (SPARSE or DENSE) to use for constructing the Vector
    • FloatDirectionVector

      public FloatDirectionVector(FloatDirection[] data)
      Construct a FloatDirectionVector from an array of FloatDirection objects. The FloatDirection values are each expressed in their own unit, but will be internally stored as SI values, and expressed using SI units when printing. Assume that the StorageType is DENSE since we offer the data as an array.
      Parameters:
      data - FloatDirection[]; the data for the vector
    • FloatDirectionVector

      public FloatDirectionVector(List<? extends Number> data, DirectionUnit displayUnit, StorageType storageType)
      Construct a FloatDirectionVector from a list of Number objects or a list of FloatDirection objects. Note that the displayUnit has a different meaning depending on whether the list contains Number objects (e.g., Float objects) or FloatDirection objects. In case the list contains Number objects, the displayUnit indicates the unit in which the values in the list are expressed, as well as the unit in which they will be printed. In case the list contains FloatDirection objects, each FloatDirection has its own unit, and the displayUnit is just used for printing. The values but will always be internally stored as SI values or base values, and expressed using the display unit or base unit when printing.
      Parameters:
      data - List<Float> or List<Direction>; the data for the vector
      displayUnit - DirectionUnit; the display unit of the vector data, and the unit of the data points when the data is expressed as List<Float> or List<Number> in general
      storageType - StorageType; the StorageType (SPARSE or DENSE) to use for constructing the Vector
    • FloatDirectionVector

      public FloatDirectionVector(List<? extends Number> data, DirectionUnit displayUnit)
      Construct a FloatDirectionVector from a list of Number objects or a list of FloatDirection objects. Note that the displayUnit has a different meaning depending on whether the list contains Number objects (e.g., Float objects) or FloatDirection objects. In case the list contains Number objects, the displayUnit indicates the unit in which the values in the list are expressed, as well as the unit in which they will be printed. In case the list contains FloatDirection objects, each FloatDirection has its own unit, and the displayUnit is just used for printing. The values but will always be internally stored as SI values or base values, and expressed using the display unit or base unit when printing. Assume the storage type is DENSE since we offer the data as a List.
      Parameters:
      data - List<Float> or List<Direction>; the data for the vector
      displayUnit - DirectionUnit; the display unit of the vector data, and the unit of the data points when the data is expressed as List<Float> or List<Number> in general
    • FloatDirectionVector

      public FloatDirectionVector(List<? extends Number> data, StorageType storageType)
      Construct a FloatDirectionVector from a list of Number objects or a list of FloatDirection objects. When data contains numbers such as Float, assume that they are expressed using SI units. When the data consists of FloatDirection objects, they each have their own unit, but will be printed using SI units or base units. The values but will always be internally stored as SI values or base values, and expressed using the display unit or base unit when printing.
      Parameters:
      data - List<Float> or List<Direction>; the data for the vector
      storageType - StorageType; the StorageType (SPARSE or DENSE) to use for constructing the Vector
    • FloatDirectionVector

      public FloatDirectionVector(List<? extends Number> data)
      Construct a FloatDirectionVector from a list of Number objects or a list of FloatDirection objects. When data contains numbers such as Float, assume that they are expressed using SI units. When the data consists of FloatDirection objects, they each have their own unit, but will be printed using SI units or base units. The values but will always be internally stored as SI values or base values, and expressed using the display unit or base unit when printing. Assume the storage type is DENSE since we offer the data as a List.
      Parameters:
      data - List<Float> or List<Direction>; the data for the vector
    • FloatDirectionVector

      public FloatDirectionVector(Map<Integer,? extends Number> data, int size, DirectionUnit displayUnit, StorageType storageType)
      Construct a FloatDirectionVector from a (sparse) map of index values to Number objects or a (sparse) map of index values to of FloatDirection objects. Using index values is particularly useful for sparse vectors. The size parameter indicates the size of the vector, since the largest index does not have to be part of the map. Note that the displayUnit has a different meaning depending on whether the map contains Number objects (e.g., Float objects) or FloatDirection objects. In case the map contains Number objects, the displayUnit indicates the unit in which the values in the map are expressed, as well as the unit in which they will be printed. In case the map contains FloatDirection objects, each FloatDirection has its own unit, and the displayUnit is just used for printing. The values but will always be internally stored as SI values or base values, and expressed using the display unit or base unit when printing.
      Parameters:
      data - Map<Integer, Float> or Map<Integer, FloatDirection>; the data for the vector
      size - int; the size off the vector, i.e., the highest index
      displayUnit - DirectionUnit; the display unit of the vector data, and the unit of the data points when the data is expressed as List<Float> or List<Number> in general
      storageType - StorageType; the StorageType (SPARSE or DENSE) to use for constructing the Vector
    • FloatDirectionVector

      public FloatDirectionVector(Map<Integer,? extends Number> data, int size, DirectionUnit displayUnit)
      Construct a FloatDirectionVector from a (sparse) map of index values to Number objects or a (sparse) map of index values to of FloatDirection objects. Using index values is particularly useful for sparse vectors. The size parameter indicates the size of the vector, since the largest index does not have to be part of the map. Note that the displayUnit has a different meaning depending on whether the map contains Number objects (e.g., Float objects) or FloatDirection objects. In case the map contains Number objects, the displayUnit indicates the unit in which the values in the map are expressed, as well as the unit in which they will be printed. In case the map contains FloatDirection objects, each FloatDirection has its own unit, and the displayUnit is just used for printing. The values but will always be internally stored as SI values or base values, and expressed using the display unit or base unit when printing. Assume the storage type is SPARSE since we offer the data as a Map.
      Parameters:
      data - Map<Integer, Float> or Map<Integer, FloatDirection>; the data for the vector
      size - int; the size off the vector, i.e., the highest index
      displayUnit - DirectionUnit; the display unit of the vector data, and the unit of the data points when the data is expressed as List<Float> or List<Number> in general
    • FloatDirectionVector

      public FloatDirectionVector(Map<Integer,? extends Number> data, int size, StorageType storageType)
      Construct a FloatDirectionVector from a (sparse) map of index values to Number objects or a (sparse) map of index values to of FloatDirection objects. Using index values is particularly useful for sparse vectors. The size parameter indicates the size of the vector, since the largest index does not have to be part of the map. When data contains numbers such as Float, assume that they are expressed using SI units. When the data consists of FloatDirection objects, they each have their own unit, but will be printed using SI units or base units. The values but will always be internally stored as SI values or base values, and expressed using the display unit or base unit when printing.
      Parameters:
      data - Map<Integer, Float> or Map<Integer, FloatDirection>; the data for the vector
      size - int; the size off the vector, i.e., the highest index
      storageType - StorageType; the StorageType (SPARSE or DENSE) to use for constructing the Vector
    • FloatDirectionVector

      public FloatDirectionVector(Map<Integer,? extends Number> data, int size)
      Construct a FloatDirectionVector from a (sparse) map of index values to Number objects or a (sparse) map of index values to of FloatDirection objects. Using index values is particularly useful for sparse vectors. The size parameter indicates the size of the vector, since the largest index does not have to be part of the map. When data contains numbers such as Float, assume that they are expressed using SI units. When the data consists of FloatDirection objects, they each have their own unit, but will be printed using SI units or base units. The values but will always be internally stored as SI values or base values, and expressed using the display unit or base unit when printing. Assume the storage type is SPARSE since we offer the data as a Map.
      Parameters:
      data - Map<Integer, Float> or Map<Integer, FloatDirection>; the data for the vector
      size - int; the size off the vector, i.e., the highest index
  • Method Details

    • getScalarClass

      public Class<FloatDirection> getScalarClass()
      Return the class of the corresponding scalar.
      Specified by:
      getScalarClass in class IndexedValue<DirectionUnit,FloatDirection,FloatDirectionVector,FloatVectorData>
      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.
      Specified by:
      instantiateVector in class FloatVector<DirectionUnit,FloatDirection,FloatDirectionVector>
      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.
      Specified by:
      instantiateScalarSI in class FloatVector<DirectionUnit,FloatDirection,FloatDirectionVector>
      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 FloatVectorAbs<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 FloatVectorAbs<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