@woosh/meep-engine 2.122.3 → 2.122.5

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.
Files changed (69) hide show
  1. package/package.json +1 -1
  2. package/src/core/bvh2/bvh3/BVH.d.ts.map +1 -1
  3. package/src/core/bvh2/bvh3/BVH.js +19 -3
  4. package/src/core/bvh2/bvh3/ebvh_build_for_geometry_morton.d.ts.map +1 -1
  5. package/src/core/bvh2/bvh3/ebvh_build_for_geometry_morton.js +0 -1
  6. package/src/core/bvh2/bvh3/ebvh_build_hierarchy_radix.d.ts.map +1 -1
  7. package/src/core/bvh2/bvh3/ebvh_build_hierarchy_radix.js +12 -6
  8. package/src/core/bvh2/bvh3/ebvh_update_hierarchy_bounds.d.ts +8 -0
  9. package/src/core/bvh2/bvh3/ebvh_update_hierarchy_bounds.d.ts.map +1 -0
  10. package/src/core/bvh2/bvh3/ebvh_update_hierarchy_bounds.js +147 -0
  11. package/src/core/geom/2d/Rectangle.d.ts +8 -2
  12. package/src/core/geom/2d/Rectangle.d.ts.map +1 -1
  13. package/src/core/geom/ConicRay.d.ts +5 -1
  14. package/src/core/geom/ConicRay.d.ts.map +1 -1
  15. package/src/core/geom/Quaternion.d.ts +508 -100
  16. package/src/core/geom/Vector1.d.ts +177 -35
  17. package/src/core/geom/Vector2.d.ts +385 -60
  18. package/src/core/geom/Vector3.d.ts +569 -135
  19. package/src/core/graph/Edge.d.ts +0 -1
  20. package/src/core/graph/Edge.d.ts.map +1 -1
  21. package/src/core/graph/Edge.js +1 -1
  22. package/src/core/graph/v2/Graph.d.ts +24 -9
  23. package/src/core/graph/v2/Graph.d.ts.map +1 -1
  24. package/src/core/graph/v2/Graph.js +48 -10
  25. package/src/core/model/node-graph/visual/NodeVisualData.d.ts +8 -2
  26. package/src/core/model/node-graph/visual/NodeVisualData.d.ts.map +1 -1
  27. package/src/core/model/node-graph/visual/PortVisualData.d.ts +4 -1
  28. package/src/core/model/node-graph/visual/PortVisualData.d.ts.map +1 -1
  29. package/src/engine/ecs/animation/AnimationClip.d.ts +2 -2
  30. package/src/engine/ecs/components/Motion.d.ts +5 -1
  31. package/src/engine/ecs/components/Motion.d.ts.map +1 -1
  32. package/src/engine/ecs/fow/FogOfWarRevealer.d.ts +1 -1
  33. package/src/engine/ecs/gui/GUIElement.d.ts.map +1 -1
  34. package/src/engine/ecs/gui/hud/HeadsUpDisplay.d.ts +5 -1
  35. package/src/engine/ecs/gui/hud/HeadsUpDisplay.d.ts.map +1 -1
  36. package/src/engine/ecs/gui/position/ViewportPosition.d.ts +15 -6
  37. package/src/engine/ecs/gui/position/ViewportPosition.d.ts.map +1 -1
  38. package/src/engine/ecs/terrain/TerrainPreview.d.ts +8 -2
  39. package/src/engine/ecs/terrain/TerrainPreview.d.ts.map +1 -1
  40. package/src/engine/ecs/terrain/ecs/Terrain.d.ts.map +1 -1
  41. package/src/engine/ecs/terrain/ecs/layers/TerrainLayer.d.ts +4 -1
  42. package/src/engine/ecs/terrain/ecs/layers/TerrainLayer.d.ts.map +1 -1
  43. package/src/engine/ecs/terrain/ecs/layers/TerrainLayers.d.ts +4 -1
  44. package/src/engine/ecs/terrain/ecs/layers/TerrainLayers.d.ts.map +1 -1
  45. package/src/engine/ecs/terrain/ecs/splat/SplatMapping.d.ts +4 -1
  46. package/src/engine/ecs/terrain/ecs/splat/SplatMapping.d.ts.map +1 -1
  47. package/src/engine/ecs/transform/Transform.d.ts +16 -3
  48. package/src/engine/ecs/transform/Transform.d.ts.map +1 -1
  49. package/src/engine/ecs/transform-attachment/TransformAttachment.d.ts.map +1 -1
  50. package/src/engine/graphics/ecs/camera/topdown/TopDownCameraController.d.ts.map +1 -1
  51. package/src/engine/graphics/ecs/trail2d/Trail2D.d.ts +5 -1
  52. package/src/engine/graphics/ecs/trail2d/Trail2D.d.ts.map +1 -1
  53. package/src/engine/graphics/ecs/water/Water.d.ts +1 -1
  54. package/src/engine/graphics/particles/particular/engine/emitter/ParticleEmitter.d.ts.map +1 -1
  55. package/src/engine/graphics/particles/particular/engine/emitter/ParticleLayer.d.ts +15 -3
  56. package/src/engine/graphics/particles/particular/engine/emitter/ParticleLayer.d.ts.map +1 -1
  57. package/src/engine/grid/grid2transform/GridPosition2Transform.d.ts +4 -1
  58. package/src/engine/grid/grid2transform/GridPosition2Transform.d.ts.map +1 -1
  59. package/src/engine/grid/obstacle/GridObstacle.d.ts +4 -1
  60. package/src/engine/grid/obstacle/GridObstacle.d.ts.map +1 -1
  61. package/src/engine/intelligence/behavior/ecs/WaitForEventBehavior.d.ts +7 -5
  62. package/src/engine/intelligence/behavior/ecs/WaitForEventBehavior.d.ts.map +1 -1
  63. package/src/engine/intelligence/behavior/ecs/WaitForEventBehavior.js +13 -12
  64. package/src/engine/intelligence/behavior/util/DelayBehavior.d.ts.map +1 -1
  65. package/src/engine/intelligence/behavior/util/DelayBehavior.js +12 -15
  66. package/src/engine/sound/ecs/emitter/SoundEmitter.d.ts +1 -1
  67. package/src/generation/theme/TerrainLayerDescription.d.ts +4 -1
  68. package/src/generation/theme/TerrainLayerDescription.d.ts.map +1 -1
  69. package/src/core/geom/Vector3.schema.json +0 -16
