melonjs 10.3.0 → 10.5.1
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/README.md +6 -6
- package/dist/melonjs.js +3147 -3293
- package/dist/melonjs.min.js +4 -4
- package/dist/melonjs.module.d.ts +3411 -3852
- package/dist/melonjs.module.js +3448 -3210
- package/package.json +18 -17
- package/src/audio/audio.js +29 -30
- package/src/camera/camera2d.js +46 -56
- package/src/entity/entity.js +30 -36
- package/src/game.js +21 -22
- package/src/geometries/ellipse.js +40 -46
- package/src/geometries/line.js +9 -11
- package/src/geometries/poly.js +53 -53
- package/src/geometries/rectangle.js +42 -44
- package/src/index.js +9 -26
- package/src/input/gamepad.js +11 -10
- package/src/input/input.js +2 -3
- package/src/input/keyboard.js +113 -113
- package/src/input/pointer.js +30 -31
- package/src/input/pointerevent.js +26 -26
- package/src/lang/deprecated.js +65 -6
- package/src/level/level.js +23 -24
- package/src/level/tiled/TMXGroup.js +7 -8
- package/src/level/tiled/TMXLayer.js +30 -32
- package/src/level/tiled/TMXObject.js +21 -21
- package/src/level/tiled/TMXTile.js +18 -18
- package/src/level/tiled/TMXTileMap.js +39 -44
- package/src/level/tiled/TMXTileset.js +12 -15
- package/src/level/tiled/TMXTilesetGroup.js +9 -9
- package/src/level/tiled/renderer/TMXHexagonalRenderer.js +7 -8
- package/src/level/tiled/renderer/TMXIsometricRenderer.js +7 -8
- package/src/level/tiled/renderer/TMXOrthogonalRenderer.js +4 -5
- package/src/level/tiled/renderer/TMXRenderer.js +24 -25
- package/src/level/tiled/renderer/TMXStaggeredRenderer.js +1 -4
- package/src/loader/loader.js +14 -15
- package/src/loader/loadingscreen.js +2 -4
- package/src/math/color.js +47 -66
- package/src/math/math.js +15 -16
- package/src/math/matrix2.js +53 -58
- package/src/math/matrix3.js +56 -62
- package/src/math/observable_vector2.js +75 -76
- package/src/math/observable_vector3.js +79 -80
- package/src/math/vector2.js +91 -92
- package/src/math/vector3.js +94 -96
- package/src/particles/emitter.js +38 -40
- package/src/particles/particle.js +4 -5
- package/src/particles/particlecontainer.js +2 -3
- package/src/physics/body.js +46 -143
- package/src/physics/bounds.js +47 -47
- package/src/physics/collision.js +13 -14
- package/src/physics/detector.js +18 -17
- package/src/physics/quadtree.js +17 -19
- package/src/physics/sat.js +26 -26
- package/src/physics/world.js +24 -28
- package/src/plugin/plugin.js +11 -14
- package/src/renderable/GUI.js +41 -46
- package/src/renderable/collectable.js +4 -8
- package/src/renderable/colorlayer.js +6 -10
- package/src/renderable/container.js +87 -72
- package/src/renderable/dragndrop.js +224 -0
- package/src/renderable/imagelayer.js +25 -31
- package/src/renderable/nineslicesprite.js +41 -41
- package/src/renderable/renderable.js +114 -125
- package/src/renderable/sprite.js +62 -68
- package/src/renderable/trigger.js +25 -30
- package/src/state/stage.js +13 -17
- package/src/state/state.js +26 -27
- package/src/system/device.js +74 -75
- package/src/system/event.js +71 -72
- package/src/system/pooling.js +11 -12
- package/src/system/save.js +3 -4
- package/src/system/timer.js +19 -20
- package/src/text/bitmaptext.js +57 -54
- package/src/text/bitmaptextdata.js +10 -10
- package/src/text/glyph.js +3 -0
- package/src/text/text.js +44 -49
- package/src/tweens/easing.js +1 -1
- package/src/tweens/interpolation.js +1 -1
- package/src/tweens/tween.js +43 -44
- package/src/utils/agent.js +3 -4
- package/src/utils/array.js +4 -5
- package/src/utils/file.js +3 -4
- package/src/utils/function.js +4 -5
- package/src/utils/string.js +7 -9
- package/src/utils/utils.js +4 -5
- package/src/video/canvas/canvas_renderer.js +58 -59
- package/src/video/renderer.js +49 -53
- package/src/video/texture.js +98 -111
- package/src/video/texture_cache.js +24 -6
- package/src/video/video.js +16 -17
- package/src/video/webgl/glshader.js +37 -38
- package/src/video/webgl/webgl_compositor.js +31 -32
- package/src/video/webgl/webgl_renderer.js +79 -80
- package/src/entity/draggable.js +0 -130
- package/src/entity/droptarget.js +0 -101
|
@@ -3,20 +3,19 @@ import {clamp} from "./math.js";
|
|
|
3
3
|
import pool from "./../system/pooling.js";
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
|
-
* A Vector3d object that provide notification by executing the given callback when the vector is changed.
|
|
7
6
|
* @classdesc
|
|
8
|
-
*
|
|
9
|
-
* @augments
|
|
10
|
-
* @memberof me
|
|
11
|
-
* @param {number} [x=0] x value of the vector
|
|
12
|
-
* @param {number} [y=0] y value of the vector
|
|
13
|
-
* @param {number} [z=0] z value of the vector
|
|
14
|
-
* @param {object} settings additional required parameters
|
|
15
|
-
* @param {Function} settings.onUpdate the callback to be executed when the vector is changed
|
|
16
|
-
* @param {object} [settings.scope] the value to use as this when calling onUpdate
|
|
7
|
+
* A Vector3d object that provide notification by executing the given callback when the vector is changed.
|
|
8
|
+
* @augments Vector3d
|
|
17
9
|
*/
|
|
18
10
|
class ObservableVector3d extends Vector3d {
|
|
19
|
-
|
|
11
|
+
/**
|
|
12
|
+
* @param {number} x x value of the vector
|
|
13
|
+
* @param {number} y y value of the vector
|
|
14
|
+
* @param {number} z z value of the vector
|
|
15
|
+
* @param {object} settings additional required parameters
|
|
16
|
+
* @param {Function} settings.onUpdate the callback to be executed when the vector is changed
|
|
17
|
+
* @param {object} [settings.scope] the value to use as this when calling onUpdate
|
|
18
|
+
*/
|
|
20
19
|
constructor(x = 0, y = 0, z = 0, settings) {
|
|
21
20
|
super(x, y, z);
|
|
22
21
|
if (typeof(settings) === "undefined") {
|
|
@@ -44,7 +43,7 @@ class ObservableVector3d extends Vector3d {
|
|
|
44
43
|
* @public
|
|
45
44
|
* @type {number}
|
|
46
45
|
* @name x
|
|
47
|
-
* @memberof
|
|
46
|
+
* @memberof ObservableVector3d
|
|
48
47
|
*/
|
|
49
48
|
|
|
50
49
|
get x() {
|
|
@@ -65,7 +64,7 @@ class ObservableVector3d extends Vector3d {
|
|
|
65
64
|
* @public
|
|
66
65
|
* @type {number}
|
|
67
66
|
* @name y
|
|
68
|
-
* @memberof
|
|
67
|
+
* @memberof ObservableVector3d
|
|
69
68
|
*/
|
|
70
69
|
|
|
71
70
|
get y() {
|
|
@@ -87,7 +86,7 @@ class ObservableVector3d extends Vector3d {
|
|
|
87
86
|
* @public
|
|
88
87
|
* @type {number}
|
|
89
88
|
* @name z
|
|
90
|
-
* @memberof
|
|
89
|
+
* @memberof ObservableVector3d
|
|
91
90
|
*/
|
|
92
91
|
|
|
93
92
|
|
|
@@ -124,12 +123,12 @@ class ObservableVector3d extends Vector3d {
|
|
|
124
123
|
/**
|
|
125
124
|
* set the vector value without triggering the callback
|
|
126
125
|
* @name setMuted
|
|
127
|
-
* @memberof
|
|
126
|
+
* @memberof ObservableVector3d
|
|
128
127
|
* @function
|
|
129
128
|
* @param {number} x x value of the vector
|
|
130
129
|
* @param {number} y y value of the vector
|
|
131
130
|
* @param {number} [z=0] z value of the vector
|
|
132
|
-
* @returns {
|
|
131
|
+
* @returns {ObservableVector3d} Reference to this object for method chaining
|
|
133
132
|
*/
|
|
134
133
|
setMuted(x, y, z) {
|
|
135
134
|
this._x = x;
|
|
@@ -141,11 +140,11 @@ class ObservableVector3d extends Vector3d {
|
|
|
141
140
|
/**
|
|
142
141
|
* set the callback to be executed when the vector is changed
|
|
143
142
|
* @name setCallback
|
|
144
|
-
* @memberof
|
|
143
|
+
* @memberof ObservableVector3d
|
|
145
144
|
* @function
|
|
146
145
|
* @param {Function} fn callback
|
|
147
146
|
* @param {Function} [scope=null] scope
|
|
148
|
-
* @returns {
|
|
147
|
+
* @returns {ObservableVector3d} Reference to this object for method chaining
|
|
149
148
|
*/
|
|
150
149
|
setCallback(fn, scope = null) {
|
|
151
150
|
if (typeof(fn) !== "function") {
|
|
@@ -161,10 +160,10 @@ class ObservableVector3d extends Vector3d {
|
|
|
161
160
|
/**
|
|
162
161
|
* Add the passed vector to this vector
|
|
163
162
|
* @name add
|
|
164
|
-
* @memberof
|
|
163
|
+
* @memberof ObservableVector3d
|
|
165
164
|
* @function
|
|
166
|
-
* @param {
|
|
167
|
-
* @returns {
|
|
165
|
+
* @param {Vector2d|Vector3d|ObservableVector2d|ObservableVector3d} v
|
|
166
|
+
* @returns {ObservableVector3d} Reference to this object for method chaining
|
|
168
167
|
*/
|
|
169
168
|
add(v) {
|
|
170
169
|
return this._set(this._x + v.x, this._y + v.y, this._z + (v.z || 0));
|
|
@@ -173,10 +172,10 @@ class ObservableVector3d extends Vector3d {
|
|
|
173
172
|
/**
|
|
174
173
|
* Substract the passed vector to this vector
|
|
175
174
|
* @name sub
|
|
176
|
-
* @memberof
|
|
175
|
+
* @memberof ObservableVector3d
|
|
177
176
|
* @function
|
|
178
|
-
* @param {
|
|
179
|
-
* @returns {
|
|
177
|
+
* @param {Vector2d|Vector3d|ObservableVector2d|ObservableVector3d} v
|
|
178
|
+
* @returns {ObservableVector3d} Reference to this object for method chaining
|
|
180
179
|
*/
|
|
181
180
|
sub(v) {
|
|
182
181
|
return this._set(this._x - v.x, this._y - v.y, this._z - (v.z || 0));
|
|
@@ -185,12 +184,12 @@ class ObservableVector3d extends Vector3d {
|
|
|
185
184
|
/**
|
|
186
185
|
* Multiply this vector values by the given scalar
|
|
187
186
|
* @name scale
|
|
188
|
-
* @memberof
|
|
187
|
+
* @memberof ObservableVector3d
|
|
189
188
|
* @function
|
|
190
189
|
* @param {number} x
|
|
191
190
|
* @param {number} [y=x]
|
|
192
191
|
* @param {number} [z=1]
|
|
193
|
-
* @returns {
|
|
192
|
+
* @returns {ObservableVector3d} Reference to this object for method chaining
|
|
194
193
|
*/
|
|
195
194
|
scale(x, y, z) {
|
|
196
195
|
y = (typeof (y) !== "undefined" ? y : x);
|
|
@@ -200,10 +199,10 @@ class ObservableVector3d extends Vector3d {
|
|
|
200
199
|
/**
|
|
201
200
|
* Multiply this vector values by the passed vector
|
|
202
201
|
* @name scaleV
|
|
203
|
-
* @memberof
|
|
202
|
+
* @memberof ObservableVector3d
|
|
204
203
|
* @function
|
|
205
|
-
* @param {
|
|
206
|
-
* @returns {
|
|
204
|
+
* @param {Vector2d|Vector3d|ObservableVector2d|ObservableVector3d} v
|
|
205
|
+
* @returns {ObservableVector3d} Reference to this object for method chaining
|
|
207
206
|
*/
|
|
208
207
|
scaleV(v) {
|
|
209
208
|
return this._set(this._x * v.x, this._y * v.y, this._z * (v.z || 1));
|
|
@@ -212,10 +211,10 @@ class ObservableVector3d extends Vector3d {
|
|
|
212
211
|
/**
|
|
213
212
|
* Divide this vector values by the passed value
|
|
214
213
|
* @name div
|
|
215
|
-
* @memberof
|
|
214
|
+
* @memberof ObservableVector3d
|
|
216
215
|
* @function
|
|
217
216
|
* @param {number} n the value to divide the vector by
|
|
218
|
-
* @returns {
|
|
217
|
+
* @returns {ObservableVector3d} Reference to this object for method chaining
|
|
219
218
|
*/
|
|
220
219
|
div(n) {
|
|
221
220
|
return this._set(this._x / n, this._y / n, this._z / n);
|
|
@@ -224,9 +223,9 @@ class ObservableVector3d extends Vector3d {
|
|
|
224
223
|
/**
|
|
225
224
|
* Update this vector values to absolute values
|
|
226
225
|
* @name abs
|
|
227
|
-
* @memberof
|
|
226
|
+
* @memberof ObservableVector3d
|
|
228
227
|
* @function
|
|
229
|
-
* @returns {
|
|
228
|
+
* @returns {ObservableVector3d} Reference to this object for method chaining
|
|
230
229
|
*/
|
|
231
230
|
abs() {
|
|
232
231
|
return this._set(
|
|
@@ -239,11 +238,11 @@ class ObservableVector3d extends Vector3d {
|
|
|
239
238
|
/**
|
|
240
239
|
* Clamp the vector value within the specified value range
|
|
241
240
|
* @name clamp
|
|
242
|
-
* @memberof
|
|
241
|
+
* @memberof ObservableVector3d
|
|
243
242
|
* @function
|
|
244
243
|
* @param {number} low
|
|
245
244
|
* @param {number} high
|
|
246
|
-
* @returns {
|
|
245
|
+
* @returns {ObservableVector3d} new me.ObservableVector3d
|
|
247
246
|
*/
|
|
248
247
|
clamp(low, high) {
|
|
249
248
|
return new ObservableVector3d(
|
|
@@ -257,11 +256,11 @@ class ObservableVector3d extends Vector3d {
|
|
|
257
256
|
/**
|
|
258
257
|
* Clamp this vector value within the specified value range
|
|
259
258
|
* @name clampSelf
|
|
260
|
-
* @memberof
|
|
259
|
+
* @memberof ObservableVector3d
|
|
261
260
|
* @function
|
|
262
261
|
* @param {number} low
|
|
263
262
|
* @param {number} high
|
|
264
|
-
* @returns {
|
|
263
|
+
* @returns {ObservableVector3d} Reference to this object for method chaining
|
|
265
264
|
*/
|
|
266
265
|
clampSelf(low, high) {
|
|
267
266
|
return this._set(
|
|
@@ -274,10 +273,10 @@ class ObservableVector3d extends Vector3d {
|
|
|
274
273
|
/**
|
|
275
274
|
* Update this vector with the minimum value between this and the passed vector
|
|
276
275
|
* @name minV
|
|
277
|
-
* @memberof
|
|
276
|
+
* @memberof ObservableVector3d
|
|
278
277
|
* @function
|
|
279
|
-
* @param {
|
|
280
|
-
* @returns {
|
|
278
|
+
* @param {Vector2d|Vector3d|ObservableVector2d|ObservableVector3d} v
|
|
279
|
+
* @returns {ObservableVector3d} Reference to this object for method chaining
|
|
281
280
|
*/
|
|
282
281
|
minV(v) {
|
|
283
282
|
var _vz = v.z || 0;
|
|
@@ -291,10 +290,10 @@ class ObservableVector3d extends Vector3d {
|
|
|
291
290
|
/**
|
|
292
291
|
* Update this vector with the maximum value between this and the passed vector
|
|
293
292
|
* @name maxV
|
|
294
|
-
* @memberof
|
|
293
|
+
* @memberof ObservableVector3d
|
|
295
294
|
* @function
|
|
296
|
-
* @param {
|
|
297
|
-
* @returns {
|
|
295
|
+
* @param {Vector2d|Vector3d|ObservableVector2d|ObservableVector3d} v
|
|
296
|
+
* @returns {ObservableVector3d} Reference to this object for method chaining
|
|
298
297
|
*/
|
|
299
298
|
maxV(v) {
|
|
300
299
|
var _vz = v.z || 0;
|
|
@@ -308,9 +307,9 @@ class ObservableVector3d extends Vector3d {
|
|
|
308
307
|
/**
|
|
309
308
|
* Floor the vector values
|
|
310
309
|
* @name floor
|
|
311
|
-
* @memberof
|
|
310
|
+
* @memberof ObservableVector3d
|
|
312
311
|
* @function
|
|
313
|
-
* @returns {
|
|
312
|
+
* @returns {ObservableVector3d} new me.ObservableVector3d
|
|
314
313
|
*/
|
|
315
314
|
floor() {
|
|
316
315
|
return new ObservableVector3d(
|
|
@@ -324,9 +323,9 @@ class ObservableVector3d extends Vector3d {
|
|
|
324
323
|
/**
|
|
325
324
|
* Floor this vector values
|
|
326
325
|
* @name floorSelf
|
|
327
|
-
* @memberof
|
|
326
|
+
* @memberof ObservableVector3d
|
|
328
327
|
* @function
|
|
329
|
-
* @returns {
|
|
328
|
+
* @returns {ObservableVector3d} Reference to this object for method chaining
|
|
330
329
|
*/
|
|
331
330
|
floorSelf() {
|
|
332
331
|
return this._set(Math.floor(this._x), Math.floor(this._y), Math.floor(this._z));
|
|
@@ -335,9 +334,9 @@ class ObservableVector3d extends Vector3d {
|
|
|
335
334
|
/**
|
|
336
335
|
* Ceil the vector values
|
|
337
336
|
* @name ceil
|
|
338
|
-
* @memberof
|
|
337
|
+
* @memberof ObservableVector3d
|
|
339
338
|
* @function
|
|
340
|
-
* @returns {
|
|
339
|
+
* @returns {ObservableVector3d} new me.ObservableVector3d
|
|
341
340
|
*/
|
|
342
341
|
ceil() {
|
|
343
342
|
return new ObservableVector3d(
|
|
@@ -351,9 +350,9 @@ class ObservableVector3d extends Vector3d {
|
|
|
351
350
|
/**
|
|
352
351
|
* Ceil this vector values
|
|
353
352
|
* @name ceilSelf
|
|
354
|
-
* @memberof
|
|
353
|
+
* @memberof ObservableVector3d
|
|
355
354
|
* @function
|
|
356
|
-
* @returns {
|
|
355
|
+
* @returns {ObservableVector3d} Reference to this object for method chaining
|
|
357
356
|
*/
|
|
358
357
|
ceilSelf() {
|
|
359
358
|
return this._set(Math.ceil(this._x), Math.ceil(this._y), Math.ceil(this._z));
|
|
@@ -362,9 +361,9 @@ class ObservableVector3d extends Vector3d {
|
|
|
362
361
|
/**
|
|
363
362
|
* Negate the vector values
|
|
364
363
|
* @name negate
|
|
365
|
-
* @memberof
|
|
364
|
+
* @memberof ObservableVector3d
|
|
366
365
|
* @function
|
|
367
|
-
* @returns {
|
|
366
|
+
* @returns {ObservableVector3d} new me.ObservableVector3d
|
|
368
367
|
*/
|
|
369
368
|
negate() {
|
|
370
369
|
return new ObservableVector3d(
|
|
@@ -378,9 +377,9 @@ class ObservableVector3d extends Vector3d {
|
|
|
378
377
|
/**
|
|
379
378
|
* Negate this vector values
|
|
380
379
|
* @name negateSelf
|
|
381
|
-
* @memberof
|
|
380
|
+
* @memberof ObservableVector3d
|
|
382
381
|
* @function
|
|
383
|
-
* @returns {
|
|
382
|
+
* @returns {ObservableVector3d} Reference to this object for method chaining
|
|
384
383
|
*/
|
|
385
384
|
negateSelf() {
|
|
386
385
|
return this._set(-this._x, -this._y, -this._z);
|
|
@@ -389,10 +388,10 @@ class ObservableVector3d extends Vector3d {
|
|
|
389
388
|
/**
|
|
390
389
|
* Copy the components of the given vector into this one
|
|
391
390
|
* @name copy
|
|
392
|
-
* @memberof
|
|
391
|
+
* @memberof ObservableVector3d
|
|
393
392
|
* @function
|
|
394
|
-
* @param {
|
|
395
|
-
* @returns {
|
|
393
|
+
* @param {Vector2d|Vector3d|ObservableVector2d|ObservableVector3d} v
|
|
394
|
+
* @returns {ObservableVector3d} Reference to this object for method chaining
|
|
396
395
|
*/
|
|
397
396
|
copy(v) {
|
|
398
397
|
return this._set(v.x, v.y, v.z || 0);
|
|
@@ -401,9 +400,9 @@ class ObservableVector3d extends Vector3d {
|
|
|
401
400
|
/**
|
|
402
401
|
* return true if the two vectors are the same
|
|
403
402
|
* @name equals
|
|
404
|
-
* @memberof
|
|
403
|
+
* @memberof ObservableVector3d
|
|
405
404
|
* @function
|
|
406
|
-
* @param {
|
|
405
|
+
* @param {Vector2d|Vector3d|ObservableVector2d|ObservableVector3d} v
|
|
407
406
|
* @returns {boolean}
|
|
408
407
|
*/
|
|
409
408
|
equals(v) {
|
|
@@ -414,9 +413,9 @@ class ObservableVector3d extends Vector3d {
|
|
|
414
413
|
* change this vector to be perpendicular to what it was before.<br>
|
|
415
414
|
* (Effectively rotates it 90 degrees in a clockwise direction)
|
|
416
415
|
* @name perp
|
|
417
|
-
* @memberof
|
|
416
|
+
* @memberof ObservableVector3d
|
|
418
417
|
* @function
|
|
419
|
-
* @returns {
|
|
418
|
+
* @returns {ObservableVector3d} Reference to this object for method chaining
|
|
420
419
|
*/
|
|
421
420
|
perp() {
|
|
422
421
|
return this._set(this._y, -this._x, this._z);
|
|
@@ -425,11 +424,11 @@ class ObservableVector3d extends Vector3d {
|
|
|
425
424
|
/**
|
|
426
425
|
* Rotate this vector (counter-clockwise) by the specified angle (in radians).
|
|
427
426
|
* @name rotate
|
|
428
|
-
* @memberof
|
|
427
|
+
* @memberof ObservableVector3d
|
|
429
428
|
* @function
|
|
430
429
|
* @param {number} angle The angle to rotate (in radians)
|
|
431
|
-
* @param {
|
|
432
|
-
* @returns {
|
|
430
|
+
* @param {Vector2d|ObservableVector2d} [v] an optional point to rotate around (on the same z axis)
|
|
431
|
+
* @returns {ObservableVector3d} Reference to this object for method chaining
|
|
433
432
|
*/
|
|
434
433
|
rotate(angle, v) {
|
|
435
434
|
var cx = 0;
|
|
@@ -453,9 +452,9 @@ class ObservableVector3d extends Vector3d {
|
|
|
453
452
|
/**
|
|
454
453
|
* return the dot product of this vector and the passed one
|
|
455
454
|
* @name dot
|
|
456
|
-
* @memberof
|
|
455
|
+
* @memberof ObservableVector3d
|
|
457
456
|
* @function
|
|
458
|
-
* @param {
|
|
457
|
+
* @param {Vector2d|Vector3d|ObservableVector2d|ObservableVector3d} v
|
|
459
458
|
* @returns {number} The dot product.
|
|
460
459
|
*/
|
|
461
460
|
dot(v) {
|
|
@@ -465,10 +464,10 @@ class ObservableVector3d extends Vector3d {
|
|
|
465
464
|
/**
|
|
466
465
|
* calculate the cross product of this vector and the passed one
|
|
467
466
|
* @name cross
|
|
468
|
-
* @memberof
|
|
467
|
+
* @memberof ObservableVector3d
|
|
469
468
|
* @function
|
|
470
|
-
* @param {
|
|
471
|
-
* @returns {
|
|
469
|
+
* @param {Vector3d|ObservableVector3d} v
|
|
470
|
+
* @returns {ObservableVector3d} Reference to this object for method chaining
|
|
472
471
|
*/
|
|
473
472
|
cross(v) {
|
|
474
473
|
var ax = this._x, ay = this._y, az = this._z;
|
|
@@ -484,11 +483,11 @@ class ObservableVector3d extends Vector3d {
|
|
|
484
483
|
/**
|
|
485
484
|
* Linearly interpolate between this vector and the given one.
|
|
486
485
|
* @name lerp
|
|
487
|
-
* @memberof
|
|
486
|
+
* @memberof ObservableVector3d
|
|
488
487
|
* @function
|
|
489
|
-
* @param {
|
|
488
|
+
* @param {Vector3d|ObservableVector3d} v
|
|
490
489
|
* @param {number} alpha distance along the line (alpha = 0 will be this vector, and alpha = 1 will be the given one).
|
|
491
|
-
* @returns {
|
|
490
|
+
* @returns {ObservableVector3d} Reference to this object for method chaining
|
|
492
491
|
*/
|
|
493
492
|
lerp(v, alpha) {
|
|
494
493
|
this._x += ( v.x - this._x ) * alpha;
|
|
@@ -500,9 +499,9 @@ class ObservableVector3d extends Vector3d {
|
|
|
500
499
|
/**
|
|
501
500
|
* return the distance between this vector and the passed one
|
|
502
501
|
* @name distance
|
|
503
|
-
* @memberof
|
|
502
|
+
* @memberof ObservableVector3d
|
|
504
503
|
* @function
|
|
505
|
-
* @param {
|
|
504
|
+
* @param {Vector2d|Vector3d|ObservableVector2d|ObservableVector3d} v
|
|
506
505
|
* @returns {number}
|
|
507
506
|
*/
|
|
508
507
|
distance(v) {
|
|
@@ -515,9 +514,9 @@ class ObservableVector3d extends Vector3d {
|
|
|
515
514
|
/**
|
|
516
515
|
* return a clone copy of this vector
|
|
517
516
|
* @name clone
|
|
518
|
-
* @memberof
|
|
517
|
+
* @memberof ObservableVector3d
|
|
519
518
|
* @function
|
|
520
|
-
* @returns {
|
|
519
|
+
* @returns {ObservableVector3d} new me.ObservableVector3d
|
|
521
520
|
*/
|
|
522
521
|
clone() {
|
|
523
522
|
return pool.pull("ObservableVector3d",
|
|
@@ -531,9 +530,9 @@ class ObservableVector3d extends Vector3d {
|
|
|
531
530
|
/**
|
|
532
531
|
* return a `me.Vector3d` copy of this `me.ObservableVector3d` object
|
|
533
532
|
* @name toVector3d
|
|
534
|
-
* @memberof
|
|
533
|
+
* @memberof ObservableVector3d
|
|
535
534
|
* @function
|
|
536
|
-
* @returns {
|
|
535
|
+
* @returns {Vector3d} new me.Vector3d
|
|
537
536
|
*/
|
|
538
537
|
toVector3d() {
|
|
539
538
|
return pool.pull("Vector3d", this._x, this._y, this._z);
|
|
@@ -542,7 +541,7 @@ class ObservableVector3d extends Vector3d {
|
|
|
542
541
|
/**
|
|
543
542
|
* convert the object to a string representation
|
|
544
543
|
* @name toString
|
|
545
|
-
* @memberof
|
|
544
|
+
* @memberof ObservableVector3d
|
|
546
545
|
* @function
|
|
547
546
|
* @returns {string}
|
|
548
547
|
*/
|