@pirireis/webglobeplugins 0.9.10 → 0.9.11

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 (166) hide show
  1. package/Math/angle-calculation.js +8 -8
  2. package/Math/arc.js +18 -18
  3. package/Math/bounds/line-bbox.js +80 -78
  4. package/Math/constants.js +3 -3
  5. package/Math/juction/arc-plane.js +23 -23
  6. package/Math/juction/line-sphere.js +11 -11
  7. package/Math/juction/plane-plane.js +11 -11
  8. package/Math/line.js +16 -14
  9. package/Math/methods.js +72 -67
  10. package/Math/plane.js +18 -16
  11. package/Math/quaternion.js +49 -45
  12. package/Math/utils.js +2 -2
  13. package/Math/vec3.js +45 -42
  14. package/algorithms/search-binary.js +4 -4
  15. package/altitude-locator/draw-subset-obj.js +8 -7
  16. package/altitude-locator/plugin.js +113 -97
  17. package/arrowfield/adaptor.js +4 -3
  18. package/arrowfield/index.js +2 -2
  19. package/arrowfield/plugin.js +65 -62
  20. package/bearing-line/index.js +1 -1
  21. package/bearing-line/plugin.js +225 -200
  22. package/circle-line-chain/chain-list-map.js +88 -82
  23. package/circle-line-chain/plugin.js +154 -129
  24. package/circle-line-chain/util.js +1 -1
  25. package/compass-rose/compass-rose-padding-flat.js +126 -104
  26. package/compass-rose/compass-text-writer.js +70 -62
  27. package/compass-rose/index.js +2 -2
  28. package/compassrose/compassrose.js +50 -46
  29. package/compassrose/index.js +1 -1
  30. package/heatwave/index.js +2 -2
  31. package/heatwave/isobar/objectarraylabels.js +48 -44
  32. package/heatwave/isobar/plugin.js +123 -104
  33. package/heatwave/isobar/quadtreecontours.js +92 -76
  34. package/heatwave/plugins/heatwaveglobeshell.js +87 -69
  35. package/index.js +11 -11
  36. package/package.json +1 -1
  37. package/partialrings/buffer-manager.js +64 -32
  38. package/partialrings/index.js +1 -1
  39. package/partialrings/plugin.js +84 -48
  40. package/partialrings/program.js +47 -136
  41. package/pin/pin-object-array.js +86 -83
  42. package/pin/pin-point-totem.js +22 -21
  43. package/point-heat-map/adaptors/timetracksplugin-format-to-this.js +10 -10
  44. package/point-heat-map/plugin-webworker.js +45 -40
  45. package/point-heat-map/point-to-heat-map-flow.js +42 -40
  46. package/point-tracks/key-methods.js +1 -1
  47. package/point-tracks/plugin.js +142 -127
  48. package/programs/arrowfield/index.js +1 -1
  49. package/programs/arrowfield/logic.js +62 -170
  50. package/programs/arrowfield/object.js +35 -33
  51. package/programs/data2legend/density-to-legend.js +21 -45
  52. package/programs/data2legend/point-to-density-texture.js +27 -52
  53. package/programs/float2legendwithratio/index.js +1 -1
  54. package/programs/float2legendwithratio/logic.js +42 -88
  55. package/programs/float2legendwithratio/object.js +46 -43
  56. package/programs/globe-util/is-globe-moved.js +11 -10
  57. package/programs/globeshell/index.js +1 -1
  58. package/programs/globeshell/wiggle/index.js +1 -1
  59. package/programs/globeshell/wiggle/logic.js +98 -191
  60. package/programs/globeshell/wiggle/object.js +35 -33
  61. package/programs/helpers/blender/program.js +19 -36
  62. package/programs/helpers/fadeaway/index.js +1 -1
  63. package/programs/helpers/fadeaway/logic.js +13 -35
  64. package/programs/helpers/fadeaway/object.js +10 -9
  65. package/programs/helpers/index.js +1 -1
  66. package/programs/index.js +8 -8
  67. package/programs/line-on-globe/angled-line.js +32 -91
  68. package/programs/line-on-globe/circle-accurate-3d.js +32 -82
  69. package/programs/line-on-globe/circle-accurate-flat.js +50 -108
  70. package/programs/line-on-globe/circle-accurate.js +33 -103
  71. package/programs/line-on-globe/circle.js +32 -97
  72. package/programs/line-on-globe/degree-padding-around-circle-3d.js +33 -83
  73. package/programs/line-on-globe/lines-color-instanced-flat.js +34 -79
  74. package/programs/line-on-globe/linestrip.js +39 -100
  75. package/programs/line-on-globe/naive-accurate-flexible.js +48 -118
  76. package/programs/line-on-globe/to-the-surface.js +29 -58
  77. package/programs/line-on-globe/util.js +1 -1
  78. package/programs/picking/pickable-renderer.js +33 -117
  79. package/programs/point-on-globe/element-globe-surface-glow.js +38 -78
  80. package/programs/point-on-globe/element-point-glow.js +35 -103
  81. package/programs/point-on-globe/square-pixel-point.js +27 -76
  82. package/programs/programcache.js +13 -13
  83. package/programs/rings/distancering/circleflatprogram.js +21 -63
  84. package/programs/rings/distancering/circlepaddingfreeangleprogram.js +145 -156
  85. package/programs/rings/distancering/circlepaddysharedbuffer.js +197 -121
  86. package/programs/rings/distancering/index.js +4 -4
  87. package/programs/rings/distancering/paddyflatprogram.js +20 -73
  88. package/programs/rings/distancering/paddyflatprogram2d.js +22 -75
  89. package/programs/rings/distancering/paddyflatprogram3d.js +20 -73
  90. package/programs/rings/partial-ring/piece-of-pie.js +35 -137
  91. package/programs/totems/camerauniformblock.js +51 -64
  92. package/programs/totems/canvas-webglobe-info.js +40 -48
  93. package/programs/totems/gpu-selection-uniform-block.js +40 -44
  94. package/programs/totems/index.js +1 -1
  95. package/programs/two-d/pixel-padding-for-compass.js +29 -90
  96. package/programs/util.js +7 -6
  97. package/programs/vectorfields/index.js +1 -1
  98. package/programs/vectorfields/logics/drawrectangleparticles.js +29 -70
  99. package/programs/vectorfields/logics/index.js +3 -3
  100. package/programs/vectorfields/logics/pixelbased.js +35 -91
  101. package/programs/vectorfields/logics/ubo.js +25 -31
  102. package/programs/vectorfields/pingpongbuffermanager.js +34 -30
  103. package/rangerings/index.js +4 -4
  104. package/rangerings/plugin.js +252 -202
  105. package/rangerings/rangeringangletext.js +120 -108
  106. package/rangerings/ring-account.js +69 -52
  107. package/shaders/fragment-toy/firework.js +1 -55
  108. package/shaders/fragment-toy/singularity.js +1 -55
  109. package/timetracks/adaptors-line-strip.js +37 -26
  110. package/timetracks/adaptors.js +61 -47
  111. package/timetracks/index.js +4 -4
  112. package/timetracks/plugin-line-strip.js +63 -59
  113. package/timetracks/plugin.js +69 -65
  114. package/timetracks/program-line-strip.js +103 -296
  115. package/timetracks/program.js +113 -419
  116. package/timetracks/programpoint-line-strip.js +44 -97
  117. package/timetracks/programpoint.js +44 -90
  118. package/util/account/bufferoffsetmanager.js +95 -72
  119. package/util/account/index.js +1 -1
  120. package/util/account/single-attribute-buffer-management/buffer-manager.js +43 -39
  121. package/util/account/single-attribute-buffer-management/buffer-orchestrator.js +94 -64
  122. package/util/account/single-attribute-buffer-management/index.js +3 -3
  123. package/util/account/single-attribute-buffer-management/object-store.js +30 -28
  124. package/util/account/util.js +4 -2
  125. package/util/algorithms/search-binary.js +4 -4
  126. package/util/check/get.js +5 -5
  127. package/util/check/typecheck.js +15 -13
  128. package/util/geometry/index.js +11 -9
  129. package/util/gl-util/buffer/attribute-loader.js +20 -8
  130. package/util/gl-util/buffer/index.js +1 -1
  131. package/util/gl-util/draw-options/methods.js +7 -7
  132. package/util/gl-util/uniform-block/manager.js +67 -55
  133. package/util/heatwavedatamanager/datamanager.js +116 -56
  134. package/util/heatwavedatamanager/index.js +2 -2
  135. package/util/heatwavedatamanager/pointcoordinatesdatacalculator.js +40 -37
  136. package/util/heatwavedatamanager/pointcoordsmeta.js +10 -9
  137. package/util/index.js +6 -6
  138. package/util/interpolation/timetrack/index.js +1 -1
  139. package/util/interpolation/timetrack/timetrack-interpolator.js +29 -27
  140. package/util/interpolation/timetrack/web-worker-str.js +1 -179
  141. package/util/interpolation/timetrack/web-worker.js +4 -4
  142. package/util/jshelpers/data-filler.js +7 -7
  143. package/util/jshelpers/timefilters.js +7 -7
  144. package/util/picking/fence.js +7 -7
  145. package/util/picking/picker-displayer.js +52 -46
  146. package/util/programs/draw-texture-on-canvas.js +21 -39
  147. package/util/programs/shapesonglobe.js +64 -104
  148. package/util/programs/supersampletotextures.js +39 -45
  149. package/util/programs/texturetoglobe.js +48 -98
  150. package/util/shaderfunctions/geometrytransformations.js +27 -322
  151. package/util/shaderfunctions/nodata.js +1 -7
  152. package/util/shaderfunctions/noisefunctions.js +9 -39
  153. package/util/surface-line-data/arcs-to-cuts.js +23 -20
  154. package/util/webglobe/rasteroverlay.js +37 -35
  155. package/util/webglobjectbuilders.js +60 -55
  156. package/util/webglobjectbuilders1.js +49 -48
  157. package/waveparticles/adaptor.js +7 -6
  158. package/waveparticles/index.js +2 -2
  159. package/waveparticles/plugin.js +84 -79
  160. package/wind/imagetovectorfieldandmagnitude.js +15 -15
  161. package/wind/index.js +4 -4
  162. package/wind/plugin.js +251 -453
  163. package/wind/vectorfieldimage.js +5 -5
  164. package/write-text/attached-text-writer.js +48 -46
  165. package/write-text/context-text.js +58 -51
  166. package/write-text/context-text3.js +74 -69
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.keyMethod = exports.PointTracksPlugin = void 0;
4
- const account_1 = require("../util/account");
5
- const picker_displayer_1 = require("../util/picking/picker-displayer");
6
- const square_pixel_point_1 = require("../programs/point-on-globe/square-pixel-point");
7
- const methods_1 = require("../Math/methods");
4
+ var account_1 = require("../util/account");
5
+ var picker_displayer_1 = require("../util/picking/picker-displayer");
6
+ var square_pixel_point_1 = require("../programs/point-on-globe/square-pixel-point");
7
+ var methods_1 = require("../Math/methods");
8
8
  /**
9
9
  * @typedef {number} long
10
10
  * @typedef {number} lat
@@ -15,8 +15,9 @@ const methods_1 = require("../Math/methods");
15
15
  * @typedef { long ,lat, height, ID } Point
16
16
  * @typedef {Array<Point>, rgba, trackID} Track
17
17
  */
