@bitbybit-dev/base 0.20.1 → 0.20.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -1
- package/lib/api/inputs/base-inputs.d.ts +8 -0
- package/lib/api/inputs/index.d.ts +3 -0
- package/lib/api/inputs/index.js +3 -0
- package/lib/api/inputs/inputs.d.ts +3 -0
- package/lib/api/inputs/inputs.js +3 -0
- package/lib/api/inputs/line-inputs.d.ts +240 -0
- package/lib/api/inputs/line-inputs.js +247 -0
- package/lib/api/inputs/mesh-inputs.d.ts +82 -0
- package/lib/api/inputs/mesh-inputs.js +83 -0
- package/lib/api/inputs/point-inputs.d.ts +153 -0
- package/lib/api/inputs/point-inputs.js +188 -0
- package/lib/api/inputs/polyline-inputs.d.ts +206 -0
- package/lib/api/inputs/polyline-inputs.js +229 -0
- package/lib/api/inputs/text-inputs.d.ts +1 -1
- package/lib/api/inputs/transforms-inputs.d.ts +18 -0
- package/lib/api/inputs/transforms-inputs.js +29 -0
- package/lib/api/inputs/vector-inputs.d.ts +8 -0
- package/lib/api/inputs/vector-inputs.js +8 -0
- package/lib/api/models/index.d.ts +1 -0
- package/lib/api/models/index.js +1 -0
- package/lib/api/models/point/bucket.d.ts +1 -0
- package/lib/api/models/point/bucket.js +1 -0
- package/lib/api/models/point/hex-grid-data.d.ts +8 -0
- package/lib/api/models/point/hex-grid-data.js +2 -0
- package/lib/api/models/point/index.d.ts +1 -0
- package/lib/api/models/point/index.js +1 -0
- package/lib/api/services/dates.js +45 -15
- package/lib/api/services/index.d.ts +3 -0
- package/lib/api/services/index.js +3 -0
- package/lib/api/services/line.d.ts +149 -0
- package/lib/api/services/line.js +320 -0
- package/lib/api/services/lists.d.ts +1 -1
- package/lib/api/services/lists.js +1 -2
- package/lib/api/services/mesh.d.ts +66 -0
- package/lib/api/services/mesh.js +235 -0
- package/lib/api/services/point.d.ts +96 -1
- package/lib/api/services/point.js +540 -1
- package/lib/api/services/polyline.d.ts +149 -0
- package/lib/api/services/polyline.js +444 -0
- package/lib/api/services/transforms.d.ts +26 -1
- package/lib/api/services/transforms.js +66 -3
- package/lib/api/services/vector.d.ts +18 -0
- package/lib/api/services/vector.js +27 -0
- package/lib/api/unit-test-helper.d.ts +20 -0
- package/lib/api/unit-test-helper.js +130 -0
- package/package.json +2 -2
|
@@ -0,0 +1,229 @@
|
|
|
1
|
+
export var Polyline;
|
|
2
|
+
(function (Polyline) {
|
|
3
|
+
class PolylineCreateDto {
|
|
4
|
+
/**
|
|
5
|
+
* Provide options without default values
|
|
6
|
+
*/
|
|
7
|
+
constructor(points, isClosed) {
|
|
8
|
+
/**
|
|
9
|
+
* Can contain is closed information
|
|
10
|
+
* @default false
|
|
11
|
+
*/
|
|
12
|
+
this.isClosed = false;
|
|
13
|
+
if (points !== undefined) {
|
|
14
|
+
this.points = points;
|
|
15
|
+
}
|
|
16
|
+
if (isClosed !== undefined) {
|
|
17
|
+
this.isClosed = isClosed;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
Polyline.PolylineCreateDto = PolylineCreateDto;
|
|
22
|
+
class PolylinePropertiesDto {
|
|
23
|
+
/**
|
|
24
|
+
* Provide options without default values
|
|
25
|
+
*/
|
|
26
|
+
constructor(points, isClosed) {
|
|
27
|
+
/**
|
|
28
|
+
* Can contain is closed information
|
|
29
|
+
* @default false
|
|
30
|
+
*/
|
|
31
|
+
this.isClosed = false;
|
|
32
|
+
if (points !== undefined) {
|
|
33
|
+
this.points = points;
|
|
34
|
+
}
|
|
35
|
+
if (isClosed !== undefined) {
|
|
36
|
+
this.isClosed = isClosed;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
Polyline.PolylinePropertiesDto = PolylinePropertiesDto;
|
|
41
|
+
class PolylineDto {
|
|
42
|
+
constructor(polyline) {
|
|
43
|
+
if (polyline !== undefined) {
|
|
44
|
+
this.polyline = polyline;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
Polyline.PolylineDto = PolylineDto;
|
|
49
|
+
class PolylinesDto {
|
|
50
|
+
constructor(polylines) {
|
|
51
|
+
if (polylines !== undefined) {
|
|
52
|
+
this.polylines = polylines;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
Polyline.PolylinesDto = PolylinesDto;
|
|
57
|
+
class TransformPolylineDto {
|
|
58
|
+
constructor(polyline, transformation) {
|
|
59
|
+
if (polyline !== undefined) {
|
|
60
|
+
this.polyline = polyline;
|
|
61
|
+
}
|
|
62
|
+
if (transformation !== undefined) {
|
|
63
|
+
this.transformation = transformation;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
Polyline.TransformPolylineDto = TransformPolylineDto;
|
|
68
|
+
class DrawPolylineDto {
|
|
69
|
+
/**
|
|
70
|
+
* Provide options without default values
|
|
71
|
+
*/
|
|
72
|
+
constructor(polyline, opacity, colours, size, updatable, polylineMesh) {
|
|
73
|
+
/**
|
|
74
|
+
* Value between 0 and 1
|
|
75
|
+
* @default 1
|
|
76
|
+
* @minimum 0
|
|
77
|
+
* @maximum 1
|
|
78
|
+
* @step 0.1
|
|
79
|
+
*/
|
|
80
|
+
this.opacity = 1;
|
|
81
|
+
/**
|
|
82
|
+
* Hex colour string
|
|
83
|
+
* @default #444444
|
|
84
|
+
*/
|
|
85
|
+
this.colours = "#444444";
|
|
86
|
+
/**
|
|
87
|
+
* Width of the polyline
|
|
88
|
+
* @default 3
|
|
89
|
+
* @minimum 0
|
|
90
|
+
* @maximum Infinity
|
|
91
|
+
* @step 0.1
|
|
92
|
+
*/
|
|
93
|
+
this.size = 3;
|
|
94
|
+
/**
|
|
95
|
+
* Indicates wether the position of this polyline will change in time
|
|
96
|
+
* @default false
|
|
97
|
+
*/
|
|
98
|
+
this.updatable = false;
|
|
99
|
+
if (polyline !== undefined) {
|
|
100
|
+
this.polyline = polyline;
|
|
101
|
+
}
|
|
102
|
+
if (opacity !== undefined) {
|
|
103
|
+
this.opacity = opacity;
|
|
104
|
+
}
|
|
105
|
+
if (colours !== undefined) {
|
|
106
|
+
this.colours = colours;
|
|
107
|
+
}
|
|
108
|
+
if (size !== undefined) {
|
|
109
|
+
this.size = size;
|
|
110
|
+
}
|
|
111
|
+
if (updatable !== undefined) {
|
|
112
|
+
this.updatable = updatable;
|
|
113
|
+
}
|
|
114
|
+
if (polylineMesh !== undefined) {
|
|
115
|
+
this.polylineMesh = polylineMesh;
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
Polyline.DrawPolylineDto = DrawPolylineDto;
|
|
120
|
+
class DrawPolylinesDto {
|
|
121
|
+
/**
|
|
122
|
+
* Provide options without default values
|
|
123
|
+
*/
|
|
124
|
+
constructor(polylines, opacity, colours, size, updatable, polylinesMesh) {
|
|
125
|
+
/**
|
|
126
|
+
* Value between 0 and 1
|
|
127
|
+
* @default 1
|
|
128
|
+
* @minimum 0
|
|
129
|
+
* @maximum 1
|
|
130
|
+
* @step 0.1
|
|
131
|
+
*/
|
|
132
|
+
this.opacity = 1;
|
|
133
|
+
/**
|
|
134
|
+
* Hex colour string
|
|
135
|
+
* @default #444444
|
|
136
|
+
*/
|
|
137
|
+
this.colours = "#444444";
|
|
138
|
+
/**
|
|
139
|
+
* Width of the polyline
|
|
140
|
+
* @default 3
|
|
141
|
+
* @minimum 0
|
|
142
|
+
* @maximum Infinity
|
|
143
|
+
* @step 0.1
|
|
144
|
+
*/
|
|
145
|
+
this.size = 3;
|
|
146
|
+
/**
|
|
147
|
+
* Indicates wether the position of this polyline will change in time
|
|
148
|
+
* @default false
|
|
149
|
+
*/
|
|
150
|
+
this.updatable = false;
|
|
151
|
+
if (polylines !== undefined) {
|
|
152
|
+
this.polylines = polylines;
|
|
153
|
+
}
|
|
154
|
+
if (opacity !== undefined) {
|
|
155
|
+
this.opacity = opacity;
|
|
156
|
+
}
|
|
157
|
+
if (colours !== undefined) {
|
|
158
|
+
this.colours = colours;
|
|
159
|
+
}
|
|
160
|
+
if (size !== undefined) {
|
|
161
|
+
this.size = size;
|
|
162
|
+
}
|
|
163
|
+
if (updatable !== undefined) {
|
|
164
|
+
this.updatable = updatable;
|
|
165
|
+
}
|
|
166
|
+
if (polylinesMesh !== undefined) {
|
|
167
|
+
this.polylinesMesh = polylinesMesh;
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
Polyline.DrawPolylinesDto = DrawPolylinesDto;
|
|
172
|
+
class SegmentsToleranceDto {
|
|
173
|
+
constructor(segments) {
|
|
174
|
+
/**
|
|
175
|
+
* Tolerance for the calculation
|
|
176
|
+
* @default 1e-5
|
|
177
|
+
* @minimum -Infinity
|
|
178
|
+
* @maximum Infinity
|
|
179
|
+
* @step 1e-5
|
|
180
|
+
*/
|
|
181
|
+
this.tolerance = 1e-5;
|
|
182
|
+
if (segments !== undefined) {
|
|
183
|
+
this.segments = segments;
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
Polyline.SegmentsToleranceDto = SegmentsToleranceDto;
|
|
188
|
+
class PolylineToleranceDto {
|
|
189
|
+
constructor(polyline, tolerance) {
|
|
190
|
+
/**
|
|
191
|
+
* Tolerance for the calculation
|
|
192
|
+
* @default 1e-5
|
|
193
|
+
* @minimum -Infinity
|
|
194
|
+
* @maximum Infinity
|
|
195
|
+
* @step 1e-5
|
|
196
|
+
*/
|
|
197
|
+
this.tolerance = 1e-5;
|
|
198
|
+
if (polyline !== undefined) {
|
|
199
|
+
this.polyline = polyline;
|
|
200
|
+
}
|
|
201
|
+
if (tolerance !== undefined) {
|
|
202
|
+
this.tolerance = tolerance;
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
Polyline.PolylineToleranceDto = PolylineToleranceDto;
|
|
207
|
+
class TwoPolylinesToleranceDto {
|
|
208
|
+
constructor(polyline1, polyline2, tolerance) {
|
|
209
|
+
/**
|
|
210
|
+
* Tolerance for the calculation
|
|
211
|
+
* @default 1e-5
|
|
212
|
+
* @minimum -Infinity
|
|
213
|
+
* @maximum Infinity
|
|
214
|
+
* @step 1e-5
|
|
215
|
+
*/
|
|
216
|
+
this.tolerance = 1e-5;
|
|
217
|
+
if (polyline1 !== undefined) {
|
|
218
|
+
this.polyline1 = polyline1;
|
|
219
|
+
}
|
|
220
|
+
if (polyline2 !== undefined) {
|
|
221
|
+
this.polyline2 = polyline2;
|
|
222
|
+
}
|
|
223
|
+
if (tolerance !== undefined) {
|
|
224
|
+
this.tolerance = tolerance;
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
Polyline.TwoPolylinesToleranceDto = TwoPolylinesToleranceDto;
|
|
229
|
+
})(Polyline || (Polyline = {}));
|
|
@@ -77,6 +77,24 @@ export declare namespace Transforms {
|
|
|
77
77
|
*/
|
|
78
78
|
scaleXyz: Base.Vector3;
|
|
79
79
|
}
|
|
80
|
+
class StretchDirCenterDto {
|
|
81
|
+
constructor(scale?: number, center?: Base.Point3, direction?: Base.Vector3);
|
|
82
|
+
/** The center point around which to stretch.
|
|
83
|
+
* @default [0, 0, 0]
|
|
84
|
+
*/
|
|
85
|
+
center?: Base.Point3;
|
|
86
|
+
/** The direction vector along which to stretch. Does not need to be normalized initially.
|
|
87
|
+
* @default [0, 0, 1]
|
|
88
|
+
*/
|
|
89
|
+
direction?: Base.Vector3;
|
|
90
|
+
/** The scale factor to apply along the direction vector. 1.0 means no change.
|
|
91
|
+
* @default 2
|
|
92
|
+
* @minimum -Infinity
|
|
93
|
+
* @maximum Infinity
|
|
94
|
+
* @step 0.1
|
|
95
|
+
*/
|
|
96
|
+
scale?: number;
|
|
97
|
+
}
|
|
80
98
|
class ScaleCenterXYZDto {
|
|
81
99
|
constructor(center?: Base.Point3, scaleXyz?: Base.Vector3);
|
|
82
100
|
/**
|
|
@@ -115,6 +115,35 @@ export var Transforms;
|
|
|
115
115
|
}
|
|
116
116
|
}
|
|
117
117
|
Transforms.ScaleXYZDto = ScaleXYZDto;
|
|
118
|
+
class StretchDirCenterDto {
|
|
119
|
+
constructor(scale, center, direction) {
|
|
120
|
+
/** The center point around which to stretch.
|
|
121
|
+
* @default [0, 0, 0]
|
|
122
|
+
*/
|
|
123
|
+
this.center = [0, 0, 0];
|
|
124
|
+
/** The direction vector along which to stretch. Does not need to be normalized initially.
|
|
125
|
+
* @default [0, 0, 1]
|
|
126
|
+
*/
|
|
127
|
+
this.direction = [0, 0, 1];
|
|
128
|
+
/** The scale factor to apply along the direction vector. 1.0 means no change.
|
|
129
|
+
* @default 2
|
|
130
|
+
* @minimum -Infinity
|
|
131
|
+
* @maximum Infinity
|
|
132
|
+
* @step 0.1
|
|
133
|
+
*/
|
|
134
|
+
this.scale = 2;
|
|
135
|
+
if (scale !== undefined) {
|
|
136
|
+
this.scale = scale;
|
|
137
|
+
}
|
|
138
|
+
if (center !== undefined) {
|
|
139
|
+
this.center = center;
|
|
140
|
+
}
|
|
141
|
+
if (direction !== undefined) {
|
|
142
|
+
this.direction = direction;
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
Transforms.StretchDirCenterDto = StretchDirCenterDto;
|
|
118
147
|
class ScaleCenterXYZDto {
|
|
119
148
|
constructor(center, scaleXyz) {
|
|
120
149
|
/**
|
|
@@ -85,6 +85,14 @@ export declare namespace Vector {
|
|
|
85
85
|
*/
|
|
86
86
|
vector: number[];
|
|
87
87
|
}
|
|
88
|
+
class Vector3Dto {
|
|
89
|
+
constructor(vector?: Base.Vector3);
|
|
90
|
+
/**
|
|
91
|
+
* Vector array of 3 numbers
|
|
92
|
+
* @default undefined
|
|
93
|
+
*/
|
|
94
|
+
vector: Base.Vector3;
|
|
95
|
+
}
|
|
88
96
|
class RangeMaxDto {
|
|
89
97
|
constructor(max?: number);
|
|
90
98
|
/**
|
|
@@ -93,6 +93,14 @@ export var Vector;
|
|
|
93
93
|
}
|
|
94
94
|
}
|
|
95
95
|
Vector.VectorDto = VectorDto;
|
|
96
|
+
class Vector3Dto {
|
|
97
|
+
constructor(vector) {
|
|
98
|
+
if (vector !== undefined) {
|
|
99
|
+
this.vector = vector;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
Vector.Vector3Dto = Vector3Dto;
|
|
96
104
|
class RangeMaxDto {
|
|
97
105
|
constructor(max) {
|
|
98
106
|
if (max !== undefined) {
|
package/lib/api/models/index.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./hex-grid-data";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./hex-grid-data";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * as Point from "./bucket";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * as Point from "./bucket";
|
|
@@ -291,7 +291,9 @@ export class Dates {
|
|
|
291
291
|
* @drawable false
|
|
292
292
|
* */
|
|
293
293
|
setYear(inputs) {
|
|
294
|
-
|
|
294
|
+
const dateCopy = new Date(inputs.date.getTime());
|
|
295
|
+
dateCopy.setFullYear(inputs.year);
|
|
296
|
+
return dateCopy;
|
|
295
297
|
}
|
|
296
298
|
/**
|
|
297
299
|
* Sets the month value in the Date object using local time.
|
|
@@ -302,7 +304,9 @@ export class Dates {
|
|
|
302
304
|
* @drawable false
|
|
303
305
|
* */
|
|
304
306
|
setMonth(inputs) {
|
|
305
|
-
|
|
307
|
+
const dateCopy = new Date(inputs.date.getTime());
|
|
308
|
+
dateCopy.setMonth(inputs.month);
|
|
309
|
+
return dateCopy;
|
|
306
310
|
}
|
|
307
311
|
/**
|
|
308
312
|
* Sets the numeric day-of-the-month value of the Date object using local time.
|
|
@@ -313,7 +317,9 @@ export class Dates {
|
|
|
313
317
|
* @drawable false
|
|
314
318
|
*/
|
|
315
319
|
setDayOfMonth(inputs) {
|
|
316
|
-
|
|
320
|
+
const dateCopy = new Date(inputs.date.getTime());
|
|
321
|
+
dateCopy.setDate(inputs.day);
|
|
322
|
+
return dateCopy;
|
|
317
323
|
}
|
|
318
324
|
/**
|
|
319
325
|
* Sets the hour value in the Date object using local time.
|
|
@@ -324,7 +330,9 @@ export class Dates {
|
|
|
324
330
|
* @drawable false
|
|
325
331
|
* */
|
|
326
332
|
setHours(inputs) {
|
|
327
|
-
|
|
333
|
+
const dateCopy = new Date(inputs.date.getTime());
|
|
334
|
+
dateCopy.setHours(inputs.hours);
|
|
335
|
+
return dateCopy;
|
|
328
336
|
}
|
|
329
337
|
/**
|
|
330
338
|
* Sets the minutes value in the Date object using local time.
|
|
@@ -335,7 +343,9 @@ export class Dates {
|
|
|
335
343
|
* @drawable false
|
|
336
344
|
* */
|
|
337
345
|
setMinutes(inputs) {
|
|
338
|
-
|
|
346
|
+
const dateCopy = new Date(inputs.date.getTime());
|
|
347
|
+
dateCopy.setMinutes(inputs.minutes);
|
|
348
|
+
return dateCopy;
|
|
339
349
|
}
|
|
340
350
|
/**
|
|
341
351
|
* Sets the seconds value in the Date object using local time.
|
|
@@ -346,7 +356,9 @@ export class Dates {
|
|
|
346
356
|
* @drawable false
|
|
347
357
|
*/
|
|
348
358
|
setSeconds(inputs) {
|
|
349
|
-
|
|
359
|
+
const dateCopy = new Date(inputs.date.getTime());
|
|
360
|
+
dateCopy.setSeconds(inputs.seconds);
|
|
361
|
+
return dateCopy;
|
|
350
362
|
}
|
|
351
363
|
/**
|
|
352
364
|
* Sets the milliseconds value in the Date object using local time.
|
|
@@ -357,7 +369,9 @@ export class Dates {
|
|
|
357
369
|
* @drawable false
|
|
358
370
|
*/
|
|
359
371
|
setMilliseconds(inputs) {
|
|
360
|
-
|
|
372
|
+
const dateCopy = new Date(inputs.date.getTime());
|
|
373
|
+
dateCopy.setMilliseconds(inputs.milliseconds);
|
|
374
|
+
return dateCopy;
|
|
361
375
|
}
|
|
362
376
|
/**
|
|
363
377
|
* Sets the date and time value in the Date object.
|
|
@@ -368,7 +382,9 @@ export class Dates {
|
|
|
368
382
|
* @drawable false
|
|
369
383
|
*/
|
|
370
384
|
setTime(inputs) {
|
|
371
|
-
|
|
385
|
+
const dateCopy = new Date(inputs.date.getTime());
|
|
386
|
+
dateCopy.setTime(inputs.time);
|
|
387
|
+
return dateCopy;
|
|
372
388
|
}
|
|
373
389
|
/**
|
|
374
390
|
* Sets the year value in the Date object using Universal Coordinated Time (UTC).
|
|
@@ -379,7 +395,9 @@ export class Dates {
|
|
|
379
395
|
* @drawable false
|
|
380
396
|
* */
|
|
381
397
|
setUTCYear(inputs) {
|
|
382
|
-
|
|
398
|
+
const dateCopy = new Date(inputs.date.getTime());
|
|
399
|
+
dateCopy.setUTCFullYear(inputs.year);
|
|
400
|
+
return dateCopy;
|
|
383
401
|
}
|
|
384
402
|
/**
|
|
385
403
|
* Sets the month value in the Date object using Universal Coordinated Time (UTC).
|
|
@@ -390,7 +408,9 @@ export class Dates {
|
|
|
390
408
|
* @drawable false
|
|
391
409
|
* */
|
|
392
410
|
setUTCMonth(inputs) {
|
|
393
|
-
|
|
411
|
+
const dateCopy = new Date(inputs.date.getTime());
|
|
412
|
+
dateCopy.setUTCMonth(inputs.month);
|
|
413
|
+
return dateCopy;
|
|
394
414
|
}
|
|
395
415
|
/**
|
|
396
416
|
* Sets the numeric day of the month in the Date object using Universal Coordinated Time (UTC).
|
|
@@ -401,7 +421,9 @@ export class Dates {
|
|
|
401
421
|
* @drawable false
|
|
402
422
|
*/
|
|
403
423
|
setUTCDay(inputs) {
|
|
404
|
-
|
|
424
|
+
const dateCopy = new Date(inputs.date.getTime());
|
|
425
|
+
dateCopy.setUTCDate(inputs.day);
|
|
426
|
+
return dateCopy;
|
|
405
427
|
}
|
|
406
428
|
/**
|
|
407
429
|
* Sets the hours value in the Date object using Universal Coordinated Time (UTC).
|
|
@@ -412,7 +434,9 @@ export class Dates {
|
|
|
412
434
|
* @drawable false
|
|
413
435
|
* */
|
|
414
436
|
setUTCHours(inputs) {
|
|
415
|
-
|
|
437
|
+
const dateCopy = new Date(inputs.date.getTime());
|
|
438
|
+
dateCopy.setUTCHours(inputs.hours);
|
|
439
|
+
return dateCopy;
|
|
416
440
|
}
|
|
417
441
|
/**
|
|
418
442
|
* Sets the minutes value in the Date object using Universal Coordinated Time (UTC).
|
|
@@ -423,7 +447,9 @@ export class Dates {
|
|
|
423
447
|
* @drawable false
|
|
424
448
|
* */
|
|
425
449
|
setUTCMinutes(inputs) {
|
|
426
|
-
|
|
450
|
+
const dateCopy = new Date(inputs.date.getTime());
|
|
451
|
+
dateCopy.setUTCMinutes(inputs.minutes);
|
|
452
|
+
return dateCopy;
|
|
427
453
|
}
|
|
428
454
|
/**
|
|
429
455
|
* Sets the seconds value in the Date object using Universal Coordinated Time (UTC).
|
|
@@ -434,7 +460,9 @@ export class Dates {
|
|
|
434
460
|
* @drawable false
|
|
435
461
|
*/
|
|
436
462
|
setUTCSeconds(inputs) {
|
|
437
|
-
|
|
463
|
+
const dateCopy = new Date(inputs.date.getTime());
|
|
464
|
+
dateCopy.setUTCSeconds(inputs.seconds);
|
|
465
|
+
return dateCopy;
|
|
438
466
|
}
|
|
439
467
|
/**
|
|
440
468
|
* Sets the milliseconds value in the Date object using Universal Coordinated Time (UTC).
|
|
@@ -445,6 +473,8 @@ export class Dates {
|
|
|
445
473
|
* @drawable false
|
|
446
474
|
*/
|
|
447
475
|
setUTCMilliseconds(inputs) {
|
|
448
|
-
|
|
476
|
+
const dateCopy = new Date(inputs.date.getTime());
|
|
477
|
+
dateCopy.setUTCMilliseconds(inputs.milliseconds);
|
|
478
|
+
return dateCopy;
|
|
449
479
|
}
|
|
450
480
|
}
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
import { GeometryHelper } from "./geometry-helper";
|
|
2
|
+
import * as Inputs from "../inputs";
|
|
3
|
+
import { Point } from "./point";
|
|
4
|
+
import { Vector } from "./vector";
|
|
5
|
+
/**
|
|
6
|
+
* Contains various methods for lines and segments. Line in bitbybit is a simple object that has start and end point properties.
|
|
7
|
+
* { start: [ x, y, z ], end: [ x, y, z ] }
|
|
8
|
+
*/
|
|
9
|
+
export declare class Line {
|
|
10
|
+
private readonly vector;
|
|
11
|
+
private readonly point;
|
|
12
|
+
private readonly geometryHelper;
|
|
13
|
+
constructor(vector: Vector, point: Point, geometryHelper: GeometryHelper);
|
|
14
|
+
/**
|
|
15
|
+
* Gets the start point of the line
|
|
16
|
+
* @param inputs a line
|
|
17
|
+
* @returns start point
|
|
18
|
+
* @group get
|
|
19
|
+
* @shortname line start point
|
|
20
|
+
* @drawable true
|
|
21
|
+
*/
|
|
22
|
+
getStartPoint(inputs: Inputs.Line.LineDto): Inputs.Base.Point3;
|
|
23
|
+
/**
|
|
24
|
+
* Gets the end point of the line
|
|
25
|
+
* @param inputs a line
|
|
26
|
+
* @returns end point
|
|
27
|
+
* @group get
|
|
28
|
+
* @shortname line end point
|
|
29
|
+
* @drawable true
|
|
30
|
+
*/
|
|
31
|
+
getEndPoint(inputs: Inputs.Line.LineDto): Inputs.Base.Point3;
|
|
32
|
+
/**
|
|
33
|
+
* Gets the length of the line
|
|
34
|
+
* @param inputs a line
|
|
35
|
+
* @returns line length
|
|
36
|
+
* @group get
|
|
37
|
+
* @shortname line length
|
|
38
|
+
* @drawable false
|
|
39
|
+
*/
|
|
40
|
+
length(inputs: Inputs.Line.LineDto): number;
|
|
41
|
+
/**
|
|
42
|
+
* Reverse the endpoints of the line
|
|
43
|
+
* @param inputs a line
|
|
44
|
+
* @returns reversed line
|
|
45
|
+
* @group operations
|
|
46
|
+
* @shortname reversed line
|
|
47
|
+
* @drawable true
|
|
48
|
+
*/
|
|
49
|
+
reverse(inputs: Inputs.Line.LineDto): Inputs.Base.Line3;
|
|
50
|
+
/**
|
|
51
|
+
* Transform the line
|
|
52
|
+
* @param inputs a line
|
|
53
|
+
* @returns transformed line
|
|
54
|
+
* @group transforms
|
|
55
|
+
* @shortname transform line
|
|
56
|
+
* @drawable true
|
|
57
|
+
*/
|
|
58
|
+
transformLine(inputs: Inputs.Line.TransformLineDto): Inputs.Base.Line3;
|
|
59
|
+
/**
|
|
60
|
+
* Transforms the lines with multiple transform for each line
|
|
61
|
+
* @param inputs lines
|
|
62
|
+
* @returns transformed lines
|
|
63
|
+
* @group transforms
|
|
64
|
+
* @shortname transform lines
|
|
65
|
+
* @drawable true
|
|
66
|
+
*/
|
|
67
|
+
transformsForLines(inputs: Inputs.Line.TransformsLinesDto): Inputs.Base.Line3[];
|
|
68
|
+
/**
|
|
69
|
+
* Create the line
|
|
70
|
+
* @param inputs start and end points of the line
|
|
71
|
+
* @returns line
|
|
72
|
+
* @group create
|
|
73
|
+
* @shortname line
|
|
74
|
+
* @drawable true
|
|
75
|
+
*/
|
|
76
|
+
create(inputs: Inputs.Line.LinePointsDto): Inputs.Base.Line3;
|
|
77
|
+
/**
|
|
78
|
+
* Gets the point on the line segment at a given param
|
|
79
|
+
* @param inputs line
|
|
80
|
+
* @returns point on line
|
|
81
|
+
* @group get
|
|
82
|
+
* @shortname point on line
|
|
83
|
+
* @drawable true
|
|
84
|
+
*/
|
|
85
|
+
getPointOnLine(inputs: Inputs.Line.PointOnLineDto): Inputs.Base.Point3;
|
|
86
|
+
/**
|
|
87
|
+
* Create the lines segments between all of the points in a list
|
|
88
|
+
* @param inputs points
|
|
89
|
+
* @returns lines
|
|
90
|
+
* @group create
|
|
91
|
+
* @shortname lines between points
|
|
92
|
+
* @drawable true
|
|
93
|
+
*/
|
|
94
|
+
linesBetweenPoints(inputs: Inputs.Line.PointsLinesDto): Inputs.Base.Line3[];
|
|
95
|
+
/**
|
|
96
|
+
* Create the lines between start and end points
|
|
97
|
+
* @param inputs start points and end points
|
|
98
|
+
* @returns lines
|
|
99
|
+
* @group create
|
|
100
|
+
* @shortname start and end points to lines
|
|
101
|
+
* @drawable true
|
|
102
|
+
*/
|
|
103
|
+
linesBetweenStartAndEndPoints(inputs: Inputs.Line.LineStartEndPointsDto): Inputs.Base.Line3[];
|
|
104
|
+
/**
|
|
105
|
+
* Convert the line to segment
|
|
106
|
+
* @param inputs line
|
|
107
|
+
* @returns segment
|
|
108
|
+
* @group convert
|
|
109
|
+
* @shortname line to segment
|
|
110
|
+
* @drawable false
|
|
111
|
+
*/
|
|
112
|
+
lineToSegment(inputs: Inputs.Line.LineDto): Inputs.Base.Segment3;
|
|
113
|
+
/**
|
|
114
|
+
* Converts the lines to segments
|
|
115
|
+
* @param inputs lines
|
|
116
|
+
* @returns segments
|
|
117
|
+
* @group convert
|
|
118
|
+
* @shortname lines to segments
|
|
119
|
+
* @drawable false
|
|
120
|
+
*/
|
|
121
|
+
linesToSegments(inputs: Inputs.Line.LinesDto): Inputs.Base.Segment3[];
|
|
122
|
+
/**
|
|
123
|
+
* Converts the segment to line
|
|
124
|
+
* @param inputs segment
|
|
125
|
+
* @returns line
|
|
126
|
+
* @group convert
|
|
127
|
+
* @shortname segment to line
|
|
128
|
+
* @drawable true
|
|
129
|
+
*/
|
|
130
|
+
segmentToLine(inputs: Inputs.Line.SegmentDto): Inputs.Base.Line3;
|
|
131
|
+
/**
|
|
132
|
+
* Converts the segments to lines
|
|
133
|
+
* @param inputs segments
|
|
134
|
+
* @returns lines
|
|
135
|
+
* @group convert
|
|
136
|
+
* @shortname segments to lines
|
|
137
|
+
* @drawable true
|
|
138
|
+
*/
|
|
139
|
+
segmentsToLines(inputs: Inputs.Line.SegmentsDto): Inputs.Base.Line3[];
|
|
140
|
+
/**
|
|
141
|
+
* If two lines intersect return the intersection point
|
|
142
|
+
* @param inputs line1 and line2
|
|
143
|
+
* @returns intersection point or undefined if no intersection
|
|
144
|
+
* @group intersection
|
|
145
|
+
* @shortname line-line int
|
|
146
|
+
* @drawable true
|
|
147
|
+
*/
|
|
148
|
+
lineLineIntersection(inputs: Inputs.Line.LineLineIntersectionDto): Inputs.Base.Point3 | undefined;
|
|
149
|
+
}
|