melonjs 15.2.1 → 15.4.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.
Files changed (291) hide show
  1. package/README.md +1 -1
  2. package/dist/melonjs.mjs/_virtual/_commonjsHelpers.js +1 -1
  3. package/dist/melonjs.mjs/_virtual/earcut.js +1 -1
  4. package/dist/melonjs.mjs/_virtual/howler.js +1 -1
  5. package/dist/melonjs.mjs/_virtual/index.js +1 -1
  6. package/dist/melonjs.mjs/application/application.js +75 -23
  7. package/dist/melonjs.mjs/application/header.js +2 -2
  8. package/dist/melonjs.mjs/application/resize.js +13 -11
  9. package/dist/melonjs.mjs/application/settings.js +37 -1
  10. package/dist/melonjs.mjs/audio/audio.js +4 -6
  11. package/dist/melonjs.mjs/camera/camera2d.js +12 -14
  12. package/dist/melonjs.mjs/const.js +1 -1
  13. package/dist/melonjs.mjs/entity/entity.js +3 -4
  14. package/dist/melonjs.mjs/geometries/ellipse.js +26 -59
  15. package/dist/melonjs.mjs/geometries/line.js +18 -25
  16. package/dist/melonjs.mjs/geometries/path2d.js +16 -13
  17. package/dist/melonjs.mjs/geometries/point.js +8 -16
  18. package/dist/melonjs.mjs/geometries/poly.js +40 -97
  19. package/dist/melonjs.mjs/geometries/rectangle.js +37 -91
  20. package/dist/melonjs.mjs/geometries/roundrect.js +26 -35
  21. package/dist/melonjs.mjs/index.js +6 -6
  22. package/dist/melonjs.mjs/input/gamepad.js +1 -1
  23. package/dist/melonjs.mjs/input/input.js +1 -1
  24. package/dist/melonjs.mjs/input/keyboard.js +3 -3
  25. package/dist/melonjs.mjs/input/pointer.js +4 -4
  26. package/dist/melonjs.mjs/input/pointerevent.js +6 -7
  27. package/dist/melonjs.mjs/lang/console.js +1 -1
  28. package/dist/melonjs.mjs/lang/deprecated.js +2 -2
  29. package/dist/melonjs.mjs/level/level.js +1 -1
  30. package/dist/melonjs.mjs/level/tiled/TMXGroup.js +1 -1
  31. package/dist/melonjs.mjs/level/tiled/TMXLayer.js +16 -33
  32. package/dist/melonjs.mjs/level/tiled/TMXObject.js +3 -4
  33. package/dist/melonjs.mjs/level/tiled/TMXTile.js +4 -4
  34. package/dist/melonjs.mjs/level/tiled/TMXTileMap.js +3 -3
  35. package/dist/melonjs.mjs/level/tiled/TMXTileset.js +4 -7
  36. package/dist/melonjs.mjs/level/tiled/TMXTilesetGroup.js +2 -2
  37. package/dist/melonjs.mjs/level/tiled/TMXUtils.js +37 -47
  38. package/dist/melonjs.mjs/level/tiled/constants.js +1 -1
  39. package/dist/melonjs.mjs/level/tiled/renderer/TMXHexagonalRenderer.js +3 -3
  40. package/dist/melonjs.mjs/level/tiled/renderer/TMXIsometricRenderer.js +2 -2
  41. package/dist/melonjs.mjs/level/tiled/renderer/TMXOrthogonalRenderer.js +2 -2
  42. package/dist/melonjs.mjs/level/tiled/renderer/TMXRenderer.js +2 -2
  43. package/dist/melonjs.mjs/level/tiled/renderer/TMXStaggeredRenderer.js +2 -2
  44. package/dist/melonjs.mjs/level/tiled/renderer/autodetect.js +1 -1
  45. package/dist/melonjs.mjs/loader/cache.js +1 -1
  46. package/dist/melonjs.mjs/loader/loader.js +1 -1
  47. package/dist/melonjs.mjs/loader/loadingscreen.js +1 -1
  48. package/dist/melonjs.mjs/loader/melonjs_logo.png.js +1 -1
  49. package/dist/melonjs.mjs/loader/parser.js +4 -5
  50. package/dist/melonjs.mjs/loader/settings.js +1 -1
  51. package/dist/melonjs.mjs/math/color.js +5 -5
  52. package/dist/melonjs.mjs/math/math.js +1 -1
  53. package/dist/melonjs.mjs/math/matrix2.js +5 -59
  54. package/dist/melonjs.mjs/math/matrix3.js +82 -141
  55. package/dist/melonjs.mjs/math/observable_vector2.js +7 -7
  56. package/dist/melonjs.mjs/math/observable_vector3.js +5 -5
  57. package/dist/melonjs.mjs/math/vector2.js +7 -91
  58. package/dist/melonjs.mjs/math/vector3.js +6 -90
  59. package/dist/melonjs.mjs/node_modules/@teppeis/multimaps/dist/esm/arraymultimap.js +1 -1
  60. package/dist/melonjs.mjs/node_modules/@teppeis/multimaps/dist/esm/multimap.js +1 -1
  61. package/dist/melonjs.mjs/node_modules/earcut/src/earcut.js +1 -1
  62. package/dist/melonjs.mjs/node_modules/eventemitter3/index.js +1 -1
  63. package/dist/melonjs.mjs/node_modules/eventemitter3/index2.js +1 -1
  64. package/dist/melonjs.mjs/node_modules/howler/dist/howler.js +1 -1
  65. package/dist/melonjs.mjs/particles/emitter.js +2 -2
  66. package/dist/melonjs.mjs/particles/particle.js +2 -2
  67. package/dist/melonjs.mjs/particles/settings.js +1 -1
  68. package/dist/melonjs.mjs/physics/body.js +22 -20
  69. package/dist/melonjs.mjs/physics/bounds.js +27 -33
  70. package/dist/melonjs.mjs/physics/collision.js +5 -5
  71. package/dist/melonjs.mjs/physics/detector.js +10 -10
  72. package/dist/melonjs.mjs/physics/quadtree.js +5 -5
  73. package/dist/melonjs.mjs/physics/response.js +1 -1
  74. package/dist/melonjs.mjs/physics/sat.js +3 -4
  75. package/dist/melonjs.mjs/physics/world.js +6 -9
  76. package/dist/melonjs.mjs/plugin/plugin.js +3 -3
  77. package/dist/melonjs.mjs/renderable/collectable.js +2 -2
  78. package/dist/melonjs.mjs/renderable/colorlayer.js +4 -4
  79. package/dist/melonjs.mjs/renderable/container.js +25 -25
  80. package/dist/melonjs.mjs/renderable/draggable.js +1 -1
  81. package/dist/melonjs.mjs/renderable/dragndrop.js +1 -1
  82. package/dist/melonjs.mjs/renderable/imagelayer.js +4 -4
  83. package/dist/melonjs.mjs/renderable/light2d.js +3 -3
  84. package/dist/melonjs.mjs/renderable/nineslicesprite.js +2 -2
  85. package/dist/melonjs.mjs/renderable/renderable.js +31 -39
  86. package/dist/melonjs.mjs/renderable/sprite.js +3 -3
  87. package/dist/melonjs.mjs/renderable/text/bitmaptext.js +421 -0
  88. package/dist/melonjs.mjs/renderable/text/bitmaptextdata.js +195 -0
  89. package/dist/melonjs.mjs/renderable/text/glyph.js +65 -0
  90. package/dist/melonjs.mjs/renderable/text/text.js +422 -0
  91. package/dist/melonjs.mjs/renderable/text/textmetrics.js +175 -0
  92. package/dist/melonjs.mjs/renderable/text/textstyle.js +21 -0
  93. package/dist/melonjs.mjs/renderable/trigger.js +10 -10
  94. package/dist/melonjs.mjs/renderable/ui/uibaseelement.js +7 -7
  95. package/dist/melonjs.mjs/renderable/ui/uispriteelement.js +7 -7
  96. package/dist/melonjs.mjs/renderable/ui/uitextbutton.js +3 -3
  97. package/dist/melonjs.mjs/state/stage.js +13 -14
  98. package/dist/melonjs.mjs/state/state.js +4 -51
  99. package/dist/melonjs.mjs/system/device.js +51 -10
  100. package/dist/melonjs.mjs/system/dom.js +1 -1
  101. package/dist/melonjs.mjs/system/event.js +46 -2
  102. package/dist/melonjs.mjs/system/platform.js +18 -18
  103. package/dist/melonjs.mjs/system/pooling.js +10 -10
  104. package/dist/melonjs.mjs/system/save.js +1 -1
  105. package/dist/melonjs.mjs/system/timer.js +1 -1
  106. package/dist/melonjs.mjs/text/bitmaptext.js +1 -1
  107. package/dist/melonjs.mjs/text/bitmaptextdata.js +3 -6
  108. package/dist/melonjs.mjs/text/glyph.js +1 -1
  109. package/dist/melonjs.mjs/text/text.js +1 -1
  110. package/dist/melonjs.mjs/text/textmetrics.js +1 -1
  111. package/dist/melonjs.mjs/text/textstyle.js +1 -1
  112. package/dist/melonjs.mjs/tweens/easing.js +1 -1
  113. package/dist/melonjs.mjs/tweens/interpolation.js +1 -1
  114. package/dist/melonjs.mjs/tweens/tween.js +2 -2
  115. package/dist/melonjs.mjs/utils/agent.js +1 -1
  116. package/dist/melonjs.mjs/utils/array.js +1 -1
  117. package/dist/melonjs.mjs/utils/file.js +1 -1
  118. package/dist/melonjs.mjs/utils/function.js +2 -3
  119. package/dist/melonjs.mjs/utils/string.js +1 -1
  120. package/dist/melonjs.mjs/utils/utils.js +1 -1
  121. package/dist/melonjs.mjs/video/canvas/canvas_renderer.js +5 -18
  122. package/dist/melonjs.mjs/video/renderer.js +17 -30
  123. package/dist/melonjs.mjs/video/texture/atlas.js +13 -13
  124. package/dist/melonjs.mjs/video/texture/cache.js +1 -1
  125. package/dist/melonjs.mjs/video/texture/canvas_texture.js +15 -15
  126. package/dist/melonjs.mjs/video/utils/autodetect.js +1 -1
  127. package/dist/melonjs.mjs/video/video.js +5 -29
  128. package/dist/melonjs.mjs/video/webgl/buffer/vertex.js +3 -3
  129. package/dist/melonjs.mjs/video/webgl/compositors/compositor.js +13 -14
  130. package/dist/melonjs.mjs/video/webgl/compositors/primitive_compositor.js +5 -5
  131. package/dist/melonjs.mjs/video/webgl/compositors/quad_compositor.js +2 -3
  132. package/dist/melonjs.mjs/video/webgl/glshader.js +2 -2
  133. package/dist/melonjs.mjs/video/webgl/shaders/primitive.frag.js +1 -1
  134. package/dist/melonjs.mjs/video/webgl/shaders/primitive.vert.js +1 -1
  135. package/dist/melonjs.mjs/video/webgl/shaders/quad.frag.js +1 -1
  136. package/dist/melonjs.mjs/video/webgl/shaders/quad.vert.js +1 -1
  137. package/dist/melonjs.mjs/video/webgl/utils/attributes.js +1 -1
  138. package/dist/melonjs.mjs/video/webgl/utils/precision.js +4 -4
  139. package/dist/melonjs.mjs/video/webgl/utils/program.js +1 -1
  140. package/dist/melonjs.mjs/video/webgl/utils/string.js +1 -1
  141. package/dist/melonjs.mjs/video/webgl/utils/uniforms.js +1 -1
  142. package/dist/melonjs.mjs/video/webgl/webgl_renderer.js +62 -67
  143. package/dist/melonjs.module.js +1272 -1713
  144. package/dist/types/application/application.d.ts +32 -31
  145. package/dist/types/application/header.d.ts +2 -2
  146. package/dist/types/application/settings.d.ts +80 -16
  147. package/dist/types/audio/audio.d.ts +4 -6
  148. package/dist/types/camera/camera2d.d.ts +13 -16
  149. package/dist/types/entity/entity.d.ts +0 -1
  150. package/dist/types/geometries/ellipse.d.ts +18 -50
  151. package/dist/types/geometries/path2d.d.ts +1 -1
  152. package/dist/types/geometries/point.d.ts +5 -13
  153. package/dist/types/geometries/poly.d.ts +26 -75
  154. package/dist/types/geometries/rectangle.d.ts +12 -58
  155. package/dist/types/geometries/roundrect.d.ts +2 -11
  156. package/dist/types/index.d.ts +3 -3
  157. package/dist/types/input/gamepad.d.ts +31 -31
  158. package/dist/types/input/keyboard.d.ts +105 -105
  159. package/dist/types/input/pointer.d.ts +21 -21
  160. package/dist/types/input/pointerevent.d.ts +6 -6
  161. package/dist/types/level/tiled/TMXLayer.d.ts +1 -1
  162. package/dist/types/level/tiled/TMXUtils.d.ts +4 -6
  163. package/dist/types/math/matrix2.d.ts +9 -63
  164. package/dist/types/math/matrix3.d.ts +9 -68
  165. package/dist/types/math/observable_vector2.d.ts +2 -2
  166. package/dist/types/math/observable_vector3.d.ts +2 -2
  167. package/dist/types/math/vector2.d.ts +8 -92
  168. package/dist/types/math/vector3.d.ts +8 -92
  169. package/dist/types/particles/settings.d.ts +29 -29
  170. package/dist/types/physics/body.d.ts +10 -8
  171. package/dist/types/physics/bounds.d.ts +24 -30
  172. package/dist/types/physics/collision.d.ts +12 -12
  173. package/dist/types/physics/detector.d.ts +1 -1
  174. package/dist/types/physics/world.d.ts +4 -7
  175. package/dist/types/renderable/container.d.ts +19 -19
  176. package/dist/types/renderable/imagelayer.d.ts +6 -6
  177. package/dist/types/renderable/light2d.d.ts +7 -7
  178. package/dist/types/renderable/renderable.d.ts +10 -18
  179. package/dist/types/renderable/text/bitmaptext.d.ts +151 -0
  180. package/dist/types/renderable/text/bitmaptextdata.d.ts +35 -0
  181. package/dist/types/renderable/text/glyph.d.ts +28 -0
  182. package/dist/types/renderable/text/text.d.ts +159 -0
  183. package/dist/types/renderable/text/textmetrics.d.ts +47 -0
  184. package/dist/types/renderable/text/textstyle.d.ts +5 -0
  185. package/dist/types/renderable/ui/uibaseelement.d.ts +0 -1
  186. package/dist/types/renderable/ui/uispriteelement.d.ts +0 -1
  187. package/dist/types/renderable/ui/uitextbutton.d.ts +2 -7
  188. package/dist/types/state/stage.d.ts +3 -2
  189. package/dist/types/state/state.d.ts +11 -11
  190. package/dist/types/system/device.d.ts +16 -9
  191. package/dist/types/system/event.d.ts +40 -0
  192. package/dist/types/system/platform.d.ts +17 -17
  193. package/dist/types/utils/function.d.ts +1 -2
  194. package/dist/types/video/canvas/canvas_renderer.d.ts +0 -23
  195. package/dist/types/video/renderer.d.ts +16 -43
  196. package/dist/types/video/texture/canvas_texture.d.ts +14 -14
  197. package/dist/types/video/video.d.ts +4 -38
  198. package/dist/types/video/webgl/buffer/vertex.d.ts +2 -2
  199. package/dist/types/video/webgl/compositors/compositor.d.ts +24 -13
  200. package/dist/types/video/webgl/compositors/primitive_compositor.d.ts +0 -1
  201. package/dist/types/video/webgl/compositors/quad_compositor.d.ts +0 -1
  202. package/dist/types/video/webgl/utils/precision.d.ts +1 -1
  203. package/dist/types/video/webgl/webgl_renderer.d.ts +48 -84
  204. package/package.json +15 -15
  205. package/src/application/application.js +73 -21
  206. package/src/application/header.js +1 -1
  207. package/src/application/resize.js +11 -9
  208. package/src/application/settings.js +36 -0
  209. package/src/audio/audio.js +3 -5
  210. package/src/camera/camera2d.js +11 -13
  211. package/src/entity/entity.js +2 -3
  212. package/src/geometries/ellipse.js +25 -58
  213. package/src/geometries/line.js +17 -24
  214. package/src/geometries/path2d.js +15 -12
  215. package/src/geometries/point.js +7 -15
  216. package/src/geometries/poly.js +39 -96
  217. package/src/geometries/rectangle.js +36 -90
  218. package/src/geometries/roundrect.js +25 -34
  219. package/src/index.js +4 -4
  220. package/src/input/keyboard.js +2 -2
  221. package/src/input/pointer.js +3 -3
  222. package/src/input/pointerevent.js +5 -6
  223. package/src/lang/deprecated.js +1 -1
  224. package/src/level/tiled/TMXLayer.js +15 -32
  225. package/src/level/tiled/TMXObject.js +2 -3
  226. package/src/level/tiled/TMXTile.js +3 -3
  227. package/src/level/tiled/TMXTileMap.js +2 -2
  228. package/src/level/tiled/TMXTileset.js +3 -6
  229. package/src/level/tiled/TMXTilesetGroup.js +1 -1
  230. package/src/level/tiled/TMXUtils.js +36 -46
  231. package/src/level/tiled/renderer/TMXHexagonalRenderer.js +2 -2
  232. package/src/level/tiled/renderer/TMXIsometricRenderer.js +1 -1
  233. package/src/level/tiled/renderer/TMXOrthogonalRenderer.js +1 -1
  234. package/src/level/tiled/renderer/TMXRenderer.js +1 -1
  235. package/src/level/tiled/renderer/TMXStaggeredRenderer.js +1 -1
  236. package/src/loader/parser.js +3 -4
  237. package/src/math/color.js +4 -4
  238. package/src/math/matrix2.js +4 -58
  239. package/src/math/matrix3.js +81 -140
  240. package/src/math/observable_vector2.js +6 -6
  241. package/src/math/observable_vector3.js +4 -4
  242. package/src/math/vector2.js +6 -90
  243. package/src/math/vector3.js +5 -89
  244. package/src/particles/emitter.js +1 -1
  245. package/src/particles/particle.js +1 -1
  246. package/src/physics/body.js +21 -19
  247. package/src/physics/bounds.js +26 -32
  248. package/src/physics/collision.js +4 -4
  249. package/src/physics/detector.js +9 -9
  250. package/src/physics/quadtree.js +4 -4
  251. package/src/physics/sat.js +2 -3
  252. package/src/physics/world.js +5 -8
  253. package/src/polyfill/roundrect.js +163 -163
  254. package/src/renderable/collectable.js +1 -1
  255. package/src/renderable/colorlayer.js +3 -3
  256. package/src/renderable/container.js +24 -24
  257. package/src/renderable/imagelayer.js +3 -3
  258. package/src/renderable/light2d.js +2 -2
  259. package/src/renderable/nineslicesprite.js +1 -1
  260. package/src/renderable/renderable.js +30 -38
  261. package/src/renderable/sprite.js +2 -2
  262. package/src/{text → renderable/text}/bitmaptext.js +8 -8
  263. package/src/{text → renderable/text}/bitmaptextdata.js +4 -7
  264. package/src/{text → renderable/text}/glyph.js +1 -1
  265. package/src/{text → renderable/text}/text.js +16 -17
  266. package/src/{text → renderable/text}/textmetrics.js +2 -2
  267. package/src/renderable/trigger.js +9 -9
  268. package/src/renderable/ui/uibaseelement.js +6 -6
  269. package/src/renderable/ui/uispriteelement.js +6 -6
  270. package/src/renderable/ui/uitextbutton.js +2 -2
  271. package/src/state/stage.js +12 -13
  272. package/src/state/state.js +2 -61
  273. package/src/system/device.js +50 -9
  274. package/src/system/event.js +44 -0
  275. package/src/system/platform.js +18 -18
  276. package/src/system/pooling.js +9 -9
  277. package/src/tweens/tween.js +1 -1
  278. package/src/utils/function.js +1 -2
  279. package/src/video/canvas/canvas_renderer.js +4 -17
  280. package/src/video/renderer.js +16 -29
  281. package/src/video/texture/atlas.js +12 -12
  282. package/src/video/texture/canvas_texture.js +14 -14
  283. package/src/video/video.js +7 -28
  284. package/src/video/webgl/buffer/vertex.js +2 -2
  285. package/src/video/webgl/compositors/compositor.js +12 -13
  286. package/src/video/webgl/compositors/primitive_compositor.js +4 -4
  287. package/src/video/webgl/compositors/quad_compositor.js +1 -2
  288. package/src/video/webgl/glshader.js +1 -1
  289. package/src/video/webgl/utils/precision.js +3 -3
  290. package/src/video/webgl/webgl_renderer.js +61 -66
  291. /package/src/{text → renderable/text}/textstyle.js +0 -0
