@openglobus/og 0.12.1 → 0.12.3
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/dist/@openglobus/og.css +1 -0
- package/dist/@openglobus/og.esm.js +21 -0
- package/dist/@openglobus/og.esm.js.map +1 -0
- package/dist/@openglobus/og.umd.js +21 -0
- package/dist/@openglobus/og.umd.js.map +1 -0
- package/package.json +2 -2
- package/src/og/entity/GeoObjectHandler.js +35 -16
- package/src/og/layer/KML.js +19 -12
- package/src/og/layer/Layer.js +4 -1
- package/src/og/scene/Planet.js +14 -14
- package/src/og/shaders/geoObject.js +15 -6
- package/types/Clock.d.ts +94 -0
- package/types/Deferred.d.ts +6 -0
- package/types/Events.d.ts +77 -0
- package/types/Extent.d.ts +166 -0
- package/types/Globe.d.ts +85 -0
- package/types/ImageCanvas.d.ts +123 -0
- package/types/Lock.d.ts +12 -0
- package/types/LonLat.d.ts +108 -0
- package/types/Popup.d.ts +42 -0
- package/types/QueueArray.d.ts +19 -0
- package/types/Rectangle.d.ts +80 -0
- package/types/Stack.d.ts +19 -0
- package/types/ajax.d.ts +24 -0
- package/types/arial.d.ts +48 -0
- package/types/astro/astro.d.ts +38 -0
- package/types/astro/earth.d.ts +7 -0
- package/types/astro/jd.d.ts +254 -0
- package/types/bv/Box.d.ts +30 -0
- package/types/bv/Sphere.d.ts +38 -0
- package/types/bv/index.d.ts +3 -0
- package/types/camera/Camera.d.ts +312 -0
- package/types/camera/Frustum.d.ts +133 -0
- package/types/camera/PlanetCamera.d.ts +219 -0
- package/types/camera/index.d.ts +3 -0
- package/types/cons.d.ts +40 -0
- package/types/control/CompassButton.d.ts +17 -0
- package/types/control/Control.d.ts +104 -0
- package/types/control/DebugInfo.d.ts +15 -0
- package/types/control/EarthCoordinates.d.ts +47 -0
- package/types/control/EarthNavigation.d.ts +43 -0
- package/types/control/GeoImageDragControl.d.ts +6 -0
- package/types/control/KeyboardNavigation.d.ts +21 -0
- package/types/control/LayerSwitcher.d.ts +21 -0
- package/types/control/Lighting.d.ts +16 -0
- package/types/control/MouseNavigation.d.ts +48 -0
- package/types/control/MouseWheelZoomControl.d.ts +45 -0
- package/types/control/ScaleControl.d.ts +22 -0
- package/types/control/ShowFps.d.ts +11 -0
- package/types/control/SimpleNavigation.d.ts +25 -0
- package/types/control/Sun.d.ts +50 -0
- package/types/control/ToggleWireframe.d.ts +12 -0
- package/types/control/TouchNavigation.d.ts +48 -0
- package/types/control/ZoomControl.d.ts +27 -0
- package/types/control/index.d.ts +18 -0
- package/types/ellipsoid/Ellipsoid.d.ts +146 -0
- package/types/ellipsoid/index.d.ts +3 -0
- package/types/ellipsoid/wgs84.d.ts +6 -0
- package/types/entity/BaseBillboard.d.ts +215 -0
- package/types/entity/Billboard.d.ts +94 -0
- package/types/entity/BillboardHandler.d.ts +79 -0
- package/types/entity/Entity.d.ts +348 -0
- package/types/entity/EntityCollection.d.ts +317 -0
- package/types/entity/GeoObject.d.ts +111 -0
- package/types/entity/GeoObjectHandler.d.ts +81 -0
- package/types/entity/Geometry.d.ts +74 -0
- package/types/entity/GeometryHandler.d.ts +76 -0
- package/types/entity/Label.d.ts +189 -0
- package/types/entity/LabelHandler.d.ts +31 -0
- package/types/entity/LabelWorker.d.ts +11 -0
- package/types/entity/PointCloud.d.ts +174 -0
- package/types/entity/PointCloudHandler.d.ts +38 -0
- package/types/entity/Polyline.d.ts +306 -0
- package/types/entity/PolylineHandler.d.ts +18 -0
- package/types/entity/Ray.d.ts +124 -0
- package/types/entity/RayHandler.d.ts +67 -0
- package/types/entity/ShapeHandler.d.ts +22 -0
- package/types/entity/Strip.d.ts +119 -0
- package/types/entity/StripHandler.d.ts +38 -0
- package/types/entity/index.d.ts +8 -0
- package/types/index.core.d.ts +65 -0
- package/types/index.d.ts +45 -0
- package/types/index.webgl.d.ts +7 -0
- package/types/input/KeyboardHandler.d.ts +10 -0
- package/types/input/MouseHandler.d.ts +5 -0
- package/types/input/TouchHandler.d.ts +5 -0
- package/types/input/input.d.ts +34 -0
- package/types/layer/BaseGeoImage.d.ts +94 -0
- package/types/layer/CanvasTiles.d.ts +67 -0
- package/types/layer/GeoImage.d.ts +52 -0
- package/types/layer/GeoTexture2d.d.ts +8 -0
- package/types/layer/GeoVideo.d.ts +55 -0
- package/types/layer/KML.d.ts +68 -0
- package/types/layer/Layer.d.ts +310 -0
- package/types/layer/Material.d.ts +45 -0
- package/types/layer/Vector.d.ts +208 -0
- package/types/layer/WMS.d.ts +61 -0
- package/types/layer/XYZ.d.ts +119 -0
- package/types/layer/index.d.ts +10 -0
- package/types/light/LightSource.d.ts +178 -0
- package/types/math/Line2.d.ts +11 -0
- package/types/math/Line3.d.ts +10 -0
- package/types/math/Mat3.d.ts +65 -0
- package/types/math/Mat4.d.ts +176 -0
- package/types/math/Plane.d.ts +18 -0
- package/types/math/Quat.d.ts +379 -0
- package/types/math/Ray.d.ts +82 -0
- package/types/math/Vec2.d.ts +309 -0
- package/types/math/Vec3.d.ts +467 -0
- package/types/math/Vec4.d.ts +162 -0
- package/types/math/coder.d.ts +43 -0
- package/types/math/index.d.ts +11 -0
- package/types/math.d.ts +261 -0
- package/types/mercator.d.ts +92 -0
- package/types/proj/EPSG3857.d.ts +6 -0
- package/types/proj/EPSG4326.d.ts +6 -0
- package/types/proj/Proj.d.ts +42 -0
- package/types/quadTree/EntityCollectionNode.d.ts +34 -0
- package/types/quadTree/Node.d.ts +60 -0
- package/types/quadTree/quadTree.d.ts +40 -0
- package/types/renderer/Renderer.d.ts +290 -0
- package/types/renderer/RendererEvents.d.ts +237 -0
- package/types/res/images.d.ts +3 -0
- package/types/scene/Axes.d.ts +11 -0
- package/types/scene/BaseNode.d.ts +60 -0
- package/types/scene/Planet.d.ts +576 -0
- package/types/scene/RenderNode.d.ts +142 -0
- package/types/scene/SkyBox.d.ts +10 -0
- package/types/scene/index.d.ts +4 -0
- package/types/segment/Segment.d.ts +275 -0
- package/types/segment/SegmentLonLat.d.ts +17 -0
- package/types/segment/Slice.d.ts +10 -0
- package/types/segment/segmentHelper.d.ts +13 -0
- package/types/shaders/billboard.d.ts +3 -0
- package/types/shaders/depth.d.ts +2 -0
- package/types/shaders/drawnode.d.ts +7 -0
- package/types/shaders/geoObject.d.ts +3 -0
- package/types/shaders/label.d.ts +4 -0
- package/types/shaders/pointCloud.d.ts +2 -0
- package/types/shaders/polyline.d.ts +3 -0
- package/types/shaders/ray.d.ts +2 -0
- package/types/shaders/screenFrame.d.ts +2 -0
- package/types/shaders/shape.d.ts +4 -0
- package/types/shaders/skybox.d.ts +2 -0
- package/types/shaders/toneMapping.d.ts +2 -0
- package/types/shapes/BaseShape.d.ts +250 -0
- package/types/shapes/Sphere.d.ts +41 -0
- package/types/terrain/BilTerrain.d.ts +7 -0
- package/types/terrain/EmptyTerrain.d.ts +73 -0
- package/types/terrain/Geoid.d.ts +26 -0
- package/types/terrain/GlobusTerrain.d.ts +116 -0
- package/types/terrain/MapboxTerrain.d.ts +7 -0
- package/types/terrain/index.d.ts +5 -0
- package/types/utils/FontAtlas.d.ts +15 -0
- package/types/utils/GeoImageCreator.d.ts +30 -0
- package/types/utils/ImagesCacheManager.d.ts +10 -0
- package/types/utils/Loader.d.ts +25 -0
- package/types/utils/NormalMapCreator.d.ts +39 -0
- package/types/utils/PlainSegmentWorker.d.ts +10 -0
- package/types/utils/TerrainWorker.d.ts +9 -0
- package/types/utils/TextureAtlas.d.ts +111 -0
- package/types/utils/VectorTileCreator.d.ts +16 -0
- package/types/utils/colorTable.d.ts +143 -0
- package/types/utils/earcut.d.ts +6 -0
- package/types/utils/shared.d.ts +231 -0
- package/types/webgl/Framebuffer.d.ts +135 -0
- package/types/webgl/Handler.d.ts +417 -0
- package/types/webgl/Multisample.d.ts +89 -0
- package/types/webgl/Program.d.ts +161 -0
- package/types/webgl/ProgramController.d.ts +89 -0
- package/types/webgl/callbacks.d.ts +1 -0
- package/types/webgl/index.d.ts +6 -0
- package/types/webgl/types.d.ts +2 -0
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @class
|
|
3
|
+
* @param {Object} options - Geo object parameters:
|
|
4
|
+
* @param {og.Vec3} [options.position] - Geo object position.
|
|
5
|
+
*/
|
|
6
|
+
export class GeoObject {
|
|
7
|
+
constructor(options: any);
|
|
8
|
+
scale: any;
|
|
9
|
+
scaleByDistance: Float32Array;
|
|
10
|
+
/**
|
|
11
|
+
* Geo object center cartesian position.
|
|
12
|
+
* @protected
|
|
13
|
+
* @type {og.Vec3}
|
|
14
|
+
*/
|
|
15
|
+
protected _position: og.Vec3;
|
|
16
|
+
_positionHigh: Vec3;
|
|
17
|
+
_positionLow: Vec3;
|
|
18
|
+
_pitch: any;
|
|
19
|
+
_yaw: any;
|
|
20
|
+
_roll: any;
|
|
21
|
+
_planet: any;
|
|
22
|
+
_lonLatAlt: LonLat;
|
|
23
|
+
/**
|
|
24
|
+
* RGBA color.
|
|
25
|
+
* @protected
|
|
26
|
+
* @type {og.Vec4}
|
|
27
|
+
*/
|
|
28
|
+
protected _color: og.Vec4;
|
|
29
|
+
_direction: Vec3;
|
|
30
|
+
_handler: any;
|
|
31
|
+
_handlerIndex: number;
|
|
32
|
+
_vertices: any;
|
|
33
|
+
_normals: any;
|
|
34
|
+
_indices: any;
|
|
35
|
+
instanced: any;
|
|
36
|
+
tag: any;
|
|
37
|
+
_indicesCount: any;
|
|
38
|
+
_verticesCount: number;
|
|
39
|
+
get planet(): any;
|
|
40
|
+
get renderer(): any;
|
|
41
|
+
/**
|
|
42
|
+
* Sets geo object opacity.
|
|
43
|
+
* @public
|
|
44
|
+
* @param {number} a - Billboard opacity.
|
|
45
|
+
*/
|
|
46
|
+
public setOpacity(a: number): void;
|
|
47
|
+
/**
|
|
48
|
+
* Sets RGBA color. Each channel from 0.0 to 1.0.
|
|
49
|
+
* @public
|
|
50
|
+
* @param {number} r - Red.
|
|
51
|
+
* @param {number} g - Green.
|
|
52
|
+
* @param {number} b - Blue.
|
|
53
|
+
* @param {number} a - Alpha.
|
|
54
|
+
*/
|
|
55
|
+
public setColor(r: number, g: number, b: number, a: number): void;
|
|
56
|
+
/**
|
|
57
|
+
* Sets RGBA color. Each channel from 0.0 to 1.0.
|
|
58
|
+
* @public
|
|
59
|
+
* @param {og.Vec4} color - RGBA vector.
|
|
60
|
+
*/
|
|
61
|
+
public setColor4v(color: og.Vec4): void;
|
|
62
|
+
/**
|
|
63
|
+
* Sets geo object visibility.
|
|
64
|
+
* @public
|
|
65
|
+
* @param {boolean} visibility - Visibility flag.
|
|
66
|
+
*/
|
|
67
|
+
public setVisibility(visibility: boolean): void;
|
|
68
|
+
_visibility: boolean;
|
|
69
|
+
/**
|
|
70
|
+
* Returns geo object visibility.
|
|
71
|
+
* @public
|
|
72
|
+
* @returns {boolean}
|
|
73
|
+
*/
|
|
74
|
+
public getVisibility(): boolean;
|
|
75
|
+
setLonLat(lon: any, lat: any, alt: any): void;
|
|
76
|
+
/**
|
|
77
|
+
* Sets geoObject position.
|
|
78
|
+
* @public
|
|
79
|
+
* @param {number} x - X coordinate.
|
|
80
|
+
* @param {number} y - Y coordinate.
|
|
81
|
+
* @param {number} z - Z coordinate.
|
|
82
|
+
*/
|
|
83
|
+
public setPosition(x: number, y: number, z: number): void;
|
|
84
|
+
/**
|
|
85
|
+
* Sets billboard position.
|
|
86
|
+
* @public
|
|
87
|
+
* @param {og.Vec3} position - Cartesian coordinates.
|
|
88
|
+
*/
|
|
89
|
+
public setPosition3v(position: og.Vec3): void;
|
|
90
|
+
setYaw(yaw: any): void;
|
|
91
|
+
setPitch(pitch: any): void;
|
|
92
|
+
setRoll(roll: any): void;
|
|
93
|
+
setScale(scale: any): void;
|
|
94
|
+
/**
|
|
95
|
+
* Removes geo object from handler.
|
|
96
|
+
* @public
|
|
97
|
+
*/
|
|
98
|
+
public remove(): void;
|
|
99
|
+
_entity: any;
|
|
100
|
+
/**
|
|
101
|
+
* Sets billboard picking color.
|
|
102
|
+
* @public
|
|
103
|
+
* @param {og.Vec3} color - Picking color.
|
|
104
|
+
*/
|
|
105
|
+
public setPickingColor3v(color: og.Vec3): void;
|
|
106
|
+
updateDirection(): void;
|
|
107
|
+
_qNorthFrame: Quat;
|
|
108
|
+
}
|
|
109
|
+
import { Vec3 } from "../math/index.js";
|
|
110
|
+
import { LonLat } from "../LonLat.js";
|
|
111
|
+
import { Quat } from "../math/index.js";
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
export class GeoObjectHandler {
|
|
2
|
+
static set _staticCounter(arg: any);
|
|
3
|
+
static get _staticCounter(): any;
|
|
4
|
+
constructor(entityCollection: any);
|
|
5
|
+
/**
|
|
6
|
+
* Picking rendering option.
|
|
7
|
+
* @public
|
|
8
|
+
* @type {boolean}
|
|
9
|
+
*/
|
|
10
|
+
public pickingEnabled: boolean;
|
|
11
|
+
_entityCollection: any;
|
|
12
|
+
_renderer: any;
|
|
13
|
+
_planet: any;
|
|
14
|
+
_geoObjects: any[];
|
|
15
|
+
_pitchRollArr: any[][];
|
|
16
|
+
_sizeArr: any[][];
|
|
17
|
+
_vertexArr: any[][];
|
|
18
|
+
_positionHighArr: any[][];
|
|
19
|
+
_positionLowArr: any[][];
|
|
20
|
+
_directionArr: any[][];
|
|
21
|
+
_rgbaArr: any[][];
|
|
22
|
+
_normalsArr: any[][];
|
|
23
|
+
_indicesArr: any[][];
|
|
24
|
+
_pickingColorArr: any[][];
|
|
25
|
+
_vehicleVisibleArr: any[][];
|
|
26
|
+
_pitchRollBuffer: any[];
|
|
27
|
+
_sizeBuffer: any[];
|
|
28
|
+
_vertexBuffer: any[];
|
|
29
|
+
_positionHighBuffer: any[];
|
|
30
|
+
_positionLowBuffer: any[];
|
|
31
|
+
_directionBuffer: any[];
|
|
32
|
+
_rgbaBuffer: any[];
|
|
33
|
+
_normalsBuffer: any[];
|
|
34
|
+
_indicesBuffer: any[];
|
|
35
|
+
_pickingColorBuffer: any[];
|
|
36
|
+
_vehicleVisibleBuffer: any[];
|
|
37
|
+
__staticId: number;
|
|
38
|
+
_buffersUpdateCallbacks: (() => void)[];
|
|
39
|
+
_changedBuffers: any[];
|
|
40
|
+
_instancedTags: Map<any, any>;
|
|
41
|
+
getObjectByIndex(index: any): any;
|
|
42
|
+
createVertexBuffer(): void;
|
|
43
|
+
createPitchRollBuffer(): void;
|
|
44
|
+
createVisibleBuffer(): void;
|
|
45
|
+
createSizeBuffer(): void;
|
|
46
|
+
createPositionBuffer(): void;
|
|
47
|
+
createRgbaBuffer(): void;
|
|
48
|
+
createDirectionBuffer(): void;
|
|
49
|
+
createNormalsBuffer(): void;
|
|
50
|
+
createIndicesBuffer(): void;
|
|
51
|
+
createPickingColorBuffer(): void;
|
|
52
|
+
initProgram(): void;
|
|
53
|
+
setRenderNode(renderNode: any): void;
|
|
54
|
+
setRenderer(planet: any): void;
|
|
55
|
+
_addGeoObjectToArray(geoObject: any): void;
|
|
56
|
+
_displayPASS(): void;
|
|
57
|
+
drawPicking(): void;
|
|
58
|
+
_pickingPASS(): void;
|
|
59
|
+
_recalculateIndices(startIndex: any): void;
|
|
60
|
+
_addIndices(g: any): void;
|
|
61
|
+
_removeIndices(geoObject: any): void;
|
|
62
|
+
setDirectionArr(index: any, direction: any): void;
|
|
63
|
+
setVisibility(index: any, visibility: any): void;
|
|
64
|
+
setPositionArr(index: any, positionHigh: any, positionLow: any): void;
|
|
65
|
+
setRgbaArr(index: any, rgba: any): void;
|
|
66
|
+
getTagIndexByObjectIndex(index: any): any;
|
|
67
|
+
getTagDataByObjectIndex(index: any): any;
|
|
68
|
+
setPickingColorArr(index: any, color: any): void;
|
|
69
|
+
setPitchRollArr(index: any, pitch: any, roll: any): void;
|
|
70
|
+
setScaleArr(index: any, scale: any): void;
|
|
71
|
+
refresh(): void;
|
|
72
|
+
_removeGeoObjects(): void;
|
|
73
|
+
clear(): void;
|
|
74
|
+
_deleteBuffers(): void;
|
|
75
|
+
update(): void;
|
|
76
|
+
draw(): void;
|
|
77
|
+
_reindexGeoObjects(startIndex: any, tag: any): void;
|
|
78
|
+
add(geoObject: any): void;
|
|
79
|
+
remove(geoObject: any): void;
|
|
80
|
+
_removeGeoObject(geoObject: any): void;
|
|
81
|
+
}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
export class Geometry {
|
|
2
|
+
static set _staticCounter(arg: any);
|
|
3
|
+
static get _staticCounter(): any;
|
|
4
|
+
static getType(typeStr: any): any;
|
|
5
|
+
/**
|
|
6
|
+
* Returns geometry feature extent.
|
|
7
|
+
@static
|
|
8
|
+
@param {Object} geometryObj - GeoJSON style geometry feature.
|
|
9
|
+
@param {LonLat[]} outCoordinates - Geometry feature coordinates clone.
|
|
10
|
+
@returns {Extent} -
|
|
11
|
+
*/
|
|
12
|
+
static getExtent(geometryObj: any, outCoordinates: LonLat[]): Extent;
|
|
13
|
+
constructor(options: any);
|
|
14
|
+
_id: number;
|
|
15
|
+
/**
|
|
16
|
+
* Entity instance that holds this geometry.
|
|
17
|
+
* @protected
|
|
18
|
+
* @type {Entity}
|
|
19
|
+
*/
|
|
20
|
+
protected _entity: Entity;
|
|
21
|
+
_handler: any;
|
|
22
|
+
_handlerIndex: number;
|
|
23
|
+
_polyVerticesHighMerc: any[];
|
|
24
|
+
_polyVerticesLowMerc: any[];
|
|
25
|
+
_polyVerticesLength: number;
|
|
26
|
+
_polyIndexesLength: number;
|
|
27
|
+
_polyVerticesHandlerIndex: number;
|
|
28
|
+
_polyIndexesHandlerIndex: number;
|
|
29
|
+
_lineVerticesHighMerc: any[];
|
|
30
|
+
_lineVerticesLowMerc: any[];
|
|
31
|
+
_lineVerticesLength: number;
|
|
32
|
+
_lineOrdersLength: number;
|
|
33
|
+
_lineIndexesLength: number;
|
|
34
|
+
_lineColorsLength: number;
|
|
35
|
+
_lineThicknessLength: number;
|
|
36
|
+
_lineVerticesHandlerIndex: number;
|
|
37
|
+
_lineOrdersHandlerIndex: number;
|
|
38
|
+
_lineIndexesHandlerIndex: number;
|
|
39
|
+
_lineThicknessHandlerIndex: number;
|
|
40
|
+
_lineColorsHandlerIndex: number;
|
|
41
|
+
_type: any;
|
|
42
|
+
_coordinates: any[];
|
|
43
|
+
_extent: Extent;
|
|
44
|
+
_style: any;
|
|
45
|
+
_visibility: any;
|
|
46
|
+
_pickingReady: boolean;
|
|
47
|
+
setGeometry(geoJson: any): Geometry;
|
|
48
|
+
setFillColor(r: any, g: any, b: any, a: any): Geometry;
|
|
49
|
+
setFillColor4v(rgba: any): Geometry;
|
|
50
|
+
setStrokeColor(r: any, g: any, b: any, a: any): Geometry;
|
|
51
|
+
setLineColor(r: any, g: any, b: any, a: any): Geometry;
|
|
52
|
+
setStrokeColor4v(rgba: any): Geometry;
|
|
53
|
+
setLineColor4v(rgba: any): Geometry;
|
|
54
|
+
setStrokeOpacity(opacity: any): Geometry;
|
|
55
|
+
setLineOpacity(opacity: any): Geometry;
|
|
56
|
+
setStrokeWidth(width: any): Geometry;
|
|
57
|
+
bringToFront(): Geometry;
|
|
58
|
+
setLineWidth(width: any): Geometry;
|
|
59
|
+
setFillOpacity(opacity: any): Geometry;
|
|
60
|
+
setVisibility(visibility: any): Geometry;
|
|
61
|
+
getVisibility(): any;
|
|
62
|
+
remove(): void;
|
|
63
|
+
getExtent(): Extent;
|
|
64
|
+
getType(): any;
|
|
65
|
+
}
|
|
66
|
+
export namespace GeometryType {
|
|
67
|
+
const POINT: number;
|
|
68
|
+
const LINESTRING: number;
|
|
69
|
+
const POLYGON: number;
|
|
70
|
+
const MULTIPOLYGON: number;
|
|
71
|
+
const MULTILINESTRING: number;
|
|
72
|
+
}
|
|
73
|
+
import { Extent } from "../Extent.js";
|
|
74
|
+
import { LonLat } from "../LonLat.js";
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
export class GeometryHandler {
|
|
2
|
+
static set _staticCounter(arg: any);
|
|
3
|
+
static get _staticCounter(): any;
|
|
4
|
+
static appendLineData(pathArr: any, isClosed: any, color: any, pickingColor: any, thickness: any, strokeColor: any, strokeSize: any, outVerticesHigh: any, outVerticesLow: any, outOrders: any, outIndexes: any, outColors: any, outPickingColors: any, outThickness: any, outStrokeColors: any, outStrokes: any, outVerticesHigh2: any, outVerticesLow2: any): void;
|
|
5
|
+
constructor(layer: any);
|
|
6
|
+
__staticId: number;
|
|
7
|
+
_layer: any;
|
|
8
|
+
_handler: any;
|
|
9
|
+
_geometries: any[];
|
|
10
|
+
_updatedGeometryArr: any[];
|
|
11
|
+
_updatedGeometry: {};
|
|
12
|
+
_removeGeometryExtentArr: any[];
|
|
13
|
+
_removeGeometryExtents: {};
|
|
14
|
+
_polyVerticesHighMerc: any[];
|
|
15
|
+
_polyVerticesLowMerc: any[];
|
|
16
|
+
_polyColors: any[];
|
|
17
|
+
_polyPickingColors: any[];
|
|
18
|
+
_polyIndexes: any[];
|
|
19
|
+
_lineVerticesHighMerc: any[];
|
|
20
|
+
_lineVerticesLowMerc: any[];
|
|
21
|
+
_lineOrders: any[];
|
|
22
|
+
_lineIndexes: any[];
|
|
23
|
+
_lineColors: any[];
|
|
24
|
+
_linePickingColors: any[];
|
|
25
|
+
_lineThickness: any[];
|
|
26
|
+
_lineStrokes: any[];
|
|
27
|
+
_lineStrokeColors: any[];
|
|
28
|
+
_polyVerticesHighBufferMerc: any;
|
|
29
|
+
_polyVerticesLowBufferMerc: any;
|
|
30
|
+
_polyColorsBuffer: any;
|
|
31
|
+
_polyPickingColorsBuffer: any;
|
|
32
|
+
_polyIndexesBuffer: any;
|
|
33
|
+
_lineVerticesHighBufferMerc: any;
|
|
34
|
+
_lineVerticesLowBufferMerc: any;
|
|
35
|
+
_lineColorsBuffer: any;
|
|
36
|
+
_linePickingColorsBuffer: any;
|
|
37
|
+
_lineThicknessBuffer: any;
|
|
38
|
+
_lineStrokesBuffer: any;
|
|
39
|
+
_lineStrokeColorsBuffer: any;
|
|
40
|
+
_lineOrdersBuffer: any;
|
|
41
|
+
_lineIndexesBuffer: any;
|
|
42
|
+
_buffersUpdateCallbacks: (() => void)[];
|
|
43
|
+
_changedBuffers: any[];
|
|
44
|
+
assignHandler(handler: any): void;
|
|
45
|
+
/**
|
|
46
|
+
* @public
|
|
47
|
+
* @param {Geometry} geometry - Geometry object.
|
|
48
|
+
*/
|
|
49
|
+
public add(geometry: Geometry): void;
|
|
50
|
+
remove(geometry: any): void;
|
|
51
|
+
_refreshRecursevely(geometry: any, treeNode: any): void;
|
|
52
|
+
_refreshRecursevelyExt(extent: any, treeNode: any): void;
|
|
53
|
+
_refreshPlanetNode(treeNode: any): void;
|
|
54
|
+
_updatePlanet(): void;
|
|
55
|
+
refresh(): void;
|
|
56
|
+
update(): void;
|
|
57
|
+
setGeometryVisibility(geometry: any): void;
|
|
58
|
+
setPolyColorArr(geometry: any, color: any): void;
|
|
59
|
+
setLineStrokeColorArr(geometry: any, color: any): void;
|
|
60
|
+
setLineColorArr(geometry: any, color: any): void;
|
|
61
|
+
setLineStrokeArr(geometry: any, width: any): void;
|
|
62
|
+
setLineThicknessArr(geometry: any, width: any): void;
|
|
63
|
+
bringToFront(geometry: any): void;
|
|
64
|
+
createPolyVerticesBuffer(): void;
|
|
65
|
+
createPolyIndexesBuffer(): void;
|
|
66
|
+
createPolyColorsBuffer(): void;
|
|
67
|
+
createPolyPickingColorsBuffer(): void;
|
|
68
|
+
createLineVerticesBuffer(): void;
|
|
69
|
+
createLineIndexesBuffer(): void;
|
|
70
|
+
createLineOrdersBuffer(): void;
|
|
71
|
+
createLineColorsBuffer(): void;
|
|
72
|
+
createLinePickingColorsBuffer(): void;
|
|
73
|
+
createLineThicknessBuffer(): void;
|
|
74
|
+
createLineStrokesBuffer(): void;
|
|
75
|
+
createLineStrokeColorsBuffer(): void;
|
|
76
|
+
}
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Billboard text label.
|
|
3
|
+
* @class
|
|
4
|
+
* @extends {BaseBillboard}
|
|
5
|
+
* @param {Object} [options] - Label options:
|
|
6
|
+
* @param {Vec3|Array.<number>} [options.position] - Billboard spatial position.
|
|
7
|
+
* @param {number} [options.rotation] - Screen angle rotaion.
|
|
8
|
+
* @param {Vec4|string|Array.<number>} [options.color] - Billboard color.
|
|
9
|
+
* @param {Vec3|Array.<number>} [options.alignedAxis] - Billboard aligned vector.
|
|
10
|
+
* @param {Vec3|Array.<number>} [options.offset] - Billboard center screen offset.
|
|
11
|
+
* @param {boolean} [options.visibility] - Visibility.
|
|
12
|
+
* @param {string} [options.text] - Text string.
|
|
13
|
+
* @param {string} [options.face] - HTML5 font face.
|
|
14
|
+
* @param {number} [options.size] - Font size in pixels.
|
|
15
|
+
* @param {string} [options.style] - HTML5 font style. Example 'normal', 'italic'.
|
|
16
|
+
* @param {string} [options.weight] - HTML5 font weight. Example 'normal', 'bold'.
|
|
17
|
+
* @param {number} [options.outline] - Text outline size. 0 - no outline, 1 - maximum outline. Default 0.58.
|
|
18
|
+
* @param {Vec4|string|Array.<number>} [options.outlineColor] - Outline color.
|
|
19
|
+
* @param {Label.ALIGN} [options.align] - Text horizontal align: "left", "right" and "center".
|
|
20
|
+
*/
|
|
21
|
+
export class Label extends BaseBillboard {
|
|
22
|
+
/**
|
|
23
|
+
* Label text string.
|
|
24
|
+
* @private
|
|
25
|
+
* @type {string}
|
|
26
|
+
*/
|
|
27
|
+
private _text;
|
|
28
|
+
/**
|
|
29
|
+
* HTML5 font face.
|
|
30
|
+
* @private
|
|
31
|
+
* @type {string}
|
|
32
|
+
*/
|
|
33
|
+
private _face;
|
|
34
|
+
/**
|
|
35
|
+
* Font size in pixels.
|
|
36
|
+
* @private
|
|
37
|
+
* @type {number}
|
|
38
|
+
*/
|
|
39
|
+
private _size;
|
|
40
|
+
/**
|
|
41
|
+
* Label outline.
|
|
42
|
+
* @private
|
|
43
|
+
* @type {number}
|
|
44
|
+
*/
|
|
45
|
+
private _outline;
|
|
46
|
+
/**
|
|
47
|
+
* Label outline color.
|
|
48
|
+
* @private
|
|
49
|
+
* @type {Vec4}
|
|
50
|
+
*/
|
|
51
|
+
private _outlineColor;
|
|
52
|
+
/**
|
|
53
|
+
* Text horizontal align: "left", "right" and "center".
|
|
54
|
+
* @private
|
|
55
|
+
* @type {Label.ALIGN}
|
|
56
|
+
*/
|
|
57
|
+
private _align;
|
|
58
|
+
/**
|
|
59
|
+
* Label font atlas index.
|
|
60
|
+
* @private
|
|
61
|
+
* @type {number}
|
|
62
|
+
*/
|
|
63
|
+
private _fontIndex;
|
|
64
|
+
/**
|
|
65
|
+
* Font atlas pointer.
|
|
66
|
+
* @private
|
|
67
|
+
* @type {utils.FontAtlas}
|
|
68
|
+
*/
|
|
69
|
+
private _fontAtlas;
|
|
70
|
+
/**
|
|
71
|
+
* Sets lablel text.
|
|
72
|
+
* @public
|
|
73
|
+
* @param {string} text - Text string.
|
|
74
|
+
* It can't be bigger than maximum labelHandler _maxLetters value.
|
|
75
|
+
*/
|
|
76
|
+
public setText(text: string): void;
|
|
77
|
+
/**
|
|
78
|
+
* Gets current text string.
|
|
79
|
+
* @public
|
|
80
|
+
* @returns {string}
|
|
81
|
+
*/
|
|
82
|
+
public getText(): string;
|
|
83
|
+
/**
|
|
84
|
+
* Sets label text align. Could be center, left or right. Left is default.
|
|
85
|
+
* @public
|
|
86
|
+
* @param {Label.ALIGN} align - Text align.
|
|
87
|
+
*/
|
|
88
|
+
public setAlign(align: Label.ALIGN): void;
|
|
89
|
+
/**
|
|
90
|
+
* Gets label text current alignment.
|
|
91
|
+
* @public
|
|
92
|
+
* @returns {Label.ALIGN}
|
|
93
|
+
*/
|
|
94
|
+
public getAlign(): Label.ALIGN;
|
|
95
|
+
/**
|
|
96
|
+
* Sets font face family.
|
|
97
|
+
* @public
|
|
98
|
+
* @param {string} face - Font face family.
|
|
99
|
+
*/
|
|
100
|
+
public setFace(face: string): void;
|
|
101
|
+
/**
|
|
102
|
+
* Gets current font face.
|
|
103
|
+
* @public
|
|
104
|
+
* @returns {string}
|
|
105
|
+
*/
|
|
106
|
+
public getFace(): string;
|
|
107
|
+
/**
|
|
108
|
+
* Sets label font size in pixels.
|
|
109
|
+
* @public
|
|
110
|
+
* @param {number} size - Label size in pixels.
|
|
111
|
+
*/
|
|
112
|
+
public setSize(size: number): void;
|
|
113
|
+
/**
|
|
114
|
+
* Gets label size in pixels.
|
|
115
|
+
* @public
|
|
116
|
+
* @returns {number}
|
|
117
|
+
*/
|
|
118
|
+
public getSize(): number;
|
|
119
|
+
/**
|
|
120
|
+
* Sets text outline border size. Where 0 - is no outline and 1 - is the maximum outline size.
|
|
121
|
+
* @public
|
|
122
|
+
* @param {number} outline - Text outline size.
|
|
123
|
+
*/
|
|
124
|
+
public setOutline(outline: number): void;
|
|
125
|
+
/**
|
|
126
|
+
* Gets text current outline size.
|
|
127
|
+
* @public
|
|
128
|
+
* @returns {number}
|
|
129
|
+
*/
|
|
130
|
+
public getOutline(): number;
|
|
131
|
+
/**
|
|
132
|
+
* Sets text outline color.
|
|
133
|
+
* @public
|
|
134
|
+
* @param {number} r - Red.
|
|
135
|
+
* @param {number} g - Green.
|
|
136
|
+
* @param {number} b - Blue.
|
|
137
|
+
* @param {number} a - Alpha.
|
|
138
|
+
*/
|
|
139
|
+
public setOutlineColor(r: number, g: number, b: number, a: number): void;
|
|
140
|
+
/**
|
|
141
|
+
* Sets text outline color.
|
|
142
|
+
* @public
|
|
143
|
+
* @param {Vec4} rgba - Color vector.
|
|
144
|
+
*/
|
|
145
|
+
public setOutlineColor4v(rgba: Vec4): void;
|
|
146
|
+
/**
|
|
147
|
+
* Sets text outline color HTML string.
|
|
148
|
+
* @public
|
|
149
|
+
* @param {string} color - HTML string color.
|
|
150
|
+
*/
|
|
151
|
+
public setOutlineColorHTML(color: string): void;
|
|
152
|
+
/**
|
|
153
|
+
* Gets outline color vector.
|
|
154
|
+
* @public
|
|
155
|
+
* @returns {Vec4}
|
|
156
|
+
*/
|
|
157
|
+
public getOutlineColor(): Vec4;
|
|
158
|
+
/**
|
|
159
|
+
* Sets outline opacity. Actually outline color alpha value.
|
|
160
|
+
* @public
|
|
161
|
+
* @param {number} opacity - Outline opacity.
|
|
162
|
+
*/
|
|
163
|
+
public setOutlineOpacity(opacity: number): void;
|
|
164
|
+
/**
|
|
165
|
+
* Gets outline opacity value.
|
|
166
|
+
* @public
|
|
167
|
+
* @returns {number}
|
|
168
|
+
*/
|
|
169
|
+
public getOutlineOpacity(): number;
|
|
170
|
+
/**
|
|
171
|
+
* Updates label parameters.
|
|
172
|
+
* @public
|
|
173
|
+
*/
|
|
174
|
+
public update(): Promise<void>;
|
|
175
|
+
_applyFontIndex(fontIndex: any): void;
|
|
176
|
+
/**
|
|
177
|
+
* Assigns font atlas and update.
|
|
178
|
+
* @public
|
|
179
|
+
* @param {utils.FontAtlas} fontAtlas - Font atlas.
|
|
180
|
+
*/
|
|
181
|
+
public assignFontAtlas(fontAtlas: utils.FontAtlas): void;
|
|
182
|
+
}
|
|
183
|
+
export namespace ALIGN {
|
|
184
|
+
const RIGHT: number;
|
|
185
|
+
const LEFT: number;
|
|
186
|
+
const CENTER: number;
|
|
187
|
+
}
|
|
188
|
+
import { BaseBillboard } from "./BaseBillboard.js";
|
|
189
|
+
import { Vec4 } from "../math/Vec4.js";
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
export class LabelHandler extends BillboardHandler {
|
|
2
|
+
/**
|
|
3
|
+
*
|
|
4
|
+
* @param {*} entityCollection
|
|
5
|
+
* @param {*} maxLetters
|
|
6
|
+
*/
|
|
7
|
+
constructor(entityCollection: any, maxLetters?: any);
|
|
8
|
+
_gliphParamBuffer: any;
|
|
9
|
+
_fontIndexBuffer: any;
|
|
10
|
+
_noOutlineBuffer: any;
|
|
11
|
+
_outlineBuffer: any;
|
|
12
|
+
_outlineColorBuffer: any;
|
|
13
|
+
_gliphParamArr: Float32Array;
|
|
14
|
+
_fontIndexArr: Float32Array;
|
|
15
|
+
_noOutlineArr: Float32Array;
|
|
16
|
+
_outlineArr: Float32Array;
|
|
17
|
+
_outlineColorArr: Float32Array;
|
|
18
|
+
_maxLetters: any;
|
|
19
|
+
_addLabelToArrays(label: any): void;
|
|
20
|
+
assignFontAtlas(label: any): void;
|
|
21
|
+
workerCallback(data: any, label: any): void;
|
|
22
|
+
setText(index: any, text: any, fontIndex: any, align: any): void;
|
|
23
|
+
setOutlineColorArr(index: any, rgba: any): void;
|
|
24
|
+
setOutlineArr(index: any, outline: any): void;
|
|
25
|
+
setFontIndexArr(index: any, fontIndex: any): void;
|
|
26
|
+
createFontIndexBuffer(): void;
|
|
27
|
+
createOutlineBuffer(): void;
|
|
28
|
+
createOutlineColorBuffer(): void;
|
|
29
|
+
setMaxLetters(c: any): void;
|
|
30
|
+
}
|
|
31
|
+
import { BillboardHandler } from "./BillboardHandler.js";
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export const LOCK_UPDATE: -2;
|
|
2
|
+
export const LOCK_FREE: -1;
|
|
3
|
+
export class LabelWorker {
|
|
4
|
+
constructor(numWorkers?: number);
|
|
5
|
+
_id: number;
|
|
6
|
+
_source: {};
|
|
7
|
+
_freeWorkerQueue: Worker[];
|
|
8
|
+
_pendingQueue: any[];
|
|
9
|
+
check(): void;
|
|
10
|
+
make(handler: any, label: any): void;
|
|
11
|
+
}
|