@pirireis/webglobeplugins 0.9.12 → 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 (177) hide show
  1. package/Math/angle-calculation.js +1 -3
  2. package/Math/arc.js +29 -32
  3. package/Math/bounds/line-bbox.js +1 -3
  4. package/Math/constants.js +1 -6
  5. package/Math/frustum/types.js +1 -2
  6. package/Math/juction/arc-plane.js +32 -35
  7. package/Math/juction/line-sphere.js +9 -12
  8. package/Math/juction/plane-plane.js +15 -18
  9. package/Math/line.js +30 -33
  10. package/Math/methods.js +6 -24
  11. package/Math/plane.js +22 -25
  12. package/Math/quaternion.js +6 -9
  13. package/Math/types.js +1 -2
  14. package/Math/utils.js +2 -4
  15. package/Math/vec3.js +5 -8
  16. package/algorithms/search-binary.js +1 -4
  17. package/altitude-locator/draw-subset-obj.js +1 -3
  18. package/altitude-locator/plugin.js +34 -37
  19. package/altitude-locator/types.js +1 -3
  20. package/arrowfield/adaptor.js +1 -4
  21. package/arrowfield/index.js +3 -10
  22. package/arrowfield/plugin.js +3 -6
  23. package/bearing-line/index.js +2 -8
  24. package/bearing-line/plugin.js +62 -66
  25. package/circle-line-chain/chain-list-map.js +1 -5
  26. package/circle-line-chain/plugin.js +46 -50
  27. package/circle-line-chain/util.js +1 -5
  28. package/compass-rose/compass-rose-padding-flat.js +12 -16
  29. package/compass-rose/compass-text-writer.js +3 -7
  30. package/compass-rose/index.js +3 -7
  31. package/compassrose/compassrose.js +6 -9
  32. package/compassrose/index.js +2 -8
  33. package/heatwave/index.js +3 -10
  34. package/heatwave/isobar/objectarraylabels.js +7 -9
  35. package/heatwave/isobar/plugin.js +14 -54
  36. package/heatwave/isobar/quadtreecontours.js +2 -4
  37. package/heatwave/plugins/heatwaveglobeshell.js +9 -12
  38. package/index.js +12 -58
  39. package/package.json +1 -1
  40. package/partialrings/buffer-manager.js +2 -8
  41. package/partialrings/index.js +2 -41
  42. package/partialrings/plugin.js +13 -20
  43. package/partialrings/program.js +23 -30
  44. package/pin/pin-object-array.js +8 -13
  45. package/point-heat-map/adaptors/timetracksplugin-format-to-this.js +3 -6
  46. package/point-heat-map/plugin-webworker.js +11 -14
  47. package/point-heat-map/point-to-heat-map-flow.js +9 -12
  48. package/point-tracks/key-methods.js +1 -4
  49. package/point-tracks/plugin.js +15 -19
  50. package/programs/arrowfield/index.js +2 -7
  51. package/programs/arrowfield/logic.js +7 -10
  52. package/programs/arrowfield/object.js +7 -13
  53. package/programs/data2legend/density-to-legend.js +6 -9
  54. package/programs/data2legend/point-to-density-texture.js +13 -16
  55. package/programs/float2legendwithratio/index.js +2 -8
  56. package/programs/float2legendwithratio/logic.js +3 -6
  57. package/programs/float2legendwithratio/object.js +5 -11
  58. package/programs/globe-util/is-globe-moved.js +3 -5
  59. package/programs/globeshell/index.js +2 -8
  60. package/programs/globeshell/wiggle/index.js +2 -8
  61. package/programs/globeshell/wiggle/logic.js +3 -6
  62. package/programs/globeshell/wiggle/object.js +5 -11
  63. package/programs/helpers/blender/program.js +3 -6
  64. package/programs/helpers/fadeaway/index.js +2 -7
  65. package/programs/helpers/fadeaway/logic.js +3 -6
  66. package/programs/helpers/fadeaway/object.js +5 -11
  67. package/programs/helpers/index.js +2 -8
  68. package/programs/index.js +9 -58
  69. package/programs/line-on-globe/angled-line.js +19 -22
  70. package/programs/line-on-globe/circle-accurate-3d.js +21 -24
  71. package/programs/line-on-globe/circle-accurate-flat.js +18 -24
  72. package/programs/line-on-globe/circle-accurate.js +27 -30
  73. package/programs/line-on-globe/circle.js +26 -29
  74. package/programs/line-on-globe/degree-padding-around-circle-3d.js +23 -26
  75. package/programs/line-on-globe/lines-color-instanced-flat.js +20 -24
  76. package/programs/line-on-globe/linestrip.js +28 -31
  77. package/programs/line-on-globe/naive-accurate-flexible.js +29 -32
  78. package/programs/line-on-globe/to-the-surface.js +15 -17
  79. package/programs/line-on-globe/util.js +1 -4
  80. package/programs/picking/pickable-renderer.js +25 -28
  81. package/programs/point-on-globe/element-globe-surface-glow.js +22 -25
  82. package/programs/point-on-globe/element-point-glow.js +26 -29
  83. package/programs/point-on-globe/square-pixel-point.js +13 -16
  84. package/programs/programcache.js +1 -6
  85. package/programs/rings/distancering/circleflatprogram.js +20 -56
  86. package/programs/rings/distancering/circlepaddingfreeangleprogram.js +21 -58
  87. package/programs/rings/distancering/circlepaddysharedbuffer.js +1 -4
  88. package/programs/rings/distancering/index.js +5 -14
  89. package/programs/rings/distancering/paddyflatprogram.js +21 -57
  90. package/programs/rings/distancering/paddyflatprogram2d.js +21 -57
  91. package/programs/rings/distancering/paddyflatprogram3d.js +21 -57
  92. package/programs/rings/index.js +1 -17
  93. package/programs/rings/partial-ring/piece-of-pie.js +23 -25
  94. package/programs/totems/camerauniformblock.js +7 -11
  95. package/programs/totems/canvas-webglobe-info.js +6 -10
  96. package/programs/totems/gpu-selection-uniform-block.js +7 -11
  97. package/programs/totems/index.js +2 -40
  98. package/programs/two-d/pixel-padding-for-compass.js +10 -13
  99. package/programs/util.js +1 -3
  100. package/programs/vectorfields/index.js +3 -23
  101. package/programs/vectorfields/logics/drawrectangleparticles.js +9 -12
  102. package/programs/vectorfields/logics/index.js +4 -12
  103. package/programs/vectorfields/logics/pixelbased.js +10 -13
  104. package/programs/vectorfields/logics/ubo.js +1 -7
  105. package/programs/vectorfields/pingpongbuffermanager.js +1 -4
  106. package/rangerings/enum.js +2 -5
  107. package/rangerings/index.js +5 -15
  108. package/rangerings/plugin.js +61 -68
  109. package/rangerings/rangeringangletext.js +26 -29
  110. package/rangerings/ring-account.js +1 -6
  111. package/shaders/fragment-toy/firework.js +1 -4
  112. package/shaders/fragment-toy/singularity.js +1 -4
  113. package/timetracks/adaptors-line-strip.js +3 -9
  114. package/timetracks/adaptors.js +3 -8
  115. package/timetracks/index.js +5 -19
  116. package/timetracks/plugin-line-strip.js +6 -12
  117. package/timetracks/plugin.js +6 -12
  118. package/timetracks/program-line-strip.js +9 -12
  119. package/timetracks/program.js +10 -13
  120. package/timetracks/programpoint-line-strip.js +6 -9
  121. package/timetracks/programpoint.js +6 -9
  122. package/util/account/bufferoffsetmanager.js +1 -4
  123. package/util/account/index.js +3 -23
  124. package/util/account/single-attribute-buffer-management/buffer-manager.js +1 -5
  125. package/util/account/single-attribute-buffer-management/buffer-orchestrator.js +1 -5
  126. package/util/account/single-attribute-buffer-management/index.js +4 -9
  127. package/util/account/single-attribute-buffer-management/object-store.js +1 -5
  128. package/util/account/single-attribute-buffer-management/types.js +1 -2
  129. package/util/account/util.js +1 -5
  130. package/util/algorithms/search-binary.js +1 -4
  131. package/util/check/get.js +1 -5
  132. package/util/check/typecheck.js +7 -16
  133. package/util/geometry/index.js +1 -7
  134. package/util/gl-util/buffer/attribute-loader.js +2 -6
  135. package/util/gl-util/buffer/index.js +2 -5
  136. package/util/gl-util/draw-options/methods.js +2 -6
  137. package/util/gl-util/uniform-block/manager.js +2 -5
  138. package/util/heatwavedatamanager/datamanager.js +1 -4
  139. package/util/heatwavedatamanager/index.js +3 -10
  140. package/util/heatwavedatamanager/pointcoordinatesdatacalculator.js +3 -9
  141. package/util/heatwavedatamanager/pointcoordsmeta.js +1 -4
  142. package/util/index.js +13 -57
  143. package/util/interpolation/timetrack/index.js +1 -4
  144. package/util/interpolation/timetrack/timetrack-interpolator.js +6 -10
  145. package/util/interpolation/timetrack/web-worker-str.js +1 -4
  146. package/util/interpolation/timetrack/web-worker.js +2 -4
  147. package/util/jshelpers/data-filler.js +1 -4
  148. package/util/jshelpers/equality.js +1 -3
  149. package/util/jshelpers/index.js +2 -37
  150. package/util/jshelpers/timefilters.js +1 -3
  151. package/util/picking/fence.js +1 -4
  152. package/util/picking/picker-displayer.js +6 -9
  153. package/util/programs/draw-texture-on-canvas.js +6 -9
  154. package/util/programs/index.js +1 -17
  155. package/util/programs/shapesonglobe.js +9 -13
  156. package/util/programs/supersampletotextures.js +3 -7
  157. package/util/programs/texturetoglobe.js +8 -11
  158. package/util/shaderfunctions/geometrytransformations.js +24 -31
  159. package/util/shaderfunctions/index.js +2 -18
  160. package/util/shaderfunctions/nodata.js +1 -4
  161. package/util/shaderfunctions/noisefunctions.js +1 -3
  162. package/util/webglobe/gldefaultstates.js +1 -4
  163. package/util/webglobe/index.js +2 -18
  164. package/util/webglobe/rasteroverlay.js +1 -4
  165. package/util/webglobjectbuilders.js +16 -34
  166. package/util/webglobjectbuilders1.js +16 -34
  167. package/waveparticles/adaptor.js +1 -3
  168. package/waveparticles/index.js +3 -10
  169. package/waveparticles/plugin.js +9 -12
  170. package/wind/imagetovectorfieldandmagnitude.js +1 -4
  171. package/wind/index.js +5 -14
  172. package/wind/plugin.js +6 -45
  173. package/wind/vectorfieldimage.js +1 -3
  174. package/write-text/attached-text-writer.js +6 -10
  175. package/write-text/context-text.js +4 -8
  176. package/write-text/context-text3.js +7 -11
  177. package/write-text/index.js +1 -5
