View Javadoc
1   package org.djunits.value.vdouble.vector;
2   
3   import org.djunits.unit.LengthUnit;
4   import org.djunits.unit.PositionUnit;
5   import org.djunits.value.vdouble.scalar.Length;
6   import org.djunits.value.vdouble.scalar.Position;
7   import org.djunits.value.vdouble.vector.base.AbstractDoubleVectorRelWithAbs;
8   import org.djunits.value.vdouble.vector.data.DoubleVectorData;
9   
10  import jakarta.annotation.Generated;
11  
12  /**
13   * Double LengthVector, a vector of values with a LengthUnit.
14   * <p>
15   * Copyright (c) 2013-2023 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved. <br>
16   * BSD-style license. See <a href="https://djunits.org/docs/license.html">DJUNITS License</a>.
17   * </p>
18   * @author <a href="https://www.tudelft.nl/averbraeck">Alexander Verbraeck</a>
19   * @author <a href="https://www.tudelft.nl/staff/p.knoppers/">Peter Knoppers</a>
20   */
21  @Generated(value = "org.djunits.generator.GenerateDJUNIT", date = "2023-04-30T13:59:27.633664900Z")
22  public class LengthVector
23          extends AbstractDoubleVectorRelWithAbs<PositionUnit, Position, PositionVector, LengthUnit, Length, LengthVector>
24  {
25      /** */
26      private static final long serialVersionUID = 20190905L;
27  
28      /**
29       * Construct an LengthVector from an internal data object.
30       * @param data DoubleVectorData; the internal data object for the vector data
31       * @param displayUnit LengthUnit; the display unit of the vector data
32       */
33      public LengthVector(final DoubleVectorData data, final LengthUnit displayUnit)
34      {
35          super(data, displayUnit);
36      }
37  
38      /** {@inheritDoc} */
39      @Override
40      public Class<Length> getScalarClass()
41      {
42          return Length.class;
43      }
44  
45      /** {@inheritDoc} */
46      @Override
47      public LengthVector instantiateVector(final DoubleVectorData dvd, final LengthUnit displayUnit)
48      {
49          return new LengthVector(dvd, displayUnit);
50      }
51  
52      /** {@inheritDoc} */
53      @Override
54      public Length instantiateScalarSI(final double valueSI, final LengthUnit displayUnit)
55      {
56          Length result = Length.instantiateSI(valueSI);
57          result.setDisplayUnit(displayUnit);
58          return result;
59      }
60  
61      /** {@inheritDoc} */
62      @Override
63      public PositionVector instantiateVectorAbs(final DoubleVectorData dvd, final PositionUnit displayUnit)
64      {
65          return new PositionVector(dvd, displayUnit);
66      }
67  
68      /** {@inheritDoc} */
69      @Override
70      public Position instantiateScalarAbsSI(final double valueSI, final PositionUnit displayUnit)
71      {
72          Position result = Position.instantiateSI(valueSI);
73          result.setDisplayUnit(displayUnit);
74          return result;
75      }
76  
77  }