@@ -14,41 +14,28 @@ export default class Matrix3d {
14
14
  val: Float32Array | undefined;
15
15
  /**
16
16
  * tx component of the matrix
17
- * @public
18
17
  * @type {number}
19
- * @name tx
20
- * @memberof Matrix3d
21
18
  */
22
- public get tx(): number;
19
+ get tx(): number;
23
20
  /**
24
21
  * ty component of the matrix
25
- * @public
26
22
  * @type {number}
27
- * @name ty
28
- * @memberof Matrix3d
29
23
  */
30
- public get ty(): number;
24
+ get ty(): number;
31
25
  /**
32
26
  * ty component of the matrix
33
- * @public
34
27
  * @type {number}
35
- * @name tz
36
- * @memberof Matrix3d
37
28
  */
38
- public get tz(): number;
29
+ get tz(): number;
39
30
  /**
40
31
  * reset the transformation matrix to the identity matrix (no transformation).<br>
41
32
  * the identity matrix and parameters position : <br>
42
33
  * <img src="images/identity-matrix_2x.png"/>
43
- * @name identity
44
- * @memberof Matrix3d
45
34
  * @returns {Matrix3d} Reference to this object for method chaining
46
35
  */
47
36
  identity(): Matrix3d;
48
37
  /**
49
38
  * set the matrix to the specified value
50
- * @name setTransform
51
- * @memberof Matrix3d
52
39
  * @param {number} m00
53
40
  * @param {number} m01
54
41
  * @param {number} m02
@@ -70,63 +57,47 @@ export default class Matrix3d {
70
57
  setTransform(m00: number, m01: number, m02: number, m03: number, m10: number, m11: number, m12: number, m13: number, m20: number, m21: number, m22: number, m23: number, m30: number, m31: number, m32: number, m33: number): Matrix3d;
71
58
  /**
72
59
  * Copies over the values from another me.Matrix3d.
73
- * @name copy
74
- * @memberof Matrix3d
75
60
  * @param {Matrix3d} m - the matrix object to copy from
76
61
  * @returns {Matrix3d} Reference to this object for method chaining
77
62
  */
78
63
  copy(m: Matrix3d): Matrix3d;
79
64
  /**
80
65
  * Copies over the upper-left 2x2 values from the given me.Matrix2d
81
- * @name fromMat2d
82
- * @memberof Matrix3d
83
66
  * @param {Matrix2d} m - the matrix object to copy from
84
67
  * @returns {Matrix2d} Reference to this object for method chaining
85
68
  */
86
69
  fromMat2d(m: Matrix2d): Matrix2d;
87
70
  /**
88
71
  * multiply both matrix
89
- * @name multiply
90
- * @memberof Matrix3d
91
72
  * @param {Matrix3d} m - Other matrix
92
73
  * @returns {Matrix3d} Reference to this object for method chaining
93
74
  */
94
75
  multiply(m: Matrix3d): Matrix3d;
95
76
  /**
96
77
  * Transpose the value of this matrix.
97
- * @name transpose
98
- * @memberof Matrix3d
99
78
  * @returns {Matrix3d} Reference to this object for method chaining
100
79
  */
101
80
  transpose(): Matrix3d;
102
81
  /**
103
82
  * invert this matrix, causing it to apply the opposite transformation.
104
- * @name invert
105
- * @memberof Matrix3d
106
83
  * @returns {Matrix3d} Reference to this object for method chaining
107
84
  */
108
85
  invert(): Matrix3d;
109
86
  /**
110
87
  * apply the current transform to the given 2d or 3d vector
111
- * @name apply
112
- * @memberof Matrix3d
113
88
  * @param {Vector2d|Vector3d} v - the vector object to be transformed
114
89
  * @returns {Vector2d|Vector3d} result vector object.
115
90
  */
116
91
  apply(v: Vector2d | Vector3d): Vector2d | Vector3d;
117
92
  /**
118
- * apply the inverted current transform to the given 2d or 3d vector
119
- * @name applyInverse
120
- * @memberof Matrix3d
121
- * @param {Vector2d|Vector3d} v - the vector object to be transformed
122
- * @returns {Vector2d|Vector3d} result vector object.
123
- */
93
+ * apply the inverted current transform to the given 2d or 3d vector
94
+ * @param {Vector2d|Vector3d} v - the vector object to be transformed
95
+ * @returns {Vector2d|Vector3d} result vector object.
96
+ */
124
97
  applyInverse(v: Vector2d | Vector3d): Vector2d | Vector3d;
125
98
  /**
126
99
  * generate an orthogonal projection matrix, with the result replacing the current matrix
127
100
  * <img src="images/glOrtho.gif"/><br>
128
- * @name ortho
129
- * @memberof Matrix3d
130
101
  * @param {number} left - farthest left on the x-axis
131
102
  * @param {number} right - farthest right on the x-axis
132
103
  * @param {number} bottom - farthest down on the y-axis
@@ -138,8 +109,6 @@ export default class Matrix3d {
138
109
  ortho(left: number, right: number, bottom: number, top: number, near: number, far: number): Matrix3d;
139
110
  /**
140
111
  * scale the matrix
141
- * @name scale
142
- * @memberof Matrix3d
143
112
  * @param {number} x - a number representing the abscissa of the scaling vector.
144
113
  * @param {number} [y=x] - a number representing the ordinate of the scaling vector.
145
114
  * @param {number} [z=0] - a number representing the depth vector
@@ -148,32 +117,24 @@ export default class Matrix3d {
148
117
  scale(x: number, y?: number | undefined, z?: number | undefined): Matrix3d;
149
118
  /**
150
119
  * adds a 2D scaling transformation.
151
- * @name scaleV
152
- * @memberof Matrix3d
153
120
  * @param {Vector2d|Vector3d} v - scaling vector
154
121
  * @returns {Matrix3d} Reference to this object for method chaining
155
122
  */
156
123
  scaleV(v: Vector2d | Vector3d): Matrix3d;
157
124
  /**
158
125
  * specifies a 2D scale operation using the [sx, 1] scaling vector
159
- * @name scaleX
160
- * @memberof Matrix3d
161
126
  * @param {number} x - x scaling vector
162
127
  * @returns {Matrix3d} Reference to this object for method chaining
163
128
  */
164
129
  scaleX(x: number): Matrix3d;
165
130
  /**
166
131
  * specifies a 2D scale operation using the [1,sy] scaling vector
167
- * @name scaleY
168
- * @memberof Matrix3d
169
132
  * @param {number} y - y scaling vector
170
133
  * @returns {Matrix3d} Reference to this object for method chaining
171
134
  */
172
135
  scaleY(y: number): Matrix3d;
173
136
  /**
174
137
  * rotate this matrix (counter-clockwise) by the specified angle (in radians).
175
- * @name rotate
176
- * @memberof Matrix3d
177
138
  * @param {number} angle - Rotation angle in radians.
178
139
  * @param {Vector3d} v - the axis to rotate around
179
140
  * @returns {Matrix3d} Reference to this object for method chaining
@@ -181,55 +142,35 @@ export default class Matrix3d {
181
142
  rotate(angle: number, v: Vector3d): Matrix3d;
182
143
  /**
183
144
  * translate the matrix position using the given vector
184
- * @name translate
185
- * @memberof Matrix3d
186
- * @method
187
- * @param {number} x - a number representing the abscissa of the vector.
188
- * @param {number} [y=x] - a number representing the ordinate of the vector.
145
+ * @param {number|Vector2d|Vector3d} x - a number representing the abscissa of the vector, or a vector object
146
+ * @param {number} [y] - a number representing the ordinate of the vector.
189
147
  * @param {number} [z=0] - a number representing the depth of the vector
190
148
  * @returns {Matrix3d} Reference to this object for method chaining
191
149
  */
192
- /**
193
- * translate the matrix by a vector on the horizontal and vertical axis
194
- * @name translateV
195
- * @memberof Matrix3d
196
- * @param {Vector2d|Vector3d} v - the vector to translate the matrix by
197
- * @returns {Matrix3d} Reference to this object for method chaining
198
- */
199
150
  translate(...args: any[]): Matrix3d;
200
151
  /**
201
152
  * returns true if the matrix is an identity matrix.
202
- * @name isIdentity
203
- * @memberof Matrix3d
204
153
  * @returns {boolean}
205
154
  */
206
155
  isIdentity(): boolean;
207
156
  /**
208
157
  * return true if the two matrices are identical
209
- * @name equals
210
- * @memberof Matrix3d
211
158
  * @param {Matrix3d} m - the other matrix
212
159
  * @returns {boolean} true if both are equals
213
160
  */
214
161
  equals(m: Matrix3d): boolean;
215
162
  /**
216
163
  * Clone the Matrix
217
- * @name clone
218
- * @memberof Matrix3d
219
164
  * @returns {Matrix3d}
220
165
  */
221
166
  clone(): Matrix3d;
222
167
  /**
223
168
  * return an array representation of this Matrix
224
- * @name toArray
225
- * @memberof Matrix3d
226
169
  * @returns {Float32Array}
227
170
  */
228
171
  toArray(): Float32Array;
229
172
  /**
230
173
  * convert the object to a string representation
231
- * @name toString
232
- * @memberof Matrix3d
233
174
  * @returns {string}
234
175
  */
235
176
  toString(): string;
@@ -18,7 +18,7 @@ export default class ObservableVector2d extends Vector2d {
18
18
  /**
19
19
  * @ignore
20
20
  */
21
- onResetEvent(x: number | undefined, y: number | undefined, settings: any): ObservableVector2d;
21
+ onResetEvent(x: number | undefined, y: number | undefined, settings: any): this;
22
22
  public set x(arg: number);
23
23
  /**
24
24
  * x value of the vector
@@ -40,7 +40,7 @@ export default class ObservableVector2d extends Vector2d {
40
40
  public get y(): number;
41
41
  _y: any;
42
42
  /** @ignore */
43
- _set(x: any, y: any): ObservableVector2d;
43
+ _set(x: any, y: any): this;
44
44
  /**
45
45
  * set the vector value without triggering the callback
46
46
  * @name setMuted
@@ -19,7 +19,7 @@ export default class ObservableVector3d extends Vector3d {
19
19
  /**
20
20
  * @ignore
21
21
  */
22
- onResetEvent(x: number | undefined, y: number | undefined, z: number | undefined, settings: any): ObservableVector3d;
22
+ onResetEvent(x: number | undefined, y: number | undefined, z: number | undefined, settings: any): this;
23
23
  public set x(arg: number);
24
24
  /**
25
25
  * x value of the vector
@@ -53,7 +53,7 @@ export default class ObservableVector3d extends Vector3d {
53
53
  /**
54
54
  * @ignore
55
55
  */
56
- _set(x: any, y: any, z: any): ObservableVector3d;
56
+ _set(x: any, y: any, z: any): this;
57
57
  /**
58
58
  * set the vector value without triggering the callback
59
59
  * @name setMuted
@@ -11,17 +11,15 @@ export default class Vector2d {
11
11
  /**
12
12
  * @ignore
13
13
  */
14
- onResetEvent(x?: number, y?: number): Vector2d;
14
+ onResetEvent(x?: number, y?: number): this;
15
15
  x: any;
16
16
  y: any;
17
17
  /**
18
18
  * @ignore
19
19
  */
20
- _set(x: any, y: any): Vector2d;
20
+ _set(x: any, y: any): this;
21
21
  /**
22
22
  * set the Vector x and y properties to the given values<br>
23
- * @name set
24
- * @memberof Vector2d
25
23
  * @param {number} x
26
24
  * @param {number} y
27
25
  * @returns {Vector2d} Reference to this object for method chaining
@@ -29,39 +27,29 @@ export default class Vector2d {
29
27
  set(x: number, y: number): Vector2d;
30
28
  /**
31
29
  * set the Vector x and y properties to 0
32
- * @name setZero
33
- * @memberof Vector2d
34
30
  * @returns {Vector2d} Reference to this object for method chaining
35
31
  */
36
32
  setZero(): Vector2d;
37
33
  /**
38
34
  * set the Vector x and y properties using the passed vector
39
- * @name setV
40
- * @memberof Vector2d
41
35
  * @param {Vector2d} v
42
36
  * @returns {Vector2d} Reference to this object for method chaining
43
37
  */
44
38
  setV(v: Vector2d): Vector2d;
45
39
  /**
46
40
  * Add the passed vector to this vector
47
- * @name add
48
- * @memberof Vector2d
49
41
  * @param {Vector2d} v
50
42
  * @returns {Vector2d} Reference to this object for method chaining
51
43
  */
52
44
  add(v: Vector2d): Vector2d;
53
45
  /**
54
46
  * Substract the passed vector to this vector
55
- * @name sub
56
- * @memberof Vector2d
57
47
  * @param {Vector2d} v
58
48
  * @returns {Vector2d} Reference to this object for method chaining
59
49
  */
60
50
  sub(v: Vector2d): Vector2d;
61
51
  /**
62
52
  * Multiply this vector values by the given scalar
63
- * @name scale
64
- * @memberof Vector2d
65
53
  * @param {number} x
66
54
  * @param {number} [y=x]
67
55
  * @returns {Vector2d} Reference to this object for method chaining
@@ -69,45 +57,33 @@ export default class Vector2d {
69
57
  scale(x: number, y?: number | undefined): Vector2d;
70
58
  /**
71
59
  * Convert this vector into isometric coordinate space
72
- * @name toIso
73
- * @memberof Vector2d
74
60
  * @returns {Vector2d} Reference to this object for method chaining
75
61
  */
76
62
  toIso(): Vector2d;
77
63
  /**
78
64
  * Convert this vector into 2d coordinate space
79
- * @name to2d
80
- * @memberof Vector2d
81
65
  * @returns {Vector2d} Reference to this object for method chaining
82
66
  */
83
67
  to2d(): Vector2d;
84
68
  /**
85
69
  * Multiply this vector values by the passed vector
86
- * @name scaleV
87
- * @memberof Vector2d
88
70
  * @param {Vector2d} v
89
71
  * @returns {Vector2d} Reference to this object for method chaining
90
72
  */
91
73
  scaleV(v: Vector2d): Vector2d;
92
74
  /**
93
75
  * Divide this vector values by the passed value
94
- * @name div
95
- * @memberof Vector2d
96
76
  * @param {number} n - the value to divide the vector by
97
77
  * @returns {Vector2d} Reference to this object for method chaining
98
78
  */
99
79
  div(n: number): Vector2d;
100
80
  /**
101
81
  * Update this vector values to absolute values
102
- * @name abs
103
- * @memberof Vector2d
104
82
  * @returns {Vector2d} Reference to this object for method chaining
105
83
  */
106
84
  abs(): Vector2d;
107
85
  /**
108
86
  * Clamp the vector value within the specified value range
109
- * @name clamp
110
- * @memberof Vector2d
111
87
  * @param {number} low
112
88
  * @param {number} high
113
89
  * @returns {Vector2d} new me.Vector2d
@@ -115,8 +91,6 @@ export default class Vector2d {
115
91
  clamp(low: number, high: number): Vector2d;
116
92
  /**
117
93
  * Clamp this vector value within the specified value range
118
- * @name clampSelf
119
- * @memberof Vector2d
120
94
  * @param {number} low
121
95
  * @param {number} high
122
96
  * @returns {Vector2d} Reference to this object for method chaining
@@ -124,106 +98,72 @@ export default class Vector2d {
124
98
  clampSelf(low: number, high: number): Vector2d;
125
99
  /**
126
100
  * Update this vector with the minimum value between this and the passed vector
127
- * @name minV
128
- * @memberof Vector2d
129
101
  * @param {Vector2d} v
130
102
  * @returns {Vector2d} Reference to this object for method chaining
131
103
  */
132
104
  minV(v: Vector2d): Vector2d;
133
105
  /**
134
106
  * Update this vector with the maximum value between this and the passed vector
135
- * @name maxV
136
- * @memberof Vector2d
137
107
  * @param {Vector2d} v
138
108
  * @returns {Vector2d} Reference to this object for method chaining
139
109
  */
140
110
  maxV(v: Vector2d): Vector2d;
141
111
  /**
142
112
  * Floor the vector values
143
- * @name floor
144
- * @memberof Vector2d
145
113
  * @returns {Vector2d} new me.Vector2d
146
114
  */
147
115
  floor(): Vector2d;
148
116
  /**
149
117
  * Floor this vector values
150
- * @name floorSelf
151
- * @memberof Vector2d
152
118
  * @returns {Vector2d} Reference to this object for method chaining
153
119
  */
154
120
  floorSelf(): Vector2d;
155
121
  /**
156
122
  * Ceil the vector values
157
- * @name ceil
158
- * @memberof Vector2d
159
123
  * @returns {Vector2d} new me.Vector2d
160
124
  */
161
125
  ceil(): Vector2d;
162
126
  /**
163
127
  * Ceil this vector values
164
- * @name ceilSelf
165
- * @memberof Vector2d
166
128
  * @returns {Vector2d} Reference to this object for method chaining
167
129
  */
168
130
  ceilSelf(): Vector2d;
169
131
  /**
170
132
  * Negate the vector values
171
- * @name negate
172
- * @memberof Vector2d
173
133
  * @returns {Vector2d} new me.Vector2d
174
134
  */
175
135
  negate(): Vector2d;
176
136
  /**
177
137
  * Negate this vector values
178
- * @name negateSelf
179
- * @memberof Vector2d
180
138
  * @returns {Vector2d} Reference to this object for method chaining
181
139
  */
182
140
  negateSelf(): Vector2d;
183
141
  /**
184
142
  * Copy the x,y values of the passed vector to this one
185
- * @name copy
186
- * @memberof Vector2d
187
143
  * @param {Vector2d} v
188
144
  * @returns {Vector2d} Reference to this object for method chaining
189
145
  */
190
146
  copy(v: Vector2d): Vector2d;
191
147
  /**
192
- * return true if the two vectors are the same
193
- * @name equals
194
- * @memberof Vector2d
195
- * @method
196
- * @param {Vector2d} v
197
- * @returns {boolean}
198
- */
199
- /**
200
- * return true if this vector is equal to the given values
201
- * @name equals
202
- * @memberof Vector2d
203
- * @param {number} x
204
- * @param {number} y
148
+ * return true if this vector is equal to the given values or vector
149
+ * @param {number|Vector2d|ObservableVector2d} x
150
+ * @param {number} [y]
205
151
  * @returns {boolean}
206
152
  */
207
153
  equals(...args: any[]): boolean;
208
154
  /**
209
155
  * normalize this vector (scale the vector so that its magnitude is 1)
210
- * @name normalize
211
- * @memberof Vector2d
212
156
  * @returns {Vector2d} Reference to this object for method chaining
213
157
  */
214
158
  normalize(): Vector2d;
215
159
  /**
216
160
  * change this vector to be perpendicular to what it was before.<br>
217
161
  * (Effectively rotates it 90 degrees in a clockwise direction)
218
- * @name perp
219
- * @memberof Vector2d
220
162
  * @returns {Vector2d} Reference to this object for method chaining
221
163
  */
222
164
  perp(): Vector2d;
223
165
  /**
224
166
  * Rotate this vector (counter-clockwise) by the specified angle (in radians).
225
- * @name rotate
226
- * @memberof Vector2d
227
167
  * @param {number} angle - The angle to rotate (in radians)
228
168
  * @param {Vector2d|ObservableVector2d} [v] - an optional point to rotate around
229
169
  * @returns {Vector2d} Reference to this object for method chaining
@@ -231,38 +171,28 @@ export default class Vector2d {
231
171
  rotate(angle: number, v?: Vector2d | ObservableVector2d): Vector2d;
232
172
  /**
233
173
  * return the dot product of this vector and the passed one
234
- * @name dot
235
- * @memberof Vector2d
236
174
  * @param {Vector2d} v
237
175
  * @returns {number} The dot product.
238
176
  */
239
177
  dot(v: Vector2d): number;
240
178
  /**
241
179
  * return the cross product of this vector and the passed one
242
- * @name cross
243
- * @memberof Vector2d
244
180
  * @param {Vector2d} v
245
181
  * @returns {number} The cross product.
246
182
  */
247
183
  cross(v: Vector2d): number;
248
184
  /**
249
- * return the square length of this vector
250
- * @name length2
251
- * @memberof Vector2d
252
- * @returns {number} The length^2 of this vector.
253
- */
185
+ * return the square length of this vector
186
+ * @returns {number} The length^2 of this vector.
187
+ */
254
188
  length2(): number;
255
189
  /**
256
190
  * return the length (magnitude) of this vector
257
- * @name length
258
- * @memberof Vector2d
259
191
  * @returns {number} the length of this vector
260
192
  */
261
193
  length(): number;
262
194
  /**
263
195
  * Linearly interpolate between this vector and the given one.
264
- * @name lerp
265
- * @memberof Vector2d
266
196
  * @param {Vector2d} v
267
197
  * @param {number} alpha - distance along the line (alpha = 0 will be this vector, and alpha = 1 will be the given one).
268
198
  * @returns {Vector2d} Reference to this object for method chaining
@@ -270,8 +200,6 @@ export default class Vector2d {
270
200
  lerp(v: Vector2d, alpha: number): Vector2d;
271
201
  /**
272
202
  * interpolate the position of this vector towards the given one by the given maximum step.
273
- * @name moveTowards
274
- * @memberof Vector2d
275
203
  * @param {Vector2d} target
276
204
  * @param {number} step - the maximum step per iteration (Negative values will push the vector away from the target)
277
205
  * @returns {Vector2d} Reference to this object for method chaining
@@ -279,24 +207,18 @@ export default class Vector2d {
279
207
  moveTowards(target: Vector2d, step: number): Vector2d;
280
208
  /**
281
209
  * return the distance between this vector and the passed one
282
- * @name distance
283
- * @memberof Vector2d
284
210
  * @param {Vector2d} v
285
211
  * @returns {number}
286
212
  */
287
213
  distance(v: Vector2d): number;
288
214
  /**
289
215
  * return the angle between this vector and the passed one
290
- * @name angle
291
- * @memberof Vector2d
292
216
  * @param {Vector2d} v
293
217
  * @returns {number} angle in radians
294
218
  */
295
219
  angle(v: Vector2d): number;
296
220
  /**
297
221
  * project this vector on to another vector.
298
- * @name project
299
- * @memberof Vector2d
300
222
  * @param {Vector2d} v - The vector to project onto.
301
223
  * @returns {Vector2d} Reference to this object for method chaining
302
224
  */
@@ -304,23 +226,17 @@ export default class Vector2d {
304
226
  /**
305
227
  * Project this vector onto a vector of unit length.<br>
306
228
  * This is slightly more efficient than `project` when dealing with unit vectors.
307
- * @name projectN
308
- * @memberof Vector2d
309
229
  * @param {Vector2d} v - The unit vector to project onto.
310
230
  * @returns {Vector2d} Reference to this object for method chaining
311
231
  */
312
232
  projectN(v: Vector2d): Vector2d;
313
233
  /**
314
234
  * return a clone copy of this vector
315
- * @name clone
316
- * @memberof Vector2d
317
235
  * @returns {Vector2d} new me.Vector2d
318
236
  */
319
237
  clone(): Vector2d;
320
238
  /**
321
239
  * convert the object to a string representation
322
- * @name toString
323
- * @memberof Vector2d
324
240
  * @returns {string}
325
241
  */
326
242
  toString(): string;