@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,35 +1,8 @@
1
- import {Entity} from "./Entity";
2
- import {PointCloudHandler} from "./PointCloudHandler";
3
- import {RenderNode} from "../scene/RenderNode";
4
- import {Vec3} from "../math/Vec3";
5
- import {Vec4} from "../math/Vec4";
6
- import {WebGLBufferExt} from "../webgl/Handler";
7
- import {EntityCollection} from "./EntityCollection";
8
-
9
- export interface IPointCloudParams {
10
- visibility?: boolean;
11
- pointSize?: number;
12
- pickingScale?: number;
13
- points?: Poi[];
14
- }
15
-
16
- type Poi = [number, number, number, number, number, number, number, any | undefined];
17
-
18
- interface IPoint {
19
- _entity: Entity | null;
20
- _pickingColor: Vec3;
21
- _entityCollection: EntityCollection | null;
22
- index: number;
23
- position: Vec3;
24
- color: Vec4;
25
- pointCloud: PointCloud;
26
- properties: any
27
- }
28
-
1
+ import { Vec3 } from "../math/Vec3";
2
+ import { Vec4 } from "../math/Vec4";
29
3
  const COORDINATES_BUFFER = 0;
30
4
  const COLOR_BUFFER = 1;
31
5
  const PICKING_COLOR_BUFFER = 2;
32
-
33
6
  /**
34
7
  * PointCloud object.
35
8
  * @class
@@ -51,158 +24,65 @@ const PICKING_COLOR_BUFFER = 2;
51
24
  * });
52
25
  */
