@vpmedia/phaser 1.12.0 → 1.13.0
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 +1 -1
- package/package.json +2 -2
- package/src/index.js +19 -19
- package/src/phaser/core/animation.js +3 -3
- package/src/phaser/core/animation_manager.js +2 -2
- package/src/phaser/core/animation_parser.js +16 -14
- package/src/phaser/core/array_set.js +2 -2
- package/src/phaser/core/cache.js +6 -6
- package/src/phaser/core/const.js +1 -1
- package/src/phaser/core/device.js +2 -2
- package/src/phaser/core/device_util.js +29 -11
- package/src/phaser/core/dom.js +2 -2
- package/src/phaser/core/event_manager.js +2 -2
- package/src/phaser/core/factory.js +8 -8
- package/src/phaser/core/frame.js +3 -3
- package/src/phaser/core/frame_data.js +2 -2
- package/src/phaser/core/frame_util.js +11 -9
- package/src/phaser/core/game.js +14 -13
- package/src/phaser/core/input.js +7 -7
- package/src/phaser/core/input_handler.js +2 -2
- package/src/phaser/core/input_mouse.js +2 -2
- package/src/phaser/core/input_mspointer.js +1 -1
- package/src/phaser/core/input_pointer.js +3 -3
- package/src/phaser/core/input_touch.js +1 -1
- package/src/phaser/core/loader.js +3 -3
- package/src/phaser/core/loader_parser.js +25 -21
- package/src/phaser/core/raf.js +2 -2
- package/src/phaser/core/scale_manager.js +5 -5
- package/src/phaser/core/scene.js +2 -2
- package/src/phaser/core/scene_manager.js +3 -3
- package/src/phaser/core/signal.js +4 -3
- package/src/phaser/core/signal_binding.js +2 -2
- package/src/phaser/core/sound.js +3 -3
- package/src/phaser/core/sound_manager.js +6 -6
- package/src/phaser/core/sound_sprite.js +2 -2
- package/src/phaser/core/stage.js +4 -4
- package/src/phaser/core/time.js +3 -3
- package/src/phaser/core/timer.js +3 -3
- package/src/phaser/core/timer_event.js +1 -1
- package/src/phaser/core/tween.js +4 -4
- package/src/phaser/core/tween_data.js +2 -2
- package/src/phaser/core/tween_easing.js +63 -63
- package/src/phaser/core/tween_manager.js +3 -3
- package/src/phaser/core/world.js +3 -3
- package/src/phaser/display/bitmap_text.js +17 -5
- package/src/phaser/display/button.js +19 -4
- package/src/phaser/display/canvas/buffer.js +1 -1
- package/src/phaser/display/canvas/graphics.js +9 -6
- package/src/phaser/display/canvas/masker.js +6 -4
- package/src/phaser/display/canvas/pool.js +18 -11
- package/src/phaser/display/canvas/renderer.js +1 -1
- package/src/phaser/display/canvas/tinter.js +18 -13
- package/src/phaser/display/canvas/util.js +43 -34
- package/src/phaser/display/display_object.js +9 -5
- package/src/phaser/display/graphics.js +19 -11
- package/src/phaser/display/graphics_data.js +3 -2
- package/src/phaser/display/graphics_data_util.js +6 -4
- package/src/phaser/display/group.js +14 -5
- package/src/phaser/display/image.js +15 -5
- package/src/phaser/display/sprite_batch.js +8 -2
- package/src/phaser/display/sprite_util.js +21 -15
- package/src/phaser/display/text.js +15 -5
- package/src/phaser/display/webgl/abstract_filter.js +1 -1
- package/src/phaser/display/webgl/base_texture.js +3 -2
- package/src/phaser/display/webgl/blend_manager.js +1 -1
- package/src/phaser/display/webgl/earcut.js +107 -107
- package/src/phaser/display/webgl/earcut_node.js +1 -1
- package/src/phaser/display/webgl/fast_sprite_batch.js +1 -1
- package/src/phaser/display/webgl/filter_manager.js +1 -1
- package/src/phaser/display/webgl/filter_texture.js +1 -1
- package/src/phaser/display/webgl/graphics.js +34 -34
- package/src/phaser/display/webgl/graphics_data.js +2 -2
- package/src/phaser/display/webgl/mask_manager.js +7 -5
- package/src/phaser/display/webgl/render_texture.js +5 -5
- package/src/phaser/display/webgl/renderer.js +2 -2
- package/src/phaser/display/webgl/shader/complex.js +1 -1
- package/src/phaser/display/webgl/shader/fast.js +1 -1
- package/src/phaser/display/webgl/shader/normal.js +1 -1
- package/src/phaser/display/webgl/shader/primitive.js +1 -1
- package/src/phaser/display/webgl/shader/strip.js +1 -1
- package/src/phaser/display/webgl/shader_manager.js +1 -1
- package/src/phaser/display/webgl/sprite_batch.js +1 -1
- package/src/phaser/display/webgl/stencil_manager.js +1 -1
- package/src/phaser/display/webgl/texture.js +4 -3
- package/src/phaser/display/webgl/texture_util.js +11 -9
- package/src/phaser/display/webgl/util.js +20 -16
- package/src/phaser/geom/circle.js +12 -4
- package/src/phaser/geom/ellipse.js +13 -4
- package/src/phaser/geom/line.js +12 -3
- package/src/phaser/geom/matrix.js +14 -3
- package/src/phaser/geom/point.js +9 -2
- package/src/phaser/geom/polygon.js +4 -3
- package/src/phaser/geom/rectangle.js +12 -3
- package/src/phaser/geom/rounded_rectangle.js +12 -2
- package/src/phaser/geom/util/circle.js +37 -29
- package/src/phaser/geom/util/ellipse.js +7 -15
- package/src/phaser/geom/util/line.js +30 -24
- package/src/phaser/geom/util/matrix.js +11 -9
- package/src/phaser/geom/util/point.js +100 -78
- package/src/phaser/geom/util/polygon.js +7 -15
- package/src/phaser/geom/util/rectangle.js +78 -62
- package/src/phaser/geom/util/rounded_rectangle.js +7 -15
- package/src/phaser/util/math.js +86 -66
- package/types/global.d.ts +7 -0
- package/types/index.d.ts +18 -18
- package/types/index.d.ts.map +1 -1
- package/types/phaser/core/animation.d.ts +5 -5
- package/types/phaser/core/animation.d.ts.map +1 -1
- package/types/phaser/core/animation_parser.d.ts +13 -11
- package/types/phaser/core/animation_parser.d.ts.map +1 -1
- package/types/phaser/core/array_set.d.ts +2 -2
- package/types/phaser/core/cache.d.ts +4 -4
- package/types/phaser/core/cache.d.ts.map +1 -1
- package/types/phaser/core/const.d.ts +1 -1
- package/types/phaser/core/device.d.ts +2 -2
- package/types/phaser/core/device_util.d.ts +31 -21
- package/types/phaser/core/device_util.d.ts.map +1 -1
- package/types/phaser/core/event_manager.d.ts +1 -1
- package/types/phaser/core/event_manager.d.ts.map +1 -1
- package/types/phaser/core/factory.d.ts +2 -2
- package/types/phaser/core/factory.d.ts.map +1 -1
- package/types/phaser/core/frame.d.ts +2 -2
- package/types/phaser/core/frame.d.ts.map +1 -1
- package/types/phaser/core/frame_data.d.ts +1 -1
- package/types/phaser/core/frame_util.d.ts +8 -6
- package/types/phaser/core/frame_util.d.ts.map +1 -1
- package/types/phaser/core/game.d.ts +12 -12
- package/types/phaser/core/game.d.ts.map +1 -1
- package/types/phaser/core/input.d.ts +4 -4
- package/types/phaser/core/input.d.ts.map +1 -1
- package/types/phaser/core/input_handler.d.ts +1 -1
- package/types/phaser/core/input_handler.d.ts.map +1 -1
- package/types/phaser/core/input_mspointer.d.ts +1 -1
- package/types/phaser/core/input_pointer.d.ts +2 -2
- package/types/phaser/core/input_pointer.d.ts.map +1 -1
- package/types/phaser/core/input_touch.d.ts +1 -1
- package/types/phaser/core/loader.d.ts +1 -1
- package/types/phaser/core/loader.d.ts.map +1 -1
- package/types/phaser/core/loader_parser.d.ts +22 -18
- package/types/phaser/core/loader_parser.d.ts.map +1 -1
- package/types/phaser/core/raf.d.ts +2 -2
- package/types/phaser/core/scale_manager.d.ts +4 -4
- package/types/phaser/core/scale_manager.d.ts.map +1 -1
- package/types/phaser/core/scene.d.ts +2 -2
- package/types/phaser/core/scene_manager.d.ts +1 -1
- package/types/phaser/core/signal.d.ts +1 -1
- package/types/phaser/core/signal.d.ts.map +1 -1
- package/types/phaser/core/signal_binding.d.ts +2 -2
- package/types/phaser/core/sound.d.ts +4 -4
- package/types/phaser/core/sound.d.ts.map +1 -1
- package/types/phaser/core/sound_manager.d.ts +5 -5
- package/types/phaser/core/sound_manager.d.ts.map +1 -1
- package/types/phaser/core/sound_sprite.d.ts +2 -2
- package/types/phaser/core/stage.d.ts +2 -2
- package/types/phaser/core/stage.d.ts.map +1 -1
- package/types/phaser/core/time.d.ts +2 -2
- package/types/phaser/core/time.d.ts.map +1 -1
- package/types/phaser/core/timer.d.ts +2 -2
- package/types/phaser/core/timer.d.ts.map +1 -1
- package/types/phaser/core/timer_event.d.ts +1 -1
- package/types/phaser/core/tween.d.ts +18 -18
- package/types/phaser/core/tween.d.ts.map +1 -1
- package/types/phaser/core/tween_data.d.ts +5 -5
- package/types/phaser/core/tween_data.d.ts.map +1 -1
- package/types/phaser/core/tween_easing.d.ts +63 -63
- package/types/phaser/core/tween_manager.d.ts +2 -2
- package/types/phaser/core/tween_manager.d.ts.map +1 -1
- package/types/phaser/core/world.d.ts +2 -2
- package/types/phaser/core/world.d.ts.map +1 -1
- package/types/phaser/display/bitmap_text.d.ts +16 -5
- package/types/phaser/display/bitmap_text.d.ts.map +1 -1
- package/types/phaser/display/button.d.ts +18 -4
- package/types/phaser/display/button.d.ts.map +1 -1
- package/types/phaser/display/canvas/graphics.d.ts +8 -5
- package/types/phaser/display/canvas/graphics.d.ts.map +1 -1
- package/types/phaser/display/canvas/masker.d.ts +5 -3
- package/types/phaser/display/canvas/masker.d.ts.map +1 -1
- package/types/phaser/display/canvas/pool.d.ts +20 -13
- package/types/phaser/display/canvas/pool.d.ts.map +1 -1
- package/types/phaser/display/canvas/tinter.d.ts +19 -14
- package/types/phaser/display/canvas/tinter.d.ts.map +1 -1
- package/types/phaser/display/canvas/util.d.ts +47 -38
- package/types/phaser/display/canvas/util.d.ts.map +1 -1
- package/types/phaser/display/display_object.d.ts +5 -5
- package/types/phaser/display/display_object.d.ts.map +1 -1
- package/types/phaser/display/graphics.d.ts +28 -21
- package/types/phaser/display/graphics.d.ts.map +1 -1
- package/types/phaser/display/graphics_data.d.ts +1 -1
- package/types/phaser/display/graphics_data.d.ts.map +1 -1
- package/types/phaser/display/graphics_data_util.d.ts +3 -2
- package/types/phaser/display/graphics_data_util.d.ts.map +1 -1
- package/types/phaser/display/group.d.ts +14 -6
- package/types/phaser/display/group.d.ts.map +1 -1
- package/types/phaser/display/image.d.ts +14 -5
- package/types/phaser/display/image.d.ts.map +1 -1
- package/types/phaser/display/sprite_batch.d.ts +8 -3
- package/types/phaser/display/sprite_batch.d.ts.map +1 -1
- package/types/phaser/display/sprite_util.d.ts +19 -14
- package/types/phaser/display/sprite_util.d.ts.map +1 -1
- package/types/phaser/display/text.d.ts +25 -16
- package/types/phaser/display/text.d.ts.map +1 -1
- package/types/phaser/display/webgl/abstract_filter.d.ts +1 -1
- package/types/phaser/display/webgl/base_texture.d.ts +1 -1
- package/types/phaser/display/webgl/base_texture.d.ts.map +1 -1
- package/types/phaser/display/webgl/blend_manager.d.ts +1 -1
- package/types/phaser/display/webgl/earcut.d.ts +106 -106
- package/types/phaser/display/webgl/earcut_node.d.ts +1 -1
- package/types/phaser/display/webgl/fast_sprite_batch.d.ts +1 -1
- package/types/phaser/display/webgl/filter_manager.d.ts +1 -1
- package/types/phaser/display/webgl/graphics.d.ts +31 -31
- package/types/phaser/display/webgl/graphics_data.d.ts +2 -2
- package/types/phaser/display/webgl/mask_manager.d.ts +6 -4
- package/types/phaser/display/webgl/mask_manager.d.ts.map +1 -1
- package/types/phaser/display/webgl/render_texture.d.ts +3 -3
- package/types/phaser/display/webgl/render_texture.d.ts.map +1 -1
- package/types/phaser/display/webgl/renderer.d.ts +1 -1
- package/types/phaser/display/webgl/renderer.d.ts.map +1 -1
- package/types/phaser/display/webgl/texture.d.ts +1 -1
- package/types/phaser/display/webgl/texture.d.ts.map +1 -1
- package/types/phaser/display/webgl/texture_util.d.ts +10 -8
- package/types/phaser/display/webgl/texture_util.d.ts.map +1 -1
- package/types/phaser/display/webgl/util.d.ts +20 -16
- package/types/phaser/display/webgl/util.d.ts.map +1 -1
- package/types/phaser/geom/circle.d.ts +16 -9
- package/types/phaser/geom/circle.d.ts.map +1 -1
- package/types/phaser/geom/ellipse.d.ts +13 -5
- package/types/phaser/geom/ellipse.d.ts.map +1 -1
- package/types/phaser/geom/line.d.ts +16 -8
- package/types/phaser/geom/line.d.ts.map +1 -1
- package/types/phaser/geom/matrix.d.ts +21 -11
- package/types/phaser/geom/matrix.d.ts.map +1 -1
- package/types/phaser/geom/point.d.ts +26 -20
- package/types/phaser/geom/point.d.ts.map +1 -1
- package/types/phaser/geom/polygon.d.ts +4 -4
- package/types/phaser/geom/polygon.d.ts.map +1 -1
- package/types/phaser/geom/rectangle.d.ts +22 -14
- package/types/phaser/geom/rectangle.d.ts.map +1 -1
- package/types/phaser/geom/rounded_rectangle.d.ts +11 -2
- package/types/phaser/geom/rounded_rectangle.d.ts.map +1 -1
- package/types/phaser/geom/util/circle.d.ts +42 -33
- package/types/phaser/geom/util/circle.d.ts.map +1 -1
- package/types/phaser/geom/util/ellipse.d.ts +7 -12
- package/types/phaser/geom/util/ellipse.d.ts.map +1 -1
- package/types/phaser/geom/util/line.d.ts +30 -23
- package/types/phaser/geom/util/line.d.ts.map +1 -1
- package/types/phaser/geom/util/matrix.d.ts +12 -10
- package/types/phaser/geom/util/matrix.d.ts.map +1 -1
- package/types/phaser/geom/util/point.d.ts +118 -96
- package/types/phaser/geom/util/point.d.ts.map +1 -1
- package/types/phaser/geom/util/polygon.d.ts +6 -11
- package/types/phaser/geom/util/polygon.d.ts.map +1 -1
- package/types/phaser/geom/util/rectangle.d.ts +91 -74
- package/types/phaser/geom/util/rectangle.d.ts.map +1 -1
- package/types/phaser/geom/util/rounded_rectangle.d.ts +6 -11
- package/types/phaser/geom/util/rounded_rectangle.d.ts.map +1 -1
- package/types/phaser/util/math.d.ts +89 -69
- package/types/phaser/util/math.d.ts.map +1 -1
- package/tsconfig.json +0 -110
|
@@ -1,12 +1,22 @@
|
|
|
1
1
|
/**
|
|
2
|
+
* @module geom/rounded_rectangle
|
|
3
|
+
* @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
|
|
2
4
|
* @author Andras Csizmadia <andras@vpmedia.hu>
|
|
3
5
|
* @author Richard Davey <rich@photonstorm.com>
|
|
4
|
-
* @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
|
|
5
6
|
*/
|
|
6
7
|
import { clone } from './util/rounded_rectangle';
|
|
7
8
|
import { GEOM_ROUNDED_RECTANGLE } from '../core/const';
|
|
8
9
|
|
|
9
|
-
export
|
|
10
|
+
export class RoundedRectangle {
|
|
11
|
+
/**
|
|
12
|
+
* TBD.
|
|
13
|
+
*
|
|
14
|
+
* @param {number} x - TBD.
|
|
15
|
+
* @param {number} y - TBD.
|
|
16
|
+
* @param {number} width - TBD.
|
|
17
|
+
* @param {number} height - TBD.
|
|
18
|
+
* @param {number} radius - TBD.
|
|
19
|
+
*/
|
|
10
20
|
constructor(x = 0, y = 0, width = 0, height = 0, radius = 20) {
|
|
11
21
|
this.x = x;
|
|
12
22
|
this.y = y;
|
|
@@ -1,17 +1,19 @@
|
|
|
1
1
|
/**
|
|
2
|
+
* @module geom/util/circle
|
|
3
|
+
* @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
|
|
2
4
|
* @author Andras Csizmadia <andras@vpmedia.hu>
|
|
3
5
|
* @author Richard Davey <rich@photonstorm.com>
|
|
4
|
-
* @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
|
|
5
6
|
*/
|
|
6
|
-
import Circle from
|
|
7
|
-
import Point from '../point';
|
|
7
|
+
import { Circle } from '../circle';
|
|
8
|
+
import { Point } from '../point';
|
|
8
9
|
import { degToRad, distance } from '../../util/math';
|
|
9
10
|
|
|
10
11
|
/**
|
|
12
|
+
* TBD.
|
|
11
13
|
*
|
|
12
|
-
* @param {
|
|
13
|
-
* @param {
|
|
14
|
-
* @returns {
|
|
14
|
+
* @param {Circle} input - TBD.
|
|
15
|
+
* @param {Circle} output - TBD.
|
|
16
|
+
* @returns {Circle} TBD.
|
|
15
17
|
*/
|
|
16
18
|
export function clone(input, output = null) {
|
|
17
19
|
const result = output || new Circle();
|
|
@@ -22,11 +24,12 @@ export function clone(input, output = null) {
|
|
|
22
24
|
}
|
|
23
25
|
|
|
24
26
|
/**
|
|
27
|
+
* TBD.
|
|
25
28
|
*
|
|
26
|
-
* @param {
|
|
27
|
-
* @param {number} x TBD
|
|
28
|
-
* @param {number} y TBD
|
|
29
|
-
* @returns {boolean} TBD
|
|
29
|
+
* @param {Circle} a - TBD.
|
|
30
|
+
* @param {number} x - TBD.
|
|
31
|
+
* @param {number} y - TBD.
|
|
32
|
+
* @returns {boolean} TBD.
|
|
30
33
|
*/
|
|
31
34
|
export function contains(a, x, y) {
|
|
32
35
|
if (a.radius > 0 && x >= a.left && x <= a.right && y >= a.top && y <= a.bottom) {
|
|
@@ -38,32 +41,35 @@ export function contains(a, x, y) {
|
|
|
38
41
|
}
|
|
39
42
|
|
|
40
43
|
/**
|
|
44
|
+
* TBD.
|
|
41
45
|
*
|
|
42
|
-
* @param {
|
|
43
|
-
* @param {
|
|
44
|
-
* @returns {boolean} TBD
|
|
46
|
+
* @param {Circle} a - TBD.
|
|
47
|
+
* @param {Circle} b - TBD.
|
|
48
|
+
* @returns {boolean} TBD.
|
|
45
49
|
*/
|
|
46
50
|
export function equals(a, b) {
|
|
47
51
|
return a.x === b.x && a.y === b.y && a.diameter === b.diameter;
|
|
48
52
|
}
|
|
49
53
|
|
|
50
54
|
/**
|
|
55
|
+
* TBD.
|
|
51
56
|
*
|
|
52
|
-
* @param {
|
|
53
|
-
* @param {
|
|
54
|
-
* @returns {boolean} TBD
|
|
57
|
+
* @param {Circle} a - TBD.
|
|
58
|
+
* @param {Circle} b - TBD.
|
|
59
|
+
* @returns {boolean} TBD.
|
|
55
60
|
*/
|
|
56
61
|
export function intersects(a, b) {
|
|
57
62
|
return distance(a.x, a.y, b.x, b.y) <= a.radius + b.radius;
|
|
58
63
|
}
|
|
59
64
|
|
|
60
65
|
/**
|
|
66
|
+
* TBD.
|
|
61
67
|
*
|
|
62
|
-
* @param {
|
|
63
|
-
* @param {number} angle TBD
|
|
64
|
-
* @param {boolean} asDegrees TBD
|
|
65
|
-
* @param {
|
|
66
|
-
* @returns {
|
|
68
|
+
* @param {Circle} a - TBD.
|
|
69
|
+
* @param {number} angle - TBD.
|
|
70
|
+
* @param {boolean} asDegrees - TBD.
|
|
71
|
+
* @param {Circle} output - TBD.
|
|
72
|
+
* @returns {Circle} TBD.
|
|
67
73
|
*/
|
|
68
74
|
export function circumferencePoint(a, angle, asDegrees = false, output = null) {
|
|
69
75
|
const result = output || new Point();
|
|
@@ -76,12 +82,13 @@ export function circumferencePoint(a, angle, asDegrees = false, output = null) {
|
|
|
76
82
|
}
|
|
77
83
|
|
|
78
84
|
/**
|
|
85
|
+
* TBD.
|
|
79
86
|
*
|
|
80
|
-
* @param {
|
|
81
|
-
* @param {number} angle TBD
|
|
82
|
-
* @param {boolean} asDegrees TBD
|
|
83
|
-
* @param {
|
|
84
|
-
* @returns {
|
|
87
|
+
* @param {Circle} a - TBD.
|
|
88
|
+
* @param {number} angle - TBD.
|
|
89
|
+
* @param {boolean} asDegrees - TBD.
|
|
90
|
+
* @param {Point} output - TBD.
|
|
91
|
+
* @returns {Point} TBD.
|
|
85
92
|
*/
|
|
86
93
|
export function intersectsPoint(a, angle, asDegrees = false, output = null) {
|
|
87
94
|
const result = output || new Point();
|
|
@@ -94,10 +101,11 @@ export function intersectsPoint(a, angle, asDegrees = false, output = null) {
|
|
|
94
101
|
}
|
|
95
102
|
|
|
96
103
|
/**
|
|
104
|
+
* TBD.
|
|
97
105
|
*
|
|
98
|
-
* @param {
|
|
99
|
-
* @param {object} r TBD
|
|
100
|
-
* @returns {boolean} TBD
|
|
106
|
+
* @param {Circle} c - TBD.
|
|
107
|
+
* @param {object} r - TBD.
|
|
108
|
+
* @returns {boolean} TBD.
|
|
101
109
|
*/
|
|
102
110
|
export function intersectsRectangle(c, r) {
|
|
103
111
|
const cx = Math.abs(c.x - r.x - r.halfWidth);
|
|
@@ -1,25 +1,17 @@
|
|
|
1
1
|
/**
|
|
2
|
+
* @module geom/util/ellipse
|
|
3
|
+
* @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
|
|
2
4
|
* @author Andras Csizmadia <andras@vpmedia.hu>
|
|
3
5
|
* @author Richard Davey <rich@photonstorm.com>
|
|
4
|
-
* @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
|
|
5
6
|
*/
|
|
6
7
|
|
|
7
8
|
/**
|
|
8
|
-
* TBD
|
|
9
|
-
*
|
|
10
|
-
* @deprecated
|
|
11
|
-
* @returns {boolean} TBD
|
|
12
|
-
*/
|
|
13
|
-
export default function () {
|
|
14
|
-
return true;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
/**
|
|
9
|
+
* TBD.
|
|
18
10
|
*
|
|
19
|
-
* @param {object} a TBD
|
|
20
|
-
* @param {number} x TBD
|
|
21
|
-
* @param {number} y TBD
|
|
22
|
-
* @returns {boolean} TBD
|
|
11
|
+
* @param {object} a - TBD.
|
|
12
|
+
* @param {number} x - TBD.
|
|
13
|
+
* @param {number} y - TBD.
|
|
14
|
+
* @returns {boolean} TBD.
|
|
23
15
|
*/
|
|
24
16
|
export function contains(a, x, y) {
|
|
25
17
|
if (a.width <= 0 || a.height <= 0) {
|
|
@@ -1,17 +1,19 @@
|
|
|
1
1
|
/**
|
|
2
|
+
* @module geom/util/line
|
|
3
|
+
* @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
|
|
2
4
|
* @author Andras Csizmadia <andras@vpmedia.hu>
|
|
3
5
|
* @author Richard Davey <rich@photonstorm.com>
|
|
4
|
-
* @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
|
|
5
6
|
*/
|
|
6
|
-
import Point from '../point';
|
|
7
|
-
import Line from
|
|
7
|
+
import { Point } from '../point';
|
|
8
|
+
import { Line } from '../line';
|
|
8
9
|
import { intersects as intersectsRect } from './rectangle';
|
|
9
10
|
|
|
10
11
|
/**
|
|
12
|
+
* TBD.
|
|
11
13
|
*
|
|
12
|
-
* @param {
|
|
13
|
-
* @param {
|
|
14
|
-
* @returns {
|
|
14
|
+
* @param {Line} input - TBD.
|
|
15
|
+
* @param {Line} output - TBD.
|
|
16
|
+
* @returns {Line} TBD.
|
|
15
17
|
*/
|
|
16
18
|
export function clone(input, output = null) {
|
|
17
19
|
const result = output || new Line();
|
|
@@ -23,14 +25,15 @@ export function clone(input, output = null) {
|
|
|
23
25
|
}
|
|
24
26
|
|
|
25
27
|
/**
|
|
28
|
+
* TBD.
|
|
26
29
|
*
|
|
27
|
-
* @param {object} a TBD
|
|
28
|
-
* @param {object} b TBD
|
|
29
|
-
* @param {object} e TBD
|
|
30
|
-
* @param {object} f TBD
|
|
31
|
-
* @param {boolean} asSegment TBD
|
|
32
|
-
* @param {
|
|
33
|
-
* @returns {boolean} TBD
|
|
30
|
+
* @param {object} a - TBD.
|
|
31
|
+
* @param {object} b - TBD.
|
|
32
|
+
* @param {object} e - TBD.
|
|
33
|
+
* @param {object} f - TBD.
|
|
34
|
+
* @param {boolean} asSegment - TBD.
|
|
35
|
+
* @param {Point} output - TBD.
|
|
36
|
+
* @returns {boolean} TBD.
|
|
34
37
|
*/
|
|
35
38
|
export function intersectsPoints(a, b, e, f, asSegment = true, output = null) {
|
|
36
39
|
const result = output || new Point();
|
|
@@ -59,22 +62,24 @@ export function intersectsPoints(a, b, e, f, asSegment = true, output = null) {
|
|
|
59
62
|
}
|
|
60
63
|
|
|
61
64
|
/**
|
|
65
|
+
* TBD.
|
|
62
66
|
*
|
|
63
|
-
* @param {object} a TBD
|
|
64
|
-
* @param {object} b TBD
|
|
65
|
-
* @param {boolean} asSegment TBD
|
|
66
|
-
* @param {object} result TBD
|
|
67
|
-
* @returns {boolean} TBD
|
|
67
|
+
* @param {object} a - TBD.
|
|
68
|
+
* @param {object} b - TBD.
|
|
69
|
+
* @param {boolean} asSegment - TBD.
|
|
70
|
+
* @param {object} result - TBD.
|
|
71
|
+
* @returns {boolean} TBD.
|
|
68
72
|
*/
|
|
69
73
|
export function intersects(a, b, asSegment, result) {
|
|
70
74
|
return intersectsPoints(a.start, a.end, b.start, b.end, asSegment, result);
|
|
71
75
|
}
|
|
72
76
|
|
|
73
77
|
/**
|
|
78
|
+
* TBD.
|
|
74
79
|
*
|
|
75
|
-
* @param {object} line TBD
|
|
76
|
-
* @param {object} rect TBD
|
|
77
|
-
* @returns {boolean} TBD
|
|
80
|
+
* @param {object} line - TBD.
|
|
81
|
+
* @param {object} rect - TBD.
|
|
82
|
+
* @returns {boolean} TBD.
|
|
78
83
|
*/
|
|
79
84
|
export function intersectsRectangle(line, rect) {
|
|
80
85
|
// Quick bail out of the Line and Rect bounds don't intersect
|
|
@@ -128,10 +133,11 @@ export function intersectsRectangle(line, rect) {
|
|
|
128
133
|
}
|
|
129
134
|
|
|
130
135
|
/**
|
|
136
|
+
* TBD.
|
|
131
137
|
*
|
|
132
|
-
* @param {object} a TBD
|
|
133
|
-
* @param {object} b TBD
|
|
134
|
-
* @returns {number} TBD
|
|
138
|
+
* @param {object} a - TBD.
|
|
139
|
+
* @param {object} b - TBD.
|
|
140
|
+
* @returns {number} TBD.
|
|
135
141
|
*/
|
|
136
142
|
export function reflect(a, b) {
|
|
137
143
|
return 2 * b.normalAngle - 3.141592653589793 - a.angle;
|
|
@@ -1,15 +1,17 @@
|
|
|
1
1
|
/**
|
|
2
|
+
* @module geom/util/matrix
|
|
3
|
+
* @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
|
|
2
4
|
* @author Andras Csizmadia <andras@vpmedia.hu>
|
|
3
5
|
* @author Richard Davey <rich@photonstorm.com>
|
|
4
|
-
* @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
|
|
5
6
|
*/
|
|
6
|
-
import Matrix from
|
|
7
|
+
import { Matrix } from '../matrix';
|
|
7
8
|
|
|
8
9
|
/**
|
|
10
|
+
* TBD.
|
|
9
11
|
*
|
|
10
|
-
* @param {
|
|
11
|
-
* @param {
|
|
12
|
-
* @returns {
|
|
12
|
+
* @param {Matrix} input - TBD.
|
|
13
|
+
* @param {Matrix} output - TBD.
|
|
14
|
+
* @returns {Matrix} TBD.
|
|
13
15
|
*/
|
|
14
16
|
export function clone(input, output = null) {
|
|
15
17
|
const result = output || new Matrix();
|
|
@@ -23,9 +25,9 @@ export function clone(input, output = null) {
|
|
|
23
25
|
}
|
|
24
26
|
|
|
25
27
|
/**
|
|
26
|
-
* TBD
|
|
28
|
+
* TBD.
|
|
27
29
|
*
|
|
28
|
-
* @returns {
|
|
30
|
+
* @returns {Matrix} TBD.
|
|
29
31
|
*/
|
|
30
32
|
export function getIdentityMatrix() {
|
|
31
33
|
if (!window.PhaserRegistry) {
|
|
@@ -38,9 +40,9 @@ export function getIdentityMatrix() {
|
|
|
38
40
|
}
|
|
39
41
|
|
|
40
42
|
/**
|
|
41
|
-
* TBD
|
|
43
|
+
* TBD.
|
|
42
44
|
*
|
|
43
|
-
* @returns {
|
|
45
|
+
* @returns {Matrix} TBD.
|
|
44
46
|
*/
|
|
45
47
|
export function getTempMatrix() {
|
|
46
48
|
if (!window.PhaserRegistry) {
|
|
@@ -1,16 +1,18 @@
|
|
|
1
1
|
/**
|
|
2
|
+
* @module geom/util/point
|
|
3
|
+
* @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
|
|
2
4
|
* @author Andras Csizmadia <andras@vpmedia.hu>
|
|
3
5
|
* @author Richard Davey <rich@photonstorm.com>
|
|
4
|
-
* @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
|
|
5
6
|
*/
|
|
6
|
-
import Point from '../point';
|
|
7
|
+
import { Point } from '../point';
|
|
7
8
|
|
|
8
9
|
/**
|
|
10
|
+
* TBD.
|
|
9
11
|
*
|
|
10
|
-
* @param {
|
|
11
|
-
* @param {
|
|
12
|
-
* @param {
|
|
13
|
-
* @returns {
|
|
12
|
+
* @param {Point} a - TBD.
|
|
13
|
+
* @param {Point} b - TBD.
|
|
14
|
+
* @param {Point} output - TBD.
|
|
15
|
+
* @returns {Point} TBD.
|
|
14
16
|
*/
|
|
15
17
|
export function add(a, b, output = null) {
|
|
16
18
|
const result = output || new Point();
|
|
@@ -20,11 +22,12 @@ export function add(a, b, output = null) {
|
|
|
20
22
|
}
|
|
21
23
|
|
|
22
24
|
/**
|
|
25
|
+
* TBD.
|
|
23
26
|
*
|
|
24
|
-
* @param {
|
|
25
|
-
* @param {
|
|
26
|
-
* @param {
|
|
27
|
-
* @returns {
|
|
27
|
+
* @param {Point} a - TBD.
|
|
28
|
+
* @param {Point} b - TBD.
|
|
29
|
+
* @param {Point} output - TBD.
|
|
30
|
+
* @returns {Point} TBD.
|
|
28
31
|
*/
|
|
29
32
|
export function subtract(a, b, output = null) {
|
|
30
33
|
const result = output || new Point();
|
|
@@ -34,11 +37,12 @@ export function subtract(a, b, output = null) {
|
|
|
34
37
|
}
|
|
35
38
|
|
|
36
39
|
/**
|
|
40
|
+
* TBD.
|
|
37
41
|
*
|
|
38
|
-
* @param {
|
|
39
|
-
* @param {
|
|
40
|
-
* @param {
|
|
41
|
-
* @returns {
|
|
42
|
+
* @param {Point} a - TBD.
|
|
43
|
+
* @param {Point} b - TBD.
|
|
44
|
+
* @param {Point} output - TBD.
|
|
45
|
+
* @returns {Point} TBD.
|
|
42
46
|
*/
|
|
43
47
|
export function multiply(a, b, output = null) {
|
|
44
48
|
const result = output || new Point();
|
|
@@ -48,11 +52,12 @@ export function multiply(a, b, output = null) {
|
|
|
48
52
|
}
|
|
49
53
|
|
|
50
54
|
/**
|
|
55
|
+
* TBD.
|
|
51
56
|
*
|
|
52
|
-
* @param {
|
|
53
|
-
* @param {
|
|
54
|
-
* @param {
|
|
55
|
-
* @returns {
|
|
57
|
+
* @param {Point} a - TBD.
|
|
58
|
+
* @param {Point} b - TBD.
|
|
59
|
+
* @param {Point} output - TBD.
|
|
60
|
+
* @returns {Point} TBD.
|
|
56
61
|
*/
|
|
57
62
|
export function divide(a, b, output = null) {
|
|
58
63
|
const result = output || new Point();
|
|
@@ -62,30 +67,33 @@ export function divide(a, b, output = null) {
|
|
|
62
67
|
}
|
|
63
68
|
|
|
64
69
|
/**
|
|
70
|
+
* TBD.
|
|
65
71
|
*
|
|
66
|
-
* @param {
|
|
67
|
-
* @param {
|
|
68
|
-
* @returns {boolean} TBD
|
|
72
|
+
* @param {Point} a - TBD.
|
|
73
|
+
* @param {Point} b - TBD.
|
|
74
|
+
* @returns {boolean} TBD.
|
|
69
75
|
*/
|
|
70
76
|
export function equals(a, b) {
|
|
71
77
|
return a.x === b.x && a.y === b.y;
|
|
72
78
|
}
|
|
73
79
|
|
|
74
80
|
/**
|
|
81
|
+
* TBD.
|
|
75
82
|
*
|
|
76
|
-
* @param {
|
|
77
|
-
* @param {
|
|
78
|
-
* @returns {number} TBD
|
|
83
|
+
* @param {Point} a - TBD.
|
|
84
|
+
* @param {Point} b - TBD.
|
|
85
|
+
* @returns {number} TBD.
|
|
79
86
|
*/
|
|
80
87
|
export function angle(a, b) {
|
|
81
88
|
return Math.atan2(a.y - b.y, a.x - b.x);
|
|
82
89
|
}
|
|
83
90
|
|
|
84
91
|
/**
|
|
92
|
+
* TBD.
|
|
85
93
|
*
|
|
86
|
-
* @param {
|
|
87
|
-
* @param {
|
|
88
|
-
* @returns {
|
|
94
|
+
* @param {Point} a - TBD.
|
|
95
|
+
* @param {Point} output - TBD.
|
|
96
|
+
* @returns {Point} TBD.
|
|
89
97
|
*/
|
|
90
98
|
export function negative(a, output = null) {
|
|
91
99
|
const result = output || new Point();
|
|
@@ -93,12 +101,13 @@ export function negative(a, output = null) {
|
|
|
93
101
|
}
|
|
94
102
|
|
|
95
103
|
/**
|
|
104
|
+
* TBD.
|
|
96
105
|
*
|
|
97
|
-
* @param {
|
|
98
|
-
* @param {
|
|
99
|
-
* @param {number} s TBD
|
|
100
|
-
* @param {
|
|
101
|
-
* @returns {
|
|
106
|
+
* @param {Point} a - TBD.
|
|
107
|
+
* @param {Point} b - TBD.
|
|
108
|
+
* @param {number} s - TBD.
|
|
109
|
+
* @param {Point} output - TBD.
|
|
110
|
+
* @returns {Point} TBD.
|
|
102
111
|
*/
|
|
103
112
|
export function multiplyAdd(a, b, s, output = null) {
|
|
104
113
|
const result = output || new Point();
|
|
@@ -106,12 +115,13 @@ export function multiplyAdd(a, b, s, output = null) {
|
|
|
106
115
|
}
|
|
107
116
|
|
|
108
117
|
/**
|
|
118
|
+
* TBD.
|
|
109
119
|
*
|
|
110
|
-
* @param {
|
|
111
|
-
* @param {
|
|
112
|
-
* @param {number} f TBD
|
|
113
|
-
* @param {
|
|
114
|
-
* @returns {
|
|
120
|
+
* @param {Point} a - TBD.
|
|
121
|
+
* @param {Point} b - TBD.
|
|
122
|
+
* @param {number} f - TBD.
|
|
123
|
+
* @param {Point} output - TBD.
|
|
124
|
+
* @returns {Point} TBD.
|
|
115
125
|
*/
|
|
116
126
|
export function interpolate(a, b, f, output = null) {
|
|
117
127
|
const result = output || new Point();
|
|
@@ -119,10 +129,11 @@ export function interpolate(a, b, f, output = null) {
|
|
|
119
129
|
}
|
|
120
130
|
|
|
121
131
|
/**
|
|
132
|
+
* TBD.
|
|
122
133
|
*
|
|
123
|
-
* @param {
|
|
124
|
-
* @param {
|
|
125
|
-
* @returns {
|
|
134
|
+
* @param {Point} a - TBD.
|
|
135
|
+
* @param {Point} output - TBD.
|
|
136
|
+
* @returns {Point} TBD.
|
|
126
137
|
*/
|
|
127
138
|
export function perp(a, output = null) {
|
|
128
139
|
const result = output || new Point();
|
|
@@ -130,10 +141,11 @@ export function perp(a, output = null) {
|
|
|
130
141
|
}
|
|
131
142
|
|
|
132
143
|
/**
|
|
144
|
+
* TBD.
|
|
133
145
|
*
|
|
134
|
-
* @param {
|
|
135
|
-
* @param {
|
|
136
|
-
* @returns {
|
|
146
|
+
* @param {Point} a - TBD.
|
|
147
|
+
* @param {Point} output - TBD.
|
|
148
|
+
* @returns {Point} TBD.
|
|
137
149
|
*/
|
|
138
150
|
export function rperp(a, output = null) {
|
|
139
151
|
const result = output || new Point();
|
|
@@ -141,11 +153,12 @@ export function rperp(a, output = null) {
|
|
|
141
153
|
}
|
|
142
154
|
|
|
143
155
|
/**
|
|
156
|
+
* TBD.
|
|
144
157
|
*
|
|
145
|
-
* @param {
|
|
146
|
-
* @param {
|
|
147
|
-
* @param {boolean} round TBD
|
|
148
|
-
* @returns {number} TBD
|
|
158
|
+
* @param {Point} a - TBD.
|
|
159
|
+
* @param {Point} b - TBD.
|
|
160
|
+
* @param {boolean} round - TBD.
|
|
161
|
+
* @returns {number} TBD.
|
|
149
162
|
*/
|
|
150
163
|
export function distance(a, b, round = false) {
|
|
151
164
|
const dx = a.x - b.x;
|
|
@@ -155,11 +168,12 @@ export function distance(a, b, round = false) {
|
|
|
155
168
|
}
|
|
156
169
|
|
|
157
170
|
/**
|
|
171
|
+
* TBD.
|
|
158
172
|
*
|
|
159
|
-
* @param {
|
|
160
|
-
* @param {
|
|
161
|
-
* @param {
|
|
162
|
-
* @returns {
|
|
173
|
+
* @param {Point} a - TBD.
|
|
174
|
+
* @param {Point} b - TBD.
|
|
175
|
+
* @param {Point} output - TBD.
|
|
176
|
+
* @returns {Point} TBD.
|
|
163
177
|
*/
|
|
164
178
|
export function project(a, b, output = null) {
|
|
165
179
|
const result = output || new Point();
|
|
@@ -171,11 +185,12 @@ export function project(a, b, output = null) {
|
|
|
171
185
|
}
|
|
172
186
|
|
|
173
187
|
/**
|
|
188
|
+
* TBD.
|
|
174
189
|
*
|
|
175
|
-
* @param {
|
|
176
|
-
* @param {
|
|
177
|
-
* @param {
|
|
178
|
-
* @returns {
|
|
190
|
+
* @param {Point} a - TBD.
|
|
191
|
+
* @param {Point} b - TBD.
|
|
192
|
+
* @param {Point} output - TBD.
|
|
193
|
+
* @returns {Point} TBD.
|
|
179
194
|
*/
|
|
180
195
|
export function projectUnit(a, b, output = null) {
|
|
181
196
|
const result = output || new Point();
|
|
@@ -187,10 +202,11 @@ export function projectUnit(a, b, output = null) {
|
|
|
187
202
|
}
|
|
188
203
|
|
|
189
204
|
/**
|
|
205
|
+
* TBD.
|
|
190
206
|
*
|
|
191
|
-
* @param {
|
|
192
|
-
* @param {
|
|
193
|
-
* @returns {
|
|
207
|
+
* @param {Point} a - TBD.
|
|
208
|
+
* @param {Point} output - TBD.
|
|
209
|
+
* @returns {Point} TBD.
|
|
194
210
|
*/
|
|
195
211
|
export function normalRightHand(a, output = null) {
|
|
196
212
|
const result = output || new Point();
|
|
@@ -198,10 +214,11 @@ export function normalRightHand(a, output = null) {
|
|
|
198
214
|
}
|
|
199
215
|
|
|
200
216
|
/**
|
|
217
|
+
* TBD.
|
|
201
218
|
*
|
|
202
|
-
* @param {
|
|
203
|
-
* @param {
|
|
204
|
-
* @returns {
|
|
219
|
+
* @param {Point} a - TBD.
|
|
220
|
+
* @param {Point} output - TBD.
|
|
221
|
+
* @returns {Point} TBD.
|
|
205
222
|
*/
|
|
206
223
|
export function normalize(a, output = null) {
|
|
207
224
|
const result = output || new Point();
|
|
@@ -213,14 +230,15 @@ export function normalize(a, output = null) {
|
|
|
213
230
|
}
|
|
214
231
|
|
|
215
232
|
/**
|
|
233
|
+
* TBD.
|
|
216
234
|
*
|
|
217
|
-
* @param {
|
|
218
|
-
* @param {number} x TBD
|
|
219
|
-
* @param {number} y TBD
|
|
220
|
-
* @param {number} ang TBD
|
|
221
|
-
* @param {boolean} asDegrees TBD
|
|
222
|
-
* @param {number} dist TBD
|
|
223
|
-
* @returns {object} TBD
|
|
235
|
+
* @param {Point} a - TBD.
|
|
236
|
+
* @param {number} x - TBD.
|
|
237
|
+
* @param {number} y - TBD.
|
|
238
|
+
* @param {number} ang - TBD.
|
|
239
|
+
* @param {boolean} asDegrees - TBD.
|
|
240
|
+
* @param {number} dist - TBD.
|
|
241
|
+
* @returns {object} TBD.
|
|
224
242
|
*/
|
|
225
243
|
export function rotate(a, x, y, ang, asDegrees, dist) {
|
|
226
244
|
if (asDegrees) {
|
|
@@ -243,10 +261,12 @@ export function rotate(a, x, y, ang, asDegrees, dist) {
|
|
|
243
261
|
}
|
|
244
262
|
|
|
245
263
|
/**
|
|
264
|
+
* TBD.
|
|
246
265
|
*
|
|
247
|
-
* @param {
|
|
248
|
-
* @param {
|
|
249
|
-
* @returns {
|
|
266
|
+
* @param {Point[]} points - TBD.
|
|
267
|
+
* @param {Point} output - TBD.
|
|
268
|
+
* @returns {Point} TBD.
|
|
269
|
+
* @throws Error TBD.
|
|
250
270
|
*/
|
|
251
271
|
export function centroid(points, output = null) {
|
|
252
272
|
const result = output || new Point();
|
|
@@ -266,11 +286,12 @@ export function centroid(points, output = null) {
|
|
|
266
286
|
}
|
|
267
287
|
|
|
268
288
|
/**
|
|
289
|
+
* TBD.
|
|
269
290
|
*
|
|
270
|
-
* @param {object} obj TBD
|
|
271
|
-
* @param {string} xProp TBD
|
|
272
|
-
* @param {string} yProp TBD
|
|
273
|
-
* @returns {
|
|
291
|
+
* @param {object} obj - TBD.
|
|
292
|
+
* @param {string} xProp - TBD.
|
|
293
|
+
* @param {string} yProp - TBD.
|
|
294
|
+
* @returns {Point} TBD.
|
|
274
295
|
*/
|
|
275
296
|
export function parse(obj, xProp = 'x', yProp = 'y') {
|
|
276
297
|
const point = new Point();
|
|
@@ -284,10 +305,11 @@ export function parse(obj, xProp = 'x', yProp = 'y') {
|
|
|
284
305
|
}
|
|
285
306
|
|
|
286
307
|
/**
|
|
308
|
+
* TBD.
|
|
287
309
|
*
|
|
288
|
-
* @param {
|
|
289
|
-
* @param {
|
|
290
|
-
* @returns {
|
|
310
|
+
* @param {Point} input - TBD.
|
|
311
|
+
* @param {Point} output - TBD.
|
|
312
|
+
* @returns {Point} TBD.
|
|
291
313
|
*/
|
|
292
314
|
export function clone(input, output = null) {
|
|
293
315
|
const result = output || new Point();
|
|
@@ -1,25 +1,17 @@
|
|
|
1
1
|
/**
|
|
2
|
+
* @module geom/util/polygon
|
|
3
|
+
* @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
|
|
2
4
|
* @author Andras Csizmadia <andras@vpmedia.hu>
|
|
3
5
|
* @author Richard Davey <rich@photonstorm.com>
|
|
4
|
-
* @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
|
|
5
6
|
*/
|
|
6
|
-
import Polygon from
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* TBD
|
|
10
|
-
*
|
|
11
|
-
* @deprecated
|
|
12
|
-
* @returns {boolean} TBD
|
|
13
|
-
*/
|
|
14
|
-
export default function () {
|
|
15
|
-
return true;
|
|
16
|
-
}
|
|
7
|
+
import { Polygon } from '../polygon';
|
|
17
8
|
|
|
18
9
|
/**
|
|
10
|
+
* TBD.
|
|
19
11
|
*
|
|
20
|
-
* @param {
|
|
21
|
-
* @param {
|
|
22
|
-
* @returns {
|
|
12
|
+
* @param {Polygon} input - TBD.
|
|
13
|
+
* @param {Polygon} output - TBD.
|
|
14
|
+
* @returns {Polygon} TBD.
|
|
23
15
|
*/
|
|
24
16
|
export function clone(input, output = null) {
|
|
25
17
|
const result = output || new Polygon();
|