18
- class PointTracksPlugin {
19
- constructor(id, { pointSize = 2, hoveredPointSize = 4, selectionPointFilling = 4, opacity = 1.0 } = {}) {
18
+ var PointTracksPlugin = /** @class */ (function () {
19
+ function PointTracksPlugin(id, _a) {
20
+ var _b = _a === void 0 ? {} : _a, _c = _b.pointSize, pointSize = _c === void 0 ? 2 : _c, _d = _b.hoveredPointSize, hoveredPointSize = _d === void 0 ? 4 : _d, _e = _b.selectionPointFilling, selectionPointFilling = _e === void 0 ? 4 : _e, _f = _b.opacity, opacity = _f === void 0 ? 1.0 : _f;
20
21
  this.id = id;
21
22
  this._isFreed = false;
22
23
  this._pointProgram = null;
@@ -32,40 +33,40 @@ class PointTracksPlugin {
32
33
  this._lastWH = { w: 0, h: 0 };
33
34
  this._focusParams = { on: false, length: 0, elementBuffer: null, trackIDs: [] };
34
35
  this.pointSizes = {
35
- pointSize,
36
- selectionPointFilling,
37
- hoveredPointSize
36
+ pointSize: pointSize,
37
+ selectionPointFilling: selectionPointFilling,
38
+ hoveredPointSize: hoveredPointSize
38
39
  };
39
40
  }
40
- init(globe, gl) {
41
+ PointTracksPlugin.prototype.init = function (globe, gl) {
41
42
  this.globe = globe;
42
43
  this.gl = gl;
43
44
  this._pickerDisplayer = new picker_displayer_1.PickerDisplayer(globe);
44
45
  this._pointProgram = square_pixel_point_1.PointOnGlobeProgramCache.get(globe);
45
46
  this._focusParams.elementBuffer = gl.createBuffer();
46
47
  this._initBufferManagers();
47
- }
48
- _initBufferManagers() {
49
- const { gl } = this;
50
- const initialCapacity = 10;
51
- const bufferType = "DYNAMIC_DRAW";
52
- this._bufferOrchestrator = new account_1.BufferOrchestrator({ initialCapacity });
48
+ };
49
+ PointTracksPlugin.prototype._initBufferManagers = function () {
50
+ var gl = this.gl;
51
+ var initialCapacity = 10;
52
+ var bufferType = "DYNAMIC_DRAW";
53
+ this._bufferOrchestrator = new account_1.BufferOrchestrator({ initialCapacity: initialCapacity });
53
54
  this._bufferManagersMap = new Map([
54
55
  ["pos3D", {
55
- bufferManager: new account_1.BufferManager(gl, 3, { bufferType, initialCapacity }),
56
- adaptor: (item) => new Float32Array((0, methods_1.wgs84ToCartesian3d)(item.long, item.lat, item.height / 1000)) // height is in meters
56
+ bufferManager: new account_1.BufferManager(gl, 3, { bufferType: bufferType, initialCapacity: initialCapacity }),
57
+ adaptor: function (item) { return new Float32Array((0, methods_1.wgs84ToCartesian3d)(item.long, item.lat, item.height / 1000)); } // height is in meters
57
58
  }],
58
59
  ["pos2D", {
59
- bufferManager: new account_1.BufferManager(gl, 2, { bufferType, initialCapacity }),
60
- adaptor: (item) => new Float32Array((0, methods_1.wgs84ToMercator)(item.long, item.lat))
60
+ bufferManager: new account_1.BufferManager(gl, 2, { bufferType: bufferType, initialCapacity: initialCapacity }),
61
+ adaptor: function (item) { return new Float32Array((0, methods_1.wgs84ToMercator)(item.long, item.lat)); }
61
62
  }],
62
63
  ["rgba", {
63
- bufferManager: new account_1.BufferManager(gl, 4, { bufferType, initialCapacity }),
64
- adaptor: (item) => item.rgba
64
+ bufferManager: new account_1.BufferManager(gl, 4, { bufferType: bufferType, initialCapacity: initialCapacity }),
65
+ adaptor: function (item) { return item.rgba; }
65
66
  }],
66
67
  ["objectStore", {
67
- bufferManager: new account_1.ObjectStore({ initialCapacity }),
68
- adaptor: (item) => {
68
+ bufferManager: new account_1.ObjectStore({ initialCapacity: initialCapacity }),
69
+ adaptor: function (item) {
69
70
  return {
70
71
  trackID: item.trackID, pointID: item.pointID
71
72
  };
@@ -73,117 +74,122 @@ class PointTracksPlugin {
73
74
  }]
74
75
  ]);
75
76
  this._vao = this._pointProgram.createVAO(this._bufferManagersMap.get("pos3D").bufferManager.buffer, this._bufferManagersMap.get("pos2D").bufferManager.buffer, this._bufferManagersMap.get("rgba").bufferManager.buffer);
76
- }
77
- setPointSize(size) {
77
+ };
78
+ PointTracksPlugin.prototype.setPointSize = function (size) {
78
79
  var _a;
79
80
  this.pointSizes.pointSize = size;
80
81
  (_a = this.globe) === null || _a === void 0 ? void 0 : _a.DrawRender();
81
- }
82
- setSelectionPointFilling(size) {
82
+ };
83
+ PointTracksPlugin.prototype.setSelectionPointFilling = function (size) {
83
84
  var _a;
84
85
  this.pointSizes.selectionPointFilling = size;
85
86
  (_a = this.globe) === null || _a === void 0 ? void 0 : _a.DrawRender();
86
- }
87
- setHoveredPointSize(size) {
87
+ };
88
+ PointTracksPlugin.prototype.setHoveredPointSize = function (size) {
88
89
  var _a;
89
90
  this.pointSizes.hoveredPointSize = size;
90
91
  (_a = this.globe) === null || _a === void 0 ? void 0 : _a.DrawRender();
91
- }
92
- setOpacity(opacity) {
92
+ };
93
+ PointTracksPlugin.prototype.setOpacity = function (opacity) {
93
94
  var _a;
94
95
  if (opacity < 0 || opacity > 1)
95
96
  return;
96
97
  this._opacity = opacity;
97
98
  (_a = this.globe) === null || _a === void 0 ? void 0 : _a.DrawRender();
98
- }
99
- getCurrentSelection() {
99
+ };
100
+ PointTracksPlugin.prototype.getCurrentSelection = function () {
100
101
  return this._selectedObj;
101
- }
102
+ };
102
103
  /**
103
104
  *
104
105
  * @param {*} x screen x
105
106
  * @param {*} y screen y
106
107
  * @param {*} callback callback on selection
107
108
  */
108
- screenSelection(x, y, callback) {
109
- const { pointSizes, _pickerDisplayer } = this;
110
- const objectStore = this._bufferManagersMap.get("objectStore").bufferManager;
111
- const wrapper = (selectedIDsSet) => {
112
- const selectedIDs = Array.from(selectedIDsSet);
109
+ PointTracksPlugin.prototype.screenSelection = function (x, y, callback) {
110
+ var _this = this;
111
+ var _a = this, pointSizes = _a.pointSizes, _pickerDisplayer = _a._pickerDisplayer;
112
+ var objectStore = this._bufferManagersMap.get("objectStore").bufferManager;
113
+ var wrapper = function (selectedIDsSet) {
114
+ var selectedIDs = Array.from(selectedIDsSet);
113
115
  if (selectedIDs.length === 0) {
114
- this._selectedObj = null;
115
- this._selectedID = -1;
116
+ _this._selectedObj = null;
117
+ _this._selectedID = -1;
116
118
  callback([]);
117
119
  return;
118
120
  }
119
- const selectedPoints = [];
120
- for (let i = 0; i < selectedIDs.length; i++) {
121
- const id = selectedIDs[i];
121
+ var selectedPoints = [];
122
+ for (var i = 0; i < selectedIDs.length; i++) {
123
+ var id = selectedIDs[i];
122
124
  if (i === 0) {
123
- this._selectedID = id;
124
- this._selectedObj = objectStore.get(id);
125
+ _this._selectedID = id;
126
+ _this._selectedObj = objectStore.get(id);
125
127
  }
126
- const obj = objectStore.get(id);
128
+ var obj = objectStore.get(id);
127
129
  selectedPoints.push(obj);
128
130
  }
129
131
  callback(selectedPoints);
130
132
  };
131
133
  _pickerDisplayer.pickXY(x, y, pointSizes.selectionPointFilling, wrapper);
132
- }
134
+ };
133
135
  /**
134
136
  * @param {Array<Track>} tracks
135
137
  * @returns
136
138
  */
137
- insertBulk(tracks) {
139
+ PointTracksPlugin.prototype.insertBulk = function (tracks) {
138
140
  var _a;
139
141
  this._fillTracksToPointsMap(tracks); // TODO error should be at the top
140
- const flattenedPoints = tracks.map(trackToFlatPoints).flat();
141
- const currentLoad = this._bufferOrchestrator.length;
142
+ var flattenedPoints = tracks.map(trackToFlatPoints).flat();
143
+ var currentLoad = this._bufferOrchestrator.length;
142
144
  if (currentLoad + flattenedPoints.length >= 2147483647) {
143
145
  throw new Error("Too many points, Point count cannot exceed 2147483647");
144
146
  }
145
- const { _bufferManagersMap, _bufferOrchestrator } = this;
147
+ var _b = this, _bufferManagersMap = _b._bufferManagersMap, _bufferOrchestrator = _b._bufferOrchestrator;
146
148
  _bufferOrchestrator.insertBulk(flattenedPoints, _bufferManagersMap);
147
149
  this._refillFocus();
148
150
  (_a = this.globe) === null || _a === void 0 ? void 0 : _a.DrawRender();
149
- }
150
- flush() {
151
+ };
152
+ PointTracksPlugin.prototype.flush = function () {
151
153
  var _a, _b;
152
- const capacity = 100;
153
- (_a = this._bufferOrchestrator) === null || _a === void 0 ? void 0 : _a.flush({ capacity });
154
- this._bufferManagersMap.forEach(({ bufferManager }) => bufferManager.resetWithCapacity(capacity));
154
+ var capacity = 100;
155
+ (_a = this._bufferOrchestrator) === null || _a === void 0 ? void 0 : _a.flush({ capacity: capacity });
156
+ this._bufferManagersMap.forEach(function (_a) {
157
+ var bufferManager = _a.bufferManager;
158
+ return bufferManager.resetWithCapacity(capacity);
159
+ });
155
160
  this._turnOffFocus();
156
161
  this._tracksToPointsMap.clear();
157
162
  (_b = this.globe) === null || _b === void 0 ? void 0 : _b.DrawRender();
158
- }
163
+ };
159
164
  /**
160
165
  * @param {string} trackID
161
166
  */
162
- deleteTrack(trackID) {
167
+ PointTracksPlugin.prototype.deleteTrack = function (trackID) {
163
168
  var _a;
164
- const pointSet = this._tracksToPointsMap.get(trackID);
165
- const points = Array.from(pointSet);
166
- const { _bufferOrchestrator, _bufferManagersMap } = this;
167
- _bufferOrchestrator.deleteBulk(points.map((pointID) => keyMethod(trackID, pointID)), _bufferManagersMap);
169
+ var pointSet = this._tracksToPointsMap.get(trackID);
170
+ var points = Array.from(pointSet);
171
+ var _b = this, _bufferOrchestrator = _b._bufferOrchestrator, _bufferManagersMap = _b._bufferManagersMap;
172
+ _bufferOrchestrator.deleteBulk(points.map(function (pointID) { return keyMethod(trackID, pointID); }), _bufferManagersMap);
168
173
  this._tracksToPointsMap.delete(trackID);
169
174
  this._redraw = true;
170
175
  this._refillFocus();
171
176
  (_a = this.globe) === null || _a === void 0 ? void 0 : _a.DrawRender();
172
- }
177
+ };
173
178
  /**
174
179
  * @param {string} trackID
175
180
  * @param {Array<string>} pointIDs
176
181
  */
177
- deletePoints(trackID, pointIDs) {
182
+ PointTracksPlugin.prototype.deletePoints = function (trackID, pointIDs) {
178
183
  var _a;
179
- const { _bufferOrchestrator, _bufferManagersMap } = this;
180
- _bufferOrchestrator.deleteBulk(pointIDs.map((pointID) => keyMethod(trackID, pointID)), _bufferManagersMap);
184
+ var _b = this, _bufferOrchestrator = _b._bufferOrchestrator, _bufferManagersMap = _b._bufferManagersMap;
185
+ _bufferOrchestrator.deleteBulk(pointIDs.map(function (pointID) { return keyMethod(trackID, pointID); }), _bufferManagersMap);
181
186
  this._deletePointsFromTracksMap(trackID, pointIDs);
182
187
  this._refillFocus();
183
188
  (_a = this.globe) === null || _a === void 0 ? void 0 : _a.DrawRender();
184
- }
185
- focusTracks(trackIDs = null) {
189
+ };
190
+ PointTracksPlugin.prototype.focusTracks = function (trackIDs) {
186
191
  var _a;
192
+ if (trackIDs === void 0) { trackIDs = null; }
187
193
  if (!this.globe)
188
194
  return;
189
195
  if (!trackIDs) {
@@ -196,19 +202,22 @@ class PointTracksPlugin {
196
202
  this._turnOffFocus();
197
203
  }
198
204
  this.globe.DrawRender();
199
- }
205
+ };
200
206
  // GLOBE API METHODS
201
- free() {
207
+ PointTracksPlugin.prototype.free = function () {
202
208
  if (this._isFreed)
203
209
  return;
204
210
  this._isFreed = true;
205
211
  this._pickerDisplayer.free();
206
212
  square_pixel_point_1.PointOnGlobeProgramCache.release(this.globe);
207
213
  this.gl.deleteBuffer(this._focusParams.elementBuffer);
208
- this._bufferManagersMap.forEach(({ bufferManager, adaptor }) => bufferManager.free());
209
- }
210
- draw3D() {
211
- const { gl, _pointProgram, _pickerDisplayer, _bufferOrchestrator, _vao } = this;
214
+ this._bufferManagersMap.forEach(function (_a) {
215
+ var bufferManager = _a.bufferManager, adaptor = _a.adaptor;
216
+ return bufferManager.free();
217
+ });
218
+ };
219
+ PointTracksPlugin.prototype.draw3D = function () {
220
+ var _a = this, gl = _a.gl, _pointProgram = _a._pointProgram, _pickerDisplayer = _a._pickerDisplayer, _bufferOrchestrator = _a._bufferOrchestrator, _vao = _a._vao;
212
221
  this.resize();
213
222
  _pickerDisplayer.bindFBO();
214
223
  _pickerDisplayer.clearTextures();
@@ -232,73 +241,77 @@ class PointTracksPlugin {
232
241
  gl.bindFramebuffer(gl.FRAMEBUFFER, null);
233
242
  _pickerDisplayer.drawColorTexture();
234
243
  this._selfSelect();
235
- }
236
- resize() {
244
+ };
245
+ PointTracksPlugin.prototype.resize = function () {
237
246
  var _a;
238
- const w = this.globe.api_ScrW();
239
- const h = this.globe.api_ScrH();
247
+ var w = this.globe.api_ScrW();
248
+ var h = this.globe.api_ScrH();
240
249
  if (w === this._lastWH.w && h === this._lastWH.h)
241
250
  return;
242
251
  this._lastWH.w = w;
243
252
  this._lastWH.h = h;
244
253
  this._pickerDisplayer.resize();
245
254
  (_a = this.globe) === null || _a === void 0 ? void 0 : _a.DrawRender();
246
- }
255
+ };
247
256
  // IMPLICIT METHODS
248
- _fillTracksToPointsMap(tracks) {
249
- for (const track of tracks) {
250
- const trackID = track.trackID;
251
- const points = track.points;
257
+ PointTracksPlugin.prototype._fillTracksToPointsMap = function (tracks) {
258
+ for (var _i = 0, tracks_1 = tracks; _i < tracks_1.length; _i++) {
259
+ var track = tracks_1[_i];
260
+ var trackID = track.trackID;
261
+ var points = track.points;
252
262
  if (!this._tracksToPointsMap.has(trackID)) {
253
263
  this._tracksToPointsMap.set(trackID, new Set());
254
264
  }
255
- const pointSet = this._tracksToPointsMap.get(trackID);
256
- for (let p = 0; p < points.length; p++) {
257
- const pointID = points[p].ID;
265
+ var pointSet = this._tracksToPointsMap.get(trackID);
266
+ for (var p = 0; p < points.length; p++) {
267
+ var pointID = points[p].ID;
258
268
  pointSet.add(pointID);
259
269
  }
260
270
  }
261
- }
262
- _refillFocus() {
271
+ };
272
+ PointTracksPlugin.prototype._refillFocus = function () {
263
273
  if (this._focusParams.on) {
264
274
  this.focusTracks(this._focusParams.trackIDs);
265
275
  }
266
- }
267
- _deletePointsFromTracksMap(trackID, pointIDs) {
268
- const trackSet = this._tracksToPointsMap.get(trackID);
269
- for (const pointID of pointIDs) {
276
+ };
277
+ PointTracksPlugin.prototype._deletePointsFromTracksMap = function (trackID, pointIDs) {
278
+ var trackSet = this._tracksToPointsMap.get(trackID);
279
+ for (var _i = 0, pointIDs_1 = pointIDs; _i < pointIDs_1.length; _i++) {
280
+ var pointID = pointIDs_1[_i];
270
281
  trackSet.delete(pointID);
271
282
  }
272
- }
273
- _selfSelect() {
274
- const { globe } = this;
275
- const pos = globe.api_GetMousePos();
276
- const x = pos.canvasX;
277
- const y = globe.api_ScrH() - pos.canvasY;
278
- this.screenSelection(x, y, (selectedPoints) => {
283
+ };
284
+ PointTracksPlugin.prototype._selfSelect = function () {
285
+ var globe = this.globe;
286
+ var pos = globe.api_GetMousePos();
287
+ var x = pos.canvasX;
288
+ var y = globe.api_ScrH() - pos.canvasY;
289
+ this.screenSelection(x, y, function (selectedPoints) {
279
290
  });
280
- }
281
- _turnOffFocus() {
282
- const { gl } = this;
291
+ };
292
+ PointTracksPlugin.prototype._turnOffFocus = function () {
293
+ var gl = this.gl;
283
294
  gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER, this._focusParams.elementBuffer);
284
295
  gl.bufferData(gl.ELEMENT_ARRAY_BUFFER, new Uint32Array([]), gl.STATIC_DRAW);
285
296
  gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER, null);
286
297
  this._focusParams.length = 0;
287
298
  this._focusParams.on = false;
288
- }
289
- _fillElementBuffer(trackIDs) {
290
- let length = 0;
291
- const indexes = [];
292
- const foundTracks = [];
293
- for (const trackID of trackIDs) {
294
- const pointSet = this._tracksToPointsMap.get(trackID);
299
+ };
300
+ PointTracksPlugin.prototype._fillElementBuffer = function (trackIDs) {
301
+ var length = 0;
302
+ var indexes = [];
303
+ var foundTracks = [];
304
+ for (var _i = 0, trackIDs_1 = trackIDs; _i < trackIDs_1.length; _i++) {
305
+ var trackID = trackIDs_1[_i];
306
+ var pointSet = this._tracksToPointsMap.get(trackID);
295
307
  if (!pointSet)
296
308
  continue;
297
309
  foundTracks.push(trackID);
298
- const points = Array.from(pointSet);
299
- for (const pointID of points) {
300
- const key = keyMethod(trackID, pointID);
301
- const index = this._bufferOrchestrator.offsetMap.get(key);
310
+ var points = Array.from(pointSet);
311
+ for (var _a = 0, points_1 = points; _a < points_1.length; _a++) {
312
+ var pointID = points_1[_a];
313
+ var key = keyMethod(trackID, pointID);
314
+ var index = this._bufferOrchestrator.offsetMap.get(key);
302
315
  indexes.push(index);
303
316
  length++;
304
317
  }
@@ -308,31 +321,33 @@ class PointTracksPlugin {
308
321
  if (length === 0) {
309
322
  return false;
310
323
  }
311
- const { gl } = this;
324
+ var gl = this.gl;
312
325
  gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER, this._focusParams.elementBuffer);
313
326
  gl.bufferData(gl.ELEMENT_ARRAY_BUFFER, new Uint32Array(indexes), gl.STATIC_DRAW);
314
327
  gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER, null);
315
328
  return true;
316
- }
317
- }
329
+ };
330
+ return PointTracksPlugin;
331
+ }());
318
332
  exports.PointTracksPlugin = PointTracksPlugin;
319
- const trackToFlatPoints = (track) => {
320
- const trackID = track.trackID;
321
- const points = track.points;
322
- const rgba = new Float32Array(track.rgba);
323
- const flatPoints = [];
324
- for (const point of points) {
333
+ var trackToFlatPoints = function (track) {
334
+ var trackID = track.trackID;
335
+ var points = track.points;
336
+ var rgba = new Float32Array(track.rgba);
337
+ var flatPoints = [];
338
+ for (var _i = 0, points_2 = points; _i < points_2.length; _i++) {
339
+ var point = points_2[_i];
325
340
  flatPoints.push({
326
341
  key: keyMethod(trackID, point.ID),
327
342
  long: point.long,
328
343
  lat: point.lat,
329
344
  height: point.height,
330
345
  pointID: point.ID,
331
- rgba,
332
- trackID
346
+ rgba: rgba,
347
+ trackID: trackID
333
348
  });
334
349
  }
335
350
  return flatPoints;
336
351
  };
337
- const keyMethod = (trackID, pointID) => `${trackID}_${pointID}`;
352
+ var keyMethod = function (trackID, pointID) { return "".concat(trackID, "_").concat(pointID); };
338
353
  exports.keyMethod = keyMethod;
@@ -3,5 +3,5 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- const object_1 = __importDefault(require("./object"));
6
+ var object_1 = __importDefault(require("./object"));
7
7
  exports.default = object_1.default;