@openglobus/og 0.18.0 → 0.18.2

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 (476) hide show
  1. package/README.md +8 -8
  2. package/lib/@openglobus/og.esm.js +2 -0
  3. package/lib/@openglobus/og.esm.js.map +1 -0
  4. package/lib/@openglobus/og.umd.js +2 -0
  5. package/lib/@openglobus/og.umd.js.map +1 -0
  6. package/lib/js/Clock.d.ts +106 -0
  7. package/{src/Clock.ts → lib/js/Clock.js} +31 -126
  8. package/lib/js/Deferred.d.ts +6 -0
  9. package/lib/js/Deferred.js +13 -0
  10. package/lib/js/Events.d.ts +90 -0
  11. package/{src/Events.ts → lib/js/Events.js} +29 -84
  12. package/lib/js/Extent.d.ts +145 -0
  13. package/{src/Extent.ts → lib/js/Extent.js} +74 -120
  14. package/lib/js/Globe.d.ts +132 -0
  15. package/{src/Globe.ts → lib/js/Globe.js} +61 -159
  16. package/lib/js/ImageCanvas.d.ts +128 -0
  17. package/{src/ImageCanvas.ts → lib/js/ImageCanvas.js} +24 -65
  18. package/lib/js/Lock.d.ts +15 -0
  19. package/{src/Lock.ts → lib/js/Lock.js} +7 -21
  20. package/lib/js/LonLat.d.ts +128 -0
  21. package/{src/LonLat.ts → lib/js/LonLat.js} +44 -75
  22. package/lib/js/Object3d.d.ts +49 -0
  23. package/{src/Object3d.ts → lib/js/Object3d.js} +64 -184
  24. package/lib/js/Popup.d.ts +46 -0
  25. package/{src/Popup.ts → lib/js/Popup.js} +42 -110
  26. package/lib/js/QueueArray.d.ts +16 -0
  27. package/{src/QueueArray.ts → lib/js/QueueArray.js} +12 -25
  28. package/lib/js/Rectangle.d.ts +76 -0
  29. package/{src/Rectangle.ts → lib/js/Rectangle.js} +12 -50
  30. package/lib/js/Stack.d.ts +20 -0
  31. package/{src/Stack.ts → lib/js/Stack.js} +13 -29
  32. package/lib/js/astro/astro.d.ts +39 -0
  33. package/{src/astro/astro.ts → lib/js/astro/astro.js} +2 -8
  34. package/lib/js/astro/earth.d.ts +8 -0
  35. package/{src/astro/earth.ts → lib/js/astro/earth.js} +3 -39
  36. package/lib/js/astro/jd.d.ts +234 -0
  37. package/{src/astro/jd.ts → lib/js/astro/jd.js} +55 -134
  38. package/lib/js/astro/orbit.d.ts +5 -0
  39. package/{src/astro/orbit.ts → lib/js/astro/orbit.js} +26 -39
  40. package/lib/js/astro/rotation.d.ts +2 -0
  41. package/{src/astro/rotation.ts → lib/js/astro/rotation.js} +2 -11
  42. package/lib/js/bv/Box.d.ts +32 -0
  43. package/{src/bv/Box.ts → lib/js/bv/Box.js} +7 -35
  44. package/lib/js/bv/Sphere.d.ts +37 -0
  45. package/{src/bv/Sphere.ts → lib/js/bv/Sphere.js} +6 -34
  46. package/{src/bv/index.ts → lib/js/bv/index.d.ts} +0 -1
  47. package/lib/js/bv/index.js +3 -0
  48. package/lib/js/camera/Camera.d.ts +314 -0
  49. package/{src/camera/Camera.ts → lib/js/camera/Camera.js} +77 -326
  50. package/lib/js/camera/Frustum.d.ts +139 -0
  51. package/{src/camera/Frustum.ts → lib/js/camera/Frustum.js} +66 -185
  52. package/lib/js/camera/PlanetCamera.d.ts +234 -0
  53. package/{src/camera/PlanetCamera.ts → lib/js/camera/PlanetCamera.js} +65 -338
  54. package/{src/camera/index.ts → lib/js/camera/index.d.ts} +0 -1
  55. package/lib/js/camera/index.js +3 -0
  56. package/lib/js/cons.d.ts +40 -0
  57. package/{src/cons.ts → lib/js/cons.js} +10 -22
  58. package/lib/js/control/Atmosphere.d.ts +16 -0
  59. package/{src/control/Atmosphere.ts → lib/js/control/Atmosphere.js} +33 -86
  60. package/lib/js/control/CompassButton.d.ts +16 -0
  61. package/{src/control/CompassButton.ts → lib/js/control/CompassButton.js} +18 -43
  62. package/lib/js/control/Control.d.ts +100 -0
  63. package/{src/control/Control.ts → lib/js/control/Control.js} +22 -89
  64. package/lib/js/control/DebugInfo.d.ts +25 -0
  65. package/{src/control/DebugInfo.ts → lib/js/control/DebugInfo.js} +38 -84
  66. package/lib/js/control/DrawingSwitcher.d.ts +13 -0
  67. package/{src/control/DrawingSwitcher.ts → lib/js/control/DrawingSwitcher.js} +13 -30
  68. package/lib/js/control/EarthCoordinates.d.ts +41 -0
  69. package/{src/control/EarthCoordinates.ts → lib/js/control/EarthCoordinates.js} +58 -119
  70. package/lib/js/control/EarthNavigation.d.ts +50 -0
  71. package/{src/control/EarthNavigation.ts → lib/js/control/EarthNavigation.js} +70 -161
  72. package/lib/js/control/GeoImageDragControl.d.ts +22 -0
  73. package/{src/control/GeoImageDragControl.ts → lib/js/control/GeoImageDragControl.js} +26 -49
  74. package/lib/js/control/KeyboardNavigation.d.ts +28 -0
  75. package/{src/control/KeyboardNavigation.ts → lib/js/control/KeyboardNavigation.js} +67 -92
  76. package/lib/js/control/LayerAnimation.d.ts +71 -0
  77. package/{src/control/LayerAnimation.ts → lib/js/control/LayerAnimation.js} +82 -162
  78. package/lib/js/control/LayerSwitcher.d.ts +21 -0
  79. package/{src/control/LayerSwitcher.ts → lib/js/control/LayerSwitcher.js} +16 -41
  80. package/lib/js/control/Lighting.d.ts +49 -0
  81. package/{src/control/Lighting.ts → lib/js/control/Lighting.js} +106 -219
  82. package/lib/js/control/MouseNavigation.d.ts +62 -0
  83. package/{src/control/MouseNavigation.ts → lib/js/control/MouseNavigation.js} +105 -211
  84. package/lib/js/control/MouseWheelZoomControl.d.ts +44 -0
  85. package/lib/js/control/MouseWheelZoomControl.js +181 -0
  86. package/lib/js/control/RulerSwitcher.d.ts +17 -0
  87. package/{src/control/RulerSwitcher.ts → lib/js/control/RulerSwitcher.js} +13 -28
  88. package/lib/js/control/ScaleControl.d.ts +24 -0
  89. package/lib/js/control/ScaleControl.js +91 -0
  90. package/lib/js/control/SegmentBoundVisualization.d.ts +12 -0
  91. package/lib/js/control/SegmentBoundVisualization.js +37 -0
  92. package/lib/js/control/ShowFps.d.ts +9 -0
  93. package/lib/js/control/ShowFps.js +20 -0
  94. package/lib/js/control/SimpleNavigation.d.ts +25 -0
  95. package/{src/control/SimpleNavigation.ts → lib/js/control/SimpleNavigation.js} +29 -51
  96. package/lib/js/control/SimpleSkyBackground.d.ts +15 -0
  97. package/{src/control/SimpleSkyBackground.ts → lib/js/control/SimpleSkyBackground.js} +21 -48
  98. package/lib/js/control/Sun.d.ts +33 -0
  99. package/{src/control/Sun.ts → lib/js/control/Sun.js} +34 -85
  100. package/lib/js/control/ToggleWireframe.d.ts +14 -0
  101. package/lib/js/control/ToggleWireframe.js +28 -0
  102. package/lib/js/control/TouchNavigation.d.ts +52 -0
  103. package/{src/control/TouchNavigation.ts → lib/js/control/TouchNavigation.js} +88 -193
  104. package/lib/js/control/ZoomControl.d.ts +27 -0
  105. package/{src/control/ZoomControl.ts → lib/js/control/ZoomControl.js} +25 -50
  106. package/lib/js/control/drawing/DrawingControl.d.ts +12 -0
  107. package/{src/control/drawing/DrawingControl.ts → lib/js/control/drawing/DrawingControl.js} +10 -20
  108. package/lib/js/control/drawing/LineStringDrawingScene.d.ts +15 -0
  109. package/{src/control/drawing/LineStringDrawingScene.ts → lib/js/control/drawing/LineStringDrawingScene.js} +28 -85
  110. package/lib/js/control/drawing/PolygonDrawingScene.d.ts +98 -0
  111. package/{src/control/drawing/PolygonDrawingScene.ts → lib/js/control/drawing/PolygonDrawingScene.js} +190 -388
  112. package/lib/js/control/elevationProfile/ElevationProfile.d.ts +61 -0
  113. package/{src/control/elevationProfile/ElevationProfile.ts → lib/js/control/elevationProfile/ElevationProfile.js} +56 -148
  114. package/lib/js/control/heightRuler/HeightRuler.d.ts +7 -0
  115. package/{src/control/heightRuler/HeightRuler.ts → lib/js/control/heightRuler/HeightRuler.js} +4 -9
  116. package/lib/js/control/heightRuler/HeightRulerScene.d.ts +35 -0
  117. package/{src/control/heightRuler/HeightRulerScene.ts → lib/js/control/heightRuler/HeightRulerScene.js} +47 -99
  118. package/lib/js/control/heightRuler/HeightRulerSwitcher.d.ts +6 -0
  119. package/{src/control/heightRuler/HeightRulerSwitcher.ts → lib/js/control/heightRuler/HeightRulerSwitcher.js} +2 -4
  120. package/{src/control/index.ts → lib/js/control/index.d.ts} +1 -18
  121. package/lib/js/control/index.js +28 -0
  122. package/lib/js/control/ruler/Ruler.d.ts +13 -0
  123. package/lib/js/control/ruler/Ruler.js +23 -0
  124. package/lib/js/control/ruler/RulerScene.d.ts +88 -0
  125. package/lib/js/control/ruler/RulerScene.js +324 -0
  126. package/lib/js/control/selection/Selection.d.ts +55 -0
  127. package/{src/control/selection/Selection.ts → lib/js/control/selection/Selection.js} +15 -34
  128. package/lib/js/control/selection/SelectionScene.d.ts +44 -0
  129. package/{src/control/selection/SelectionScene.ts → lib/js/control/selection/SelectionScene.js} +26 -113
  130. package/lib/js/control/timeline/TimelineControl.d.ts +18 -0
  131. package/{src/control/timeline/TimelineControl.ts → lib/js/control/timeline/TimelineControl.js} +13 -43
  132. package/lib/js/control/timeline/TimelineModel.d.ts +41 -0
  133. package/{src/control/timeline/TimelineModel.ts → lib/js/control/timeline/TimelineModel.js} +26 -74
  134. package/lib/js/control/timeline/TimelineView.d.ts +85 -0
  135. package/{src/control/timeline/TimelineView.ts → lib/js/control/timeline/TimelineView.js} +133 -281
  136. package/lib/js/control/timeline/timelineUtils.d.ts +12 -0
  137. package/lib/js/control/timeline/timelineUtils.js +112 -0
  138. package/lib/js/control/visibleExtent/Segment.d.ts +277 -0
  139. package/{src → lib/js}/control/visibleExtent/Segment.js +145 -698
  140. package/lib/js/control/visibleExtent/VisibleExtent.d.ts +5 -0
  141. package/{src → lib/js}/control/visibleExtent/VisibleExtent.js +1 -18
  142. package/lib/js/control/visibleExtent/drawnode.d.ts +7 -0
  143. package/{src/control/visibleExtent/drawnode.ts → lib/js/control/visibleExtent/drawnode.js} +1 -28
  144. package/lib/js/ellipsoid/Ellipsoid.d.ts +187 -0
  145. package/{src/ellipsoid/Ellipsoid.ts → lib/js/ellipsoid/Ellipsoid.js} +85 -267
  146. package/lib/js/ellipsoid/index.d.ts +3 -0
  147. package/lib/js/ellipsoid/index.js +3 -0
  148. package/lib/js/ellipsoid/wgs84.d.ts +6 -0
  149. package/{src/ellipsoid/wgs84.ts → lib/js/ellipsoid/wgs84.js} +1 -2
  150. package/lib/js/entity/BaseBillboard.d.ts +222 -0
  151. package/{src/entity/BaseBillboard.ts → lib/js/entity/BaseBillboard.js} +48 -165
  152. package/lib/js/entity/BaseBillboardHandler.d.ts +81 -0
  153. package/{src/entity/BaseBillboardHandler.ts → lib/js/entity/BaseBillboardHandler.js} +139 -365
  154. package/lib/js/entity/Billboard.d.ts +113 -0
  155. package/{src/entity/Billboard.ts → lib/js/entity/Billboard.js} +19 -83
  156. package/lib/js/entity/BillboardHandler.d.ts +15 -0
  157. package/{src/entity/BillboardHandler.ts → lib/js/entity/BillboardHandler.js} +27 -59
  158. package/lib/js/entity/Entity.d.ts +354 -0
  159. package/{src/entity/Entity.ts → lib/js/entity/Entity.js} +102 -374
  160. package/lib/js/entity/EntityCollection.d.ts +363 -0
  161. package/{src/entity/EntityCollection.ts → lib/js/entity/EntityCollection.js} +57 -359
  162. package/lib/js/entity/GeoObject.d.ts +138 -0
  163. package/{src/entity/GeoObject.ts → lib/js/entity/GeoObject.js} +41 -146
  164. package/lib/js/entity/GeoObjectHandler.d.ts +99 -0
  165. package/{src/entity/GeoObjectHandler.ts → lib/js/entity/GeoObjectHandler.js} +162 -423
  166. package/lib/js/entity/Geometry.d.ts +111 -0
  167. package/lib/js/entity/Geometry.js +283 -0
  168. package/lib/js/entity/GeometryHandler.d.ts +84 -0
  169. package/{src/entity/GeometryHandler.ts → lib/js/entity/GeometryHandler.js} +162 -657
  170. package/lib/js/entity/Label.d.ts +207 -0
  171. package/{src/entity/Label.ts → lib/js/entity/Label.js} +63 -165
  172. package/lib/js/entity/LabelHandler.d.ts +65 -0
  173. package/{src/entity/LabelHandler.ts → lib/js/entity/LabelHandler.js} +175 -408
  174. package/lib/js/entity/LabelWorker.d.ts +15 -0
  175. package/{src/entity/LabelWorker.ts → lib/js/entity/LabelWorker.js} +24 -45
  176. package/lib/js/entity/PointCloud.d.ts +179 -0
  177. package/{src/entity/PointCloud.ts → lib/js/entity/PointCloud.js} +65 -265
  178. package/lib/js/entity/PointCloudHandler.d.ts +42 -0
  179. package/{src/entity/PointCloudHandler.ts → lib/js/entity/PointCloudHandler.js} +19 -62
  180. package/lib/js/entity/Polyline.d.ts +337 -0
  181. package/{src/entity/Polyline.ts → lib/js/entity/Polyline.js} +289 -924
  182. package/lib/js/entity/PolylineHandler.d.ts +22 -0
  183. package/{src/entity/PolylineHandler.ts → lib/js/entity/PolylineHandler.js} +12 -37
  184. package/lib/js/entity/Ray.d.ts +133 -0
  185. package/{src/entity/Ray.ts → lib/js/entity/Ray.js} +26 -146
  186. package/lib/js/entity/RayHandler.d.ts +70 -0
  187. package/{src/entity/RayHandler.ts → lib/js/entity/RayHandler.js} +102 -342
  188. package/lib/js/entity/Strip.d.ts +127 -0
  189. package/{src/entity/Strip.ts → lib/js/entity/Strip.js} +102 -372
  190. package/lib/js/entity/StripHandler.d.ts +42 -0
  191. package/{src/entity/StripHandler.ts → lib/js/entity/StripHandler.js} +22 -74
  192. package/{src/entity/index.ts → lib/js/entity/index.d.ts} +1 -2
  193. package/lib/js/entity/index.js +11 -0
  194. package/lib/js/index.d.ts +33 -0
  195. package/lib/js/index.js +33 -0
  196. package/lib/js/input/KeyboardHandler.d.ts +33 -0
  197. package/{src/input/KeyboardHandler.ts → lib/js/input/KeyboardHandler.js} +45 -84
  198. package/lib/js/input/MouseHandler.d.ts +16 -0
  199. package/{src/input/MouseHandler.ts → lib/js/input/MouseHandler.js} +12 -36
  200. package/lib/js/input/TouchHandler.d.ts +11 -0
  201. package/{src/input/TouchHandler.ts → lib/js/input/TouchHandler.js} +11 -23
  202. package/lib/js/input/input.d.ts +3 -0
  203. package/{src/input/input.ts → lib/js/input/input.js} +1 -1
  204. package/lib/js/layer/BaseGeoImage.d.ts +145 -0
  205. package/{src/layer/BaseGeoImage.ts → lib/js/layer/BaseGeoImage.js} +70 -235
  206. package/lib/js/layer/CanvasTiles.d.ts +103 -0
  207. package/{src/layer/CanvasTiles.ts → lib/js/layer/CanvasTiles.js} +54 -146
  208. package/lib/js/layer/GeoImage.d.ts +61 -0
  209. package/{src/layer/GeoImage.ts → lib/js/layer/GeoImage.js} +24 -54
  210. package/lib/js/layer/GeoTexture2d.d.ts +17 -0
  211. package/lib/js/layer/GeoTexture2d.js +37 -0
  212. package/lib/js/layer/GeoVideo.d.ts +68 -0
  213. package/{src/layer/GeoVideo.ts → lib/js/layer/GeoVideo.js} +31 -61
  214. package/lib/js/layer/KML.d.ts +72 -0
  215. package/{src/layer/KML.ts → lib/js/layer/KML.js} +94 -138
  216. package/lib/js/layer/Layer.d.ts +401 -0
  217. package/{src/layer/Layer.ts → lib/js/layer/Layer.js} +92 -443
  218. package/lib/js/layer/Material.d.ts +34 -0
  219. package/{src/layer/Material.ts → lib/js/layer/Material.js} +9 -43
  220. package/lib/js/layer/Vector.d.ts +243 -0
  221. package/{src/layer/Vector.ts → lib/js/layer/Vector.js} +155 -426
  222. package/lib/js/layer/WMS.d.ts +75 -0
  223. package/{src/layer/WMS.ts → lib/js/layer/WMS.js} +18 -100
  224. package/lib/js/layer/XYZ.d.ts +149 -0
  225. package/{src/layer/XYZ.ts → lib/js/layer/XYZ.js} +71 -171
  226. package/lib/js/layer/index.d.ts +11 -0
  227. package/lib/js/layer/index.js +11 -0
  228. package/lib/js/light/LightSource.d.ts +174 -0
  229. package/{src/light/LightSource.ts → lib/js/light/LightSource.js} +22 -131
  230. package/lib/js/math/Line2.d.ts +11 -0
  231. package/{src/math/Line2.ts → lib/js/math/Line2.js} +5 -15
  232. package/lib/js/math/Line3.d.ts +28 -0
  233. package/lib/js/math/Line3.js +85 -0
  234. package/lib/js/math/Mat3.d.ts +77 -0
  235. package/{src/math/Mat3.ts → lib/js/math/Mat3.js} +22 -51
  236. package/lib/js/math/Mat4.d.ts +195 -0
  237. package/{src/math/Mat4.ts → lib/js/math/Mat4.js} +53 -219
  238. package/lib/js/math/Plane.d.ts +20 -0
  239. package/{src/math/Plane.ts → lib/js/math/Plane.js} +26 -40
  240. package/lib/js/math/Quat.d.ts +373 -0
  241. package/{src/math/Quat.ts → lib/js/math/Quat.js} +106 -319
  242. package/lib/js/math/Ray.d.ts +76 -0
  243. package/{src/math/Ray.ts → lib/js/math/Ray.js} +21 -66
  244. package/lib/js/math/Vec2.d.ts +310 -0
  245. package/{src/math/Vec2.ts → lib/js/math/Vec2.js} +55 -121
  246. package/lib/js/math/Vec3.d.ts +472 -0
  247. package/{src/math/Vec3.ts → lib/js/math/Vec3.js} +103 -236
  248. package/lib/js/math/Vec4.d.ts +163 -0
  249. package/{src/math/Vec4.ts → lib/js/math/Vec4.js} +23 -79
  250. package/lib/js/math/coder.d.ts +51 -0
  251. package/{src/math/coder.ts → lib/js/math/coder.js} +14 -20
  252. package/lib/js/math/index.d.ts +11 -0
  253. package/lib/js/math/index.js +11 -0
  254. package/lib/js/math.d.ts +266 -0
  255. package/{src/math.ts → lib/js/math.js} +37 -85
  256. package/lib/js/mercator.d.ts +92 -0
  257. package/{src/mercator.ts → lib/js/mercator.js} +13 -37
  258. package/lib/js/proj/EPSG3857.d.ts +9 -0
  259. package/{src/proj/EPSG3857.ts → lib/js/proj/EPSG3857.js} +0 -2
  260. package/lib/js/proj/EPSG4326.d.ts +9 -0
  261. package/{src/proj/EPSG4326.ts → lib/js/proj/EPSG4326.js} +0 -2
  262. package/lib/js/proj/Proj.d.ts +43 -0
  263. package/{src/proj/Proj.ts → lib/js/proj/Proj.js} +4 -29
  264. package/lib/js/quadTree/EPSG4326QuadTreeStrategy.d.ts +6 -0
  265. package/lib/js/quadTree/EPSG4326QuadTreeStrategy.js +17 -0
  266. package/lib/js/quadTree/EarthQuadTreeStrategy.d.ts +6 -0
  267. package/lib/js/quadTree/EarthQuadTreeStrategy.js +19 -0
  268. package/lib/js/quadTree/EntityCollectionNode.d.ts +54 -0
  269. package/{src/quadTree/EntityCollectionNode.ts → lib/js/quadTree/EntityCollectionNode.js} +83 -150
  270. package/lib/js/quadTree/MarsQuadTreeStrategy.d.ts +6 -0
  271. package/lib/js/quadTree/MarsQuadTreeStrategy.js +17 -0
  272. package/lib/js/quadTree/Node.d.ts +61 -0
  273. package/{src/quadTree/Node.ts → lib/js/quadTree/Node.js} +140 -357
  274. package/lib/js/quadTree/QuadTreeStrategy.d.ts +25 -0
  275. package/{src/quadTree/QuadTreeStrategy.ts → lib/js/quadTree/QuadTreeStrategy.js} +13 -44
  276. package/lib/js/quadTree/Wgs84QuadTreeStrategy.d.ts +6 -0
  277. package/lib/js/quadTree/Wgs84QuadTreeStrategy.js +15 -0
  278. package/lib/js/quadTree/index.d.ts +12 -0
  279. package/lib/js/quadTree/index.js +12 -0
  280. package/lib/js/quadTree/quadTree.d.ts +40 -0
  281. package/{src/quadTree/quadTree.ts → lib/js/quadTree/quadTree.js} +0 -9
  282. package/lib/js/renderer/Renderer.d.ts +320 -0
  283. package/{src/renderer/Renderer.ts → lib/js/renderer/Renderer.js} +265 -622
  284. package/lib/js/renderer/RendererEvents.d.ts +239 -0
  285. package/{src/renderer/RendererEvents.ts → lib/js/renderer/RendererEvents.js} +158 -472
  286. package/lib/js/scene/Axes.d.ts +12 -0
  287. package/lib/js/scene/Axes.js +59 -0
  288. package/lib/js/scene/BaseNode.d.ts +61 -0
  289. package/{src/scene/BaseNode.ts → lib/js/scene/BaseNode.js} +11 -57
  290. package/lib/js/scene/Planet.d.ts +623 -0
  291. package/{src/scene/Planet.ts → lib/js/scene/Planet.js} +257 -937
  292. package/lib/js/scene/RenderNode.d.ts +150 -0
  293. package/{src/scene/RenderNode.ts → lib/js/scene/RenderNode.js} +33 -138
  294. package/lib/js/scene/SkyBox.d.ts +13 -0
  295. package/{src/scene/SkyBox.ts → lib/js/scene/SkyBox.js} +16 -37
  296. package/{src/scene/index.ts → lib/js/scene/index.d.ts} +0 -1
  297. package/lib/js/scene/index.js +5 -0
  298. package/lib/js/segment/Segment.d.ts +278 -0
  299. package/{src/segment/Segment.ts → lib/js/segment/Segment.js} +242 -913
  300. package/lib/js/segment/SegmentLonLat.d.ts +48 -0
  301. package/{src/segment/SegmentLonLat.ts → lib/js/segment/SegmentLonLat.js} +58 -132
  302. package/lib/js/segment/SegmentLonLatWgs84.d.ts +10 -0
  303. package/lib/js/segment/SegmentLonLatWgs84.js +23 -0
  304. package/lib/js/segment/Slice.d.ts +13 -0
  305. package/{src/segment/Slice.ts → lib/js/segment/Slice.js} +4 -22
  306. package/lib/js/segment/segmentHelper.d.ts +18 -0
  307. package/{src/segment/segmentHelper.ts → lib/js/segment/segmentHelper.js} +30 -88
  308. package/lib/js/shaders/atmos.d.ts +4 -0
  309. package/{src/shaders/atmos.ts → lib/js/shaders/atmos.js} +8 -26
  310. package/lib/js/shaders/billboard.d.ts +3 -0
  311. package/{src/shaders/billboard.ts → lib/js/shaders/billboard.js} +9 -18
  312. package/lib/js/shaders/bloom.d.ts +2 -0
  313. package/{src/shaders/bloom.ts → lib/js/shaders/bloom.js} +5 -8
  314. package/lib/js/shaders/blur.d.ts +3 -0
  315. package/{src/shaders/blur.ts → lib/js/shaders/blur.js} +11 -19
  316. package/lib/js/shaders/depth.d.ts +2 -0
  317. package/{src/shaders/depth.ts → lib/js/shaders/depth.js} +3 -6
  318. package/lib/js/shaders/drawnode.d.ts +8 -0
  319. package/{src/shaders/drawnode.ts → lib/js/shaders/drawnode.js} +23 -75
  320. package/lib/js/shaders/geoObject.d.ts +3 -0
  321. package/{src/shaders/geoObject.ts → lib/js/shaders/geoObject.js} +51 -63
  322. package/lib/js/shaders/label.d.ts +4 -0
  323. package/{src/shaders/label.ts → lib/js/shaders/label.js} +12 -25
  324. package/lib/js/shaders/lumFilter.d.ts +2 -0
  325. package/{src/shaders/lumFilter.ts → lib/js/shaders/lumFilter.js} +4 -7
  326. package/lib/js/shaders/pickingMask.d.ts +2 -0
  327. package/{src/shaders/pickingMask.ts → lib/js/shaders/pickingMask.js} +5 -8
  328. package/lib/js/shaders/pointCloud.d.ts +2 -0
  329. package/{src/shaders/pointCloud.ts → lib/js/shaders/pointCloud.js} +4 -7
  330. package/lib/js/shaders/polyline.d.ts +3 -0
  331. package/{src/shaders/polyline.ts → lib/js/shaders/polyline.js} +7 -22
  332. package/lib/js/shaders/ray.d.ts +2 -0
  333. package/{src/shaders/ray.ts → lib/js/shaders/ray.js} +4 -7
  334. package/lib/js/shaders/screenFrame.d.ts +2 -0
  335. package/{src/shaders/screenFrame.ts → lib/js/shaders/screenFrame.js} +5 -8
  336. package/lib/js/shaders/skybox.d.ts +2 -0
  337. package/{src/shaders/skybox.ts → lib/js/shaders/skybox.js} +10 -13
  338. package/lib/js/shaders/toneMapping.d.ts +2 -0
  339. package/{src/shaders/toneMapping.ts → lib/js/shaders/toneMapping.js} +5 -8
  340. package/lib/js/shaders/utils.d.ts +1 -0
  341. package/{src/shaders/utils.ts → lib/js/shaders/utils.js} +1 -1
  342. package/lib/js/terrain/BilTerrain.d.ts +18 -0
  343. package/{src/terrain/BilTerrain.ts → lib/js/terrain/BilTerrain.js} +21 -118
  344. package/lib/js/terrain/EmptyTerrain.d.ts +106 -0
  345. package/{src/terrain/EmptyTerrain.ts → lib/js/terrain/EmptyTerrain.js} +20 -144
  346. package/lib/js/terrain/Geoid.d.ts +33 -0
  347. package/lib/js/terrain/Geoid.js +191 -0
  348. package/lib/js/terrain/GlobusTerrain.d.ts +134 -0
  349. package/{src/terrain/GlobusTerrain.ts → lib/js/terrain/GlobusTerrain.js} +84 -241
  350. package/lib/js/terrain/MapboxTerrain.d.ts +21 -0
  351. package/{src/terrain/MapboxTerrain.ts → lib/js/terrain/MapboxTerrain.js} +46 -215
  352. package/{src/terrain/index.ts → lib/js/terrain/index.d.ts} +0 -1
  353. package/lib/js/terrain/index.js +5 -0
  354. package/lib/js/ui/Button.d.ts +32 -0
  355. package/lib/js/ui/Button.js +78 -0
  356. package/lib/js/ui/ButtonGroup.d.ts +16 -0
  357. package/lib/js/ui/ButtonGroup.js +41 -0
  358. package/lib/js/ui/Dialog.d.ts +55 -0
  359. package/lib/js/ui/Dialog.js +173 -0
  360. package/lib/js/ui/Slider.d.ts +38 -0
  361. package/lib/js/ui/Slider.js +129 -0
  362. package/lib/js/ui/ToggleButton.d.ts +20 -0
  363. package/lib/js/ui/ToggleButton.js +42 -0
  364. package/lib/js/ui/View.d.ts +37 -0
  365. package/{src/ui/View.ts → lib/js/ui/View.js} +31 -77
  366. package/lib/js/ui/icons.d.ts +1 -0
  367. package/{src/ui/icons.ts → lib/js/ui/icons.js} +1 -1
  368. package/lib/js/utils/BaseWorker.d.ts +14 -0
  369. package/{src/utils/BaseWorker.ts → lib/js/utils/BaseWorker.js} +15 -28
  370. package/lib/js/utils/FontAtlas.d.ts +82 -0
  371. package/{src/utils/FontAtlas.ts → lib/js/utils/FontAtlas.js} +46 -182
  372. package/lib/js/utils/GeoImageCreator.d.ts +34 -0
  373. package/{src/utils/GeoImageCreator.ts → lib/js/utils/GeoImageCreator.js} +34 -91
  374. package/lib/js/utils/ImagesCacheManager.d.ts +22 -0
  375. package/{src/utils/ImagesCacheManager.ts → lib/js/utils/ImagesCacheManager.js} +16 -38
  376. package/lib/js/utils/Loader.d.ts +63 -0
  377. package/lib/js/utils/Loader.js +156 -0
  378. package/lib/js/utils/NormalMapCreator.d.ts +52 -0
  379. package/{src/utils/NormalMapCreator.ts → lib/js/utils/NormalMapCreator.js} +64 -195
  380. package/lib/js/utils/PlainSegmentWorker.d.ts +24 -0
  381. package/{src/utils/PlainSegmentWorker.ts → lib/js/utils/PlainSegmentWorker.js} +24 -56
  382. package/lib/js/utils/TerrainWorker.d.ts +28 -0
  383. package/{src/utils/TerrainWorker.ts → lib/js/utils/TerrainWorker.js} +19 -56
  384. package/lib/js/utils/TextureAtlas.d.ts +113 -0
  385. package/{src/utils/TextureAtlas.ts → lib/js/utils/TextureAtlas.js} +40 -131
  386. package/lib/js/utils/VectorTileCreator.d.ts +18 -0
  387. package/{src/utils/VectorTileCreator.ts → lib/js/utils/VectorTileCreator.js} +61 -147
  388. package/lib/js/utils/colorTable.d.ts +3 -0
  389. package/{src/utils/colorTable.ts → lib/js/utils/colorTable.js} +2 -2
  390. package/lib/js/utils/earcut.d.ts +7 -0
  391. package/{src/utils/earcut.ts → lib/js/utils/earcut.js} +95 -223
  392. package/lib/js/utils/objParser.d.ts +24 -0
  393. package/{src/utils/objParser.ts → lib/js/utils/objParser.js} +38 -93
  394. package/lib/js/utils/shared.d.ts +267 -0
  395. package/{src/utils/shared.ts → lib/js/utils/shared.js} +185 -342
  396. package/lib/js/utils/units.d.ts +16 -0
  397. package/lib/js/utils/units.js +61 -0
  398. package/lib/js/webgl/BaseFramebuffer.d.ts +53 -0
  399. package/{src/webgl/BaseFramebuffer.ts → lib/js/webgl/BaseFramebuffer.js} +22 -59
  400. package/lib/js/webgl/Framebuffer.d.ts +69 -0
  401. package/{src/webgl/Framebuffer.ts → lib/js/webgl/Framebuffer.js} +30 -87
  402. package/lib/js/webgl/Handler.d.ts +473 -0
  403. package/{src/webgl/Handler.ts → lib/js/webgl/Handler.js} +175 -586
  404. package/lib/js/webgl/Multisample.d.ts +27 -0
  405. package/lib/js/webgl/Multisample.js +77 -0
  406. package/lib/js/webgl/Program.d.ts +159 -0
  407. package/{src/webgl/Program.ts → lib/js/webgl/Program.js} +73 -210
  408. package/lib/js/webgl/ProgramController.d.ts +86 -0
  409. package/{src/webgl/ProgramController.ts → lib/js/webgl/ProgramController.js} +11 -45
  410. package/{src/webgl/index.ts → lib/js/webgl/index.d.ts} +1 -8
  411. package/lib/js/webgl/index.js +6 -0
  412. package/lib/js/webgl/types.d.ts +9 -0
  413. package/{src/webgl/types.ts → lib/js/webgl/types.js} +5 -8
  414. package/lib/js/webgl/variableHandlers.d.ts +22 -0
  415. package/lib/js/webgl/variableHandlers.js +78 -0
  416. package/package.json +23 -34
  417. package/dist/@openglobus/og.esm.js +0 -2
  418. package/dist/@openglobus/og.esm.js.map +0 -1
  419. package/dist/@openglobus/og.umd.js +0 -2
  420. package/dist/@openglobus/og.umd.js.map +0 -1
  421. package/src/Deferred.ts +0 -17
  422. package/src/control/MouseWheelZoomControl.ts +0 -269
  423. package/src/control/ScaleControl.ts +0 -131
  424. package/src/control/SegmentBoundVisualization.ts +0 -50
  425. package/src/control/ShowFps.ts +0 -28
  426. package/src/control/ToggleWireframe.ts +0 -35
  427. package/src/control/ruler/Ruler.ts +0 -35
  428. package/src/control/ruler/RulerScene.ts +0 -437
  429. package/src/control/timeline/timelineUtils.ts +0 -133
  430. package/src/ellipsoid/index.ts +0 -4
  431. package/src/entity/Geometry.ts +0 -486
  432. package/src/index.ts +0 -173
  433. package/src/layer/GeoTexture2d.ts +0 -56
  434. package/src/layer/index.ts +0 -12
  435. package/src/math/Line3.ts +0 -162
  436. package/src/math/index.ts +0 -26
  437. package/src/quadTree/EPSG4326QuadTreeStrategy.ts +0 -24
  438. package/src/quadTree/EarthQuadTreeStrategy.ts +0 -28
  439. package/src/quadTree/MarsQuadTreeStrategy.ts +0 -25
  440. package/src/quadTree/Wgs84QuadTreeStrategy.ts +0 -22
  441. package/src/quadTree/index.ts +0 -14
  442. package/src/scene/Axes.ts +0 -78
  443. package/src/segment/SegmentLonLatWgs84.ts +0 -33
  444. package/src/terrain/Geoid.ts +0 -273
  445. package/src/ui/Button.ts +0 -121
  446. package/src/ui/ButtonGroup.ts +0 -63
  447. package/src/ui/Dialog.ts +0 -244
  448. package/src/ui/Slider.ts +0 -188
  449. package/src/ui/ToggleButton.ts +0 -68
  450. package/src/utils/Loader.ts +0 -247
  451. package/src/utils/units.ts +0 -78
  452. package/src/webgl/Multisample.ts +0 -153
  453. package/src/webgl/variableHandlers.ts +0 -114
  454. /package/{dist → lib}/@openglobus/og.css +0 -0
  455. /package/{dist → lib}/@openglobus/res/fonts/Karla-Bold.json +0 -0
  456. /package/{dist → lib}/@openglobus/res/fonts/Karla-Bold.ttf.cfg +0 -0
  457. /package/{dist → lib}/@openglobus/res/fonts/Karla-Bold.ttf.png +0 -0
  458. /package/{dist → lib}/@openglobus/res/fonts/Karla-Light.json +0 -0
  459. /package/{dist → lib}/@openglobus/res/fonts/Karla-Light.ttf.cfg +0 -0
  460. /package/{dist → lib}/@openglobus/res/fonts/Karla-Light.ttf.png +0 -0
  461. /package/{dist → lib}/@openglobus/res/fonts/Karla-Medium.json +0 -0
  462. /package/{dist → lib}/@openglobus/res/fonts/Karla-Medium.ttf.cfg +0 -0
  463. /package/{dist → lib}/@openglobus/res/fonts/Karla-Medium.ttf.png +0 -0
  464. /package/{dist → lib}/@openglobus/res/fonts/NotoSansArabic-Regular.json +0 -0
  465. /package/{dist → lib}/@openglobus/res/fonts/NotoSansArabic-Regular.ttf.cfg +0 -0
  466. /package/{dist → lib}/@openglobus/res/fonts/NotoSansArabic-Regular.ttf.png +0 -0
  467. /package/{dist → lib}/@openglobus/res/fonts/Roboto-Regular.json +0 -0
  468. /package/{dist → lib}/@openglobus/res/fonts/Roboto-Regular.ttf.cfg +0 -0
  469. /package/{dist → lib}/@openglobus/res/fonts/Roboto-Regular.ttf.png +0 -0
  470. /package/{dist → lib}/@openglobus/res/fonts/arial.js +0 -0
  471. /package/{dist → lib}/@openglobus/res/fonts/arial.json +0 -0
  472. /package/{dist → lib}/@openglobus/res/fonts/arial.ttf.cfg +0 -0
  473. /package/{dist → lib}/@openglobus/res/fonts/arial.ttf.png +0 -0
  474. /package/{dist → lib}/@openglobus/res/night-4326.png +0 -0
  475. /package/{dist → lib}/@openglobus/res/night.png +0 -0
  476. /package/{dist → lib}/@openglobus/res/spec.png +0 -0
