@openglobus/og 0.22.2 → 0.24.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/css/og.css +137 -1
- package/lib/@openglobus/js/Globe.d.ts +0 -1
- package/lib/@openglobus/js/Object3d.d.ts +20 -10
- package/lib/@openglobus/js/camera/Camera.d.ts +57 -15
- package/lib/@openglobus/js/camera/Frustum.d.ts +3 -0
- package/lib/@openglobus/js/camera/PlanetCamera.d.ts +13 -0
- package/lib/@openglobus/js/control/CameraLock.d.ts +38 -0
- package/lib/@openglobus/js/control/MouseNavigation.d.ts +62 -51
- package/lib/@openglobus/js/control/OldMouseNavigation.d.ts +64 -0
- package/lib/@openglobus/js/control/SimpleNavigation.d.ts +27 -10
- package/lib/@openglobus/js/control/geoObjectEditor/ArrowEntity.d.ts +15 -0
- package/lib/@openglobus/js/control/geoObjectEditor/AxisTrackEntity.d.ts +9 -0
- package/lib/@openglobus/js/control/geoObjectEditor/GeoObjectEditor.d.ts +13 -0
- package/lib/@openglobus/js/control/geoObjectEditor/GeoObjectEditorDialog.d.ts +69 -0
- package/lib/@openglobus/js/control/geoObjectEditor/GeoObjectEditorScene.d.ts +78 -9
- package/lib/@openglobus/js/control/geoObjectEditor/MoveAxisEntity.d.ts +17 -0
- package/lib/@openglobus/js/control/geoObjectEditor/MovePlaneEntity.d.ts +7 -0
- package/lib/@openglobus/js/control/geoObjectEditor/RotateEntity.d.ts +9 -0
- package/lib/@openglobus/js/control/geoObjectEditor/colors.d.ts +8 -0
- package/lib/@openglobus/js/control/index.d.ts +3 -2
- package/lib/@openglobus/js/entity/Entity.d.ts +282 -19
- package/lib/@openglobus/js/entity/EntityCollection.d.ts +8 -9
- package/lib/@openglobus/js/entity/GeoObject.d.ts +135 -39
- package/lib/@openglobus/js/entity/GeoObjectHandler.d.ts +39 -63
- package/lib/@openglobus/js/entity/InstanceData.d.ts +76 -0
- package/lib/@openglobus/js/entity/Polyline.d.ts +19 -6
- package/lib/@openglobus/js/entity/PolylineHandler.d.ts +7 -0
- package/lib/@openglobus/js/index.d.ts +2 -1
- package/lib/@openglobus/js/input/MouseHandler.d.ts +1 -0
- package/lib/@openglobus/js/layer/Vector.d.ts +4 -0
- package/lib/@openglobus/js/light/LightSource.d.ts +1 -139
- package/lib/@openglobus/js/math/Mat3.d.ts +1 -1
- package/lib/@openglobus/js/math/Mat4.d.ts +10 -1
- package/lib/@openglobus/js/math/Plane.d.ts +3 -1
- package/lib/@openglobus/js/math/Quat.d.ts +47 -33
- package/lib/@openglobus/js/math/Ray.d.ts +10 -14
- package/lib/@openglobus/js/math/Vec2.d.ts +22 -0
- package/lib/@openglobus/js/math/Vec3.d.ts +15 -0
- package/lib/@openglobus/js/math.d.ts +2 -2
- package/lib/@openglobus/js/quadTree/EntityCollectionNode.d.ts +2 -2
- package/lib/@openglobus/js/quadTree/Node.d.ts +1 -1
- package/lib/@openglobus/js/quadTree/earth/EarthEntityCollectionNodeLonLat.d.ts +1 -1
- package/lib/@openglobus/js/quadTree/equi/EquiEntityCollectionNodeLonLat.d.ts +1 -1
- package/lib/@openglobus/js/renderer/Renderer.d.ts +63 -44
- package/lib/@openglobus/js/renderer/RendererEvents.d.ts +2 -0
- package/lib/@openglobus/js/scene/Planet.d.ts +15 -7
- package/lib/@openglobus/js/scene/RenderNode.d.ts +10 -25
- package/lib/@openglobus/js/shaders/drawnode.d.ts +1 -0
- package/lib/@openglobus/js/shaders/geoObject.d.ts +1 -0
- package/lib/@openglobus/js/shaders/utils.d.ts +1 -1
- package/lib/@openglobus/js/ui/Checkbox.d.ts +31 -0
- package/lib/@openglobus/js/ui/Dialog.d.ts +3 -0
- package/lib/@openglobus/js/ui/Input.d.ts +32 -0
- package/lib/@openglobus/js/ui/View.d.ts +3 -1
- package/lib/@openglobus/js/utils/objParser.d.ts +44 -12
- package/lib/@openglobus/js/utils/shared.d.ts +22 -0
- package/lib/@openglobus/js/webgl/BaseFramebuffer.d.ts +0 -1
- package/lib/@openglobus/js/webgl/Framebuffer.d.ts +35 -8
- package/lib/@openglobus/js/webgl/Handler.d.ts +22 -12
- 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/Globe.d.ts +0 -1
- package/lib/js/Globe.js +4 -2
- package/lib/js/Object3d.d.ts +20 -10
- package/lib/js/Object3d.js +124 -48
- package/lib/js/Popup.js +1 -1
- package/lib/js/camera/Camera.d.ts +57 -15
- package/lib/js/camera/Camera.js +109 -29
- package/lib/js/camera/Frustum.d.ts +3 -0
- package/lib/js/camera/Frustum.js +7 -0
- package/lib/js/camera/PlanetCamera.d.ts +13 -0
- package/lib/js/camera/PlanetCamera.js +52 -5
- package/lib/js/control/Atmosphere.js +10 -6
- package/lib/js/control/CameraLock.d.ts +38 -0
- package/lib/js/control/CameraLock.js +216 -0
- package/lib/js/control/Control.js +1 -1
- package/lib/js/control/DebugInfo.js +38 -8
- package/lib/js/control/KeyboardNavigation.js +9 -9
- package/lib/js/control/MouseNavigation.d.ts +62 -51
- package/lib/js/control/MouseNavigation.js +361 -305
- package/lib/js/control/MouseWheelZoomControl.d.ts +0 -44
- package/lib/js/control/MouseWheelZoomControl.js +270 -181
- package/lib/js/control/OldMouseNavigation.d.ts +64 -0
- package/lib/js/control/OldMouseNavigation.js +368 -0
- package/lib/js/control/ScaleControl.js +11 -5
- package/lib/js/control/SimpleNavigation.d.ts +27 -10
- package/lib/js/control/SimpleNavigation.js +149 -49
- package/lib/js/control/Sun.js +6 -6
- package/lib/js/control/TouchNavigation.js +11 -8
- package/lib/js/control/elevationProfile/ElevationProfileScene.js +6 -5
- package/lib/js/control/geoObjectEditor/ArrowEntity.d.ts +15 -0
- package/lib/js/control/geoObjectEditor/ArrowEntity.js +59 -0
- package/lib/js/control/geoObjectEditor/AxisTrackEntity.d.ts +9 -0
- package/lib/js/control/geoObjectEditor/AxisTrackEntity.js +93 -0
- package/lib/js/control/geoObjectEditor/GeoObjectEditor.d.ts +13 -0
- package/lib/js/control/geoObjectEditor/GeoObjectEditor.js +30 -0
- package/lib/js/control/geoObjectEditor/GeoObjectEditorDialog.d.ts +69 -0
- package/lib/js/control/geoObjectEditor/GeoObjectEditorDialog.js +488 -0
- package/lib/js/control/geoObjectEditor/GeoObjectEditorScene.d.ts +78 -9
- package/lib/js/control/geoObjectEditor/GeoObjectEditorScene.js +487 -43
- package/lib/js/control/geoObjectEditor/MoveAxisEntity.d.ts +17 -0
- package/lib/js/control/geoObjectEditor/MoveAxisEntity.js +107 -0
- package/lib/js/control/geoObjectEditor/MovePlaneEntity.d.ts +7 -0
- package/lib/js/control/geoObjectEditor/MovePlaneEntity.js +31 -0
- package/lib/js/control/geoObjectEditor/RotateEntity.d.ts +9 -0
- package/lib/js/control/geoObjectEditor/RotateEntity.js +105 -0
- package/lib/js/control/geoObjectEditor/colors.d.ts +8 -0
- package/lib/js/control/geoObjectEditor/colors.js +8 -0
- package/lib/js/control/index.d.ts +3 -2
- package/lib/js/control/index.js +3 -2
- package/lib/js/control/timeline/TimelineControl.js +2 -0
- package/lib/js/control/visibleExtent/Segment.js +4 -4
- package/lib/js/entity/Entity.d.ts +282 -19
- package/lib/js/entity/Entity.js +497 -62
- package/lib/js/entity/EntityCollection.d.ts +8 -9
- package/lib/js/entity/EntityCollection.js +48 -45
- package/lib/js/entity/GeoObject.d.ts +135 -39
- package/lib/js/entity/GeoObject.js +150 -90
- package/lib/js/entity/GeoObjectHandler.d.ts +39 -63
- package/lib/js/entity/GeoObjectHandler.js +198 -295
- package/lib/js/entity/InstanceData.d.ts +76 -0
- package/lib/js/entity/InstanceData.js +347 -0
- package/lib/js/entity/Polyline.d.ts +19 -6
- package/lib/js/entity/Polyline.js +76 -36
- package/lib/js/entity/PolylineHandler.d.ts +7 -0
- package/lib/js/entity/PolylineHandler.js +26 -1
- package/lib/js/index.d.ts +2 -1
- package/lib/js/index.js +2 -1
- package/lib/js/input/MouseHandler.d.ts +1 -0
- package/lib/js/input/MouseHandler.js +12 -1
- package/lib/js/layer/Bing.js +2 -2
- package/lib/js/layer/Vector.d.ts +4 -0
- package/lib/js/layer/Vector.js +16 -0
- package/lib/js/light/LightSource.d.ts +1 -139
- package/lib/js/light/LightSource.js +21 -227
- package/lib/js/math/Mat3.d.ts +1 -1
- package/lib/js/math/Mat3.js +1 -1
- package/lib/js/math/Mat4.d.ts +10 -1
- package/lib/js/math/Mat4.js +17 -1
- package/lib/js/math/Plane.d.ts +3 -1
- package/lib/js/math/Plane.js +11 -1
- package/lib/js/math/Quat.d.ts +47 -33
- package/lib/js/math/Quat.js +92 -90
- package/lib/js/math/Ray.d.ts +10 -14
- package/lib/js/math/Ray.js +56 -33
- package/lib/js/math/Vec2.d.ts +22 -0
- package/lib/js/math/Vec2.js +32 -0
- package/lib/js/math/Vec3.d.ts +15 -0
- package/lib/js/math/Vec3.js +30 -1
- package/lib/js/math.d.ts +2 -2
- package/lib/js/math.js +3 -3
- package/lib/js/quadTree/EntityCollectionNode.d.ts +2 -2
- package/lib/js/quadTree/EntityCollectionNode.js +8 -8
- package/lib/js/quadTree/Node.d.ts +1 -1
- package/lib/js/quadTree/Node.js +2 -2
- package/lib/js/quadTree/QuadTreeStrategy.js +1 -1
- package/lib/js/quadTree/earth/EarthEntityCollectionNodeLonLat.d.ts +1 -1
- package/lib/js/quadTree/earth/EarthEntityCollectionNodeLonLat.js +2 -2
- package/lib/js/quadTree/equi/EquiEntityCollectionNodeLonLat.d.ts +1 -1
- package/lib/js/quadTree/equi/EquiEntityCollectionNodeLonLat.js +2 -2
- package/lib/js/renderer/Renderer.d.ts +63 -44
- package/lib/js/renderer/Renderer.js +267 -266
- package/lib/js/renderer/RendererEvents.d.ts +2 -0
- package/lib/js/renderer/RendererEvents.js +5 -2
- package/lib/js/scene/Planet.d.ts +15 -7
- package/lib/js/scene/Planet.js +133 -90
- package/lib/js/scene/RenderNode.d.ts +10 -25
- package/lib/js/scene/RenderNode.js +70 -58
- package/lib/js/segment/Segment.js +4 -4
- package/lib/js/shaders/depth.js +2 -5
- package/lib/js/shaders/drawnode.d.ts +1 -0
- package/lib/js/shaders/drawnode.js +51 -52
- package/lib/js/shaders/geoObject.d.ts +1 -0
- package/lib/js/shaders/geoObject.js +154 -91
- package/lib/js/shaders/polyline.js +68 -51
- package/lib/js/shaders/utils.d.ts +1 -1
- package/lib/js/shaders/utils.js +11 -0
- package/lib/js/terrain/GlobusTerrain.js +2 -2
- package/lib/js/ui/Checkbox.d.ts +31 -0
- package/lib/js/ui/Checkbox.js +110 -0
- package/lib/js/ui/Color.js +2 -1
- package/lib/js/ui/Dialog.d.ts +3 -0
- package/lib/js/ui/Dialog.js +20 -0
- package/lib/js/ui/Input.d.ts +32 -0
- package/lib/js/ui/Input.js +107 -0
- package/lib/js/ui/View.d.ts +3 -1
- package/lib/js/ui/View.js +6 -0
- package/lib/js/utils/objParser.d.ts +44 -12
- package/lib/js/utils/objParser.js +241 -149
- package/lib/js/utils/shared.d.ts +22 -0
- package/lib/js/utils/shared.js +34 -0
- package/lib/js/webgl/BaseFramebuffer.d.ts +0 -1
- package/lib/js/webgl/Framebuffer.d.ts +35 -8
- package/lib/js/webgl/Framebuffer.js +136 -29
- package/lib/js/webgl/Handler.d.ts +22 -12
- package/lib/js/webgl/Handler.js +53 -34
- package/lib/js/webgl/Program.js +0 -8
- package/package.json +5 -3
- package/lib/@openglobus/js/control/EarthNavigation.d.ts +0 -50
- package/lib/@openglobus/js/control/MouseWheelZoomControl.d.ts +0 -44
- package/lib/js/control/EarthNavigation.d.ts +0 -50
- package/lib/js/control/EarthNavigation.js +0 -202
|
@@ -1,34 +1,52 @@
|
|
|
1
1
|
import { Entity } from "./Entity";
|
|
2
2
|
import { Quat, Vec3, Vec4 } from "../math/index";
|
|
3
|
-
import { GeoObjectHandler
|
|
3
|
+
import { GeoObjectHandler } from "./GeoObjectHandler";
|
|
4
|
+
import { InstanceData } from "./InstanceData";
|
|
4
5
|
import { NumberArray3 } from "../math/Vec3";
|
|
5
6
|
import { NumberArray4 } from "../math/Vec4";
|
|
6
7
|
import { Object3d } from "../Object3d";
|
|
8
|
+
export declare const LOCAL_FORWARD: Vec3;
|
|
9
|
+
/**
|
|
10
|
+
* Interface for GeoObject parameters.
|
|
11
|
+
* @typedef {Object} IGeoObjectParams
|
|
12
|
+
* @property {Object3d} [object3d] - 3D object associated with the geo object.
|
|
13
|
+
* @property {string} [objSrc] - Source url of the 3D object.
|
|
14
|
+
* @property {string} [tag] - Unique instancing drawing identifier tag.
|
|
15
|
+
* @property {Vec3 | NumberArray3} [position] - Position in Cartesian coordinates.
|
|
16
|
+
* @property {number | Vec3 | NumberArray3} [scale] - Scale of the object.
|
|
17
|
+
* @property {Vec3 | NumberArray3} [translate] - Translation offset.
|
|
18
|
+
* @property {Vec4 | NumberArray4 | string} [color] - RGBA color or HTML color string.
|
|
19
|
+
* @property {boolean} [visibility] - Visibility flag.
|
|
20
|
+
*/
|
|
7
21
|
export interface IGeoObjectParams {
|
|
8
22
|
object3d?: Object3d;
|
|
9
23
|
objSrc?: string;
|
|
10
|
-
textureSrc?: string;
|
|
11
24
|
tag?: string;
|
|
12
25
|
position?: Vec3 | NumberArray3;
|
|
13
|
-
pitch?: number;
|
|
14
|
-
yaw?: number;
|
|
15
|
-
roll?: number;
|
|
16
26
|
scale?: number | Vec3 | NumberArray3;
|
|
17
27
|
translate?: Vec3 | NumberArray3;
|
|
18
28
|
color?: Vec4 | NumberArray4 | string;
|
|
19
29
|
visibility?: boolean;
|
|
20
30
|
}
|
|
21
31
|
/**
|
|
32
|
+
* Represents 3D object on the the globe or 3d space
|
|
22
33
|
* @class
|
|
23
|
-
* @param {
|
|
24
|
-
* @param {
|
|
34
|
+
* @param {IGeoObjectParams} options - Geo object parameters:
|
|
35
|
+
* @param {Object3d} [options.object3d] - 3D object associated with the geo object.
|
|
36
|
+
* @param {string} [options.objSrc] - Source url of the 3D object.
|
|
37
|
+
* @param {string} [options.tag] - Unique instancing drawing identifier tag.
|
|
38
|
+
* @param {Vec3 | NumberArray3} [options.position] - Position in Cartesian coordinates.
|
|
39
|
+
* @param {number | Vec3 | NumberArray3} [options.scale=1] - Scale of the object.
|
|
40
|
+
* @param {Vec3 | NumberArray3} [options.translate] - Translation offset.
|
|
41
|
+
* @param {Vec4 | NumberArray4 | string} [options.color] - RGBA color or HTML color string.
|
|
42
|
+
* @param {boolean} [options.visibility=true] - Visibility flag.
|
|
25
43
|
*
|
|
26
44
|
* @todo: GeoObject and GeoObjectHandler provides instanced objects only.
|
|
27
45
|
* It would be nice if it could provide not instanced rendering loop too.
|
|
28
46
|
*/
|
|
29
47
|
declare class GeoObject {
|
|
30
48
|
protected _tag: string;
|
|
31
|
-
|
|
49
|
+
static __counter__: number;
|
|
32
50
|
/**
|
|
33
51
|
* Entity instance that holds this geo object.
|
|
34
52
|
* @public
|
|
@@ -41,22 +59,18 @@ declare class GeoObject {
|
|
|
41
59
|
* @type {Vec3}
|
|
42
60
|
*/
|
|
43
61
|
protected _position: Vec3;
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
protected _pitch: number;
|
|
47
|
-
protected _yaw: number;
|
|
48
|
-
protected _roll: number;
|
|
49
|
-
protected _pitchRad: number;
|
|
50
|
-
protected _yawRad: number;
|
|
51
|
-
protected _rollRad: number;
|
|
62
|
+
_rtcPositionHigh: Vec3;
|
|
63
|
+
_rtcPositionLow: Vec3;
|
|
52
64
|
protected _scale: Vec3;
|
|
53
65
|
protected _translate: Vec3;
|
|
66
|
+
protected _localPosition: Vec3;
|
|
54
67
|
/**
|
|
55
68
|
* RGBA color.
|
|
56
69
|
* @public
|
|
57
70
|
* @type {Vec4}
|
|
58
71
|
*/
|
|
59
72
|
_color: Vec4;
|
|
73
|
+
protected _qFrame: Quat;
|
|
60
74
|
_qRot: Quat;
|
|
61
75
|
protected _direction: Vec3;
|
|
62
76
|
_handler: GeoObjectHandler | null;
|
|
@@ -64,35 +78,67 @@ declare class GeoObject {
|
|
|
64
78
|
_tagData: InstanceData | null;
|
|
65
79
|
_tagDataIndex: number;
|
|
66
80
|
protected _object3d: Object3d;
|
|
67
|
-
protected _visibility: boolean;
|
|
68
|
-
protected _qNorthFrame: Quat;
|
|
69
|
-
private _textureSrc?;
|
|
70
81
|
_objectSrc?: string;
|
|
82
|
+
protected _visibility: boolean;
|
|
71
83
|
protected _children: GeoObject[];
|
|
72
84
|
constructor(options: IGeoObjectParams);
|
|
85
|
+
/**
|
|
86
|
+
* Gets the unique tag of the geo object.
|
|
87
|
+
* @returns {string}
|
|
88
|
+
*/
|
|
73
89
|
get tag(): string;
|
|
90
|
+
/**
|
|
91
|
+
* Gets the position of the geo object.
|
|
92
|
+
* @public
|
|
93
|
+
* @returns {Vec3}
|
|
94
|
+
*/
|
|
74
95
|
getPosition(): Vec3;
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
96
|
+
/**
|
|
97
|
+
* Gets the 3D object associated with this geo object.
|
|
98
|
+
* @public
|
|
99
|
+
* @returns {Object3d}
|
|
100
|
+
*/
|
|
78
101
|
get object3d(): Object3d;
|
|
102
|
+
/**
|
|
103
|
+
* Gets geometry mesh vertices.
|
|
104
|
+
* @public
|
|
105
|
+
* @returns {number[]}
|
|
106
|
+
*/
|
|
79
107
|
get vertices(): number[];
|
|
108
|
+
/**
|
|
109
|
+
* Gets geometry mesh normals.
|
|
110
|
+
* @public
|
|
111
|
+
* @returns {number[]}
|
|
112
|
+
*/
|
|
80
113
|
get normals(): number[];
|
|
114
|
+
/**
|
|
115
|
+
* Gets geometry mesh texture coordinates.
|
|
116
|
+
* @public
|
|
117
|
+
* @returns {number[]}
|
|
118
|
+
*/
|
|
81
119
|
get texCoords(): number[];
|
|
82
|
-
get indices(): number[];
|
|
83
120
|
/**
|
|
84
|
-
*
|
|
121
|
+
* Gets geometry mesh indices.
|
|
85
122
|
* @public
|
|
86
|
-
* @
|
|
123
|
+
* @returns {number[]}
|
|
124
|
+
*/
|
|
125
|
+
get indices(): number[];
|
|
126
|
+
/**
|
|
127
|
+
* Sets the opacity of the geo object.
|
|
128
|
+
* @param {number} a - Opacity value (0 to 1).
|
|
87
129
|
*/
|
|
88
130
|
setOpacity(a: number): void;
|
|
89
131
|
/**
|
|
90
|
-
*
|
|
91
|
-
* @
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
*
|
|
132
|
+
* Gets the opacity of the geo object.
|
|
133
|
+
* @returns {number}
|
|
134
|
+
*/
|
|
135
|
+
getOpacity(): number;
|
|
136
|
+
/**
|
|
137
|
+
* Sets the color of the geo object.
|
|
138
|
+
* @param {number} r - Red component.
|
|
139
|
+
* @param {number} g - Green component.
|
|
140
|
+
* @param {number} b - Blue component.
|
|
141
|
+
* @param {number} [a] - Alpha component.
|
|
96
142
|
*/
|
|
97
143
|
setColor(r: number, g: number, b: number, a?: number): void;
|
|
98
144
|
/**
|
|
@@ -121,31 +167,61 @@ declare class GeoObject {
|
|
|
121
167
|
* @param {number} z - Z coordinate.
|
|
122
168
|
*/
|
|
123
169
|
setPosition(x: number, y: number, z: number): void;
|
|
170
|
+
updateRTCPosition(): void;
|
|
124
171
|
/**
|
|
125
172
|
* Sets geo object position.
|
|
126
173
|
* @public
|
|
127
174
|
* @param {Vec3} position - Cartesian coordinates.
|
|
128
175
|
*/
|
|
129
176
|
setPosition3v(position: Vec3): void;
|
|
130
|
-
|
|
177
|
+
/**
|
|
178
|
+
* Sets Object3d for the object
|
|
179
|
+
* @param {Object3d} object
|
|
180
|
+
*/
|
|
131
181
|
setObject(object: Object3d): void;
|
|
182
|
+
/**
|
|
183
|
+
* Sets the object url source.
|
|
184
|
+
* @param {string} src
|
|
185
|
+
*/
|
|
132
186
|
setObjectSrc(src: string): void;
|
|
133
|
-
|
|
187
|
+
/**
|
|
188
|
+
* Sets object HTML color.
|
|
189
|
+
* @param {string} color
|
|
190
|
+
*/
|
|
134
191
|
setColorHTML(color: string): void;
|
|
135
192
|
/**
|
|
136
|
-
*
|
|
137
|
-
* @
|
|
193
|
+
* Sets scales.
|
|
194
|
+
* @public
|
|
195
|
+
* @param {number} scale
|
|
138
196
|
*/
|
|
139
|
-
setPitch(pitch: number): void;
|
|
140
|
-
setRoll(roll: number): void;
|
|
141
|
-
setPitchYawRoll(pitch: number, yaw: number, roll: number): void;
|
|
142
197
|
setScale(scale: number): void;
|
|
198
|
+
/**
|
|
199
|
+
* Sets X, Y, Z axis scales
|
|
200
|
+
* @public
|
|
201
|
+
* @param {Vec3} scale
|
|
202
|
+
*/
|
|
143
203
|
setScale3v(scale: Vec3): void;
|
|
204
|
+
/**
|
|
205
|
+
* Gets scale.
|
|
206
|
+
* @publci
|
|
207
|
+
* @returns {Vec3}
|
|
208
|
+
*/
|
|
144
209
|
getScale(): Vec3;
|
|
145
210
|
setTranslate3v(translate: Vec3): void;
|
|
146
211
|
getTranslate(): Vec3;
|
|
147
212
|
/**
|
|
148
|
-
*
|
|
213
|
+
* Sets local offset position.
|
|
214
|
+
* @param {Vec3} localPosition
|
|
215
|
+
*/
|
|
216
|
+
setLocalPosition3v(localPosition: Vec3): void;
|
|
217
|
+
/**
|
|
218
|
+
* Gets local offset position.
|
|
219
|
+
* @public
|
|
220
|
+
* @returns {Vec3}
|
|
221
|
+
*/
|
|
222
|
+
getLocalPosition(): Vec3;
|
|
223
|
+
/**
|
|
224
|
+
* Removes the geo object from the handler.
|
|
149
225
|
* @public
|
|
150
226
|
*/
|
|
151
227
|
remove(): void;
|
|
@@ -155,7 +231,27 @@ declare class GeoObject {
|
|
|
155
231
|
* @param {Vec3} color - Picking color.
|
|
156
232
|
*/
|
|
157
233
|
setPickingColor3v(color: Vec3): void;
|
|
234
|
+
/**
|
|
235
|
+
* Sets the rotation quaternion.
|
|
236
|
+
* @public
|
|
237
|
+
* @param {Quat} qRot - Rotation quaternion.
|
|
238
|
+
*/
|
|
239
|
+
setRotation(qRot: Quat): void;
|
|
240
|
+
/**
|
|
241
|
+
* Returns orientation quaternion.
|
|
242
|
+
* @public
|
|
243
|
+
* @returns {Quat}
|
|
244
|
+
*/
|
|
245
|
+
getRotation(): Quat;
|
|
246
|
+
/**
|
|
247
|
+
* Update object rotation
|
|
248
|
+
*/
|
|
158
249
|
updateRotation(): void;
|
|
250
|
+
/**
|
|
251
|
+
* Returns object direction
|
|
252
|
+
* @publcu
|
|
253
|
+
* @returns {Vec3}
|
|
254
|
+
*/
|
|
159
255
|
getDirection(): Vec3;
|
|
160
256
|
}
|
|
161
257
|
export { GeoObject };
|
|
@@ -1,65 +1,25 @@
|
|
|
1
|
-
import { TypedArray } from "../utils/shared";
|
|
2
1
|
import { EntityCollection } from "./EntityCollection";
|
|
3
2
|
import { GeoObject } from "./GeoObject";
|
|
4
|
-
import { Planet } from "../scene/Planet";
|
|
5
3
|
import { Vec3 } from "../math/Vec3";
|
|
6
4
|
import { Vec4 } from "../math/Vec4";
|
|
7
5
|
import { Quat } from "../math/Quat";
|
|
8
|
-
import { WebGLBufferExt, WebGLTextureExt } from "../webgl/Handler";
|
|
9
6
|
import { Object3d } from "../Object3d";
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
_indicesArr: number[] | TypedArray;
|
|
27
|
-
_pickingColorArr: number[] | TypedArray;
|
|
28
|
-
_visibleArr: number[] | TypedArray;
|
|
29
|
-
_texCoordArr: number[] | TypedArray;
|
|
30
|
-
_sizeBuffer: WebGLBufferExt | null;
|
|
31
|
-
_translateBuffer: WebGLBufferExt | null;
|
|
32
|
-
_vertexBuffer: WebGLBufferExt | null;
|
|
33
|
-
_positionHighBuffer: WebGLBufferExt | null;
|
|
34
|
-
_positionLowBuffer: WebGLBufferExt | null;
|
|
35
|
-
_qRotBuffer: WebGLBufferExt | null;
|
|
36
|
-
_rgbaBuffer: WebGLBufferExt | null;
|
|
37
|
-
_normalsBuffer: WebGLBufferExt | null;
|
|
38
|
-
_indicesBuffer: WebGLBufferExt | null;
|
|
39
|
-
_pickingColorBuffer: WebGLBufferExt | null;
|
|
40
|
-
_visibleBuffer: WebGLBufferExt | null;
|
|
41
|
-
_texCoordBuffer: WebGLBufferExt | null;
|
|
42
|
-
_buffersUpdateCallbacks: Function[];
|
|
43
|
-
_changedBuffers: boolean[];
|
|
44
|
-
constructor(geoObjectHandler: GeoObjectHandler);
|
|
45
|
-
createTexture(image: HTMLCanvasElement | ImageBitmap | ImageData | HTMLImageElement): void;
|
|
46
|
-
clear(): void;
|
|
47
|
-
_deleteBuffers(): void;
|
|
48
|
-
createVertexBuffer(): void;
|
|
49
|
-
createVisibleBuffer(): void;
|
|
50
|
-
createSizeBuffer(): void;
|
|
51
|
-
createTranslateBuffer(): void;
|
|
52
|
-
createTexCoordBuffer(): void;
|
|
53
|
-
createPositionBuffer(): void;
|
|
54
|
-
createRgbaBuffer(): void;
|
|
55
|
-
createQRotBuffer(): void;
|
|
56
|
-
createNormalsBuffer(): void;
|
|
57
|
-
createIndicesBuffer(): void;
|
|
58
|
-
createPickingColorBuffer(): void;
|
|
59
|
-
refresh(): void;
|
|
60
|
-
update(): void;
|
|
61
|
-
}
|
|
62
|
-
declare class GeoObjectHandler {
|
|
7
|
+
import { InstanceData } from "./InstanceData";
|
|
8
|
+
import { Renderer } from "../renderer/Renderer";
|
|
9
|
+
import { RenderNode } from "../scene/RenderNode";
|
|
10
|
+
export declare const VERTEX_BUFFER = 0;
|
|
11
|
+
export declare const RTC_POSITION_BUFFER = 1;
|
|
12
|
+
export declare const RGBA_BUFFER = 2;
|
|
13
|
+
export declare const NORMALS_BUFFER = 3;
|
|
14
|
+
export declare const INDEX_BUFFER = 4;
|
|
15
|
+
export declare const QROT_BUFFER = 5;
|
|
16
|
+
export declare const SIZE_BUFFER = 6;
|
|
17
|
+
export declare const PICKINGCOLOR_BUFFER = 7;
|
|
18
|
+
export declare const VISIBLE_BUFFER = 8;
|
|
19
|
+
export declare const TEXCOORD_BUFFER = 9;
|
|
20
|
+
export declare const TRANSLATE_BUFFER = 10;
|
|
21
|
+
export declare const LOCALPOSITION_BUFFER = 11;
|
|
22
|
+
export declare class GeoObjectHandler {
|
|
63
23
|
static __counter__: number;
|
|
64
24
|
protected __id: number;
|
|
65
25
|
/**
|
|
@@ -69,37 +29,53 @@ declare class GeoObjectHandler {
|
|
|
69
29
|
*/
|
|
70
30
|
pickingEnabled: boolean;
|
|
71
31
|
protected _entityCollection: EntityCollection;
|
|
72
|
-
|
|
32
|
+
_renderNode: RenderNode | null;
|
|
33
|
+
_renderer: Renderer | null;
|
|
73
34
|
protected _geoObjects: GeoObject[];
|
|
74
35
|
protected _instanceDataMap: Map<string, InstanceData>;
|
|
75
36
|
protected _instanceDataMapValues: InstanceData[];
|
|
76
37
|
protected _dataTagUpdateQueue: InstanceData[];
|
|
38
|
+
protected _relativeCenter: Vec3;
|
|
39
|
+
protected _rtcEyePositionHigh: Float32Array;
|
|
40
|
+
protected _rtcEyePositionLow: Float32Array;
|
|
77
41
|
constructor(entityCollection: EntityCollection);
|
|
78
42
|
initProgram(): void;
|
|
79
|
-
setRenderNode(renderNode:
|
|
80
|
-
|
|
43
|
+
setRenderNode(renderNode: RenderNode): void;
|
|
44
|
+
setColorTextureTag(src: string, tag: string): void;
|
|
45
|
+
setNormalTextureTag(src: string, tag: string): void;
|
|
46
|
+
setMetallicRoughnessTextureTag(src: string, tag: string): void;
|
|
81
47
|
setObjectSrc(src: string, tag: string): void;
|
|
82
48
|
_updateInstanceData(object: Object3d, tag: string): void;
|
|
83
49
|
protected _addGeoObjectToArray(geoObject: GeoObject): void;
|
|
84
|
-
|
|
50
|
+
protected _bindCommon(): void;
|
|
51
|
+
_displayOpaquePASS(): void;
|
|
52
|
+
_displayTransparentPASS(): void;
|
|
53
|
+
protected _depthPASS(): void;
|
|
54
|
+
drawDepth(): void;
|
|
85
55
|
drawPicking(): void;
|
|
86
56
|
protected _pickingPASS(): void;
|
|
87
|
-
|
|
57
|
+
_loadColorTexture(tagData: InstanceData): Promise<void>;
|
|
58
|
+
_loadNormalTexture(tagData: InstanceData): Promise<void>;
|
|
59
|
+
_loadMetallicRoughnessTexture(tagData: InstanceData): Promise<void>;
|
|
88
60
|
setQRotArr(tagData: InstanceData, tagDataIndex: number, qRot: Quat): void;
|
|
89
61
|
setVisibility(tagData: InstanceData, tagDataIndex: number, visibility: boolean): void;
|
|
90
|
-
|
|
62
|
+
setRTCPositionArr(tagData: InstanceData, tagDataIndex: number, rtcPositionHigh: Vec3, rtcPositionLow: Vec3): void;
|
|
91
63
|
setRgbaArr(tagData: InstanceData, tagDataIndex: number, rgba: Vec4): void;
|
|
92
64
|
setPickingColorArr(tagData: InstanceData, tagDataIndex: number, color: Vec3): void;
|
|
93
65
|
setScaleArr(tagData: InstanceData, tagDataIndex: number, scale: Vec3): void;
|
|
94
66
|
setTranslateArr(tagData: InstanceData, tagDataIndex: number, translate: Vec3): void;
|
|
67
|
+
setLocalPositionArr(tagData: InstanceData, tagDataIndex: number, localPosition: Vec3): void;
|
|
95
68
|
protected _updateTag(dataTag: InstanceData): void;
|
|
96
69
|
update(): void;
|
|
97
70
|
_removeAll(): void;
|
|
98
71
|
clear(): void;
|
|
72
|
+
getRTCPosition(pos: Vec3, rtcPositionHigh: Vec3, rtcPositionLow: Vec3): void;
|
|
73
|
+
setRelativeCenter(c: Vec3): void;
|
|
74
|
+
protected _updateRTCEyePosition(): void;
|
|
99
75
|
draw(): void;
|
|
76
|
+
drawTransparent(): void;
|
|
100
77
|
add(geoObject: GeoObject): void;
|
|
101
78
|
remove(geoObject: GeoObject): void;
|
|
102
79
|
_clearDataTagQueue(): void;
|
|
103
80
|
_removeGeoObject(geoObject: GeoObject): void;
|
|
104
81
|
}
|
|
105
|
-
export { GeoObjectHandler, InstanceData };
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { GeoObject } from "./GeoObject";
|
|
2
|
+
import { WebGLBufferExt, WebGLTextureExt } from "../webgl/Handler";
|
|
3
|
+
import { TypedArray } from "../utils/shared";
|
|
4
|
+
import { Program } from "../webgl/Program";
|
|
5
|
+
import { GeoObjectHandler } from "./GeoObjectHandler";
|
|
6
|
+
export declare class InstanceData {
|
|
7
|
+
isFree: boolean;
|
|
8
|
+
_geoObjectHandler: GeoObjectHandler;
|
|
9
|
+
geoObjects: GeoObject[];
|
|
10
|
+
numInstances: number;
|
|
11
|
+
_colorTexture: WebGLTextureExt | null;
|
|
12
|
+
_normalTexture: WebGLTextureExt | null;
|
|
13
|
+
_metallicRoughnessTexture: WebGLTextureExt | null;
|
|
14
|
+
_colorTextureSrc: string | null;
|
|
15
|
+
_normalTextureSrc: string | null;
|
|
16
|
+
_metallicRoughnessTextureSrc: string | null;
|
|
17
|
+
_objectSrc?: string;
|
|
18
|
+
_sizeArr: number[] | TypedArray;
|
|
19
|
+
_translateArr: number[] | TypedArray;
|
|
20
|
+
_vertexArr: number[] | TypedArray;
|
|
21
|
+
_rtcPositionHighArr: number[] | TypedArray;
|
|
22
|
+
_rtcPositionLowArr: number[] | TypedArray;
|
|
23
|
+
_qRotArr: number[] | TypedArray;
|
|
24
|
+
_rgbaArr: number[] | TypedArray;
|
|
25
|
+
_normalsArr: number[] | TypedArray;
|
|
26
|
+
_indicesArr: number[] | TypedArray;
|
|
27
|
+
_pickingColorArr: number[] | TypedArray;
|
|
28
|
+
_visibleArr: number[] | TypedArray;
|
|
29
|
+
_texCoordArr: number[] | TypedArray;
|
|
30
|
+
_localPositionArr: number[] | TypedArray;
|
|
31
|
+
_sizeBuffer: WebGLBufferExt | null;
|
|
32
|
+
_translateBuffer: WebGLBufferExt | null;
|
|
33
|
+
_vertexBuffer: WebGLBufferExt | null;
|
|
34
|
+
_rtcPositionHighBuffer: WebGLBufferExt | null;
|
|
35
|
+
_rtcPositionLowBuffer: WebGLBufferExt | null;
|
|
36
|
+
_qRotBuffer: WebGLBufferExt | null;
|
|
37
|
+
_rgbaBuffer: WebGLBufferExt | null;
|
|
38
|
+
_normalsBuffer: WebGLBufferExt | null;
|
|
39
|
+
_indicesBuffer: WebGLBufferExt | null;
|
|
40
|
+
_pickingColorBuffer: WebGLBufferExt | null;
|
|
41
|
+
_visibleBuffer: WebGLBufferExt | null;
|
|
42
|
+
_texCoordBuffer: WebGLBufferExt | null;
|
|
43
|
+
_localPositionBuffer: WebGLBufferExt | null;
|
|
44
|
+
_buffersUpdateCallbacks: Function[];
|
|
45
|
+
_changedBuffers: boolean[];
|
|
46
|
+
_materialParams: Float32Array;
|
|
47
|
+
_materialShininess: number;
|
|
48
|
+
constructor(geoObjectHandler: GeoObjectHandler);
|
|
49
|
+
setMaterialAmbient(r: number, g: number, b: number): void;
|
|
50
|
+
setMaterialDiffuse(r: number, g: number, b: number): void;
|
|
51
|
+
setMaterialSpecular(r: number, g: number, b: number): void;
|
|
52
|
+
setMaterialShininess(shininess: number): void;
|
|
53
|
+
setMaterialParams(ambient: Float32Array, diffuse: Float32Array, specular: Float32Array, shininess: number): void;
|
|
54
|
+
drawOpaque(p: Program): void;
|
|
55
|
+
drawTransparent(p: Program): void;
|
|
56
|
+
protected _drawElementsInstanced(p: Program): void;
|
|
57
|
+
createColorTexture(image: HTMLCanvasElement | ImageBitmap | ImageData | HTMLImageElement): void;
|
|
58
|
+
createNormalTexture(image: HTMLCanvasElement | ImageBitmap | ImageData | HTMLImageElement): void;
|
|
59
|
+
createMetallicRoughnessTexture(image: HTMLCanvasElement | ImageBitmap | ImageData | HTMLImageElement): void;
|
|
60
|
+
clear(): void;
|
|
61
|
+
_deleteBuffers(): void;
|
|
62
|
+
createVertexBuffer(): void;
|
|
63
|
+
createVisibleBuffer(): void;
|
|
64
|
+
createSizeBuffer(): void;
|
|
65
|
+
createTranslateBuffer(): void;
|
|
66
|
+
createLocalPositionBuffer(): void;
|
|
67
|
+
createTexCoordBuffer(): void;
|
|
68
|
+
createRTCPositionBuffer(): void;
|
|
69
|
+
createRgbaBuffer(): void;
|
|
70
|
+
createQRotBuffer(): void;
|
|
71
|
+
createNormalsBuffer(): void;
|
|
72
|
+
createIndicesBuffer(): void;
|
|
73
|
+
createPickingColorBuffer(): void;
|
|
74
|
+
refresh(): void;
|
|
75
|
+
update(): void;
|
|
76
|
+
}
|
|
@@ -26,6 +26,8 @@ export interface IPolylineParams {
|
|
|
26
26
|
pathColors?: SegmentPathColor[];
|
|
27
27
|
path3v?: SegmentPath3vExt[];
|
|
28
28
|
pathLonLat?: SegmentPathLonLatExt[];
|
|
29
|
+
visibleSpherePosition?: Cartesian;
|
|
30
|
+
visibleSphereRadius?: number;
|
|
29
31
|
}
|
|
30
32
|
/**
|
|
31
33
|
* Polyline object.
|
|
@@ -128,23 +130,23 @@ declare class Polyline {
|
|
|
128
130
|
_handlerIndex: number;
|
|
129
131
|
protected _buffersUpdateCallbacks: Function[];
|
|
130
132
|
protected _changedBuffers: boolean[];
|
|
133
|
+
protected _visibleSphere: Float32Array;
|
|
134
|
+
__doubleToTwoFloats: (pos: Vec3, highPos: Vec3, lowPos: Vec3) => void;
|
|
131
135
|
constructor(options?: IPolylineParams);
|
|
132
136
|
/**
|
|
133
137
|
* Appends to the line array new cartesian coordinates line data.
|
|
134
|
-
* @static
|
|
135
138
|
*/
|
|
136
|
-
|
|
139
|
+
protected __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
140
|
/**
|
|
138
141
|
* Appends to the line new cartesian coordinates point data.
|
|
139
|
-
* @static
|
|
140
142
|
*/
|
|
141
|
-
|
|
143
|
+
protected __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
144
|
static setPathColors(pathLonLat: SegmentPathLonLatExt[], pathColors: SegmentPathColor[], defaultColor: NumberArray4, outColors: number[]): void;
|
|
143
145
|
/**
|
|
144
146
|
* Appends to the line array new geodetic coordinates line data.
|
|
145
147
|
* @static
|
|
146
148
|
*/
|
|
147
|
-
|
|
149
|
+
protected __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
150
|
/**
|
|
149
151
|
* Sets polyline path with cartesian coordinates.
|
|
150
152
|
* @protected
|
|
@@ -226,6 +228,12 @@ declare class Polyline {
|
|
|
226
228
|
* @param {number} opacity - Opacity.
|
|
227
229
|
*/
|
|
228
230
|
setOpacity(opacity: number): void;
|
|
231
|
+
/**
|
|
232
|
+
* Gets polyline opacity.
|
|
233
|
+
* @public
|
|
234
|
+
* @param {number} opacity - Opacity.
|
|
235
|
+
*/
|
|
236
|
+
getOpacity(): number;
|
|
229
237
|
/**
|
|
230
238
|
* Sets Polyline thickness in screen pixels.
|
|
231
239
|
* @public
|
|
@@ -298,13 +306,16 @@ declare class Polyline {
|
|
|
298
306
|
* @param {string} htmlColor- HTML color
|
|
299
307
|
*/
|
|
300
308
|
setColorHTML(htmlColor: string): void;
|
|
309
|
+
setPathLonLatFast(pathLonLat: SegmentPathLonLatExt[], pathColors?: SegmentPathColor[]): void;
|
|
310
|
+
setPath3vFast(path3v: SegmentPath3vExt[], pathColors?: SegmentPathColor[]): void;
|
|
301
311
|
/**
|
|
302
312
|
* Sets polyline geodetic coordinates.
|
|
303
313
|
* @public
|
|
304
314
|
* @param {SegmentPathLonLat[]} pathLonLat - Polyline path cartesian coordinates.
|
|
305
315
|
* @param {Boolean} [forceEqual=false] - OPTIMIZATION FLAG: Makes assigning faster for size equal coordinates array.
|
|
306
316
|
*/
|
|
307
|
-
setPathLonLat(pathLonLat: SegmentPathLonLatExt[], forceEqual?: boolean): void;
|
|
317
|
+
setPathLonLat(pathLonLat: SegmentPathLonLatExt[], pathColors?: SegmentPathColor[], forceEqual?: boolean): void;
|
|
318
|
+
getSize(index?: number): number;
|
|
308
319
|
/**
|
|
309
320
|
* Sets Polyline cartesian coordinates.
|
|
310
321
|
* @public
|
|
@@ -341,5 +352,7 @@ declare class Polyline {
|
|
|
341
352
|
*/
|
|
342
353
|
protected _createIndexBuffer(): void;
|
|
343
354
|
protected _createColorsBuffer(): void;
|
|
355
|
+
setVisibleSphere(p: Vec3, r: number): void;
|
|
356
|
+
updateRTCPosition(): void;
|
|
344
357
|
}
|
|
345
358
|
export { Polyline };
|
|
@@ -2,6 +2,7 @@ import { EntityCollection } from "./EntityCollection";
|
|
|
2
2
|
import { Polyline } from "./Polyline";
|
|
3
3
|
import { Renderer } from "../renderer/Renderer";
|
|
4
4
|
import { RenderNode } from "../scene/RenderNode";
|
|
5
|
+
import { Vec3 } from "../math/Vec3";
|
|
5
6
|
declare class PolylineHandler {
|
|
6
7
|
static __counter__: number;
|
|
7
8
|
protected __id: number;
|
|
@@ -9,6 +10,9 @@ declare class PolylineHandler {
|
|
|
9
10
|
pickingEnabled: boolean;
|
|
10
11
|
protected _renderer: Renderer | null;
|
|
11
12
|
protected _polylines: Polyline[];
|
|
13
|
+
_relativeCenter: Vec3;
|
|
14
|
+
_rtcEyePositionHigh: Float32Array;
|
|
15
|
+
_rtcEyePositionLow: Float32Array;
|
|
12
16
|
constructor(entityCollection: EntityCollection);
|
|
13
17
|
protected _initProgram(): void;
|
|
14
18
|
setRenderNode(renderNode: RenderNode): void;
|
|
@@ -18,5 +22,8 @@ declare class PolylineHandler {
|
|
|
18
22
|
draw(): void;
|
|
19
23
|
drawPicking(): void;
|
|
20
24
|
clear(): void;
|
|
25
|
+
getRTCPosition(pos: Vec3, rtcPositionHigh: Vec3, rtcPositionLow: Vec3): void;
|
|
26
|
+
setRelativeCenter(c: Vec3): void;
|
|
27
|
+
protected _updateRTCEyePosition(): void;
|
|
21
28
|
}
|
|
22
29
|
export { PolylineHandler };
|
|
@@ -30,4 +30,5 @@ import { Control } from './control/Control';
|
|
|
30
30
|
export * from './entity/index';
|
|
31
31
|
export * from './layer/index';
|
|
32
32
|
import { EmptyTerrain, GlobusTerrain, RgbTerrain, BilTerrain, GlobusRgbTerrain } from './terrain/index';
|
|
33
|
-
|
|
33
|
+
import { MoveAxisEntity } from "./control/geoObjectEditor/MoveAxisEntity";
|
|
34
|
+
export { bv, jd, math, mercator, utils, input, control, scene, quadTreeStrategyType, wgs84, moon, mars, terrain, layer, webgl, Framebuffer, EmptyTerrain, GlobusTerrain, RgbTerrain, GlobusRgbTerrain, BilTerrain, Control, Camera, Ellipsoid, Planet, PlanetCamera, LightSource, Program, Handler, Multisample, Renderer, Clock, Events, Extent, LonLat, RenderNode, Line2, Line3, Mat3, Mat4, Plane, Quat, Ray, Vec2, Vec3, Vec4, Geoid, Popup, QuadTreeStrategy, EquiQuadTreeStrategy, EarthQuadTreeStrategy, Wgs84QuadTreeStrategy, Object3d, MoveAxisEntity, };
|
|
@@ -19,6 +19,7 @@ export interface IVectorParams extends ILayerParams {
|
|
|
19
19
|
scaleByDistance?: NumberArray3;
|
|
20
20
|
labelMaxLetters?: number;
|
|
21
21
|
useLighting?: boolean;
|
|
22
|
+
depthOrder?: number;
|
|
22
23
|
}
|
|
23
24
|
type VectorEventsList = [
|
|
24
25
|
"draw",
|
|
@@ -61,6 +62,7 @@ export type VectorEventsType = EventsHandler<VectorEventsList> & EventsHandler<L
|
|
|
61
62
|
*/
|
|
62
63
|
declare class Vector extends Layer {
|
|
63
64
|
events: VectorEventsType;
|
|
65
|
+
protected _depthOrder: number;
|
|
64
66
|
/**
|
|
65
67
|
* Entities collection.
|
|
66
68
|
* @protected
|
|
@@ -113,6 +115,8 @@ declare class Vector extends Layer {
|
|
|
113
115
|
protected _labelMaxLetters: number;
|
|
114
116
|
protected _useLighting: boolean;
|
|
115
117
|
constructor(name?: string | null, options?: IVectorParams);
|
|
118
|
+
get depthOrder(): number;
|
|
119
|
+
set depthOrder(d: number);
|
|
116
120
|
get useLighting(): boolean;
|
|
117
121
|
set useLighting(f: boolean);
|
|
118
122
|
get labelMaxLetters(): number;
|