@@ -1,10 +1,9 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PieceOfPieProgramCache = exports.Logic = exports.ITEM_SIZE = void 0;
4
- const util_1 = require("../../../util");
5
- const totems_1 = require("../../totems");
6
- const programcache_1 = require("../../programcache");
7
- const geometrytransformations_1 = require("../../../util/shaderfunctions/geometrytransformations");
1
+ import { createProgram, shaderfunctions } from "../../../util";
2
+ import { CameraUniformBlockTotem, CameraUniformBlockString } from "../../totems";
3
+ import { noRegisterGlobeProgramCache, globeProgramCache } from "../../programcache";
4
+ import { POLE, PI, longLatRadToMercator, mercatorXYToGLPosition, longLatRadToCartesian3D, circleLimpFromLongLatRadCenterCartesian3D_accurate, circleLimpFromLongLatRadCenterMercatorCompass_accurate,
5
+ //circleLimpFromLongLatRadCenterMercatorRealDistanceNew_accurate,
6
+ cartesian3DToGLPosition } from "../../../util/shaderfunctions/geometrytransformations";
8
7
  /**
9
8
  * TODO:
10
9
  * 1. Triangle face looks at screen. if rotation angle is positive the last vertex must be the faintest.
@@ -17,14 +16,14 @@ const drawModeMap = Object.freeze({
17
16
  //${ circleLimpFromLongLatRadCenterMercatorRealDistanceNew_accurate }
18
17
  const vertexShaderSource = `#version 300 es
19
18
 
20
- ${totems_1.CameraUniformBlockString}
21
- ${geometrytransformations_1.PI}
22
- ${geometrytransformations_1.longLatRadToMercator}
23
- ${geometrytransformations_1.mercatorXYToGLPosition}
24
- ${geometrytransformations_1.longLatRadToCartesian3D}
25
- ${geometrytransformations_1.circleLimpFromLongLatRadCenterCartesian3D_accurate}
26
- ${geometrytransformations_1.circleLimpFromLongLatRadCenterMercatorCompass_accurate}
27
- ${geometrytransformations_1.cartesian3DToGLPosition}
19
+ ${CameraUniformBlockString}
20
+ ${PI}
21
+ ${longLatRadToMercator}
22
+ ${mercatorXYToGLPosition}
23
+ ${longLatRadToCartesian3D}
24
+ ${circleLimpFromLongLatRadCenterCartesian3D_accurate}
25
+ ${circleLimpFromLongLatRadCenterMercatorCompass_accurate}
26
+ ${cartesian3DToGLPosition}
28
27
 
29
28
  uniform float edge_count;
30
29
  uniform int draw_mode; // %2 => 0: LINE_STRIP, 1: TRIANGLE_FAN
@@ -105,7 +104,7 @@ void main() {
105
104
 
106
105
  gl_PointSize = 10.0;
107
106
  }`;
108
- const fragmentShaderSource = `#version 300 es` + geometrytransformations_1.POLE + geometrytransformations_1.PI + `
107
+ const fragmentShaderSource = `#version 300 es` + POLE + PI + `
109
108
  precision highp float;
110
109
  // flat in int vid;
111
110
  in vec4 v_color;
@@ -120,15 +119,15 @@ void main() {
120
119
  if ( v_pos.x < -POLE || v_pos.x > POLE || v_pos.y < -POLE || v_pos.y > POLE ) { discard; }
121
120
  outColor = v_color;
122
121
  }`;
123
- exports.ITEM_SIZE = 10;
124
- class Logic {
122
+ export const ITEM_SIZE = 10;
123
+ export class Logic {
125
124
  constructor(globe) {
126
125
  this.globe = globe;
127
126
  this.gl = globe.gl;
128
127
  this._lastMode = 0;
129
128
  this._lastEdgeCount = 64;
130
129
  this._lastAlphaMultiplier = 1.0;
131
- this.program = (0, util_1.createProgram)(this.gl, vertexShaderSource, fragmentShaderSource);
130
+ this.program = createProgram(this.gl, vertexShaderSource, fragmentShaderSource);
132
131
  const { gl, program } = this;
133
132
  { // set attributes locations
134
133
  gl.bindAttribLocation(program, 0, 'center2d');
@@ -153,7 +152,7 @@ class Logic {
153
152
  gl.uniform1f(this._edgeCountLocation, this._lastEdgeCount);
154
153
  gl.uniform1f(this._plugin_alpha_multiplierLocation, 1.0);
155
154
  this.cameraBlockBindingPoint = 0;
156
- this.cameraBlockTotem = programcache_1.globeProgramCache.getProgram(globe, totems_1.CameraUniformBlockTotem);
155
+ this.cameraBlockTotem = globeProgramCache.getProgram(globe, CameraUniformBlockTotem);
157
156
  const cameraBlockIndex = gl.getUniformBlockIndex(program, "CameraUniformBlock");
158
157
  gl.uniformBlockBinding(program, cameraBlockIndex, this.cameraBlockBindingPoint);
159
158
  gl.useProgram(currentProgram);
@@ -184,7 +183,7 @@ class Logic {
184
183
  // gl.enable(gl.DEPTH_TEST);
185
184
  }
186
185
  free() {
187
- programcache_1.noRegisterGlobeProgramCache.releaseProgram(this.globe, totems_1.CameraUniformBlockTotem);
186
+ noRegisterGlobeProgramCache.releaseProgram(this.globe, CameraUniformBlockTotem);
188
187
  this.gl.deleteProgram(this.program);
189
188
  this.program = null;
190
189
  }
@@ -268,8 +267,7 @@ class Logic {
268
267
  return vao;
269
268
  }
270
269
  }
271
- exports.Logic = Logic;
272
- exports.PieceOfPieProgramCache = Object.freeze({
273
- get: (globe) => programcache_1.noRegisterGlobeProgramCache.getProgram(globe, Logic),
274
- release: (globe) => programcache_1.noRegisterGlobeProgramCache.releaseProgram(globe, Logic)
270
+ export const PieceOfPieProgramCache = Object.freeze({
271
+ get: (globe) => noRegisterGlobeProgramCache.getProgram(globe, Logic),
272
+ release: (globe) => noRegisterGlobeProgramCache.releaseProgram(globe, Logic)
275
273
  });
@@ -1,11 +1,8 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CameraUniformBlockTotemCache = exports.CameraUniformBlockString = void 0;
4
- const programcache_1 = require("../programcache");
1
+ import { globeProgramCache } from "../programcache";
5
2
  // import { getFrustumPlanes } from "../../Math/frustum/from-projection-matrix";
6
3
  // import { getFrustum } from "../../Math/frustum/from-globeinfo"
7
4
  // import { Plane } from "../../Math/";
8
- exports.CameraUniformBlockString = `
5
+ export const CameraUniformBlockString = `
9
6
  layout(std140) uniform CameraUniformBlock {
10
7
  mat4 view; // 64 bytes 0
11
8
  mat4 projection; // 64 bytes 64
@@ -21,10 +18,10 @@ layout(std140) uniform CameraUniformBlock {
21
18
  }; // 14 lines
22
19
  `;
23
20
  const Radian = Math.PI / 180.0;
24
- class CameraUniformBlockTotem {
21
+ export default class CameraUniformBlockTotem {
25
22
  constructor() {
26
23
  this.id = "CameraUniformBlockTotem";
27
- this.description = `Sets a uniform block and provides buffer for it. The following is the glsl uniform block:` + exports.CameraUniformBlockString;
24
+ this.description = `Sets a uniform block and provides buffer for it. The following is the glsl uniform block:` + CameraUniformBlockString;
28
25
  this.gl = null;
29
26
  this.globe = null;
30
27
  this.ubo = null;
@@ -153,8 +150,7 @@ class CameraUniformBlockTotem {
153
150
  };
154
151
  }
155
152
  }
156
- exports.default = CameraUniformBlockTotem;
157
- exports.CameraUniformBlockTotemCache = Object.freeze({
158
- get: (globe) => { return programcache_1.globeProgramCache.getProgram(globe, CameraUniformBlockTotem); },
159
- release: (globe) => { return programcache_1.globeProgramCache.releaseProgram(globe, CameraUniformBlockTotem); }
153
+ export const CameraUniformBlockTotemCache = Object.freeze({
154
+ get: (globe) => { return globeProgramCache.getProgram(globe, CameraUniformBlockTotem); },
155
+ release: (globe) => { return globeProgramCache.releaseProgram(globe, CameraUniformBlockTotem); }
160
156
  });
@@ -1,8 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CameraUniformBlockTotemCache = exports.WebglobeInfoUniformBlockString = void 0;
4
- const programcache_1 = require("../programcache");
5
- exports.WebglobeInfoUniformBlockString = `
1
+ import { globeProgramCache } from "../programcache";
2
+ export const WebglobeInfoUniformBlockString = `
6
3
  layout(std140) uniform WebglobeInfo {
7
4
  vec2 canvas_resolution;
8
5
  vec2 mouse_radian_long_lat;
@@ -12,7 +9,7 @@ layout(std140) uniform WebglobeInfo {
12
9
  float earth_distance;
13
10
  };
14
11
  `;
15
- class CameraUniformBlockTotem {
12
+ export default class CameraUniformBlockTotem {
16
13
  constructor() {
17
14
  this.id = "CameraUniformBlockTotem";
18
15
  this.description = `Sets a uniform block and provides buffer for it. The following is the glsl uniform block:` + CameraUniformBlockString;
@@ -103,8 +100,7 @@ class CameraUniformBlockTotem {
103
100
  };
104
101
  }
105
102
  }
106
- exports.default = CameraUniformBlockTotem;
107
- exports.CameraUniformBlockTotemCache = Object.freeze({
108
- get: (globe) => { return programcache_1.globeProgramCache.getProgram(globe, CameraUniformBlockTotem); },
109
- release: (globe) => { return programcache_1.globeProgramCache.releaseProgram(globe, CameraUniformBlockTotem); }
103
+ export const CameraUniformBlockTotemCache = Object.freeze({
104
+ get: (globe) => { return globeProgramCache.getProgram(globe, CameraUniformBlockTotem); },
105
+ release: (globe) => { return globeProgramCache.releaseProgram(globe, CameraUniformBlockTotem); }
110
106
  });
@@ -1,19 +1,16 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CameraUniformBlockTotemCache = exports.CameraUniformBlockString = void 0;
4
- const programcache_1 = require("../programcache");
1
+ import { globeProgramCache } from "../programcache";
5
2
  // Loads mouse position to buffer
6
3
  // TODO implement it
7
- exports.CameraUniformBlockString = `
4
+ export const CameraUniformBlockString = `
8
5
  layout(std140) uniform GpuSelectionUniformBlock {
9
6
  vec2 mouse_pixel_position;
10
7
  vec2 mouse_radian_long_lat;
11
8
  }; // 11 lines
12
9
  `;
13
- class CameraUniformBlockTotem {
10
+ export default class CameraUniformBlockTotem {
14
11
  constructor() {
15
12
  this.id = "CameraUniformBlockTotem";
16
- this.description = `Sets a uniform block and provides buffer for it. The following is the glsl uniform block:` + exports.CameraUniformBlockString;
13
+ this.description = `Sets a uniform block and provides buffer for it. The following is the glsl uniform block:` + CameraUniformBlockString;
17
14
  this.gl = null;
18
15
  this.globe = null;
19
16
  this.ubo = null;
@@ -101,8 +98,7 @@ class CameraUniformBlockTotem {
101
98
  };
102
99
  }
103
100
  }
104
- exports.default = CameraUniformBlockTotem;
105
- exports.CameraUniformBlockTotemCache = Object.freeze({
106
- get: (globe) => { return programcache_1.globeProgramCache.getProgram(globe, CameraUniformBlockTotem); },
107
- release: (globe) => { return programcache_1.globeProgramCache.releaseProgram(globe, CameraUniformBlockTotem); }
101
+ export const CameraUniformBlockTotemCache = Object.freeze({
102
+ get: (globe) => { return globeProgramCache.getProgram(globe, CameraUniformBlockTotem); },
103
+ release: (globe) => { return globeProgramCache.releaseProgram(globe, CameraUniformBlockTotem); }
108
104
  });
@@ -1,40 +1,2 @@
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.CameraUniformBlockTotemCache = exports.CameraUniformBlockString = exports.CameraUniformBlockTotem = void 0;
37
- const camerauniformblock_1 = __importStar(require("./camerauniformblock"));
38
- exports.CameraUniformBlockTotem = camerauniformblock_1.default;
39
- Object.defineProperty(exports, "CameraUniformBlockString", { enumerable: true, get: function () { return camerauniformblock_1.CameraUniformBlockString; } });
40
- Object.defineProperty(exports, "CameraUniformBlockTotemCache", { enumerable: true, get: function () { return camerauniformblock_1.CameraUniformBlockTotemCache; } });
1
+ import CameraUniformBlockTotem, { CameraUniformBlockString, CameraUniformBlockTotemCache } from "./camerauniformblock";
2
+ export { CameraUniformBlockTotem, CameraUniformBlockString, CameraUniformBlockTotemCache };
@@ -1,12 +1,9 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PixelPaddingForFlatCompassCache = void 0;
4
- const util_1 = require("../../util");
5
- const totems_1 = require("../totems");
6
- const programcache_1 = require("../programcache");
1
+ import { createProgram } from "../../util";
2
+ import { CameraUniformBlockTotemCache, CameraUniformBlockString } from "../totems";
3
+ import { noRegisterGlobeProgramCache } from "../programcache";
7
4
  const vertexCount = 720;
8
5
  const vertexShaderSource = `#version 300 es
9
- ${totems_1.CameraUniformBlockString}
6
+ ${CameraUniformBlockString}
10
7
 
11
8
  in vec2 screen_coordinate;
12
9
  in float pixel_radius_small_ratio;
@@ -74,7 +71,7 @@ class Logic {
74
71
  this.globe = globe;
75
72
  this.gl = globe.gl;
76
73
  this._lastOpacity = 1;
77
- this.program = (0, util_1.createProgram)(this.gl, vertexShaderSource, fragmentShaderSource);
74
+ this.program = createProgram(this.gl, vertexShaderSource, fragmentShaderSource);
78
75
  const { gl, program } = this;
79
76
  { // assign attribute locations
80
77
  // in vec2 screen_coordinate;
@@ -96,7 +93,7 @@ class Logic {
96
93
  {
97
94
  this.cameraBlockBindingPoint = 0;
98
95
  const cameraBlockIndex = gl.getUniformBlockIndex(program, "CameraUniformBlock");
99
- this.cameraBlockTotem = totems_1.CameraUniformBlockTotemCache.get(globe);
96
+ this.cameraBlockTotem = CameraUniformBlockTotemCache.get(globe);
100
97
  gl.uniformBlockBinding(program, cameraBlockIndex, this.cameraBlockBindingPoint);
101
98
  }
102
99
  }
@@ -153,10 +150,10 @@ class Logic {
153
150
  }
154
151
  free() {
155
152
  const { globe } = this;
156
- totems_1.CameraUniformBlockTotemCache.release(globe);
153
+ CameraUniformBlockTotemCache.release(globe);
157
154
  }
158
155
  }
159
- exports.PixelPaddingForFlatCompassCache = Object.freeze({
160
- get: (globe) => programcache_1.noRegisterGlobeProgramCache.getProgram(globe, Logic),
161
- release: (globe) => programcache_1.noRegisterGlobeProgramCache.releaseProgram(globe, Logic)
156
+ export const PixelPaddingForFlatCompassCache = Object.freeze({
157
+ get: (globe) => noRegisterGlobeProgramCache.getProgram(globe, Logic),
158
+ release: (globe) => noRegisterGlobeProgramCache.releaseProgram(globe, Logic)
162
159
  });
package/programs/util.js CHANGED
@@ -1,6 +1,3 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.longlatbbox2normalbbox = longlatbbox2normalbbox;
4
1
  function longlatbbox2normalbbox({ minLon = -180, maxLon = 180, minLat = -90, maxLat = 90 } = {}) {
5
2
  // x
6
3
  const horOffset = (minLon) * Math.PI / 180;
@@ -15,3 +12,4 @@ function longlatbbox2normalbbox({ minLon = -180, maxLon = 180, minLat = -90, max
15
12
  console.log("longlatbbox2normalbbox", result);
16
13
  return result;
17
14
  }
15
+ export { longlatbbox2normalbbox };
@@ -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.PingPongBufferManager = void 0;
21
- const pingpongbuffermanager_1 = __importDefault(require("./pingpongbuffermanager"));
22
- exports.PingPongBufferManager = pingpongbuffermanager_1.default;
23
- __exportStar(require("./logics"), exports);
1
+ import PingPongBufferManager from './pingpongbuffermanager';
2
+ export * from './logics';
3
+ export { PingPongBufferManager };
@@ -1,14 +1,12 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const util_1 = require("../../../util");
4
- const ubo_js_1 = require("./ubo.js");
5
- const programcache_1 = require("../../programcache");
1
+ import { createProgram } from "../../../util";
2
+ import { UBO_BINDING_POINT, shaderUboSource } from "./ubo.js";
3
+ import { glProgramCache } from "../../programcache";
6
4
  /**
7
5
  * [+] ubo
8
6
  */