@@ -1,36 +1,21 @@
1
1
  import * as math from "../../math";
2
- import {createEvents, EventsHandler} from '../../Events';
3
- import {CoordinatesType} from "../../entity/Geometry";
4
- import {Entity} from '../../entity/Entity';
5
- import {IMouseState} from "../../renderer/RendererEvents";
6
- import {MouseNavigation} from "../MouseNavigation";
7
- import {LonLat} from '../../LonLat';
8
- import {Line3} from '../../math/Line3';
9
- import {Object3d} from '../../Object3d';
10
- import {Planet} from '../../scene/Planet';
11
- import {RenderNode} from '../../scene/RenderNode';
12
- import {Vec2} from '../../math/Vec2';
13
- import {Vec3} from '../../math/Vec3';
14
- import {Vector} from '../../layer/Vector';
15
-
16
- type PolygonDrawingSceneEventsList = ["change", "startpoint"];
17
-
18
- const POLYGONDRAWINGSCENE_EVENTS: PolygonDrawingSceneEventsList = ["change", "startpoint"];
19
-
20
- export interface IPolygonDrawingSceneParams {
21
- coordinates?: CoordinatesType[];
22
- name: string;
23
- }
24
-
2
+ import { createEvents } from '../../Events';
3
+ import { Entity } from '../../entity/Entity';
4
+ import { LonLat } from '../../LonLat';
5
+ import { Line3 } from '../../math/Line3';
6
+ import { Object3d } from '../../Object3d';
7
+ import { RenderNode } from '../../scene/RenderNode';
8
+ import { Vec2 } from '../../math/Vec2';
9
+ import { Vec3 } from '../../math/Vec3';
10
+ import { Vector } from '../../layer/Vector';
11
+ const POLYGONDRAWINGSCENE_EVENTS = ["change", "startpoint"];
25
12
  const POINTER_OBJ3D = Object3d.createCylinder(1, 1, 2.0, 20, 1, true, false, 0, -0.5, 0);
