1 package org.djunits.demo.examples;
2
3 import java.util.SortedMap;
4 import java.util.TreeMap;
5
6 import org.djunits.unit.SpeedUnit;
7 import org.djunits.unit.TimeUnit;
8 import org.djunits.value.StorageType;
9 import org.djunits.value.ValueException;
10 import org.djunits.value.vdouble.scalar.Speed;
11 import org.djunits.value.vdouble.scalar.Time;
12 import org.djunits.value.vdouble.vector.SpeedVector;
13 import org.djunits.value.vdouble.vector.TimeVector;
14 import org.djunits.value.vfloat.scalar.FloatSpeed;
15 import org.djunits.value.vfloat.scalar.FloatTime;
16 import org.djunits.value.vfloat.vector.FloatSpeedVector;
17 import org.djunits.value.vfloat.vector.FloatTimeVector;
18
19
20
21
22
23
24
25
26
27
28
29
30 public final class VectorToArrayExample
31 {
32
33 private VectorToArrayExample()
34 {
35
36 }
37
38
39
40
41
42 public static void main(final String[] args) throws ValueException
43 {
44 showDoubleToArray();
45 showFloatToArray();
46 }
47
48
49
50
51
52 private static void showDoubleToArray() throws ValueException
53 {
54 Speed s1 = new Speed(10.0, SpeedUnit.METER_PER_SECOND);
55 Speed s2 = new Speed(12.0, SpeedUnit.METER_PER_SECOND);
56 Speed s3 = new Speed(8.0, SpeedUnit.METER_PER_SECOND);
57 Speed s4 = new Speed(16.0, SpeedUnit.METER_PER_SECOND);
58 SpeedVector svd = new SpeedVector(new Speed[] { s1, s2, s3, s4 }, StorageType.DENSE);
59 Speed[] svdArray = svd.toArray();
60 System.out.println("Speed vector (Double, Rel, Dense): " + svdArray + " of length " + svdArray.length);
61 for (Speed s : svdArray)
62 {
63 System.out.println(s);
64 }
65
66 SortedMap<Integer, Speed> svsMap = new TreeMap<>();
67 svsMap.put(1, s1);
68 svsMap.put(3, s2);
69 svsMap.put(5, s3);
70 svsMap.put(7, s4);
71 SpeedVector svs = new SpeedVector(svsMap, 10, StorageType.SPARSE);
72 Speed[] svsArray = svs.toArray();
73 System.out.println("\nSpeed vector (Double, Rel, Sparse): " + svsArray + " of length " + svsArray.length);
74 for (Speed s : svsArray)
75 {
76 System.out.println(s);
77 }
78
79 Time t1 = new Time(10.0, TimeUnit.BASE_SECOND);
80 Time t2 = new Time(12.0, TimeUnit.BASE_SECOND);
81 Time t3 = new Time(8.0, TimeUnit.BASE_SECOND);
82 Time t4 = new Time(16.0, TimeUnit.BASE_SECOND);
83 TimeVector tvd = new TimeVector(new Time[] { t1, t2, t3, t4 }, StorageType.DENSE);
84 Time[] tvdArray = tvd.toArray();
85 System.out.println("Time vector (Double, Abs, Dense): " + tvdArray + " of length " + tvdArray.length);
86 for (Time t : tvdArray)
87 {
88 System.out.println(t);
89 }
90
91 SortedMap<Integer, Time> tvsMap = new TreeMap<>();
92 tvsMap.put(1, t1);
93 tvsMap.put(3, t2);
94 tvsMap.put(5, t3);
95 tvsMap.put(7, t4);
96 TimeVector tvs = new TimeVector(tvsMap, 10, StorageType.SPARSE);
97 Time[] tvsArray = tvs.toArray();
98 System.out.println("Time vector (Double, Abs, Sparse): " + tvsArray + " of length " + tvsArray.length);
99 for (Time t : tvsArray)
100 {
101 System.out.println(t);
102 }
103 }
104
105
106
107
108
109 private static void showFloatToArray() throws ValueException
110 {
111 FloatSpeed s1 = new FloatSpeed(10.0, SpeedUnit.METER_PER_SECOND);
112 FloatSpeed s2 = new FloatSpeed(12.0, SpeedUnit.METER_PER_SECOND);
113 FloatSpeed s3 = new FloatSpeed(8.0, SpeedUnit.METER_PER_SECOND);
114 FloatSpeed s4 = new FloatSpeed(16.0, SpeedUnit.METER_PER_SECOND);
115 FloatSpeedVector svd = new FloatSpeedVector(new FloatSpeed[] { s1, s2, s3, s4 }, StorageType.DENSE);
116 FloatSpeed[] svdArray = svd.toArray();
117 System.out.println("Speed vector (Float, Rel, Dense): " + svdArray + " of length " + svdArray.length);
118 for (FloatSpeed s : svdArray)
119 {
120 System.out.println(s);
121 }
122
123 SortedMap<Integer, FloatSpeed> svsMap = new TreeMap<>();
124 svsMap.put(1, s1);
125 svsMap.put(3, s2);
126 svsMap.put(5, s3);
127 svsMap.put(7, s4);
128 FloatSpeedVector svs = new FloatSpeedVector(svsMap, 10, StorageType.SPARSE);
129 FloatSpeed[] svsArray = svs.toArray();
130 System.out.println("\nSpeed vector (Float, Rel, Sparse): " + svsArray + " of length " + svsArray.length);
131 for (FloatSpeed s : svsArray)
132 {
133 System.out.println(s);
134 }
135
136 FloatTime t1 = new FloatTime(10.0f, TimeUnit.BASE_SECOND);
137 FloatTime t2 = new FloatTime(12.0f, TimeUnit.BASE_SECOND);
138 FloatTime t3 = new FloatTime(8.0f, TimeUnit.BASE_SECOND);
139 FloatTime t4 = new FloatTime(16.0f, TimeUnit.BASE_SECOND);
140 FloatTimeVector tvd = new FloatTimeVector(new FloatTime[] { t1, t2, t3, t4 }, StorageType.DENSE);
141 FloatTime[] tvdArray = tvd.toArray();
142 System.out.println("Time vector (Float, Abs, Dense): " + tvdArray + " of length " + tvdArray.length);
143 for (FloatTime t : tvdArray)
144 {
145 System.out.println(t);
146 }
147
148 SortedMap<Integer, FloatTime> tvsMap = new TreeMap<>();
149 tvsMap.put(1, t1);
150 tvsMap.put(3, t2);
151 tvsMap.put(5, t3);
152 tvsMap.put(7, t4);
153 FloatTimeVector tvs = new FloatTimeVector(tvsMap, 10, StorageType.SPARSE);
154 FloatTime[] tvsArray = tvs.toArray();
155 System.out.println("Time vector (Float, Abs, Sparse): " + tvsArray + " of length " + tvsArray.length);
156 for (FloatTime t : tvsArray)
157 {
158 System.out.println(t);
159 }
160
161 }
162
163 }