@openglobus/og 0.11.5 → 0.11.6

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 (145) hide show
  1. package/package.json +5 -7
  2. package/src/og/Clock.js +6 -10
  3. package/src/og/Events.js +5 -7
  4. package/src/og/Extent.js +73 -32
  5. package/src/og/ImageCanvas.js +18 -15
  6. package/src/og/LonLat.js +13 -10
  7. package/src/og/Popup.js +18 -17
  8. package/src/og/QueueArray.js +3 -4
  9. package/src/og/Rectangle.js +4 -6
  10. package/src/og/Stack.js +2 -4
  11. package/src/og/ajax.js +20 -14
  12. package/src/og/astro/earth.js +21 -15
  13. package/src/og/bv/Box.js +2 -3
  14. package/src/og/bv/Sphere.js +10 -7
  15. package/src/og/camera/Frustum.js +19 -12
  16. package/src/og/camera/PlanetCamera.js +0 -1
  17. package/src/og/control/CompassButton.js +1 -2
  18. package/src/og/control/Control.js +7 -9
  19. package/src/og/control/DebugInfo.js +0 -1
  20. package/src/og/control/KeyboardNavigation.js +9 -9
  21. package/src/og/control/LayerSwitcher.js +21 -20
  22. package/src/og/control/SegmentBoundVisualization.js +5 -6
  23. package/src/og/control/ShowFps.js +12 -7
  24. package/src/og/control/SimpleNavigation.js +5 -7
  25. package/src/og/control/Sun.js +22 -12
  26. package/src/og/control/ToggleWireframe.js +3 -3
  27. package/src/og/control/TouchNavigation.js +43 -32
  28. package/src/og/control/ZoomControl.js +40 -24
  29. package/src/og/ellipsoid/Ellipsoid.js +148 -56
  30. package/src/og/ellipsoid/wgs84.js +3 -3
  31. package/src/og/entity/BaseBillboard.js +65 -14
  32. package/src/og/entity/Billboard.js +9 -5
  33. package/src/og/entity/BillboardHandler.js +310 -64
  34. package/src/og/entity/Entity.js +39 -1
  35. package/src/og/entity/EntityCollection.js +47 -24
  36. package/src/og/entity/GeoObject.js +228 -0
  37. package/src/og/entity/GeoObjectHandler.js +910 -0
  38. package/src/og/entity/GeometryHandler.js +595 -123
  39. package/src/og/entity/Label.js +53 -18
  40. package/src/og/entity/LabelHandler.js +42 -244
  41. package/src/og/entity/LabelWorker.js +213 -0
  42. package/src/og/entity/Object3d.js +504 -0
  43. package/src/og/entity/PointCloud.js +76 -28
  44. package/src/og/entity/PointCloudHandler.js +5 -5
  45. package/src/og/entity/Ray.js +49 -16
  46. package/src/og/entity/Strip.js +72 -43
  47. package/src/og/entity/StripHandler.js +23 -23
  48. package/src/og/layer/BaseGeoImage.js +50 -19
  49. package/src/og/layer/CanvasTiles.js +16 -16
  50. package/src/og/layer/GeoImage.js +6 -6
  51. package/src/og/layer/KML.js +55 -33
  52. package/src/og/layer/Layer.js +3 -3
  53. package/src/og/layer/Vector.js +94 -48
  54. package/src/og/layer/WMS.js +33 -16
  55. package/src/og/light/LightSource.js +19 -12
  56. package/src/og/math/Mat3.js +24 -12
  57. package/src/og/math/Mat4.js +603 -603
  58. package/src/og/math/Plane.js +19 -18
  59. package/src/og/math/Ray.js +17 -12
  60. package/src/og/math/Vec2.js +24 -14
  61. package/src/og/math/Vec3.js +60 -30
  62. package/src/og/math/coder.js +7 -7
  63. package/src/og/proj/EPSG3857.js +3 -3
  64. package/src/og/proj/EPSG4326.js +3 -3
  65. package/src/og/proj/Proj.js +2 -4
  66. package/src/og/quadTree/Node.js +31 -17
  67. package/src/og/renderer/Renderer.js +23 -6
  68. package/src/og/renderer/RendererEvents.js +1 -1
  69. package/src/og/scene/BaseNode.js +2 -3
  70. package/src/og/scene/Planet.js +2 -2
  71. package/src/og/scene/RenderNode.js +15 -8
  72. package/src/og/shaders/geoObject.js +211 -0
  73. package/src/og/shaders/pointCloud.js +41 -41
  74. package/src/og/shaders/shape.js +12 -18
  75. package/src/og/shaders/skybox.js +36 -36
  76. package/src/og/shapes/BaseShape.js +107 -35
  77. package/src/og/shapes/Icosphere.js +25 -10
  78. package/src/og/shapes/Sphere.js +8 -11
  79. package/src/og/utils/TextureAtlas.js +16 -18
  80. package/src/og/utils/shared.js +1 -1
  81. package/src/og/webgl/Handler.js +68 -49
  82. package/src/og/webgl/Multisample.js +44 -16
  83. package/src/og/webgl/Program.js +78 -33
  84. package/src/og/webgl/callbacks.js +3 -3
  85. package/types/Deferred.d.ts +1 -1
  86. package/types/Events.d.ts +2 -2
  87. package/types/Extent.d.ts +1 -1
  88. package/types/Rectangle.d.ts +1 -1
  89. package/types/ajax.d.ts +1 -1
  90. package/types/bv/Box.d.ts +1 -1
  91. package/types/bv/Sphere.d.ts +1 -1
  92. package/types/camera/Camera.d.ts +5 -5
  93. package/types/camera/Frustum.d.ts +6 -6
  94. package/types/camera/PlanetCamera.d.ts +8 -8
  95. package/types/control/Control.d.ts +1 -1
  96. package/types/control/EarthCoordinates.d.ts +1 -1
  97. package/types/control/Sun.d.ts +1 -1
  98. package/types/entity/BaseBillboard.d.ts +15 -8
  99. package/types/entity/Entity.d.ts +24 -9
  100. package/types/entity/EntityCollection.d.ts +15 -9
  101. package/types/entity/GeoObject.d.ts +111 -0
  102. package/types/entity/GeoObjectHandler.d.ts +77 -0
  103. package/types/entity/Geometry.d.ts +1 -1
  104. package/types/entity/GeometryHandler.d.ts +1 -1
  105. package/types/entity/Label.d.ts +3 -3
  106. package/types/entity/LabelHandler.d.ts +2 -0
  107. package/types/entity/LabelWorker.d.ts +9 -0
  108. package/types/entity/PointCloud.d.ts +1 -1
  109. package/types/entity/Polyline.d.ts +5 -5
  110. package/types/entity/Ray.d.ts +1 -1
  111. package/types/entity/Strip.d.ts +1 -1
  112. package/types/layer/BaseGeoImage.d.ts +3 -3
  113. package/types/layer/CanvasTiles.d.ts +5 -5
  114. package/types/layer/GeoImage.d.ts +1 -1
  115. package/types/layer/GeoVideo.d.ts +1 -1
  116. package/types/layer/Layer.d.ts +5 -5
  117. package/types/layer/Vector.d.ts +9 -9
  118. package/types/layer/XYZ.d.ts +3 -3
  119. package/types/light/LightSource.d.ts +7 -7
  120. package/types/math/Plane.d.ts +1 -1
  121. package/types/math/Ray.d.ts +1 -1
  122. package/types/math/Vec2.d.ts +34 -34
  123. package/types/math/Vec3.d.ts +1 -1
  124. package/types/math/Vec4.d.ts +1 -1
  125. package/types/math/coder.d.ts +1 -1
  126. package/types/math.d.ts +1 -1
  127. package/types/proj/Proj.d.ts +2 -2
  128. package/types/quadTree/Node.d.ts +1 -1
  129. package/types/renderer/Renderer.d.ts +12 -10
  130. package/types/renderer/RendererEvents.d.ts +1 -1
  131. package/types/scene/BaseNode.d.ts +4 -4
  132. package/types/scene/Planet.d.ts +40 -40
  133. package/types/scene/RenderNode.d.ts +9 -9
  134. package/types/segment/Segment.d.ts +9 -9
  135. package/types/shaders/geoObject.d.ts +3 -0
  136. package/types/shapes/BaseShape.d.ts +5 -5
  137. package/types/terrain/EmptyTerrain.d.ts +2 -2
  138. package/types/terrain/GlobusTerrain.d.ts +4 -4
  139. package/types/utils/TextureAtlas.d.ts +4 -4
  140. package/types/utils/shared.d.ts +9 -9
  141. package/types/webgl/Framebuffer.d.ts +1 -1
  142. package/types/webgl/Handler.d.ts +16 -7
  143. package/types/webgl/Multisample.d.ts +2 -2
  144. package/types/webgl/Program.d.ts +6 -0
  145. package/types/webgl/ProgramController.d.ts +1 -1
