View Javadoc
1   package org.djunits.value.vfloat.matrix;
2   
3   import org.djunits.unit.AngleUnit;
4   import org.djunits.unit.DirectionUnit;
5   import org.djunits.value.vfloat.matrix.base.AbstractFloatMatrixAbs;
6   import org.djunits.value.vfloat.matrix.data.FloatMatrixData;
7   import org.djunits.value.vfloat.scalar.FloatAngle;
8   import org.djunits.value.vfloat.scalar.FloatDirection;
9   import org.djunits.value.vfloat.vector.FloatAngleVector;
10  import org.djunits.value.vfloat.vector.FloatDirectionVector;
11  import org.djunits.value.vfloat.vector.data.FloatVectorData;
12  
13  import jakarta.annotation.Generated;
14  
15  /**
16   * Immutable FloatDirection Matrix.
17   * <p>
18   * Copyright (c) 2013-2023 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved. <br>
19   * BSD-style license. See <a href="https://djunits.org/docs/license.html">DJUNITS License</a>.
20   * </p>
21   * @author <a href="https://www.tudelft.nl/averbraeck">Alexander Verbraeck</a>
22   * @author <a href="https://www.tudelft.nl/staff/p.knoppers/">Peter Knoppers</a>
23   */
24  @Generated(value = "org.djunits.generator.GenerateDJUNIT", date = "2023-04-30T13:59:27.633664900Z")
25  public class FloatDirectionMatrix extends AbstractFloatMatrixAbs<DirectionUnit, FloatDirection, FloatDirectionVector,
26          FloatDirectionMatrix, AngleUnit, FloatAngle, FloatAngleVector, FloatAngleMatrix>
27  {
28      /** */
29      private static final long serialVersionUID = 20151006L;
30  
31      /**
32       * @param data FloatMatrixData; an internal data object
33       * @param unit DirectionUnit; the unit
34       */
35      public FloatDirectionMatrix(final FloatMatrixData data, final DirectionUnit unit)
36      {
37          super(data, unit);
38      }
39  
40      /** {@inheritDoc} */
41      @Override
42      public Class<FloatDirection> getScalarClass()
43      {
44          return FloatDirection.class;
45      }
46  
47      /** {@inheritDoc} */
48      @Override
49      public Class<FloatDirectionVector> getVectorClass()
50      {
51          return FloatDirectionVector.class;
52      }
53  
54      /** {@inheritDoc} */
55      @Override
56      public FloatDirectionMatrix instantiateMatrix(final FloatMatrixData fmd, final DirectionUnit displayUnit)
57      {
58          return new FloatDirectionMatrix(fmd, displayUnit);
59      }
60  
61      /** {@inheritDoc} */
62      @Override
63      public FloatDirectionVector instantiateVector(final FloatVectorData fvd, final DirectionUnit displayUnit)
64      {
65          return new FloatDirectionVector(fvd, displayUnit);
66      }
67  
68      /** {@inheritDoc} */
69      @Override
70      public FloatDirection instantiateScalarSI(final float valueSI, final DirectionUnit displayUnit)
71      {
72          FloatDirection result = FloatDirection.instantiateSI(valueSI);
73          result.setDisplayUnit(displayUnit);
74          return result;
75      }
76  
77      /** {@inheritDoc} */
78      @Override
79      public FloatAngleMatrix instantiateMatrixRel(final FloatMatrixData fmd, final AngleUnit displayUnit)
80      {
81          return new FloatAngleMatrix(fmd, displayUnit);
82      }
83  
84      /** {@inheritDoc} */
85      @Override
86      public FloatAngleVector instantiateVectorRel(final FloatVectorData fvd, final AngleUnit displayUnit)
87      {
88          return new FloatAngleVector(fvd, displayUnit);
89      }
90  
91      /** {@inheritDoc} */
92      @Override
93      public FloatAngle instantiateScalarRelSI(final float valueSI, final AngleUnit displayUnit)
94      {
95          FloatAngle result = FloatAngle.instantiateSI(valueSI);
96          result.setDisplayUnit(displayUnit);
97          return result;
98      }
99  
100 }