melonjs 15.0.0 → 15.1.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 (285) hide show
  1. package/README.md +4 -4
  2. package/dist/melonjs.mjs/_virtual/_commonjsHelpers.js +1 -1
  3. package/dist/melonjs.mjs/_virtual/arraymultimap.js +1 -1
  4. package/dist/melonjs.mjs/_virtual/earcut.js +1 -1
  5. package/dist/melonjs.mjs/_virtual/howler.js +1 -1
  6. package/dist/melonjs.mjs/_virtual/index.js +7 -3
  7. package/dist/melonjs.mjs/_virtual/index2.js +1 -1
  8. package/dist/melonjs.mjs/_virtual/multimap.js +1 -1
  9. package/dist/melonjs.mjs/_virtual/setmultimap.js +1 -1
  10. package/dist/melonjs.mjs/application/application.js +27 -17
  11. package/dist/melonjs.mjs/application/header.js +6 -5
  12. package/dist/melonjs.mjs/application/resize.js +20 -20
  13. package/dist/melonjs.mjs/application/settings.js +1 -1
  14. package/dist/melonjs.mjs/audio/audio.js +17 -17
  15. package/dist/melonjs.mjs/camera/camera2d.js +10 -10
  16. package/dist/melonjs.mjs/const.js +1 -1
  17. package/dist/melonjs.mjs/entity/entity.js +4 -4
  18. package/dist/melonjs.mjs/geometries/ellipse.js +6 -6
  19. package/dist/melonjs.mjs/geometries/line.js +9 -9
  20. package/dist/melonjs.mjs/geometries/path2d.js +53 -53
  21. package/dist/melonjs.mjs/geometries/point.js +2 -2
  22. package/dist/melonjs.mjs/geometries/poly.js +29 -29
  23. package/dist/melonjs.mjs/geometries/rectangle.js +8 -8
  24. package/dist/melonjs.mjs/geometries/roundrect.js +6 -6
  25. package/dist/melonjs.mjs/index.js +5 -5
  26. package/dist/melonjs.mjs/input/gamepad.js +30 -30
  27. package/dist/melonjs.mjs/input/input.js +2 -2
  28. package/dist/melonjs.mjs/input/keyboard.js +15 -15
  29. package/dist/melonjs.mjs/input/pointer.js +2 -2
  30. package/dist/melonjs.mjs/input/pointerevent.js +58 -58
  31. package/dist/melonjs.mjs/lang/console.js +3 -3
  32. package/dist/melonjs.mjs/lang/deprecated.js +2 -2
  33. package/dist/melonjs.mjs/level/level.js +9 -9
  34. package/dist/melonjs.mjs/level/tiled/TMXGroup.js +3 -3
  35. package/dist/melonjs.mjs/level/tiled/TMXLayer.js +31 -31
  36. package/dist/melonjs.mjs/level/tiled/TMXObject.js +8 -8
  37. package/dist/melonjs.mjs/level/tiled/TMXTile.js +8 -8
  38. package/dist/melonjs.mjs/level/tiled/TMXTileMap.js +19 -19
  39. package/dist/melonjs.mjs/level/tiled/TMXTileset.js +15 -15
  40. package/dist/melonjs.mjs/level/tiled/TMXTilesetGroup.js +3 -3
  41. package/dist/melonjs.mjs/level/tiled/TMXUtils.js +46 -41
  42. package/dist/melonjs.mjs/level/tiled/constants.js +1 -1
  43. package/dist/melonjs.mjs/level/tiled/renderer/TMXHexagonalRenderer.js +30 -30
  44. package/dist/melonjs.mjs/level/tiled/renderer/TMXIsometricRenderer.js +21 -21
  45. package/dist/melonjs.mjs/level/tiled/renderer/TMXOrthogonalRenderer.js +10 -10
  46. package/dist/melonjs.mjs/level/tiled/renderer/TMXRenderer.js +2 -2
  47. package/dist/melonjs.mjs/level/tiled/renderer/TMXStaggeredRenderer.js +6 -6
  48. package/dist/melonjs.mjs/level/tiled/renderer/autodetect.js +1 -1
  49. package/dist/melonjs.mjs/loader/cache.js +1 -1
  50. package/dist/melonjs.mjs/loader/loader.js +7 -7
  51. package/dist/melonjs.mjs/loader/loadingscreen.js +2 -2
  52. package/dist/melonjs.mjs/loader/melonjs_logo.png.js +1 -1
  53. package/dist/melonjs.mjs/loader/parser.js +13 -13
  54. package/dist/melonjs.mjs/loader/settings.js +3 -3
  55. package/dist/melonjs.mjs/math/color.js +21 -21
  56. package/dist/melonjs.mjs/math/math.js +2 -2
  57. package/dist/melonjs.mjs/math/matrix2.js +22 -22
  58. package/dist/melonjs.mjs/math/matrix3.js +52 -52
  59. package/dist/melonjs.mjs/math/observable_vector2.js +12 -12
  60. package/dist/melonjs.mjs/math/observable_vector3.js +22 -22
  61. package/dist/melonjs.mjs/math/vector2.js +11 -11
  62. package/dist/melonjs.mjs/math/vector3.js +21 -21
  63. package/dist/melonjs.mjs/node_modules/@teppeis/multimaps/dist/esm/arraymultimap.js +45 -0
  64. package/dist/melonjs.mjs/node_modules/@teppeis/multimaps/dist/esm/multimap.js +130 -0
  65. package/dist/melonjs.mjs/node_modules/@teppeis/multimaps/dist/src/arraymultimap.js +1 -1
  66. package/dist/melonjs.mjs/node_modules/@teppeis/multimaps/dist/src/index.js +1 -1
  67. package/dist/melonjs.mjs/node_modules/@teppeis/multimaps/dist/src/multimap.js +1 -1
  68. package/dist/melonjs.mjs/node_modules/@teppeis/multimaps/dist/src/setmultimap.js +1 -1
  69. package/dist/melonjs.mjs/node_modules/earcut/src/earcut.js +1 -1
  70. package/dist/melonjs.mjs/node_modules/eventemitter3/index.js +2 -2
  71. package/dist/melonjs.mjs/node_modules/eventemitter3/index2.js +1 -1
  72. package/dist/melonjs.mjs/node_modules/howler/dist/howler.js +1 -1
  73. package/dist/melonjs.mjs/particles/emitter.js +5 -5
  74. package/dist/melonjs.mjs/particles/particle.js +8 -8
  75. package/dist/melonjs.mjs/particles/settings.js +3 -3
  76. package/dist/melonjs.mjs/physics/body.js +17 -17
  77. package/dist/melonjs.mjs/physics/bounds.js +12 -12
  78. package/dist/melonjs.mjs/physics/collision.js +3 -3
  79. package/dist/melonjs.mjs/physics/detector.js +14 -14
  80. package/dist/melonjs.mjs/physics/quadtree.js +19 -19
  81. package/dist/melonjs.mjs/physics/response.js +1 -1
  82. package/dist/melonjs.mjs/physics/sat.js +60 -60
  83. package/dist/melonjs.mjs/physics/world.js +4 -4
  84. package/dist/melonjs.mjs/plugin/plugin.js +11 -11
  85. package/dist/melonjs.mjs/renderable/collectable.js +2 -2
  86. package/dist/melonjs.mjs/renderable/colorlayer.js +1 -1
  87. package/dist/melonjs.mjs/renderable/container.js +77 -59
  88. package/dist/melonjs.mjs/renderable/dragndrop.js +5 -5
  89. package/dist/melonjs.mjs/renderable/imagelayer.js +7 -6
  90. package/dist/melonjs.mjs/renderable/light2d.js +6 -6
  91. package/dist/melonjs.mjs/renderable/nineslicesprite.js +12 -12
  92. package/dist/melonjs.mjs/renderable/renderable.js +11 -11
  93. package/dist/melonjs.mjs/renderable/sprite.js +25 -25
  94. package/dist/melonjs.mjs/renderable/trigger.js +11 -9
  95. package/dist/melonjs.mjs/renderable/ui/uibaseelement.js +97 -27
  96. package/dist/melonjs.mjs/renderable/ui/uispriteelement.js +25 -25
  97. package/dist/melonjs.mjs/renderable/ui/uitextbutton.js +83 -63
  98. package/dist/melonjs.mjs/state/stage.js +7 -7
  99. package/dist/melonjs.mjs/state/state.js +15 -15
  100. package/dist/melonjs.mjs/system/device.js +2 -2
  101. package/dist/melonjs.mjs/system/dom.js +1 -1
  102. package/dist/melonjs.mjs/system/event.js +2 -2
  103. package/dist/melonjs.mjs/system/platform.js +1 -1
  104. package/dist/melonjs.mjs/system/pooling.js +9 -9
  105. package/dist/melonjs.mjs/system/save.js +6 -6
  106. package/dist/melonjs.mjs/system/timer.js +16 -12
  107. package/dist/melonjs.mjs/text/bitmaptext.js +20 -20
  108. package/dist/melonjs.mjs/text/bitmaptextdata.js +22 -22
  109. package/dist/melonjs.mjs/text/glyph.js +3 -3
  110. package/dist/melonjs.mjs/text/text.js +10 -9
  111. package/dist/melonjs.mjs/text/textmetrics.js +15 -15
  112. package/dist/melonjs.mjs/text/textstyle.js +1 -1
  113. package/dist/melonjs.mjs/tweens/easing.js +4 -4
  114. package/dist/melonjs.mjs/tweens/interpolation.js +8 -8
  115. package/dist/melonjs.mjs/tweens/tween.js +11 -11
  116. package/dist/melonjs.mjs/utils/agent.js +6 -6
  117. package/dist/melonjs.mjs/utils/array.js +4 -4
  118. package/dist/melonjs.mjs/utils/file.js +1 -1
  119. package/dist/melonjs.mjs/utils/function.js +5 -5
  120. package/dist/melonjs.mjs/utils/string.js +3 -3
  121. package/dist/melonjs.mjs/utils/utils.js +16 -16
  122. package/dist/melonjs.mjs/video/canvas/canvas_renderer.js +35 -109
  123. package/dist/melonjs.mjs/video/renderer.js +74 -7
  124. package/dist/melonjs.mjs/video/texture/atlas.js +37 -37
  125. package/dist/melonjs.mjs/video/texture/cache.js +9 -10
  126. package/dist/melonjs.mjs/video/texture/canvas_texture.js +63 -3
  127. package/dist/melonjs.mjs/video/utils/autodetect.js +1 -1
  128. package/dist/melonjs.mjs/video/video.js +2 -2
  129. package/dist/melonjs.mjs/video/webgl/buffer/vertex.js +3 -3
  130. package/dist/melonjs.mjs/video/webgl/compositors/compositor.js +5 -5
  131. package/dist/melonjs.mjs/video/webgl/compositors/primitive_compositor.js +5 -5
  132. package/dist/melonjs.mjs/video/webgl/compositors/quad_compositor.js +18 -15
  133. package/dist/melonjs.mjs/video/webgl/glshader.js +7 -7
  134. package/dist/melonjs.mjs/video/webgl/shaders/primitive.frag.js +1 -1
  135. package/dist/melonjs.mjs/video/webgl/shaders/primitive.vert.js +1 -1
  136. package/dist/melonjs.mjs/video/webgl/shaders/quad.frag.js +1 -1
  137. package/dist/melonjs.mjs/video/webgl/shaders/quad.vert.js +1 -1
  138. package/dist/melonjs.mjs/video/webgl/utils/attributes.js +2 -2
  139. package/dist/melonjs.mjs/video/webgl/utils/precision.js +1 -1
  140. package/dist/melonjs.mjs/video/webgl/utils/program.js +7 -7
  141. package/dist/melonjs.mjs/video/webgl/utils/string.js +1 -1
  142. package/dist/melonjs.mjs/video/webgl/utils/uniforms.js +4 -4
  143. package/dist/melonjs.mjs/video/webgl/webgl_renderer.js +55 -38
  144. package/dist/melonjs.module.js +1747 -1809
  145. package/dist/types/application/application.d.ts +11 -8
  146. package/dist/types/audio/audio.d.ts +3 -3
  147. package/dist/types/index.d.ts +4 -3
  148. package/dist/types/input/input.d.ts +1 -1
  149. package/dist/types/input/keyboard.d.ts +1 -1
  150. package/dist/types/input/pointerevent.d.ts +6 -6
  151. package/dist/types/level/level.d.ts +2 -2
  152. package/dist/types/level/tiled/TMXLayer.d.ts +4 -4
  153. package/dist/types/level/tiled/TMXTileMap.d.ts +2 -2
  154. package/dist/types/level/tiled/TMXUtils.d.ts +5 -4
  155. package/dist/types/loader/loader.d.ts +2 -2
  156. package/dist/types/loader/settings.d.ts +2 -2
  157. package/dist/types/particles/emitter.d.ts +1 -1
  158. package/dist/types/physics/collision.d.ts +1 -1
  159. package/dist/types/physics/detector.d.ts +1 -1
  160. package/dist/types/plugin/plugin.d.ts +2 -2
  161. package/dist/types/renderable/container.d.ts +21 -17
  162. package/dist/types/renderable/sprite.d.ts +11 -11
  163. package/dist/types/renderable/trigger.d.ts +1 -1
  164. package/dist/types/renderable/ui/uibaseelement.d.ts +28 -6
  165. package/dist/types/renderable/ui/uispriteelement.d.ts +12 -14
  166. package/dist/types/renderable/ui/uitextbutton.d.ts +52 -11
  167. package/dist/types/state/stage.d.ts +1 -1
  168. package/dist/types/system/device.d.ts +1 -1
  169. package/dist/types/system/pooling.d.ts +3 -3
  170. package/dist/types/system/timer.d.ts +5 -5
  171. package/dist/types/text/bitmaptext.d.ts +1 -1
  172. package/dist/types/text/text.d.ts +1 -1
  173. package/dist/types/utils/array.d.ts +2 -2
  174. package/dist/types/video/canvas/canvas_renderer.d.ts +8 -76
  175. package/dist/types/video/renderer.d.ts +48 -0
  176. package/dist/types/video/texture/atlas.d.ts +3 -3
  177. package/dist/types/video/texture/canvas_texture.d.ts +40 -0
  178. package/dist/types/video/webgl/glshader.d.ts +1 -1
  179. package/dist/types/video/webgl/webgl_renderer.d.ts +13 -9
  180. package/package.json +14 -14
  181. package/src/application/application.js +26 -16
  182. package/src/application/header.js +5 -4
  183. package/src/application/resize.js +19 -19
  184. package/src/audio/audio.js +16 -16
  185. package/src/camera/camera2d.js +9 -9
  186. package/src/entity/entity.js +3 -3
  187. package/src/geometries/ellipse.js +5 -5
  188. package/src/geometries/line.js +8 -8
  189. package/src/geometries/path2d.js +52 -52
  190. package/src/geometries/point.js +1 -1
  191. package/src/geometries/poly.js +28 -28
  192. package/src/geometries/rectangle.js +7 -7
  193. package/src/geometries/roundrect.js +5 -5
  194. package/src/index.js +3 -2
  195. package/src/input/gamepad.js +29 -29
  196. package/src/input/input.js +1 -1
  197. package/src/input/keyboard.js +14 -14
  198. package/src/input/pointer.js +1 -1
  199. package/src/input/pointerevent.js +52 -52
  200. package/src/lang/console.js +2 -2
  201. package/src/lang/deprecated.js +1 -1
  202. package/src/level/level.js +8 -8
  203. package/src/level/tiled/TMXGroup.js +2 -2
  204. package/src/level/tiled/TMXLayer.js +30 -30
  205. package/src/level/tiled/TMXObject.js +7 -7
  206. package/src/level/tiled/TMXTile.js +7 -7
  207. package/src/level/tiled/TMXTileMap.js +18 -18
  208. package/src/level/tiled/TMXTileset.js +14 -14
  209. package/src/level/tiled/TMXTilesetGroup.js +2 -2
  210. package/src/level/tiled/TMXUtils.js +45 -40
  211. package/src/level/tiled/renderer/TMXHexagonalRenderer.js +29 -29
  212. package/src/level/tiled/renderer/TMXIsometricRenderer.js +20 -20
  213. package/src/level/tiled/renderer/TMXOrthogonalRenderer.js +9 -9
  214. package/src/level/tiled/renderer/TMXRenderer.js +1 -1
  215. package/src/level/tiled/renderer/TMXStaggeredRenderer.js +5 -5
  216. package/src/loader/loader.js +6 -6
  217. package/src/loader/loadingscreen.js +1 -1
  218. package/src/loader/parser.js +12 -12
  219. package/src/loader/settings.js +2 -2
  220. package/src/math/color.js +20 -20
  221. package/src/math/math.js +1 -1
  222. package/src/math/matrix2.js +21 -21
  223. package/src/math/matrix3.js +51 -51
  224. package/src/math/observable_vector2.js +11 -11
  225. package/src/math/observable_vector3.js +21 -21
  226. package/src/math/vector2.js +10 -10
  227. package/src/math/vector3.js +20 -20
  228. package/src/particles/emitter.js +4 -4
  229. package/src/particles/particle.js +7 -7
  230. package/src/particles/settings.js +2 -2
  231. package/src/physics/body.js +16 -16
  232. package/src/physics/bounds.js +11 -11
  233. package/src/physics/collision.js +2 -2
  234. package/src/physics/detector.js +13 -13
  235. package/src/physics/quadtree.js +18 -18
  236. package/src/physics/sat.js +59 -59
  237. package/src/physics/world.js +3 -3
  238. package/src/plugin/plugin.js +8 -8
  239. package/src/renderable/collectable.js +1 -1
  240. package/src/renderable/container.js +76 -58
  241. package/src/renderable/dragndrop.js +4 -4
  242. package/src/renderable/imagelayer.js +6 -5
  243. package/src/renderable/light2d.js +5 -5
  244. package/src/renderable/nineslicesprite.js +11 -11
  245. package/src/renderable/renderable.js +10 -10
  246. package/src/renderable/sprite.js +24 -24
  247. package/src/renderable/trigger.js +10 -8
  248. package/src/renderable/ui/uibaseelement.js +96 -26
  249. package/src/renderable/ui/uispriteelement.js +24 -24
  250. package/src/renderable/ui/uitextbutton.js +85 -65
  251. package/src/state/stage.js +6 -6
  252. package/src/state/state.js +14 -14
  253. package/src/system/device.js +1 -1
  254. package/src/system/event.js +1 -1
  255. package/src/system/pooling.js +8 -8
  256. package/src/system/save.js +5 -5
  257. package/src/system/timer.js +15 -11
  258. package/src/text/bitmaptext.js +19 -19
  259. package/src/text/bitmaptextdata.js +21 -21
  260. package/src/text/glyph.js +2 -2
  261. package/src/text/text.js +9 -8
  262. package/src/text/textmetrics.js +14 -14
  263. package/src/tweens/easing.js +3 -3
  264. package/src/tweens/interpolation.js +7 -7
  265. package/src/tweens/tween.js +10 -10
  266. package/src/utils/agent.js +5 -5
  267. package/src/utils/array.js +3 -3
  268. package/src/utils/function.js +4 -4
  269. package/src/utils/string.js +2 -2
  270. package/src/utils/utils.js +15 -15
  271. package/src/video/canvas/canvas_renderer.js +34 -108
  272. package/src/video/renderer.js +72 -5
  273. package/src/video/texture/atlas.js +36 -36
  274. package/src/video/texture/cache.js +6 -6
  275. package/src/video/texture/canvas_texture.js +62 -2
  276. package/src/video/video.js +1 -1
  277. package/src/video/webgl/buffer/vertex.js +2 -2
  278. package/src/video/webgl/compositors/compositor.js +4 -4
  279. package/src/video/webgl/compositors/primitive_compositor.js +4 -4
  280. package/src/video/webgl/compositors/quad_compositor.js +17 -14
  281. package/src/video/webgl/glshader.js +6 -6
  282. package/src/video/webgl/utils/attributes.js +1 -1
  283. package/src/video/webgl/utils/program.js +6 -6
  284. package/src/video/webgl/utils/uniforms.js +3 -3
  285. package/src/video/webgl/webgl_renderer.js +54 -37