@@ -2,13 +2,13 @@
2
2
  * @module og/control/Sun
3
3
  */
4
4
 
5
- 'use strict';
5
+ "use strict";
6
6
 
7
- import { Control } from './Control.js';
8
- import { getSunPosition } from '../astro/earth.js';
9
- import { LightSource } from '../light/LightSource.js';
10
- import { Quat } from '../math/Quat.js';
11
- import { Vec3 } from '../math/Vec3.js';
7
+ import { Control } from "./Control.js";
8
+ import { getSunPosition } from "../astro/earth.js";
9
+ import { LightSource } from "../light/LightSource.js";
10
+ import { Quat } from "../math/Quat.js";
11
+ import { Vec3 } from "../math/Vec3.js";
12
12
 
13
13
  const ACTIVATION_HEIGHT = 12079000.0;
14
14
  /**
@@ -72,7 +72,6 @@ class Sun extends Control {
72
72
  }
73
73
 
74
74
  oninit() {
75
-
76
75
  this.planet.lightEnabled = true;
77
76
 
78
77
  // sunlight initialization
@@ -120,12 +119,17 @@ class Sun extends Control {
120
119
  }
121
120
 
122
121
  var tu = Vec3.proj_b_to_plane(u, n, u).normalize().scale(this.offsetVertical);
123
- var tr = Vec3.proj_b_to_plane(cam._u, n, cam._u).normalize().scale(this.offsetHorizontal); // right
122
+ var tr = Vec3.proj_b_to_plane(cam._u, n, cam._u)
123
+ .normalize()
124
+ .scale(this.offsetHorizontal); // right
124
125
  var d = tu.add(tr);
125
126
  var pos = cam.eye.add(d);
126
127
  if (this._k > 0) {
127
128
  this._k -= 0.01;
128
- let rot = Quat.getRotationBetweenVectors(this.sunlight._position.normal(), pos.normal());
129
+ let rot = Quat.getRotationBetweenVectors(
130
+ this.sunlight._position.normal(),
131
+ pos.normal()
132
+ );
129
133
  let r = rot.slerp(Quat.IDENTITY, this._k).normalize();
130
134
  this.sunlight.setPosition3v(r.mulVec3(this.sunlight._position));
131
135
  } else {
@@ -135,11 +139,17 @@ class Sun extends Control {
135
139
  this._k = 1;
136
140
  if (this._f > 0) {
137
141
  this._f -= 0.01;
138
- let rot = Quat.getRotationBetweenVectors(this.sunlight._position.normal(), getSunPosition(this._currDate).normal());
142
+ let rot = Quat.getRotationBetweenVectors(
143
+ this.sunlight._position.normal(),
144
+ getSunPosition(this._currDate).normal()
145
+ );
139
146
  let r = rot.slerp(Quat.IDENTITY, this._f).normalize();
140
147
  this.sunlight.setPosition3v(r.mulVec3(this.sunlight._position));
141
148
  } else {
142
- if ((Math.abs(this._currDate - this._prevDate) > 0.00034 && this._active) || this._lightOn) {
149
+ if (
150
+ (Math.abs(this._currDate - this._prevDate) > 0.00034 && this._active) ||
151
+ this._lightOn
152
+ ) {
143
153
  this._lightOn = false;
144
154
  this._prevDate = this._currDate;
145
155
  this.sunlight.setPosition3v(getSunPosition(this._currDate));
@@ -157,4 +167,4 @@ export function sun(options) {
157
167
  return Sun(options);
158
168
  }
159
169
 
160
- export { Sun };
170
+ export { Sun };
@@ -2,10 +2,10 @@
2
2
  * @module og/control/ToggleWireframe
3
3
  */
