@openglobus/og 0.19.4 → 0.20.0
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 +3 -3
- package/css/og.css +18 -4
- package/lib/@openglobus/js/Clock.d.ts +106 -0
- package/lib/@openglobus/js/Deferred.d.ts +6 -0
- package/lib/@openglobus/js/Events.d.ts +90 -0
- package/lib/@openglobus/js/Extent.d.ts +145 -0
- package/lib/@openglobus/js/Globe.d.ts +134 -0
- package/lib/@openglobus/js/ImageCanvas.d.ts +128 -0
- package/lib/@openglobus/js/Lock.d.ts +15 -0
- package/lib/@openglobus/js/LonLat.d.ts +128 -0
- package/lib/@openglobus/js/Object3d.d.ts +64 -0
- package/lib/@openglobus/js/Popup.d.ts +46 -0
- package/lib/@openglobus/js/QueueArray.d.ts +16 -0
- package/lib/@openglobus/js/Rectangle.d.ts +76 -0
- package/lib/@openglobus/js/Stack.d.ts +20 -0
- package/lib/@openglobus/js/astro/astro.d.ts +39 -0
- package/lib/@openglobus/js/astro/earth.d.ts +8 -0
- package/lib/@openglobus/js/astro/jd.d.ts +234 -0
- package/lib/@openglobus/js/astro/orbit.d.ts +5 -0
- package/lib/@openglobus/js/astro/rotation.d.ts +2 -0
- package/lib/@openglobus/js/bv/Box.d.ts +32 -0
- package/lib/@openglobus/js/bv/Sphere.d.ts +37 -0
- package/lib/@openglobus/js/bv/index.d.ts +3 -0
- package/lib/@openglobus/js/camera/Camera.d.ts +314 -0
- package/lib/@openglobus/js/camera/Frustum.d.ts +139 -0
- package/lib/@openglobus/js/camera/PlanetCamera.d.ts +234 -0
- package/lib/@openglobus/js/camera/index.d.ts +3 -0
- package/lib/@openglobus/js/cons.d.ts +40 -0
- package/lib/@openglobus/js/control/Atmosphere.d.ts +16 -0
- package/lib/@openglobus/js/control/CompassButton.d.ts +16 -0
- package/lib/@openglobus/js/control/Control.d.ts +100 -0
- package/lib/@openglobus/js/control/DebugInfo.d.ts +25 -0
- package/lib/@openglobus/js/control/DrawingSwitcher.d.ts +13 -0
- package/lib/@openglobus/js/control/EarthCoordinates.d.ts +41 -0
- package/lib/@openglobus/js/control/EarthNavigation.d.ts +50 -0
- package/lib/@openglobus/js/control/GeoImageDragControl.d.ts +22 -0
- package/lib/@openglobus/js/control/KeyboardNavigation.d.ts +28 -0
- package/lib/@openglobus/js/control/LayerAnimation.d.ts +71 -0
- package/lib/@openglobus/js/control/LayerSwitcher.d.ts +36 -0
- package/lib/@openglobus/js/control/Lighting.d.ts +53 -0
- package/lib/@openglobus/js/control/MouseNavigation.d.ts +64 -0
- package/lib/@openglobus/js/control/MouseWheelZoomControl.d.ts +44 -0
- package/lib/@openglobus/js/control/RulerSwitcher.d.ts +17 -0
- package/lib/@openglobus/js/control/ScaleControl.d.ts +24 -0
- package/lib/@openglobus/js/control/SegmentBoundVisualization.d.ts +12 -0
- package/lib/@openglobus/js/control/ShowFps.d.ts +9 -0
- package/lib/@openglobus/js/control/SimpleNavigation.d.ts +25 -0
- package/lib/@openglobus/js/control/SimpleSkyBackground.d.ts +17 -0
- package/lib/@openglobus/js/control/Sun.d.ts +33 -0
- package/lib/@openglobus/js/control/ToggleWireframe.d.ts +14 -0
- package/lib/@openglobus/js/control/TouchNavigation.d.ts +52 -0
- package/lib/@openglobus/js/control/ZoomControl.d.ts +27 -0
- package/lib/@openglobus/js/control/drawing/DrawingControl.d.ts +12 -0
- package/lib/@openglobus/js/control/drawing/LineStringDrawingScene.d.ts +15 -0
- package/lib/@openglobus/js/control/drawing/PolygonDrawingScene.d.ts +98 -0
- package/lib/@openglobus/js/control/elevationProfile/ElevationProfile.d.ts +77 -0
- package/lib/@openglobus/js/control/elevationProfile/ElevationProfileButtonsView.d.ts +14 -0
- package/lib/@openglobus/js/control/elevationProfile/ElevationProfileControl.d.ts +33 -0
- package/lib/@openglobus/js/control/elevationProfile/ElevationProfileLegend.d.ts +20 -0
- package/lib/@openglobus/js/control/elevationProfile/ElevationProfileScene.d.ts +80 -0
- package/lib/@openglobus/js/control/elevationProfile/ElevationProfileView.d.ts +63 -0
- package/lib/@openglobus/js/control/elevationProfile/PointListDialog.d.ts +12 -0
- package/lib/@openglobus/js/control/heightRuler/HeightRuler.d.ts +7 -0
- package/lib/@openglobus/js/control/heightRuler/HeightRulerScene.d.ts +35 -0
- package/lib/@openglobus/js/control/heightRuler/HeightRulerSwitcher.d.ts +6 -0
- package/lib/@openglobus/js/control/index.d.ts +29 -0
- package/lib/@openglobus/js/control/ruler/Ruler.d.ts +13 -0
- package/lib/@openglobus/js/control/ruler/RulerScene.d.ts +88 -0
- package/lib/@openglobus/js/control/selection/Selection.d.ts +55 -0
- package/lib/@openglobus/js/control/selection/SelectionScene.d.ts +44 -0
- package/lib/@openglobus/js/control/timeline/TimelineControl.d.ts +18 -0
- package/lib/@openglobus/js/control/timeline/TimelineModel.d.ts +41 -0
- package/lib/@openglobus/js/control/timeline/TimelineView.d.ts +85 -0
- package/lib/@openglobus/js/control/timeline/timelineUtils.d.ts +12 -0
- package/lib/@openglobus/js/control/visibleExtent/drawnode.d.ts +7 -0
- package/lib/@openglobus/js/ellipsoid/Ellipsoid.d.ts +193 -0
- package/lib/@openglobus/js/ellipsoid/index.d.ts +3 -0
- package/lib/@openglobus/js/ellipsoid/wgs84.d.ts +6 -0
- package/lib/@openglobus/js/entity/BaseBillboard.d.ts +222 -0
- package/lib/@openglobus/js/entity/BaseBillboardHandler.d.ts +81 -0
- package/lib/@openglobus/js/entity/Billboard.d.ts +113 -0
- package/lib/@openglobus/js/entity/BillboardHandler.d.ts +15 -0
- package/lib/@openglobus/js/entity/Entity.d.ts +354 -0
- package/lib/@openglobus/js/entity/EntityCollection.d.ts +363 -0
- package/lib/@openglobus/js/entity/GeoObject.d.ts +152 -0
- package/lib/@openglobus/js/entity/GeoObjectHandler.d.ts +104 -0
- package/lib/@openglobus/js/entity/Geometry.d.ts +124 -0
- package/lib/@openglobus/js/entity/GeometryHandler.d.ts +84 -0
- package/lib/@openglobus/js/entity/Label.d.ts +214 -0
- package/lib/@openglobus/js/entity/LabelHandler.d.ts +65 -0
- package/lib/@openglobus/js/entity/LabelWorker.d.ts +15 -0
- package/lib/@openglobus/js/entity/PointCloud.d.ts +179 -0
- package/lib/@openglobus/js/entity/PointCloudHandler.d.ts +42 -0
- package/lib/@openglobus/js/entity/Polyline.d.ts +345 -0
- package/lib/@openglobus/js/entity/PolylineHandler.d.ts +22 -0
- package/lib/@openglobus/js/entity/Ray.d.ts +133 -0
- package/lib/@openglobus/js/entity/RayHandler.d.ts +70 -0
- package/lib/@openglobus/js/entity/Strip.d.ts +139 -0
- package/lib/@openglobus/js/entity/StripHandler.d.ts +42 -0
- package/lib/@openglobus/js/entity/index.d.ts +10 -0
- package/lib/@openglobus/js/index.d.ts +33 -0
- package/lib/@openglobus/js/input/KeyboardHandler.d.ts +33 -0
- package/lib/@openglobus/js/input/MouseHandler.d.ts +16 -0
- package/lib/@openglobus/js/input/TouchHandler.d.ts +11 -0
- package/lib/@openglobus/js/input/input.d.ts +3 -0
- package/lib/@openglobus/js/layer/BaseGeoImage.d.ts +145 -0
- package/lib/@openglobus/js/layer/Bing.d.ts +4 -0
- package/lib/@openglobus/js/layer/CanvasTiles.d.ts +103 -0
- package/lib/@openglobus/js/layer/GeoImage.d.ts +61 -0
- package/lib/@openglobus/js/layer/GeoTexture2d.d.ts +17 -0
- package/lib/@openglobus/js/layer/GeoVideo.d.ts +68 -0
- package/lib/@openglobus/js/layer/KML.d.ts +72 -0
- package/lib/@openglobus/js/layer/Layer.d.ts +415 -0
- package/lib/@openglobus/js/layer/Material.d.ts +34 -0
- package/lib/@openglobus/js/layer/OpenStreetMap.d.ts +4 -0
- package/lib/@openglobus/js/layer/Vector.d.ts +246 -0
- package/lib/@openglobus/js/layer/WMS.d.ts +75 -0
- package/lib/@openglobus/js/layer/XYZ.d.ts +148 -0
- package/lib/@openglobus/js/layer/index.d.ts +12 -0
- package/lib/@openglobus/js/light/LightSource.d.ts +174 -0
- package/lib/@openglobus/js/math/Line2.d.ts +11 -0
- package/lib/@openglobus/js/math/Line3.d.ts +28 -0
- package/lib/@openglobus/js/math/Mat3.d.ts +77 -0
- package/lib/@openglobus/js/math/Mat4.d.ts +195 -0
- package/lib/@openglobus/js/math/Plane.d.ts +20 -0
- package/lib/@openglobus/js/math/Quat.d.ts +373 -0
- package/lib/@openglobus/js/math/Ray.d.ts +76 -0
- package/lib/@openglobus/js/math/Vec2.d.ts +310 -0
- package/lib/@openglobus/js/math/Vec3.d.ts +472 -0
- package/lib/@openglobus/js/math/Vec4.d.ts +163 -0
- package/lib/@openglobus/js/math/coder.d.ts +51 -0
- package/lib/@openglobus/js/math/index.d.ts +11 -0
- package/lib/@openglobus/js/math.d.ts +266 -0
- package/lib/@openglobus/js/mercator.d.ts +92 -0
- package/lib/@openglobus/js/proj/EPSG3857.d.ts +9 -0
- package/lib/@openglobus/js/proj/EPSG4326.d.ts +9 -0
- package/lib/@openglobus/js/proj/Proj.d.ts +43 -0
- package/lib/@openglobus/js/quadTree/EPSG4326QuadTreeStrategy.d.ts +6 -0
- package/lib/@openglobus/js/quadTree/EarthQuadTreeStrategy.d.ts +9 -0
- package/lib/@openglobus/js/quadTree/EntityCollectionNode.d.ts +54 -0
- package/lib/@openglobus/js/quadTree/MarsQuadTreeStrategy.d.ts +11 -0
- package/lib/@openglobus/js/quadTree/Node.d.ts +80 -0
- package/lib/@openglobus/js/quadTree/QuadTreeStrategy.d.ts +28 -0
- package/lib/@openglobus/js/quadTree/Wgs84QuadTreeStrategy.d.ts +6 -0
- package/lib/@openglobus/js/quadTree/index.d.ts +12 -0
- package/lib/@openglobus/js/quadTree/quadTree.d.ts +40 -0
- package/lib/@openglobus/js/renderer/Renderer.d.ts +319 -0
- package/lib/@openglobus/js/renderer/RendererEvents.d.ts +240 -0
- package/lib/@openglobus/js/scene/Axes.d.ts +12 -0
- package/lib/@openglobus/js/scene/BaseNode.d.ts +61 -0
- package/lib/@openglobus/js/scene/Planet.d.ts +652 -0
- package/lib/@openglobus/js/scene/RenderNode.d.ts +150 -0
- package/lib/@openglobus/js/scene/SkyBox.d.ts +13 -0
- package/lib/@openglobus/js/scene/index.d.ts +5 -0
- package/lib/@openglobus/js/segment/Segment.d.ts +288 -0
- package/lib/@openglobus/js/segment/SegmentLonLat.d.ts +44 -0
- package/lib/@openglobus/js/segment/SegmentLonLatWgs84.d.ts +10 -0
- package/lib/@openglobus/js/segment/Slice.d.ts +13 -0
- package/lib/@openglobus/js/segment/segmentHelper.d.ts +18 -0
- package/lib/@openglobus/js/shaders/atmos.d.ts +4 -0
- package/lib/@openglobus/js/shaders/billboard.d.ts +3 -0
- package/lib/@openglobus/js/shaders/bloom.d.ts +2 -0
- package/lib/@openglobus/js/shaders/blur.d.ts +3 -0
- package/lib/@openglobus/js/shaders/depth.d.ts +2 -0
- package/lib/@openglobus/js/shaders/drawnode.d.ts +8 -0
- package/lib/@openglobus/js/shaders/geoObject.d.ts +3 -0
- package/lib/@openglobus/js/shaders/label.d.ts +4 -0
- package/lib/@openglobus/js/shaders/lumFilter.d.ts +2 -0
- package/lib/@openglobus/js/shaders/pointCloud.d.ts +2 -0
- package/lib/@openglobus/js/shaders/polyline.d.ts +3 -0
- package/lib/@openglobus/js/shaders/ray.d.ts +2 -0
- package/lib/@openglobus/js/shaders/screenFrame.d.ts +2 -0
- package/lib/@openglobus/js/shaders/skybox.d.ts +2 -0
- package/lib/@openglobus/js/shaders/toneMapping.d.ts +2 -0
- package/lib/@openglobus/js/shaders/utils.d.ts +1 -0
- package/lib/@openglobus/js/terrain/BilTerrain.d.ts +18 -0
- package/lib/@openglobus/js/terrain/EmptyTerrain.d.ts +113 -0
- package/lib/@openglobus/js/terrain/Geoid.d.ts +33 -0
- package/lib/@openglobus/js/terrain/GlobusRgbTerrain.d.ts +6 -0
- package/lib/@openglobus/js/terrain/GlobusTerrain.d.ts +137 -0
- package/lib/{js/terrain/MapboxTerrain.d.ts → @openglobus/js/terrain/RgbTerrain.d.ts} +5 -5
- package/lib/@openglobus/js/terrain/index.d.ts +6 -0
- package/lib/@openglobus/js/ui/Button.d.ts +32 -0
- package/lib/@openglobus/js/ui/ButtonGroup.d.ts +16 -0
- package/lib/@openglobus/js/ui/Color.d.ts +22 -0
- package/lib/@openglobus/js/ui/Dialog.d.ts +55 -0
- package/lib/@openglobus/js/ui/Slider.d.ts +38 -0
- package/lib/@openglobus/js/ui/ToggleButton.d.ts +20 -0
- package/lib/@openglobus/js/ui/View.d.ts +37 -0
- package/lib/@openglobus/js/ui/icons.d.ts +1 -0
- package/lib/@openglobus/js/utils/BaseWorker.d.ts +14 -0
- package/lib/@openglobus/js/utils/FontAtlas.d.ts +82 -0
- package/lib/@openglobus/js/utils/GeoImageCreator.d.ts +34 -0
- package/lib/@openglobus/js/utils/ImagesCacheManager.d.ts +22 -0
- package/lib/@openglobus/js/utils/Loader.d.ts +63 -0
- package/lib/@openglobus/js/utils/NormalMapCreator.d.ts +52 -0
- package/lib/@openglobus/js/utils/PlainSegmentWorker.d.ts +24 -0
- package/lib/@openglobus/js/utils/TerrainWorker.d.ts +28 -0
- package/lib/@openglobus/js/utils/TextureAtlas.d.ts +113 -0
- package/lib/@openglobus/js/utils/VectorTileCreator.d.ts +18 -0
- package/lib/@openglobus/js/utils/colorTable.d.ts +3 -0
- package/lib/@openglobus/js/utils/earcut.d.ts +7 -0
- package/lib/@openglobus/js/utils/objParser.d.ts +24 -0
- package/lib/@openglobus/js/utils/shared.d.ts +263 -0
- package/lib/@openglobus/js/utils/units.d.ts +16 -0
- package/lib/@openglobus/js/webgl/BaseFramebuffer.d.ts +53 -0
- package/lib/@openglobus/js/webgl/Framebuffer.d.ts +69 -0
- package/lib/@openglobus/js/webgl/Handler.d.ts +473 -0
- package/lib/@openglobus/js/webgl/Multisample.d.ts +27 -0
- package/lib/@openglobus/js/webgl/Program.d.ts +159 -0
- package/lib/@openglobus/js/webgl/ProgramController.d.ts +86 -0
- package/lib/@openglobus/js/webgl/index.d.ts +6 -0
- package/lib/@openglobus/js/webgl/types.d.ts +9 -0
- package/lib/@openglobus/js/webgl/variableHandlers.d.ts +22 -0
- package/lib/@openglobus/og.css +1 -1
- package/lib/@openglobus/og.esm.js +1 -1
- package/lib/@openglobus/og.esm.js.map +1 -1
- package/lib/@openglobus/og.umd.js +1 -1
- package/lib/@openglobus/og.umd.js.map +1 -1
- package/lib/js/Extent.js +2 -2
- package/lib/js/Globe.d.ts +1 -1
- package/lib/js/Object3d.d.ts +8 -1
- package/lib/js/Object3d.js +12 -2
- package/lib/js/camera/Frustum.d.ts +1 -1
- package/lib/js/camera/Frustum.js +3 -2
- package/lib/js/control/DebugInfo.js +19 -18
- package/lib/js/control/Lighting.d.ts +4 -0
- package/lib/js/control/Lighting.js +51 -12
- package/lib/js/control/SimpleSkyBackground.d.ts +2 -0
- package/lib/js/control/SimpleSkyBackground.js +13 -3
- package/lib/js/control/drawing/PolygonDrawingScene.js +2 -2
- package/lib/js/control/visibleExtent/drawnode.js +1 -1
- package/lib/js/entity/GeoObject.d.ts +12 -3
- package/lib/js/entity/GeoObject.js +34 -2
- package/lib/js/entity/GeoObjectHandler.d.ts +5 -0
- package/lib/js/entity/GeoObjectHandler.js +47 -0
- package/lib/js/entity/Geometry.d.ts +24 -11
- package/lib/js/entity/Geometry.js +17 -9
- package/lib/js/entity/GeometryHandler.js +5 -5
- package/lib/js/entity/Label.d.ts +7 -0
- package/lib/js/entity/Label.js +11 -0
- package/lib/js/entity/Polyline.d.ts +15 -7
- package/lib/js/entity/Polyline.js +54 -6
- package/lib/js/entity/Strip.d.ts +12 -0
- package/lib/js/entity/Strip.js +16 -0
- package/lib/js/entity/StripHandler.js +1 -1
- package/lib/js/entity/index.d.ts +10 -11
- package/lib/js/entity/index.js +10 -11
- package/lib/js/index.d.ts +5 -5
- package/lib/js/index.js +5 -5
- package/lib/js/layer/Bing.d.ts +4 -0
- package/lib/js/layer/Bing.js +40 -0
- package/lib/js/layer/GeoImage.d.ts +1 -1
- package/lib/js/layer/GeoVideo.d.ts +1 -1
- package/lib/js/layer/Layer.d.ts +1 -1
- package/lib/js/layer/Layer.js +2 -2
- package/lib/js/layer/OpenStreetMap.d.ts +4 -0
- package/lib/js/layer/OpenStreetMap.js +19 -0
- package/lib/js/layer/Vector.d.ts +3 -0
- package/lib/js/layer/Vector.js +3 -3
- package/lib/js/layer/index.d.ts +12 -11
- package/lib/js/layer/index.js +12 -11
- package/lib/js/math/Mat4.js +18 -17
- package/lib/js/mercator.js +2 -1
- package/lib/js/quadTree/EPSG4326QuadTreeStrategy.js +4 -5
- package/lib/js/quadTree/EarthQuadTreeStrategy.d.ts +3 -0
- package/lib/js/quadTree/EarthQuadTreeStrategy.js +40 -5
- package/lib/js/quadTree/EntityCollectionNode.d.ts +2 -2
- package/lib/js/quadTree/EntityCollectionNode.js +13 -14
- package/lib/js/quadTree/MarsQuadTreeStrategy.d.ts +5 -0
- package/lib/js/quadTree/MarsQuadTreeStrategy.js +31 -5
- package/lib/js/quadTree/Node.d.ts +2 -1
- package/lib/js/quadTree/Node.js +38 -28
- package/lib/js/quadTree/QuadTreeStrategy.d.ts +3 -0
- package/lib/js/quadTree/QuadTreeStrategy.js +17 -0
- package/lib/js/quadTree/Wgs84QuadTreeStrategy.js +3 -3
- package/lib/js/renderer/Renderer.js +1 -0
- package/lib/js/scene/Planet.js +6 -4
- package/lib/js/segment/Segment.d.ts +12 -9
- package/lib/js/segment/Segment.js +47 -24
- package/lib/js/segment/SegmentLonLat.d.ts +1 -5
- package/lib/js/segment/SegmentLonLat.js +8 -100
- package/lib/js/segment/SegmentLonLatWgs84.js +5 -3
- package/lib/js/shaders/billboard.js +4 -4
- package/lib/js/shaders/drawnode.js +16 -19
- package/lib/js/shaders/geoObject.js +4 -5
- package/lib/js/shaders/ray.js +7 -3
- package/lib/js/terrain/BilTerrain.d.ts +1 -1
- package/lib/js/terrain/BilTerrain.js +7 -6
- package/lib/js/terrain/EmptyTerrain.d.ts +7 -0
- package/lib/js/terrain/EmptyTerrain.js +7 -0
- package/lib/js/terrain/GlobusRgbTerrain.d.ts +6 -0
- package/lib/js/terrain/GlobusRgbTerrain.js +25 -0
- package/lib/js/terrain/GlobusTerrain.d.ts +5 -5
- package/lib/js/terrain/GlobusTerrain.js +35 -30
- package/lib/js/terrain/RgbTerrain.d.ts +22 -0
- package/lib/js/terrain/RgbTerrain.js +415 -0
- package/lib/js/terrain/index.d.ts +3 -2
- package/lib/js/terrain/index.js +3 -2
- package/lib/js/ui/Color.d.ts +22 -0
- package/lib/js/ui/Color.js +58 -0
- package/lib/js/utils/GeoImageCreator.js +1 -1
- package/lib/js/utils/NormalMapCreator.js +1 -1
- package/lib/js/utils/VectorTileCreator.js +3 -3
- package/lib/js/utils/shared.d.ts +1 -8
- package/lib/js/utils/shared.js +17 -8
- package/package.json +2 -1
- package/lib/js/terrain/MapboxTerrain.js +0 -305
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { Label } from "./Label";
|
|
2
|
+
import { BaseBillboardHandler } from "./BaseBillboardHandler";
|
|
3
|
+
import { EntityCollection } from "./EntityCollection";
|
|
4
|
+
import { WebGLBufferExt } from "../webgl/Handler";
|
|
5
|
+
import { Vec3 } from "../math/Vec3";
|
|
6
|
+
import { Vec4 } from "../math/Vec4";
|
|
7
|
+
type LabelWorkerCallbackData = {
|
|
8
|
+
vertexArr: Float32Array;
|
|
9
|
+
texCoordArr: Float32Array;
|
|
10
|
+
gliphParamArr: Float32Array;
|
|
11
|
+
positionHighArr: Float32Array;
|
|
12
|
+
positionLowArr: Float32Array;
|
|
13
|
+
sizeArr: Float32Array;
|
|
14
|
+
offsetArr: Float32Array;
|
|
15
|
+
rgbaArr: Float32Array;
|
|
16
|
+
rotationArr: Float32Array;
|
|
17
|
+
fontIndexArr: Float32Array;
|
|
18
|
+
outlineArr: Float32Array;
|
|
19
|
+
outlineColorArr: Float32Array;
|
|
20
|
+
pickingColorArr: Float32Array;
|
|
21
|
+
};
|
|
22
|
+
declare class LabelHandler extends BaseBillboardHandler {
|
|
23
|
+
protected _billboards: Label[];
|
|
24
|
+
protected _gliphParamBuffer: WebGLBufferExt | null;
|
|
25
|
+
protected _fontIndexBuffer: WebGLBufferExt | null;
|
|
26
|
+
protected _outlineBuffer: WebGLBufferExt | null;
|
|
27
|
+
protected _outlineColorBuffer: WebGLBufferExt | null;
|
|
28
|
+
protected _gliphParamArr: Float32Array;
|
|
29
|
+
protected _fontIndexArr: Float32Array;
|
|
30
|
+
protected _outlineArr: Float32Array;
|
|
31
|
+
protected _outlineColorArr: Float32Array;
|
|
32
|
+
_maxLetters: number;
|
|
33
|
+
constructor(entityCollection: EntityCollection, maxLetters?: number);
|
|
34
|
+
initProgram(): void;
|
|
35
|
+
get labels(): Label[];
|
|
36
|
+
add(label: Label): void;
|
|
37
|
+
updateFonts(): void;
|
|
38
|
+
protected _addLabelToArrays(label: Label): void;
|
|
39
|
+
assignFontAtlas(label: Label): void;
|
|
40
|
+
workerCallback(data: LabelWorkerCallbackData, label: Label): void;
|
|
41
|
+
clear(): void;
|
|
42
|
+
protected _deleteBuffers(): void;
|
|
43
|
+
_displayPASS(): void;
|
|
44
|
+
protected _pickingPASS(): void;
|
|
45
|
+
protected _removeBillboard(label: Label): void;
|
|
46
|
+
setText(index: number, text: string, fontIndex: number, align: number, isRTL?: boolean): void;
|
|
47
|
+
setPositionArr(index: number, positionHigh: Vec3, positionLow: Vec3): void;
|
|
48
|
+
setPickingColorArr(index: number, color: Vec3): void;
|
|
49
|
+
setSizeArr(index: number, size: number): void;
|
|
50
|
+
setOffsetArr(index: number, offset: Vec3): void;
|
|
51
|
+
setRgbaArr(index: number, rgba: Vec4): void;
|
|
52
|
+
setOutlineColorArr(index: number, rgba: Vec4): void;
|
|
53
|
+
setOutlineArr(index: number, outline: number): void;
|
|
54
|
+
setRotationArr(index: number, rotation: number): void;
|
|
55
|
+
setVisibility(index: number, visibility: boolean): void;
|
|
56
|
+
setVertexArr(index: number, vertexArr: number[] | Float32Array): void;
|
|
57
|
+
setFontIndexArr(index: number, fontIndex: number): void;
|
|
58
|
+
createSizeBuffer(): void;
|
|
59
|
+
createFontIndexBuffer(): void;
|
|
60
|
+
createTexCoordBuffer(): void;
|
|
61
|
+
createOutlineBuffer(): void;
|
|
62
|
+
createOutlineColorBuffer(): void;
|
|
63
|
+
setMaxLetters(c: number): void;
|
|
64
|
+
}
|
|
65
|
+
export { LabelHandler };
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { BaseWorker } from "../utils/BaseWorker";
|
|
2
|
+
import { Label } from "../entity/Label";
|
|
3
|
+
import { LabelHandler } from "../entity/LabelHandler";
|
|
4
|
+
export declare const LOCK_UPDATE = -2;
|
|
5
|
+
export declare const LOCK_FREE = -1;
|
|
6
|
+
interface LabelInfo {
|
|
7
|
+
label: Label;
|
|
8
|
+
handler: LabelHandler;
|
|
9
|
+
}
|
|
10
|
+
declare class LabelWorker extends BaseWorker<LabelInfo> {
|
|
11
|
+
constructor(numWorkers?: number);
|
|
12
|
+
protected _onMessage(e: MessageEvent): void;
|
|
13
|
+
make(data: LabelInfo): void;
|
|
14
|
+
}
|
|
15
|
+
export { LabelWorker };
|
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
import { Entity } from "./Entity";
|
|
2
|
+
import { PointCloudHandler } from "./PointCloudHandler";
|
|
3
|
+
import { RenderNode } from "../scene/RenderNode";
|
|
4
|
+
import { Vec3 } from "../math/Vec3";
|
|
5
|
+
import { Vec4 } from "../math/Vec4";
|
|
6
|
+
import { WebGLBufferExt } from "../webgl/Handler";
|
|
7
|
+
import { EntityCollection } from "./EntityCollection";
|
|
8
|
+
export interface IPointCloudParams {
|
|
9
|
+
visibility?: boolean;
|
|
10
|
+
pointSize?: number;
|
|
11
|
+
pickingScale?: number;
|
|
12
|
+
points?: Poi[];
|
|
13
|
+
}
|
|
14
|
+
type Poi = [number, number, number, number, number, number, number, any | undefined];
|
|
15
|
+
interface IPoint {
|
|
16
|
+
_entity: Entity | null;
|
|
17
|
+
_pickingColor: Vec3;
|
|
18
|
+
_entityCollection: EntityCollection | null;
|
|
19
|
+
index: number;
|
|
20
|
+
position: Vec3;
|
|
21
|
+
color: Vec4;
|
|
22
|
+
pointCloud: PointCloud;
|
|
23
|
+
properties: any;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* PointCloud object.
|
|
27
|
+
* @class
|
|
28
|
+
* @param {*} [options] - Point cloud options:
|
|
29
|
+
* @param {Array.<Array.<number>>} [options.points] - Points cartesian coordinates array,
|
|
30
|
+
* where first three is cartesian coordinates, next fourth is an RGBA color, and last is a point properties.
|
|
31
|
+
* @param {number} [options.pointSize] - Point screen size in pixels.
|
|
32
|
+
* @param {number} [options.pickingScale] - Point border picking size in screen pixels.
|
|
33
|
+
* @param {boolean} [options.visibility] - Point cloud visibility.
|
|
34
|
+
* @example <caption>Creates point cloud with two ten pixel size points</caption>
|
|
35
|
+
* new og.Entity({
|
|
36
|
+
* pointCloud: {
|
|
37
|
+
* pointSize: 10,
|
|
38
|
+
* points: [
|
|
39
|
+
* [0, 0, 0, 255, 255, 255, 255, { 'name': 'White point' }],
|
|
40
|
+
* [100, 100, 0, 255, 0, 0, 255, { 'name': 'Red point' }]
|
|
41
|
+
* ]
|
|
42
|
+
* }
|
|
43
|
+
* });
|
|
44
|
+
*/
|
|
45
|
+
declare class PointCloud {
|
|
46
|
+
static __counter__: number;
|
|
47
|
+
protected __id: number;
|
|
48
|
+
/**
|
|
49
|
+
* Cloud visibility.
|
|
50
|
+
* @public
|
|
51
|
+
* @type {boolean}
|
|
52
|
+
*/
|
|
53
|
+
visibility: boolean;
|
|
54
|
+
/**
|
|
55
|
+
* Point screen size in pixels.
|
|
56
|
+
* @public
|
|
57
|
+
* @type {number}
|
|
58
|
+
*/
|
|
59
|
+
pointSize: number;
|
|
60
|
+
/**
|
|
61
|
+
* Point picking border size in pixels.
|
|
62
|
+
* @public
|
|
63
|
+
* @type {number}
|
|
64
|
+
*/
|
|
65
|
+
pickingScale: number;
|
|
66
|
+
/**
|
|
67
|
+
* Parent collection render node.
|
|
68
|
+
* @protected
|
|
69
|
+
* @type {RenderNode | null}
|
|
70
|
+
*/
|
|
71
|
+
protected _renderNode: RenderNode | null;
|
|
72
|
+
/**
|
|
73
|
+
* Entity instance that holds this point cloud.
|
|
74
|
+
* @public
|
|
75
|
+
* @type {Entity | null}
|
|
76
|
+
*/
|
|
77
|
+
_entity: Entity | null;
|
|
78
|
+
/**
|
|
79
|
+
* Points properties.
|
|
80
|
+
* @protected
|
|
81
|
+
* @type {IPoint[]}
|
|
82
|
+
*/
|
|
83
|
+
protected _points: IPoint[];
|
|
84
|
+
/**
|
|
85
|
+
* Coordinates array.
|
|
86
|
+
* @protected
|
|
87
|
+
* @type {number[]}
|
|
88
|
+
*/
|
|
89
|
+
protected _coordinatesData: number[];
|
|
90
|
+
/**
|
|
91
|
+
* Color array.
|
|
92
|
+
* @protected
|
|
93
|
+
* @type {number[]}
|
|
94
|
+
*/
|
|
95
|
+
protected _colorData: number[];
|
|
96
|
+
/**
|
|
97
|
+
* Picking color array.
|
|
98
|
+
* @protected
|
|
99
|
+
* @type {number[]}
|
|
100
|
+
*/
|
|
101
|
+
protected _pickingColorData: number[];
|
|
102
|
+
protected _coordinatesBuffer: WebGLBufferExt | null;
|
|
103
|
+
protected _colorBuffer: WebGLBufferExt | null;
|
|
104
|
+
protected _pickingColorBuffer: WebGLBufferExt | null;
|
|
105
|
+
/**
|
|
106
|
+
* Handler that stores and renders this object.
|
|
107
|
+
* @public
|
|
108
|
+
* @type {PointCloudHandler}
|
|
109
|
+
*/
|
|
110
|
+
_handler: PointCloudHandler | null;
|
|
111
|
+
_handlerIndex: number;
|
|
112
|
+
protected _buffersUpdateCallbacks: Function[];
|
|
113
|
+
protected _changedBuffers: boolean[];
|
|
114
|
+
constructor(options?: IPointCloudParams);
|
|
115
|
+
/**
|
|
116
|
+
* Clears point cloud data
|
|
117
|
+
* @public
|
|
118
|
+
*/
|
|
119
|
+
clear(): void;
|
|
120
|
+
/**
|
|
121
|
+
* Sets cloud visibility.
|
|
122
|
+
* @public
|
|
123
|
+
* @param {boolean} visibility - Visibility flag.
|
|
124
|
+
*/
|
|
125
|
+
setVisibility(visibility: boolean): void;
|
|
126
|
+
/**
|
|
127
|
+
* @return {boolean} Point cloud visibility.
|
|
128
|
+
*/
|
|
129
|
+
getVisibility(): boolean;
|
|
130
|
+
/**
|
|
131
|
+
* Assign rendering scene node.
|
|
132
|
+
* @public
|
|
133
|
+
* @param {RenderNode} renderNode - Assigned render node.
|
|
134
|
+
*/
|
|
135
|
+
setRenderNode(renderNode: RenderNode): void;
|
|
136
|
+
/**
|
|
137
|
+
* Removes from entity.
|
|
138
|
+
* @public
|
|
139
|
+
*/
|
|
140
|
+
remove(): void;
|
|
141
|
+
/**
|
|
142
|
+
* Adds points to render.
|
|
143
|
+
* @public
|
|
144
|
+
* @param { Poi[]} points - Point cloud array.
|
|
145
|
+
* @example
|
|
146
|
+
* var points = [[0, 0, 0, 255, 255, 255, 255, { 'name': 'White point' }], [100, 100, 0, 255, 0, 0, 255, { 'name': 'Red point' }]];
|
|
147
|
+
*/
|
|
148
|
+
setPoints(points: Poi[]): void;
|
|
149
|
+
setPointPosition(index: number, x: number, y: number, z: number): void;
|
|
150
|
+
setPointColor(index: number, r: number, g: number, b: number, a: number): void;
|
|
151
|
+
addPoints(points: Poi[]): void;
|
|
152
|
+
addPoint(index: number, point: Poi): void;
|
|
153
|
+
/**
|
|
154
|
+
* Returns specific point by index.
|
|
155
|
+
* @public
|
|
156
|
+
* @param {number} index - Point index.
|
|
157
|
+
* @return {Poi} Specific point
|
|
158
|
+
*/
|
|
159
|
+
getPoint(index: number): IPoint;
|
|
160
|
+
removePoint(index: number): void;
|
|
161
|
+
insertPoint(index: number, point: Poi): void;
|
|
162
|
+
draw(): void;
|
|
163
|
+
drawPicking(): void;
|
|
164
|
+
/**
|
|
165
|
+
* Update gl buffers.
|
|
166
|
+
* @protected
|
|
167
|
+
*/
|
|
168
|
+
protected _update(): void;
|
|
169
|
+
/**
|
|
170
|
+
* Delete buffers
|
|
171
|
+
* @public
|
|
172
|
+
*/
|
|
173
|
+
_deleteBuffers(): void;
|
|
174
|
+
protected _createCoordinatesBuffer(): void;
|
|
175
|
+
protected _createColorBuffer(): void;
|
|
176
|
+
protected _createPickingColorBuffer(): void;
|
|
177
|
+
protected _setPickingColors(): void;
|
|
178
|
+
}
|
|
179
|
+
export { PointCloud };
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { EntityCollection } from "./EntityCollection";
|
|
2
|
+
import { PointCloud } from "./PointCloud";
|
|
3
|
+
import { Renderer } from "../renderer/Renderer";
|
|
4
|
+
import { RenderNode } from "../scene/RenderNode";
|
|
5
|
+
declare class PointCloudHandler {
|
|
6
|
+
static __counter__: number;
|
|
7
|
+
protected __id: number;
|
|
8
|
+
/**
|
|
9
|
+
* Picking rendering option.
|
|
10
|
+
* @public
|
|
11
|
+
* @type {boolean}
|
|
12
|
+
*/
|
|
13
|
+
pickingEnabled: boolean;
|
|
14
|
+
/**
|
|
15
|
+
* Parent collection
|
|
16
|
+
* @public
|
|
17
|
+
* @type {EntityCollection}
|
|
18
|
+
*/
|
|
19
|
+
_entityCollection: EntityCollection;
|
|
20
|
+
/**
|
|
21
|
+
* Renderer
|
|
22
|
+
* @protected
|
|
23
|
+
* @type {Renderer|null}
|
|
24
|
+
*/
|
|
25
|
+
protected _renderer: Renderer | null;
|
|
26
|
+
/**
|
|
27
|
+
* Point cloud array
|
|
28
|
+
* @protected
|
|
29
|
+
* @type {Array.<PointCloud>}
|
|
30
|
+
*/
|
|
31
|
+
protected _pointClouds: PointCloud[];
|
|
32
|
+
constructor(entityCollection: EntityCollection);
|
|
33
|
+
protected _initProgram(): void;
|
|
34
|
+
setRenderNode(renderNode: RenderNode): void;
|
|
35
|
+
add(pointCloud: PointCloud): void;
|
|
36
|
+
remove(pointCloud: PointCloud): void;
|
|
37
|
+
protected _reindexPointCloudArray(startIndex: number): void;
|
|
38
|
+
draw(): void;
|
|
39
|
+
drawPicking(): void;
|
|
40
|
+
clear(): void;
|
|
41
|
+
}
|
|
42
|
+
export { PointCloudHandler };
|
|
@@ -0,0 +1,345 @@
|
|
|
1
|
+
import { Entity } from "./Entity";
|
|
2
|
+
import { Extent } from "../Extent";
|
|
3
|
+
import { LonLat } from "../LonLat";
|
|
4
|
+
import { NumberArray3, Vec3 } from "../math/Vec3";
|
|
5
|
+
import { NumberArray2 } from "../math/Vec2";
|
|
6
|
+
import { NumberArray4 } from "../math/Vec4";
|
|
7
|
+
import { PolylineHandler } from "./PolylineHandler";
|
|
8
|
+
import { RenderNode } from "../scene/RenderNode";
|
|
9
|
+
import { WebGLBufferExt } from "../webgl/Handler";
|
|
10
|
+
import { TypedArray } from "../utils/shared";
|
|
11
|
+
import { Ellipsoid } from "../ellipsoid/Ellipsoid";
|
|
12
|
+
export type Geodetic = LonLat | NumberArray2 | NumberArray3;
|
|
13
|
+
export type Cartesian = Vec3 | NumberArray3;
|
|
14
|
+
export type SegmentPath3vExt = Cartesian[];
|
|
15
|
+
export type SegmentPathLonLatExt = Geodetic[];
|
|
16
|
+
export type SegmentPathColor = NumberArray4[];
|
|
17
|
+
export type SegmentPath3v = Vec3[];
|
|
18
|
+
export type SegmentPathLonLat = LonLat[];
|
|
19
|
+
export interface IPolylineParams {
|
|
20
|
+
altitude?: number;
|
|
21
|
+
thickness?: number;
|
|
22
|
+
opacity?: number;
|
|
23
|
+
color?: string;
|
|
24
|
+
visibility?: boolean;
|
|
25
|
+
isClosed?: boolean;
|
|
26
|
+
pathColors?: SegmentPathColor[];
|
|
27
|
+
path3v?: SegmentPath3vExt[];
|
|
28
|
+
pathLonLat?: SegmentPathLonLatExt[];
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Polyline object.
|
|
32
|
+
* @class
|
|
33
|
+
* @param {Object} [options] - Polyline options:
|
|
34
|
+
* @param {number} [options.thickness] - Thickness in screen pixels 1.5 is default.
|
|
35
|
+
* @param {Number} [options.altitude] - Relative to ground layers altitude value.
|
|
36
|
+
* @param {Vec4} [options.color] - RGBA color.
|
|
37
|
+
* @param {Boolean} [options.opacity] - Line opacity.
|
|
38
|
+
* @param {Boolean} [options.visibility] - Polyline visibility. True default.
|
|
39
|
+
* @param {Boolean} [options.isClosed] - Closed geometry type identification.
|
|
40
|
+
* @param {SegmentPathLonLatExt[]} [options.pathLonLat] - Polyline geodetic coordinates array. [[[0,0,0], [1,1,1],...]]
|
|
41
|
+
* @param {SegmentPath3vExt[]} [options.path3v] - LinesString cartesian coordinates array. [[[0,0,0], [1,1,1],...]]
|
|
42
|
+
* @param {SegmentPathColor[]} [options.pathColors] - Coordinates color. [[[1,0,0,1], [0,1,0,1],...]] for right and green colors.
|
|
43
|
+
*/
|
|
44
|
+
declare class Polyline {
|
|
45
|
+
static __counter__: number;
|
|
46
|
+
/**
|
|
47
|
+
* Object uniq identifier.
|
|
48
|
+
* @protected
|
|
49
|
+
* @type {number}
|
|
50
|
+
*/
|
|
51
|
+
protected __id: number;
|
|
52
|
+
altitude: number;
|
|
53
|
+
/**
|
|
54
|
+
* Polyline thickness in screen pixels.
|
|
55
|
+
* @public
|
|
56
|
+
* @type {number}
|
|
57
|
+
*/
|
|
58
|
+
thickness: number;
|
|
59
|
+
protected _opacity: number;
|
|
60
|
+
/**
|
|
61
|
+
* Polyline RGBA color.
|
|
62
|
+
* @protected
|
|
63
|
+
* @type {Float32Array} - (exactly 4 entries)
|
|
64
|
+
*/
|
|
65
|
+
protected _defaultColor: Float32Array | NumberArray4;
|
|
66
|
+
/**
|
|
67
|
+
* Polyline visibility.
|
|
68
|
+
* @public
|
|
69
|
+
* @type {boolean}
|
|
70
|
+
*/
|
|
71
|
+
visibility: boolean;
|
|
72
|
+
/**
|
|
73
|
+
* Polyline geometry ring type identification.
|
|
74
|
+
* @protected
|
|
75
|
+
* @type {Boolean}
|
|
76
|
+
*/
|
|
77
|
+
protected _closedLine: boolean;
|
|
78
|
+
/**
|
|
79
|
+
* Polyline cartesian coordinates.
|
|
80
|
+
* @public
|
|
81
|
+
* @type {Array.<Vec3>}
|
|
82
|
+
*/
|
|
83
|
+
_path3v: SegmentPath3vExt[];
|
|
84
|
+
protected _pathLengths: number[];
|
|
85
|
+
/**
|
|
86
|
+
* Polyline geodetic degrees coordinates.
|
|
87
|
+
* @private
|
|
88
|
+
* @type {Array.<LonLat>}
|
|
89
|
+
*/
|
|
90
|
+
protected _pathLonLat: SegmentPathLonLatExt[];
|
|
91
|
+
/**
|
|
92
|
+
* Polyline geodetic mercator coordinates.
|
|
93
|
+
* @public
|
|
94
|
+
* @type {Array.<LonLat>}
|
|
95
|
+
*/
|
|
96
|
+
_pathLonLatMerc: LonLat[][];
|
|
97
|
+
protected _pathColors: SegmentPathColor[];
|
|
98
|
+
/**
|
|
99
|
+
* Polyline geodetic extent.
|
|
100
|
+
* @protected
|
|
101
|
+
* @type {Extent}
|
|
102
|
+
*/
|
|
103
|
+
_extent: Extent;
|
|
104
|
+
protected _verticesHigh: TypedArray | number[];
|
|
105
|
+
protected _verticesLow: TypedArray | number[];
|
|
106
|
+
protected _orders: TypedArray | number[];
|
|
107
|
+
protected _indexes: TypedArray | number[];
|
|
108
|
+
protected _colors: TypedArray | number[];
|
|
109
|
+
protected _verticesHighBuffer: WebGLBufferExt | null;
|
|
110
|
+
protected _verticesLowBuffer: WebGLBufferExt | null;
|
|
111
|
+
protected _ordersBuffer: WebGLBufferExt | null;
|
|
112
|
+
protected _indexesBuffer: WebGLBufferExt | null;
|
|
113
|
+
protected _colorsBuffer: WebGLBufferExt | null;
|
|
114
|
+
protected _pickingColor: NumberArray3;
|
|
115
|
+
protected _renderNode: RenderNode | null;
|
|
116
|
+
/**
|
|
117
|
+
* Entity instance that holds this Polyline.
|
|
118
|
+
* @public
|
|
119
|
+
* @type {Entity}
|
|
120
|
+
*/
|
|
121
|
+
_entity: Entity | null;
|
|
122
|
+
/**
|
|
123
|
+
* Handler that stores and renders this Polyline object.
|
|
124
|
+
* @public
|
|
125
|
+
* @type {PolylineHandler | null}
|
|
126
|
+
*/
|
|
127
|
+
_handler: PolylineHandler | null;
|
|
128
|
+
_handlerIndex: number;
|
|
129
|
+
protected _buffersUpdateCallbacks: Function[];
|
|
130
|
+
protected _changedBuffers: boolean[];
|
|
131
|
+
constructor(options?: IPolylineParams);
|
|
132
|
+
/**
|
|
133
|
+
* Appends to the line array new cartesian coordinates line data.
|
|
134
|
+
* @static
|
|
135
|
+
*/
|
|
136
|
+
static appendLineData3v(path3v: SegmentPath3vExt[], pathColors: SegmentPathColor[], defaultColor: NumberArray4, isClosed: boolean, outVerticesHigh: number[], outVerticesLow: number[], outOrders: number[], outIndexes: number[], ellipsoid: Ellipsoid, outTransformedPathLonLat: SegmentPathLonLatExt[], outPath3v: SegmentPath3vExt[], outTransformedPathMerc: LonLat[][], outExtent: Extent, outColors: number[]): void;
|
|
137
|
+
/**
|
|
138
|
+
* Appends to the line new cartesian coordinates point data.
|
|
139
|
+
* @static
|
|
140
|
+
*/
|
|
141
|
+
static appendPoint3v(path3v: SegmentPath3vExt[], point3v: Vec3, pathColors: SegmentPathColor[], color: NumberArray4, isClosed: boolean, outVerticesHigh: number[], outVerticesLow: number[], outColors: number[], outOrders: number[], outIndexes: number[], ellipsoid: Ellipsoid | null, outTransformedPathLonLat: SegmentPathLonLatExt[], outTransformedPathMerc: LonLat[][], outExtent: Extent): void;
|
|
142
|
+
static setPathColors(pathLonLat: SegmentPathLonLatExt[], pathColors: SegmentPathColor[], defaultColor: NumberArray4, outColors: number[]): void;
|
|
143
|
+
/**
|
|
144
|
+
* Appends to the line array new geodetic coordinates line data.
|
|
145
|
+
* @static
|
|
146
|
+
*/
|
|
147
|
+
static appendLineDataLonLat(pathLonLat: SegmentPathLonLatExt[], pathColors: SegmentPathColor[], defaultColor: NumberArray4, isClosed: boolean, outVerticesHigh: number[], outVerticesLow: number[], outOrders: number[], outIndexes: number[], ellipsoid: Ellipsoid, outTransformedPathCartesian: SegmentPath3vExt[], outPathLonLat: SegmentPathLonLatExt[], outTransformedPathMerc: LonLat[][], outExtent: Extent, outColors: number[]): void;
|
|
148
|
+
/**
|
|
149
|
+
* Sets polyline path with cartesian coordinates.
|
|
150
|
+
* @protected
|
|
151
|
+
* @param {SegmentPath3vExt[]} path3v - Cartesian coordinates.
|
|
152
|
+
*/
|
|
153
|
+
protected _setEqualPath3v(path3v: SegmentPath3vExt[]): void;
|
|
154
|
+
/**
|
|
155
|
+
* Sets polyline with geodetic coordinates.
|
|
156
|
+
* @protected
|
|
157
|
+
* @param {SegmentPathLonLat[]} pathLonLat - Geodetic polyline path coordinates.
|
|
158
|
+
*/
|
|
159
|
+
protected _setEqualPathLonLat(pathLonLat: SegmentPathLonLat[]): void;
|
|
160
|
+
setPointLonLat(lonlat: LonLat, index: number, segmentIndex: number): void;
|
|
161
|
+
/**
|
|
162
|
+
* Changes cartesian point coordinates of the path
|
|
163
|
+
* @param {Vec3} coordinates - New coordinates
|
|
164
|
+
* @param {number} [index=0] - Path segment index
|
|
165
|
+
* @param {number} [segmentIndex=0] - Index of the point in the path segment
|
|
166
|
+
* @param {boolean} [skipLonLat=false] - Do not update geodetic coordinates
|
|
167
|
+
*/
|
|
168
|
+
setPoint3v(coordinates: Vec3, index?: number, segmentIndex?: number, skipLonLat?: boolean): void;
|
|
169
|
+
protected _resizePathLengths(index?: number): void;
|
|
170
|
+
/**
|
|
171
|
+
* Remove path segment
|
|
172
|
+
* @param {number} index - Path segment index
|
|
173
|
+
*/
|
|
174
|
+
removeSegment(index: number): void;
|
|
175
|
+
/**
|
|
176
|
+
* Remove point from the path
|
|
177
|
+
* @param {number} index - Point index in a path segment
|
|
178
|
+
* @param {number} [multiLineIndex=0] - Segment path index
|
|
179
|
+
*/
|
|
180
|
+
removePoint(index: number, multiLineIndex?: number): void;
|
|
181
|
+
/**
|
|
182
|
+
* Insert point coordinates in a path segment
|
|
183
|
+
* @param {Vec3} point3v - Point coordinates
|
|
184
|
+
* @param {number} [index=0] - Index in the path
|
|
185
|
+
* @param {NumberArray4} [color] - Point color
|
|
186
|
+
* @param {number} [multilineIndex=0] - Path segment index
|
|
187
|
+
*/
|
|
188
|
+
insertPoint3v(point3v: Vec3, index?: number, color?: NumberArray4, multilineIndex?: number): void;
|
|
189
|
+
/**
|
|
190
|
+
* Adds a new cartesian point in the end of the path in a last line segment.
|
|
191
|
+
* @public
|
|
192
|
+
* @param {Vec3} point3v - New coordinates.
|
|
193
|
+
* @param {NumberArray4} [color] -
|
|
194
|
+
* @param {boolean} [skipEllipsoid] -
|
|
195
|
+
*/
|
|
196
|
+
appendPoint3v(point3v: Vec3, color?: NumberArray4, skipEllipsoid?: boolean): void;
|
|
197
|
+
/**
|
|
198
|
+
* Append new point in the end of the path.
|
|
199
|
+
* @public
|
|
200
|
+
* @param {Vec3} point3v - New point coordinates.
|
|
201
|
+
* @param {number} [multiLineIndex=0] - Path segment index, first by default.
|
|
202
|
+
*/
|
|
203
|
+
addPoint3v(point3v: Vec3, multiLineIndex?: number): void;
|
|
204
|
+
/**
|
|
205
|
+
* Append new geodetic point in the end of the path.
|
|
206
|
+
* @public
|
|
207
|
+
* @param {LonLat} lonLat - New coordinate.
|
|
208
|
+
* @param {number} [multiLineIndex=0] - Path segment index, first by default.
|
|
209
|
+
*/
|
|
210
|
+
addPointLonLat(lonLat: LonLat, multiLineIndex?: number): void;
|
|
211
|
+
/**
|
|
212
|
+
* Clear polyline data.
|
|
213
|
+
* @public
|
|
214
|
+
*/
|
|
215
|
+
clear(): void;
|
|
216
|
+
/**
|
|
217
|
+
* Change path point color
|
|
218
|
+
* @param {NumberArray4} color - New color
|
|
219
|
+
* @param {number} [index=0] - Point index
|
|
220
|
+
* @param {number} [segmentIndex=0] - Path segment index
|
|
221
|
+
*/
|
|
222
|
+
setPointColor(color: NumberArray4, index?: number, segmentIndex?: number): void;
|
|
223
|
+
/**
|
|
224
|
+
* Sets polyline opacity.
|
|
225
|
+
* @public
|
|
226
|
+
* @param {number} opacity - Opacity.
|
|
227
|
+
*/
|
|
228
|
+
setOpacity(opacity: number): void;
|
|
229
|
+
/**
|
|
230
|
+
* Sets Polyline thickness in screen pixels.
|
|
231
|
+
* @public
|
|
232
|
+
* @param {number} thickness - Thickness.
|
|
233
|
+
*/
|
|
234
|
+
setAltitude(altitude: number): void;
|
|
235
|
+
/**
|
|
236
|
+
* Sets Polyline thickness in screen pixels.
|
|
237
|
+
* @public
|
|
238
|
+
* @param {number} thickness - Thickness.
|
|
239
|
+
*/
|
|
240
|
+
setThickness(thickness: number): void;
|
|
241
|
+
/**
|
|
242
|
+
* Returns thickness.
|
|
243
|
+
* @public
|
|
244
|
+
* @return {number} Thickness in screen pixels.
|
|
245
|
+
*/
|
|
246
|
+
getThickness(): number;
|
|
247
|
+
/**
|
|
248
|
+
* Sets visibility.
|
|
249
|
+
* @public
|
|
250
|
+
* @param {boolean} visibility - Polyline visibility.
|
|
251
|
+
*/
|
|
252
|
+
setVisibility(visibility: boolean): void;
|
|
253
|
+
/**
|
|
254
|
+
* Gets Polyline visibility.
|
|
255
|
+
* @public
|
|
256
|
+
* @return {boolean} Polyline visibility.
|
|
257
|
+
*/
|
|
258
|
+
getVisibility(): boolean;
|
|
259
|
+
/**
|
|
260
|
+
* Assign with render node.
|
|
261
|
+
* @public
|
|
262
|
+
* @param {RenderNode} renderNode -
|
|
263
|
+
*/
|
|
264
|
+
setRenderNode(renderNode: RenderNode): void;
|
|
265
|
+
protected _clearData(): void;
|
|
266
|
+
protected _createData3v(path3v: SegmentPath3vExt[]): void;
|
|
267
|
+
protected _createDataLonLat(pathLonlat: SegmentPathLonLatExt[]): void;
|
|
268
|
+
/**
|
|
269
|
+
* Removes from an entity.
|
|
270
|
+
* @public
|
|
271
|
+
*/
|
|
272
|
+
remove(): void;
|
|
273
|
+
setPickingColor3v(color: Vec3): void;
|
|
274
|
+
/**
|
|
275
|
+
* Returns polyline geodetic extent.
|
|
276
|
+
* @public
|
|
277
|
+
* @returns {Extent} - Geodetic extent
|
|
278
|
+
*/
|
|
279
|
+
getExtent(): Extent;
|
|
280
|
+
/**
|
|
281
|
+
* Returns path cartesian coordinates.
|
|
282
|
+
* @return {SegmentPath3vExt[]} Polyline path.
|
|
283
|
+
*/
|
|
284
|
+
getPath3v(): SegmentPath3vExt[];
|
|
285
|
+
/**
|
|
286
|
+
* Returns geodetic path coordinates.
|
|
287
|
+
* @return {SegmentPathLonLatExt[]} Polyline path.
|
|
288
|
+
*/
|
|
289
|
+
getPathLonLat(): SegmentPathLonLatExt[];
|
|
290
|
+
getPathColors(): NumberArray4[][];
|
|
291
|
+
/**
|
|
292
|
+
* @todo
|
|
293
|
+
* @param {NumberArray4[][]} pathColors
|
|
294
|
+
*/
|
|
295
|
+
setPathColors(pathColors: SegmentPathColor[]): void;
|
|
296
|
+
/**
|
|
297
|
+
* Sets polyline color
|
|
298
|
+
* @param {string} htmlColor- HTML color
|
|
299
|
+
*/
|
|
300
|
+
setColorHTML(htmlColor: string): void;
|
|
301
|
+
/**
|
|
302
|
+
* Sets polyline geodetic coordinates.
|
|
303
|
+
* @public
|
|
304
|
+
* @param {SegmentPathLonLat[]} pathLonLat - Polyline path cartesian coordinates.
|
|
305
|
+
* @param {Boolean} [forceEqual=false] - OPTIMIZATION FLAG: Makes assigning faster for size equal coordinates array.
|
|
306
|
+
*/
|
|
307
|
+
setPathLonLat(pathLonLat: SegmentPathLonLatExt[], forceEqual?: boolean): void;
|
|
308
|
+
/**
|
|
309
|
+
* Sets Polyline cartesian coordinates.
|
|
310
|
+
* @public
|
|
311
|
+
* @param {SegmentPath3vExt[]} path3v - Polyline path cartesian coordinates. (exactly 3 entries)
|
|
312
|
+
* @param {SegmentPathColor[]} [pathColors] - Polyline path cartesian coordinates. (exactly 3 entries)
|
|
313
|
+
* @param {Boolean} [forceEqual=false] - Makes assigning faster for size equal coordinates array.
|
|
314
|
+
*/
|
|
315
|
+
setPath3v(path3v: SegmentPath3vExt[], pathColors?: SegmentPathColor[], forceEqual?: boolean): void;
|
|
316
|
+
draw(): void;
|
|
317
|
+
drawPicking(): void;
|
|
318
|
+
/**
|
|
319
|
+
* Refresh buffers.
|
|
320
|
+
* @protected
|
|
321
|
+
*/
|
|
322
|
+
protected _refresh(): void;
|
|
323
|
+
/**
|
|
324
|
+
* Updates render buffers.
|
|
325
|
+
* @protected
|
|
326
|
+
*/
|
|
327
|
+
protected _update(): void;
|
|
328
|
+
/**
|
|
329
|
+
* Clear GL buffers.
|
|
330
|
+
* @public
|
|
331
|
+
*/
|
|
332
|
+
_deleteBuffers(): void;
|
|
333
|
+
/**
|
|
334
|
+
* Creates vertices buffers.
|
|
335
|
+
* @protected
|
|
336
|
+
*/
|
|
337
|
+
protected _createVerticesBuffer(): void;
|
|
338
|
+
/**
|
|
339
|
+
* Creates gl index and order buffer.
|
|
340
|
+
* @protected
|
|
341
|
+
*/
|
|
342
|
+
protected _createIndexBuffer(): void;
|
|
343
|
+
protected _createColorsBuffer(): void;
|
|
344
|
+
}
|
|
345
|
+
export { Polyline };
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { EntityCollection } from "./EntityCollection";
|
|
2
|
+
import { Polyline } from "./Polyline";
|
|
3
|
+
import { Renderer } from "../renderer/Renderer";
|
|
4
|
+
import { RenderNode } from "../scene/RenderNode";
|
|
5
|
+
declare class PolylineHandler {
|
|
6
|
+
static __counter__: number;
|
|
7
|
+
protected __id: number;
|
|
8
|
+
_entityCollection: EntityCollection;
|
|
9
|
+
pickingEnabled: boolean;
|
|
10
|
+
protected _renderer: Renderer | null;
|
|
11
|
+
protected _polylines: Polyline[];
|
|
12
|
+
constructor(entityCollection: EntityCollection);
|
|
13
|
+
protected _initProgram(): void;
|
|
14
|
+
setRenderNode(renderNode: RenderNode): void;
|
|
15
|
+
add(polyline: Polyline): void;
|
|
16
|
+
remove(polyline: Polyline): void;
|
|
17
|
+
reindexPolylineArray(startIndex: number): void;
|
|
18
|
+
draw(): void;
|
|
19
|
+
drawPicking(): void;
|
|
20
|
+
clear(): void;
|
|
21
|
+
}
|
|
22
|
+
export { PolylineHandler };
|