@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,29 +1,7 @@
1
1
  import * as utils from "../utils/shared";
2
- import {Entity} from "./Entity";
3
- import {Line3} from "../math/Line3";
4
- import {RenderNode} from "../scene/RenderNode";
5
- import {NumberArray3, Vec3} from "../math/Vec3";
6
- import {NumberArray4, Vec4} from "../math/Vec4";
7
- import {StripHandler} from "./StripHandler";
8
- import {WebGLBufferExt} from "../webgl/Handler";
9
-
10
- type TPoiExt = Vec3 | NumberArray3;
11
- type TStripExt = [TPoiExt, TPoiExt];
12
-
13
- type TPoi = Vec3;
14
- type TStrip = [TPoi, TPoi];
15
-
16
- //type TStrip = TEdge[];
17
- export interface IStripParams {
18
- visibility?: boolean;
19
- color?: string | NumberArray4 | Vec4;
20
- opacity?: number;
21
- path?: TStrip[];
22
- }
23
-
24
- let _tempHigh = new Vec3(),
25
- _tempLow = new Vec3();
26
-
2
+ import { Line3 } from "../math/Line3";
3
+ import { Vec3 } from "../math/Vec3";
4
+ let _tempHigh = new Vec3(), _tempLow = new Vec3();
27
5
  /**
28
6
  * Strip object.
29
7
  * @class
@@ -41,100 +19,38 @@ let _tempHigh = new Vec3(),
41
19
  * });
42
20
  */
