@openglobus/og 0.18.0 → 0.18.1
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} +82 -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} +101 -373
- package/lib/js/entity/EntityCollection.d.ts +364 -0
- package/{src/entity/EntityCollection.ts → lib/js/entity/EntityCollection.js} +51 -353
- 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} +62 -164
- 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 +244 -0
- package/{src/layer/Vector.ts → lib/js/layer/Vector.js} +147 -418
- 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 +311 -0
- package/{src/renderer/Renderer.ts → lib/js/renderer/Renderer.js} +169 -611
- package/lib/js/renderer/RendererEvents.d.ts +237 -0
- package/{src/renderer/RendererEvents.ts → lib/js/renderer/RendererEvents.js} +134 -471
- 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} +251 -935
- 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} +82 -239
- 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} +45 -181
- 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} +184 -341
- 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,24 @@
|
|
|
1
|
+
interface IObjGeometryData {
|
|
2
|
+
vertices: number[];
|
|
3
|
+
textures: number[];
|
|
4
|
+
normals: number[];
|
|
5
|
+
}
|
|
6
|
+
interface IObjGeometry {
|
|
7
|
+
object: string;
|
|
8
|
+
groups: string[];
|
|
9
|
+
material: string;
|
|
10
|
+
data: IObjGeometryData;
|
|
11
|
+
}
|
|
12
|
+
interface IObjData {
|
|
13
|
+
geometries: IObjGeometry[];
|
|
14
|
+
materialLibs: string[];
|
|
15
|
+
}
|
|
16
|
+
export declare function objParser(text: string): {
|
|
17
|
+
geometries: IObjGeometry[];
|
|
18
|
+
materialLibs: string[];
|
|
19
|
+
};
|
|
20
|
+
export declare function transformLeftToRightCoordinateSystem(objData: IObjData): {
|
|
21
|
+
geometries: IObjGeometry[];
|
|
22
|
+
materialLibs: string[];
|
|
23
|
+
};
|
|
24
|
+
export {};
|
|
@@ -1,48 +1,25 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
}
|
|
6
|
-
|
|
7
|
-
interface IObjGeometry {
|
|
8
|
-
object: string;
|
|
9
|
-
groups: string[];
|
|
10
|
-
material: string;
|
|
11
|
-
data: IObjGeometryData
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
interface IObjData {
|
|
15
|
-
geometries: IObjGeometry[];
|
|
16
|
-
materialLibs: string[];
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
export function objParser(text: string) {
|
|
20
|
-
const objPositions: number[][] = [[0, 0, 0]];
|
|
21
|
-
const objTexcoords: number[][] = [[0, 0]];
|
|
22
|
-
const objNormals: number[][] = [[0, 0, 0]];
|
|
23
|
-
|
|
1
|
+
export function objParser(text) {
|
|
2
|
+
const objPositions = [[0, 0, 0]];
|
|
3
|
+
const objTexcoords = [[0, 0]];
|
|
4
|
+
const objNormals = [[0, 0, 0]];
|
|
24
5
|
// same order as `f` indices
|
|
25
|
-
const objVertexData
|
|
6
|
+
const objVertexData = [
|
|
26
7
|
objPositions,
|
|
27
8
|
objTexcoords,
|
|
28
9
|
objNormals,
|
|
29
10
|
];
|
|
30
|
-
|
|
31
11
|
// same order as `f` indices
|
|
32
|
-
let vertexData
|
|
33
|
-
[],
|
|
34
|
-
[],
|
|
35
|
-
[],
|
|
12
|
+
let vertexData = [
|
|
13
|
+
[],
|
|
14
|
+
[],
|
|
15
|
+
[], // normals
|
|
36
16
|
];
|
|
37
|
-
|
|
38
|
-
const
|
|
39
|
-
|
|
40
|
-
let
|
|
41
|
-
|
|
42
|
-
let
|
|
43
|
-
let material: string = 'default';
|
|
44
|
-
let object: string = 'default';
|
|
45
|
-
|
|
17
|
+
const materialLibs = [];
|
|
18
|
+
const geometries = [];
|
|
19
|
+
let geometry;
|
|
20
|
+
let groups = ['default'];
|
|
21
|
+
let material = 'default';
|
|
22
|
+
let object = 'default';
|
|
46
23
|
function newGeometry() {
|
|
47
24
|
// If there is an existing geometry and it's
|
|
48
25
|
// not empty then start a new one.
|
|
@@ -50,20 +27,16 @@ export function objParser(text: string) {
|
|
|
50
27
|
geometry = null;
|
|
51
28
|
}
|
|
52
29
|
}
|
|
53
|
-
|
|
54
30
|
function setGeometry() {
|
|
55
31
|
if (!geometry) {
|
|
56
|
-
|
|
57
|
-
const
|
|
58
|
-
const
|
|
59
|
-
const normals: number[] = [];
|
|
60
|
-
|
|
32
|
+
const vertices = [];
|
|
33
|
+
const textures = [];
|
|
34
|
+
const normals = [];
|
|
61
35
|
vertexData = [
|
|
62
36
|
vertices,
|
|
63
37
|
textures,
|
|
64
38
|
normals,
|
|
65
39
|
];
|
|
66
|
-
|
|
67
40
|
geometry = {
|
|
68
41
|
object,
|
|
69
42
|
groups,
|
|
@@ -74,14 +47,12 @@ export function objParser(text: string) {
|
|
|
74
47
|
normals,
|
|
75
48
|
},
|
|
76
49
|
};
|
|
77
|
-
|
|
78
50
|
geometries.push(geometry);
|
|
79
51
|
}
|
|
80
52
|
}
|
|
81
|
-
|
|
82
|
-
function addVertex(vert: string) {
|
|
53
|
+
function addVertex(vert) {
|
|
83
54
|
const ptn = vert.split('/');
|
|
84
|
-
ptn.forEach((objIndexStr
|
|
55
|
+
ptn.forEach((objIndexStr, i) => {
|
|
85
56
|
if (!objIndexStr) {
|
|
86
57
|
return;
|
|
87
58
|
}
|
|
@@ -90,19 +61,18 @@ export function objParser(text: string) {
|
|
|
90
61
|
vertexData[i].push(...objVertexData[i][index]);
|
|
91
62
|
});
|
|
92
63
|
}
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
v(parts: string[]) {
|
|
64
|
+
const keywords = {
|
|
65
|
+
v(parts) {
|
|
96
66
|
objPositions.push(parts.map(parseFloat));
|
|
97
67
|
},
|
|
98
|
-
vn(parts
|
|
68
|
+
vn(parts) {
|
|
99
69
|
objNormals.push(parts.map(parseFloat));
|
|
100
70
|
},
|
|
101
|
-
vt(parts
|
|
71
|
+
vt(parts) {
|
|
102
72
|
// should check for missing v and extra w?
|
|
103
73
|
objTexcoords.push(parts.map(parseFloat));
|
|
104
74
|
},
|
|
105
|
-
f(parts
|
|
75
|
+
f(parts) {
|
|
106
76
|
setGeometry();
|
|
107
77
|
const numTriangles = parts.length - 2;
|
|
108
78
|
for (let tri = 0; tri < numTriangles; ++tri) {
|
|
@@ -112,26 +82,25 @@ export function objParser(text: string) {
|
|
|
112
82
|
}
|
|
113
83
|
},
|
|
114
84
|
s: () => {
|
|
115
|
-
},
|
|
116
|
-
mtllib(parts
|
|
85
|
+
},
|
|
86
|
+
mtllib(parts, unparsedArgs) {
|
|
117
87
|
// the spec says there can be multiple filenames here
|
|
118
88
|
// but many exist with spaces in a single filename
|
|
119
89
|
materialLibs.push(unparsedArgs);
|
|
120
90
|
},
|
|
121
|
-
usemtl(parts
|
|
91
|
+
usemtl(parts, unparsedArgs) {
|
|
122
92
|
material = unparsedArgs;
|
|
123
93
|
newGeometry();
|
|
124
94
|
},
|
|
125
|
-
g(parts
|
|
95
|
+
g(parts) {
|
|
126
96
|
groups = parts;
|
|
127
97
|
newGeometry();
|
|
128
98
|
},
|
|
129
|
-
o(parts
|
|
99
|
+
o(parts, unparsedArgs) {
|
|
130
100
|
object = unparsedArgs;
|
|
131
101
|
newGeometry();
|
|
132
102
|
},
|
|
133
103
|
};
|
|
134
|
-
|
|
135
104
|
const keywordRE = /(\w*)(?: )*(.*)/;
|
|
136
105
|
const lines = text.split('\n');
|
|
137
106
|
for (let lineNo = 0; lineNo < lines.length; ++lineNo) {
|
|
@@ -147,41 +116,29 @@ export function objParser(text: string) {
|
|
|
147
116
|
const parts = line.split(/\s+/).slice(1);
|
|
148
117
|
const handler = keywords[keyword];
|
|
149
118
|
if (!handler) {
|
|
150
|
-
console.warn('unhandled keyword:', keyword);
|
|
119
|
+
console.warn('unhandled keyword:', keyword); // eslint-disable-line no-console
|
|
151
120
|
continue;
|
|
152
121
|
}
|
|
153
122
|
handler(parts, unparsedArgs);
|
|
154
123
|
}
|
|
155
|
-
|
|
156
124
|
// remove any arrays that have no entries.
|
|
157
125
|
for (const geometry of geometries) {
|
|
158
|
-
geometry.data = Object.fromEntries(
|
|
159
|
-
Object.entries(geometry.data).filter(([key, array]) => array.length > 0)
|
|
160
|
-
) as IObjGeometryData;
|
|
126
|
+
geometry.data = Object.fromEntries(Object.entries(geometry.data).filter(([key, array]) => array.length > 0));
|
|
161
127
|
}
|
|
162
|
-
|
|
163
128
|
return {
|
|
164
129
|
geometries,
|
|
165
130
|
materialLibs,
|
|
166
131
|
};
|
|
167
132
|
}
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
geometries: IObjGeometry[],
|
|
171
|
-
materialLibs: string[]
|
|
172
|
-
} {
|
|
173
|
-
|
|
174
|
-
const convertedGeometries: IObjGeometry[] = objData.geometries.map(geometry => {
|
|
133
|
+
export function transformLeftToRightCoordinateSystem(objData) {
|
|
134
|
+
const convertedGeometries = objData.geometries.map(geometry => {
|
|
175
135
|
const vertices = geometry.data.vertices;
|
|
176
136
|
const normals = geometry.data.normals;
|
|
177
137
|
const textures = geometry.data.textures;
|
|
178
|
-
|
|
179
138
|
rotateObject(geometry.data, 0);
|
|
180
|
-
|
|
181
|
-
let
|
|
182
|
-
let
|
|
183
|
-
let convertedTextures: number[] = [];
|
|
184
|
-
|
|
139
|
+
let convertedVertices = [];
|
|
140
|
+
let convertedNormals = [];
|
|
141
|
+
let convertedTextures = [];
|
|
185
142
|
// Convert positions
|
|
186
143
|
for (let i = 0; i < vertices.length; i += 3) {
|
|
187
144
|
const x = vertices[i];
|
|
@@ -189,7 +146,6 @@ export function transformLeftToRightCoordinateSystem(objData: IObjData): {
|
|
|
189
146
|
const z = vertices[i + 2];
|
|
190
147
|
convertedVertices.push(x, y, z);
|
|
191
148
|
}
|
|
192
|
-
|
|
193
149
|
// Convert normals
|
|
194
150
|
for (let i = 0; i < normals.length; i += 3) {
|
|
195
151
|
const x = normals[i];
|
|
@@ -197,14 +153,12 @@ export function transformLeftToRightCoordinateSystem(objData: IObjData): {
|
|
|
197
153
|
const z = normals[i + 2];
|
|
198
154
|
convertedNormals.push(x, y, -z);
|
|
199
155
|
}
|
|
200
|
-
|
|
201
156
|
// Convert textures
|
|
202
157
|
for (let i = 0; i < textures.length; i += 2) {
|
|
203
158
|
const s = textures[i];
|
|
204
159
|
const t = 1 - textures[i + 1];
|
|
205
160
|
convertedTextures.push(s, t);
|
|
206
161
|
}
|
|
207
|
-
|
|
208
162
|
return {
|
|
209
163
|
object: geometry.object,
|
|
210
164
|
groups: geometry.groups,
|
|
@@ -216,41 +170,32 @@ export function transformLeftToRightCoordinateSystem(objData: IObjData): {
|
|
|
216
170
|
}
|
|
217
171
|
};
|
|
218
172
|
});
|
|
219
|
-
|
|
220
173
|
return {
|
|
221
174
|
geometries: convertedGeometries,
|
|
222
175
|
materialLibs: objData.materialLibs
|
|
223
176
|
};
|
|
224
177
|
}
|
|
225
|
-
|
|
226
|
-
function rotateObject(obj: IObjGeometryData, angle: number): { vertices: number[], normals: number[] } {
|
|
178
|
+
function rotateObject(obj, angle) {
|
|
227
179
|
const cosA = Math.cos(angle);
|
|
228
180
|
const sinA = Math.sin(angle);
|
|
229
|
-
|
|
230
181
|
const vertices = obj.vertices;
|
|
231
182
|
const normals = obj.normals;
|
|
232
|
-
|
|
233
183
|
for (let i = 0; i < vertices.length; i += 3) {
|
|
234
184
|
const x = vertices[i];
|
|
235
185
|
const y = vertices[i + 1];
|
|
236
186
|
const z = vertices[i + 2];
|
|
237
|
-
|
|
238
187
|
vertices[i] = x * cosA + z * sinA;
|
|
239
188
|
vertices[i + 1] = y;
|
|
240
189
|
vertices[i + 2] = -x * sinA + z * cosA;
|
|
241
|
-
|
|
242
190
|
const nx = normals[i];
|
|
243
191
|
const ny = normals[i + 1];
|
|
244
192
|
const nz = normals[i + 2];
|
|
245
|
-
|
|
246
193
|
normals[i] = nx * cosA + nz * sinA;
|
|
247
194
|
normals[i + 1] = ny;
|
|
248
195
|
normals[i + 2] = -nx * sinA + nz * cosA;
|
|
249
196
|
}
|
|
250
|
-
|
|
251
197
|
return {
|
|
252
198
|
vertices: vertices,
|
|
253
199
|
normals: normals
|
|
254
200
|
};
|
|
255
201
|
}
|
|
256
|
-
|
|
@@ -0,0 +1,267 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module og/utils/shared
|
|
3
|
+
*/
|
|
4
|
+
import { Extent } from "../Extent";
|
|
5
|
+
import { LonLat } from "../LonLat";
|
|
6
|
+
import { Vec2 } from "../math/Vec2";
|
|
7
|
+
import { NumberArray2 } from "../math/Vec2";
|
|
8
|
+
import { NumberArray3, Vec3 } from "../math/Vec3";
|
|
9
|
+
import { NumberArray4, Vec4 } from "../math/Vec4";
|
|
10
|
+
export declare function getDefault(param?: any, def?: any): boolean;
|
|
11
|
+
export declare function isEmpty(v: any): boolean;
|
|
12
|
+
/**
|
|
13
|
+
* Returns true if the object pointer is undefined.
|
|
14
|
+
* @function
|
|
15
|
+
* @param {Object} obj - Object pointer.
|
|
16
|
+
* @returns {boolean} Returns true if object is undefined.
|
|
17
|
+
*/
|
|
18
|
+
export declare function isUndef(obj?: any): boolean;
|
|
19
|
+
export declare function isUndefExt(obj: any, defVal: any): any;
|
|
20
|
+
export declare function stamp(obj: any): number;
|
|
21
|
+
export declare function isString(s: any): boolean;
|
|
22
|
+
/**
|
|
23
|
+
* Convert html color string to the RGBA number vector.
|
|
24
|
+
* @param {string} htmlColor - HTML string("#C6C6C6" or "#EF5" or "rgb(8,8,8)" or "rgba(8,8,8)") color.
|
|
25
|
+
* @param {number} [opacity] - Opacity for the output vector.
|
|
26
|
+
* @returns {Vec4} -
|
|
27
|
+
*/
|
|
28
|
+
export declare function htmlColorToRgba(htmlColor: string, opacity?: number): Vec4;
|
|
29
|
+
export declare function htmlColorToFloat32Array(htmlColor: string, opacity?: number): Float32Array;
|
|
30
|
+
/**
|
|
31
|
+
* Convert html color string to the RGB number vector.
|
|
32
|
+
* @param {string} htmlColor - HTML string("#C6C6C6" or "#EF5" or "rgb(8,8,8)" or "rgba(8,8,8)") color.
|
|
33
|
+
* @returns {Vec3} -
|
|
34
|
+
*/
|
|
35
|
+
export declare function htmlColorToRgb(htmlColor: string): Vec3;
|
|
36
|
+
/**
|
|
37
|
+
* Replace template substrings between '{' and '}' tokens.
|
|
38
|
+
* @param {string} template - String with templates in "{" and "}"
|
|
39
|
+
* @param {Object} params - Template named object with subsrtings.
|
|
40
|
+
* @returns {string} -
|
|
41
|
+
*
|
|
42
|
+
* @example <caption>Example from og.terrain that replaces tile indexes in url:</caption>
|
|
43
|
+
* var substrings = {
|
|
44
|
+
* "x": 12,
|
|
45
|
+
* "y": 15,
|
|
46
|
+
* "z": 8
|
|
47
|
+
* }
|
|
48
|
+
* og.utils.stringTemplate("http://earth3.openglobus.org/{z}/{y}/{x}.ddm", substrings);
|
|
49
|
+
* //returns http://earth3.openglobus.org/8/15/12.ddm
|
|
50
|
+
*/
|
|
51
|
+
export declare function stringTemplate(template: string, params?: any): string;
|
|
52
|
+
export declare function getHTML(template: string, params?: any): string;
|
|
53
|
+
export declare function parseHTML(htmlStr: string): HTMLElement[];
|
|
54
|
+
export declare function print2d(id: string, text: string, x: number, y: number): void;
|
|
55
|
+
export declare function defaultString(str?: string, def?: string): string;
|
|
56
|
+
export declare function createVector3(v?: Vec3 | Vec2 | NumberArray3 | NumberArray2 | null, def?: Vec3): Vec3;
|
|
57
|
+
export declare function createVector4(v?: Vec4 | NumberArray4 | null, def?: Vec4): Vec4;
|
|
58
|
+
export declare function createColorRGBA(c?: string | NumberArray4 | Vec4 | null, def?: Vec4): Vec4;
|
|
59
|
+
export declare function createColorRGB(c?: string | NumberArray3 | Vec3 | null, def?: Vec3): Vec3;
|
|
60
|
+
export declare function createExtent(e?: Extent | [[number, number], [number, number]] | null, def?: Extent): Extent;
|
|
61
|
+
export declare function createLonLat(l?: LonLat | NumberArray2 | NumberArray3, def?: LonLat): LonLat;
|
|
62
|
+
export declare function binarySearchFast(arr: number[] | TypedArray, x: number): number;
|
|
63
|
+
/**
|
|
64
|
+
* Finds an item in a sorted array.
|
|
65
|
+
* @param {any[]} ar The sorted array to search.
|
|
66
|
+
* @param {any} el The item to find in the array.
|
|
67
|
+
* @param {Function} compare_fn comparator The function to use to compare the item to
|
|
68
|
+
* elements in the array.
|
|
69
|
+
* @returns {number} a negative number if 'a' is less than 'b'; 0 if 'a' is equal to 'b'; 'a' positive number of 'a' is greater than 'b'.
|
|
70
|
+
*
|
|
71
|
+
* @example
|
|
72
|
+
* // Create a comparator function to search through an array of numbers.
|
|
73
|
+
* function comparator(a, b) {
|
|
74
|
+
* return a - b;
|
|
75
|
+
* };
|
|
76
|
+
* var numbers = [0, 2, 4, 6, 8];
|
|
77
|
+
* var index = og.utils.binarySearch(numbers, 6, comparator); // 3
|
|
78
|
+
*/
|
|
79
|
+
export declare function binarySearch(ar: any[], el: any, compare_fn: Function): number;
|
|
80
|
+
/**
|
|
81
|
+
* Binary insertion that uses binarySearch algorithm.
|
|
82
|
+
* @param {any[]} ar - The sorted array to insert.
|
|
83
|
+
* @param {any} el - The item to insert.
|
|
84
|
+
* @param {Function} compare_fn - comparator The function to use to compare the item to
|
|
85
|
+
* elements in the array.
|
|
86
|
+
* @returns {number} Array index position in which item inserted in.
|
|
87
|
+
*/
|
|
88
|
+
export declare function binaryInsert(ar: any[], el: any, compare_fn: Function): number;
|
|
89
|
+
/**
|
|
90
|
+
* Returns two segment lines intersection coordinate.
|
|
91
|
+
* @static
|
|
92
|
+
* @param {Vec2} start1 - First line first coordinate.
|
|
93
|
+
* @param {Vec2} end1 - First line second coordinate.
|
|
94
|
+
* @param {Vec2} start2 - Second line first coordinate.
|
|
95
|
+
* @param {Vec2} end2 - Second line second coordinate.
|
|
96
|
+
* @param {boolean} [isSegment] - Lines are segments.
|
|
97
|
+
* @return {Vec2} - Intersection coordinate.
|
|
98
|
+
*/
|
|
99
|
+
export declare function getLinesIntersection2v(start1: Vec2, end1: Vec2, start2: Vec2, end2: Vec2, isSegment: boolean): Vec2 | undefined;
|
|
100
|
+
/**
|
|
101
|
+
* Returns two segment lines intersection coordinate.
|
|
102
|
+
* @static
|
|
103
|
+
* @param {Vec2} start1 - First line first coordinate.
|
|
104
|
+
* @param {Vec2} end1 - First line second coordinate.
|
|
105
|
+
* @param {Vec2} start2 - Second line first coordinate.
|
|
106
|
+
* @param {Vec2} end2 - Second line second coordinate.
|
|
107
|
+
* @param {boolean} [isSegment=false] - Lines are segments.
|
|
108
|
+
* @return {Vec2} - Intersection coordinate.
|
|
109
|
+
*/
|
|
110
|
+
export declare function getLinesIntersectionLonLat(start1: LonLat, end1: LonLat, start2: LonLat, end2: LonLat, isSegment?: boolean): LonLat | undefined;
|
|
111
|
+
/**
|
|
112
|
+
* Converts XML to JSON
|
|
113
|
+
* @static
|
|
114
|
+
* @param {Object} xml - Xml object
|
|
115
|
+
* @return {Object} - Json converted object.
|
|
116
|
+
*/
|
|
117
|
+
export declare function xmlToJson(xml: any): any;
|
|
118
|
+
export declare const castType: {
|
|
119
|
+
string: (v: any) => any;
|
|
120
|
+
date: (v: any) => any;
|
|
121
|
+
datetime: (v: any) => any;
|
|
122
|
+
time: (v: any) => any;
|
|
123
|
+
integer: (v: any) => any;
|
|
124
|
+
float: (v: any) => any;
|
|
125
|
+
boolean: (str: any) => any;
|
|
126
|
+
};
|
|
127
|
+
export declare function base64toBlob(base64Data: string, contentType?: string): Blob;
|
|
128
|
+
export declare function base64StringToBlog(string: string): Blob;
|
|
129
|
+
/**
|
|
130
|
+
* Callback throttling
|
|
131
|
+
* @param {any} func
|
|
132
|
+
* @param {Number} limit
|
|
133
|
+
* @param {boolean} [skip]
|
|
134
|
+
*/
|
|
135
|
+
export declare function throttle(func: Function, limit: number, skip: boolean): () => void;
|
|
136
|
+
/**
|
|
137
|
+
*
|
|
138
|
+
* y2-----Q12--------------Q22---
|
|
139
|
+
* | | | |
|
|
140
|
+
* | | | |
|
|
141
|
+
* y-------|-----P----------|----
|
|
142
|
+
* | | | |
|
|
143
|
+
* | | | |
|
|
144
|
+
* | | | |
|
|
145
|
+
* | | | |
|
|
146
|
+
* | | | |
|
|
147
|
+
* y1-----Q11----|---------Q21---
|
|
148
|
+
* | | |
|
|
149
|
+
* | | |
|
|
150
|
+
* x1 x x2
|
|
151
|
+
*
|
|
152
|
+
*
|
|
153
|
+
* @param {Number} x -
|
|
154
|
+
* @param {Number} y -
|
|
155
|
+
* @param {Number} fQ11 -
|
|
156
|
+
* @param {Number} fQ21 -
|
|
157
|
+
* @param {Number} fQ12 -
|
|
158
|
+
* @param {Number} fQ22 -
|
|
159
|
+
* @param {Number} [x1=0.0] -
|
|
160
|
+
* @param {Number} [x2=1.0] -
|
|
161
|
+
* @param {Number} [y1=0.0] -
|
|
162
|
+
* @param {Number} [y2=1.0] -
|
|
163
|
+
*/
|
|
164
|
+
export declare function blerp(x: number, y: number, fQ11: number, fQ21: number, fQ12: number, fQ22: number, x1?: number, x2?: number, y1?: number, y2?: number): number;
|
|
165
|
+
export declare function blerp2(x: number, y: number, fQ11: number, fQ21: number, fQ12: number, fQ22: number): number;
|
|
166
|
+
export declare function extractElevationTiles(rgbaData: number[] | TypedArray, outCurrenElevations: number[] | TypedArray, outChildrenElevations: number[][][] | TypedArray[][]): void;
|
|
167
|
+
export type TypedArray = Int8Array | Uint8Array | Uint8ClampedArray | Int16Array | Uint16Array | Int32Array | Uint32Array | Float32Array | Float64Array;
|
|
168
|
+
/**
|
|
169
|
+
* Concatenates two the same type arrays
|
|
170
|
+
* @param {TypedArray} a
|
|
171
|
+
* @param {TypedArray | number[]} b
|
|
172
|
+
*/
|
|
173
|
+
export declare function concatTypedArrays(a: TypedArray, b: TypedArray | number[]): TypedArray;
|
|
174
|
+
/**
|
|
175
|
+
* Concatenates two the same arrays
|
|
176
|
+
* @param {TypedArray | number[]} [a=[]] - First array
|
|
177
|
+
* @param {TypedArray | number[]} [b=[]] - Second array
|
|
178
|
+
* @return {TypedArray | number[]} -
|
|
179
|
+
*/
|
|
180
|
+
export declare function concatArrays(a?: TypedArray | number[], b?: TypedArray | number[]): TypedArray | number[];
|
|
181
|
+
/**
|
|
182
|
+
* Convert simple array to typed
|
|
183
|
+
* @param arr {number[]}
|
|
184
|
+
* @param ctor {Float32Array}
|
|
185
|
+
* @returns {TypedArray}
|
|
186
|
+
*/
|
|
187
|
+
export declare function makeArrayTyped(arr: TypedArray | number[], ctor?: Function): any;
|
|
188
|
+
/**
|
|
189
|
+
* Convert typed array to array
|
|
190
|
+
* @param arr {TypedArray | number[]}
|
|
191
|
+
* @returns {number[]}
|
|
192
|
+
*/
|
|
193
|
+
export declare function makeArray(arr: TypedArray | number[]): number[];
|
|
194
|
+
/**
|
|
195
|
+
*
|
|
196
|
+
* @param {TypedArray | Array} arr
|
|
197
|
+
* @param {Number} starting
|
|
198
|
+
* @param {Number} deleteCount
|
|
199
|
+
* @param {{ result: number[] }} [out]
|
|
200
|
+
*/
|
|
201
|
+
export declare function spliceArray(arr: TypedArray | number[], starting: number, deleteCount: number, out?: {
|
|
202
|
+
result: number[];
|
|
203
|
+
} | {
|
|
204
|
+
result: TypedArray;
|
|
205
|
+
}): TypedArray | number[];
|
|
206
|
+
/**
|
|
207
|
+
*
|
|
208
|
+
* @param {TypedArray} arr
|
|
209
|
+
* @param {Number} starting
|
|
210
|
+
* @param {Number} deleteCount
|
|
211
|
+
* @param {{ result: TypedArray }} [out]
|
|
212
|
+
*/
|
|
213
|
+
export declare function spliceTypedArray<T extends TypedArray>(arr: T, starting: number, deleteCount: number, out?: {
|
|
214
|
+
result: T;
|
|
215
|
+
}): T;
|
|
216
|
+
/**
|
|
217
|
+
* Returns 64-bit triangle coordinate array from inside of the source triangle array.
|
|
218
|
+
* @static
|
|
219
|
+
* @param {TypedArray | number[]} sourceArr - Source array
|
|
220
|
+
* @param {number} gridSize - Source array square matrix size
|
|
221
|
+
* @param {number} i0 - First row index source array matrix
|
|
222
|
+
* @param {number} j0 - First column index
|
|
223
|
+
* @param {number} size - Square matrix result size.
|
|
224
|
+
* @return {Float64Array} Triangle coordinates array from the source array.
|
|
225
|
+
* @TODO: optimization
|
|
226
|
+
*/
|
|
227
|
+
export declare function getMatrixSubArray64(sourceArr: TypedArray | number[], gridSize: number, i0: number, j0: number, size: number): Float64Array;
|
|
228
|
+
/**
|
|
229
|
+
* Returns 32-bit triangle coordinate array from inside of the source triangle array.
|
|
230
|
+
* @static
|
|
231
|
+
* @param {TypedArray | number[]} sourceArr - Source array
|
|
232
|
+
* @param {number} gridSize - Source array square matrix size
|
|
233
|
+
* @param {number} i0 - First row index source array matrix
|
|
234
|
+
* @param {number} j0 - First column index
|
|
235
|
+
* @param {number} size - Square matrix result size.
|
|
236
|
+
* @return {Float32Array} Triangle coordinates array from the source array.
|
|
237
|
+
*/
|
|
238
|
+
export declare function getMatrixSubArray32(sourceArr: TypedArray | number[], gridSize: number, i0: number, j0: number, size: number): Float32Array;
|
|
239
|
+
/**
|
|
240
|
+
* Returns two float32 triangle coordinate arrays from inside of the source triangle array.
|
|
241
|
+
* @static
|
|
242
|
+
* @param {Array.<number>} sourceArr - Source array
|
|
243
|
+
* @param {number} gridSize - Source array square matrix size
|
|
244
|
+
* @param {number} i0 - First row index source array matrix
|
|
245
|
+
* @param {number} j0 - First column index
|
|
246
|
+
* @param {number} size - Square matrix result size.
|
|
247
|
+
* @param {object} outBounds - Output bounds.
|
|
248
|
+
* @return{Array.<number>} Triangle coordinates array from the source array.
|
|
249
|
+
* @TODO: optimization
|
|
250
|
+
*/
|
|
251
|
+
export declare function getMatrixSubArrayBoundsExt(sourceArr: TypedArray | number[], sourceArrHigh: TypedArray | number[], sourceArrLow: TypedArray | number[], noDataVertices: TypedArray | number[] | undefined, gridSize: number, i0: number, j0: number, size: number, outArr: TypedArray | number[], outArrHigh: TypedArray | number[], outArrLow: TypedArray | number[], outBounds: any, outNoDataVertices: TypedArray | number[]): void;
|
|
252
|
+
export declare function cloneArray(items: any[]): any[];
|
|
253
|
+
/**
|
|
254
|
+
* Promise for load images
|
|
255
|
+
* @function
|
|
256
|
+
* @param {string} url - link to image.
|
|
257
|
+
* @returns {Promise<Image>} Returns promise.
|
|
258
|
+
*/
|
|
259
|
+
export declare function loadImage(url: string): Promise<HTMLImageElement>;
|
|
260
|
+
/**
|
|
261
|
+
* Gets image is loaded
|
|
262
|
+
* @param {HTMLImageElement} image
|
|
263
|
+
* @returns {boolean} Returns true is the image is loaded
|
|
264
|
+
*/
|
|
265
|
+
export declare function isImageLoaded(image: HTMLImageElement): boolean;
|
|
266
|
+
export declare function distanceFormat(v: number): string;
|
|
267
|
+
export declare function getUrlParam(paramName: string): number | undefined;
|