@@ -95,7 +95,7 @@ import Matrix3d from "./matrix3.js";
95
95
  * @returns {Matrix2d} Reference to this object for method chaining
96
96
  */
97
97
  setTransform() {
98
- var a = this.val;
98
+ let a = this.val;
99
99
 
100
100
  if (arguments.length === 9) {
101
101
  a[0] = arguments[0]; // a - m00
@@ -142,8 +142,8 @@ import Matrix3d from "./matrix3.js";
142
142
  * @returns {Matrix2d} Reference to this object for method chaining
143
143
  */
144
144
  fromMat3d(m) {
145
- var b = m.val;
146
- var a = this.val;
145
+ let b = m.val;
146
+ let a = this.val;
147
147
 
148
148
  a[0] = b[0];
149
149
  a[1] = b[1];
@@ -166,8 +166,8 @@ import Matrix3d from "./matrix3.js";
166
166
  * @returns {Matrix2d} Reference to this object for method chaining
167
167
  */
168
168
  multiply(m) {
169
- var b = m.val;
170
- var a = this.val,
169
+ let b = m.val;
170
+ let a = this.val,
171
171
  a0 = a[0],
172
172
  a1 = a[1],
173
173
  a3 = a[3],
@@ -196,7 +196,7 @@ import Matrix3d from "./matrix3.js";
196
196
  * @returns {Matrix2d} Reference to this object for method chaining
197
197
  */
198
198
  transpose() {
199
- var a = this.val,
199
+ let a = this.val,
200
200
  a1 = a[1],
201
201
  a2 = a[2],
202
202
  a5 = a[5];
@@ -218,17 +218,17 @@ import Matrix3d from "./matrix3.js";
218
218
  * @returns {Matrix2d} Reference to this object for method chaining
219
219
  */
220
220
  invert() {
221
- var val = this.val;
221
+ let val = this.val;
222
222
 
223
- var a = val[ 0 ], b = val[ 1 ], c = val[ 2 ],
223
+ let a = val[ 0 ], b = val[ 1 ], c = val[ 2 ],
224
224
  d = val[ 3 ], e = val[ 4 ], f = val[ 5 ],
225
225
  g = val[ 6 ], h = val[ 7 ], i = val[ 8 ];
226
226
 
227
- var ta = i * e - f * h,
227
+ let ta = i * e - f * h,
228
228
  td = f * g - i * d,
229
229
  tg = h * d - e * g;
230
230
 
231
- var n = a * ta + b * td + c * tg;
231
+ let n = a * ta + b * td + c * tg;
232
232
 
233
233
  val[ 0 ] = ta / n;
234
234
  val[ 1 ] = ( c * h - i * b ) / n;
@@ -253,7 +253,7 @@ import Matrix3d from "./matrix3.js";
253
253
  * @returns {Vector2d|Vector3d} result vector object.
254
254
  */
255
255
  apply(v) {
256
- var a = this.val,
256
+ let a = this.val,
257
257
  x = v.x,
258
258
  y = v.y,
259
259
  z = (typeof v.z !== "undefined") ? v.z : 1;
@@ -276,11 +276,11 @@ import Matrix3d from "./matrix3.js";
276
276
  * @returns {Vector2d} result vector object.
277
277
  */
278
278
  applyInverse(v) {
279
- var a = this.val,
279
+ let a = this.val,
280
280
  x = v.x,
281
281
  y = v.y;
282
282
 
283
- var invD = 1 / ((a[0] * a[4]) + (a[3] * -a[1]));
283
+ let invD = 1 / ((a[0] * a[4]) + (a[3] * -a[1]));
284
284
 
285
285
  v.x = (a[4] * invD * x) + (-a[3] * invD * y) + (((a[7] * a[3]) - (a[6] * a[4])) * invD);
286
286
  v.y = (a[0] * invD * y) + (-a[1] * invD * x) + (((-a[7] * a[0]) + (a[6] * a[1])) * invD);
@@ -297,7 +297,7 @@ import Matrix3d from "./matrix3.js";
297
297
  * @returns {Matrix2d} Reference to this object for method chaining
298
298
  */
299
299
  scale(x, y = x) {
300
- var a = this.val;
300
+ let a = this.val;
301
301
 
302
302
  a[0] *= x;
303
303
  a[1] *= x;
@@ -349,7 +349,7 @@ import Matrix3d from "./matrix3.js";
349
349
  */
350
350
  rotate(angle) {
351
351
  if (angle !== 0) {
352
- var a = this.val,
352
+ let a = this.val,
353
353
  a00 = a[0],
354
354
  a01 = a[1],
355
355
  a02 = a[2],
@@ -387,8 +387,8 @@ import Matrix3d from "./matrix3.js";
387
387
  * @returns {Matrix2d} Reference to this object for method chaining
388
388
  */
389
389
  translate() {
390
- var a = this.val;
391
- var _x, _y;
390
+ let a = this.val;
391
+ let _x, _y;
392
392
 
393
393
  if (arguments.length === 2) {
394
394
  // x, y
@@ -413,7 +413,7 @@ import Matrix3d from "./matrix3.js";
413
413
  * @returns {boolean}
414
414
  */
415
415
  isIdentity() {
416
- var a = this.val;
416
+ let a = this.val;
417
417
 
418
418
  return (
419
419
  a[0] === 1 &&
@@ -436,8 +436,8 @@ import Matrix3d from "./matrix3.js";
436
436
  * @returns {boolean} true if both are equals
437
437
  */
438
438
  equals(m) {
439
- var b = m.val;
440
- var a = this.val;
439
+ let b = m.val;
440
+ let a = this.val;
441
441
 
442
442
  return (
443
443
  (a[0] === b[0]) &&
@@ -479,7 +479,7 @@ import Matrix3d from "./matrix3.js";
479
479
  * @returns {string}
480
480
  */
481
481
  toString() {
482
- var a = this.val;
482
+ let a = this.val;
483
483
 
484
484
  return "me.Matrix2d(" +
485
485
  a[0] + ", " + a[1] + ", " + a[2] + ", " +
@@ -105,7 +105,7 @@ import { EPSILON } from "./math.js";
105
105
  * @returns {Matrix3d} Reference to this object for method chaining
106
106
  */
107
107
  setTransform(m00, m01, m02, m03, m10, m11, m12, m13, m20, m21, m22, m23, m30, m31, m32, m33) {
108
- var a = this.val;
108
+ let a = this.val;
109
109
 
110
110
  a[0] = m00;
111
111
  a[1] = m01;
@@ -147,7 +147,7 @@ import { EPSILON } from "./math.js";
147
147
  * @returns {Matrix2d} Reference to this object for method chaining
148
148
  */
149
149
  fromMat2d(m) {
150
- var b = m.val;
150
+ let b = m.val;
151
151
  return this.setTransform(
152
152
  b[0], b[3], b[6], 0,
153
153
  b[1], b[4], b[7], 0,
@@ -165,14 +165,14 @@ import { EPSILON } from "./math.js";
165
165
  * @returns {Matrix3d} Reference to this object for method chaining
166
166
  */
167
167
  multiply(m) {
168
- var a = this.val;
169
- var b = m.val;
168
+ let a = this.val;
169
+ let b = m.val;
170
170
 
171
- var a00 = a[0], a01 = a[1], a02 = a[2], a03 = a[3];
172
- var a10 = a[4], a11 = a[5], a12 = a[6], a13 = a[7];
173
- var a20 = a[8], a21 = a[9], a22 = a[10], a23 = a[11];
174
- var a30 = a[12], a31 = a[13], a32 = a[14], a33 = a[15];
175
- var b0 = b[0], b1 = b[1], b2 = b[2], b3 = b[3];
171
+ let a00 = a[0], a01 = a[1], a02 = a[2], a03 = a[3];
172
+ let a10 = a[4], a11 = a[5], a12 = a[6], a13 = a[7];
173
+ let a20 = a[8], a21 = a[9], a22 = a[10], a23 = a[11];
174
+ let a30 = a[12], a31 = a[13], a32 = a[14], a33 = a[15];
175
+ let b0 = b[0], b1 = b[1], b2 = b[2], b3 = b[3];
176
176
 
177
177
  a[0] = b0 * a00 + b1 * a10 + b2 * a20 + b3 * a30;
178
178
  a[1] = b0 * a01 + b1 * a11 + b2 * a21 + b3 * a31;
@@ -219,7 +219,7 @@ import { EPSILON } from "./math.js";
219
219
  * @returns {Matrix3d} Reference to this object for method chaining
220
220
  */
221
221
  transpose() {
222
- var a = this.val,
222
+ let a = this.val,
223
223
  a01 = a[1],
224
224
  a02 = a[2],
225
225
  a03 = a[3],
@@ -250,30 +250,30 @@ import { EPSILON } from "./math.js";
250
250
  * @returns {Matrix3d} Reference to this object for method chaining
251
251
  */
252
252
  invert() {
253
- var a = this.val;
253
+ let a = this.val;
254
254
 
255
- var a00 = a[0], a01 = a[1], a02 = a[2], a03 = a[3];
256
- var a10 = a[4], a11 = a[5], a12 = a[6], a13 = a[7];
257
- var a20 = a[8], a21 = a[9], a22 = a[10], a23 = a[11];
258
- var a30 = a[12], a31 = a[13], a32 = a[14], a33 = a[15];
255
+ let a00 = a[0], a01 = a[1], a02 = a[2], a03 = a[3];
256
+ let a10 = a[4], a11 = a[5], a12 = a[6], a13 = a[7];
257
+ let a20 = a[8], a21 = a[9], a22 = a[10], a23 = a[11];
258
+ let a30 = a[12], a31 = a[13], a32 = a[14], a33 = a[15];
259
259
 
260
- var b00 = a00 * a11 - a01 * a10;
261
- var b01 = a00 * a12 - a02 * a10;
262
- var b02 = a00 * a13 - a03 * a10;
263
- var b03 = a01 * a12 - a02 * a11;
260
+ let b00 = a00 * a11 - a01 * a10;
261
+ let b01 = a00 * a12 - a02 * a10;
262
+ let b02 = a00 * a13 - a03 * a10;
263
+ let b03 = a01 * a12 - a02 * a11;
264
264
 
265
- var b04 = a01 * a13 - a03 * a11;
266
- var b05 = a02 * a13 - a03 * a12;
267
- var b06 = a20 * a31 - a21 * a30;
268
- var b07 = a20 * a32 - a22 * a30;
265
+ let b04 = a01 * a13 - a03 * a11;
266
+ let b05 = a02 * a13 - a03 * a12;
267
+ let b06 = a20 * a31 - a21 * a30;
268
+ let b07 = a20 * a32 - a22 * a30;
269
269
 
270
- var b08 = a20 * a33 - a23 * a30;
271
- var b09 = a21 * a32 - a22 * a31;
272
- var b10 = a21 * a33 - a23 * a31;
273
- var b11 = a22 * a33 - a23 * a32;
270
+ let b08 = a20 * a33 - a23 * a30;
271
+ let b09 = a21 * a32 - a22 * a31;
272
+ let b10 = a21 * a33 - a23 * a31;
273
+ let b11 = a22 * a33 - a23 * a32;
274
274
 
275
275
  // Calculate the determinant
276
- var det = b00 * b11 - b01 * b10 + b02 * b09 + b03 * b08 - b04 * b07 + b05 * b06;
276
+ let det = b00 * b11 - b01 * b10 + b02 * b09 + b03 * b08 - b04 * b07 + b05 * b06;
277
277
 
278
278
  if (!det)
279
279
  {
@@ -310,12 +310,12 @@ import { EPSILON } from "./math.js";
310
310
  * @returns {Vector2d|Vector3d} result vector object.
311
311
  */
312
312
  apply(v) {
313
- var a = this.val,
313
+ let a = this.val,
314
314
  x = v.x,
315
315
  y = v.y,
316
316
  z = (typeof v.z !== "undefined") ? v.z : 1;
317
317
 
318
- var w = (a[3] * x + a[7] * y + a[11] * z + a[15]) || 1.0;
318
+ let w = (a[3] * x + a[7] * y + a[11] * z + a[15]) || 1.0;
319
319
 
320
320
  v.x = (a[0] * x + a[4] * y + a[8] * z + a[12]) / w;
321
321
  v.y = (a[1] * x + a[5] * y + a[9] * z + a[13]) / w;
@@ -336,7 +336,7 @@ import { EPSILON } from "./math.js";
336
336
  */
337
337
  applyInverse(v) {
338
338
  // invert the current matrix
339
- var im = pool.pull("Matrix3d", this).invert();
339
+ let im = pool.pull("Matrix3d", this).invert();
340
340
 
341
341
  // apply the inverted matrix
342
342
  im.apply(v);
@@ -360,10 +360,10 @@ import { EPSILON } from "./math.js";
360
360
  * @returns {Matrix3d} Reference to this object for method chaining
361
361
  */
362
362
  ortho(left, right, bottom, top, near, far) {
363
- var a = this.val;
364
- var leftRight = 1.0 / (left - right);
365
- var bottomTop = 1.0 / (bottom - top);
366
- var nearFar = 1.0 / (near - far);
363
+ let a = this.val;
364
+ let leftRight = 1.0 / (left - right);
365
+ let bottomTop = 1.0 / (bottom - top);
366
+ let nearFar = 1.0 / (near - far);
367
367
 
368
368
  a[0] = -2.0 * leftRight;
369
369
  a[1] = 0.0;
@@ -395,7 +395,7 @@ import { EPSILON } from "./math.js";
395
395
  * @returns {Matrix3d} Reference to this object for method chaining
396
396
  */
397
397
  scale(x, y = x, z = 0) {
398
- var a = this.val;
398
+ let a = this.val;
399
399
 
400
400
  a[0] = a[0] * x;
401
401
  a[1] = a[1] * x;
@@ -458,20 +458,20 @@ import { EPSILON } from "./math.js";
458
458
  */
459
459
  rotate(angle, v) {
460
460
  if (angle !== 0) {
461
- var a = this.val,
461
+ let a = this.val,
462
462
  x = v.x,
463
463
  y = v.y,
464
464
  z = v.z;
465
465
 
466
- var len = Math.sqrt(x * x + y * y + z * z);
466
+ let len = Math.sqrt(x * x + y * y + z * z);
467
467
 
468
- var s, c, t;
469
- var a00, a01, a02, a03;
470
- var a10, a11, a12, a13;
471
- var a20, a21, a22, a23;
472
- var b00, b01, b02;
473
- var b10, b11, b12;
474
- var b20, b21, b22;
468
+ let s, c, t;
469
+ let a00, a01, a02, a03;
470
+ let a10, a11, a12, a13;
471
+ let a20, a21, a22, a23;
472
+ let b00, b01, b02;
473
+ let b10, b11, b12;
474
+ let b20, b21, b22;
475
475
 
476
476
  if (len < EPSILON) {
477
477
  return null;
@@ -545,8 +545,8 @@ import { EPSILON } from "./math.js";
545
545
  * @returns {Matrix3d} Reference to this object for method chaining
546
546
  */
547
547
  translate() {
548
- var a = this.val;
549
- var _x, _y, _z;
548
+ let a = this.val;
549
+ let _x, _y, _z;
550
550
 
551
551
  if (arguments.length > 1 ) {
552
552
  // x, y (, z)
@@ -575,7 +575,7 @@ import { EPSILON } from "./math.js";
575
575
  * @returns {boolean}
576
576
  */
577
577
  isIdentity() {
578
- var a = this.val;
578
+ let a = this.val;
579
579
 
580
580
  return (
581
581
  (a[0] === 1) &&
@@ -605,8 +605,8 @@ import { EPSILON } from "./math.js";
605
605
  * @returns {boolean} true if both are equals
606
606
  */
607
607
  equals(m) {
608
- var b = m.val;
609
- var a = this.val;
608
+ let b = m.val;
609
+ let a = this.val;
610
610
 
611
611
  return (
612
612
  (a[0] === b[0]) &&
@@ -655,7 +655,7 @@ import { EPSILON } from "./math.js";
655
655
  * @returns {string}
656
656
  */
657
657
  toString() {
658
- var a = this.val;
658
+ let a = this.val;
659
659
 
660
660
  return "me.Matrix3d(" +
661
661
  a[0] + ", " + a[1] + ", " + a[2] + ", " + a[3] + ", " +
@@ -50,7 +50,7 @@ import {clamp} from "./math.js";
50
50
  }
51
51
 
52
52
  set x(value) {
53
- var ret = this.onUpdate.call(this.scope, value, this._y, this._x, this._y);
53
+ let ret = this.onUpdate.call(this.scope, value, this._y, this._x, this._y);
54
54
  if (ret && "x" in ret) {
55
55
  this._x = ret.x;
56
56
  } else {
@@ -72,7 +72,7 @@ import {clamp} from "./math.js";
72
72
  }
73
73
 
74
74
  set y(value) {
75
- var ret = this.onUpdate.call(this.scope, this._x, value, this._x, this._y);
75
+ let ret = this.onUpdate.call(this.scope, this._x, value, this._x, this._y);
76
76
  if (ret && "y" in ret) {
77
77
  this._y = ret.y;
78
78
  } else {
@@ -82,7 +82,7 @@ import {clamp} from "./math.js";
82
82
 
83
83
  /** @ignore */
84
84
  _set(x, y) {
85
- var ret = this.onUpdate.call(this.scope, x, y, this._x, this._y);
85
+ let ret = this.onUpdate.call(this.scope, x, y, this._x, this._y);
86
86
  if (ret && "x" in ret && "y" in ret) {
87
87
  this._x = ret.x;
88
88
  this._y = ret.y;
@@ -340,19 +340,19 @@ import {clamp} from "./math.js";
340
340
  * @returns {ObservableVector2d} Reference to this object for method chaining
341
341
  */
342
342
  rotate(angle, v) {
343
- var cx = 0;
344
- var cy = 0;
343
+ let cx = 0;
344
+ let cy = 0;
345
345
 
346
346
  if (typeof v === "object") {
347
347
  cx = v.x;
348
348
  cy = v.y;
349
349
  }
350
350
 
351
- var x = this._x - cx;
352
- var y = this._y - cy;
351
+ let x = this._x - cx;
352
+ let y = this._y - cy;
353
353
 
354
- var c = Math.cos(angle);
355
- var s = Math.sin(angle);
354
+ let c = Math.cos(angle);
355
+ let s = Math.sin(angle);
356
356
 
357
357
  return this._set(x * c - y * s + cx, x * s + y * c + cy);
358
358
  }
@@ -403,9 +403,9 @@ import {clamp} from "./math.js";
403
403
  * @returns {ObservableVector2d} Reference to this object for method chaining
404
404
  */
405
405
  moveTowards(target, step) {
406
- var angle = Math.atan2(target.y - this._y, target.x - this._x);
406
+ let angle = Math.atan2(target.y - this._y, target.x - this._x);
407
407
 
408
- var distance = this.distance(target);
408
+ let distance = this.distance(target);
409
409
 
410
410
  if (distance === 0 || (step >= 0 && distance <= step * step)) {
411
411
  return target;
@@ -51,7 +51,7 @@ import pool from "./../system/pooling.js";
51
51
  }
52
52
 
53
53
  set x(value) {
54
- var ret = this.onUpdate.call(this.scope, value, this._y, this._z, this._x, this._y, this._z);
54
+ let ret = this.onUpdate.call(this.scope, value, this._y, this._z, this._x, this._y, this._z);
55
55
  if (ret && "x" in ret) {
56
56
  this._x = ret.x;
57
57
  } else {
@@ -72,7 +72,7 @@ import pool from "./../system/pooling.js";
72
72
  }
73
73
 
74
74
  set y(value) {
75
- var ret = this.onUpdate.call(this.scope, this._x, value, this._z, this._x, this._y, this._z);
75
+ let ret = this.onUpdate.call(this.scope, this._x, value, this._z, this._x, this._y, this._z);
76
76
  if (ret && "y" in ret) {
77
77
  this._y = ret.y;
78
78
  } else {
@@ -95,7 +95,7 @@ import pool from "./../system/pooling.js";
95
95
  }
96
96
 
97
97
  set z(value) {
98
- var ret = this.onUpdate.call(this.scope, this._x, this._y, value, this._x, this._y, this._z);
98
+ let ret = this.onUpdate.call(this.scope, this._x, this._y, value, this._x, this._y, this._z);
99
99
  if (ret && "z" in ret) {
100
100
  this._z = ret.z;
101
101
  } else {
@@ -107,7 +107,7 @@ import pool from "./../system/pooling.js";
107
107
  * @ignore
108
108
  */
109
109
  _set(x, y, z) {
110
- var ret = this.onUpdate.call(this.scope, x, y, z, this._x, this._y, this._z);
110
+ let ret = this.onUpdate.call(this.scope, x, y, z, this._x, this._y, this._z);
111
111
  if (ret && "x" in ret && "y" in ret && "z" in ret) {
112
112
  this._x = ret.x;
113
113
  this._y = ret.y;
@@ -267,7 +267,7 @@ import pool from "./../system/pooling.js";
267
267
  * @returns {ObservableVector3d} Reference to this object for method chaining
268
268
  */
269
269
  minV(v) {
270
- var _vz = v.z || 0;
270
+ let _vz = v.z || 0;
271
271
  return this._set(
272
272
  (this._x < v.x) ? this._x : v.x,
273
273
  (this._y < v.y) ? this._y : v.y,
@@ -283,7 +283,7 @@ import pool from "./../system/pooling.js";
283
283
  * @returns {ObservableVector3d} Reference to this object for method chaining
284
284
  */
285
285
  maxV(v) {
286
- var _vz = v.z || 0;
286
+ let _vz = v.z || 0;
287
287
  return this._set(
288
288
  (this._x > v.x) ? this._x : v.x,
289
289
  (this._y > v.y) ? this._y : v.y,
@@ -408,8 +408,8 @@ import pool from "./../system/pooling.js";
408
408
  * @returns {ObservableVector3d} Reference to this object for method chaining
409
409
  */
410
410
  rotate(angle, v) {
411
- var cx = 0;
412
- var cy = 0;
411
+ let cx = 0;
412
+ let cy = 0;
413
413
 
414
414
  if (typeof v === "object") {
415
415
  cx = v.x;
@@ -417,11 +417,11 @@ import pool from "./../system/pooling.js";
417
417
  }
418
418
 
419
419
  // TODO also rotate on the z axis if the given vector is a 3d one
420
- var x = this.x - cx;
421
- var y = this.y - cy;
420
+ let x = this.x - cx;
421
+ let y = this.y - cy;
422
422
 
423
- var c = Math.cos(angle);
424
- var s = Math.sin(angle);
423
+ let c = Math.cos(angle);
424
+ let s = Math.sin(angle);
425
425
 
426
426
  return this._set(x * c - y * s + cx, x * s + y * c + cy, this.z);
427
427
  }
@@ -445,8 +445,8 @@ import pool from "./../system/pooling.js";
445
445
  * @returns {ObservableVector3d} Reference to this object for method chaining
446
446
  */
447
447
  cross(v) {
448
- var ax = this._x, ay = this._y, az = this._z;
449
- var bx = v.x, by = v.y, bz = v.z;
448
+ let ax = this._x, ay = this._y, az = this._z;
449
+ let bx = v.x, by = v.y, bz = v.z;
450
450
 
451
451
  return this._set(
452
452
  ay * bz - az * by,
@@ -480,12 +480,12 @@ import pool from "./../system/pooling.js";
480
480
  * @returns {ObservableVector3d} Reference to this object for method chaining
481
481
  */
482
482
  moveTowards(target, step) {
483
- var angle = Math.atan2(target.y - this._y, target.x - this._x);
483
+ let angle = Math.atan2(target.y - this._y, target.x - this._x);
484
484
 
485
- var dx = this._x - target.x;
486
- var dy = this._y - target.y;
485
+ let dx = this._x - target.x;
486
+ let dy = this._y - target.y;
487
487
 
488
- var distance = Math.sqrt(dx * dx + dy * dy);
488
+ let distance = Math.sqrt(dx * dx + dy * dy);
489
489
 
490
490
  if (distance === 0 || (step >= 0 && distance <= step * step)) {
491
491
  return target;
@@ -506,9 +506,9 @@ import pool from "./../system/pooling.js";
506
506
  * @returns {number}
507
507
  */
508
508
  distance(v) {
509
- var dx = this._x - v.x;
510
- var dy = this._y - v.y;
511
- var dz = this._z - (v.z || 0);
509
+ let dx = this._x - v.x;
510
+ let dy = this._y - v.y;
511
+ let dz = this._z - (v.z || 0);
512
512
  return Math.sqrt(dx * dx + dy * dy + dz * dz);
513
513
  }
514
514
 
@@ -310,7 +310,7 @@ import pool from "./../system/pooling.js";
310
310
  * @returns {boolean}
311
311
  */
312
312
  equals() {
313
- var _x, _y;
313
+ let _x, _y;
314
314
  if (arguments.length === 2) {
315
315
  // x, y
316
316
  _x = arguments[0];
@@ -353,19 +353,19 @@ import pool from "./../system/pooling.js";
353
353
  * @returns {Vector2d} Reference to this object for method chaining
354
354
  */
355
355
  rotate(angle, v) {
356
- var cx = 0;
357
- var cy = 0;
356
+ let cx = 0;
357
+ let cy = 0;
358
358
 
359
359
  if (typeof v === "object") {
360
360
  cx = v.x;
361
361
  cy = v.y;
362
362
  }
363
363
 
364
- var x = this.x - cx;
365
- var y = this.y - cy;
364
+ let x = this.x - cx;
365
+ let y = this.y - cy;
366
366
 
367
- var c = Math.cos(angle);
368
- var s = Math.sin(angle);
367
+ let c = Math.cos(angle);
368
+ let s = Math.sin(angle);
369
369
 
370
370
  return this._set(x * c - y * s + cx, x * s + y * c + cy);
371
371
  }
@@ -435,9 +435,9 @@ import pool from "./../system/pooling.js";
435
435
  * @returns {Vector2d} Reference to this object for method chaining
436
436
  */
437
437
  moveTowards(target, step) {
438
- var angle = Math.atan2(target.y - this.y, target.x - this.x);
438
+ let angle = Math.atan2(target.y - this.y, target.x - this.x);
439
439
 
440
- var distance = this.distance(target);
440
+ let distance = this.distance(target);
441
441
 
442
442
  if (distance === 0 || (step >= 0 && distance <= step * step)) {
443
443
  return target;
@@ -457,7 +457,7 @@ import pool from "./../system/pooling.js";
457
457
  * @returns {number}
458
458
  */
459
459
  distance(v) {
460
- var dx = this.x - v.x, dy = this.y - v.y;
460
+ let dx = this.x - v.x, dy = this.y - v.y;
461
461
  return Math.sqrt(dx * dx + dy * dy);
462
462
  }
463
463