9
7
  const vertexShaderSource = `#version 300 es
10
8
  precision highp float;
11
- ` + ubo_js_1.shaderUboSource + `
9
+ ` + shaderUboSource + `
12
10
  uniform sampler2D u_vector_field;
13
11
  in vec2 in_position;
14
12
  out vec3 base_color;
@@ -60,10 +58,10 @@ class Logic {
60
58
  }
61
59
  _createProgram() {
62
60
  const gl = this.gl;
63
- const program = (0, util_1.createProgram)(gl, vertexShaderSource, fragmentShaderSource);
61
+ const program = createProgram(gl, vertexShaderSource, fragmentShaderSource);
64
62
  // ubo point
65
63
  const ubo_location = gl.getUniformBlockIndex(program, 'UBO');
66
- gl.uniformBlockBinding(program, ubo_location, ubo_js_1.UBO_BINDING_POINT);
64
+ gl.uniformBlockBinding(program, ubo_location, UBO_BINDING_POINT);
67
65
  return [program, gl.getUniformLocation(program, 'u_vector_field')];
68
66
  }
69
67
  /**
@@ -90,18 +88,17 @@ class Logic {
90
88
  this.program = null;
91
89
  }
92
90
  }
93
- class default_1 {
91
+ export default class {
94
92
  constructor(gl) {
95
93
  this.gl = gl;
96
- this.logic = programcache_1.glProgramCache.getProgram(gl, Logic);
94
+ this.logic = glProgramCache.getProgram(gl, Logic);
97
95
  }
98
96
  draw(bufferManager, vectorTexture, uboManager) {
99
97
  this.logic.draw(bufferManager, vectorTexture, uboManager);
100
98
  }
101
99
  free() {
102
- programcache_1.glProgramCache.releaseProgram(this.gl, Logic);
100
+ glProgramCache.releaseProgram(this.gl, Logic);
103
101
  this.logic = null;
104
102
  this.gl = null;
105
103
  }
106
104
  }
107
- exports.default = default_1;
@@ -1,12 +1,4 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.WaveParticalUboManager = exports.DrawRectangleParticles = exports.PixelBasedMove = void 0;
7
- const pixelbased_1 = __importDefault(require("./pixelbased"));
8
- exports.PixelBasedMove = pixelbased_1.default;
9
- const drawrectangleparticles_1 = __importDefault(require("./drawrectangleparticles"));
10
- exports.DrawRectangleParticles = drawrectangleparticles_1.default;
11
- const ubo_1 = require("./ubo");
12
- Object.defineProperty(exports, "WaveParticalUboManager", { enumerable: true, get: function () { return ubo_1.WaveParticalUboManager; } });
1
+ import PixelBasedMove from './pixelbased';
2
+ import DrawRectangleParticles from './drawrectangleparticles';
3
+ import { WaveParticalUboManager } from './ubo';
4
+ export { PixelBasedMove, DrawRectangleParticles, WaveParticalUboManager };
@@ -1,14 +1,12 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const util_1 = require("../../../util");
4
- const ubo_js_1 = require("./ubo.js");
5
- const programcache_1 = require("../../programcache");
1
+ import { createShader } from "../../../util";
2
+ import { UBO_SIZE, UBO_BINDING_POINT, shaderUboSource } from "./ubo.js";
3
+ import { glProgramCache } from "../../programcache";
6
4
  // program output is buffer
7
5
  // TODO: Mechanism for randomness
8
6
  // drop out mechanism
9
7
  // random particle position mechanism
10
8
  const vertexShaderSource = `#version 300 es