@@ -1,135 +1,569 @@
1
- import {Matrix3, Matrix4} from "three";
2
- import Signal from "../events/signal/Signal";
3
- import Quaternion from "./Quaternion";
4
-
5
- interface Vector3Like {
6
- readonly x: number
7
- readonly y: number
8
- readonly z: number
9
- }
10
-
11
- export default class Vector3 implements Vector3Like {
12
- readonly x: number
13
- readonly y: number
14
- readonly z: number
15
-
16
- 0: number
17
- 1: number
18
- 2: number
19
-
20
- public readonly onChanged: Signal<number, number, number, number, number, number>;
21
-
22
- constructor()
23
-
24
- constructor(x: number, y: number, z: number)
25
-
26
- set(x: number, y: number, z: number): void
27
-
28
- negate(): void
29
-
30
- addVectors(a: Vector3Like, b: Vector3Like): void
31
-
32
- add(other: Vector3Like): void
33
-
34
- _add(x: number, y: number, z: number): void
35
-
36
- subVectors(a: Vector3Like, b: Vector3Like): void
37
-
38
- sub(other: Vector3Like): void
39
-
40
- _sub(x: number, y: number, z: number): void
41
-
42
- abs(): void
43
-
44
- round(): void
45
-
46
- floor(): void
47
-
48
- ceil(): void
49
-
50
- multiplyVectors(a: Vector3Like, b: Vector3Like): void
51
-
52
- _multiply(x: number, y: number, z: number): void
53
-
54
- multiply(other: Vector3Like): void
55
-
56
- addScalar(v: number): void
57
-
58
- setScalar(v:number):void
59
-
60
- multiplyScalar(v: number): void
61
-
62
- crossVectors(a: Vector3Like, b: Vector3Like): void
63
-
64
- _crossVectors(ax: number, ay: number, az: number, bx: number, by: number, bz: number): void
65
-
66
- _projectVectors(x0: number, y0: number, z0: number, x1: number, y1: number, z1: number): void
67
-
68
- isZero(): boolean
69
-
70
- copy(other: Vector3Like): void
71
-
72
- clone(): Vector3
73
-
74
- equals(other: Vector3Like): boolean
75
-
76
- roughlyEquals(other: Vector3Like, tolerance?: number): boolean
77
-
78
- normalize(): void
79
-
80
- length(): number
81
-
82
- lengthSqr(): number
83
-
84
- lerpVectors(a: Vector3Like, b: Vector3Like, fraction: number): void
85
-
86
- distanceTo(other: Vector3Like): number
87
-
88
- distanceSqrTo(other: Vector3Like): number
89
-
90
- applyQuaternion(q: Quaternion): void
91
-
92
- /**
93
- * @deprecated
94
- */
95
- applyMatrix4_three(m4: Matrix4): void
96
-
97
- /**
98
- * @deprecated
99
- */
100
- applyMatrix3_three(m4: Matrix3): void
101
-
102
- /**
103
- * @deprecated
104
- */
105
- transformDirection_three(m4: Matrix4): void
106
-
107
- angleTo(other: Vector3Like): number
108
-
109
- toJSON(): any
110
-
111
- fromJSON(json: { x?: number, y?: number, z?: number } | number): void
112
-
113
- readFromArray(array: number[] | ArrayLike<number>, offset?: number): void
114
-
115
- writeToArray(array: number[] | ArrayLike<number>, offset?: number): void
116
-
117
- toArray(array: number[] | ArrayLike<number>, offset?: number): void
118
-
119
- fromArray(array: number[] | ArrayLike<number>, offset?: number): void
120
-
121
- asArray(): number[]
122
-
123
- static distance(a: Vector3Like, b: Vector3Like): number
124
-
125
- static dot(a: Vector3Like, b: Vector3Like): number
126
-
127
- static readonly zero: Vector3
128
- static readonly one: Vector3
129
- static readonly up: Vector3
130
- static readonly down: Vector3
131
- static readonly left: Vector3
132
- static readonly right: Vector3
133
- static readonly forward: Vector3
134
- static readonly back: Vector3
135
- }
1
+ /**
2
+ *
3
+ * @author Alex Goldring
4
+ * @copyright Company Named Limited (c) 2025
5
+ */
6
+ export class Vector3 {
7
+ /**
8
+ * Dot product
9
+ * @param {Vector3|Vector4} a
10
+ * @param {Vector3|Vector4} b
11
+ * @returns {number}
12
+ */
13
+ static dot(a: Vector3 | Vector4, b: Vector3 | Vector4): number;
14
+ /**
15
+ *
16
+ * @param {Vector3} a
17
+ * @param {Vector3} b
18
+ * @returns {number}
19
+ */
20
+ static distance(a: Vector3, b: Vector3): number;
21
+ /**
22
+ *
23
+ * @param {number[]} input
24
+ * @param {number} [offset]
25
+ * @returns {Vector3}
26
+ */
27
+ static fromArray(input: number[], offset?: number): Vector3;
28
+ /**
29
+ *
30
+ * @param {number} value
31
+ * @returns {Vector3}
32
+ */
33
+ static fromScalar(value: number): Vector3;
34
+ /**
35
+ *
36
+ * @param {number} [x=0]
37
+ * @param {number} [y=0]
38
+ * @param {number} [z=0]
39
+ * @constructor
40
+ */
41
+ constructor(x?: number, y?: number, z?: number);
42
+ /**
43
+ * Do not assign directly, use {@link set} method instead
44
+ * @readonly
45
+ * @type {number}
46
+ */
47
+ readonly x: number;
48
+ /**
49
+ * Do not assign directly, use {@link set} method instead
50
+ * @readonly
51
+ * @type {number}
52
+ */
53
+ readonly y: number;
54
+ /**
55
+ * Do not assign directly, use {@link set} method instead
56
+ * @readonly
57
+ * @type {number}
58
+ */
59
+ readonly z: number;
60
+ /**
61
+ * @readonly
62
+ * @type {Signal<number,number,number,number,number,number>}
63
+ */
64
+ readonly onChanged: Signal<number, number, number, number, number, number>;
65
+ /**
66
+ *
67
+ * @param {number[]|Float32Array} array
68
+ * @param {number} offset
69
+ */
70
+ readFromArray(array: number[] | Float32Array, offset?: number): void;
71
+ /**
72
+ *
73
+ * @param {number[]|Float32Array} array
74
+ * @param {number} offset
75
+ */
76
+ writeToArray(array?: number[] | Float32Array, offset?: number): number[] | Float32Array<ArrayBufferLike>;
77
+ /**
78
+ *
79
+ * @param {number} x
80
+ * @param {number} y
81
+ * @param {number} z
82
+ * @returns {this}
83
+ */
84
+ set(x: number, y: number, z: number): this;
85
+ /**
86
+ *
87
+ * @param {number} v
88
+ * @returns {this}
89
+ */
90
+ setScalar(v: number): this;
91
+ /**
92
+ *
93
+ * @param {number} v
94
+ * @returns {this}
95
+ */
96
+ setX(v: number): this;
97
+ /**
98
+ *
99
+ * @param {number} v
100
+ * @returns {this}
101
+ */
102
+ setY(v: number): this;
103
+ /**
104
+ *
105
+ * @param {number} v
106
+ * @returns {this}
107
+ */
108
+ setZ(v: number): this;
109
+ /**
110
+ *
111
+ * @param {number} x
112
+ * @param {number} y
113
+ * @returns {this}
114
+ */
115
+ setXY(x: number, y: number): this;
116
+ /**
117
+ *
118
+ * @param {number} x
119
+ * @param {number} z
120
+ * @returns {this}
121
+ */
122
+ setXZ(x: number, z: number): this;
123
+ /**
124
+ *
125
+ * @param {number} y
126
+ * @param {number} z
127
+ * @returns {this}
128
+ */
129
+ setYZ(y: number, z: number): this;
130
+ /**
131
+ *
132
+ * @param {Vector3} a
133
+ * @param {Vector3} b
134
+ * @returns {this}
135
+ */
136
+ addVectors(a: Vector3, b: Vector3): this;
137
+ /**
138
+ *
139
+ * @param {Vector3} other
140
+ * @returns {this}
141
+ */
142
+ add(other: Vector3): this;
143
+ /**
144
+ *
145
+ * @param {number} x
146
+ * @param {number} y
147
+ * @param {number} z
148
+ * @returns {this}
149
+ */
150
+ _add(x: number, y: number, z: number): this;
151
+ /**
152
+ *
153
+ * @param {Vector3} a
154
+ * @param {Vector3} b
155
+ * @returns {this}
156
+ */
157
+ subVectors(a: Vector3, b: Vector3): this;
158
+ /**
159
+ *
160
+ * @param {Vector3} other
161
+ * @returns {this}
162
+ */
163
+ sub(other: Vector3): this;
164
+ /**
165
+ *
166
+ * @param {number} x
167
+ * @param {number} y
168
+ * @param {number} z
169
+ * @returns {this}
170
+ */
171
+ _sub(x: number, y: number, z: number): this;
172
+ /**
173
+ *
174
+ * @param {number} x
175
+ * @param {number} y
176
+ * @param {number} z
177
+ * @returns {this}
178
+ */
179
+ _multiply(x: number, y: number, z: number): this;
180
+ /**
181
+ *
182
+ * @param {Vector3} other
183
+ * @returns {this}
184
+ */
185
+ multiply(other: Vector3): this;
186
+ /**
187
+ *
188
+ * @param {Vector3} a
189
+ * @param {Vector3} b
190
+ * @returns {this}
191
+ */
192
+ multiplyVectors(a: Vector3, b: Vector3): this;
193
+ /**
194
+ *
195
+ * @param {number} x
196
+ * @param {number} y
197
+ * @param {number} z
198
+ * @returns {this}
199
+ */
200
+ _divide(x: number, y: number, z: number): this;
201
+ /**
202
+ *
203
+ * @param {Vector3} other
204
+ * @returns {this}
205
+ */
206
+ divide(other: Vector3): this;
207
+ /**
208
+ * Subtract scalar value from each component of the vector
209
+ * @param {number} val
210
+ * @returns {this}
211
+ */
212
+ subScalar(val: number): this;
213
+ /**
214
+ * Add a scalar value to each component of the vector
215
+ * @param {number} val
216
+ * @returns {this}
217
+ */
218
+ addScalar(val: number): this;
219
+ /**
220
+ *
221
+ * @returns {Vector3}
222
+ */
223
+ clone(): Vector3;
224
+ /**
225
+ *
226
+ * @param {number} val
227
+ * @returns {this}
228
+ */
229
+ multiplyScalar(val: number): this;
230
+ /**
231
+ *
232
+ * @returns {boolean}
233
+ */
234
+ isZero(): boolean;
235
+ /**
236
+ * Compute cross-product of two vectors. Result is written to this vector.
237
+ * @param {Vector3} other
238
+ * @returns {this}
239
+ */
240
+ cross(other: Vector3): this;
241
+ /**
242
+ *
243
+ * @param {Vector3} first
244
+ * @param {Vector3} second
245
+ * @returns {this}
246
+ */
247
+ crossVectors(first: Vector3, second: Vector3): this;
248
+ /**
249
+ *
250
+ * @param {number} ax
251
+ * @param {number} ay
252
+ * @param {number} az
253
+ * @param {number} bx
254
+ * @param {number} by
255
+ * @param {number} bz
256
+ * @returns {this}
257
+ */
258
+ _crossVectors(ax: number, ay: number, az: number, bx: number, by: number, bz: number): this;
259
+ /**
260
+ * Sets all components of the vector to absolute value (positive)
261
+ * @returns {this}
262
+ */
263
+ abs(): this;
264
+ /**
265
+ *
266
+ * @param {Vector3} v
267
+ * @returns {number}
268
+ */
269
+ dot(v: Vector3): number;
270
+ /**
271
+ * Computes length(magnitude) of the vector
272
+ * @returns {number}
273
+ */
274
+ length(): number;
275
+ /**
276
+ * Computes squared length(magnitude) of the vector.
277
+ * Note: this operation is faster than computing length, because it doesn't involve computing square root
278
+ * @returns {number}
279
+ */
280
+ lengthSqr(): number;
281
+ /**
282
+ * Normalizes the vector, preserving its direction, but making magnitude equal to 1
283
+ * @returns {this}
284
+ */
285
+ normalize(): this;
286
+ /**
287
+ * @param {number} [squared_error]
288
+ * @return {boolean}
289
+ */
290
+ isNormalized(squared_error?: number): boolean;
291
+ /**
292
+ *
293
+ * @param {Vector3|{x:number,y:number,z:number}} other
294
+ * @returns {this}
295
+ */
296
+ copy(other: Vector3 | {
297
+ x: number;
298
+ y: number;
299
+ z: number;
300
+ }): this;
301
+ /**
302
+ * Negates every component of the vector making it {-x, -y, -z}
303
+ * @returns {this}
304
+ */
305
+ negate(): this;
306
+ /**
307
+ *
308
+ * @param {Vector3} other
309
+ * @returns {number}
310
+ */
311
+ distanceTo(other: Vector3): number;
312
+ /**
313
+ *
314
+ * @param {number} x
315
+ * @param {number} y
316
+ * @param {number} z
317
+ * @return {number}
318
+ */
319
+ _distanceTo(x: number, y: number, z: number): number;
320
+ /**
321
+ * Squared distance between this vector and another. It is faster than computing real distance because no SQRT operation is needed.
322
+ * @param {Vector3} other
323
+ * @returns {number}
324
+ */
325
+ distanceSqrTo(other: Vector3): number;
326
+ /**
327
+ *
328
+ * @param {number} x
329
+ * @param {number} y
330
+ * @param {number} z
331
+ * @return {number}
332
+ */
333
+ _distanceSqrTo(x: number, y: number, z: number): number;
334
+ /**
335
+ * Angle between two vectors (co-planar) in radians
336
+ * @param {Vector3} other
337
+ * @returns {number}
338
+ */
339
+ angleTo(other: Vector3): number;
340
+ /**
341
+ *
342
+ * @param {Quaternion} q
343
+ * @returns {this}
344
+ */
345
+ applyQuaternion(q: Quaternion): this;
346
+ /**
347
+ * Set components X,Y,Z to values 1,0 or -1 based on the sign of their original value.
348
+ * @example new Vector(5,0,-10).sign().equals(new Vector(1,0,-1)); //true
349
+ * @returns {this}
350
+ */
351
+ sign(): this;
352
+ /**
353
+ * Linear interpolation
354
+ * @param {Vector3} other
355
+ * @param {number} fraction between 0 and 1
356
+ * @returns {this}
357
+ */
358
+ lerp(other: Vector3, fraction: number): this;
359
+ /**
360
+ *
361
+ * @param {Vector3} a
362
+ * @param {Vector3} b
363
+ * @param {number} fraction
364
+ * @returns {this}
365
+ */
366
+ lerpVectors(a: Vector3, b: Vector3, fraction: number): this;
367
+ /**
368
+ *
369
+ * @param {Vector3} other
370
+ * @param {number} fraction
371
+ * @return {this}
372
+ */
373
+ slerp(other: Vector3, fraction: number): this;
374
+ /**
375
+ * Spherical linear interpolation
376
+ * @param {Vector3} a
377
+ * @param {Vector3} b
378
+ * @param {number} fraction
379
+ * @returns {this}
380
+ */
381
+ slerpVectors(a: Vector3, b: Vector3, fraction: number): this;
382
+ /**
383
+ *
384
+ * @param {ArrayLike<number>|number[]|Float32Array} m4
385
+ * @returns {this}
386
+ */
387
+ applyMatrix4(m4: ArrayLike<number> | number[] | Float32Array): this;
388
+ /**
389
+ * Assume current vector holds a direction, transform using a matrix to produce a new directional unit vector
390
+ * @param {ArrayLike<number>|number[]|Float32Array} m4
391
+ * @returns {this}
392
+ */
393
+ applyDirectionMatrix4(m4: ArrayLike<number> | number[] | Float32Array): this;
394
+ /**
395
+ *
396
+ * @param {number[]|Float32Array} mat
397
+ * @returns {this}
398
+ */
399
+ applyMatrix3(mat: number[] | Float32Array): this;
400
+ /**
401
+ *
402
+ * @param {ArrayLike<number>|number[]|Float32Array} matrix4 4x4 transform matrix
403
+ * @returns {this}
404
+ */
405
+ setFromMatrixPosition(matrix4: ArrayLike<number> | number[] | Float32Array): this;
406
+ /**
407
+ *
408
+ * @param {Vector3} other
409
+ * @returns {boolean}
410
+ */
411
+ equals(other: Vector3): boolean;
412
+ /**
413
+ *
414
+ * @param {number} x
415
+ * @param {number} y
416
+ * @param {number} z
417
+ * @return {boolean}
418
+ */
419
+ _equals(x: number, y: number, z: number): boolean;
420
+ /**
421
+ *
422
+ * @param {Vector3} other
423
+ * @param {number} [tolerance]
424
+ * @return {boolean}
425
+ */
426
+ roughlyEquals(other: Vector3, tolerance?: number): boolean;
427
+ /**
428
+ *
429
+ * @param {number} x
430
+ * @param {number} y
431
+ * @param {number} z
432
+ * @param {number} [tolerance] acceptable deviation
433
+ * @return {boolean}
434
+ */
435
+ _roughlyEquals(x: number, y: number, z: number, tolerance?: number): boolean;
436
+ /**
437
+ * @returns {this}
438
+ */
439
+ floor(): this;
440
+ /**
441
+ * Project this vector onto another
442
+ * @param {Vector3} other
443
+ * @returns {this}
444
+ */
445
+ projectOntoVector3(other: Vector3): this;
446
+ /**
447
+ * Project first vector onto second one
448
+ * @param {number} x0
449
+ * @param {number} y0
450
+ * @param {number} z0
451
+ * @param {number} x1
452
+ * @param {number} y1
453
+ * @param {number} z1
454
+ * @returns {this}
455
+ */
456
+ _projectVectors(x0: number, y0: number, z0: number, x1: number, y1: number, z1: number): this;
457
+ /**
458
+ * Convert spherical coordinates to cartesian
459
+ * @param {number} radius
460
+ * @param {number} phi Also known as Azimuth
461
+ * @param {number} theta Also known as Elevation
462
+ * @returns {this}
463
+ */
464
+ setFromSphericalCoords(radius: number, phi: number, theta: number): this;
465
+ /**
466
+ *
467
+ * @param {function} processor
468
+ * @param {*} [thisArg]
469
+ * @returns {Vector3}
470
+ */
471
+ process(processor: Function, thisArg?: any): Vector3;
472
+ toJSON(): {
473
+ x: number;
474
+ y: number;
475
+ z: number;
476
+ };
477
+ /**
478
+ *
479
+ * @param {{x:number, y:number, z:number}|number} json
480
+ */
481
+ fromJSON(json: {
482
+ x: number;
483
+ y: number;
484
+ z: number;
485
+ } | number): void;
486
+ toString(): string;
487
+ /**
488
+ *
489
+ * @param {BinaryBuffer} buffer
490
+ * @deprecated
491
+ */
492
+ toBinaryBuffer(buffer: BinaryBuffer): void;
493
+ /**
494
+ *
495
+ * @param {BinaryBuffer} buffer
496
+ * @deprecated
497
+ */
498
+ fromBinaryBuffer(buffer: BinaryBuffer): void;
499
+ /**
500
+ *
501
+ * @param {BinaryBuffer} buffer
502
+ * @deprecated
503
+ */
504
+ toBinaryBufferFloat32(buffer: BinaryBuffer): void;
505
+ /**
506
+ *
507
+ * @param {BinaryBuffer} buffer
508
+ * @deprecated
509
+ */
510
+ fromBinaryBufferFloat32(buffer: BinaryBuffer): void;
511
+ hash(): number;
512
+ set 0(v: number);
513
+ get 0(): number;
514
+ set 1(v: number);
515
+ get 1(): number;
516
+ set 2(v: number);
517
+ get 2(): number;
518
+ /**
519
+ *
520
+ * @param {THREE.Matrix4} matrix4
521
+ * @deprecated use {@link @applyMatrix4} directly instead, pass `mat.elements`
522
+ */
523
+ applyMatrix4_three(matrix4: THREE.Matrix4): void;
524
+ /**
525
+ * @deprecated use non-three.js version instead
526
+ * @param {THREE.Matrix4} m
527
+ */
528
+ transformDirection_three(m: THREE.Matrix4): void;
529
+ /**
530
+ * @deprecated use non-three.js version instead
531
+ * @param {THREE.Matrix3} m
532
+ * @returns {Vector3}
533
+ */
534
+ applyMatrix3_three(m: THREE.Matrix3): Vector3;
535
+ /**
536
+ * @deprecated use non-three.js version instead
537
+ * @param {THREE.Matrix4} matrix4
538
+ */
539
+ threejs_setFromMatrixPosition(matrix4: THREE.Matrix4): void;
540
+ distanceToSquared: (other: Vector3) => number;
541
+ lengthSq: () => number;
542
+ fromArray: (array: number[] | Float32Array, offset?: number) => void;
543
+ toArray: (array?: number[] | Float32Array, offset?: number) => number[] | Float32Array<ArrayBufferLike>;
544
+ /**
545
+ * @deprecated use `toArray` instead
546
+ */
547
+ asArray: (array?: number[] | Float32Array, offset?: number) => number[] | Float32Array<ArrayBufferLike>;
548
+ /**
549
+ * @readonly
550
+ * @type {boolean}
551
+ */
552
+ readonly isVector3: boolean;
553
+ [Symbol.iterator](): Generator<number, void, unknown>;
554
+ }
555
+ export namespace Vector3 {
556
+ let zero: Vector3;
557
+ let one: Vector3;
558
+ let minus_one: Vector3;
559
+ let up: Vector3;
560
+ let down: Vector3;
561
+ let left: Vector3;
562
+ let right: Vector3;
563
+ let forward: Vector3;
564
+ let back: Vector3;
565
+ let typeName: string;
566
+ }
567
+ export default Vector3;
568
+ import Signal from "../events/signal/Signal.js";
569
+ //# sourceMappingURL=Vector3.d.ts.map