4
4
 
5
- 'use strict';
5
+ "use strict";
6
6
 
7
- import { Control } from './Control.js';
8
- import { input } from '../input/input.js';
7
+ import { Control } from "./Control.js";
8
+ import { input } from "../input/input.js";
9
9
 
10
10
  /**
11
11
  * Planet GL draw mode(TRIANGLE_STRIP/LINE_STRING) changer.
@@ -2,16 +2,16 @@
2
2
  * @module og/control/TouchNavigation
3
3
  */
4
4
 
5
- 'use strict';
5
+ "use strict";
6
6
 
7
- import * as math from '../math.js';
8
- import { Control } from './Control.js';
9
- import { Key } from '../Lock.js';
10
- import { LonLat } from '../LonLat.js';
11
- import { Quat } from '../math/Quat.js';
12
- import { Ray } from '../math/Ray.js';
13
- import { Sphere } from '../bv/Sphere.js';
14
- import { Vec3 } from '../math/Vec3.js';
7
+ import * as math from "../math.js";
8
+ import { Control } from "./Control.js";
9
+ import { Key } from "../Lock.js";
10
+ import { LonLat } from "../LonLat.js";
11
+ import { Quat } from "../math/Quat.js";
12
+ import { Ray } from "../math/Ray.js";
13
+ import { Sphere } from "../bv/Sphere.js";
14
+ import { Vec3 } from "../math/Vec3.js";
15
15
 
