@pirireis/webglobeplugins 0.9.11 → 0.9.13

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 (179) hide show
  1. package/Math/angle-calculation.js +9 -11
  2. package/Math/arc.js +38 -41
  3. package/Math/bounds/line-bbox.js +79 -83
  4. package/Math/constants.js +4 -9
  5. package/Math/frustum/types.js +1 -2
  6. package/Math/juction/arc-plane.js +33 -36
  7. package/Math/juction/line-sphere.js +15 -18
  8. package/Math/juction/plane-plane.js +20 -23
  9. package/Math/line.js +42 -47
  10. package/Math/methods.js +69 -92
  11. package/Math/plane.js +33 -38
  12. package/Math/quaternion.js +48 -55
  13. package/Math/types.js +1 -2
  14. package/Math/utils.js +2 -4
  15. package/Math/vec3.js +46 -52
  16. package/algorithms/search-binary.js +5 -8
  17. package/altitude-locator/draw-subset-obj.js +8 -11
  18. package/altitude-locator/plugin.js +114 -133
  19. package/altitude-locator/types.js +1 -3
  20. package/arrowfield/adaptor.js +3 -7
  21. package/arrowfield/index.js +3 -10
  22. package/arrowfield/plugin.js +63 -69
  23. package/bearing-line/index.js +2 -8
  24. package/bearing-line/plugin.js +218 -248
  25. package/circle-line-chain/chain-list-map.js +82 -92
  26. package/circle-line-chain/plugin.js +147 -182
  27. package/circle-line-chain/util.js +1 -5
  28. package/compass-rose/compass-rose-padding-flat.js +111 -140
  29. package/compass-rose/compass-text-writer.js +63 -75
  30. package/compass-rose/index.js +3 -7
  31. package/compassrose/compassrose.js +50 -57
  32. package/compassrose/index.js +2 -8
  33. package/heatwave/index.js +3 -10
  34. package/heatwave/isobar/objectarraylabels.js +50 -56
  35. package/heatwave/isobar/plugin.js +111 -170
  36. package/heatwave/isobar/quadtreecontours.js +78 -96
  37. package/heatwave/plugins/heatwaveglobeshell.js +73 -94
  38. package/index.js +12 -58
  39. package/package.json +1 -1
  40. package/partialrings/buffer-manager.js +32 -70
  41. package/partialrings/index.js +2 -41
  42. package/partialrings/plugin.js +55 -98
  43. package/partialrings/program.js +141 -59
  44. package/pin/pin-object-array.js +89 -97
  45. package/pin/pin-point-totem.js +21 -22
  46. package/point-heat-map/adaptors/timetracksplugin-format-to-this.js +11 -14
  47. package/point-heat-map/plugin-webworker.js +45 -53
  48. package/point-heat-map/point-to-heat-map-flow.js +46 -51
  49. package/point-tracks/key-methods.js +2 -5
  50. package/point-tracks/plugin.js +141 -170
  51. package/programs/arrowfield/index.js +2 -7
  52. package/programs/arrowfield/logic.js +172 -67
  53. package/programs/arrowfield/object.js +35 -43
  54. package/programs/data2legend/density-to-legend.js +47 -26
  55. package/programs/data2legend/point-to-density-texture.js +56 -34
  56. package/programs/float2legendwithratio/index.js +2 -8
  57. package/programs/float2legendwithratio/logic.js +88 -45
  58. package/programs/float2legendwithratio/object.js +45 -54
  59. package/programs/globe-util/is-globe-moved.js +10 -13
  60. package/programs/globeshell/index.js +2 -8
  61. package/programs/globeshell/wiggle/index.js +2 -8
  62. package/programs/globeshell/wiggle/logic.js +191 -101
  63. package/programs/globeshell/wiggle/object.js +35 -43
  64. package/programs/helpers/blender/program.js +36 -22
  65. package/programs/helpers/fadeaway/index.js +2 -7
  66. package/programs/helpers/fadeaway/logic.js +36 -17
  67. package/programs/helpers/fadeaway/object.js +11 -18
  68. package/programs/helpers/index.js +2 -8
  69. package/programs/index.js +9 -58
  70. package/programs/line-on-globe/angled-line.js +95 -39
  71. package/programs/line-on-globe/circle-accurate-3d.js +86 -39
  72. package/programs/line-on-globe/circle-accurate-flat.js +116 -64
  73. package/programs/line-on-globe/circle-accurate.js +113 -46
  74. package/programs/line-on-globe/circle.js +106 -44
  75. package/programs/line-on-globe/degree-padding-around-circle-3d.js +89 -42
  76. package/programs/line-on-globe/lines-color-instanced-flat.js +84 -43
  77. package/programs/line-on-globe/linestrip.js +126 -63
  78. package/programs/line-on-globe/naive-accurate-flexible.js +126 -59
  79. package/programs/line-on-globe/to-the-surface.js +62 -35
  80. package/programs/line-on-globe/util.js +2 -5
  81. package/programs/picking/pickable-renderer.js +127 -46
  82. package/programs/point-on-globe/element-globe-surface-glow.js +83 -46
  83. package/programs/point-on-globe/element-point-glow.js +112 -47
  84. package/programs/point-on-globe/square-pixel-point.js +80 -34
  85. package/programs/programcache.js +14 -19
  86. package/programs/rings/distancering/circleflatprogram.js +76 -70
  87. package/programs/rings/distancering/circlepaddingfreeangleprogram.js +168 -194
  88. package/programs/rings/distancering/circlepaddysharedbuffer.js +121 -200
  89. package/programs/rings/distancering/index.js +5 -14
  90. package/programs/rings/distancering/paddyflatprogram.js +87 -70
  91. package/programs/rings/distancering/paddyflatprogram2d.js +89 -72
  92. package/programs/rings/distancering/paddyflatprogram3d.js +87 -70
  93. package/programs/rings/index.js +1 -17
  94. package/programs/rings/partial-ring/piece-of-pie.js +144 -44
  95. package/programs/totems/camerauniformblock.js +65 -56
  96. package/programs/totems/canvas-webglobe-info.js +49 -45
  97. package/programs/totems/gpu-selection-uniform-block.js +45 -45
  98. package/programs/totems/index.js +2 -40
  99. package/programs/two-d/pixel-padding-for-compass.js +94 -36
  100. package/programs/util.js +7 -10
  101. package/programs/vectorfields/index.js +3 -23
  102. package/programs/vectorfields/logics/drawrectangleparticles.js +73 -35
  103. package/programs/vectorfields/logics/index.js +4 -12
  104. package/programs/vectorfields/logics/pixelbased.js +94 -41
  105. package/programs/vectorfields/logics/ubo.js +32 -32
  106. package/programs/vectorfields/pingpongbuffermanager.js +30 -37
  107. package/rangerings/enum.js +2 -5
  108. package/rangerings/index.js +5 -15
  109. package/rangerings/plugin.js +223 -286
  110. package/rangerings/rangeringangletext.js +122 -137
  111. package/rangerings/ring-account.js +53 -75
  112. package/shaders/fragment-toy/firework.js +55 -4
  113. package/shaders/fragment-toy/singularity.js +56 -5
  114. package/timetracks/adaptors-line-strip.js +27 -44
  115. package/timetracks/adaptors.js +48 -67
  116. package/timetracks/index.js +5 -19
  117. package/timetracks/plugin-line-strip.js +65 -79
  118. package/timetracks/plugin.js +71 -85
  119. package/timetracks/program-line-strip.js +297 -107
  120. package/timetracks/program.js +421 -118
  121. package/timetracks/programpoint-line-strip.js +98 -48
  122. package/timetracks/programpoint.js +91 -48
  123. package/util/account/bufferoffsetmanager.js +72 -98
  124. package/util/account/index.js +3 -23
  125. package/util/account/single-attribute-buffer-management/buffer-manager.js +44 -48
  126. package/util/account/single-attribute-buffer-management/buffer-orchestrator.js +68 -98
  127. package/util/account/single-attribute-buffer-management/index.js +4 -9
  128. package/util/account/single-attribute-buffer-management/object-store.js +29 -34
  129. package/util/account/single-attribute-buffer-management/types.js +1 -2
  130. package/util/account/util.js +2 -8
  131. package/util/algorithms/search-binary.js +5 -8
  132. package/util/check/get.js +5 -9
  133. package/util/check/typecheck.js +13 -24
  134. package/util/geometry/index.js +10 -18
  135. package/util/gl-util/buffer/attribute-loader.js +10 -26
  136. package/util/gl-util/buffer/index.js +2 -5
  137. package/util/gl-util/draw-options/methods.js +10 -15
  138. package/util/gl-util/uniform-block/manager.js +69 -72
  139. package/util/heatwavedatamanager/datamanager.js +56 -119
  140. package/util/heatwavedatamanager/index.js +3 -10
  141. package/util/heatwavedatamanager/pointcoordinatesdatacalculator.js +38 -47
  142. package/util/heatwavedatamanager/pointcoordsmeta.js +9 -13
  143. package/util/index.js +13 -57
  144. package/util/interpolation/timetrack/index.js +2 -5
  145. package/util/interpolation/timetrack/timetrack-interpolator.js +30 -36
  146. package/util/interpolation/timetrack/web-worker-str.js +180 -5
  147. package/util/interpolation/timetrack/web-worker.js +4 -6
  148. package/util/jshelpers/data-filler.js +8 -11
  149. package/util/jshelpers/equality.js +1 -3
  150. package/util/jshelpers/index.js +2 -37
  151. package/util/jshelpers/timefilters.js +8 -10
  152. package/util/picking/fence.js +8 -11
  153. package/util/picking/picker-displayer.js +49 -58
  154. package/util/programs/draw-texture-on-canvas.js +41 -26
  155. package/util/programs/index.js +1 -17
  156. package/util/programs/shapesonglobe.js +104 -68
  157. package/util/programs/supersampletotextures.js +45 -43
  158. package/util/programs/texturetoglobe.js +99 -52
  159. package/util/shaderfunctions/geometrytransformations.js +323 -35
  160. package/util/shaderfunctions/index.js +2 -18
  161. package/util/shaderfunctions/nodata.js +8 -5
  162. package/util/shaderfunctions/noisefunctions.js +40 -12
  163. package/util/surface-line-data/arcs-to-cuts.js +20 -23
  164. package/util/webglobe/gldefaultstates.js +1 -4
  165. package/util/webglobe/index.js +2 -18
  166. package/util/webglobe/rasteroverlay.js +36 -41
  167. package/util/webglobjectbuilders.js +70 -93
  168. package/util/webglobjectbuilders1.js +63 -82
  169. package/waveparticles/adaptor.js +7 -10
  170. package/waveparticles/index.js +3 -10
  171. package/waveparticles/plugin.js +82 -90
  172. package/wind/imagetovectorfieldandmagnitude.js +16 -19
  173. package/wind/index.js +5 -14
  174. package/wind/plugin.js +454 -291
  175. package/wind/vectorfieldimage.js +6 -8
  176. package/write-text/attached-text-writer.js +48 -54
  177. package/write-text/context-text.js +52 -63
  178. package/write-text/context-text3.js +71 -80
  179. package/write-text/index.js +1 -5