43
21
  class Strip {
44
-
45
- static __counter__: number = 0;
46
-
47
- protected __id: number;
48
-
49
- /**
50
- * Strip visibility.
51
- * @public
52
- * @type {boolean}
53
- */
54
- public visibility: boolean;
55
-
56
- public color: Float32Array;
57
-
58
- /**
59
- * Parent collection render node.
60
- * @protected
61
- * @type {RenderNode}
62
- */
63
- protected _renderNode: RenderNode | null;
64
-
65
- /**
66
- * Entity instance that holds this strip.
67
- * @public
68
- * @type {Entity}
69
- */
70
- public _entity: Entity | null;
71
- protected _verticesHighBuffer: WebGLBufferExt | null;
72
- protected _verticesLowBuffer: WebGLBufferExt | null;
73
- protected _indexBuffer: WebGLBufferExt | null;
74
- protected _verticesHigh: number[];
75
- protected _verticesLow: number[];
76
- protected _indexes: number[];
77
- protected _path: TStrip[];
78
-
79
- protected _pickingColor: Float32Array;
80
-
81
- protected _gridSize: number;
82
-
83
- /**
84
- * Handler that stores and renders this object.
85
- * @public
86
- * @type {StripHandler | null}
87
- */
88
- public _handler: StripHandler | null;
89
- public _handlerIndex: number;
90
-
91
- constructor(options: IStripParams = {}) {
92
-
22
+ constructor(options = {}) {
93
23
  this.__id = Strip.__counter__++;
94
-
95
24
  this.visibility = options.visibility != undefined ? options.visibility : true;
96
-
97
25
  this.color = new Float32Array([1.0, 1.0, 1.0, 0.5]);
98
-
99
26
  if (options.color) {
100
27
  let color = utils.createColorRGBA(options.color);
101
28
  this.setColor(color.x, color.y, color.z, color.w);
102
29
  }
103
-
104
30
  if (options.opacity) {
105
31
  this.setOpacity(options.opacity);
106
32
  }
107
-
108
33
  /**
109
34
  * Parent collection render node.
110
35
  * @protected
111
36
  * @type {RenderNode}
112
37
  */
113
38
  this._renderNode = null;
114
-
115
39
  /**
116
40
  * Entity instance that holds this strip.
117
41
  * @protected
118
42
  * @type {Entity}
119
43
  */
120
44
  this._entity = null;
121
-
122
45
  this._verticesHighBuffer = null;
123
46
  this._verticesLowBuffer = null;
124
-
125
47
  this._indexBuffer = null;
126
-
127
48
  this._verticesHigh = [];
128
49
  this._verticesLow = [];
129
-
130
50
  this._indexes = [];
131
-
132
51
  this._path = [];
133
-
134
52
  this._pickingColor = new Float32Array(4);
135
-
136
53
  this._gridSize = 1;
137
-
138
54
  /**
139
55
  * Handler that stores and renders this object.
140
56
  * @protected
@@ -142,317 +58,198 @@ class Strip {
142
58
  */
143
59
  this._handler = null;
144
60
  this._handlerIndex = -1;
145
-
146
61
  if (options.path) {
147
62
  this.setPath(options.path);
148
63
  }
149
64
  }
150
-
151
65
  /**
152
66
  * Assign picking color.
153
67
  * @public
154
68
  * @param {Vec3} color - Picking RGB color.
155
69
  */
156
- public setPickingColor3v(color: Vec3) {
70
+ setPickingColor3v(color) {
157
71
  this._pickingColor[0] = color.x / 255.0;
158
72
  this._pickingColor[1] = color.y / 255.0;
159
73
  this._pickingColor[2] = color.z / 255.0;
160
74
  this._pickingColor[3] = 1.0;
161
75
  }
162
-
163
76
  /**
164
77
  * Clears object
165
78
  * @public
166
79
  */
167
- public clear() {
80
+ clear() {
168
81
  this._path.length = 0;
169
82
  this._path = [];
170
-
171
83
  this._verticesHigh.length = 0;
172
84
  this._verticesHigh = [];
173
-
174
85
  this._verticesLow.length = 0;
175
86
  this._verticesLow = [];
176
-
177
87
  this._indexes.length = 0;
178
88
  this._indexes = [];
179
-
180
89
  this._deleteBuffers();
181
90
  }
182
-
183
- public setColor(r: number, g: number, b: number, a?: number) {
91
+ setColor(r, g, b, a) {
184
92
  a = a || this.color[3];
185
93
  this.color[0] = r;
186
94
  this.color[1] = g;
187
95
  this.color[2] = b;
188
96
  this.color[3] = a;
189
97
  }
190
-
191
98
  /**
192
99
  * Set strip opacity.
193
100
  * @public
194
101
  * @param {number} opacity - opacity.
195
102
  */
196
- public setOpacity(opacity: number) {
103
+ setOpacity(opacity) {
197
104
  this.color[3] = opacity || 0;
198
105
  }
199
-
200
106
  /**
201
107
  * Sets cloud visibility.
202
108
  * @public
203
109
  * @param {boolean} visibility - Visibility flag.
204
110
  */
205
- public setVisibility(visibility: boolean) {
111
+ setVisibility(visibility) {
206
112
  this.visibility = visibility;
207
113
  }
208
-
209
114
  /**
210
115
  * @return {boolean} Strip visibility.
211
116
  */
212
- public getVisibility(): boolean {
117
+ getVisibility() {
213
118
  return this.visibility;
214
119
  }
215
-
216
120
  /**
217
121
  * Assign rendering scene node.
218
122
  * @public
219
123
  * @param {RenderNode} renderNode - Assigned render node.
220
124
  */
221
- public setRenderNode(renderNode: RenderNode) {
125
+ setRenderNode(renderNode) {
222
126
  this._renderNode = renderNode;
223
127
  this._createBuffers();
224
128
  }
225
-
226
129
  /**
227
130
  * Removes from entity.
228
131
  * @public
229
132
  */
230
- public remove() {
133
+ remove() {
231
134
  this._entity = null;
232
135
  this._handler && this._handler.remove(this);
233
136
  }
234
-
235
- public draw() {
137
+ draw() {
236
138
  if (this.visibility && this._verticesHigh.length) {
237
- let r = this._renderNode!.renderer!;
238
-
239
- let gl = r.handler.gl!;
240
-
241
- let sh = r.handler.programs.strip,
242
- p = sh._program,
243
- sha = p.attributes,
244
- shu = p.uniforms;
245
-
139
+ let r = this._renderNode.renderer;
140
+ let gl = r.handler.gl;
141
+ let sh = r.handler.programs.strip, p = sh._program, sha = p.attributes, shu = p.uniforms;
246
142
  sh.activate();
247
-
248
143
  gl.disable(gl.CULL_FACE);
249
-
250
- gl.uniformMatrix4fv(shu.viewMatrix, false, r.activeCamera!.getViewMatrix());
251
- gl.uniformMatrix4fv(shu.projectionMatrix, false, r.activeCamera!.getProjectionMatrix());
252
-
253
- gl.uniform3fv(shu.eyePositionHigh, r.activeCamera!.eyeHigh);
254
- gl.uniform3fv(shu.eyePositionLow, r.activeCamera!.eyeLow);
255
-
144
+ gl.uniformMatrix4fv(shu.viewMatrix, false, r.activeCamera.getViewMatrix());
145
+ gl.uniformMatrix4fv(shu.projectionMatrix, false, r.activeCamera.getProjectionMatrix());
146
+ gl.uniform3fv(shu.eyePositionHigh, r.activeCamera.eyeHigh);
147
+ gl.uniform3fv(shu.eyePositionLow, r.activeCamera.eyeLow);
256
148
  gl.uniform4fv(shu.uColor, this.color);
257
-
258
- gl.uniform1f(shu.uOpacity, this._entity!._entityCollection!._fadingOpacity);
259
- gl.bindBuffer(gl.ARRAY_BUFFER, this._verticesHighBuffer as WebGLBuffer);
260
- gl.vertexAttribPointer(
261
- sha.aVertexPositionHigh,
262
- this._verticesHighBuffer!.itemSize,
263
- gl.FLOAT,
264
- false,
265
- 0,
266
- 0
267
- );
268
- gl.bindBuffer(gl.ARRAY_BUFFER, this._verticesLowBuffer as WebGLBuffer);
269
- gl.vertexAttribPointer(
270
- sha.aVertexPositionLow,
271
- this._verticesLowBuffer!.itemSize,
272
- gl.FLOAT,
273
- false,
274
- 0,
275
- 0
276
- );
277
- gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER, this._indexBuffer as WebGLBuffer);
278
- gl.drawElements(
279
- r.handler.gl!.TRIANGLE_STRIP,
280
- this._indexBuffer!.numItems,
281
- gl.UNSIGNED_INT,
282
- 0
283
- );
284
-
149
+ gl.uniform1f(shu.uOpacity, this._entity._entityCollection._fadingOpacity);
150
+ gl.bindBuffer(gl.ARRAY_BUFFER, this._verticesHighBuffer);
151
+ gl.vertexAttribPointer(sha.aVertexPositionHigh, this._verticesHighBuffer.itemSize, gl.FLOAT, false, 0, 0);
152
+ gl.bindBuffer(gl.ARRAY_BUFFER, this._verticesLowBuffer);
153
+ gl.vertexAttribPointer(sha.aVertexPositionLow, this._verticesLowBuffer.itemSize, gl.FLOAT, false, 0, 0);
154
+ gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER, this._indexBuffer);
155
+ gl.drawElements(r.handler.gl.TRIANGLE_STRIP, this._indexBuffer.numItems, gl.UNSIGNED_INT, 0);
285
156
  gl.enable(gl.CULL_FACE);
286
157
  }
287
158
  }
288
-
289
159
  drawPicking() {
290
160
  if (this.visibility && this._verticesHigh.length) {
291
- let r = this._renderNode!.renderer!;
292
-
293
- let gl = r.handler.gl!;
294
-
295
- let sh = r.handler.programs.strip,
296
- p = sh._program,
297
- sha = p.attributes,
298
- shu = p.uniforms;
299
-
161
+ let r = this._renderNode.renderer;
162
+ let gl = r.handler.gl;
163
+ let sh = r.handler.programs.strip, p = sh._program, sha = p.attributes, shu = p.uniforms;
300
164
  sh.activate();
301
-
302
165
  gl.disable(gl.CULL_FACE);
303
-
304
- gl.uniformMatrix4fv(shu.viewMatrix, false, r.activeCamera!.getViewMatrix());
305
- gl.uniformMatrix4fv(shu.projectionMatrix, false, r.activeCamera!.getProjectionMatrix());
306
-
307
- gl.uniform3fv(shu.eyePositionHigh, r.activeCamera!.eyeHigh);
308
- gl.uniform3fv(shu.eyePositionLow, r.activeCamera!.eyeLow);
309
-
310
- gl.uniform1f(shu.uOpacity, this._entity!._entityCollection!._fadingOpacity != 0 ? 1 : 0);
311
-
166
+ gl.uniformMatrix4fv(shu.viewMatrix, false, r.activeCamera.getViewMatrix());
167
+ gl.uniformMatrix4fv(shu.projectionMatrix, false, r.activeCamera.getProjectionMatrix());
168
+ gl.uniform3fv(shu.eyePositionHigh, r.activeCamera.eyeHigh);
169
+ gl.uniform3fv(shu.eyePositionLow, r.activeCamera.eyeLow);
170
+ gl.uniform1f(shu.uOpacity, this._entity._entityCollection._fadingOpacity != 0 ? 1 : 0);
312
171
  gl.uniform4fv(shu.uColor, this._pickingColor);
313
- gl.bindBuffer(gl.ARRAY_BUFFER, this._verticesHighBuffer as WebGLBuffer);
314
- gl.vertexAttribPointer(
315
- sha.aVertexPositionHigh,
316
- this._verticesHighBuffer!.itemSize,
317
- gl.FLOAT,
318
- false,
319
- 0,
320
- 0
321
- );
322
- gl.bindBuffer(gl.ARRAY_BUFFER, this._verticesLowBuffer as WebGLBuffer);
323
- gl.vertexAttribPointer(
324
- sha.aVertexPositionLow,
325
- this._verticesLowBuffer!.itemSize,
326
- gl.FLOAT,
327
- false,
328
- 0,
329
- 0
330
- );
331
- gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER, this._indexBuffer as WebGLBuffer);
332
- gl.drawElements(
333
- r.handler.gl!.TRIANGLE_STRIP,
334
- this._indexBuffer!.numItems,
335
- gl.UNSIGNED_INT,
336
- 0
337
- );
338
-
172
+ gl.bindBuffer(gl.ARRAY_BUFFER, this._verticesHighBuffer);
173
+ gl.vertexAttribPointer(sha.aVertexPositionHigh, this._verticesHighBuffer.itemSize, gl.FLOAT, false, 0, 0);
174
+ gl.bindBuffer(gl.ARRAY_BUFFER, this._verticesLowBuffer);
175
+ gl.vertexAttribPointer(sha.aVertexPositionLow, this._verticesLowBuffer.itemSize, gl.FLOAT, false, 0, 0);
176
+ gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER, this._indexBuffer);
177
+ gl.drawElements(r.handler.gl.TRIANGLE_STRIP, this._indexBuffer.numItems, gl.UNSIGNED_INT, 0);
339
178
  gl.enable(gl.CULL_FACE);
340
179
  }
341
180
  }
342
-
343
181
  /**
344
182
  * Delete buffers
345
183
  * @public
346
184
  */
347
- public _deleteBuffers() {
185
+ _deleteBuffers() {
348
186
  if (this._renderNode && this._renderNode.renderer) {
349
- let r = this._renderNode.renderer,
350
- gl = r.handler.gl!;
351
-
352
- gl.deleteBuffer(this._indexBuffer!);
353
- gl.deleteBuffer(this._verticesHighBuffer!);
354
- gl.deleteBuffer(this._verticesLowBuffer!);
187
+ let r = this._renderNode.renderer, gl = r.handler.gl;
188
+ gl.deleteBuffer(this._indexBuffer);
189
+ gl.deleteBuffer(this._verticesHighBuffer);
190
+ gl.deleteBuffer(this._verticesLowBuffer);
355
191
  }
356
192
  this._verticesHighBuffer = null;
357
193
  this._verticesLowBuffer = null;
358
194
  this._indexBuffer = null;
359
195
  }
360
-
361
- protected _createBuffers() {
196
+ _createBuffers() {
362
197
  if (this._renderNode && this._renderNode.renderer && this._renderNode.renderer.isInitialized()) {
363
- let gl = this._renderNode.renderer.handler.gl!;
364
-
365
- gl.deleteBuffer(this._indexBuffer as WebGLBuffer);
366
- gl.deleteBuffer(this._verticesHighBuffer as WebGLBuffer);
367
- gl.deleteBuffer(this._verticesLowBuffer as WebGLBuffer);
368
-
369
- this._verticesHighBuffer = this._renderNode.renderer.handler.createArrayBuffer(
370
- new Float32Array(this._verticesHigh),
371
- 3,
372
- this._verticesHigh.length / 3
373
- );
374
- this._verticesLowBuffer = this._renderNode.renderer.handler.createArrayBuffer(
375
- new Float32Array(this._verticesLow),
376
- 3,
377
- this._verticesLow.length / 3
378
- );
379
- this._indexBuffer = this._renderNode.renderer.handler.createElementArrayBuffer(
380
- new Uint32Array(this._indexes),
381
- 1,
382
- this._indexes.length
383
- );
198
+ let gl = this._renderNode.renderer.handler.gl;
199
+ gl.deleteBuffer(this._indexBuffer);
200
+ gl.deleteBuffer(this._verticesHighBuffer);
201
+ gl.deleteBuffer(this._verticesLowBuffer);
202
+ this._verticesHighBuffer = this._renderNode.renderer.handler.createArrayBuffer(new Float32Array(this._verticesHigh), 3, this._verticesHigh.length / 3);
203
+ this._verticesLowBuffer = this._renderNode.renderer.handler.createArrayBuffer(new Float32Array(this._verticesLow), 3, this._verticesLow.length / 3);
204
+ this._indexBuffer = this._renderNode.renderer.handler.createElementArrayBuffer(new Uint32Array(this._indexes), 1, this._indexes.length);
384
205
  }
385
206
  }
386
-
387
- public addEdge3v(p2: Vec3, p3: Vec3) {
207
+ addEdge3v(p2, p3) {
388
208
  let length = this._path.length;
389
-
390
209
  if (length === 0) {
391
210
  this._path.push([p2.clone(), p3.clone()]);
392
- } else {
393
- let p0 = this._path[length - 1][0],
394
- p1 = this._path[length - 1][1];
395
-
211
+ }
212
+ else {
213
+ let p0 = this._path[length - 1][0], p1 = this._path[length - 1][1];
396
214
  this._path.push([p2.clone(), p3.clone()]);
397
-
398
- let vHigh = this._verticesHigh,
399
- vLow = this._verticesLow;
400
-
401
- let gs = this._gridSize,
402
- gs1 = gs + 1;
403
-
215
+ let vHigh = this._verticesHigh, vLow = this._verticesLow;
216
+ let gs = this._gridSize, gs1 = gs + 1;
404
217
  let p = new Vec3();
405
-
406
- let last = this._verticesHigh.length / 3,
407
- ind = last;
408
-
218
+ let last = this._verticesHigh.length / 3, ind = last;
409
219
  let d = Math.abs(p0.sub(p1).normal().dot(p2.sub(p0).normal()));
410
-
411
220
  for (let i = 0; i < gs1; i++) {
412
221
  let di = i / gs;
413
- let p02 = p0.lerp(p2, di),
414
- p13 = p1.lerp(p3, di);
415
-
222
+ let p02 = p0.lerp(p2, di), p13 = p1.lerp(p3, di);
416
223
  for (let j = 0; j < gs1; j++) {
417
224
  let dj = j / gs;
418
- let p01 = p0.lerp(p1, dj),
419
- p23 = p2.lerp(p3, dj);
420
-
225
+ let p01 = p0.lerp(p1, dj), p23 = p2.lerp(p3, dj);
421
226
  if (d !== 1.0) {
422
227
  new Line3(p02, p13).intersects(new Line3(p01, p23), p);
423
- } else {
228
+ }
229
+ else {
424
230
  p = p23;
425
231
  }
426
-
427
232
  ind = last + i * gs1 + j;
428
-
429
233
  Vec3.doubleToTwoFloats(p, _tempHigh, _tempLow);
430
-
431
234
  let ind3 = ind * 3;
432
-
433
235
  vHigh[ind3] = _tempHigh.x;
434
236
  vHigh[ind3 + 1] = _tempHigh.y;
435
237
  vHigh[ind3 + 2] = _tempHigh.z;
436
-
437
238
  vLow[ind3] = _tempLow.x;
438
239
  vLow[ind3 + 1] = _tempLow.y;
439
240
  vLow[ind3 + 2] = _tempLow.z;
440
-
441
241
  if (i < gs) {
442
242
  this._indexes.push(ind, ind + gs1);
443
243
  }
444
244
  }
445
-
446
245
  if (i < gs) {
447
246
  this._indexes.push(ind + gs1, ind + 1);
448
247
  }
449
248
  }
450
-
451
249
  this._createBuffers();
452
250
  }
453
251
  }
454
-
455
- public setEdge3v(p2: Vec3, p3: Vec3, index: number) {
252
+ setEdge3v(p2, p3, index) {
456
253
  if (index === this._path.length) {
457
254
  this.addEdge3v(p2, p3);
458
255
  return;
@@ -460,212 +257,145 @@ class Strip {
460
257
  if (this._path[index]) {
461
258
  this._path[index][0] = p2;
462
259
  this._path[index][1] = p3;
463
-
464
260
  if (this._path.length > 1) {
465
- let gs = this._gridSize,
466
- gs1 = gs + 1;
467
-
261
+ let gs = this._gridSize, gs1 = gs + 1;
468
262
  let vSize = gs1 * gs1;
469
-
470
263
  let p = new Vec3();
471
-
472
- let vHigh = this._verticesHigh,
473
- vLow = this._verticesLow;
474
-
264
+ let vHigh = this._verticesHigh, vLow = this._verticesLow;
475
265
  if (index === this._path.length - 1) {
476
- let p0 = this._path[index - 1][0],
477
- p1 = this._path[index - 1][1];
478
-
479
- let prev = this._verticesHigh.length / 3 - vSize,
480
- ind = prev;
481
-
266
+ let p0 = this._path[index - 1][0], p1 = this._path[index - 1][1];
267
+ let prev = this._verticesHigh.length / 3 - vSize, ind = prev;
482
268
  let d = Math.abs(p0.sub(p1).normal().dot(p2.sub(p0).normal()));
483
-
484
269
  for (let i = 0; i < gs1; i++) {
485
270
  let di = i / gs;
486
- let p02 = p0.lerp(p2, di),
487
- p13 = p1.lerp(p3, di);
488
-
271
+ let p02 = p0.lerp(p2, di), p13 = p1.lerp(p3, di);
489
272
  for (let j = 0; j < gs1; j++) {
490
273
  let dj = j / gs;
491
- let p01 = p0.lerp(p1, dj),
492
- p23 = p2.lerp(p3, dj);
493
-
274
+ let p01 = p0.lerp(p1, dj), p23 = p2.lerp(p3, dj);
494
275
  if (d !== 1.0) {
495
276
  new Line3(p02, p13).intersects(new Line3(p01, p23), p);
496
- } else {
277
+ }
278
+ else {
497
279
  p = p23;
498
280
  }
499
-
500
281
  ind = prev + i * gs1 + j;
501
-
502
282
  Vec3.doubleToTwoFloats(p, _tempHigh, _tempLow);
503
-
504
283
  let ind3 = ind * 3;
505
-
506
284
  vHigh[ind3] = _tempHigh.x;
507
285
  vHigh[ind3 + 1] = _tempHigh.y;
508
286
  vHigh[ind3 + 2] = _tempHigh.z;
509
-
510
287
  vLow[ind3] = _tempLow.x;
511
288
  vLow[ind3 + 1] = _tempLow.y;
512
289
  vLow[ind3 + 2] = _tempLow.z;
513
290
  }
514
291
  }
515
- } else if (index === 0) {
292
+ }
293
+ else if (index === 0) {
516
294
  let ind = 0;
517
-
518
- let p0 = p2,
519
- p1 = p3;
520
-
295
+ let p0 = p2, p1 = p3;
521
296
  p2 = this._path[1][0];
522
297
  p3 = this._path[1][1];
523
-
524
298
  for (let i = 0; i < gs1; i++) {
525
299
  let di = i / gs;
526
- let p02 = p0.lerp(p2, di),
527
- p13 = p1.lerp(p3, di);
528
-
300
+ let p02 = p0.lerp(p2, di), p13 = p1.lerp(p3, di);
529
301
  for (let j = 0; j < gs1; j++) {
530
302
  let dj = j / gs;
531
- let p01 = p0.lerp(p1, dj),
532
- p23 = p2.lerp(p3, dj);
533
-
303
+ let p01 = p0.lerp(p1, dj), p23 = p2.lerp(p3, dj);
534
304
  new Line3(p02, p13).intersects(new Line3(p01, p23), p);
535
-
536
305
  ind = i * gs1 + j;
537
-
538
306
  Vec3.doubleToTwoFloats(p, _tempHigh, _tempLow);
539
-
540
307
  let ind3 = ind * 3;
541
-
542
308
  vHigh[ind3] = _tempHigh.x;
543
309
  vHigh[ind3 + 1] = _tempHigh.y;
544
310
  vHigh[ind3 + 2] = _tempHigh.z;
545
-
546
311
  vLow[ind3] = _tempLow.x;
547
312
  vLow[ind3 + 1] = _tempLow.y;
548
313
  vLow[ind3 + 2] = _tempLow.z;
549
314
  }
550
315
  }
551
- } else if (index > 0 && index < this._path.length) {
552
- let p0 = this._path[index - 1][0],
553
- p1 = this._path[index - 1][1];
554
-
555
- let p4 = this._path[index + 1][0],
556
- p5 = this._path[index + 1][1];
557
-
558
- let next = index * vSize,
559
- prev = (index - 1) * vSize,
560
- ind = prev;
561
-
316
+ }
317
+ else if (index > 0 && index < this._path.length) {
318
+ let p0 = this._path[index - 1][0], p1 = this._path[index - 1][1];
319
+ let p4 = this._path[index + 1][0], p5 = this._path[index + 1][1];
320
+ let next = index * vSize, prev = (index - 1) * vSize, ind = prev;
562
321
  for (let i = 0; i < gs1; i++) {
563
322
  let di = i / gs;
564
- let p02 = p0.lerp(p2, di),
565
- p35 = p3.lerp(p5, di),
566
- p24 = p2.lerp(p4, di),
567
- p13 = p1.lerp(p3, di);
568
-
323
+ let p02 = p0.lerp(p2, di), p35 = p3.lerp(p5, di), p24 = p2.lerp(p4, di), p13 = p1.lerp(p3, di);
569
324
  for (let j = 0; j < gs1; j++) {
570
325
  let dj = j / gs;
571
- let p01 = p0.lerp(p1, dj),
572
- p23 = p2.lerp(p3, dj);
573
-
326
+ let p01 = p0.lerp(p1, dj), p23 = p2.lerp(p3, dj);
574
327
  // prev
575
328
  new Line3(p02, p13).intersects(new Line3(p01, p23), p);
576
-
577
329
  let ij = i * gs1 + j;
578
-
579
330
  ind = prev + ij;
580
-
581
331
  Vec3.doubleToTwoFloats(p, _tempHigh, _tempLow);
582
-
583
332
  let ind3 = ind * 3;
584
-
585
333
  vHigh[ind3] = _tempHigh.x;
586
334
  vHigh[ind3 + 1] = _tempHigh.y;
587
335
  vHigh[ind3 + 2] = _tempHigh.z;
588
-
589
336
  vLow[ind3] = _tempLow.x;
590
337
  vLow[ind3 + 1] = _tempLow.y;
591
338
  vLow[ind3 + 2] = _tempLow.z;
592
-
593
339
  // next
594
340
  let p45 = p4.lerp(p5, dj);
595
-
596
341
  p23 = p2.lerp(p3, dj);
597
-
598
342
  new Line3(p24, p35).intersects(new Line3(p23, p45), p);
599
-
600
343
  ind = next + ij;
601
-
602
344
  Vec3.doubleToTwoFloats(p, _tempHigh, _tempLow);
603
-
604
345
  ind3 = ind * 3;
605
-
606
346
  vHigh[ind3] = _tempHigh.x;
607
347
  vHigh[ind3 + 1] = _tempHigh.y;
608
348
  vHigh[ind3 + 2] = _tempHigh.z;
609
-
610
349
  vLow[ind3] = _tempLow.x;
611
350
  vLow[ind3 + 1] = _tempLow.y;
612
351
  vLow[ind3 + 2] = _tempLow.z;
613
352
  }
614
353
  }
615
354
  }
616
-
617
355
  this._createBuffers();
618
356
  }
619
- } else {
357
+ }
358
+ else {
620
359
  console.warn(`strip index ${index} is out of range`);
621
360
  }
622
361
  }
623
-
624
- public removeEdge(index: number) {
362
+ removeEdge(index) {
625
363
  this._path.splice(index, 1);
626
- this.setPath(([] as TStrip[]).concat(this._path));
364
+ this.setPath([].concat(this._path));
627
365
  }
628
-
629
- public setGridSize(gridSize: number) {
366
+ setGridSize(gridSize) {
630
367
  this._gridSize = gridSize;
631
- this.setPath(([] as TStrip[]).concat(this._path));
368
+ this.setPath([].concat(this._path));
632
369
  }
633
-
634
- public getPath(): TStrip[] {
370
+ getPath() {
635
371
  return this._path;
636
372
  }
637
-
638
- public setPath(path: TStripExt[] | TStrip[]) {
373
+ setPath(path) {
639
374
  this._verticesHigh = [];
640
375
  this._verticesLow = [];
641
376
  this._indexes = [];
642
377
  this._path = [];
643
-
644
378
  for (let i = 0; i < path.length; i++) {
645
- let p0 = path[i][0],
646
- p1 = path[i][1];
647
-
379
+ let p0 = path[i][0], p1 = path[i][1];
648
380
  if (p0 instanceof Array) {
649
381
  p0 = new Vec3(p0[0], p0[1], p0[2]);
650
382
  }
651
-
652
383
  if (p1 instanceof Array) {
653
384
  p1 = new Vec3(p1[0], p1[1], p1[2]);
654
385
  }
655
-
656
- this.addEdge3v(p0 as Vec3, p1 as Vec3);
386
+ this.addEdge3v(p0, p1);
657
387
  }
658
388
  }
659
-
660
- public insertEdge3v(p0: Vec3, p1: Vec3, index: number) {
389
+ insertEdge3v(p0, p1, index) {
661
390
  if (index < this._path.length) {
662
- let p: TStrip[] = ([] as TStrip[]).concat(this._path);
391
+ let p = [].concat(this._path);
663
392
  p.splice(index, 0, [p0, p1]);
664
393
  this.setPath(p);
665
- } else if (index === this._path.length) {
394
+ }
395
+ else if (index === this._path.length) {
666
396
  this.addEdge3v(p0, p1);
667
397
  }
668
398
  }
669
399
  }
670
-
671
- export {Strip};
400
+ Strip.__counter__ = 0;
401
+ export { Strip };