@woosh/meep-engine 2.89.4 → 2.90.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 (33) hide show
  1. package/build/meep.cjs +35 -27
  2. package/build/meep.min.js +1 -1
  3. package/build/meep.module.js +35 -27
  4. package/package.json +1 -1
  5. package/src/core/geom/2d/circle/Circle.js +2 -2
  6. package/src/core/geom/2d/circle/circle_compute_circle_intersection.d.ts +14 -0
  7. package/src/core/geom/2d/circle/circle_compute_circle_intersection.d.ts.map +1 -0
  8. package/src/core/geom/2d/circle/circle_compute_circle_intersection.js +64 -0
  9. package/src/core/geom/2d/circle/circle_compute_circle_intersection.spec.d.ts +2 -0
  10. package/src/core/geom/2d/circle/circle_compute_circle_intersection.spec.d.ts.map +1 -0
  11. package/src/core/geom/2d/circle/circle_compute_circle_intersection.spec.js +79 -0
  12. package/src/core/geom/2d/circle/{computeCircleCirclePenetrationDistance.d.ts → circle_compute_circle_penetration.d.ts} +2 -2
  13. package/src/core/geom/2d/circle/circle_compute_circle_penetration.d.ts.map +1 -0
  14. package/src/core/geom/2d/circle/{computeCircleCirclePenetrationDistance.js → circle_compute_circle_penetration.js} +6 -4
  15. package/src/core/geom/2d/circle/{circleIntersectsCircle.d.ts → circle_intersects_circle.d.ts} +2 -2
  16. package/src/core/geom/2d/circle/circle_intersects_circle.d.ts.map +1 -0
  17. package/src/core/geom/2d/circle/{circleIntersectsCircle.js → circle_intersects_circle.js} +1 -1
  18. package/src/core/geom/2d/circle/{circleIntersectsPoint.d.ts → circle_intersects_point.d.ts} +2 -2
  19. package/src/core/geom/2d/circle/circle_intersects_point.d.ts.map +1 -0
  20. package/src/core/geom/2d/circle/{circleIntersectsPoint.js → circle_intersects_point.js} +1 -1
  21. package/src/core/geom/2d/shape/CircleShape.js +4 -4
  22. package/src/core/geom/2d/shape/PointShape.js +2 -2
  23. package/src/engine/graphics/render/forward_plus/LightManager.d.ts.map +1 -1
  24. package/src/engine/graphics/render/forward_plus/LightManager.js +2 -0
  25. package/src/engine/graphics/render/forward_plus/cluster/read_plane_pair.d.ts +1 -1
  26. package/src/engine/graphics/render/forward_plus/cluster/read_plane_pair.js +1 -1
  27. package/src/engine/input/devices/KeyboardDevice.d.ts.map +1 -1
  28. package/src/engine/input/devices/KeyboardDevice.js +7 -1
  29. package/src/generation/markers/MarkerNode.d.ts.map +1 -1
  30. package/src/generation/markers/MarkerNode.js +3 -3
  31. package/src/core/geom/2d/circle/circleIntersectsCircle.d.ts.map +0 -1
  32. package/src/core/geom/2d/circle/circleIntersectsPoint.d.ts.map +0 -1
  33. package/src/core/geom/2d/circle/computeCircleCirclePenetrationDistance.d.ts.map +0 -1
package/build/meep.cjs CHANGED
@@ -89894,6 +89894,32 @@ function classifyPassTypeFromObject(object) {
89894
89894
  return RenderPassType.Opaque;
89895
89895
  }
89896
89896
 
89897
+ const KeyboardEvents = {
89898
+ KeyUp: 'keyup',
89899
+ KeyDown: 'keydown'
89900
+ };
89901
+
89902
+ /**
89903
+ * Representation of an input device key
89904
+ */
89905
+ class InputDeviceSwitch {
89906
+ /**
89907
+ * Button press
89908
+ * @type {Signal}
89909
+ */
89910
+ down = new Signal()
89911
+ /**
89912
+ * Button release
89913
+ * @type {Signal}
89914
+ */
89915
+ up = new Signal()
89916
+ /**
89917
+ * is button currently being pressed?
89918
+ * @type {boolean}
89919
+ */
89920
+ is_down = false
89921
+ }
89922
+
89897
89923
  /**
89898
89924
  * Created by Alex on 06/03/2017.
89899
89925
  */
@@ -90000,32 +90026,6 @@ const KeyCodes = {
90000
90026
  'back_quote': 223
90001
90027
  };
90002
90028
 
90003
- const KeyboardEvents = {
90004
- KeyUp: 'keyup',
90005
- KeyDown: 'keydown'
90006
- };
90007
-
90008
- /**
90009
- * Representation of an input device key
90010
- */
90011
- class InputDeviceSwitch {
90012
- /**
90013
- * Button press
90014
- * @type {Signal}
90015
- */
90016
- down = new Signal()
90017
- /**
90018
- * Button release
90019
- * @type {Signal}
90020
- */
90021
- up = new Signal()
90022
- /**
90023
- * is button currently being pressed?
90024
- * @type {boolean}
90025
- */
90026
- is_down = false
90027
- }
90028
-
90029
90029
  /**
90030
90030
  * Created by Alex on 06/03/2017.
90031
90031
  */
@@ -90127,6 +90127,12 @@ class KeyboardDevice {
90127
90127
  * @private
90128
90128
  */
90129
90129
  #handlerKeyDown = (event) => {
90130
+ if (event.repeat) {
90131
+ // ignore automatic repetition
90132
+ // see https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/repeat
90133
+ return;
90134
+ }
90135
+
90130
90136
  this.on.down.send1(event);
90131
90137
 
90132
90138
  //hook up dispatch handler for individual keys
@@ -108674,7 +108680,7 @@ function compute_cluster_planes_from_points(result, points, x_slices, y_slices,
108674
108680
  }
108675
108681
 
108676
108682
  /**
108677
- * Read out a pair of planes from an numeric array
108683
+ * Read out a pair of planes from a numeric array
108678
108684
  * @param {number[]|Float32Array} source
108679
108685
  * @param {number} source_offset
108680
108686
  * @param {number[]|Float64Array|Float32Array} destination
@@ -110113,6 +110119,7 @@ class LightManager {
110113
110119
 
110114
110120
  const tile_data_offset = tile_index * 4;
110115
110121
 
110122
+ //assign lights
110116
110123
  lookup_address_offset += assign_cluster(
110117
110124
  tile_data_offset,
110118
110125
  bvh_lights,
@@ -110122,6 +110129,7 @@ class LightManager {
110122
110129
  light_source_data
110123
110130
  );
110124
110131
 
110132
+ // assign decals
110125
110133
  const decal_count = assign_cluster(
110126
110134
  tile_data_offset + 2,
110127
110135
  bvh_decals,