11
- ` + ubo_js_1.shaderUboSource + `
9
+ ` + shaderUboSource + `
12
10
 
13
11
  uniform sampler2D vector_field;
14
12
  in vec2 in_position;
@@ -99,8 +97,8 @@ class Logic {
99
97
  // -- private methods
100
98
  _createProgram() {
101
99
  const gl = this.gl;
102
- const vertexShader = (0, util_1.createShader)(gl, gl.VERTEX_SHADER, vertexShaderSource);
103
- const fragmentShader = (0, util_1.createShader)(gl, gl.FRAGMENT_SHADER, fragmentShaderSource);
100
+ const vertexShader = createShader(gl, gl.VERTEX_SHADER, vertexShaderSource);
101
+ const fragmentShader = createShader(gl, gl.FRAGMENT_SHADER, fragmentShaderSource);
104
102
  const program = gl.createProgram();
105
103
  gl.attachShader(program, vertexShader);
106
104
  gl.attachShader(program, fragmentShader);
@@ -110,7 +108,7 @@ class Logic {
110
108
  throw new Error(gl.getProgramParameter(program));
111
109
  }
112
110
  const ubo_location = gl.getUniformBlockIndex(program, 'UBO');
113
- gl.uniformBlockBinding(program, ubo_location, ubo_js_1.UBO_BINDING_POINT);
111
+ gl.uniformBlockBinding(program, ubo_location, UBO_BINDING_POINT);
114
112
  return [program, gl.getUniformLocation(program, 'vector_field')];
115
113
  ;
116
114
  }
@@ -122,16 +120,16 @@ class Logic {
122
120
  return this.gl.getAttribLocation(this.program, 'in_position');
123
121
  }
124
122
  }