16
16
  class Touch {
17
17
  constructor() {
@@ -21,8 +21,12 @@ class Touch {
21
21
  this.prev_y = 0;
22
22
  this.grabbedPoint = new Vec3();
23
23
  this.grabbedSpheroid = new Sphere();
24
- this.dX = function () { return this.x - this.prev_x; };
25
- this.dY = function () { return this.y - this.prev_y; };
24
+ this.dX = function () {
25
+ return this.x - this.prev_x;
26
+ };
27
+ this.dY = function () {
28
+ return this.y - this.prev_y;
29
+ };
26
30
  }
27
31
  }
28
32
 
@@ -69,11 +73,9 @@ class TouchNavigation extends Control {
69
73
  }
70
74
 
71
75
  onTouchStart(e) {
72
-
73
76
  this._touching = true;
74
77
 
75
78
  if (e.sys.touches.length === 2) {
76
-
77
79
  var t0 = this.touches[0],
78
80
  t1 = this.touches[1];
79
81
 
@@ -90,7 +92,10 @@ class TouchNavigation extends Control {
90
92
  t1.grabbedPoint = this.planet.getCartesianFromPixelTerrain(t1, true);
91
93
 
92
94
  // this.planet._viewChanged = true;
93
- this.pointOnEarth = this.planet.getCartesianFromPixelTerrain(this.renderer.handler.getCenter(), true);
95
+ this.pointOnEarth = this.planet.getCartesianFromPixelTerrain(
96
+ this.renderer.handler.getCenter(),
97
+ true
98
+ );
94
99
 
95
100
  if (this.pointOnEarth) {
96
101
  this.earthUp = this.pointOnEarth.normal();
@@ -101,7 +106,6 @@ class TouchNavigation extends Control {
101
106
  t1.grabbedSpheroid.radius = t1.grabbedPoint.length();
102
107
  this.stopRotation();
103
108
  }
104
-
105
109
  } else if (e.sys.touches.length === 1) {
106
110
  this._startTouchOne(e);
107
111
  }
@@ -141,12 +145,13 @@ class TouchNavigation extends Control {
141
145
  var p = this.planet.getCartesianFromPixelTerrain(this.touches[0], true);
142
146
  if (p) {
143
147
  var g = this.planet.ellipsoid.cartesianToLonLat(p);
144
- this.planet.flyLonLat(new LonLat(g.lon, g.lat, this.renderer.activeCamera.eye.distance(p) * 0.57));
148
+ this.planet.flyLonLat(
149
+ new LonLat(g.lon, g.lat, this.renderer.activeCamera.eye.distance(p) * 0.57)
150
+ );
145
151
  }
146
152
  }
147
153
 
148
154
  onTouchEnd(e) {
149
-
150
155
  if (e.sys.touches.length === 0) {
151
156
  this._touching = false;
152
157
  }
@@ -155,21 +160,20 @@ class TouchNavigation extends Control {
155
160
  this._startTouchOne(e);
156
161
  }
157
162
 
158
- if ((Math.abs(this.touches[0].x - this.touches[0].prev_x) < 3) &&
159
- (Math.abs(this.touches[0].y - this.touches[0].prev_y) < 3)) {
163
+ if (
164
+ Math.abs(this.touches[0].x - this.touches[0].prev_x) < 3 &&
165
+ Math.abs(this.touches[0].y - this.touches[0].prev_y) < 3
166
+ ) {
160
167
  this.scaleRot = 0;
161
168
  }
162
169
  }
163
170
 
164
- onTouchCancel(e) {
165
- }
171
+ onTouchCancel(e) {}
166
172
 
167
173
  onTouchMove(e) {
168
-
169
174
  var cam = this.renderer.activeCamera;
170
175
 
171
176
  if (e.sys.touches.length === 2) {
172
-
173
177
  this.renderer.controlsBag.scaleRot = 1;
174
178
 
175
179
  var t0 = this.touches[0],
@@ -191,9 +195,14 @@ class TouchNavigation extends Control {
191
195
  t1.x = e.sys.touches.item(1).clientX - e.sys.offsetLeft;
192
196
  t1.y = e.sys.touches.item(1).clientY - e.sys.offsetTop;
193
197
 
194
- if ((t0.dY() > 0 && t1.dY() > 0) || (t0.dY() < 0 && t1.dY() < 0) ||
195
- (t0.dX() > 0 && t1.dX() > 0) || (t0.dX() < 0 && t1.dX() < 0)) {
196
- var l = 0.5 / cam.eye.distance(this.pointOnEarth) * cam._lonLat.height * math.RADIANS;
198
+ if (
199
+ (t0.dY() > 0 && t1.dY() > 0) ||
200
+ (t0.dY() < 0 && t1.dY() < 0) ||
201
+ (t0.dX() > 0 && t1.dX() > 0) ||
202
+ (t0.dX() < 0 && t1.dX() < 0)
203
+ ) {
204
+ var l =
205
+ (0.5 / cam.eye.distance(this.pointOnEarth)) * cam._lonLat.height * math.RADIANS;
197
206
  if (l > 0.007) l = 0.007;
198
207
  cam.rotateHorizontal(l * t0.dX(), false, this.pointOnEarth, this.earthUp);
199
208
  cam.rotateVertical(l * t0.dY(), this.pointOnEarth, true);
@@ -202,9 +211,7 @@ class TouchNavigation extends Control {
202
211
  }
203
212
 
204
213
  this.scaleRot = 0;
205
-
206
214
  } else if (e.sys.touches.length === 1) {
207
-
208
215
  var t = this.touches[0];
209
216
 
210
217
  t.prev_x = t.x;
@@ -223,7 +230,10 @@ class TouchNavigation extends Control {
223
230
 
224
231
  if (targetPoint) {
225
232
  if (cam.slope > 0.2) {
226
- this.qRot = Quat.getRotationBetweenVectors(targetPoint.normal(), t.grabbedPoint.normal());
233
+ this.qRot = Quat.getRotationBetweenVectors(
234
+ targetPoint.normal(),
235
+ t.grabbedPoint.normal()
236
+ );
227
237
  var rot = this.qRot;
228
238
  cam.eye = rot.mulVec3(cam.eye);
229
239
  cam._v = rot.mulVec3(cam._v);
@@ -250,7 +260,6 @@ class TouchNavigation extends Control {
250
260
  }
251
261
 
252
262
  onDraw(e) {
253
-
254
263
  this.renderer.controlsBag.scaleRot = this.scaleRot;
255
264
 
256
265
  if (this._touching) {
@@ -281,7 +290,9 @@ class TouchNavigation extends Control {
281
290
  this.scaleRot = 0;
282
291
  } else {
283
292
  r.controlsBag.scaleRot = this.scaleRot;
284
- var rot = this.qRot.slerp(Quat.IDENTITY, 1 - this.scaleRot * this.scaleRot * this.scaleRot).normalize();
293
+ var rot = this.qRot
294
+ .slerp(Quat.IDENTITY, 1 - this.scaleRot * this.scaleRot * this.scaleRot)
295
+ .normalize();
285
296
  if (!(rot.x || rot.y || rot.z)) {
286
297
  this.scaleRot = 0;
287
298
  }
@@ -305,4 +316,4 @@ class TouchNavigation extends Control {
305
316
  }
306
317
  }
307
318
 
308
- export { TouchNavigation };
319
+ export { TouchNavigation };
@@ -2,10 +2,10 @@
2
2
  * @module og/control/ZoomControl
3
3
  */
4
4
 
5
- 'use strict';
5
+ "use strict";
6
6
 
7
- import { Control } from './Control.js';
8
- import { Key } from '../Lock.js';
7
+ import { Control } from "./Control.js";
8
+ import { Key } from "../Lock.js";
9
9
 
10
10
  /**
11
11
  * Planet zoom buttons control.
@@ -27,13 +27,13 @@ class ZoomControl extends Control {
27
27
  }
28
28
 
29
29
  oninit() {
30
- var zoomDiv = document.createElement('div'),
31
- btnZoomIn = document.createElement('button'),
32
- btnZoomOut = document.createElement('button');
30
+ var zoomDiv = document.createElement("div"),
31
+ btnZoomIn = document.createElement("button"),
32
+ btnZoomOut = document.createElement("button");
33
33
 
34
- zoomDiv.className = 'ogZoomControl';
35
- btnZoomIn.className = 'ogZoomButton ogZoomIn';
36
- btnZoomOut.className = 'ogZoomButton ogZoomOut';
34
+ zoomDiv.className = "ogZoomControl";
35
+ btnZoomIn.className = "ogZoomButton ogZoomIn";
36
+ btnZoomOut.className = "ogZoomButton ogZoomOut";
37
37
 
38
38
  zoomDiv.appendChild(btnZoomIn);
39
39
  zoomDiv.appendChild(btnZoomOut);
@@ -46,23 +46,40 @@ class ZoomControl extends Control {
46
46
  btnZoomOut.addEventListener("mousedown", (e) => this.zoomOut());
47
47
  btnZoomOut.addEventListener("mouseup", (e) => this.stopZoom());
48
48
 
49
- btnZoomIn.addEventListener('touchstart', (e) => { e.preventDefault(); this.zoomIn(); });
50
- btnZoomIn.addEventListener('touchend', (e) => { e.preventDefault(); this.stopZoom(); });
51
- btnZoomIn.addEventListener('touchcancel', (e) => { e.preventDefault(); this.stopZoom(); });
52
-
53
- btnZoomOut.addEventListener('touchstart', (e) => { e.preventDefault(); this.zoomOut(); });
54
- btnZoomOut.addEventListener('touchend', (e) => { e.preventDefault(); this.stopZoom(); });
55
- btnZoomOut.addEventListener('touchcancel', (e) => { e.preventDefault(); this.stopZoom(); });
49
+ btnZoomIn.addEventListener("touchstart", (e) => {
50
+ e.preventDefault();
51
+ this.zoomIn();
52
+ });
53
+ btnZoomIn.addEventListener("touchend", (e) => {
54
+ e.preventDefault();
55
+ this.stopZoom();
56
+ });
57
+ btnZoomIn.addEventListener("touchcancel", (e) => {
58
+ e.preventDefault();
59
+ this.stopZoom();
60
+ });
61
+
62
+ btnZoomOut.addEventListener("touchstart", (e) => {
63
+ e.preventDefault();
64
+ this.zoomOut();
65
+ });
66
+ btnZoomOut.addEventListener("touchend", (e) => {
67
+ e.preventDefault();
68
+ this.stopZoom();
69
+ });
70
+ btnZoomOut.addEventListener("touchcancel", (e) => {
71
+ e.preventDefault();
72
+ this.stopZoom();
73
+ });
56
74
 
57
75
  this.renderer.events.on("draw", this._draw, this);
58
76
  }
59
77
 
60
- /**
78
+ /**
61
79
  * Planet zoom in.
62
80
  * @public
63
81
  */
64
82
  zoomIn() {
65
-
66
83
  this.planet.layerLock.lock(this._keyLock);
67
84
  this.planet.terrainLock.lock(this._keyLock);
68
85
  this.planet._normalMapCreator.lock(this._keyLock);
@@ -72,12 +89,11 @@ class ZoomControl extends Control {
72
89
  this._move = 1;
73
90
  }
74
91
 
75
- /**
92
+ /**
76
93
  * Planet zoom out.
77
94
  * @public
78
95
  */
79
96
  zoomOut() {
80
-
81
97
  this.planet.layerLock.lock(this._keyLock);
82
98
  this.planet.terrainLock.lock(this._keyLock);
83
99
  this.planet._normalMapCreator.lock(this._keyLock);
@@ -87,7 +103,6 @@ class ZoomControl extends Control {
87
103
  }
88
104
 
89
105
  stopZoom() {
90
-
91
106
  this._move = 0;
92
107
 
93
108
  this.planet.layerLock.free(this._keyLock);
@@ -96,12 +111,13 @@ class ZoomControl extends Control {
96
111
  }
97
112
 
98
113
  _draw(e) {
99
-
100
114
  var cam = this.renderer.activeCamera;
101
115
 
102
116
  if (this._move !== 0) {
103
- var d = cam.eye.distance(
104
- this.planet.getCartesianFromPixelTerrain(this._targetPoint, true)) * 0.075;
117
+ var d =
118
+ cam.eye.distance(
119
+ this.planet.getCartesianFromPixelTerrain(this._targetPoint, true)
120
+ ) * 0.075;
105
121
  cam.eye.addA(cam.getForward().scale(this._move * d));
106
122
  cam.checkTerrainCollision();
107
123
  cam.update();