26
-
27
13
  export const NUM_SEGMENTS = 200;
28
14
  export const OUTLINE_ALT = 0.3;
29
15
  export const COORDINATES_COLOR = "rgb(350, 350, 0)";
30
16
  export const CENTER_COLOR = "rgb(0, 350, 50)";
31
17
  export const OUTLINE_COLOR = "rgb(0, 350, 50)";
32
18
  export const OUTLINE_THICKNESS = 3.5;
33
-
34
19
  export const CORNER_OPTIONS = {
35
20
  scale: 0.5,
36
21
  instanced: true,
@@ -38,7 +23,6 @@ export const CORNER_OPTIONS = {
38
23
  color: COORDINATES_COLOR,
39
24
  object3d: POINTER_OBJ3D
40
25
  };
41
-
42
26
  export const CENTER_OPTIONS = {
43
27
  scale: 0.4,
44
28
  instanced: true,
@@ -46,48 +30,107 @@ export const CENTER_OPTIONS = {
46
30
  color: CENTER_COLOR,
47
31
  object3d: POINTER_OBJ3D
48
32
  };
49
-
50
33
  export const OUTLINE_OPTIONS = {
51
34
  thickness: OUTLINE_THICKNESS,
52
35
  color: OUTLINE_COLOR
53
- }
54
-
36
+ };
55
37
  class PolygonDrawingScene extends RenderNode {
56
- public events: EventsHandler<PolygonDrawingSceneEventsList>;
57
- public _planet: Planet | null;
58
- protected _initCoordinates: CoordinatesType[];
59
- protected _pickedCorner: Entity | null;
60
- protected _pickedCenter: Entity | null;
61
- protected _startPos: Vec2 | null;
62
- protected _startClick: Vec2;
63
- protected _geometryLayer: Vector;
64
- protected _cornerLayer: Vector;
65
- protected _centerLayer: Vector;
66
- protected _outlineLayer: Vector;
67
- protected _ghostCorner: Entity;
68
- protected _ghostOutlineLayer: Vector;
69
- protected _showGhostPointer: boolean;
70
- protected _isStartPoint: boolean;
71
- protected _insertCornerIndex: number;
72
- protected _cornerDblClick = false;
73
-
74
- constructor(options: IPolygonDrawingSceneParams) {
38
+ constructor(options) {
75
39
  super(options.name);
76
-
40
+ this._cornerDblClick = false;
41
+ this._onChange = (e) => {
42
+ if (e.geometryType === "Polygon") {
43
+ let coords = this.getCoordinates();
44
+ let entity = new Entity({
45
+ 'geometry': {
46
+ 'type': e.geometryType,
47
+ 'coordinates': [coords],
48
+ 'style': {
49
+ 'fillColor': "rgba(0,146,247,0.2)"
50
+ }
51
+ }
52
+ });
53
+ this._geometryLayer.clear();
54
+ this._geometryLayer.add(entity);
55
+ }
56
+ };
57
+ this._onCornerMouseEnter = (e) => {
58
+ e.renderer.handler.canvas.style.cursor = "pointer";
59
+ this.hideGhostPointer();
60
+ };
61
+ this._onCornerMouseLeave = (e) => {
62
+ e.renderer.handler.canvas.style.cursor = "default";
63
+ this.showGhostPointer();
64
+ };
65
+ this._onCenterMouseEnter = (e) => {
66
+ e.renderer.handler.canvas.style.cursor = "pointer";
67
+ this.hideGhostPointer();
68
+ };
69
+ this._onCenterMouseLeave = (e) => {
70
+ e.renderer.handler.canvas.style.cursor = "default";
71
+ if (!(this._pickedCenter || this._pickedCorner)) {
72
+ this.showGhostPointer();
73
+ }
74
+ };
75
+ this._onLup = (e) => {
76
+ this._planet.renderer.controls.mouseNavigation.activate();
77
+ if (this._pickedCorner || this._pickedCenter) {
78
+ this.events.dispatch(this.events.change, this);
79
+ this.setGhostPointerPosition(this._planet.getCartesianFromPixelTerrain(e));
80
+ this.showGhostPointer();
81
+ this._pickedCorner = null;
82
+ this._pickedCenter = null;
83
+ }
84
+ };
85
+ this._onCornerLdown = (e) => {
86
+ this._pickedCorner = this._getLdown(e);
87
+ };
88
+ this._onCenterLdown = (e) => {
89
+ this._pickedCenter = this._getLdown(e);
90
+ };
91
+ this._onMouseMove = (e) => {
92
+ if (this._pickedCenter) {
93
+ this._moveCenterPoint();
94
+ }
95
+ else if (this._pickedCorner) {
96
+ this._moveCornerPoint(e.pos);
97
+ }
98
+ else {
99
+ this.setGhostPointerPosition(this._planet.getCartesianFromPixelTerrain(e.pos));
100
+ }
101
+ };
102
+ this._onCornerLdblclick = (e) => {
103
+ this._cornerDblClick = true;
104
+ let coords = this.getCoordinates();
105
+ coords.splice(e.pickingObject.layerIndex, 1);
106
+ this.setCoordinates(coords);
107
+ };
108
+ this._onMouseDblClick = (e) => {
109
+ if (this._cornerDblClick) {
110
+ this._cornerDblClick = false;
111
+ return;
112
+ }
113
+ if (!this._showGhostPointer) {
114
+ return;
115
+ }
116
+ let cart = this._planet.getCartesianFromPixelTerrain(e);
117
+ if (cart) {
118
+ this._addNew(cart);
119
+ if (!this._isStartPoint && this._cornerLayer.getEntities().length > 2) {
120
+ this._isStartPoint = true;
121
+ this.events.dispatch(this.events.startpoint, this);
122
+ }
123
+ this.events.dispatch(this.events.change, this);
124
+ }
125
+ };
77
126
  this.events = createEvents(POLYGONDRAWINGSCENE_EVENTS);
78
-
79
127
  this._planet = null;
80
-
81
128
  this._initCoordinates = options.coordinates || [];
82
-
83
129
  this._pickedCorner = null;
84
130
  this._pickedCenter = null;
85
-
86
131
  this._startPos = null;
87
132
  this._startClick = new Vec2();
88
-
89
133
  this._geometryLayer = new Vector();
90
-
91
134
  //
92
135
  // outline vectors
93
136
  //
@@ -98,7 +141,6 @@ class PolygonDrawingScene extends RenderNode {
98
141
  relativeToGround: true,
99
142
  scaleByDistance: [100, 4000000, 1.0]
100
143
  });
101
-
102
144
  this._centerLayer = new Vector("centers", {
103
145
  pickingScale: 3,
104
146
  pickingEnabled: true,
@@ -106,29 +148,25 @@ class PolygonDrawingScene extends RenderNode {
106
148
  relativeToGround: true,
107
149
  scaleByDistance: [100, 4000000, 1.0]
108
150
  });
109
-
110
151
  this._outlineLayer = new Vector("outline", {
111
152
  entities: [new Entity({
112
- polyline: {
113
- path3v: [],
114
- isClosed: false,
115
- ...OUTLINE_OPTIONS
116
- }
117
- })],
153
+ polyline: {
154
+ path3v: [],
155
+ isClosed: false,
156
+ ...OUTLINE_OPTIONS
157
+ }
158
+ })],
118
159
  pickingEnabled: false,
119
160
  polygonOffsetUnits: -5,
120
161
  relativeToGround: true
121
162
  });
122
-
123
- this._outlineLayer.getEntities()[0].polyline!.altitude = OUTLINE_ALT;
124
-
163
+ this._outlineLayer.getEntities()[0].polyline.altitude = OUTLINE_ALT;
125
164
  //
126
165
  // Ghost cursor pointer
127
166
  //
128
167
  this._ghostCorner = new Entity({
129
168
  geoObject: CORNER_OPTIONS
130
169
  });
131
-
132
170
  this._ghostOutlineLayer = new Vector("ghost-pointer", {
133
171
  pickingEnabled: false,
134
172
  polygonOffsetUnits: -5,
@@ -136,299 +174,161 @@ class PolygonDrawingScene extends RenderNode {
136
174
  scaleByDistance: [100, 4000000, 1.0],
137
175
  opacity: 0.5
138
176
  });
139
-
140
177
  this._showGhostPointer = false;
141
-
142
178
  this._isStartPoint = false;
143
-
144
179
  this._insertCornerIndex = -1;
145
180
  }
146
-
147
- public get geometryType(): string {
181
+ get geometryType() {
148
182
  return "Polygon";
149
183
  }
150
-
151
- public getCoordinates(): CoordinatesType[] {
184
+ getCoordinates() {
152
185
  let corners = this._cornerLayer.getEntities();
153
186
  if (corners.length > 0) {
154
- return corners.map((c: Entity) => {
187
+ return corners.map((c) => {
155
188
  let ll = c.getLonLat();
156
189
  return [ll.lon, ll.lat, ll.height];
157
190
  });
158
- } else {
191
+ }
192
+ else {
159
193
  return this._initCoordinates;
160
194
  }
161
195
  }
162
-
163
- public bindPlanet(planet: Planet) {
196
+ bindPlanet(planet) {
164
197
  this._planet = planet;
165
198
  }
166
-
167
- public override init() {
168
-
199
+ init() {
169
200
  this._initEvents();
170
-
171
201
  this._initGhostLayerPointer();
172
-
173
202
  if (this._initCoordinates.length) {
174
203
  this.setCoordinates(this._initCoordinates);
175
204
  }
176
-
177
- this._planet!.addLayer(this._outlineLayer);
178
- this._planet!.addLayer(this._cornerLayer);
179
- this._planet!.addLayer(this._centerLayer);
180
-
205
+ this._planet.addLayer(this._outlineLayer);
206
+ this._planet.addLayer(this._cornerLayer);
207
+ this._planet.addLayer(this._centerLayer);
181
208
  this.showGhostPointer();
182
209
  this.startNewPoint();
183
-
184
- (this._planet!.renderer!.controls.mouseNavigation as MouseNavigation).deactivateDoubleClickZoom();
185
-
186
- this._geometryLayer.addTo(this._planet!);
187
-
210
+ this._planet.renderer.controls.mouseNavigation.deactivateDoubleClickZoom();
211
+ this._geometryLayer.addTo(this._planet);
188
212
  this.events.on("change", this._onChange, this);
189
213
  }
190
-
191
- protected _onChange = (e: PolygonDrawingScene) => {
192
- if (e.geometryType === "Polygon") {
193
- let coords = this.getCoordinates();
194
- let entity = new Entity({
195
- 'geometry': {
196
- 'type': e.geometryType,
197
- 'coordinates': [coords],
198
- 'style': {
199
- 'fillColor': "rgba(0,146,247,0.2)"
200
- }
201
- }
202
- });
203
- this._geometryLayer.clear();
204
- this._geometryLayer.add(entity);
205
- }
206
- }
207
-
208
- override onremove() {
214
+ onremove() {
209
215
  this._clearEvents();
210
216
  this.hideGhostPointer();
211
217
  this.stopNewPoint();
212
218
  this.clear();
213
219
  this._geometryLayer.remove();
214
220
  }
215
-
216
- public clear() {
217
-
221
+ clear() {
218
222
  this._geometryLayer.clear();
219
-
220
223
  let corners = this._cornerLayer.getEntities();
221
-
222
224
  let i = corners.length;
223
225
  while (i--) {
224
226
  corners[i].remove();
225
227
  }
226
-
227
228
  let centers = this._centerLayer.getEntities();
228
229
  i = centers.length;
229
230
  while (i--) {
230
231
  centers[i].remove();
231
232
  }
232
-
233
233
  let entities = this._outlineLayer.getEntities();
234
234
  i = entities.length;
235
235
  while (i--) {
236
- entities[i].polyline!.clear();
236
+ entities[i].polyline.clear();
237
237
  if (i > 0) {
238
238
  entities[i].remove();
239
239
  }
240
240
  }
241
-
242
241
  this._clearGhostPointer();
243
242
  }
244
-
245
- public setCoordinates(coords: CoordinatesType[]) {
243
+ setCoordinates(coords) {
246
244
  this.clear();
247
245
  for (let i = 0; i < coords.length; i++) {
248
246
  let ci = coords[i];
249
- let cart = this._planet!.ellipsoid.lonLatToCartesian(new LonLat(ci[0], ci[1], ci[2]));
247
+ let cart = this._planet.ellipsoid.lonLatToCartesian(new LonLat(ci[0], ci[1], ci[2]));
250
248
  this._appendCart(cart);
251
249
  }
252
250
  this.events.dispatch(this.events.change, this);
253
251
  }
254
-
255
- public stopNewPoint() {
252
+ stopNewPoint() {
256
253
  if (this.renderer) {
257
254
  this.renderer.events.off("ldblclick", this._onMouseDblClick);
258
255
  }
259
256
  }
260
-
261
- public startNewPoint() {
262
- this.renderer!.events.on("ldblclick", this._onMouseDblClick, this);
257
+ startNewPoint() {
258
+ this.renderer.events.on("ldblclick", this._onMouseDblClick, this);
263
259
  }
264
-
265
- public showGhostPointer() {
260
+ showGhostPointer() {
266
261
  this._showGhostPointer = true;
267
- this._planet!.addLayer(this._ghostOutlineLayer);
262
+ this._planet.addLayer(this._ghostOutlineLayer);
268
263
  this._insertCornerIndex = this._cornerLayer.getEntities().length;
269
264
  }
270
-
271
- public hideGhostPointer() {
265
+ hideGhostPointer() {
272
266
  this._showGhostPointer = false;
273
267
  this._ghostOutlineLayer.remove();
274
268
  this._insertCornerIndex = -1;
275
269
  }
276
-
277
- public setGhostPointerPosition(groundPos: Vec3) {
270
+ setGhostPointerPosition(groundPos) {
278
271
  if (groundPos) {
279
272
  this._ghostCorner.setCartesian3v(groundPos);
280
273
  this._updateGhostOutlinePointer(groundPos);
281
274
  }
282
275
  }
283
-
284
- protected _onCornerMouseEnter = (e: IMouseState) => {
285
- e.renderer.handler.canvas!.style.cursor = "pointer";
286
- this.hideGhostPointer();
287
- }
288
-
289
- _onCornerMouseLeave = (e: IMouseState) => {
290
- e.renderer.handler.canvas!.style.cursor = "default";
291
- this.showGhostPointer();
292
- }
293
-
294
- _onCenterMouseEnter = (e: IMouseState) => {
295
- e.renderer.handler.canvas!.style.cursor = "pointer";
296
- this.hideGhostPointer();
297
- }
298
-
299
- _onCenterMouseLeave = (e: IMouseState) => {
300
- e.renderer.handler.canvas!.style.cursor = "default";
301
- if (!(this._pickedCenter || this._pickedCorner)) {
302
- this.showGhostPointer();
303
- }
304
- }
305
-
306
- protected _onLup = (e: IMouseState) => {
307
- (this._planet!.renderer!.controls.mouseNavigation as MouseNavigation).activate();
308
- if (this._pickedCorner || this._pickedCenter) {
309
- this.events.dispatch(this.events.change, this);
310
- this.setGhostPointerPosition(this._planet!.getCartesianFromPixelTerrain(e)!);
311
- this.showGhostPointer();
312
- this._pickedCorner = null;
313
- this._pickedCenter = null;
314
- }
315
- }
316
-
317
- protected _getLdown(e: IMouseState): Entity | null {
318
- (this._planet!.renderer!.controls.mouseNavigation as MouseNavigation).deactivate();
276
+ _getLdown(e) {
277
+ this._planet.renderer.controls.mouseNavigation.deactivate();
319
278
  this._startClick.set(e.x, e.y);
320
279
  let coords = e.pickingObject.getCartesian();
321
- this._startPos = this._planet!.getPixelFromCartesian(coords);
280
+ this._startPos = this._planet.getPixelFromCartesian(coords);
322
281
  return e.pickingObject;
323
282
  }
324
-
325
- protected _onCornerLdown = (e: IMouseState) => {
326
- this._pickedCorner = this._getLdown(e);
327
- }
328
-
329
- protected _onCenterLdown = (e: IMouseState) => {
330
- this._pickedCenter = this._getLdown(e);
331
- }
332
-
333
- protected _onMouseMove = (e: IMouseState) => {
334
- if (this._pickedCenter) {
335
- this._moveCenterPoint();
336
- } else if (this._pickedCorner) {
337
- this._moveCornerPoint(e.pos!);
338
- } else {
339
- this.setGhostPointerPosition(this._planet!.getCartesianFromPixelTerrain(e.pos)!);
340
- }
341
- }
342
-
343
- protected _onCornerLdblclick = (e: IMouseState) => {
344
- this._cornerDblClick = true;
345
- let coords = this.getCoordinates();
346
- coords.splice(e.pickingObject.layerIndex, 1);
347
- this.setCoordinates(coords);
348
- }
349
-
350
- protected _onMouseDblClick = (e: IMouseState) => {
351
-
352
- if (this._cornerDblClick) {
353
- this._cornerDblClick = false;
354
- return;
355
- }
356
-
357
- if (!this._showGhostPointer) {
358
- return;
359
- }
360
-
361
- let cart = this._planet!.getCartesianFromPixelTerrain(e);
362
- if (cart) {
363
- this._addNew(cart);
364
- if (!this._isStartPoint && this._cornerLayer.getEntities().length > 2) {
365
- this._isStartPoint = true;
366
- this.events.dispatch(this.events.startpoint, this);
367
- }
368
- this.events.dispatch(this.events.change, this);
369
- }
370
- }
371
-
372
- protected _initEvents() {
373
-
283
+ _initEvents() {
374
284
  this._cornerLayer.events.on("ldblclick", this._onCornerLdblclick, this);
375
285
  this._cornerLayer.events.on("ldown", this._onCornerLdown, this);
376
286
  this._centerLayer.events.on("ldown", this._onCenterLdown, this);
377
-
378
- this.renderer!.events.on("lup", this._onLup, this);
379
- this.renderer!.events.on("mousemove", this._onMouseMove, this);
380
-
287
+ this.renderer.events.on("lup", this._onLup, this);
288
+ this.renderer.events.on("mousemove", this._onMouseMove, this);
381
289
  this._cornerLayer.events.on("mouseenter", this._onCornerMouseEnter, this);
382
290
  this._cornerLayer.events.on("mouseleave", this._onCornerMouseLeave, this);
383
291
  this._centerLayer.events.on("mouseenter", this._onCenterMouseEnter, this);
384
292
  this._centerLayer.events.on("mouseleave", this._onCenterMouseLeave, this);
385
293
  }
386
-
387
- protected _clearEvents() {
294
+ _clearEvents() {
388
295
  this._cornerLayer.events.off("ldblclick", this._onCornerLdblclick);
389
296
  this._cornerLayer.events.off("ldown", this._onCornerLdown);
390
297
  this._centerLayer.events.off("ldown", this._onCenterLdown);
391
-
392
- this.renderer!.events.off("lup", this._onLup);
393
- this.renderer!.events.off("mousemove", this._onMouseMove);
394
-
298
+ this.renderer.events.off("lup", this._onLup);
299
+ this.renderer.events.off("mousemove", this._onMouseMove);
395
300
  this._cornerLayer.events.off("mouseenter", this._onCornerMouseEnter);
396
301
  this._cornerLayer.events.off("mouseleave", this._onCornerMouseLeave);
397
302
  this._centerLayer.events.off("mouseenter", this._onCenterMouseEnter);
398
303
  this._centerLayer.events.off("mouseleave", this._onCenterMouseLeave);
399
304
  }
400
-
401
- protected _drawCorners() {
305
+ _drawCorners() {
402
306
  let corners = this._cornerLayer.getEntities();
403
307
  for (let i = 0; i < corners.length; i++) {
404
308
  let ai = corners[i];
405
309
  this._checkTerrainCollision(ai);
406
310
  }
407
311
  }
408
-
409
- protected _drawCenters() {
312
+ _drawCenters() {
410
313
  let centers = this._centerLayer.getEntities();
411
314
  for (let i = 0; i < centers.length; i++) {
412
315
  let ai = centers[i];
413
316
  this._checkTerrainCollision(ai);
414
317
  }
415
318
  }
416
-
417
- protected _drawGhostCorner() {
319
+ _drawGhostCorner() {
418
320
  if (this._showGhostPointer) {
419
321
  this._checkTerrainCollision(this._ghostCorner);
420
322
  }
421
323
  }
422
-
423
- public override frame() {
324
+ frame() {
424
325
  this._drawCorners();
425
326
  this._drawCenters();
426
327
  this._drawGhostCorner();
427
328
  }
428
-
429
- protected _checkTerrainCollision(entity: Entity) {
329
+ _checkTerrainCollision(entity) {
430
330
  let _tempTerrPoint = new Vec3();
431
- let nodes = this._planet!._renderedNodes;
331
+ let nodes = this._planet._renderedNodes;
432
332
  for (let j = 0; j < nodes.length; j++) {
433
333
  let seg = nodes[j].segment;
434
334
  if (seg && seg._extentLonLat.isInside(entity.getLonLat())) {
@@ -438,77 +338,51 @@ class PolygonDrawingScene extends RenderNode {
438
338
  }
439
339
  }
440
340
  }
441
-
442
- protected _moveCenterPoint() {
443
- let coords = this.getCoordinates(),
444
- index = this._pickedCenter!.layerIndex + 1,
445
- ll = this._pickedCenter!.getLonLat();
446
- let newCorner: CoordinatesType = [ll.lon, ll.lat, ll.height];
447
-
341
+ _moveCenterPoint() {
342
+ let coords = this.getCoordinates(), index = this._pickedCenter.layerIndex + 1, ll = this._pickedCenter.getLonLat();
343
+ let newCorner = [ll.lon, ll.lat, ll.height];
448
344
  coords.splice(index, 0, newCorner);
449
-
450
345
  this.setCoordinates(coords);
451
-
452
346
  this._pickedCenter = null;
453
-
454
347
  this._pickedCorner = this._cornerLayer.getEntities()[index];
455
348
  }
456
-
457
- protected _addNew(cart: Vec3) {
349
+ _addNew(cart) {
458
350
  if (this._insertCornerIndex === -1 || this._cornerLayer.getEntities().length < 2) {
459
351
  this._appendCart(cart);
460
- } else {
461
- let area = this.getCoordinates(),
462
- index = this._insertCornerIndex;
463
- let ll = this._planet!.ellipsoid.cartesianToLonLat(cart);
464
- let newCorner: CoordinatesType = [ll.lon, ll.lat, ll.height];
352
+ }
353
+ else {
354
+ let area = this.getCoordinates(), index = this._insertCornerIndex;
355
+ let ll = this._planet.ellipsoid.cartesianToLonLat(cart);
356
+ let newCorner = [ll.lon, ll.lat, ll.height];
465
357
  area.splice(index, 0, newCorner);
466
358
  this.clear();
467
359
  this.setCoordinates(area);
468
360
  }
469
361
  }
470
-
471
- protected _appendCart(cart: Vec3) {
362
+ _appendCart(cart) {
472
363
  let corners = this._cornerLayer.getEntities();
473
-
474
364
  let segNum = corners.length - 1;
475
365
  let prevCorn = corners[segNum];
476
-
477
366
  let corner = new Entity({
478
367
  geoObject: CORNER_OPTIONS,
479
368
  });
480
-
481
369
  corner.setCartesian3v(cart);
482
370
  corner.addTo(this._cornerLayer);
483
371
  this._checkTerrainCollision(corner);
484
-
485
372
  if (prevCorn) {
486
-
487
- let firstCart = corners[0].getCartesian(),
488
- prevCart = prevCorn.getCartesian();
489
-
490
- let vecPrev = corner.getCartesian().sub(prevCart),
491
- vecFirst = corner.getCartesian().sub(firstCart);
492
-
493
- let distPrev = vecPrev.length(),
494
- distFirst = vecFirst.length();
495
-
373
+ let firstCart = corners[0].getCartesian(), prevCart = prevCorn.getCartesian();
374
+ let vecPrev = corner.getCartesian().sub(prevCart), vecFirst = corner.getCartesian().sub(firstCart);
375
+ let distPrev = vecPrev.length(), distFirst = vecFirst.length();
496
376
  vecPrev.normalize();
497
377
  vecFirst.normalize();
498
-
499
- let prevPath = [],
500
- firstPath = [];
501
-
378
+ let prevPath = [], firstPath = [];
502
379
  for (let i = 0; i <= NUM_SEGMENTS; i++) {
503
380
  let p = vecPrev.scaleTo(i * distPrev / NUM_SEGMENTS).addA(prevCart);
504
381
  prevPath.push(p);
505
-
506
382
  let f = vecFirst.scaleTo(i * distFirst / NUM_SEGMENTS).addA(firstCart);
507
383
  firstPath.push(f);
508
384
  }
509
-
510
- this._outlineLayer.getEntities()[0].polyline!.setPath3v([firstPath]);
511
-
385
+ this._outlineLayer.getEntities()[0].polyline.setPath3v([firstPath]);
512
386
  let entity = new Entity({
513
387
  polyline: {
514
388
  path3v: [prevPath],
@@ -516,118 +390,77 @@ class PolygonDrawingScene extends RenderNode {
516
390
  ...OUTLINE_OPTIONS
517
391
  }
518
392
  });
519
- entity.polyline!.altitude = OUTLINE_ALT;
393
+ entity.polyline.altitude = OUTLINE_ALT;
520
394
  this._outlineLayer.add(entity);
521
-
522
395
  let centers = this._centerLayer.getEntities();
523
396
  let firstCenter = centers[centers.length - 1];
524
-
525
- let prevCenterCart = vecPrev.scaleTo(distPrev * 0.5).addA(prevCart),
526
- firstCenterCart = vecFirst.scaleTo(distFirst * 0.5).addA(firstCart);
527
-
397
+ let prevCenterCart = vecPrev.scaleTo(distPrev * 0.5).addA(prevCart), firstCenterCart = vecFirst.scaleTo(distFirst * 0.5).addA(firstCart);
528
398
  let center = new Entity({
529
399
  geoObject: CENTER_OPTIONS,
530
400
  });
531
401
  center.setCartesian3v(prevCenterCart);
532
402
  center.addTo(this._centerLayer);
533
403
  this._checkTerrainCollision(center);
534
-
535
404
  //moveToEnd
536
405
  firstCenter.remove();
537
406
  firstCenter.addTo(this._centerLayer);
538
-
539
407
  firstCenter.setCartesian3v(firstCenterCart);
540
-
541
- } else {
408
+ }
409
+ else {
542
410
  let center = new Entity({
543
411
  geoObject: CENTER_OPTIONS,
544
412
  });
545
413
  center.addTo(this._centerLayer);
546
414
  }
547
415
  }
548
-
549
- protected _clearGhostPointer() {
416
+ _clearGhostPointer() {
550
417
  const g = this._ghostOutlineLayer;
551
- g.getEntities()[0].polyline!.clear();
552
- g.getEntities()[1].polyline!.clear();
418
+ g.getEntities()[0].polyline.clear();
419
+ g.getEntities()[1].polyline.clear();
553
420
  }
554
-
555
- protected _moveCornerPoint(e: Vec2) {
556
- let d = new Vec2(e.x, e.y).sub(this._startClick),
557
- p = this._startPos!.add(d);
558
-
559
- let groundCoords = this._planet!.getCartesianFromPixelTerrain(p);
560
-
421
+ _moveCornerPoint(e) {
422
+ let d = new Vec2(e.x, e.y).sub(this._startClick), p = this._startPos.add(d);
423
+ let groundCoords = this._planet.getCartesianFromPixelTerrain(p);
561
424
  if (groundCoords) {
562
-
563
- this._pickedCorner!.setCartesian3v(groundCoords);
564
-
425
+ this._pickedCorner.setCartesian3v(groundCoords);
565
426
  let corners = this._cornerLayer.getEntities();
566
-
567
427
  if (corners.length) {
568
- let ind = this._pickedCorner!.layerIndex;
428
+ let ind = this._pickedCorner.layerIndex;
569
429
  let size = corners.length;
570
-
571
- let cartPrev = corners[ind === 0 ? (size - 1) : (ind - 1)].getCartesian(),
572
- cartNext = corners[(ind + 1) % size].getCartesian();
573
-
574
- let vecPrev = this._pickedCorner!.getCartesian().sub(cartPrev),
575
- vecNext = this._pickedCorner!.getCartesian().sub(cartNext);
576
-
577
- let distPrev = vecPrev.length(),
578
- distNext = vecNext.length();
579
-
430
+ let cartPrev = corners[ind === 0 ? (size - 1) : (ind - 1)].getCartesian(), cartNext = corners[(ind + 1) % size].getCartesian();
431
+ let vecPrev = this._pickedCorner.getCartesian().sub(cartPrev), vecNext = this._pickedCorner.getCartesian().sub(cartNext);
432
+ let distPrev = vecPrev.length(), distNext = vecNext.length();
580
433
  vecPrev.normalize();
581
434
  vecNext.normalize();
582
-
583
- let pathPrev = [],
584
- pathNext = [];
585
-
435
+ let pathPrev = [], pathNext = [];
586
436
  for (let i = 0; i <= NUM_SEGMENTS; i++) {
587
437
  let p = vecPrev.scaleTo(i * distPrev / NUM_SEGMENTS).addA(cartPrev);
588
438
  pathPrev.push(p);
589
-
590
439
  let f = vecNext.scaleTo(i * distNext / NUM_SEGMENTS).addA(cartNext);
591
440
  pathNext.push(f);
592
441
  }
593
-
594
442
  let entities = this._outlineLayer.getEntities();
595
-
596
- let prevPolyline = entities[ind].polyline,
597
- nextPolyline = entities[(ind + 1) % size].polyline;
598
-
443
+ let prevPolyline = entities[ind].polyline, nextPolyline = entities[(ind + 1) % size].polyline;
599
444
  prevPolyline?.setPath3v([pathPrev]);
600
445
  nextPolyline?.setPath3v([pathNext]);
601
-
602
446
  //
603
447
  // Move center points
604
448
  let centers = this._centerLayer.getEntities();
605
- let prevCenter = centers[ind === 0 ? (size - 1) : (ind - 1)],
606
- nextCenter = centers[ind];
607
-
608
- let prevCenterCart = vecPrev.scaleTo(distPrev * 0.5).addA(cartPrev),
609
- nextCenterCart = vecNext.scaleTo(distNext * 0.5).addA(cartNext);
610
-
449
+ let prevCenter = centers[ind === 0 ? (size - 1) : (ind - 1)], nextCenter = centers[ind];
450
+ let prevCenterCart = vecPrev.scaleTo(distPrev * 0.5).addA(cartPrev), nextCenterCart = vecNext.scaleTo(distNext * 0.5).addA(cartNext);
611
451
  prevCenter.setCartesian3v(prevCenterCart);
612
452
  this._checkTerrainCollision(prevCenter);
613
-
614
453
  nextCenter.setCartesian3v(nextCenterCart);
615
454
  this._checkTerrainCollision(nextCenter);
616
455
  }
617
456
  }
618
457
  }
619
-
620
- protected _updateGhostOutlinePointer(groundPos: Vec3) {
621
-
458
+ _updateGhostOutlinePointer(groundPos) {
622
459
  let corners = this._cornerLayer.getEntities();
623
460
  let size = corners.length;
624
-
625
461
  if (size > 0) {
626
-
627
462
  let ind = 0;
628
-
629
463
  let minDist = math.MAX;
630
-
631
464
  for (let i = 0; i < size; i++) {
632
465
  let ci = corners[i];
633
466
  let dist = ci.getCartesian().distance(groundPos);
@@ -636,29 +469,17 @@ class PolygonDrawingScene extends RenderNode {
636
469
  ind = i;
637
470
  }
638
471
  }
639
-
640
- let cCurr = corners[ind].getCartesian(),
641
- cNext = corners[(ind + 1) % size].getCartesian(),
642
- cPrev = corners[ind === 0 ? (size - 1) : (ind - 1)].getCartesian();
643
-
644
- let nPrev = cPrev.sub(cCurr).normalize(),
645
- nNext = cNext.sub(cCurr).normalize(),
646
- nGround = groundPos.sub(cCurr).normalize();
647
-
472
+ let cCurr = corners[ind].getCartesian(), cNext = corners[(ind + 1) % size].getCartesian(), cPrev = corners[ind === 0 ? (size - 1) : (ind - 1)].getCartesian();
473
+ let nPrev = cPrev.sub(cCurr).normalize(), nNext = cNext.sub(cCurr).normalize(), nGround = groundPos.sub(cCurr).normalize();
648
474
  let midVec = nPrev.add(nNext).normalize();
649
-
650
- let toMid = nGround.cross(midVec),
651
- up = nPrev.cross(nNext);
652
-
475
+ let toMid = nGround.cross(midVec), up = nPrev.cross(nNext);
653
476
  if (toMid.dot(up) > 0) {
654
477
  ind--;
655
478
  if (ind < 0) {
656
479
  ind = size - 1;
657
480
  }
658
481
  }
659
-
660
482
  let temp = new Vec3();
661
-
662
483
  for (let i = 0; i < size; i++) {
663
484
  let side = new Line3(corners[i].getCartesian(), corners[(i + 1) % size].getCartesian());
664
485
  let u = side.getNearestDistancePoint(groundPos, temp);
@@ -670,43 +491,26 @@ class PolygonDrawingScene extends RenderNode {
670
491
  }
671
492
  }
672
493
  }
673
-
674
494
  this._insertCornerIndex = (ind + 1) % size;
675
-
676
- let cartPrev = corners[ind % size].getCartesian(),
677
- cartNext = corners[(ind + 1) % size].getCartesian();
678
-
679
- let vecPrev = this._ghostCorner.getCartesian().sub(cartPrev),
680
- vecNext = this._ghostCorner.getCartesian().sub(cartNext);
681
-
682
- let distPrev = vecPrev.length(),
683
- distNext = vecNext.length();
684
-
495
+ let cartPrev = corners[ind % size].getCartesian(), cartNext = corners[(ind + 1) % size].getCartesian();
496
+ let vecPrev = this._ghostCorner.getCartesian().sub(cartPrev), vecNext = this._ghostCorner.getCartesian().sub(cartNext);
497
+ let distPrev = vecPrev.length(), distNext = vecNext.length();
685
498
  vecPrev.normalize();
686
499
  vecNext.normalize();
687
-
688
- let pathPrev = [],
689
- pathNext = [];
690
-
500
+ let pathPrev = [], pathNext = [];
691
501
  for (let i = 0; i <= NUM_SEGMENTS; i++) {
692
502
  let p = vecPrev.scaleTo(i * distPrev / NUM_SEGMENTS).addA(cartPrev);
693
503
  pathPrev.push(p);
694
-
695
504
  let f = vecNext.scaleTo(i * distNext / NUM_SEGMENTS).addA(cartNext);
696
505
  pathNext.push(f);
697
506
  }
698
-
699
507
  let entities = this._ghostOutlineLayer.getEntities();
700
-
701
- let prevPolyline = entities[0].polyline,
702
- nextPolyline = entities[1].polyline;
703
-
508
+ let prevPolyline = entities[0].polyline, nextPolyline = entities[1].polyline;
704
509
  prevPolyline?.setPath3v([pathPrev]);
705
510
  nextPolyline?.setPath3v([pathNext]);
706
511
  }
707
512
  }
708
-
709
- protected _initGhostLayerPointer() {
513
+ _initGhostLayerPointer() {
710
514
  this._ghostOutlineLayer.setEntities([
711
515
  new Entity({
712
516
  polyline: {
@@ -723,10 +527,8 @@ class PolygonDrawingScene extends RenderNode {
723
527
  }),
724
528
  this._ghostCorner
725
529
  ]);
726
-
727
530
  const g = this._ghostOutlineLayer;
728
- g.getEntities()[0].polyline!.altitude = g.getEntities()[1].polyline!.altitude = OUTLINE_ALT;
531
+ g.getEntities()[0].polyline.altitude = g.getEntities()[1].polyline.altitude = OUTLINE_ALT;
729
532
  }
730
533
  }
731
-
732
- export {PolygonDrawingScene};
534
+ export { PolygonDrawingScene };