@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.
- package/README.md +8 -8
- package/lib/@openglobus/og.esm.js +2 -0
- package/lib/@openglobus/og.esm.js.map +1 -0
- package/lib/@openglobus/og.umd.js +2 -0
- package/lib/@openglobus/og.umd.js.map +1 -0
- package/lib/js/Clock.d.ts +106 -0
- package/{src/Clock.ts → lib/js/Clock.js} +31 -126
- package/lib/js/Deferred.d.ts +6 -0
- package/lib/js/Deferred.js +13 -0
- package/lib/js/Events.d.ts +90 -0
- package/{src/Events.ts → lib/js/Events.js} +29 -84
- package/lib/js/Extent.d.ts +145 -0
- package/{src/Extent.ts → lib/js/Extent.js} +74 -120
- package/lib/js/Globe.d.ts +132 -0
- package/{src/Globe.ts → lib/js/Globe.js} +61 -159
- package/lib/js/ImageCanvas.d.ts +128 -0
- package/{src/ImageCanvas.ts → lib/js/ImageCanvas.js} +24 -65
- package/lib/js/Lock.d.ts +15 -0
- package/{src/Lock.ts → lib/js/Lock.js} +7 -21
- package/lib/js/LonLat.d.ts +128 -0
- package/{src/LonLat.ts → lib/js/LonLat.js} +44 -75
- package/lib/js/Object3d.d.ts +49 -0
- package/{src/Object3d.ts → lib/js/Object3d.js} +64 -184
- package/lib/js/Popup.d.ts +46 -0
- package/{src/Popup.ts → lib/js/Popup.js} +42 -110
- package/lib/js/QueueArray.d.ts +16 -0
- package/{src/QueueArray.ts → lib/js/QueueArray.js} +12 -25
- package/lib/js/Rectangle.d.ts +76 -0
- package/{src/Rectangle.ts → lib/js/Rectangle.js} +12 -50
- package/lib/js/Stack.d.ts +20 -0
- package/{src/Stack.ts → lib/js/Stack.js} +13 -29
- package/lib/js/astro/astro.d.ts +39 -0
- package/{src/astro/astro.ts → lib/js/astro/astro.js} +2 -8
- package/lib/js/astro/earth.d.ts +8 -0
- package/{src/astro/earth.ts → lib/js/astro/earth.js} +3 -39
- package/lib/js/astro/jd.d.ts +234 -0
- package/{src/astro/jd.ts → lib/js/astro/jd.js} +55 -134
- package/lib/js/astro/orbit.d.ts +5 -0
- package/{src/astro/orbit.ts → lib/js/astro/orbit.js} +26 -39
- package/lib/js/astro/rotation.d.ts +2 -0
- package/{src/astro/rotation.ts → lib/js/astro/rotation.js} +2 -11
- package/lib/js/bv/Box.d.ts +32 -0
- package/{src/bv/Box.ts → lib/js/bv/Box.js} +7 -35
- package/lib/js/bv/Sphere.d.ts +37 -0
- package/{src/bv/Sphere.ts → lib/js/bv/Sphere.js} +6 -34
- package/{src/bv/index.ts → lib/js/bv/index.d.ts} +0 -1
- package/lib/js/bv/index.js +3 -0
- package/lib/js/camera/Camera.d.ts +314 -0
- package/{src/camera/Camera.ts → lib/js/camera/Camera.js} +77 -326
- package/lib/js/camera/Frustum.d.ts +139 -0
- package/{src/camera/Frustum.ts → lib/js/camera/Frustum.js} +66 -185
- package/lib/js/camera/PlanetCamera.d.ts +234 -0
- package/{src/camera/PlanetCamera.ts → lib/js/camera/PlanetCamera.js} +65 -338
- package/{src/camera/index.ts → lib/js/camera/index.d.ts} +0 -1
- package/lib/js/camera/index.js +3 -0
- package/lib/js/cons.d.ts +40 -0
- package/{src/cons.ts → lib/js/cons.js} +10 -22
- package/lib/js/control/Atmosphere.d.ts +16 -0
- package/{src/control/Atmosphere.ts → lib/js/control/Atmosphere.js} +33 -86
- package/lib/js/control/CompassButton.d.ts +16 -0
- package/{src/control/CompassButton.ts → lib/js/control/CompassButton.js} +18 -43
- package/lib/js/control/Control.d.ts +100 -0
- package/{src/control/Control.ts → lib/js/control/Control.js} +22 -89
- package/lib/js/control/DebugInfo.d.ts +25 -0
- package/{src/control/DebugInfo.ts → lib/js/control/DebugInfo.js} +38 -84
- package/lib/js/control/DrawingSwitcher.d.ts +13 -0
- package/{src/control/DrawingSwitcher.ts → lib/js/control/DrawingSwitcher.js} +13 -30
- package/lib/js/control/EarthCoordinates.d.ts +41 -0
- package/{src/control/EarthCoordinates.ts → lib/js/control/EarthCoordinates.js} +58 -119
- package/lib/js/control/EarthNavigation.d.ts +50 -0
- package/{src/control/EarthNavigation.ts → lib/js/control/EarthNavigation.js} +70 -161
- package/lib/js/control/GeoImageDragControl.d.ts +22 -0
- package/{src/control/GeoImageDragControl.ts → lib/js/control/GeoImageDragControl.js} +26 -49
- package/lib/js/control/KeyboardNavigation.d.ts +28 -0
- package/{src/control/KeyboardNavigation.ts → lib/js/control/KeyboardNavigation.js} +67 -92
- package/lib/js/control/LayerAnimation.d.ts +71 -0
- package/{src/control/LayerAnimation.ts → lib/js/control/LayerAnimation.js} +82 -162
- package/lib/js/control/LayerSwitcher.d.ts +21 -0
- package/{src/control/LayerSwitcher.ts → lib/js/control/LayerSwitcher.js} +16 -41
- package/lib/js/control/Lighting.d.ts +49 -0
- package/{src/control/Lighting.ts → lib/js/control/Lighting.js} +106 -219
- package/lib/js/control/MouseNavigation.d.ts +62 -0
- package/{src/control/MouseNavigation.ts → lib/js/control/MouseNavigation.js} +105 -211
- package/lib/js/control/MouseWheelZoomControl.d.ts +44 -0
- package/lib/js/control/MouseWheelZoomControl.js +181 -0
- package/lib/js/control/RulerSwitcher.d.ts +17 -0
- package/{src/control/RulerSwitcher.ts → lib/js/control/RulerSwitcher.js} +13 -28
- package/lib/js/control/ScaleControl.d.ts +24 -0
- package/lib/js/control/ScaleControl.js +91 -0
- package/lib/js/control/SegmentBoundVisualization.d.ts +12 -0
- package/lib/js/control/SegmentBoundVisualization.js +37 -0
- package/lib/js/control/ShowFps.d.ts +9 -0
- package/lib/js/control/ShowFps.js +20 -0
- package/lib/js/control/SimpleNavigation.d.ts +25 -0
- package/{src/control/SimpleNavigation.ts → lib/js/control/SimpleNavigation.js} +29 -51
- package/lib/js/control/SimpleSkyBackground.d.ts +15 -0
- package/{src/control/SimpleSkyBackground.ts → lib/js/control/SimpleSkyBackground.js} +21 -48
- package/lib/js/control/Sun.d.ts +33 -0
- package/{src/control/Sun.ts → lib/js/control/Sun.js} +34 -85
- package/lib/js/control/ToggleWireframe.d.ts +14 -0
- package/lib/js/control/ToggleWireframe.js +28 -0
- package/lib/js/control/TouchNavigation.d.ts +52 -0
- package/{src/control/TouchNavigation.ts → lib/js/control/TouchNavigation.js} +88 -193
- package/lib/js/control/ZoomControl.d.ts +27 -0
- package/{src/control/ZoomControl.ts → lib/js/control/ZoomControl.js} +25 -50
- package/lib/js/control/drawing/DrawingControl.d.ts +12 -0
- package/{src/control/drawing/DrawingControl.ts → lib/js/control/drawing/DrawingControl.js} +10 -20
- package/lib/js/control/drawing/LineStringDrawingScene.d.ts +15 -0
- package/{src/control/drawing/LineStringDrawingScene.ts → lib/js/control/drawing/LineStringDrawingScene.js} +28 -85
- package/lib/js/control/drawing/PolygonDrawingScene.d.ts +98 -0
- package/{src/control/drawing/PolygonDrawingScene.ts → lib/js/control/drawing/PolygonDrawingScene.js} +190 -388
- package/lib/js/control/elevationProfile/ElevationProfile.d.ts +61 -0
- package/{src/control/elevationProfile/ElevationProfile.ts → lib/js/control/elevationProfile/ElevationProfile.js} +56 -148
- package/lib/js/control/heightRuler/HeightRuler.d.ts +7 -0
- package/{src/control/heightRuler/HeightRuler.ts → lib/js/control/heightRuler/HeightRuler.js} +4 -9
- package/lib/js/control/heightRuler/HeightRulerScene.d.ts +35 -0
- package/{src/control/heightRuler/HeightRulerScene.ts → lib/js/control/heightRuler/HeightRulerScene.js} +47 -99
- package/lib/js/control/heightRuler/HeightRulerSwitcher.d.ts +6 -0
- package/{src/control/heightRuler/HeightRulerSwitcher.ts → lib/js/control/heightRuler/HeightRulerSwitcher.js} +2 -4
- package/{src/control/index.ts → lib/js/control/index.d.ts} +1 -18
- package/lib/js/control/index.js +28 -0
- package/lib/js/control/ruler/Ruler.d.ts +13 -0
- package/lib/js/control/ruler/Ruler.js +23 -0
- package/lib/js/control/ruler/RulerScene.d.ts +88 -0
- package/lib/js/control/ruler/RulerScene.js +324 -0
- package/lib/js/control/selection/Selection.d.ts +55 -0
- package/{src/control/selection/Selection.ts → lib/js/control/selection/Selection.js} +15 -34
- package/lib/js/control/selection/SelectionScene.d.ts +44 -0
- package/{src/control/selection/SelectionScene.ts → lib/js/control/selection/SelectionScene.js} +26 -113
- package/lib/js/control/timeline/TimelineControl.d.ts +18 -0
- package/{src/control/timeline/TimelineControl.ts → lib/js/control/timeline/TimelineControl.js} +13 -43
- package/lib/js/control/timeline/TimelineModel.d.ts +41 -0
- package/{src/control/timeline/TimelineModel.ts → lib/js/control/timeline/TimelineModel.js} +26 -74
- package/lib/js/control/timeline/TimelineView.d.ts +85 -0
- package/{src/control/timeline/TimelineView.ts → lib/js/control/timeline/TimelineView.js} +133 -281
- package/lib/js/control/timeline/timelineUtils.d.ts +12 -0
- package/lib/js/control/timeline/timelineUtils.js +112 -0
- package/lib/js/control/visibleExtent/Segment.d.ts +277 -0
- package/{src → lib/js}/control/visibleExtent/Segment.js +145 -698
- package/lib/js/control/visibleExtent/VisibleExtent.d.ts +5 -0
- package/{src → lib/js}/control/visibleExtent/VisibleExtent.js +1 -18
- package/lib/js/control/visibleExtent/drawnode.d.ts +7 -0
- package/{src/control/visibleExtent/drawnode.ts → lib/js/control/visibleExtent/drawnode.js} +1 -28
- package/lib/js/ellipsoid/Ellipsoid.d.ts +187 -0
- package/{src/ellipsoid/Ellipsoid.ts → lib/js/ellipsoid/Ellipsoid.js} +85 -267
- package/lib/js/ellipsoid/index.d.ts +3 -0
- package/lib/js/ellipsoid/index.js +3 -0
- package/lib/js/ellipsoid/wgs84.d.ts +6 -0
- package/{src/ellipsoid/wgs84.ts → lib/js/ellipsoid/wgs84.js} +1 -2
- package/lib/js/entity/BaseBillboard.d.ts +222 -0
- package/{src/entity/BaseBillboard.ts → lib/js/entity/BaseBillboard.js} +48 -165
- package/lib/js/entity/BaseBillboardHandler.d.ts +81 -0
- package/{src/entity/BaseBillboardHandler.ts → lib/js/entity/BaseBillboardHandler.js} +139 -365
- package/lib/js/entity/Billboard.d.ts +113 -0
- package/{src/entity/Billboard.ts → lib/js/entity/Billboard.js} +19 -83
- package/lib/js/entity/BillboardHandler.d.ts +15 -0
- package/{src/entity/BillboardHandler.ts → lib/js/entity/BillboardHandler.js} +27 -59
- package/lib/js/entity/Entity.d.ts +354 -0
- package/{src/entity/Entity.ts → lib/js/entity/Entity.js} +102 -374
- package/lib/js/entity/EntityCollection.d.ts +363 -0
- package/{src/entity/EntityCollection.ts → lib/js/entity/EntityCollection.js} +57 -359
- package/lib/js/entity/GeoObject.d.ts +138 -0
- package/{src/entity/GeoObject.ts → lib/js/entity/GeoObject.js} +41 -146
- package/lib/js/entity/GeoObjectHandler.d.ts +99 -0
- package/{src/entity/GeoObjectHandler.ts → lib/js/entity/GeoObjectHandler.js} +162 -423
- package/lib/js/entity/Geometry.d.ts +111 -0
- package/lib/js/entity/Geometry.js +283 -0
- package/lib/js/entity/GeometryHandler.d.ts +84 -0
- package/{src/entity/GeometryHandler.ts → lib/js/entity/GeometryHandler.js} +162 -657
- package/lib/js/entity/Label.d.ts +207 -0
- package/{src/entity/Label.ts → lib/js/entity/Label.js} +63 -165
- package/lib/js/entity/LabelHandler.d.ts +65 -0
- package/{src/entity/LabelHandler.ts → lib/js/entity/LabelHandler.js} +175 -408
- package/lib/js/entity/LabelWorker.d.ts +15 -0
- package/{src/entity/LabelWorker.ts → lib/js/entity/LabelWorker.js} +24 -45
- package/lib/js/entity/PointCloud.d.ts +179 -0
- package/{src/entity/PointCloud.ts → lib/js/entity/PointCloud.js} +65 -265
- package/lib/js/entity/PointCloudHandler.d.ts +42 -0
- package/{src/entity/PointCloudHandler.ts → lib/js/entity/PointCloudHandler.js} +19 -62
- package/lib/js/entity/Polyline.d.ts +337 -0
- package/{src/entity/Polyline.ts → lib/js/entity/Polyline.js} +289 -924
- package/lib/js/entity/PolylineHandler.d.ts +22 -0
- package/{src/entity/PolylineHandler.ts → lib/js/entity/PolylineHandler.js} +12 -37
- package/lib/js/entity/Ray.d.ts +133 -0
- package/{src/entity/Ray.ts → lib/js/entity/Ray.js} +26 -146
- package/lib/js/entity/RayHandler.d.ts +70 -0
- package/{src/entity/RayHandler.ts → lib/js/entity/RayHandler.js} +102 -342
- package/lib/js/entity/Strip.d.ts +127 -0
- package/{src/entity/Strip.ts → lib/js/entity/Strip.js} +102 -372
- package/lib/js/entity/StripHandler.d.ts +42 -0
- package/{src/entity/StripHandler.ts → lib/js/entity/StripHandler.js} +22 -74
- package/{src/entity/index.ts → lib/js/entity/index.d.ts} +1 -2
- package/lib/js/entity/index.js +11 -0
- package/lib/js/index.d.ts +33 -0
- package/lib/js/index.js +33 -0
- package/lib/js/input/KeyboardHandler.d.ts +33 -0
- package/{src/input/KeyboardHandler.ts → lib/js/input/KeyboardHandler.js} +45 -84
- package/lib/js/input/MouseHandler.d.ts +16 -0
- package/{src/input/MouseHandler.ts → lib/js/input/MouseHandler.js} +12 -36
- package/lib/js/input/TouchHandler.d.ts +11 -0
- package/{src/input/TouchHandler.ts → lib/js/input/TouchHandler.js} +11 -23
- package/lib/js/input/input.d.ts +3 -0
- package/{src/input/input.ts → lib/js/input/input.js} +1 -1
- package/lib/js/layer/BaseGeoImage.d.ts +145 -0
- package/{src/layer/BaseGeoImage.ts → lib/js/layer/BaseGeoImage.js} +70 -235
- package/lib/js/layer/CanvasTiles.d.ts +103 -0
- package/{src/layer/CanvasTiles.ts → lib/js/layer/CanvasTiles.js} +54 -146
- package/lib/js/layer/GeoImage.d.ts +61 -0
- package/{src/layer/GeoImage.ts → lib/js/layer/GeoImage.js} +24 -54
- package/lib/js/layer/GeoTexture2d.d.ts +17 -0
- package/lib/js/layer/GeoTexture2d.js +37 -0
- package/lib/js/layer/GeoVideo.d.ts +68 -0
- package/{src/layer/GeoVideo.ts → lib/js/layer/GeoVideo.js} +31 -61
- package/lib/js/layer/KML.d.ts +72 -0
- package/{src/layer/KML.ts → lib/js/layer/KML.js} +94 -138
- package/lib/js/layer/Layer.d.ts +401 -0
- package/{src/layer/Layer.ts → lib/js/layer/Layer.js} +92 -443
- package/lib/js/layer/Material.d.ts +34 -0
- package/{src/layer/Material.ts → lib/js/layer/Material.js} +9 -43
- package/lib/js/layer/Vector.d.ts +243 -0
- package/{src/layer/Vector.ts → lib/js/layer/Vector.js} +155 -426
- package/lib/js/layer/WMS.d.ts +75 -0
- package/{src/layer/WMS.ts → lib/js/layer/WMS.js} +18 -100
- package/lib/js/layer/XYZ.d.ts +149 -0
- package/{src/layer/XYZ.ts → lib/js/layer/XYZ.js} +71 -171
- package/lib/js/layer/index.d.ts +11 -0
- package/lib/js/layer/index.js +11 -0
- package/lib/js/light/LightSource.d.ts +174 -0
- package/{src/light/LightSource.ts → lib/js/light/LightSource.js} +22 -131
- package/lib/js/math/Line2.d.ts +11 -0
- package/{src/math/Line2.ts → lib/js/math/Line2.js} +5 -15
- package/lib/js/math/Line3.d.ts +28 -0
- package/lib/js/math/Line3.js +85 -0
- package/lib/js/math/Mat3.d.ts +77 -0
- package/{src/math/Mat3.ts → lib/js/math/Mat3.js} +22 -51
- package/lib/js/math/Mat4.d.ts +195 -0
- package/{src/math/Mat4.ts → lib/js/math/Mat4.js} +53 -219
- package/lib/js/math/Plane.d.ts +20 -0
- package/{src/math/Plane.ts → lib/js/math/Plane.js} +26 -40
- package/lib/js/math/Quat.d.ts +373 -0
- package/{src/math/Quat.ts → lib/js/math/Quat.js} +106 -319
- package/lib/js/math/Ray.d.ts +76 -0
- package/{src/math/Ray.ts → lib/js/math/Ray.js} +21 -66
- package/lib/js/math/Vec2.d.ts +310 -0
- package/{src/math/Vec2.ts → lib/js/math/Vec2.js} +55 -121
- package/lib/js/math/Vec3.d.ts +472 -0
- package/{src/math/Vec3.ts → lib/js/math/Vec3.js} +103 -236
- package/lib/js/math/Vec4.d.ts +163 -0
- package/{src/math/Vec4.ts → lib/js/math/Vec4.js} +23 -79
- package/lib/js/math/coder.d.ts +51 -0
- package/{src/math/coder.ts → lib/js/math/coder.js} +14 -20
- package/lib/js/math/index.d.ts +11 -0
- package/lib/js/math/index.js +11 -0
- package/lib/js/math.d.ts +266 -0
- package/{src/math.ts → lib/js/math.js} +37 -85
- package/lib/js/mercator.d.ts +92 -0
- package/{src/mercator.ts → lib/js/mercator.js} +13 -37
- package/lib/js/proj/EPSG3857.d.ts +9 -0
- package/{src/proj/EPSG3857.ts → lib/js/proj/EPSG3857.js} +0 -2
- package/lib/js/proj/EPSG4326.d.ts +9 -0
- package/{src/proj/EPSG4326.ts → lib/js/proj/EPSG4326.js} +0 -2
- package/lib/js/proj/Proj.d.ts +43 -0
- package/{src/proj/Proj.ts → lib/js/proj/Proj.js} +4 -29
- package/lib/js/quadTree/EPSG4326QuadTreeStrategy.d.ts +6 -0
- package/lib/js/quadTree/EPSG4326QuadTreeStrategy.js +17 -0
- package/lib/js/quadTree/EarthQuadTreeStrategy.d.ts +6 -0
- package/lib/js/quadTree/EarthQuadTreeStrategy.js +19 -0
- package/lib/js/quadTree/EntityCollectionNode.d.ts +54 -0
- package/{src/quadTree/EntityCollectionNode.ts → lib/js/quadTree/EntityCollectionNode.js} +83 -150
- package/lib/js/quadTree/MarsQuadTreeStrategy.d.ts +6 -0
- package/lib/js/quadTree/MarsQuadTreeStrategy.js +17 -0
- package/lib/js/quadTree/Node.d.ts +61 -0
- package/{src/quadTree/Node.ts → lib/js/quadTree/Node.js} +140 -357
- package/lib/js/quadTree/QuadTreeStrategy.d.ts +25 -0
- package/{src/quadTree/QuadTreeStrategy.ts → lib/js/quadTree/QuadTreeStrategy.js} +13 -44
- package/lib/js/quadTree/Wgs84QuadTreeStrategy.d.ts +6 -0
- package/lib/js/quadTree/Wgs84QuadTreeStrategy.js +15 -0
- package/lib/js/quadTree/index.d.ts +12 -0
- package/lib/js/quadTree/index.js +12 -0
- package/lib/js/quadTree/quadTree.d.ts +40 -0
- package/{src/quadTree/quadTree.ts → lib/js/quadTree/quadTree.js} +0 -9
- package/lib/js/renderer/Renderer.d.ts +320 -0
- package/{src/renderer/Renderer.ts → lib/js/renderer/Renderer.js} +265 -622
- package/lib/js/renderer/RendererEvents.d.ts +239 -0
- package/{src/renderer/RendererEvents.ts → lib/js/renderer/RendererEvents.js} +158 -472
- package/lib/js/scene/Axes.d.ts +12 -0
- package/lib/js/scene/Axes.js +59 -0
- package/lib/js/scene/BaseNode.d.ts +61 -0
- package/{src/scene/BaseNode.ts → lib/js/scene/BaseNode.js} +11 -57
- package/lib/js/scene/Planet.d.ts +623 -0
- package/{src/scene/Planet.ts → lib/js/scene/Planet.js} +257 -937
- package/lib/js/scene/RenderNode.d.ts +150 -0
- package/{src/scene/RenderNode.ts → lib/js/scene/RenderNode.js} +33 -138
- package/lib/js/scene/SkyBox.d.ts +13 -0
- package/{src/scene/SkyBox.ts → lib/js/scene/SkyBox.js} +16 -37
- package/{src/scene/index.ts → lib/js/scene/index.d.ts} +0 -1
- package/lib/js/scene/index.js +5 -0
- package/lib/js/segment/Segment.d.ts +278 -0
- package/{src/segment/Segment.ts → lib/js/segment/Segment.js} +242 -913
- package/lib/js/segment/SegmentLonLat.d.ts +48 -0
- package/{src/segment/SegmentLonLat.ts → lib/js/segment/SegmentLonLat.js} +58 -132
- package/lib/js/segment/SegmentLonLatWgs84.d.ts +10 -0
- package/lib/js/segment/SegmentLonLatWgs84.js +23 -0
- package/lib/js/segment/Slice.d.ts +13 -0
- package/{src/segment/Slice.ts → lib/js/segment/Slice.js} +4 -22
- package/lib/js/segment/segmentHelper.d.ts +18 -0
- package/{src/segment/segmentHelper.ts → lib/js/segment/segmentHelper.js} +30 -88
- package/lib/js/shaders/atmos.d.ts +4 -0
- package/{src/shaders/atmos.ts → lib/js/shaders/atmos.js} +8 -26
- package/lib/js/shaders/billboard.d.ts +3 -0
- package/{src/shaders/billboard.ts → lib/js/shaders/billboard.js} +9 -18
- package/lib/js/shaders/bloom.d.ts +2 -0
- package/{src/shaders/bloom.ts → lib/js/shaders/bloom.js} +5 -8
- package/lib/js/shaders/blur.d.ts +3 -0
- package/{src/shaders/blur.ts → lib/js/shaders/blur.js} +11 -19
- package/lib/js/shaders/depth.d.ts +2 -0
- package/{src/shaders/depth.ts → lib/js/shaders/depth.js} +3 -6
- package/lib/js/shaders/drawnode.d.ts +8 -0
- package/{src/shaders/drawnode.ts → lib/js/shaders/drawnode.js} +23 -75
- package/lib/js/shaders/geoObject.d.ts +3 -0
- package/{src/shaders/geoObject.ts → lib/js/shaders/geoObject.js} +51 -63
- package/lib/js/shaders/label.d.ts +4 -0
- package/{src/shaders/label.ts → lib/js/shaders/label.js} +12 -25
- package/lib/js/shaders/lumFilter.d.ts +2 -0
- package/{src/shaders/lumFilter.ts → lib/js/shaders/lumFilter.js} +4 -7
- package/lib/js/shaders/pickingMask.d.ts +2 -0
- package/{src/shaders/pickingMask.ts → lib/js/shaders/pickingMask.js} +5 -8
- package/lib/js/shaders/pointCloud.d.ts +2 -0
- package/{src/shaders/pointCloud.ts → lib/js/shaders/pointCloud.js} +4 -7
- package/lib/js/shaders/polyline.d.ts +3 -0
- package/{src/shaders/polyline.ts → lib/js/shaders/polyline.js} +7 -22
- package/lib/js/shaders/ray.d.ts +2 -0
- package/{src/shaders/ray.ts → lib/js/shaders/ray.js} +4 -7
- package/lib/js/shaders/screenFrame.d.ts +2 -0
- package/{src/shaders/screenFrame.ts → lib/js/shaders/screenFrame.js} +5 -8
- package/lib/js/shaders/skybox.d.ts +2 -0
- package/{src/shaders/skybox.ts → lib/js/shaders/skybox.js} +10 -13
- package/lib/js/shaders/toneMapping.d.ts +2 -0
- package/{src/shaders/toneMapping.ts → lib/js/shaders/toneMapping.js} +5 -8
- package/lib/js/shaders/utils.d.ts +1 -0
- package/{src/shaders/utils.ts → lib/js/shaders/utils.js} +1 -1
- package/lib/js/terrain/BilTerrain.d.ts +18 -0
- package/{src/terrain/BilTerrain.ts → lib/js/terrain/BilTerrain.js} +21 -118
- package/lib/js/terrain/EmptyTerrain.d.ts +106 -0
- package/{src/terrain/EmptyTerrain.ts → lib/js/terrain/EmptyTerrain.js} +20 -144
- package/lib/js/terrain/Geoid.d.ts +33 -0
- package/lib/js/terrain/Geoid.js +191 -0
- package/lib/js/terrain/GlobusTerrain.d.ts +134 -0
- package/{src/terrain/GlobusTerrain.ts → lib/js/terrain/GlobusTerrain.js} +84 -241
- package/lib/js/terrain/MapboxTerrain.d.ts +21 -0
- package/{src/terrain/MapboxTerrain.ts → lib/js/terrain/MapboxTerrain.js} +46 -215
- package/{src/terrain/index.ts → lib/js/terrain/index.d.ts} +0 -1
- package/lib/js/terrain/index.js +5 -0
- package/lib/js/ui/Button.d.ts +32 -0
- package/lib/js/ui/Button.js +78 -0
- package/lib/js/ui/ButtonGroup.d.ts +16 -0
- package/lib/js/ui/ButtonGroup.js +41 -0
- package/lib/js/ui/Dialog.d.ts +55 -0
- package/lib/js/ui/Dialog.js +173 -0
- package/lib/js/ui/Slider.d.ts +38 -0
- package/lib/js/ui/Slider.js +129 -0
- package/lib/js/ui/ToggleButton.d.ts +20 -0
- package/lib/js/ui/ToggleButton.js +42 -0
- package/lib/js/ui/View.d.ts +37 -0
- package/{src/ui/View.ts → lib/js/ui/View.js} +31 -77
- package/lib/js/ui/icons.d.ts +1 -0
- package/{src/ui/icons.ts → lib/js/ui/icons.js} +1 -1
- package/lib/js/utils/BaseWorker.d.ts +14 -0
- package/{src/utils/BaseWorker.ts → lib/js/utils/BaseWorker.js} +15 -28
- package/lib/js/utils/FontAtlas.d.ts +82 -0
- package/{src/utils/FontAtlas.ts → lib/js/utils/FontAtlas.js} +46 -182
- package/lib/js/utils/GeoImageCreator.d.ts +34 -0
- package/{src/utils/GeoImageCreator.ts → lib/js/utils/GeoImageCreator.js} +34 -91
- package/lib/js/utils/ImagesCacheManager.d.ts +22 -0
- package/{src/utils/ImagesCacheManager.ts → lib/js/utils/ImagesCacheManager.js} +16 -38
- package/lib/js/utils/Loader.d.ts +63 -0
- package/lib/js/utils/Loader.js +156 -0
- package/lib/js/utils/NormalMapCreator.d.ts +52 -0
- package/{src/utils/NormalMapCreator.ts → lib/js/utils/NormalMapCreator.js} +64 -195
- package/lib/js/utils/PlainSegmentWorker.d.ts +24 -0
- package/{src/utils/PlainSegmentWorker.ts → lib/js/utils/PlainSegmentWorker.js} +24 -56
- package/lib/js/utils/TerrainWorker.d.ts +28 -0
- package/{src/utils/TerrainWorker.ts → lib/js/utils/TerrainWorker.js} +19 -56
- package/lib/js/utils/TextureAtlas.d.ts +113 -0
- package/{src/utils/TextureAtlas.ts → lib/js/utils/TextureAtlas.js} +40 -131
- package/lib/js/utils/VectorTileCreator.d.ts +18 -0
- package/{src/utils/VectorTileCreator.ts → lib/js/utils/VectorTileCreator.js} +61 -147
- package/lib/js/utils/colorTable.d.ts +3 -0
- package/{src/utils/colorTable.ts → lib/js/utils/colorTable.js} +2 -2
- package/lib/js/utils/earcut.d.ts +7 -0
- package/{src/utils/earcut.ts → lib/js/utils/earcut.js} +95 -223
- package/lib/js/utils/objParser.d.ts +24 -0
- package/{src/utils/objParser.ts → lib/js/utils/objParser.js} +38 -93
- package/lib/js/utils/shared.d.ts +267 -0
- package/{src/utils/shared.ts → lib/js/utils/shared.js} +185 -342
- package/lib/js/utils/units.d.ts +16 -0
- package/lib/js/utils/units.js +61 -0
- package/lib/js/webgl/BaseFramebuffer.d.ts +53 -0
- package/{src/webgl/BaseFramebuffer.ts → lib/js/webgl/BaseFramebuffer.js} +22 -59
- package/lib/js/webgl/Framebuffer.d.ts +69 -0
- package/{src/webgl/Framebuffer.ts → lib/js/webgl/Framebuffer.js} +30 -87
- package/lib/js/webgl/Handler.d.ts +473 -0
- package/{src/webgl/Handler.ts → lib/js/webgl/Handler.js} +175 -586
- package/lib/js/webgl/Multisample.d.ts +27 -0
- package/lib/js/webgl/Multisample.js +77 -0
- package/lib/js/webgl/Program.d.ts +159 -0
- package/{src/webgl/Program.ts → lib/js/webgl/Program.js} +73 -210
- package/lib/js/webgl/ProgramController.d.ts +86 -0
- package/{src/webgl/ProgramController.ts → lib/js/webgl/ProgramController.js} +11 -45
- package/{src/webgl/index.ts → lib/js/webgl/index.d.ts} +1 -8
- package/lib/js/webgl/index.js +6 -0
- package/lib/js/webgl/types.d.ts +9 -0
- package/{src/webgl/types.ts → lib/js/webgl/types.js} +5 -8
- package/lib/js/webgl/variableHandlers.d.ts +22 -0
- package/lib/js/webgl/variableHandlers.js +78 -0
- package/package.json +23 -34
- package/dist/@openglobus/og.esm.js +0 -2
- package/dist/@openglobus/og.esm.js.map +0 -1
- package/dist/@openglobus/og.umd.js +0 -2
- package/dist/@openglobus/og.umd.js.map +0 -1
- package/src/Deferred.ts +0 -17
- package/src/control/MouseWheelZoomControl.ts +0 -269
- package/src/control/ScaleControl.ts +0 -131
- package/src/control/SegmentBoundVisualization.ts +0 -50
- package/src/control/ShowFps.ts +0 -28
- package/src/control/ToggleWireframe.ts +0 -35
- package/src/control/ruler/Ruler.ts +0 -35
- package/src/control/ruler/RulerScene.ts +0 -437
- package/src/control/timeline/timelineUtils.ts +0 -133
- package/src/ellipsoid/index.ts +0 -4
- package/src/entity/Geometry.ts +0 -486
- package/src/index.ts +0 -173
- package/src/layer/GeoTexture2d.ts +0 -56
- package/src/layer/index.ts +0 -12
- package/src/math/Line3.ts +0 -162
- package/src/math/index.ts +0 -26
- package/src/quadTree/EPSG4326QuadTreeStrategy.ts +0 -24
- package/src/quadTree/EarthQuadTreeStrategy.ts +0 -28
- package/src/quadTree/MarsQuadTreeStrategy.ts +0 -25
- package/src/quadTree/Wgs84QuadTreeStrategy.ts +0 -22
- package/src/quadTree/index.ts +0 -14
- package/src/scene/Axes.ts +0 -78
- package/src/segment/SegmentLonLatWgs84.ts +0 -33
- package/src/terrain/Geoid.ts +0 -273
- package/src/ui/Button.ts +0 -121
- package/src/ui/ButtonGroup.ts +0 -63
- package/src/ui/Dialog.ts +0 -244
- package/src/ui/Slider.ts +0 -188
- package/src/ui/ToggleButton.ts +0 -68
- package/src/utils/Loader.ts +0 -247
- package/src/utils/units.ts +0 -78
- package/src/webgl/Multisample.ts +0 -153
- package/src/webgl/variableHandlers.ts +0 -114
- /package/{dist → lib}/@openglobus/og.css +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Karla-Bold.json +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Karla-Bold.ttf.cfg +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Karla-Bold.ttf.png +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Karla-Light.json +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Karla-Light.ttf.cfg +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Karla-Light.ttf.png +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Karla-Medium.json +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Karla-Medium.ttf.cfg +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Karla-Medium.ttf.png +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/NotoSansArabic-Regular.json +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/NotoSansArabic-Regular.ttf.cfg +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/NotoSansArabic-Regular.ttf.png +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Roboto-Regular.json +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Roboto-Regular.ttf.cfg +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Roboto-Regular.ttf.png +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/arial.js +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/arial.json +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/arial.ttf.cfg +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/arial.ttf.png +0 -0
- /package/{dist → lib}/@openglobus/res/night-4326.png +0 -0
- /package/{dist → lib}/@openglobus/res/night.png +0 -0
- /package/{dist → lib}/@openglobus/res/spec.png +0 -0
|
@@ -0,0 +1,222 @@
|
|
|
1
|
+
import { Entity } from "./Entity";
|
|
2
|
+
import { NumberArray2, Vec2 } from "../math/Vec2";
|
|
3
|
+
import { NumberArray3, Vec3 } from "../math/Vec3";
|
|
4
|
+
import { NumberArray4, Vec4 } from "../math/Vec4";
|
|
5
|
+
import { BaseBillboardHandler } from "./BaseBillboardHandler";
|
|
6
|
+
export interface IBaseBillboardParams {
|
|
7
|
+
position?: NumberArray3 | Vec3;
|
|
8
|
+
rotation?: number;
|
|
9
|
+
color?: string | NumberArray4 | Vec4;
|
|
10
|
+
alignedAxis?: NumberArray3 | Vec3;
|
|
11
|
+
offset?: NumberArray2 | NumberArray3 | Vec2 | Vec3;
|
|
12
|
+
visibility?: boolean;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Base prototype for billboard and label classes.
|
|
16
|
+
* @class
|
|
17
|
+
* @param {Object} [options] - Options:
|
|
18
|
+
* @param {Vec3|Array.<number>} [options.position] - Billboard position.
|
|
19
|
+
* @param {number} [options.rotation] - Screen angle rotation.
|
|
20
|
+
* @param {Vec4|string|Array.<number>} [options.color] - Billboard color.
|
|
21
|
+
* @param {Vec3|Array.<number>} [options.alignedAxis] - Billboard aligned vector.
|
|
22
|
+
* @param {Vec3|Array.<number>} [options.offset] - Billboard center screen offset.
|
|
23
|
+
* @param {boolean} [options.visibility] - Visibility.
|
|
24
|
+
*/
|
|
25
|
+
declare class BaseBillboard {
|
|
26
|
+
static __counter__: number;
|
|
27
|
+
__id: number;
|
|
28
|
+
/**
|
|
29
|
+
* Billboard center cartesian position.
|
|
30
|
+
* @protected
|
|
31
|
+
* @type {Vec3}
|
|
32
|
+
*/
|
|
33
|
+
protected _position: Vec3;
|
|
34
|
+
_positionHigh: Vec3;
|
|
35
|
+
_positionLow: Vec3;
|
|
36
|
+
/**
|
|
37
|
+
* Screen space rotation angle.
|
|
38
|
+
* @public
|
|
39
|
+
* @type {number}
|
|
40
|
+
*/
|
|
41
|
+
_rotation: number;
|
|
42
|
+
/**
|
|
43
|
+
* RGBA color.
|
|
44
|
+
* @public
|
|
45
|
+
* @type {Vec4}
|
|
46
|
+
*/
|
|
47
|
+
_color: Vec4;
|
|
48
|
+
/**
|
|
49
|
+
* Cartesian aligned axis vector.
|
|
50
|
+
* @protected
|
|
51
|
+
* @type {Vec3}
|
|
52
|
+
*/
|
|
53
|
+
protected _alignedAxis: Vec3;
|
|
54
|
+
/**
|
|
55
|
+
* Billboard center screen space offset. Where x,y - screen space offset and z - depth offset.
|
|
56
|
+
* @public
|
|
57
|
+
* @type {Vec3}
|
|
58
|
+
*/
|
|
59
|
+
_offset: Vec3;
|
|
60
|
+
/**
|
|
61
|
+
* Billboard visibility.
|
|
62
|
+
* @protected
|
|
63
|
+
* @type {boolean}
|
|
64
|
+
*/
|
|
65
|
+
protected _visibility: boolean;
|
|
66
|
+
/**
|
|
67
|
+
* Entity instance that holds this billboard.
|
|
68
|
+
* @public
|
|
69
|
+
* @type {Entity}
|
|
70
|
+
*/
|
|
71
|
+
_entity: Entity | null;
|
|
72
|
+
/**
|
|
73
|
+
* Handler that stores and renders this billboard object.
|
|
74
|
+
* @public
|
|
75
|
+
* @type {BillboardHandler | null}
|
|
76
|
+
*/
|
|
77
|
+
_handler: BaseBillboardHandler | null;
|
|
78
|
+
/**
|
|
79
|
+
* Billboard handler array index.
|
|
80
|
+
* @public
|
|
81
|
+
* @type {number}
|
|
82
|
+
*/
|
|
83
|
+
_handlerIndex: number;
|
|
84
|
+
/**
|
|
85
|
+
* An indication that the object is ready to draw
|
|
86
|
+
* @public
|
|
87
|
+
* @type {number}
|
|
88
|
+
*/
|
|
89
|
+
_isReady: boolean;
|
|
90
|
+
_lockId: number;
|
|
91
|
+
constructor(options?: IBaseBillboardParams);
|
|
92
|
+
/**
|
|
93
|
+
* Sets billboard position.
|
|
94
|
+
* @public
|
|
95
|
+
* @param {number} x - X coordinate.
|
|
96
|
+
* @param {number} y - Y coordinate.
|
|
97
|
+
* @param {number} z - Z coordinate.
|
|
98
|
+
*/
|
|
99
|
+
setPosition(x: number, y: number, z: number): void;
|
|
100
|
+
/**
|
|
101
|
+
* Sets billboard position.
|
|
102
|
+
* @public
|
|
103
|
+
* @param {Vec3} position - Cartesian coordinates.
|
|
104
|
+
*/
|
|
105
|
+
setPosition3v(position: Vec3): void;
|
|
106
|
+
/**
|
|
107
|
+
* Returns billboard position.
|
|
108
|
+
* @public
|
|
109
|
+
* @returns {Vec3}
|
|
110
|
+
*/
|
|
111
|
+
getPosition(): Vec3;
|
|
112
|
+
/**
|
|
113
|
+
* Sets screen space offset.
|
|
114
|
+
* @public
|
|
115
|
+
* @param {number} x - X offset.
|
|
116
|
+
* @param {number} y - Y offset.
|
|
117
|
+
* @param {number} [z] - Z offset.
|
|
118
|
+
*/
|
|
119
|
+
setOffset(x: number, y: number, z?: number): void;
|
|
120
|
+
/**
|
|
121
|
+
* Sets screen space offset.
|
|
122
|
+
* @public
|
|
123
|
+
* @param {Vec2} offset - Offset size.
|
|
124
|
+
*/
|
|
125
|
+
setOffset3v(offset: Vec3): void;
|
|
126
|
+
/**
|
|
127
|
+
* Returns billboard screen space offset size.
|
|
128
|
+
* @public
|
|
129
|
+
* @returns {Vec3}
|
|
130
|
+
*/
|
|
131
|
+
getOffset(): Vec3;
|
|
132
|
+
/**
|
|
133
|
+
* Sets billboard screen space rotation in radians.
|
|
134
|
+
* @public
|
|
135
|
+
* @param {number} rotation - Screen space rotation in radians.
|
|
136
|
+
*/
|
|
137
|
+
setRotation(rotation: number): void;
|
|
138
|
+
/**
|
|
139
|
+
* Gets screen space rotation.
|
|
140
|
+
* @public
|
|
141
|
+
* @returns {number}
|
|
142
|
+
*/
|
|
143
|
+
getRotation(): number;
|
|
144
|
+
/**
|
|
145
|
+
* Sets billboard opacity.
|
|
146
|
+
* @public
|
|
147
|
+
* @param {number} a - Billboard opacity.
|
|
148
|
+
*/
|
|
149
|
+
setOpacity(a: number): void;
|
|
150
|
+
/**
|
|
151
|
+
* Sets RGBA color. Each channel from 0.0 to 1.0.
|
|
152
|
+
* @public
|
|
153
|
+
* @param {number} r - Red.
|
|
154
|
+
* @param {number} g - Green.
|
|
155
|
+
* @param {number} b - Blue.
|
|
156
|
+
* @param {number} a - Alpha.
|
|
157
|
+
*/
|
|
158
|
+
setColor(r: number, g: number, b: number, a?: number): void;
|
|
159
|
+
/**
|
|
160
|
+
* Sets RGBA color. Each channel from 0.0 to 1.0.
|
|
161
|
+
* @public
|
|
162
|
+
* @param {Vec4} color - RGBA vector.
|
|
163
|
+
*/
|
|
164
|
+
setColor4v(color: Vec4): void;
|
|
165
|
+
/**
|
|
166
|
+
* Sets billboard color.
|
|
167
|
+
* @public
|
|
168
|
+
* @param {string} color - HTML style color.
|
|
169
|
+
*/
|
|
170
|
+
setColorHTML(color: string): void;
|
|
171
|
+
/**
|
|
172
|
+
* Returns RGBA color.
|
|
173
|
+
* @public
|
|
174
|
+
* @returns {Vec4}
|
|
175
|
+
*/
|
|
176
|
+
getColor(): Vec4;
|
|
177
|
+
/**
|
|
178
|
+
* Sets billboard visibility.
|
|
179
|
+
* @public
|
|
180
|
+
* @param {boolean} visibility - Visibility flag.
|
|
181
|
+
*/
|
|
182
|
+
setVisibility(visibility: boolean): void;
|
|
183
|
+
/**
|
|
184
|
+
* Returns billboard visibility.
|
|
185
|
+
* @public
|
|
186
|
+
* @returns {boolean}
|
|
187
|
+
*/
|
|
188
|
+
getVisibility(): boolean;
|
|
189
|
+
/**
|
|
190
|
+
* Sets billboard cartesian aligned vector.
|
|
191
|
+
* @public
|
|
192
|
+
* @param {number} x - Aligned vector X coordinate.
|
|
193
|
+
* @param {number} y - Aligned vector Y coordinate.
|
|
194
|
+
* @param {number} z - Aligned vector Z coordinate.
|
|
195
|
+
*/
|
|
196
|
+
setAlignedAxis(x: number, y: number, z: number): void;
|
|
197
|
+
/**
|
|
198
|
+
* Sets billboard aligned vector.
|
|
199
|
+
* @public
|
|
200
|
+
* @param {Vec3} alignedAxis - Align direction.
|
|
201
|
+
*/
|
|
202
|
+
setAlignedAxis3v(alignedAxis: Vec3): void;
|
|
203
|
+
/**
|
|
204
|
+
* Returns aligned vector.
|
|
205
|
+
* @public
|
|
206
|
+
* @returns {Vec3}
|
|
207
|
+
*/
|
|
208
|
+
getAlignedAxis(): Vec3;
|
|
209
|
+
/**
|
|
210
|
+
* Removes billboard from handler.
|
|
211
|
+
* @public
|
|
212
|
+
*/
|
|
213
|
+
remove(): void;
|
|
214
|
+
/**
|
|
215
|
+
* Sets billboard picking color.
|
|
216
|
+
* @public
|
|
217
|
+
* @param {Vec3} color - Picking color.
|
|
218
|
+
*/
|
|
219
|
+
setPickingColor3v(color: Vec3): void;
|
|
220
|
+
serializeWorkerData(workerId: number): Float32Array | null;
|
|
221
|
+
}
|
|
222
|
+
export { BaseBillboard };
|
|
@@ -1,20 +1,6 @@
|
|
|
1
1
|
import * as utils from "../utils/shared";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {NumberArray2, Vec2} from "../math/Vec2";
|
|
5
|
-
import {NumberArray3, Vec3} from "../math/Vec3";
|
|
6
|
-
import {NumberArray4, Vec4} from "../math/Vec4";
|
|
7
|
-
import {BaseBillboardHandler} from "./BaseBillboardHandler";
|
|
8
|
-
|
|
9
|
-
export interface IBaseBillboardParams {
|
|
10
|
-
position?: NumberArray3 | Vec3;
|
|
11
|
-
rotation?: number;
|
|
12
|
-
color?: string | NumberArray4 | Vec4;
|
|
13
|
-
alignedAxis?: NumberArray3 | Vec3;
|
|
14
|
-
offset?: NumberArray2 | NumberArray3 | Vec2 | Vec3;
|
|
15
|
-
visibility?: boolean;
|
|
16
|
-
}
|
|
17
|
-
|
|
2
|
+
import { LOCK_FREE, LOCK_UPDATE } from "./LabelWorker";
|
|
3
|
+
import { Vec3 } from "../math/Vec3";
|
|
18
4
|
/**
|
|
19
5
|
* Base prototype for billboard and label classes.
|
|
20
6
|
* @class
|
|
@@ -27,118 +13,23 @@ export interface IBaseBillboardParams {
|
|
|
27
13
|
* @param {boolean} [options.visibility] - Visibility.
|
|
28
14
|
*/
|
|
29
15
|
class BaseBillboard {
|
|
30
|
-
|
|
31
|
-
public __id: number;
|
|
32
|
-
|
|
33
|
-
/**
|
|
34
|
-
* Billboard center cartesian position.
|
|
35
|
-
* @protected
|
|
36
|
-
* @type {Vec3}
|
|
37
|
-
*/
|
|
38
|
-
protected _position: Vec3;
|
|
39
|
-
|
|
40
|
-
public _positionHigh: Vec3;
|
|
41
|
-
|
|
42
|
-
public _positionLow: Vec3;
|
|
43
|
-
|
|
44
|
-
/**
|
|
45
|
-
* Screen space rotation angle.
|
|
46
|
-
* @public
|
|
47
|
-
* @type {number}
|
|
48
|
-
*/
|
|
49
|
-
public _rotation: number;
|
|
50
|
-
|
|
51
|
-
/**
|
|
52
|
-
* RGBA color.
|
|
53
|
-
* @public
|
|
54
|
-
* @type {Vec4}
|
|
55
|
-
*/
|
|
56
|
-
public _color: Vec4;
|
|
57
|
-
|
|
58
|
-
/**
|
|
59
|
-
* Cartesian aligned axis vector.
|
|
60
|
-
* @protected
|
|
61
|
-
* @type {Vec3}
|
|
62
|
-
*/
|
|
63
|
-
protected _alignedAxis: Vec3;
|
|
64
|
-
|
|
65
|
-
/**
|
|
66
|
-
* Billboard center screen space offset. Where x,y - screen space offset and z - depth offset.
|
|
67
|
-
* @public
|
|
68
|
-
* @type {Vec3}
|
|
69
|
-
*/
|
|
70
|
-
public _offset: Vec3;
|
|
71
|
-
|
|
72
|
-
/**
|
|
73
|
-
* Billboard visibility.
|
|
74
|
-
* @protected
|
|
75
|
-
* @type {boolean}
|
|
76
|
-
*/
|
|
77
|
-
protected _visibility: boolean;
|
|
78
|
-
|
|
79
|
-
/**
|
|
80
|
-
* Entity instance that holds this billboard.
|
|
81
|
-
* @public
|
|
82
|
-
* @type {Entity}
|
|
83
|
-
*/
|
|
84
|
-
public _entity: Entity | null;
|
|
85
|
-
|
|
86
|
-
/**
|
|
87
|
-
* Handler that stores and renders this billboard object.
|
|
88
|
-
* @public
|
|
89
|
-
* @type {BillboardHandler | null}
|
|
90
|
-
*/
|
|
91
|
-
public _handler: BaseBillboardHandler | null;
|
|
92
|
-
|
|
93
|
-
/**
|
|
94
|
-
* Billboard handler array index.
|
|
95
|
-
* @public
|
|
96
|
-
* @type {number}
|
|
97
|
-
*/
|
|
98
|
-
public _handlerIndex: number;
|
|
99
|
-
|
|
100
|
-
/**
|
|
101
|
-
* An indication that the object is ready to draw
|
|
102
|
-
* @public
|
|
103
|
-
* @type {number}
|
|
104
|
-
*/
|
|
105
|
-
public _isReady: boolean;
|
|
106
|
-
|
|
107
|
-
public _lockId: number;
|
|
108
|
-
|
|
109
|
-
constructor(options: IBaseBillboardParams = {}) {
|
|
110
|
-
|
|
16
|
+
constructor(options = {}) {
|
|
111
17
|
this.__id = BaseBillboard.__counter__++;
|
|
112
|
-
|
|
113
18
|
this._position = utils.createVector3(options.position);
|
|
114
|
-
|
|
115
19
|
this._positionHigh = new Vec3();
|
|
116
|
-
|
|
117
20
|
this._positionLow = new Vec3();
|
|
118
|
-
|
|
119
21
|
Vec3.doubleToTwoFloats(this._position, this._positionHigh, this._positionLow);
|
|
120
|
-
|
|
121
22
|
this._rotation = options.rotation || 0;
|
|
122
|
-
|
|
123
23
|
this._color = utils.createColorRGBA(options.color);
|
|
124
|
-
|
|
125
24
|
this._alignedAxis = utils.createVector3(options.alignedAxis);
|
|
126
|
-
|
|
127
25
|
this._offset = utils.createVector3(options.offset);
|
|
128
|
-
|
|
129
26
|
this._visibility = options.visibility != undefined ? options.visibility : true;
|
|
130
|
-
|
|
131
27
|
this._entity = null;
|
|
132
|
-
|
|
133
28
|
this._handler = null;
|
|
134
|
-
|
|
135
29
|
this._handlerIndex = -1;
|
|
136
|
-
|
|
137
30
|
this._isReady = false;
|
|
138
|
-
|
|
139
31
|
this._lockId = LOCK_FREE;
|
|
140
32
|
}
|
|
141
|
-
|
|
142
33
|
/**
|
|
143
34
|
* Sets billboard position.
|
|
144
35
|
* @public
|
|
@@ -146,44 +37,43 @@ class BaseBillboard {
|
|
|
146
37
|
* @param {number} y - Y coordinate.
|
|
147
38
|
* @param {number} z - Z coordinate.
|
|
148
39
|
*/
|
|
149
|
-
|
|
40
|
+
setPosition(x, y, z) {
|
|
150
41
|
this._position.x = x;
|
|
151
42
|
this._position.y = y;
|
|
152
43
|
this._position.z = z;
|
|
153
44
|
Vec3.doubleToTwoFloats(this._position, this._positionHigh, this._positionLow);
|
|
154
45
|
if (this._isReady && this._handler) {
|
|
155
46
|
this._handler.setPositionArr(this._handlerIndex, this._positionHigh, this._positionLow);
|
|
156
|
-
}
|
|
47
|
+
}
|
|
48
|
+
else if (this._lockId !== LOCK_FREE) {
|
|
157
49
|
this._lockId = LOCK_UPDATE;
|
|
158
50
|
}
|
|
159
51
|
}
|
|
160
|
-
|
|
161
52
|
/**
|
|
162
53
|
* Sets billboard position.
|
|
163
54
|
* @public
|
|
164
55
|
* @param {Vec3} position - Cartesian coordinates.
|
|
165
56
|
*/
|
|
166
|
-
|
|
57
|
+
setPosition3v(position) {
|
|
167
58
|
this._position.x = position.x;
|
|
168
59
|
this._position.y = position.y;
|
|
169
60
|
this._position.z = position.z;
|
|
170
61
|
Vec3.doubleToTwoFloats(position, this._positionHigh, this._positionLow);
|
|
171
62
|
if (this._isReady && this._handler) {
|
|
172
63
|
this._handler.setPositionArr(this._handlerIndex, this._positionHigh, this._positionLow);
|
|
173
|
-
}
|
|
64
|
+
}
|
|
65
|
+
else if (this._lockId !== LOCK_FREE) {
|
|
174
66
|
this._lockId = LOCK_UPDATE;
|
|
175
67
|
}
|
|
176
68
|
}
|
|
177
|
-
|
|
178
69
|
/**
|
|
179
70
|
* Returns billboard position.
|
|
180
71
|
* @public
|
|
181
72
|
* @returns {Vec3}
|
|
182
73
|
*/
|
|
183
|
-
|
|
74
|
+
getPosition() {
|
|
184
75
|
return this._position;
|
|
185
76
|
}
|
|
186
|
-
|
|
187
77
|
/**
|
|
188
78
|
* Sets screen space offset.
|
|
189
79
|
* @public
|
|
@@ -191,76 +81,73 @@ class BaseBillboard {
|
|
|
191
81
|
* @param {number} y - Y offset.
|
|
192
82
|
* @param {number} [z] - Z offset.
|
|
193
83
|
*/
|
|
194
|
-
|
|
84
|
+
setOffset(x, y, z) {
|
|
195
85
|
this._offset.x = x;
|
|
196
86
|
this._offset.y = y;
|
|
197
87
|
z != undefined && (this._offset.z = z);
|
|
198
88
|
if (this._isReady && this._handler) {
|
|
199
89
|
this._handler.setOffsetArr(this._handlerIndex, this._offset);
|
|
200
|
-
}
|
|
90
|
+
}
|
|
91
|
+
else if (this._lockId !== LOCK_FREE) {
|
|
201
92
|
this._lockId = LOCK_UPDATE;
|
|
202
93
|
}
|
|
203
94
|
}
|
|
204
|
-
|
|
205
95
|
/**
|
|
206
96
|
* Sets screen space offset.
|
|
207
97
|
* @public
|
|
208
98
|
* @param {Vec2} offset - Offset size.
|
|
209
99
|
*/
|
|
210
|
-
|
|
100
|
+
setOffset3v(offset) {
|
|
211
101
|
this.setOffset(offset.x, offset.y, offset.z);
|
|
212
102
|
}
|
|
213
|
-
|
|
214
103
|
/**
|
|
215
104
|
* Returns billboard screen space offset size.
|
|
216
105
|
* @public
|
|
217
106
|
* @returns {Vec3}
|
|
218
107
|
*/
|
|
219
|
-
|
|
108
|
+
getOffset() {
|
|
220
109
|
return this._offset;
|
|
221
110
|
}
|
|
222
|
-
|
|
223
111
|
/**
|
|
224
112
|
* Sets billboard screen space rotation in radians.
|
|
225
113
|
* @public
|
|
226
114
|
* @param {number} rotation - Screen space rotation in radians.
|
|
227
115
|
*/
|
|
228
|
-
|
|
116
|
+
setRotation(rotation) {
|
|
229
117
|
if (rotation !== this._rotation) {
|
|
230
118
|
this._rotation = rotation;
|
|
231
119
|
if (this._isReady && this._handler) {
|
|
232
120
|
this._handler.setRotationArr(this._handlerIndex, rotation);
|
|
233
|
-
}
|
|
121
|
+
}
|
|
122
|
+
else if (this._lockId !== LOCK_FREE) {
|
|
234
123
|
this._lockId = LOCK_UPDATE;
|
|
235
124
|
}
|
|
236
125
|
}
|
|
237
126
|
}
|
|
238
|
-
|
|
239
127
|
/**
|
|
240
128
|
* Gets screen space rotation.
|
|
241
129
|
* @public
|
|
242
130
|
* @returns {number}
|
|
243
131
|
*/
|
|
244
|
-
|
|
132
|
+
getRotation() {
|
|
245
133
|
return this._rotation;
|
|
246
134
|
}
|
|
247
|
-
|
|
248
135
|
/**
|
|
249
136
|
* Sets billboard opacity.
|
|
250
137
|
* @public
|
|
251
138
|
* @param {number} a - Billboard opacity.
|
|
252
139
|
*/
|
|
253
|
-
|
|
140
|
+
setOpacity(a) {
|
|
254
141
|
if (a !== this._color.w) {
|
|
255
142
|
a != undefined && (this._color.w = a);
|
|
256
143
|
if (this._isReady && this._handler) {
|
|
257
144
|
this._handler.setRgbaArr(this._handlerIndex, this._color);
|
|
258
|
-
}
|
|
145
|
+
}
|
|
146
|
+
else if (this._lockId !== LOCK_FREE) {
|
|
259
147
|
this._lockId = LOCK_UPDATE;
|
|
260
148
|
}
|
|
261
149
|
}
|
|
262
150
|
}
|
|
263
|
-
|
|
264
151
|
/**
|
|
265
152
|
* Sets RGBA color. Each channel from 0.0 to 1.0.
|
|
266
153
|
* @public
|
|
@@ -269,7 +156,7 @@ class BaseBillboard {
|
|
|
269
156
|
* @param {number} b - Blue.
|
|
270
157
|
* @param {number} a - Alpha.
|
|
271
158
|
*/
|
|
272
|
-
|
|
159
|
+
setColor(r, g, b, a) {
|
|
273
160
|
if (a !== this._color.w || r !== this._color.x || g !== this._color.y || this._color.z !== b) {
|
|
274
161
|
this._color.x = r;
|
|
275
162
|
this._color.y = g;
|
|
@@ -277,64 +164,60 @@ class BaseBillboard {
|
|
|
277
164
|
a != undefined && (this._color.w = a);
|
|
278
165
|
if (this._isReady && this._handler) {
|
|
279
166
|
this._handler.setRgbaArr(this._handlerIndex, this._color);
|
|
280
|
-
}
|
|
167
|
+
}
|
|
168
|
+
else if (this._lockId !== LOCK_FREE) {
|
|
281
169
|
this._lockId = LOCK_UPDATE;
|
|
282
170
|
}
|
|
283
171
|
}
|
|
284
172
|
}
|
|
285
|
-
|
|
286
173
|
/**
|
|
287
174
|
* Sets RGBA color. Each channel from 0.0 to 1.0.
|
|
288
175
|
* @public
|
|
289
176
|
* @param {Vec4} color - RGBA vector.
|
|
290
177
|
*/
|
|
291
|
-
|
|
178
|
+
setColor4v(color) {
|
|
292
179
|
this.setColor(color.x, color.y, color.z, color.w);
|
|
293
180
|
}
|
|
294
|
-
|
|
295
181
|
/**
|
|
296
182
|
* Sets billboard color.
|
|
297
183
|
* @public
|
|
298
184
|
* @param {string} color - HTML style color.
|
|
299
185
|
*/
|
|
300
|
-
|
|
186
|
+
setColorHTML(color) {
|
|
301
187
|
this.setColor4v(utils.htmlColorToRgba(color));
|
|
302
188
|
}
|
|
303
|
-
|
|
304
189
|
/**
|
|
305
190
|
* Returns RGBA color.
|
|
306
191
|
* @public
|
|
307
192
|
* @returns {Vec4}
|
|
308
193
|
*/
|
|
309
|
-
|
|
194
|
+
getColor() {
|
|
310
195
|
return this._color;
|
|
311
196
|
}
|
|
312
|
-
|
|
313
197
|
/**
|
|
314
198
|
* Sets billboard visibility.
|
|
315
199
|
* @public
|
|
316
200
|
* @param {boolean} visibility - Visibility flag.
|
|
317
201
|
*/
|
|
318
|
-
|
|
202
|
+
setVisibility(visibility) {
|
|
319
203
|
if (visibility !== this._visibility) {
|
|
320
204
|
this._visibility = visibility;
|
|
321
205
|
if (this._isReady && this._handler) {
|
|
322
206
|
this._handler.setVisibility(this._handlerIndex, visibility);
|
|
323
|
-
}
|
|
207
|
+
}
|
|
208
|
+
else if (this._lockId !== LOCK_FREE) {
|
|
324
209
|
this._lockId = LOCK_UPDATE;
|
|
325
210
|
}
|
|
326
211
|
}
|
|
327
212
|
}
|
|
328
|
-
|
|
329
213
|
/**
|
|
330
214
|
* Returns billboard visibility.
|
|
331
215
|
* @public
|
|
332
216
|
* @returns {boolean}
|
|
333
217
|
*/
|
|
334
|
-
|
|
218
|
+
getVisibility() {
|
|
335
219
|
return this._visibility;
|
|
336
220
|
}
|
|
337
|
-
|
|
338
221
|
/**
|
|
339
222
|
* Sets billboard cartesian aligned vector.
|
|
340
223
|
* @public
|
|
@@ -342,60 +225,60 @@ class BaseBillboard {
|
|
|
342
225
|
* @param {number} y - Aligned vector Y coordinate.
|
|
343
226
|
* @param {number} z - Aligned vector Z coordinate.
|
|
344
227
|
*/
|
|
345
|
-
|
|
228
|
+
setAlignedAxis(x, y, z) {
|
|
346
229
|
this._alignedAxis.x = x;
|
|
347
230
|
this._alignedAxis.y = y;
|
|
348
231
|
this._alignedAxis.z = z;
|
|
349
232
|
if (this._isReady && this._handler) {
|
|
350
233
|
this._handler.setAlignedAxisArr(this._handlerIndex, this._alignedAxis);
|
|
351
|
-
}
|
|
234
|
+
}
|
|
235
|
+
else if (this._lockId !== LOCK_FREE) {
|
|
352
236
|
this._lockId = LOCK_UPDATE;
|
|
353
237
|
}
|
|
354
238
|
}
|
|
355
|
-
|
|
356
239
|
/**
|
|
357
240
|
* Sets billboard aligned vector.
|
|
358
241
|
* @public
|
|
359
242
|
* @param {Vec3} alignedAxis - Align direction.
|
|
360
243
|
*/
|
|
361
|
-
|
|
244
|
+
setAlignedAxis3v(alignedAxis) {
|
|
362
245
|
this.setAlignedAxis(alignedAxis.x, alignedAxis.y, alignedAxis.z);
|
|
363
246
|
}
|
|
364
|
-
|
|
365
247
|
/**
|
|
366
248
|
* Returns aligned vector.
|
|
367
249
|
* @public
|
|
368
250
|
* @returns {Vec3}
|
|
369
251
|
*/
|
|
370
|
-
|
|
252
|
+
getAlignedAxis() {
|
|
371
253
|
return this._alignedAxis;
|
|
372
254
|
}
|
|
373
|
-
|
|
374
255
|
/**
|
|
375
256
|
* Removes billboard from handler.
|
|
376
257
|
* @public
|
|
377
258
|
*/
|
|
378
|
-
|
|
259
|
+
remove() {
|
|
379
260
|
this._entity = null;
|
|
380
261
|
this._handler && this._handler.remove(this);
|
|
381
262
|
}
|
|
382
|
-
|
|
383
263
|
/**
|
|
384
264
|
* Sets billboard picking color.
|
|
385
265
|
* @public
|
|
386
266
|
* @param {Vec3} color - Picking color.
|
|
387
267
|
*/
|
|
388
|
-
|
|
268
|
+
setPickingColor3v(color) {
|
|
389
269
|
if (this._isReady && this._handler) {
|
|
390
270
|
this._handler.setPickingColorArr(this._handlerIndex, color);
|
|
391
|
-
}
|
|
271
|
+
}
|
|
272
|
+
else if (this._lockId !== LOCK_FREE) {
|
|
392
273
|
this._lockId = LOCK_UPDATE;
|
|
393
274
|
}
|
|
394
275
|
}
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
276
|
+
serializeWorkerData(workerId) {
|
|
277
|
+
if (this._handler) {
|
|
278
|
+
return new Float32Array([]);
|
|
279
|
+
}
|
|
280
|
+
return null;
|
|
398
281
|
}
|
|
399
282
|
}
|
|
400
|
-
|
|
401
|
-
export {BaseBillboard};
|
|
283
|
+
BaseBillboard.__counter__ = 0;
|
|
284
|
+
export { BaseBillboard };
|