@@ -1,23 +1,3 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- var __importDefault = (this && this.__importDefault) || function (mod) {
17
- return (mod && mod.__esModule) ? mod : { "default": mod };
18
- };
19
- Object.defineProperty(exports, "__esModule", { value: true });
20
- exports.BufferOffsetManager = void 0;
21
- var bufferoffsetmanager_1 = __importDefault(require("./bufferoffsetmanager"));
22
- exports.BufferOffsetManager = bufferoffsetmanager_1.default;
23
- __exportStar(require("./single-attribute-buffer-management/index"), exports);
1
+ import BufferOffsetManager from './bufferoffsetmanager';
2
+ export { BufferOffsetManager };
3
+ export * from './single-attribute-buffer-management/index';
@@ -1,4 +1,3 @@
1
- "use strict";
2
1
  /**
3
2
  * BufferOffsetManager
4
3
  * Purpose: To manage the offset of the buffer. Plus extend and defrag the buffer.
@@ -17,12 +16,13 @@
17
16
  * READ, most of the time is not needed to be read, unless for defraging.
18
17
  * This unpredicatable behavior is not handled by this class.
19
18
  */
20
- Object.defineProperty(exports, "__esModule", { value: true });
21
- exports.BufferManager = void 0;
22
- var BufferManager = /** @class */ (function () {
23
- function BufferManager(gl, itemSize, _a) {
24
- var _b = _a === void 0 ? {} : _a, _c = _b.bufferType, bufferType = _c === void 0 ? "STATIC_DRAW" : _c, _d = _b.buffer, buffer = _d === void 0 ? null : _d, _e = _b.initialCapacity, initialCapacity = _e === void 0 ? null : _e;
25
- this.isFreed = false;
19
+ export class BufferManager {
20
+ gl;
21
+ buffer;
22
+ itemSize;
23
+ bufferType;
24
+ isFreed = false;
25
+ constructor(gl, itemSize, { bufferType = "STATIC_DRAW", buffer = null, initialCapacity = null } = {}) {
26
26
  this.gl = gl;
27
27
  this.itemSize = itemSize;
28
28
  this.bufferType = bufferType;
@@ -30,47 +30,45 @@ var BufferManager = /** @class */ (function () {
30
30
  if (initialCapacity !== null)
31
31
  this.resetWithCapacity(initialCapacity);
32
32
  }
33
- BufferManager.prototype.resetWithCapacity = function (capacity) {
34
- var _a = this, gl = _a.gl, buffer = _a.buffer, bufferType = _a.bufferType, itemSize = _a.itemSize;
33
+ resetWithCapacity(capacity) {
34
+ const { gl, buffer, bufferType, itemSize } = this;
35
35
  gl.bindBuffer(gl.ARRAY_BUFFER, buffer);
36
36
  // @ts-ignore
37
37
  gl.bufferData(gl.ARRAY_BUFFER, capacity * itemSize * 4, gl[bufferType]);
38
38
  gl.bindBuffer(gl.ARRAY_BUFFER, null);
39
- };
40
- BufferManager.prototype.deleteBulk = function (offsets) {
41
- var _a = this, gl = _a.gl, buffer = _a.buffer, itemSize = _a.itemSize;
42
- var emptyBlock = new Float32Array(this.itemSize).fill(NaN);
43
- var offsetMultiplier = itemSize * 4;
39
+ }
40
+ deleteBulk(offsets) {
41
+ const { gl, buffer, itemSize } = this;
42
+ const emptyBlock = new Float32Array(this.itemSize).fill(NaN);
43
+ const offsetMultiplier = itemSize * 4;
44
44
  gl.bindBuffer(gl.ARRAY_BUFFER, buffer);
45
- for (var _i = 0, offsets_1 = offsets; _i < offsets_1.length; _i++) {
46
- var offset = offsets_1[_i];
45
+ for (let offset of offsets) {
47
46
  if (offset !== undefined) {
48
47
  gl.bufferSubData(gl.ARRAY_BUFFER, offset * offsetMultiplier, emptyBlock);
49
48
  }
50
49
  }
51
50
  gl.bindBuffer(gl.ARRAY_BUFFER, null);
52
- };
53
- BufferManager.prototype.insertBulk = function (blocks, offsets) {
54
- var _a = this, gl = _a.gl, buffer = _a.buffer, itemSize = _a.itemSize;
51
+ }
52
+ insertBulk(blocks, offsets) {
53
+ const { gl, buffer, itemSize } = this;
55
54
  gl.bindBuffer(gl.ARRAY_BUFFER, buffer);
56
- var offsetMultiplier = itemSize * 4;
57
- for (var i = 0; i < blocks.length; i++) {
58
- var block = blocks[i];
59
- var offset = offsets[i] * offsetMultiplier;
55
+ const offsetMultiplier = itemSize * 4;
56
+ for (let i = 0; i < blocks.length; i++) {
57
+ const block = blocks[i];
58
+ const offset = offsets[i] * offsetMultiplier;
60
59
  if (offset !== undefined)
61
60
  gl.bufferSubData(gl.ARRAY_BUFFER, offset, block);
62
61
  }
63
62
  gl.bindBuffer(gl.ARRAY_BUFFER, null);
64
- };
63
+ }
65
64
  // TODO: this is broken
66
- BufferManager.prototype.defrag = function (offsetValues, occupiedCapacity, newCapacity) {
67
- var _a = this, gl = _a.gl, buffer = _a.buffer, bufferType = _a.bufferType, itemSize = _a.itemSize;
68
- var newArray = new Float32Array(newCapacity * itemSize);
69
- var bufferData = this._getBufferData(occupiedCapacity);
70
- var newOffset = 0;
71
- for (var _i = 0, offsetValues_1 = offsetValues; _i < offsetValues_1.length; _i++) {
72
- var offset = offsetValues_1[_i];
73
- var itemOffset = offset * itemSize;
65
+ defrag(offsetValues, occupiedCapacity, newCapacity) {
66
+ const { gl, buffer, bufferType, itemSize } = this;
67
+ const newArray = new Float32Array(newCapacity * itemSize);
68
+ const bufferData = this._getBufferData(occupiedCapacity);
69
+ let newOffset = 0;
70
+ for (const offset of offsetValues) {
71
+ const itemOffset = offset * itemSize;
74
72
  newArray.set(bufferData.slice(itemOffset, itemOffset + itemSize), newOffset);
75
73
  newOffset += itemSize;
76
74
  }
@@ -79,34 +77,32 @@ var BufferManager = /** @class */ (function () {
79
77
  gl.bufferData(gl.ARRAY_BUFFER, newCapacity * itemSize * 4, gl[bufferType]);
80
78
  gl.bufferSubData(gl.ARRAY_BUFFER, 0, newArray);
81
79
  gl.bindBuffer(gl.ARRAY_BUFFER, null);
82
- };
83
- BufferManager.prototype.extendBuffer = function (occupiedCapacity, newCapacity) {
84
- var _a = this, gl = _a.gl, buffer = _a.buffer, bufferType = _a.bufferType;
85
- var itemSize = this.itemSize;
86
- var bufferData = this._getBufferData(occupiedCapacity);
80
+ }
81
+ extendBuffer(occupiedCapacity, newCapacity) {
82
+ const { gl, buffer, bufferType } = this;
83
+ const itemSize = this.itemSize;
84
+ const bufferData = this._getBufferData(occupiedCapacity);
87
85
  gl.bindBuffer(gl.ARRAY_BUFFER, buffer);
88
86
  // @ts-ignore
89
87
  gl.bufferData(gl.ARRAY_BUFFER, newCapacity * itemSize * 4, gl[bufferType]);
90
88
  gl.bufferSubData(gl.ARRAY_BUFFER, 0, bufferData);
91
89
  gl.bindBuffer(gl.ARRAY_BUFFER, null);
92
- };
93
- BufferManager.prototype._getBufferData = function (occupiedCapacity) {
94
- var _a = this, gl = _a.gl, buffer = _a.buffer;
95
- var size = occupiedCapacity * this.itemSize;
96
- var bufferData = new Float32Array(size);
90
+ }
91
+ _getBufferData(occupiedCapacity) {
92
+ const { gl, buffer } = this;
93
+ const size = occupiedCapacity * this.itemSize;
94
+ const bufferData = new Float32Array(size);
97
95
  gl.bindBuffer(gl.ARRAY_BUFFER, buffer);
98
96
  gl.getBufferSubData(gl.ARRAY_BUFFER, 0, bufferData);
99
97
  gl.bindBuffer(gl.ARRAY_BUFFER, null);
100
98
  return bufferData;
101
- };
102
- BufferManager.prototype.free = function () {
99
+ }
100
+ free() {
103
101
  if (this.isFreed)
104
102
  return;
105
103
  this.gl.deleteBuffer(this.buffer);
106
104
  // this.buffer = null;
107
105
  // this.gl = null;
108
106
  this.isFreed = true;
109
- };
110
- return BufferManager;
111
- }());
112
- exports.BufferManager = BufferManager;
107
+ }
108
+ }
@@ -1,50 +1,44 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BufferOrchestrator = void 0;
4
- var EXTRA_SIZE = 10;
5
- var BufferOrchestrator = /** @class */ (function () {
6
- function BufferOrchestrator(_a) {
7
- var _b = _a === void 0 ? {} : _a, _c = _b.capacity, capacity = _c === void 0 ? 10 : _c;
1
+ const EXTRA_SIZE = 10;
2
+ export class BufferOrchestrator {
3
+ _capacity;
4
+ offsetMap;
5
+ tombstoneOffsets;
6
+ _length;
7
+ constructor({ capacity = 10 } = {}) {
8
8
  this._capacity = capacity;
9
9
  this.offsetMap = new Map();
10
10
  this.tombstoneOffsets = [];
11
11
  this._length = 0;
12
12
  }
13
- BufferOrchestrator.prototype.resetWithCapacity = function (bufferManagersMap, capacity) {
14
- if (capacity === void 0) { capacity = null; }
13
+ resetWithCapacity(bufferManagersMap, capacity = null) {
15
14
  this._capacity = capacity !== null ? capacity : this._capacity;
16
- for (var _i = 0, bufferManagersMap_1 = bufferManagersMap; _i < bufferManagersMap_1.length; _i++) {
17
- var _a = bufferManagersMap_1[_i], key = _a[0], bufferManager = _a[1].bufferManager;
15
+ for (const [key, { bufferManager }] of bufferManagersMap) {
18
16
  bufferManager.resetWithCapacity(this._capacity);
19
17
  }
20
18
  this.offsetMap.clear();
21
19
  this.tombstoneOffsets = [];
22
20
  this._length = 0;
23
- };
24
- BufferOrchestrator.prototype.insertBulk = function (items, bufferManagersMap) {
21
+ }
22
+ insertBulk(items, bufferManagersMap) {
25
23
  this.autoExtendBuffers(items.length, bufferManagersMap);
26
- var offsetMap = this.offsetMap;
27
- var offsets = [];
28
- for (var _i = 0, items_1 = items; _i < items_1.length; _i++) {
29
- var item = items_1[_i];
30
- var o = offsetMap.get(item.key);
31
- var offset = o !== undefined ? o : this.nextOffset();
24
+ const { offsetMap } = this;
25
+ const offsets = [];
26
+ for (const item of items) {
27
+ let o = offsetMap.get(item.key);
28
+ const offset = o !== undefined ? o : this.nextOffset();
32
29
  offsetMap.set(item.key, offset);
33
30
  offsets.push(offset);
34
31
  }
35
- for (var _a = 0, bufferManagersMap_2 = bufferManagersMap; _a < bufferManagersMap_2.length; _a++) {
36
- var _b = bufferManagersMap_2[_a], key = _b[0], _c = _b[1], bufferManager = _c.bufferManager, adaptor = _c.adaptor;
32
+ for (const [key, { bufferManager, adaptor }] of bufferManagersMap) {
37
33
  bufferManager.insertBulk(items.map(adaptor), offsets);
38
34
  }
39
- };
35
+ }
40
36
  // does not assign offset to the new items.
41
- BufferOrchestrator.prototype.updateBulk = function (items, bufferManagersMap, bufferKeys) {
42
- if (bufferKeys === void 0) { bufferKeys = null; }
43
- var offsetMap = this.offsetMap;
44
- var offsets = [];
45
- for (var _i = 0, items_2 = items; _i < items_2.length; _i++) {
46
- var item = items_2[_i];
47
- var offset = offsetMap.get(item.key);
37
+ updateBulk(items, bufferManagersMap, bufferKeys = null) {
38
+ const { offsetMap } = this;
39
+ const offsets = [];
40
+ for (const item of items) {
41
+ const offset = offsetMap.get(item.key);
48
42
  if (offset !== undefined) {
49
43
  offsets.push(offset);
50
44
  }
@@ -53,79 +47,71 @@ var BufferOrchestrator = /** @class */ (function () {
53
47
  }
54
48
  }
55
49
  if (bufferKeys) {
56
- for (var _a = 0, bufferKeys_1 = bufferKeys; _a < bufferKeys_1.length; _a++) {
57
- var key = bufferKeys_1[_a];
58
- var bufferManagerComp = bufferManagersMap.get(key);
50
+ for (const key of bufferKeys) {
51
+ const bufferManagerComp = bufferManagersMap.get(key);
59
52
  if (bufferManagerComp === undefined)
60
53
  throw new Error("updateBulk bufferKey does not exist");
61
- var bufferManager = bufferManagerComp.bufferManager, adaptor = bufferManagerComp.adaptor;
54
+ const { bufferManager, adaptor } = bufferManagerComp;
62
55
  bufferManager.insertBulk(items.map(adaptor), offsets);
63
56
  }
64
57
  }
65
58
  else {
66
- for (var _b = 0, bufferManagersMap_3 = bufferManagersMap; _b < bufferManagersMap_3.length; _b++) {
67
- var _c = bufferManagersMap_3[_b], key = _c[0], _d = _c[1], bufferManager = _d.bufferManager, adaptor = _d.adaptor;
59
+ for (const [key, { bufferManager, adaptor }] of bufferManagersMap) {
68
60
  bufferManager.insertBulk(items.map(adaptor), offsets);
69
61
  }
70
62
  }
71
- };
72
- BufferOrchestrator.prototype.deleteBulk = function (keys, bufferManagersMap) {
73
- var offsets = [];
74
- for (var _i = 0, keys_1 = keys; _i < keys_1.length; _i++) {
75
- var key = keys_1[_i];
76
- var offset = this.getOffset(key);
63
+ }
64
+ deleteBulk(keys, bufferManagersMap) {
65
+ const offsets = [];
66
+ for (const key of keys) {
67
+ const offset = this.getOffset(key);
77
68
  if (offset !== undefined) {
78
69
  offsets.push(offset);
79
70
  this.offsetMap.delete(key);
80
71
  this.tombstoneOffsets.push(offset);
81
72
  }
82
73
  }
83
- for (var _a = 0, bufferManagersMap_4 = bufferManagersMap; _a < bufferManagersMap_4.length; _a++) {
84
- var _b = bufferManagersMap_4[_a], key = _b[0], bufferManager = _b[1].bufferManager;
74
+ for (const [key, { bufferManager }] of bufferManagersMap) {
85
75
  bufferManager.deleteBulk(offsets);
86
76
  }
87
- };
88
- BufferOrchestrator.prototype.getOffset = function (key) {
77
+ }
78
+ getOffset(key) {
89
79
  return this.offsetMap.get(key);
90
- };
91
- BufferOrchestrator.prototype.nextOffset = function () {
80
+ }
81
+ nextOffset() {
92
82
  if (this.tombstoneOffsets.length > 0) {
93
- var offset = this.tombstoneOffsets.pop();
83
+ const offset = this.tombstoneOffsets.pop();
94
84
  return offset;
95
85
  }
96
86
  if (this._length < this._capacity) {
97
87
  return this._length++;
98
88
  }
99
89
  return false;
100
- };
101
- BufferOrchestrator.prototype.autoExtendBuffers = function (itemsLength, bufferManagersMap) {
90
+ }
91
+ autoExtendBuffers(itemsLength, bufferManagersMap) {
102
92
  if (itemsLength <= this.emptySpace)
103
93
  return;
104
- var newCapacity = this.length + itemsLength;
105
- for (var _i = 0, bufferManagersMap_5 = bufferManagersMap; _i < bufferManagersMap_5.length; _i++) {
106
- var _a = bufferManagersMap_5[_i], key = _a[0], bufferManager = _a[1].bufferManager;
94
+ const newCapacity = this.length + itemsLength;
95
+ for (const [key, { bufferManager }] of bufferManagersMap) {
107
96
  bufferManager.extendBuffer(this.length, newCapacity);
108
97
  }
109
98
  this._capacity = newCapacity;
110
- };
111
- BufferOrchestrator.prototype.defrag = function (bufferManagers, bufferKeys) {
112
- var offsetMap = this.offsetMap;
113
- var newCapacity = offsetMap.size + EXTRA_SIZE;
99
+ }
100
+ defrag(bufferManagers, bufferKeys) {
101
+ const offsetMap = this.offsetMap;
102
+ const newCapacity = offsetMap.size + EXTRA_SIZE;
114
103
  if (bufferKeys) {
115
- for (var _i = 0, bufferKeys_2 = bufferKeys; _i < bufferKeys_2.length; _i++) {
116
- var key = bufferKeys_2[_i];
117
- var offset = offsetMap.get(key);
104
+ for (const key of bufferKeys) {
105
+ const offset = offsetMap.get(key);
118
106
  if (offset !== undefined) {
119
- for (var _a = 0, bufferManagers_1 = bufferManagers; _a < bufferManagers_1.length; _a++) {
120
- var _b = bufferManagers_1[_a], key_1 = _b[0], bufferManager = _b[1].bufferManager;
107
+ for (const [key, { bufferManager }] of bufferManagers) {
121
108
  bufferManager.defrag([offset], this.length, newCapacity);
122
109
  }
123
110
  }
124
111
  }
125
112
  }
126
113
  else {
127
- for (var _c = 0, bufferManagers_2 = bufferManagers; _c < bufferManagers_2.length; _c++) {
128
- var _d = bufferManagers_2[_c], key = _d[0], bufferManager = _d[1].bufferManager;
114
+ for (const [key, { bufferManager }] of bufferManagers) {
129
115
  bufferManager.defrag(offsetMap.values(), this.length, newCapacity);
130
116
  }
131
117
  }
@@ -133,48 +119,32 @@ var BufferOrchestrator = /** @class */ (function () {
133
119
  this._length = offsetMap.size;
134
120
  this._capacity = newCapacity;
135
121
  this.tombstoneOffsets = [];
136
- };
122
+ }
137
123
  /**
138
124
  * Flushes metadata and sets length to 0 without actualize change on buffers
139
125
  * This method created for cases in which data is loaded on each frame
140
126
  */
141
- BufferOrchestrator.prototype.flush = function (_a) {
142
- var _b = _a === void 0 ? {} : _a, _c = _b.capacity, capacity = _c === void 0 ? 10 : _c;
127
+ flush({ capacity = 10 } = {}) {
143
128
  this._length = 0;
144
129
  this._capacity = capacity;
145
130
  this.tombstoneOffsets = [];
146
131
  this.offsetMap.clear();
147
- };
148
- BufferOrchestrator.prototype._defrag = function () {
149
- var newOffsetMap = new Map();
150
- var newOffset = 0;
151
- for (var _i = 0, _a = this.offsetMap; _i < _a.length; _i++) {
152
- var _b = _a[_i], key = _b[0], offset = _b[1];
132
+ }
133
+ _defrag() {
134
+ const newOffsetMap = new Map();
135
+ let newOffset = 0;
136
+ for (const [key, offset] of this.offsetMap) {
153
137
  newOffsetMap.set(key, newOffset++);
154
138
  }
155
139
  this.offsetMap = newOffsetMap;
156
- };
157
- Object.defineProperty(BufferOrchestrator.prototype, "length", {
158
- get: function () {
159
- return this._length;
160
- },
161
- enumerable: false,
162
- configurable: true
163
- });
164
- Object.defineProperty(BufferOrchestrator.prototype, "emptySpace", {
165
- get: function () {
166
- return this._capacity - this.offsetMap.size;
167
- },
168
- enumerable: false,
169
- configurable: true
170
- });
171
- Object.defineProperty(BufferOrchestrator.prototype, "capacity", {
172
- get: function () {
173
- return this._capacity;
174
- },
175
- enumerable: false,
176
- configurable: true
177
- });
178
- return BufferOrchestrator;
179
- }());
180
- exports.BufferOrchestrator = BufferOrchestrator;
140
+ }
141
+ get length() {
142
+ return this._length;
143
+ }
144
+ get emptySpace() {
145
+ return this._capacity - this.offsetMap.size;
146
+ }
147
+ get capacity() {
148
+ return this._capacity;
149
+ }
150
+ }
@@ -1,9 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ObjectStore = exports.BufferManager = exports.BufferOrchestrator = void 0;
4
- var buffer_orchestrator_1 = require("./buffer-orchestrator");
5
- Object.defineProperty(exports, "BufferOrchestrator", { enumerable: true, get: function () { return buffer_orchestrator_1.BufferOrchestrator; } });
6
- var buffer_manager_1 = require("./buffer-manager");
7
- Object.defineProperty(exports, "BufferManager", { enumerable: true, get: function () { return buffer_manager_1.BufferManager; } });
8
- var object_store_1 = require("./object-store");
9
- Object.defineProperty(exports, "ObjectStore", { enumerable: true, get: function () { return object_store_1.ObjectStore; } });
1
+ import { BufferOrchestrator } from "./buffer-orchestrator";
2
+ import { BufferManager } from "./buffer-manager";
3
+ import { ObjectStore } from "./object-store";
4
+ export { BufferOrchestrator, BufferManager, ObjectStore };
@@ -1,53 +1,48 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ObjectStore = void 0;
4
- var ObjectStore = /** @class */ (function () {
5
- function ObjectStore(_a) {
6
- var _b = _a === void 0 ? {} : _a, _c = _b.initialCapcity, initialCapcity = _c === void 0 ? 10 : _c;
1
+ export class ObjectStore {
2
+ _container;
3
+ constructor({ initialCapcity = 10 } = {}) {
7
4
  this._container = this._createEmptyList(initialCapcity);
8
5
  }
9
- ObjectStore.prototype.resetWithCapacity = function (capacity) {
6
+ resetWithCapacity(capacity) {
10
7
  this._container = this._createEmptyList(capacity);
11
- };
12
- ObjectStore.prototype.deleteBulk = function (offsets) {
13
- for (var i = 0; i < offsets.length; i++) {
14
- var offset = offsets[i];
8
+ }
9
+ deleteBulk(offsets) {
10
+ for (let i = 0; i < offsets.length; i++) {
11
+ const offset = offsets[i];
15
12
  if (offset !== undefined) {
16
13
  this._container[offset] = null;
17
14
  }
18
15
  }
19
- };
20
- ObjectStore.prototype.insertBulk = function (objects, offsets) {
21
- for (var i = 0; i < objects.length; i++) {
22
- var object = objects[i];
23
- var offset = offsets[i];
16
+ }
17
+ insertBulk(objects, offsets) {
18
+ for (let i = 0; i < objects.length; i++) {
19
+ const object = objects[i];
20
+ const offset = offsets[i];
24
21
  if (offset !== undefined) {
25
22
  this._container[offset] = object;
26
23
  }
27
24
  }
28
- };
29
- ObjectStore.prototype.defrag = function (offsetValues, occupiedCapacity, newCapacity) {
30
- var hold = this._createEmptyList(newCapacity);
31
- for (var i = 0; i < offsetValues.length; i++) {
32
- var offset = offsetValues[i];
25
+ }
26
+ defrag(offsetValues, occupiedCapacity, newCapacity) {
27
+ const hold = this._createEmptyList(newCapacity);
28
+ for (let i = 0; i < offsetValues.length; i++) {
29
+ const offset = offsetValues[i];
33
30
  if (offset !== undefined) {
34
31
  hold[i] = this._container[offset];
35
32
  }
36
33
  }
37
34
  this._container = hold;
38
- };
39
- ObjectStore.prototype.extendBuffer = function (occupiedCapacity, newCapacity) {
40
- var oldCapacity = this._container.length;
35
+ }
36
+ extendBuffer(occupiedCapacity, newCapacity) {
37
+ const oldCapacity = this._container.length;
41
38
  this._container = this._container.concat(this._createEmptyList(newCapacity - oldCapacity));
42
- };
43
- ObjectStore.prototype._createEmptyList = function (size) {
39
+ }
40
+ _createEmptyList(size) {
44
41
  return new Array(size).fill(null);
45
- };
46
- ObjectStore.prototype.get = function (index) {
42
+ }
43
+ get(index) {
47
44
  return this._container[index];
48
- };
49
- ObjectStore.prototype.free = function () {
50
- };
51
- return ObjectStore;
52
- }());
53
- exports.ObjectStore = ObjectStore;
45
+ }
46
+ free() {
47
+ }
48
+ }
@@ -1,2 +1 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ export {};
@@ -1,9 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.vaoAttributeLoader = void 0;
4
- var vaoAttributeLoader = function (gl, buffer, index, size, stride, offset, divisor, type) {
5
- if (divisor === void 0) { divisor = null; }
6
- if (type === void 0) { type = null; }
1
+ export const vaoAttributeLoader = (gl, buffer, index, size, stride, offset, divisor = null, type = null) => {
7
2
  if (!gl || !buffer) {
8
3
  throw new Error("Invalid WebGL context or buffer");
9
4
  }
@@ -13,7 +8,7 @@ var vaoAttributeLoader = function (gl, buffer, index, size, stride, offset, divi
13
8
  if (stride < 0 || offset < 0) {
14
9
  throw new Error("Stride and offset must be non-negative");
15
10
  }
16
- var attribType = type === null ? gl.FLOAT : type;
11
+ const attribType = type === null ? gl.FLOAT : type;
17
12
  gl.bindBuffer(gl.ARRAY_BUFFER, buffer);
18
13
  gl.enableVertexAttribArray(index);
19
14
  gl.vertexAttribPointer(index, size, attribType, false, stride, offset);
@@ -21,4 +16,3 @@ var vaoAttributeLoader = function (gl, buffer, index, size, stride, offset, divi
21
16
  gl.vertexAttribDivisor(index, divisor);
22
17
  }
23
18
  };
24
- exports.vaoAttributeLoader = vaoAttributeLoader;
@@ -1,19 +1,16 @@
1
- "use strict";
2
1
  /**
3
2
  * @typedef {Array<number>} ListLike
4
3
  * @typedef {number || null} Index
5
4
  */
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.findFirstIndexInRange = void 0;
8
5
  /**
9
6
  * @param {ListLike} container
10
7
  * @param {number} value
11
8
  * @returns {Index}
12
9
  */
13
- var findFirstIndexInRange = function (container, value) {
14
- var start = 0;
15
- var end = container.length - 1;
16
- var mid = 0;
10
+ const findFirstIndexInRange = (container, value) => {
11
+ let start = 0;
12
+ let end = container.length - 1;
13
+ let mid = 0;
17
14
  while (start <= end) {
18
15
  mid = Math.floor((start + end) / 2);
19
16
  if (container[mid] <= value && value <= container[mid + 1])
@@ -25,4 +22,4 @@ var findFirstIndexInRange = function (container, value) {
25
22
  }
26
23
  return null;
27
24
  };
28
- exports.findFirstIndexInRange = findFirstIndexInRange;
25
+ export { findFirstIndexInRange };
package/util/check/get.js CHANGED
@@ -1,13 +1,10 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.mapGetOrThrow = void 0;
4
- var mapGetOrThrow = function (errorNote) {
5
- return function (mapInstance, ids) {
1
+ export const mapGetOrThrow = (errorNote) => {
2
+ return (mapInstance, ids) => {
6
3
  if (!ids)
7
4
  throw new Error("There is no map keys to get");
8
- var result = [];
9
- for (var i = 0; i < ids.length; i++) {
10
- var e = mapInstance.get(ids[i]);
5
+ const result = [];
6
+ for (let i = 0; i < ids.length; i++) {
7
+ const e = mapInstance.get(ids[i]);
11
8
  if (e === undefined)
12
9
  throw new Error(errorNote + " " + ids[i]);
13
10
  result.push(e);
@@ -15,4 +12,3 @@ var mapGetOrThrow = function (errorNote) {
15
12
  return result;
16
13
  };
17
14
  };
18
- exports.mapGetOrThrow = mapGetOrThrow;