@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,17 +1,28 @@
1
1
  "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
2
13
  Object.defineProperty(exports, "__esModule", { value: true });
3
14
  exports.RINGPARTIAL_DRAW_MODE = void 0;
4
- const piece_of_pie_1 = require("../programs/rings/partial-ring/piece-of-pie");
5
- const naive_accurate_flexible_1 = require("../programs/line-on-globe/naive-accurate-flexible");
6
- const circle_accurate_3d_1 = require("../programs/line-on-globe/circle-accurate-3d");
7
- const circle_accurate_flat_1 = require("../programs/line-on-globe/circle-accurate-flat");
8
- const account_1 = require("../util/account");
9
- const get_1 = require("../util/check/get");
10
- const data_filler_1 = require("../util/jshelpers/data-filler");
11
- const context_text3_1 = require("../write-text/context-text3");
12
- const typecheck_1 = require("../util/check/typecheck");
13
- const geometry_1 = require("../util/geometry");
14
- const attribute_loader_1 = require("../util/gl-util/buffer/attribute-loader");
15
+ var piece_of_pie_1 = require("../programs/rings/partial-ring/piece-of-pie");
16
+ var naive_accurate_flexible_1 = require("../programs/line-on-globe/naive-accurate-flexible");
17
+ var circle_accurate_3d_1 = require("../programs/line-on-globe/circle-accurate-3d");
18
+ var circle_accurate_flat_1 = require("../programs/line-on-globe/circle-accurate-flat");
19
+ var account_1 = require("../util/account");
20
+ var get_1 = require("../util/check/get");
21
+ var data_filler_1 = require("../util/jshelpers/data-filler");
22
+ var context_text3_1 = require("../write-text/context-text3");
23
+ var typecheck_1 = require("../util/check/typecheck");
24
+ var geometry_1 = require("../util/geometry");
25
+ var attribute_loader_1 = require("../util/gl-util/buffer/attribute-loader");
15
26
  exports.RINGPARTIAL_DRAW_MODE = Object.freeze({
16
27
  LINE_STRIP: "LINE_STRIP",
17
28
  TRIANGLE_FAN: "TRIANGLE_FAN",
@@ -33,29 +44,30 @@ exports.RINGPARTIAL_DRAW_MODE = Object.freeze({
33
44
  * @property {number} dashOpacity 0-1
34
45
  * @property {number} circleDashAngle 0-360
35
46
  */
36
- const textWriterGetOrThrow = (0, get_1.mapGetOrThrow)("BearingLine textContextInjection id does not exist in map");
37
- const radian = (degree) => degree * Math.PI / 180;
38
- const integralSec = (angle) => {
47
+ var textWriterGetOrThrow = (0, get_1.mapGetOrThrow)("BearingLine textContextInjection id does not exist in map");
48
+ var radian = function (degree) { return degree * Math.PI / 180; };
49
+ var integralSec = function (angle) {
39
50
  return Math.log(Math.tan(angle / 2 + Math.PI / 4));
40
51
  };
41
- const calculateStartAngle = (long, lat, endLong, endLat) => {
42
- const dLat = (integralSec(endLat) - integralSec(lat)); // Because lines are strectes toward poles.
43
- const dLong = endLong - long;
44
- let angle = -Math.atan2(dLat, dLong);
52
+ var calculateStartAngle = function (long, lat, endLong, endLat) {
53
+ var dLat = (integralSec(endLat) - integralSec(lat)); // Because lines are strectes toward poles.
54
+ var dLong = endLong - long;
55
+ var angle = -Math.atan2(dLat, dLong);
45
56
  return angle;
46
57
  };
47
- class BearingLinePlugin {
58
+ var BearingLinePlugin = /** @class */ (function () {
48
59
  /**
49
60
  * @param {*} id
50
61
  * @param {Map<[key, ContextTextWriter3]>} textWritersMap
51
62
  */
52
- constructor(id, { opacity = 1, textWritersMap = new Map(), textDataPreAdaptor = (x) => x, drawVRM = true, drawBearingLine = true, drawAngleRing = true, drawText = true, circleFlatEdgeCount = circle_accurate_flat_1.EDGE_COUNT - 2 } = {}) {
63
+ function BearingLinePlugin(id, _a) {
64
+ var _b = _a === void 0 ? {} : _a, _c = _b.opacity, opacity = _c === void 0 ? 1 : _c, _d = _b.textWritersMap, textWritersMap = _d === void 0 ? new Map() : _d, _e = _b.textDataPreAdaptor, textDataPreAdaptor = _e === void 0 ? function (x) { return x; } : _e, _f = _b.drawVRM, drawVRM = _f === void 0 ? true : _f, _g = _b.drawBearingLine, drawBearingLine = _g === void 0 ? true : _g, _h = _b.drawAngleRing, drawAngleRing = _h === void 0 ? true : _h, _j = _b.drawText, drawText = _j === void 0 ? true : _j, _k = _b.circleFlatEdgeCount, circleFlatEdgeCount = _k === void 0 ? circle_accurate_flat_1.EDGE_COUNT - 2 : _k;
53
65
  this.id = id;
54
66
  this._opacity = opacity;
55
67
  this.bufferOrchestrator = new account_1.BufferOrchestrator({ capacity: 10 });
56
68
  this._checkTextContextWriterInjectionMap(textWritersMap);
57
69
  this._textWritersMap = textWritersMap;
58
- this._textWritersMap.forEach((writer) => writer.keyAdaptor = (item) => item.key);
70
+ this._textWritersMap.forEach(function (writer) { return writer.keyAdaptor = function (item) { return item.key; }; });
59
71
  this.drawVRM = drawVRM;
60
72
  this.drawBearingLine = drawBearingLine;
61
73
  this.drawAngleRing = drawAngleRing;
@@ -64,97 +76,105 @@ class BearingLinePlugin {
64
76
  this._memoryForText = new Map();
65
77
  this.circleFlatEdgeCount = circleFlatEdgeCount + 2;
66
78
  }
67
- setDoDrawVRM(bool) {
79
+ BearingLinePlugin.prototype.setDoDrawVRM = function (bool) {
68
80
  (0, typecheck_1.isBoolean)(bool);
69
81
  if (bool === this.drawVRM)
70
82
  return;
71
83
  this.drawVRM = bool;
72
84
  this.globe.DrawRender();
73
- }
74
- setDoDrawText(bool) {
85
+ };
86
+ BearingLinePlugin.prototype.setDoDrawText = function (bool) {
75
87
  (0, typecheck_1.isBoolean)(bool);
76
88
  if (bool === this.drawText)
77
89
  return;
78
90
  this.drawText = bool;
79
91
  this.globe.DrawRender();
80
- }
81
- setDoDrawText(bool) {
92
+ };
93
+ BearingLinePlugin.prototype.setDoDrawText = function (bool) {
82
94
  (0, typecheck_1.isBoolean)(bool);
83
95
  if (bool === this.drawText)
84
96
  return;
85
97
  this.drawText = bool;
86
98
  this.globe.DrawRender();
87
- }
88
- setDoDrawAngleRing(bool) {
99
+ };
100
+ BearingLinePlugin.prototype.setDoDrawAngleRing = function (bool) {
89
101
  (0, typecheck_1.isBoolean)(bool);
90
102
  if (bool === this.drawAngleRing)
91
103
  return;
92
104
  this.drawAngleRing = bool;
93
105
  this.globe.DrawRender();
94
- }
95
- setOpacity(opacity) {
106
+ };
107
+ BearingLinePlugin.prototype.setOpacity = function (opacity) {
96
108
  (0, typecheck_1.constraintFloat)(opacity, 0, 1);
97
109
  this._opacity = opacity;
98
- this._textWritersMap.forEach((writer) => writer.setOpacity(opacity));
110
+ this._textWritersMap.forEach(function (writer) { return writer.setOpacity(opacity); });
99
111
  this.globe.DrawRender();
100
- }
112
+ };
101
113
  /**
102
114
 
103
115
  * @param {Array<BearingLineItem>} items
104
116
  * @param {Array<string>} textWriterIDs | textWritersMap keys to be used for writing text.
105
117
  */
106
- insertBulk(items, { textWriterIDs = [] } = {}) {
107
- const { globe, bufferOrchestrator, bufferManagersCompMap } = this; // angleTextContext, distanceTextContext,
108
- const data = [];
109
- for (let item of items) {
118
+ BearingLinePlugin.prototype.insertBulk = function (items, _a) {
119
+ var _b = _a === void 0 ? {} : _a, _c = _b.textWriterIDs, textWriterIDs = _c === void 0 ? [] : _c;
120
+ var _d = this, globe = _d.globe, bufferOrchestrator = _d.bufferOrchestrator, bufferManagersCompMap = _d.bufferManagersCompMap; // angleTextContext, distanceTextContext,
121
+ var data = [];
122
+ for (var _i = 0, items_1 = items; _i < items_1.length; _i++) {
123
+ var item = items_1[_i];
110
124
  data.push(this.__insertAdaptor(item));
111
125
  }
112
126
  bufferOrchestrator.insertBulk(data, bufferManagersCompMap);
113
127
  this.__insertTexts(items, textWriterIDs);
114
128
  globe.DrawRender();
115
- }
129
+ };
116
130
  /**
117
131
  * @param {Array<string>} textWriterIDs | textWritersMap keys to be used for writing text.
118
132
  * @param {Array<string>} itemKeys | if empty, all texts will be updated.
119
133
  */
120
- updateText(textWriterIDs = [], itemKeys = null) {
121
- const textWritersMap = textWriterGetOrThrow(this._textWritersMap, textWriterIDs);
134
+ BearingLinePlugin.prototype.updateText = function (textWriterIDs, itemKeys) {
135
+ var _this = this;
136
+ if (textWriterIDs === void 0) { textWriterIDs = []; }
137
+ if (itemKeys === void 0) { itemKeys = null; }
138
+ var textWritersMap = textWriterGetOrThrow(this._textWritersMap, textWriterIDs);
122
139
  if (itemKeys === null) {
123
- this._memoryForText.forEach((item) => {
124
- let _item = this._textDataPreAdaptor(item);
125
- textWritersMap.forEach((writer) => writer.insertText(_item));
140
+ this._memoryForText.forEach(function (item) {
141
+ var _item = _this._textDataPreAdaptor(item);
142
+ textWritersMap.forEach(function (writer) { return writer.insertText(_item); });
126
143
  });
127
144
  }
128
145
  else {
129
- itemKeys.forEach((key) => {
130
- let item = this._memoryForText.get(key);
146
+ itemKeys.forEach(function (key) {
147
+ var item = _this._memoryForText.get(key);
131
148
  if (item === undefined)
132
149
  return;
133
- let _item = this._textDataPreAdaptor(item);
134
- textWritersMap.forEach((writer) => writer.insertText(_item));
150
+ var _item = _this._textDataPreAdaptor(item);
151
+ textWritersMap.forEach(function (writer) { return writer.insertText(_item); });
135
152
  });
136
153
  }
137
154
  this.globe.DrawRender();
138
- }
139
- deleteBulk(keys) {
155
+ };
156
+ BearingLinePlugin.prototype.deleteBulk = function (keys) {
140
157
  this.bufferOrchestrator.deleteBulk(keys, this.bufferManagersCompMap);
141
- for (const key of keys) {
158
+ for (var _i = 0, keys_1 = keys; _i < keys_1.length; _i++) {
159
+ var key = keys_1[_i];
142
160
  this._memoryForText.delete(key);
143
161
  }
144
162
  this._deleteTexts(keys);
145
163
  this.globe.DrawRender();
146
- }
147
- defrag() {
164
+ };
165
+ BearingLinePlugin.prototype.defrag = function () {
148
166
  this.bufferOrchestrator.defrag(this.bufferManagersCompMap);
149
- }
167
+ };
150
168
  /**
151
169
  * @param {Array<{key, long, lat, endLong, endLat, bearingAngle}>} items
152
170
  * @param {Array<string>} textWriterIDs | textWritersMap keys to be used for writing text.
153
171
  */
154
- updateCoordinatesBulk(items, { textWriterIDs = [] } = {}) {
155
- const { globe, bufferOrchestrator, bufferManagersCompMap, } = this;
156
- const data = [];
157
- for (let item of items) {
172
+ BearingLinePlugin.prototype.updateCoordinatesBulk = function (items, _a) {
173
+ var _b = _a === void 0 ? {} : _a, _c = _b.textWriterIDs, textWriterIDs = _c === void 0 ? [] : _c;
174
+ var _d = this, globe = _d.globe, bufferOrchestrator = _d.bufferOrchestrator, bufferManagersCompMap = _d.bufferManagersCompMap;
175
+ var data = [];
176
+ for (var _i = 0, items_2 = items; _i < items_2.length; _i++) {
177
+ var item = items_2[_i];
158
178
  data.push(this.__updateCoordsAdaptor(item));
159
179
  }
160
180
  this.__insertTexts(items, textWriterIDs);
@@ -162,7 +182,7 @@ class BearingLinePlugin {
162
182
  "startAngle2d", "tailAngle2d", "startAngle3d", "tailAngle3d", "bearingTargetCoords2d", "bearingTargetCoords3d", "centerCoords2dflat",
163
183
  "bigRadius", "radius"]);
164
184
  globe.DrawRender();
165
- }
185
+ };
166
186
  /**
167
187
  *
168
188
  * @param {Array<BearingLineItem>} items some colums EXCEPT positional ones
@@ -171,215 +191,218 @@ class BearingLinePlugin {
171
191
  * Do NOT send empty data if property ID of this data is entered or NaN is loaded to the buffer, resulting in an unwanted behaviour.
172
192
  *{ textWriterIDs = []}
173
193
  */
174
- updatePartial(items, propertyIDs = [], { textWriterIDs = [] } = {}) {
194
+ BearingLinePlugin.prototype.updatePartial = function (items, propertyIDs, _a) {
195
+ if (propertyIDs === void 0) { propertyIDs = []; }
196
+ var _b = _a === void 0 ? {} : _a, _c = _b.textWriterIDs, textWriterIDs = _c === void 0 ? [] : _c;
175
197
  if (propertyIDs.length === 0)
176
198
  console.warn("updatePartial is called with no target propertyIDs");
177
- const fixedPropertyIDs = this.__fixPartialProperties(propertyIDs);
178
- const { bufferOrchestrator, bufferManagersCompMap } = this;
199
+ var fixedPropertyIDs = this.__fixPartialProperties(propertyIDs);
200
+ var _d = this, bufferOrchestrator = _d.bufferOrchestrator, bufferManagersCompMap = _d.bufferManagersCompMap;
179
201
  bufferOrchestrator.updateBulk(items, bufferManagersCompMap, fixedPropertyIDs);
180
202
  // patch to update text opacity
181
203
  this.__insertTexts(items, textWriterIDs);
182
204
  this.globe.DrawRender();
183
- }
205
+ };
184
206
  // Private methods
185
- _checkTextContextWriterInjectionMap(textContextWriterInjectionMap) {
207
+ BearingLinePlugin.prototype._checkTextContextWriterInjectionMap = function (textContextWriterInjectionMap) {
186
208
  if (!(textContextWriterInjectionMap instanceof Map))
187
209
  throw new Error("textContextWriterInjectionMap is not an instance of Map");
188
- textContextWriterInjectionMap.forEach((v) => {
210
+ textContextWriterInjectionMap.forEach(function (v) {
189
211
  if (!(v instanceof context_text3_1.ContextTextWriter3))
190
212
  throw new Error("textContextWriterInjectionMap element is not an instance of ContextTextWriter3");
191
213
  });
192
- }
193
- __insertTexts(items, textWriterIDs) {
194
- const textWritersMap = textWriterGetOrThrow(this._textWritersMap, textWriterIDs);
195
- for (const item of items) {
196
- const oldItem = this._memoryForText.get(item.key);
197
- let _item = oldItem !== undefined ? { ...oldItem, ...item } : item;
198
- this._memoryForText.set(item.key, _item);
199
- if (this._textDataPreAdaptor !== null)
200
- _item = this._textDataPreAdaptor(_item);
201
- textWritersMap.forEach((writer) => writer.insertText(_item));
202
- }
203
- }
204
- __insertAdaptor(item) {
205
- const rgba = item.rgba !== undefined ? item.rgba : [0, 0, 0, 0];
206
- const rgbaMode = item.rgbaMode !== undefined ? item.rgbaMode : 0;
207
- const dashRatio = item.dashRatio !== undefined ? item.dashRatio : 1.0;
208
- const dashOpacity = item.dashOpacity !== undefined ? item.dashOpacity : 0.9;
209
- const circleDashAngle = item.circleDashAngle !== undefined ? item.circleDashAngle : 360;
210
- const coordsData = this.__updateCoordsAdaptor(item);
211
- return {
212
- ...coordsData,
213
- rgba,
214
- dashRatio,
215
- dashOpacity,
216
- circleDashAngle,
217
- rgbaMode
214
+ };
215
+ BearingLinePlugin.prototype.__insertTexts = function (items, textWriterIDs) {
216
+ var textWritersMap = textWriterGetOrThrow(this._textWritersMap, textWriterIDs);
217
+ var _loop_1 = function (item) {
218
+ var oldItem = this_1._memoryForText.get(item.key);
219
+ var _item = oldItem !== undefined ? __assign(__assign({}, oldItem), item) : item;
220
+ this_1._memoryForText.set(item.key, _item);
221
+ if (this_1._textDataPreAdaptor !== null)
222
+ _item = this_1._textDataPreAdaptor(_item);
223
+ textWritersMap.forEach(function (writer) { return writer.insertText(_item); });
218
224
  };
219
- }
220
- __updateCoordsAdaptor(item) {
225
+ var this_1 = this;
226
+ for (var _i = 0, items_3 = items; _i < items_3.length; _i++) {
227
+ var item = items_3[_i];
228
+ _loop_1(item);
229
+ }
230
+ };
231
+ BearingLinePlugin.prototype.__insertAdaptor = function (item) {
232
+ var rgba = item.rgba !== undefined ? item.rgba : [0, 0, 0, 0];
233
+ var rgbaMode = item.rgbaMode !== undefined ? item.rgbaMode : 0;
234
+ var dashRatio = item.dashRatio !== undefined ? item.dashRatio : 1.0;
235
+ var dashOpacity = item.dashOpacity !== undefined ? item.dashOpacity : 0.9;
236
+ var circleDashAngle = item.circleDashAngle !== undefined ? item.circleDashAngle : 360;
237
+ var coordsData = this.__updateCoordsAdaptor(item);
238
+ return __assign(__assign({}, coordsData), { rgba: rgba, dashRatio: dashRatio, dashOpacity: dashOpacity, circleDashAngle: circleDashAngle, rgbaMode: rgbaMode });
239
+ };
240
+ BearingLinePlugin.prototype.__updateCoordsAdaptor = function (item) {
221
241
  var _a, _b;
222
- const { globe } = this;
223
- const lat = radian(item.lat);
224
- const long = radian(item.long);
225
- const endLat = radian(item.endLat);
226
- const endLong = radian(item.endLong);
227
- const altitude = ((_a = item.altitude) !== null && _a !== void 0 ? _a : 0) / 1000;
228
- const bigRadius = (_b = item.bigRadius) !== null && _b !== void 0 ? _b : globe.Math.GetDist2D(item.long, item.lat, item.endLong, item.endLat);
229
- const radius = item.radius !== undefined ? item.radius : bigRadius * 0.2;
230
- const { long: bearingLong, lat: bearingLat } = globe.Math.FindPointByPolar(item.long, item.lat, bigRadius, item.bearingAngle);
231
- const startAngle2d = calculateStartAngle(long, lat, endLong, endLat);
232
- const bearingAngle2d = calculateStartAngle(long, lat, radian(bearingLong), radian(bearingLat));
233
- let tailAngle2d = bearingAngle2d - startAngle2d;
242
+ var globe = this.globe;
243
+ var lat = radian(item.lat);
244
+ var long = radian(item.long);
245
+ var endLat = radian(item.endLat);
246
+ var endLong = radian(item.endLong);
247
+ var altitude = ((_a = item.altitude) !== null && _a !== void 0 ? _a : 0) / 1000;
248
+ var bigRadius = (_b = item.bigRadius) !== null && _b !== void 0 ? _b : globe.Math.GetDist2D(item.long, item.lat, item.endLong, item.endLat);
249
+ var radius = item.radius !== undefined ? item.radius : bigRadius * 0.2;
250
+ var _c = globe.Math.FindPointByPolar(item.long, item.lat, bigRadius, item.bearingAngle), bearingLong = _c.long, bearingLat = _c.lat;
251
+ var startAngle2d = calculateStartAngle(long, lat, endLong, endLat);
252
+ var bearingAngle2d = calculateStartAngle(long, lat, radian(bearingLong), radian(bearingLat));
253
+ var tailAngle2d = bearingAngle2d - startAngle2d;
234
254
  if (tailAngle2d > 0) {
235
255
  tailAngle2d -= Math.PI * 2;
236
256
  }
237
- const bearingAngle = radian(item.bearingAngle - 90);
238
- const startAngleOfCircle = globe.Math.GetAzimuthAngle(item.long, item.lat, item.endLong, item.endLat); //startAngle2d * 180 / Math.PI;
239
- const startAngle3d = radian(startAngleOfCircle) - radian(90);
240
- let tailAngle3d = bearingAngle - startAngle3d;
257
+ var bearingAngle = radian(item.bearingAngle - 90);
258
+ var startAngleOfCircle = globe.Math.GetAzimuthAngle(item.long, item.lat, item.endLong, item.endLat); //startAngle2d * 180 / Math.PI;
259
+ var startAngle3d = radian(startAngleOfCircle) - radian(90);
260
+ var tailAngle3d = bearingAngle - startAngle3d;
241
261
  if (tailAngle3d > 0) {
242
262
  tailAngle3d -= Math.PI * 2;
243
263
  }
244
- const centerCoords2dflat = (0, circle_accurate_flat_1.centerCoords2dflatDataCreator)(globe, item.long, item.lat, item.endLong, item.endLat, { startAngleOfCircle, edgeCount: this.circleFlatEdgeCount });
264
+ var centerCoords2dflat = (0, circle_accurate_flat_1.centerCoords2dflatDataCreator)(globe, item.long, item.lat, item.endLong, item.endLat, { startAngleOfCircle: startAngleOfCircle, edgeCount: this.circleFlatEdgeCount });
245
265
  return {
246
266
  key: item.key,
247
267
  lat: item.lat,
248
268
  long: item.long,
249
269
  endLat: item.endLat,
250
270
  endLong: item.endLong,
251
- altitude,
252
- bearingAngle,
253
- radius,
254
- bigRadius,
255
- startAngle2d,
256
- tailAngle2d,
257
- startAngle3d,
258
- tailAngle3d,
259
- bearingLong,
260
- bearingLat,
261
- centerCoords2dflat
271
+ altitude: altitude,
272
+ bearingAngle: bearingAngle,
273
+ radius: radius,
274
+ bigRadius: bigRadius,
275
+ startAngle2d: startAngle2d,
276
+ tailAngle2d: tailAngle2d,
277
+ startAngle3d: startAngle3d,
278
+ tailAngle3d: tailAngle3d,
279
+ bearingLong: bearingLong,
280
+ bearingLat: bearingLat,
281
+ centerCoords2dflat: centerCoords2dflat
262
282
  };
263
- }
264
- __fixPartialProperties(propertyIDs) {
265
- const s = new Set(["rgba", "dashOpacity", "circleDashAngle"]);
266
- const result = [];
267
- for (const item of propertyIDs) {
283
+ };
284
+ BearingLinePlugin.prototype.__fixPartialProperties = function (propertyIDs) {
285
+ var s = new Set(["rgba", "dashOpacity", "circleDashAngle"]);
286
+ var result = [];
287
+ for (var _i = 0, propertyIDs_1 = propertyIDs; _i < propertyIDs_1.length; _i++) {
288
+ var item = propertyIDs_1[_i];
268
289
  result.push(item);
269
290
  if (s.has(item)) {
270
291
  result.push(item + "Mercator");
271
292
  }
272
293
  }
273
294
  return result;
274
- }
295
+ };
275
296
  // Globe API
276
- init(globe, gl) {
297
+ BearingLinePlugin.prototype.init = function (globe, gl) {
298
+ var _a, _b, _c, _d, _e;
299
+ var _this = this;
277
300
  this.gl = gl;
278
301
  this.globe = globe;
279
302
  this.lineProgram = naive_accurate_flexible_1.LineOnGlobeCache.get(globe);
280
303
  this.pieceOfPieProgram = piece_of_pie_1.PieceOfPieProgramCache.get(globe);
281
304
  this.circleProgram = circle_accurate_flat_1.CircleCache.get(globe);
282
305
  this.circle3DProgram = circle_accurate_3d_1.CircleCache.get(globe);
283
- const circleFlatEdgeCount = this.circleFlatEdgeCount;
306
+ var circleFlatEdgeCount = this.circleFlatEdgeCount;
284
307
  {
285
308
  // createBuffers
286
- const bufferType = "DYNAMIC_DRAW";
287
- const initialCapacity = this.bufferOrchestrator.capacity;
309
+ var bufferType = "DYNAMIC_DRAW";
310
+ var initialCapacity = this.bufferOrchestrator.capacity;
288
311
  this.bufferManagersCompMap = new Map([
289
312
  ["centerCoords2d", {
290
- 'bufferManager': new account_1.BufferManager(gl, 2, { bufferType, initialCapacity }),
291
- 'adaptor': (item) => new Float32Array(globe.api_GetMercator2DPoint(item.long, item.lat)),
313
+ 'bufferManager': new account_1.BufferManager(gl, 2, { bufferType: bufferType, initialCapacity: initialCapacity }),
314
+ 'adaptor': function (item) { return new Float32Array(globe.api_GetMercator2DPoint(item.long, item.lat)); },
292
315
  }],
293
316
  ["centerCoords2dflat", {
294
- 'bufferManager': new account_1.BufferManager(gl, circleFlatEdgeCount * 2, { bufferType, initialCapacity }),
295
- 'adaptor': (item) => item.centerCoords2dflat,
317
+ 'bufferManager': new account_1.BufferManager(gl, circleFlatEdgeCount * 2, { bufferType: bufferType, initialCapacity: initialCapacity }),
318
+ 'adaptor': function (item) { return item.centerCoords2dflat; },
296
319
  }],
297
320
  ["centerCoords3d", {
298
- 'bufferManager': new account_1.BufferManager(gl, 3, { bufferType, initialCapacity }),
299
- 'adaptor': (item) => (0, geometry_1.sphereCoord)(item.long, item.lat, globe, item.altitude),
321
+ 'bufferManager': new account_1.BufferManager(gl, 3, { bufferType: bufferType, initialCapacity: initialCapacity }),
322
+ 'adaptor': function (item) { return (0, geometry_1.sphereCoord)(item.long, item.lat, globe, item.altitude); },
300
323
  }],
301
324
  ["targetCoords2d", {
302
- 'bufferManager': new account_1.BufferManager(gl, 2, { bufferType, initialCapacity }),
303
- 'adaptor': (item) => new Float32Array(globe.api_GetMercator2DPoint(item.endLong, item.endLat))
325
+ 'bufferManager': new account_1.BufferManager(gl, 2, { bufferType: bufferType, initialCapacity: initialCapacity }),
326
+ 'adaptor': function (item) { return new Float32Array(globe.api_GetMercator2DPoint(item.endLong, item.endLat)); }
304
327
  }],
305
328
  ["targetCoords3d", {
306
- 'bufferManager': new account_1.BufferManager(gl, 3, { bufferType, initialCapacity }),
307
- 'adaptor': (item) => (0, geometry_1.sphereCoord)(item.endLong, item.endLat, globe, item.altitude)
329
+ 'bufferManager': new account_1.BufferManager(gl, 3, { bufferType: bufferType, initialCapacity: initialCapacity }),
330
+ 'adaptor': function (item) { return (0, geometry_1.sphereCoord)(item.endLong, item.endLat, globe, item.altitude); }
308
331
  }],
309
332
  ["bearingTargetCoords2d", {
310
- 'bufferManager': new account_1.BufferManager(gl, 2, { bufferType, initialCapacity }),
311
- 'adaptor': (item) => new Float32Array(globe.api_GetMercator2DPoint(item.bearingLong, item.bearingLat))
333
+ 'bufferManager': new account_1.BufferManager(gl, 2, { bufferType: bufferType, initialCapacity: initialCapacity }),
334
+ 'adaptor': function (item) { return new Float32Array(globe.api_GetMercator2DPoint(item.bearingLong, item.bearingLat)); }
312
335
  }],
313
336
  ["bearingTargetCoords3d", {
314
- 'bufferManager': new account_1.BufferManager(gl, 3, { bufferType, initialCapacity }),
315
- 'adaptor': (item) => (0, geometry_1.sphereCoord)(item.bearingLong, item.bearingLat, globe, item.altitude)
337
+ 'bufferManager': new account_1.BufferManager(gl, 3, { bufferType: bufferType, initialCapacity: initialCapacity }),
338
+ 'adaptor': function (item) { return (0, geometry_1.sphereCoord)(item.bearingLong, item.bearingLat, globe, item.altitude); }
316
339
  }],
317
340
  ["startAngle2d", {
318
- 'bufferManager': new account_1.BufferManager(gl, 1, { bufferType, initialCapacity }),
319
- 'adaptor': (item) => new Float32Array([item.startAngle2d])
341
+ 'bufferManager': new account_1.BufferManager(gl, 1, { bufferType: bufferType, initialCapacity: initialCapacity }),
342
+ 'adaptor': function (item) { return new Float32Array([item.startAngle2d]); }
320
343
  }],
321
344
  ["tailAngle2d", {
322
- 'bufferManager': new account_1.BufferManager(gl, 1, { bufferType, initialCapacity }),
323
- 'adaptor': (item) => new Float32Array([item.tailAngle2d])
345
+ 'bufferManager': new account_1.BufferManager(gl, 1, { bufferType: bufferType, initialCapacity: initialCapacity }),
346
+ 'adaptor': function (item) { return new Float32Array([item.tailAngle2d]); }
324
347
  }],
325
348
  ["startAngle3d", {
326
- 'bufferManager': new account_1.BufferManager(gl, 1, { bufferType, initialCapacity }),
327
- 'adaptor': (item) => new Float32Array([item.startAngle3d])
349
+ 'bufferManager': new account_1.BufferManager(gl, 1, { bufferType: bufferType, initialCapacity: initialCapacity }),
350
+ 'adaptor': function (item) { return new Float32Array([item.startAngle3d]); }
328
351
  }],
329
352
  ["tailAngle3d", {
330
- 'bufferManager': new account_1.BufferManager(gl, 1, { bufferType, initialCapacity }),
331
- 'adaptor': (item) => new Float32Array([item.tailAngle3d])
353
+ 'bufferManager': new account_1.BufferManager(gl, 1, { bufferType: bufferType, initialCapacity: initialCapacity }),
354
+ 'adaptor': function (item) { return new Float32Array([item.tailAngle3d]); }
332
355
  }],
333
356
  ["bearingDashRatio", {
334
- 'bufferManager': new account_1.BufferManager(gl, 1, { bufferType, initialCapacity }),
335
- 'adaptor': (item) => new Float32Array([0])
357
+ 'bufferManager': new account_1.BufferManager(gl, 1, { bufferType: bufferType, initialCapacity: initialCapacity }),
358
+ 'adaptor': function (item) { return new Float32Array([0]); }
336
359
  }],
337
360
  ["rgba", {
338
- 'bufferManager': new account_1.BufferManager(gl, 4, { bufferType, initialCapacity }),
339
- 'adaptor': (item) => new Float32Array(item.rgba)
361
+ 'bufferManager': new account_1.BufferManager(gl, 4, { bufferType: bufferType, initialCapacity: initialCapacity }),
362
+ 'adaptor': function (item) { return new Float32Array(item.rgba); }
340
363
  }],
341
364
  ["radius", {
342
- 'bufferManager': new account_1.BufferManager(gl, 1, { bufferType, initialCapacity }),
343
- 'adaptor': (item) => new Float32Array([item.radius])
365
+ 'bufferManager': new account_1.BufferManager(gl, 1, { bufferType: bufferType, initialCapacity: initialCapacity }),
366
+ 'adaptor': function (item) { return new Float32Array([item.radius]); }
344
367
  }],
345
368
  ["rgbaMode", {
346
- 'bufferManager': new account_1.BufferManager(gl, 1, { bufferType, initialCapacity }),
347
- 'adaptor': (item) => new Float32Array([item.rgbaMode])
369
+ 'bufferManager': new account_1.BufferManager(gl, 1, { bufferType: bufferType, initialCapacity: initialCapacity }),
370
+ 'adaptor': function (item) { return new Float32Array([item.rgbaMode]); }
348
371
  }],
349
372
  ["dashRatio", {
350
- 'bufferManager': new account_1.BufferManager(gl, 1, { bufferType, initialCapacity }),
351
- 'adaptor': (item) => new Float32Array([item.dashRatio])
373
+ 'bufferManager': new account_1.BufferManager(gl, 1, { bufferType: bufferType, initialCapacity: initialCapacity }),
374
+ 'adaptor': function (item) { return new Float32Array([item.dashRatio]); }
352
375
  }],
353
376
  ["bigRadius", {
354
- 'bufferManager': new account_1.BufferManager(gl, 1, { bufferType, initialCapacity }),
355
- 'adaptor': (item) => new Float32Array([item.bigRadius])
377
+ 'bufferManager': new account_1.BufferManager(gl, 1, { bufferType: bufferType, initialCapacity: initialCapacity }),
378
+ 'adaptor': function (item) { return new Float32Array([item.bigRadius]); }
356
379
  }],
357
380
  ["dashOpacity", {
358
- 'bufferManager': new account_1.BufferManager(gl, 1, { bufferType, initialCapacity }),
359
- 'adaptor': (item) => new Float32Array([item.dashOpacity]),
381
+ 'bufferManager': new account_1.BufferManager(gl, 1, { bufferType: bufferType, initialCapacity: initialCapacity }),
382
+ 'adaptor': function (item) { return new Float32Array([item.dashOpacity]); },
360
383
  }],
361
384
  ["circleDashAngle", {
362
- 'bufferManager': new account_1.BufferManager(gl, 1, { bufferType, initialCapacity }),
363
- 'adaptor': (item) => new Float32Array([item.circleDashAngle / 360]),
385
+ 'bufferManager': new account_1.BufferManager(gl, 1, { bufferType: bufferType, initialCapacity: initialCapacity }),
386
+ 'adaptor': function (item) { return new Float32Array([item.circleDashAngle / 360]); },
364
387
  }],
365
388
  // Mercator circle properties are duplicated for the sake of performance.
366
389
  ["rgbaMercator", {
367
- 'bufferManager': new account_1.BufferManager(gl, 4 * circleFlatEdgeCount, { bufferType, initialCapacity }),
368
- 'adaptor': (item) => data_filler_1.populateFloat32Array.fillWithListData(circleFlatEdgeCount, item.rgba),
390
+ 'bufferManager': new account_1.BufferManager(gl, 4 * circleFlatEdgeCount, { bufferType: bufferType, initialCapacity: initialCapacity }),
391
+ 'adaptor': function (item) { return data_filler_1.populateFloat32Array.fillWithListData(circleFlatEdgeCount, item.rgba); },
369
392
  }],
370
393
  ["circleDashAngleMercator", {
371
- 'bufferManager': new account_1.BufferManager(gl, circleFlatEdgeCount, { bufferType, initialCapacity }),
372
- 'adaptor': (item) => data_filler_1.populateFloat32Array.fillFloat32Array(circleFlatEdgeCount, item.circleDashAngle / 360),
394
+ 'bufferManager': new account_1.BufferManager(gl, circleFlatEdgeCount, { bufferType: bufferType, initialCapacity: initialCapacity }),
395
+ 'adaptor': function (item) { return data_filler_1.populateFloat32Array.fillFloat32Array(circleFlatEdgeCount, item.circleDashAngle / 360); },
373
396
  }],
374
397
  ["dashOpacityMercator", {
375
- 'bufferManager': new account_1.BufferManager(gl, circleFlatEdgeCount, { bufferType, initialCapacity }),
376
- 'adaptor': (item) => data_filler_1.populateFloat32Array.fillFloat32Array(circleFlatEdgeCount, item.dashOpacity),
398
+ 'bufferManager': new account_1.BufferManager(gl, circleFlatEdgeCount, { bufferType: bufferType, initialCapacity: initialCapacity }),
399
+ 'adaptor': function (item) { return data_filler_1.populateFloat32Array.fillFloat32Array(circleFlatEdgeCount, item.dashOpacity); },
377
400
  }],
378
401
  ]);
379
402
  }
380
- const vaoOBJ = (key) => (0, attribute_loader_1.createBufferAndReadInfo)(this.bufferManagersCompMap.get(key).bufferManager.buffer);
381
- this.lineVao = this.lineProgram.createVAO(...['centerCoords2d', 'centerCoords3d', 'targetCoords2d', 'targetCoords3d', 'dashOpacity', 'dashOpacity', 'rgba'].map(key => vaoOBJ(key)));
382
- this.ringVao = this.pieceOfPieProgram.createVAO(...['centerCoords2d',
403
+ var vaoOBJ = function (key) { return (0, attribute_loader_1.createBufferAndReadInfo)(_this.bufferManagersCompMap.get(key).bufferManager.buffer); };
404
+ this.lineVao = (_a = this.lineProgram).createVAO.apply(_a, ['centerCoords2d', 'centerCoords3d', 'targetCoords2d', 'targetCoords3d', 'dashOpacity', 'dashOpacity', 'rgba'].map(function (key) { return vaoOBJ(key); }));
405
+ this.ringVao = (_b = this.pieceOfPieProgram).createVAO.apply(_b, ['centerCoords2d',
383
406
  'centerCoords3d',
384
407
  'startAngle2d',
385
408
  'tailAngle2d',
@@ -387,27 +410,27 @@ class BearingLinePlugin {
387
410
  'tailAngle3d',
388
411
  'rgba',
389
412
  'radius',
390
- 'rgbaMode'].map(key => vaoOBJ(key)));
391
- this.bearingLineVAO = this.lineProgram.createVAO(...['centerCoords2d', 'centerCoords3d', 'bearingTargetCoords2d', 'bearingTargetCoords3d', 'bearingDashRatio', 'dashOpacity', 'rgba'
392
- ].map(key => vaoOBJ(key)));
393
- this.circleVao = this.circleProgram.createVAO(...["centerCoords2dflat", "rgbaMercator", "circleDashAngleMercator", "dashOpacityMercator"
394
- ].map(key => vaoOBJ(key)));
395
- this.circle3DVao = this.circle3DProgram.createVAO(...["centerCoords3d", "targetCoords3d", "rgba", "circleDashAngle", "dashOpacity"
396
- ].map(key => vaoOBJ(key)));
397
- }
398
- draw3D() {
399
- const { gl } = this;
413
+ 'rgbaMode'].map(function (key) { return vaoOBJ(key); }));
414
+ this.bearingLineVAO = (_c = this.lineProgram).createVAO.apply(_c, ['centerCoords2d', 'centerCoords3d', 'bearingTargetCoords2d', 'bearingTargetCoords3d', 'bearingDashRatio', 'dashOpacity', 'rgba'
415
+ ].map(function (key) { return vaoOBJ(key); }));
416
+ this.circleVao = (_d = this.circleProgram).createVAO.apply(_d, ["centerCoords2dflat", "rgbaMercator", "circleDashAngleMercator", "dashOpacityMercator"
417
+ ].map(function (key) { return vaoOBJ(key); }));
418
+ this.circle3DVao = (_e = this.circle3DProgram).createVAO.apply(_e, ["centerCoords3d", "targetCoords3d", "rgba", "circleDashAngle", "dashOpacity"
419
+ ].map(function (key) { return vaoOBJ(key); }));
420
+ };
421
+ BearingLinePlugin.prototype.draw3D = function () {
422
+ var gl = this.gl;
400
423
  gl.disable(gl.DEPTH_TEST);
401
- const is3D = this.globe.api_GetCurrentGeometry() === 0;
402
- const drawRange = { first: 0, count: this.bufferOrchestrator.length };
403
- this.lineProgram.draw(this.lineVao, { drawRange }, this._opacity);
424
+ var is3D = this.globe.api_GetCurrentGeometry() === 0;
425
+ var drawRange = { first: 0, count: this.bufferOrchestrator.length };
426
+ this.lineProgram.draw(this.lineVao, { drawRange: drawRange }, this._opacity);
404
427
  if (this.drawAngleRing) {
405
428
  this.pieceOfPieProgram.draw(this.bufferOrchestrator.length, this.ringVao, 360, this._opacity * 0.8, exports.RINGPARTIAL_DRAW_MODE.TRIANGLE_FAN);
406
429
  this.pieceOfPieProgram.draw(this.bufferOrchestrator.length, this.ringVao, 360, this._opacity * 0.8, exports.RINGPARTIAL_DRAW_MODE.LINE_STRIP);
407
430
  }
408
431
  if (this.drawBearingLine) {
409
432
  // this.lineProgram.draw(this.bearingLineVAO, this.bufferOrchestrator.length, this._opacity );
410
- this.lineProgram.draw(this.bearingLineVAO, { drawRange }, this._opacity);
433
+ this.lineProgram.draw(this.bearingLineVAO, { drawRange: drawRange }, this._opacity);
411
434
  }
412
435
  if (this.drawVRM) {
413
436
  if (is3D) {
@@ -418,17 +441,18 @@ class BearingLinePlugin {
418
441
  }
419
442
  }
420
443
  if (this.drawText) {
421
- this._textWritersMap.forEach((writer) => writer.draw());
444
+ this._textWritersMap.forEach(function (writer) { return writer.draw(); });
422
445
  }
423
446
  gl.enable(gl.DEPTH_TEST);
424
- }
425
- free() {
447
+ };
448
+ BearingLinePlugin.prototype.free = function () {
426
449
  if (this.isFreed)
427
450
  return;
428
- this.bufferManagersCompMap.forEach(({ bufferManager, adaptor }) => {
451
+ this.bufferManagersCompMap.forEach(function (_a) {
452
+ var bufferManager = _a.bufferManager, adaptor = _a.adaptor;
429
453
  bufferManager.free();
430
454
  });
431
- const { gl, globe } = this;
455
+ var _a = this, gl = _a.gl, globe = _a.globe;
432
456
  gl.deleteVertexArray(this.lineVao);
433
457
  gl.deleteVertexArray(this.ringVao);
434
458
  gl.deleteVertexArray(this.bearingLineVAO);
@@ -439,11 +463,12 @@ class BearingLinePlugin {
439
463
  circle_accurate_flat_1.CircleCache.release(globe);
440
464
  circle_accurate_3d_1.CircleCache.release(globe);
441
465
  this.isFreed = true;
442
- }
443
- _deleteTexts(keys) {
444
- this._textWritersMap.forEach((writer) => {
466
+ };
467
+ BearingLinePlugin.prototype._deleteTexts = function (keys) {
468
+ this._textWritersMap.forEach(function (writer) {
445
469
  writer.deleteTextBulk(keys);
446
470
  });
447
- }
448
- }
471
+ };
472
+ return BearingLinePlugin;
473
+ }());
449
474
  exports.default = BearingLinePlugin;