53
26
  class PointCloud {
54
- static __counter__: number = 0;
55
- protected __id: number;
56
-
57
- /**
58
- * Cloud visibility.
59
- * @public
60
- * @type {boolean}
61
- */
62
- public visibility: boolean;
63
-
64
- /**
65
- * Point screen size in pixels.
66
- * @public
67
- * @type {number}
68
- */
69
- public pointSize: number;
70
-
71
- /**
72
- * Point picking border size in pixels.
73
- * @public
74
- * @type {number}
75
- */
76
- public pickingScale: number;
77
-
78
- /**
79
- * Parent collection render node.
80
- * @protected
81
- * @type {RenderNode | null}
82
- */
83
- protected _renderNode: RenderNode | null;
84
-
85
- /**
86
- * Entity instance that holds this point cloud.
87
- * @public
88
- * @type {Entity | null}
89
- */
90
- public _entity: Entity | null;
91
-
92
- /**
93
- * Points properties.
94
- * @protected
95
- * @type {IPoint[]}
96
- */
97
- protected _points: IPoint[];
98
-
99
- /**
100
- * Coordinates array.
101
- * @protected
102
- * @type {number[]}
103
- */
104
- protected _coordinatesData: number[];
105
-
106
- /**
107
- * Color array.
108
- * @protected
109
- * @type {number[]}
110
- */
111
- protected _colorData: number[];
112
-
113
- /**
114
- * Picking color array.
115
- * @protected
116
- * @type {number[]}
117
- */
118
- protected _pickingColorData: number[];
119
-
120
- protected _coordinatesBuffer: WebGLBufferExt | null;
121
- protected _colorBuffer: WebGLBufferExt | null;
122
- protected _pickingColorBuffer: WebGLBufferExt | null;
123
-
124
- /**
125
- * Handler that stores and renders this object.
126
- * @public
127
- * @type {PointCloudHandler}
128
- */
129
- public _handler: PointCloudHandler | null;
130
- public _handlerIndex: number;
131
-
132
- protected _buffersUpdateCallbacks: Function[];
133
- protected _changedBuffers: boolean[];
134
-
135
- constructor(options: IPointCloudParams = {}) {
136
-
27
+ constructor(options = {}) {
137
28
  this.__id = PointCloud.__counter__++;
138
-
139
29
  /**
140
30
  * Cloud visibility.
141
31
  * @public
142
32
  * @type {boolean}
143
33
  */
144
34
  this.visibility = options.visibility != undefined ? options.visibility : true;
145
-
146
35
  /**
147
36
  * Point screen size in pixels.
148
37
  * @public
149
38
  * @type {number}
150
39
  */
151
40
  this.pointSize = options.pointSize || 3;
152
-
153
41
  /**
154
42
  * Point picking border size in pixels.
155
43
  * @public
156
44
  * @type {number}
157
45
  */
158
46
  this.pickingScale = options.pickingScale || 0;
159
-
160
47
  /**
161
48
  * Parent collection render node.
162
49
  * @private
163
50
  * @type {RenderNode}
164
51
  */
165
52
  this._renderNode = null;
166
-
167
53
  /**
168
54
  * Entity instance that holds this point cloud.
169
55
  * @private
170
56
  * @type {Entity}
171
57
  */
172
58
  this._entity = null;
173
-
174
59
  /**
175
60
  * Points properties.
176
61
  * @private
177
62
  * @type {IPoint[]}
178
63
  */
179
64
  this._points = [];
180
-
181
65
  /**
182
66
  * Coordinates array.
183
67
  * @private
184
68
  * @type {Array.<number>}
185
69
  */
186
70
  this._coordinatesData = [];
187
-
188
71
  /**
189
72
  * Color array.
190
73
  * @private
191
74
  * @type {Array.<number>}
192
75
  */
193
76
  this._colorData = [];
194
-
195
77
  /**
196
78
  * Picking color array.
197
79
  * @private
198
80
  * @type {Array.<number>}
199
81
  */
200
82
  this._pickingColorData = [];
201
-
202
83
  this._coordinatesBuffer = null;
203
84
  this._colorBuffer = null;
204
85
  this._pickingColorBuffer = null;
205
-
206
86
  /**
207
87
  * Handler that stores and renders this object.
208
88
  * @private
@@ -210,74 +90,61 @@ class PointCloud {
210
90
  */
211
91
  this._handler = null;
212
92
  this._handlerIndex = -1;
213
-
214
93
  this._buffersUpdateCallbacks = [];
215
94
  this._buffersUpdateCallbacks[COORDINATES_BUFFER] = this._createCoordinatesBuffer;
216
95
  this._buffersUpdateCallbacks[COLOR_BUFFER] = this._createColorBuffer;
217
96
  this._buffersUpdateCallbacks[PICKING_COLOR_BUFFER] = this._createPickingColorBuffer;
218
-
219
97
  this._changedBuffers = new Array(this._buffersUpdateCallbacks.length);
220
-
221
98
  if (options.points) {
222
99
  this.setPoints(options.points);
223
100
  }
224
101
  }
225
-
226
102
  /**
227
103
  * Clears point cloud data
228
104
  * @public
229
105
  */
230
- public clear() {
106
+ clear() {
231
107
  this._points.length = 0;
232
108
  this._points = [];
233
-
234
109
  this._coordinatesData.length = 0;
235
110
  this._coordinatesData = [];
236
-
237
111
  this._colorData.length = 0;
238
112
  this._colorData = [];
239
-
240
113
  this._pickingColorData.length = 0;
241
114
  this._pickingColorData = [];
242
-
243
115
  this._deleteBuffers();
244
116
  }
245
-
246
117
  /**
247
118
  * Sets cloud visibility.
248
119
  * @public
249
120
  * @param {boolean} visibility - Visibility flag.
250
121
  */
251
- public setVisibility(visibility: boolean) {
122
+ setVisibility(visibility) {
252
123
  this.visibility = visibility;
253
124
  }
254
-
255
125
  /**
256
126
  * @return {boolean} Point cloud visibility.
257
127
  */
258
- public getVisibility(): boolean {
128
+ getVisibility() {
259
129
  return this.visibility;
260
130
  }
261
-
262
131
  /**
263
132
  * Assign rendering scene node.
264
133
  * @public
265
134
  * @param {RenderNode} renderNode - Assigned render node.
266
135
  */
267
- public setRenderNode(renderNode: RenderNode) {
136
+ setRenderNode(renderNode) {
268
137
  this._renderNode = renderNode;
269
138
  this._setPickingColors();
270
139
  }
271
-
272
140
  /**
273
141
  * Removes from entity.
274
142
  * @public
275
143
  */
276
- public remove() {
144
+ remove() {
277
145
  this._entity = null;
278
146
  this._handler && this._handler.remove(this);
279
147
  }
280
-
281
148
  /**
282
149
  * Adds points to render.
283
150
  * @public
@@ -285,18 +152,13 @@ class PointCloud {
285
152
  * @example
286
153
  * var points = [[0, 0, 0, 255, 255, 255, 255, { 'name': 'White point' }], [100, 100, 0, 255, 0, 0, 255, { 'name': 'Red point' }]];
287
154
  */
288
- public setPoints(points: Poi[]) {
155
+ setPoints(points) {
289
156
  this.clear();
290
157
  for (let i = 0; i < points.length; i++) {
291
158
  let pi = points[i];
292
-
293
- let pos = new Vec3(pi[0], pi[1], pi[2]),
294
- col = new Vec4(pi[3], pi[4], pi[5], pi[6] == undefined ? 255.0 : pi[6]);
295
-
159
+ let pos = new Vec3(pi[0], pi[1], pi[2]), col = new Vec4(pi[3], pi[4], pi[5], pi[6] == undefined ? 255.0 : pi[6]);
296
160
  this._coordinatesData.push(pos.x, pos.y, pos.z);
297
-
298
161
  this._colorData.push(col.x / 255.0, col.y / 255.0, col.z / 255.0, col.w / 255.0);
299
-
300
162
  let p = {
301
163
  _entity: this._entity,
302
164
  _pickingColor: new Vec3(),
@@ -307,144 +169,107 @@ class PointCloud {
307
169
  pointCloud: this,
308
170
  properties: pi[7] || {}
309
171
  };
310
-
311
172
  this._points.push(p);
312
-
313
173
  if (this._renderNode && this._renderNode.renderer) {
314
- this._renderNode.renderer.assignPickingColor<IPoint>(p);
315
- this._pickingColorData.push(
316
- p._pickingColor.x / 255.0,
317
- p._pickingColor.y / 255.0,
318
- p._pickingColor.z / 255.0,
319
- 1.0
320
- );
174
+ this._renderNode.renderer.assignPickingColor(p);
175
+ this._pickingColorData.push(p._pickingColor.x / 255.0, p._pickingColor.y / 255.0, p._pickingColor.z / 255.0, 1.0);
321
176
  }
322
177
  }
323
-
324
178
  this._changedBuffers[COORDINATES_BUFFER] = true;
325
179
  this._changedBuffers[COLOR_BUFFER] = true;
326
180
  this._changedBuffers[PICKING_COLOR_BUFFER] = true;
327
181
  }
328
-
329
- public setPointPosition(index: number, x: number, y: number, z: number) {
182
+ setPointPosition(index, x, y, z) {
330
183
  // TODO: ...
331
184
  this._changedBuffers[COORDINATES_BUFFER] = true;
332
185
  }
333
-
334
- public setPointColor(index: number, r: number, g: number, b: number, a: number) {
186
+ setPointColor(index, r, g, b, a) {
335
187
  // TODO: ...
336
188
  this._changedBuffers[COLOR_BUFFER] = true;
337
189
  }
338
-
339
- public addPoints(points: Poi[]) {
190
+ addPoints(points) {
340
191
  // TODO: ...
341
192
  this._changedBuffers[COORDINATES_BUFFER] = true;
342
193
  this._changedBuffers[COLOR_BUFFER] = true;
343
194
  this._changedBuffers[PICKING_COLOR_BUFFER] = true;
344
195
  }
345
-
346
- public addPoint(index: number, point: Poi) {
196
+ addPoint(index, point) {
347
197
  // TODO: ...
348
198
  this._changedBuffers[COORDINATES_BUFFER] = true;
349
199
  this._changedBuffers[COLOR_BUFFER] = true;
350
200
  this._changedBuffers[PICKING_COLOR_BUFFER] = true;
351
201
  }
352
-
353
202
  /**
354
203
  * Returns specific point by index.
355
204
  * @public
356
205
  * @param {number} index - Point index.
357
206
  * @return {Poi} Specific point
358
207
  */
359
- public getPoint(index: number): IPoint {
208
+ getPoint(index) {
360
209
  return this._points[index];
361
210
  }
362
-
363
- public removePoint(index: number) {
211
+ removePoint(index) {
364
212
  // TODO: ...
365
213
  this._changedBuffers[COORDINATES_BUFFER] = true;
366
214
  this._changedBuffers[COLOR_BUFFER] = true;
367
215
  this._changedBuffers[PICKING_COLOR_BUFFER] = true;
368
216
  }
369
-
370
- public insertPoint(index: number, point: Poi) {
217
+ insertPoint(index, point) {
371
218
  // TODO: ...
372
219
  this._changedBuffers[COORDINATES_BUFFER] = true;
373
220
  this._changedBuffers[COLOR_BUFFER] = true;
374
221
  this._changedBuffers[PICKING_COLOR_BUFFER] = true;
375
222
  }
376
-
377
- public draw() {
223
+ draw() {
378
224
  if (this.visibility && this._coordinatesData.length) {
379
225
  this._update();
380
-
381
- let rn = this._renderNode!;
382
- let r = rn.renderer!;
226
+ let rn = this._renderNode;
227
+ let r = rn.renderer;
383
228
  let sh = r.handler.programs.pointCloud;
384
229
  let p = sh._program;
385
- let gl = r.handler.gl!,
386
- sha = p.attributes,
387
- shu = p.uniforms;
388
-
230
+ let gl = r.handler.gl, sha = p.attributes, shu = p.uniforms;
389
231
  // gl.polygonOffset(
390
232
  // this._handler._entityCollection.polygonOffsetFactor,
391
233
  // this._handler._entityCollection.polygonOffsetUnits
392
234
  // );
393
-
394
235
  sh.activate();
395
-
396
- gl.uniformMatrix4fv(shu.projectionViewMatrix, false, r.activeCamera!.getProjectionViewMatrix());
397
-
398
- gl.uniform1f(shu.opacity, this._handler!._entityCollection._fadingOpacity);
236
+ gl.uniformMatrix4fv(shu.projectionViewMatrix, false, r.activeCamera.getProjectionViewMatrix());
237
+ gl.uniform1f(shu.opacity, this._handler._entityCollection._fadingOpacity);
399
238
  gl.uniform1f(shu.pointSize, this.pointSize);
400
-
401
- gl.bindBuffer(gl.ARRAY_BUFFER, this._coordinatesBuffer as WebGLBuffer);
402
- gl.vertexAttribPointer(sha.coordinates, this._coordinatesBuffer!.itemSize, gl.FLOAT, false, 0, 0);
403
-
404
- gl.bindBuffer(gl.ARRAY_BUFFER, this._colorBuffer as WebGLBuffer);
405
- gl.vertexAttribPointer(sha.colors, this._colorBuffer!.itemSize, gl.FLOAT, false, 0, 0);
406
-
407
- gl.drawArrays(gl.POINTS, 0, this._coordinatesBuffer!.numItems);
239
+ gl.bindBuffer(gl.ARRAY_BUFFER, this._coordinatesBuffer);
240
+ gl.vertexAttribPointer(sha.coordinates, this._coordinatesBuffer.itemSize, gl.FLOAT, false, 0, 0);
241
+ gl.bindBuffer(gl.ARRAY_BUFFER, this._colorBuffer);
242
+ gl.vertexAttribPointer(sha.colors, this._colorBuffer.itemSize, gl.FLOAT, false, 0, 0);
243
+ gl.drawArrays(gl.POINTS, 0, this._coordinatesBuffer.numItems);
408
244
  }
409
245
  }
410
-
411
- public drawPicking() {
246
+ drawPicking() {
412
247
  if (this.visibility && this._coordinatesData.length) {
413
- let rn = this._renderNode!;
414
- let r = rn.renderer!;
248
+ let rn = this._renderNode;
249
+ let r = rn.renderer;
415
250
  let sh = r.handler.programs.pointCloud;
416
251
  let p = sh._program;
417
- let gl = r.handler.gl!,
418
- sha = p.attributes,
419
- shu = p.uniforms;
420
-
252
+ let gl = r.handler.gl, sha = p.attributes, shu = p.uniforms;
421
253
  sh.activate();
422
-
423
254
  // gl.polygonOffset(
424
255
  // this._handler._entityCollection.polygonOffsetFactor,
425
256
  // this._handler._entityCollection.polygonOffsetUnits
426
257
  // );
427
-
428
- gl.uniformMatrix4fv(shu.projectionViewMatrix, false, r.activeCamera!.getProjectionViewMatrix());
429
-
430
- gl.uniform1f(shu.opacity, this._handler!._entityCollection._fadingOpacity);
258
+ gl.uniformMatrix4fv(shu.projectionViewMatrix, false, r.activeCamera.getProjectionViewMatrix());
259
+ gl.uniform1f(shu.opacity, this._handler._entityCollection._fadingOpacity);
431
260
  gl.uniform1f(shu.pointSize, this.pointSize + this.pickingScale);
432
-
433
- gl.bindBuffer(gl.ARRAY_BUFFER, this._coordinatesBuffer as WebGLBuffer);
434
- gl.vertexAttribPointer(sha.coordinates, this._coordinatesBuffer!.itemSize, gl.FLOAT, false, 0, 0);
435
-
436
- gl.bindBuffer(gl.ARRAY_BUFFER, this._pickingColorBuffer as WebGLBuffer);
437
- gl.vertexAttribPointer(sha.colors, this._pickingColorBuffer!.itemSize, gl.FLOAT, false, 0, 0);
438
-
439
- gl.drawArrays(gl.POINTS, 0, this._coordinatesBuffer!.numItems);
261
+ gl.bindBuffer(gl.ARRAY_BUFFER, this._coordinatesBuffer);
262
+ gl.vertexAttribPointer(sha.coordinates, this._coordinatesBuffer.itemSize, gl.FLOAT, false, 0, 0);
263
+ gl.bindBuffer(gl.ARRAY_BUFFER, this._pickingColorBuffer);
264
+ gl.vertexAttribPointer(sha.colors, this._pickingColorBuffer.itemSize, gl.FLOAT, false, 0, 0);
265
+ gl.drawArrays(gl.POINTS, 0, this._coordinatesBuffer.numItems);
440
266
  }
441
267
  }
442
-
443
268
  /**
444
269
  * Update gl buffers.
445
270
  * @protected
446
271
  */
447
- protected _update() {
272
+ _update() {
448
273
  if (this._renderNode) {
449
274
  let i = this._changedBuffers.length;
450
275
  while (i--) {
@@ -455,73 +280,48 @@ class PointCloud {
455
280
  }
456
281
  }
457
282
  }
458
-
459
283
  /**
460
284
  * Delete buffers
461
285
  * @public
462
286
  */
463
- public _deleteBuffers() {
287
+ _deleteBuffers() {
464
288
  if (this._renderNode) {
465
- let r = this._renderNode.renderer!,
466
- gl = r.handler.gl!;
467
-
468
- gl.deleteBuffer(this._coordinatesBuffer as WebGLBuffer);
469
- gl.deleteBuffer(this._colorBuffer as WebGLBuffer);
470
- gl.deleteBuffer(this._pickingColorBuffer as WebGLBuffer);
289
+ let r = this._renderNode.renderer, gl = r.handler.gl;
290
+ gl.deleteBuffer(this._coordinatesBuffer);
291
+ gl.deleteBuffer(this._colorBuffer);
292
+ gl.deleteBuffer(this._pickingColorBuffer);
471
293
  }
472
-
473
294
  this._coordinatesBuffer = null;
474
295
  this._colorBuffer = null;
475
296
  this._pickingColorBuffer = null;
476
297
  }
477
-
478
- protected _createCoordinatesBuffer() {
479
- let h = this._renderNode!.renderer!.handler;
480
- h.gl!.deleteBuffer(this._coordinatesBuffer as WebGLBuffer);
481
- this._coordinatesBuffer = h.createArrayBuffer(
482
- new Float32Array(this._coordinatesData),
483
- 3,
484
- this._coordinatesData.length / 3
485
- );
298
+ _createCoordinatesBuffer() {
299
+ let h = this._renderNode.renderer.handler;
300
+ h.gl.deleteBuffer(this._coordinatesBuffer);
301
+ this._coordinatesBuffer = h.createArrayBuffer(new Float32Array(this._coordinatesData), 3, this._coordinatesData.length / 3);
486
302
  }
487
-
488
- protected _createColorBuffer() {
489
- let h = this._renderNode!.renderer!.handler;
490
- h.gl!.deleteBuffer(this._colorBuffer as WebGLBuffer);
491
- this._colorBuffer = h.createArrayBuffer(
492
- new Float32Array(this._colorData),
493
- 4,
494
- this._colorData.length / 4
495
- );
303
+ _createColorBuffer() {
304
+ let h = this._renderNode.renderer.handler;
305
+ h.gl.deleteBuffer(this._colorBuffer);
306
+ this._colorBuffer = h.createArrayBuffer(new Float32Array(this._colorData), 4, this._colorData.length / 4);
496
307
  }
497
-
498
- protected _createPickingColorBuffer() {
499
- let h = this._renderNode!.renderer!.handler;
500
- h.gl!.deleteBuffer(this._pickingColorBuffer as WebGLBuffer);
501
- this._pickingColorBuffer = h.createArrayBuffer(
502
- new Float32Array(this._pickingColorData),
503
- 4,
504
- this._pickingColorData.length / 4
505
- );
308
+ _createPickingColorBuffer() {
309
+ let h = this._renderNode.renderer.handler;
310
+ h.gl.deleteBuffer(this._pickingColorBuffer);
311
+ this._pickingColorBuffer = h.createArrayBuffer(new Float32Array(this._pickingColorData), 4, this._pickingColorData.length / 4);
506
312
  }
507
-
508
- protected _setPickingColors() {
313
+ _setPickingColors() {
509
314
  if (this._renderNode && this._renderNode.renderer) {
510
315
  for (let i = 0; i < this._points.length; i++) {
511
316
  let p = this._points[i];
512
317
  p._entity = this._entity;
513
- p._entityCollection = this._entity!._entityCollection;
514
- this._renderNode.renderer.assignPickingColor<IPoint>(p);
515
- this._pickingColorData.push(
516
- p._pickingColor.x / 255.0,
517
- p._pickingColor.y / 255.0,
518
- p._pickingColor.z / 255.0,
519
- 1.0
520
- );
318
+ p._entityCollection = this._entity._entityCollection;
319
+ this._renderNode.renderer.assignPickingColor(p);
320
+ this._pickingColorData.push(p._pickingColor.x / 255.0, p._pickingColor.y / 255.0, p._pickingColor.z / 255.0, 1.0);
521
321
  }
522
322
  this._changedBuffers[PICKING_COLOR_BUFFER] = true;
523
323
  }
524
324
  }
525
325
  }
526
-
527
- export {PointCloud};
326
+ PointCloud.__counter__ = 0;
327
+ export { PointCloud };
@@ -0,0 +1,42 @@
1
+ import { EntityCollection } from "./EntityCollection";
2
+ import { PointCloud } from "./PointCloud";
3
+ import { Renderer } from "../renderer/Renderer";
4
+ import { RenderNode } from "../scene/RenderNode";
5
+ declare class PointCloudHandler {
6
+ static __counter__: number;
7
+ protected __id: number;
8
+ /**
9
+ * Picking rendering option.
10
+ * @public
11
+ * @type {boolean}
12
+ */
13
+ pickingEnabled: boolean;
14
+ /**
15
+ * Parent collection
16
+ * @public
17
+ * @type {EntityCollection}
18
+ */
19
+ _entityCollection: EntityCollection;
20
+ /**
21
+ * Renderer
22
+ * @protected
23
+ * @type {Renderer|null}
24
+ */
25
+ protected _renderer: Renderer | null;
26
+ /**
27
+ * Point cloud array
28
+ * @protected
29
+ * @type {Array.<PointCloud>}
30
+ */
31
+ protected _pointClouds: PointCloud[];
32
+ constructor(entityCollection: EntityCollection);
33
+ protected _initProgram(): void;
34
+ setRenderNode(renderNode: RenderNode): void;
35
+ add(pointCloud: PointCloud): void;
36
+ remove(pointCloud: PointCloud): void;
37
+ protected _reindexPointCloudArray(startIndex: number): void;
38
+ draw(): void;
39
+ drawPicking(): void;
40
+ clear(): void;
41
+ }
42
+ export { PointCloudHandler };