125
- class default_1 {
123
+ export default class {
126
124
  constructor(gl) {
127
125
  this.gl = gl;
128
- this.logic = programcache_1.glProgramCache.getProgram(gl, Logic);
126
+ this.logic = glProgramCache.getProgram(gl, Logic);
129
127
  }
130
128
  move(bufferManager, vectorTexture, uboManager) {
131
129
  this.logic.move(bufferManager, vectorTexture, uboManager);
132
130
  }
133
131
  free() {
134
- programcache_1.glProgramCache.releaseProgram(this.gl, Logic);
132
+ glProgramCache.releaseProgram(this.gl, Logic);
135
133
  this.program = null;
136
134
  this.gl = null;
137
135
  }
@@ -139,4 +137,3 @@ class default_1 {
139
137
  return this.logic.getInPositionLocation();
140
138
  }
141
139
  }
142
- exports.default = default_1;
@@ -1,8 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.shaderUboSource = exports.UBO_BINDING_POINT = exports.UBO_SIZE = exports.WaveParticalUboManager = void 0;
4
1
  const UBO_BINDING_POINT = 0;
5
- exports.UBO_BINDING_POINT = UBO_BINDING_POINT;
6
2
  const INITIAL_UBO_DATA = new Float32Array([93.17, 0.2, 1.0, 7.0, 1.0, 1.0, 1.0, 0.05, 2000, 2000]);
7
3
  const shaderUboSource = `
8
4
  layout(std140) uniform UBO {
@@ -13,9 +9,7 @@ layout(std140) uniform UBO {
13
9
  float drop_rate;
14
10
  vec2 draw_texture_size;
15
11
  };`;
16
- exports.shaderUboSource = shaderUboSource;
17
12
  const UBO_SIZE = 40;
18
- exports.UBO_SIZE = UBO_SIZE;
19
13
  class WaveParticalUboManager {
20
14
  constructor(gl) {
21
15
  this.gl = gl;
@@ -60,4 +54,4 @@ class WaveParticalUboManager {
60
54
  gl.deleteBuffer(_buffer);
61
55
  }
62
56
  }
63
- exports.WaveParticalUboManager = WaveParticalUboManager;
57
+ export { WaveParticalUboManager, UBO_SIZE, UBO_BINDING_POINT, shaderUboSource };
@@ -1,4 +1,3 @@
1
- "use strict";
2
1
  /**
3
2
  * Manages PingPong Buffers.
4
3
  * Updated positions are written to the target buffer.
@@ -6,8 +5,7 @@
6
5
  *
7
6
  * update coords and draw particles programs will use this class.
8
7
  */
9
- Object.defineProperty(exports, "__esModule", { value: true });
10
- class default_1 {
8
+ export default class {
11
9
  constructor(gl, particleCount, inPositionLocation = 0) {
12
10
  this.gl = gl;
13
11
  this._inPositionLocation = inPositionLocation;
@@ -65,7 +63,6 @@ class default_1 {
65
63
  this.gl.deleteVertexArray(this._vaos[1]);
66
64
  }
67
65
  }
68
- exports.default = default_1;
69
66
  function randomNumbers(count) {
70
67
  const result = new Float32Array(count);
71
68
  const random = Math.random;
@@ -1,5 +1,2 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ENUM_TEXT_HIDE = exports.ENUM_HIDE = void 0;
4
- exports.ENUM_HIDE = Object.freeze({ SHOW: 0, HIDE: 1, HIDE_1_DEGREE_PADDINGS: 2 });
5
- exports.ENUM_TEXT_HIDE = Object.freeze({ SHOW: 0, HIDE: 1 });
1
+ export const ENUM_HIDE = Object.freeze({ SHOW: 0, HIDE: 1, HIDE_1_DEGREE_PADDINGS: 2 });
2
+ export const ENUM_TEXT_HIDE = Object.freeze({ SHOW: 0, HIDE: 1 });
@@ -1,15 +1,5 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.ringKeyMethod = exports.RangeRingAngleText = exports.ENUM_TEXT_HIDE = exports.ENUM_HIDE = exports.RangeRings = void 0;
7
- const plugin_1 = require("./plugin");
8
- Object.defineProperty(exports, "RangeRings", { enumerable: true, get: function () { return plugin_1.RangeRings; } });
9
- const ring_account_1 = require("./ring-account");
10
- Object.defineProperty(exports, "ringKeyMethod", { enumerable: true, get: function () { return ring_account_1.ringKeyMethod; } });
11
- const rangeringangletext_1 = __importDefault(require("./rangeringangletext"));
12
- exports.RangeRingAngleText = rangeringangletext_1.default;
13
- const enum_1 = require("./enum");
14
- Object.defineProperty(exports, "ENUM_HIDE", { enumerable: true, get: function () { return enum_1.ENUM_HIDE; } });
15
- Object.defineProperty(exports, "ENUM_TEXT_HIDE", { enumerable: true, get: function () { return enum_1.ENUM_TEXT_HIDE; } });
1
+ import { RangeRings } from "./plugin";
2
+ import { ringKeyMethod } from "./ring-account";
3
+ import RangeRingAngleText from './rangeringangletext';
4
+ import { ENUM_HIDE, ENUM_TEXT_HIDE } from './enum';
5
+ export { RangeRings, ENUM_HIDE, ENUM_TEXT_HIDE, RangeRingAngleText, ringKeyMethod };