@openglobus/og 0.11.7 → 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/css/og.css +5 -2
- 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 +11 -11
- package/src/og/Globe.js +18 -6
- package/src/og/camera/Camera.js +70 -79
- package/src/og/camera/PlanetCamera.js +25 -30
- package/src/og/control/DebugInfo.js +2 -2
- package/src/og/control/EarthNavigation.js +26 -17
- package/src/og/control/Lighting.js +52 -73
- package/src/og/control/MouseNavigation.js +30 -29
- package/src/og/control/MouseWheelZoomControl.js +257 -0
- package/src/og/control/Sun.js +3 -3
- package/src/og/control/index.js +2 -0
- package/src/og/control/visibleExtent/Segment.js +1862 -0
- package/src/og/control/visibleExtent/VisibleExtent.js +80 -0
- package/src/og/control/visibleExtent/drawnode.js +751 -0
- package/src/og/entity/BaseBillboard.js +9 -9
- package/src/og/entity/Entity.js +742 -742
- package/src/og/entity/GeoObjectHandler.js +138 -134
- package/src/og/entity/Label.js +7 -7
- package/src/og/entity/LabelHandler.js +2 -1
- package/src/og/layer/CanvasTiles.js +8 -12
- package/src/og/layer/GeoImage.js +2 -10
- package/src/og/layer/GeoTexture2d.js +2 -10
- package/src/og/layer/GeoVideo.js +2 -10
- package/src/og/layer/KML.js +19 -12
- package/src/og/layer/Layer.js +4 -23
- package/src/og/layer/WMS.js +0 -2
- package/src/og/layer/XYZ.js +31 -33
- package/src/og/math/Vec3.js +18 -2
- package/src/og/quadTree/Node.js +48 -93
- package/src/og/quadTree/quadTree.js +1 -1
- package/src/og/renderer/Renderer.js +69 -96
- package/src/og/renderer/RendererEvents.js +3 -1
- package/src/og/scene/Planet.js +171 -173
- package/src/og/segment/Segment.js +99 -268
- package/src/og/segment/Slice.js +45 -0
- package/src/og/shaders/drawnode.js +171 -350
- package/src/og/shaders/geoObject.js +15 -6
- package/src/og/terrain/EmptyTerrain.js +3 -2
- package/src/og/terrain/GlobusTerrain.js +2 -0
- package/src/og/utils/GeoImageCreator.js +5 -1
- package/src/og/utils/Loader.js +1 -1
- package/src/og/utils/PlainSegmentWorker.js +0 -13
- package/src/og/webgl/Handler.js +14 -10
- 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,576 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Main class for rendering planet
|
|
3
|
+
* @class
|
|
4
|
+
* @extends {RenderNode}
|
|
5
|
+
* @param {string} [options.name="Earth"] - Planet name(Earth by default)
|
|
6
|
+
* @param {Ellipsoid} [options.ellipsoid] - Planet ellipsoid(WGS84 by default)
|
|
7
|
+
* @param {Number} [options.maxGridSize=128] - Segment maximal grid size
|
|
8
|
+
* @param {Number} [options.maxEqualZoomAltitude=15000000.0] - Maximal altitude since segments on the screen bacame the same zoom level
|
|
9
|
+
* @param {Number} [options.minEqualZoomAltitude=10000.0] - Minimal altitude since segments on the screen bacame the same zoom level
|
|
10
|
+
* @param {Number} [options.minEqualZoomCameraSlope=0.8] - Minimal camera slope above te globe where segments on the screen bacame the same zoom level
|
|
11
|
+
* @fires og.scene.Planet#draw
|
|
12
|
+
* @fires og.scene.Planet#layeradd
|
|
13
|
+
* @fires og.scene.Planet#baselayerchange
|
|
14
|
+
* @fires og.scene.Planet#layerremove
|
|
15
|
+
* @fires og.scene.Planet#layervisibilitychange
|
|
16
|
+
* @fires og.scene.Planet#geoimageadd
|
|
17
|
+
*/
|
|
18
|
+
export class Planet extends RenderNode {
|
|
19
|
+
static getBearingNorthRotationQuat(cartesian: any): Quat;
|
|
20
|
+
constructor(options?: {});
|
|
21
|
+
_cameraFrustums: any;
|
|
22
|
+
/**
|
|
23
|
+
* @public
|
|
24
|
+
* @type {Ellipsoid}
|
|
25
|
+
*/
|
|
26
|
+
public ellipsoid: Ellipsoid;
|
|
27
|
+
/**
|
|
28
|
+
* Squared ellipsoid radius.
|
|
29
|
+
* @protected
|
|
30
|
+
* @type {number}
|
|
31
|
+
*/
|
|
32
|
+
protected _planetRadius2: number;
|
|
33
|
+
/**
|
|
34
|
+
* All layers array.
|
|
35
|
+
* @public
|
|
36
|
+
* @type {Array.<Layer>}
|
|
37
|
+
*/
|
|
38
|
+
public layers: Array<Layer>;
|
|
39
|
+
/**
|
|
40
|
+
* Current visible imagery tile layers array.
|
|
41
|
+
* @public
|
|
42
|
+
* @type {Array.<Layer>}
|
|
43
|
+
*/
|
|
44
|
+
public visibleTileLayers: Array<Layer>;
|
|
45
|
+
/**
|
|
46
|
+
* Current visible vector layers array.
|
|
47
|
+
* @protected
|
|
48
|
+
* @type {Array.<layer.Vector>}
|
|
49
|
+
*/
|
|
50
|
+
protected visibleVectorLayers: Array<layer.Vector>;
|
|
51
|
+
_visibleTileLayerSlices: any[];
|
|
52
|
+
/**
|
|
53
|
+
* Vector layers visible nodes with collections.
|
|
54
|
+
* @protected
|
|
55
|
+
* @type {Array.<EntityCollection>}
|
|
56
|
+
*/
|
|
57
|
+
protected _frustumEntityCollections: Array<EntityCollection>;
|
|
58
|
+
/**
|
|
59
|
+
* There is only one base layer on the globe when layer.isBaseLayer is true.
|
|
60
|
+
* @public
|
|
61
|
+
* @type {Layer}
|
|
62
|
+
*/
|
|
63
|
+
public baseLayer: Layer;
|
|
64
|
+
/**
|
|
65
|
+
* Terrain provider.
|
|
66
|
+
* @public
|
|
67
|
+
* @type {Terrain}
|
|
68
|
+
*/
|
|
69
|
+
public terrain: Terrain;
|
|
70
|
+
/**
|
|
71
|
+
* Camera is this.renderer.activeCamera pointer.
|
|
72
|
+
* @public
|
|
73
|
+
* @type {PlanetCamera}
|
|
74
|
+
*/
|
|
75
|
+
public camera: PlanetCamera;
|
|
76
|
+
_minAltitude: any;
|
|
77
|
+
_maxAltitude: any;
|
|
78
|
+
maxEqualZoomAltitude: any;
|
|
79
|
+
minEqualZoomAltitude: any;
|
|
80
|
+
minEqualZoomCameraSlope: any;
|
|
81
|
+
/**
|
|
82
|
+
* Screen mouse pointer projected to planet cartesian position.
|
|
83
|
+
* @public
|
|
84
|
+
* @type {Vec3}
|
|
85
|
+
*/
|
|
86
|
+
public mousePositionOnEarth: Vec3;
|
|
87
|
+
emptyTexture: any;
|
|
88
|
+
transparentTexture: any;
|
|
89
|
+
defaultTexture: any;
|
|
90
|
+
/**
|
|
91
|
+
* Current visible minimal zoom index planet segment.
|
|
92
|
+
* @public
|
|
93
|
+
* @type {number}
|
|
94
|
+
*/
|
|
95
|
+
public minCurrZoom: number;
|
|
96
|
+
/**
|
|
97
|
+
* Current visible maximal zoom index planet segment.
|
|
98
|
+
* @public
|
|
99
|
+
* @type {number}
|
|
100
|
+
*/
|
|
101
|
+
public maxCurrZoom: number;
|
|
102
|
+
_viewExtent: any;
|
|
103
|
+
/**
|
|
104
|
+
* @protected
|
|
105
|
+
*/
|
|
106
|
+
protected _createdNodesCount: number;
|
|
107
|
+
/**
|
|
108
|
+
* Planet's segments collected for rendering frame.
|
|
109
|
+
* @protected
|
|
110
|
+
* @type {quadTree.Node}
|
|
111
|
+
*/
|
|
112
|
+
protected _renderedNodes: quadTree.Node;
|
|
113
|
+
_renderedNodesInFrustum: any[];
|
|
114
|
+
/**
|
|
115
|
+
* Created nodes cache
|
|
116
|
+
* @protected
|
|
117
|
+
* @type {quadTree.Node}
|
|
118
|
+
*/
|
|
119
|
+
protected _quadTreeNodesCacheMerc: quadTree.Node;
|
|
120
|
+
/**
|
|
121
|
+
* Current visible mercator segments tree nodes array.
|
|
122
|
+
* @protected
|
|
123
|
+
* @type {quadTree.Node}
|
|
124
|
+
*/
|
|
125
|
+
protected _visibleNodes: quadTree.Node;
|
|
126
|
+
/**
|
|
127
|
+
* Current visible north pole nodes tree nodes array.
|
|
128
|
+
* @protected
|
|
129
|
+
* @type {quadTree.Node}
|
|
130
|
+
*/
|
|
131
|
+
protected _visibleNodesNorth: quadTree.Node;
|
|
132
|
+
/**
|
|
133
|
+
* Current visible south pole nodes tree nodes array.
|
|
134
|
+
* @protected
|
|
135
|
+
* @type {quadTree.Node}
|
|
136
|
+
*/
|
|
137
|
+
protected _visibleNodesSouth: quadTree.Node;
|
|
138
|
+
/**
|
|
139
|
+
* Layers activity lock.
|
|
140
|
+
* @public
|
|
141
|
+
* @type {idle.Lock}
|
|
142
|
+
*/
|
|
143
|
+
public layerLock: idle.Lock;
|
|
144
|
+
/**
|
|
145
|
+
* Terrain providers activity lock.
|
|
146
|
+
* @public
|
|
147
|
+
* @type {idle.Lock}
|
|
148
|
+
*/
|
|
149
|
+
public terrainLock: idle.Lock;
|
|
150
|
+
/**
|
|
151
|
+
* Layer's transparent colors.
|
|
152
|
+
* @protected
|
|
153
|
+
*/
|
|
154
|
+
protected _tcolorArr: any[];
|
|
155
|
+
/**
|
|
156
|
+
* Height scale factor. 1 - is normal elevation scale.
|
|
157
|
+
* @protected
|
|
158
|
+
* @type {number}
|
|
159
|
+
*/
|
|
160
|
+
protected _heightFactor: number;
|
|
161
|
+
/**
|
|
162
|
+
* Precomputed indexes array for differrent grid size segments.
|
|
163
|
+
* @protected
|
|
164
|
+
* @type {Array.<Array.<number>>}
|
|
165
|
+
*/
|
|
166
|
+
protected _indexesCache: Array<Array<number>>;
|
|
167
|
+
_indexesCacheToRemove: any[];
|
|
168
|
+
_indexesCacheToRemoveCounter: number;
|
|
169
|
+
/**
|
|
170
|
+
* Precomputed texture coordinates buffers for differrent grid size segments.
|
|
171
|
+
* @protected
|
|
172
|
+
* @type {Array.<Array.<number>>}
|
|
173
|
+
*/
|
|
174
|
+
protected _textureCoordsBufferCache: Array<Array<number>>;
|
|
175
|
+
/**
|
|
176
|
+
* Framebuffer for relief. Is null when WEBGL_draw_buffers extension initialized.
|
|
177
|
+
* @protected
|
|
178
|
+
* @type {Object}
|
|
179
|
+
*/
|
|
180
|
+
protected _heightPickingFramebuffer: any;
|
|
181
|
+
/**
|
|
182
|
+
* Mercator grid tree.
|
|
183
|
+
* @protected
|
|
184
|
+
* @type {quadTree.Node}
|
|
185
|
+
*/
|
|
186
|
+
protected _quadTree: quadTree.Node;
|
|
187
|
+
/**
|
|
188
|
+
* North grid tree.
|
|
189
|
+
* @protected
|
|
190
|
+
* @type {quadTree.Node}
|
|
191
|
+
*/
|
|
192
|
+
protected _quadTreeNorth: quadTree.Node;
|
|
193
|
+
/**
|
|
194
|
+
* South grid tree.
|
|
195
|
+
* @protected
|
|
196
|
+
* @type {quadTree.Node}
|
|
197
|
+
*/
|
|
198
|
+
protected _quadTreeSouth: quadTree.Node;
|
|
199
|
+
/**
|
|
200
|
+
* Night glowing gl texture.
|
|
201
|
+
* @protected
|
|
202
|
+
*/
|
|
203
|
+
protected _nightTexture: any;
|
|
204
|
+
/**
|
|
205
|
+
* Specular mask gl texture.
|
|
206
|
+
* @protected
|
|
207
|
+
*/
|
|
208
|
+
protected _specularTexture: any;
|
|
209
|
+
_ambient: Float32Array;
|
|
210
|
+
_diffuse: Float32Array;
|
|
211
|
+
_specular: Float32Array;
|
|
212
|
+
/**
|
|
213
|
+
* True for rendering night glowing texture.
|
|
214
|
+
* @protected
|
|
215
|
+
* @type {boolean}
|
|
216
|
+
*/
|
|
217
|
+
protected _useNightTexture: boolean;
|
|
218
|
+
/**
|
|
219
|
+
* True for rendering specular mask texture.
|
|
220
|
+
* @protected
|
|
221
|
+
* @type {boolean}
|
|
222
|
+
*/
|
|
223
|
+
protected _useSpecularTexture: boolean;
|
|
224
|
+
_maxGridSize: number;
|
|
225
|
+
/**
|
|
226
|
+
* Segment multiple textures size.(4 - convinient value for the most devices)
|
|
227
|
+
* @const
|
|
228
|
+
* @public
|
|
229
|
+
*/
|
|
230
|
+
public SLICE_SIZE: number;
|
|
231
|
+
SLICE_SIZE_4: number;
|
|
232
|
+
SLICE_SIZE_3: number;
|
|
233
|
+
/**
|
|
234
|
+
* Level of the visible segment detalization.
|
|
235
|
+
* @public
|
|
236
|
+
* @type {number}
|
|
237
|
+
*/
|
|
238
|
+
public _lodSize: number;
|
|
239
|
+
_curLodSize: number;
|
|
240
|
+
_minLodSize: number;
|
|
241
|
+
_maxLodSize: number;
|
|
242
|
+
_pickingColorArr: Float32Array;
|
|
243
|
+
_samplerArr: Int32Array;
|
|
244
|
+
_pickingMaskArr: Int32Array;
|
|
245
|
+
/**
|
|
246
|
+
* GeoImage creator.
|
|
247
|
+
* @protected
|
|
248
|
+
* @type{utils.GeoImageCreator}
|
|
249
|
+
*/
|
|
250
|
+
protected _geoImageCreator: utils.GeoImageCreator;
|
|
251
|
+
_vectorTileCreator: VectorTileCreator;
|
|
252
|
+
_normalMapCreator: NormalMapCreator;
|
|
253
|
+
_terrainWorker: TerrainWorker;
|
|
254
|
+
_plainSegmentWorker: PlainSegmentWorker;
|
|
255
|
+
_tileLoader: Loader;
|
|
256
|
+
_memKey: Key;
|
|
257
|
+
_distBeforeMemClear: number;
|
|
258
|
+
_prevCamEye: Vec3;
|
|
259
|
+
_initialized: boolean;
|
|
260
|
+
always: any[];
|
|
261
|
+
_renderCompleted: boolean;
|
|
262
|
+
/**
|
|
263
|
+
* Add the given control to the renderer of the planet scene.
|
|
264
|
+
* @param {control.Control} control - Control.
|
|
265
|
+
*/
|
|
266
|
+
addControl(control: control.Control): void;
|
|
267
|
+
get lodSize(): number;
|
|
268
|
+
setLodSize(currentLodSize: any, minLodSize: any, maxLodSize: any): void;
|
|
269
|
+
_renderCompletedActivated: boolean;
|
|
270
|
+
/**
|
|
271
|
+
* Add the given controls array to the renderer of the planet.
|
|
272
|
+
* @param {Array.<control.Control>} cArr - Control array.
|
|
273
|
+
*/
|
|
274
|
+
addControls(cArr: Array<control.Control>): void;
|
|
275
|
+
/**
|
|
276
|
+
* Return layer by it name
|
|
277
|
+
* @param {string} name - Name of the layer. og.Layer.prototype.name
|
|
278
|
+
* @public
|
|
279
|
+
* @returns {Layer} -
|
|
280
|
+
*/
|
|
281
|
+
public getLayerByName(name: string): Layer;
|
|
282
|
+
/**
|
|
283
|
+
* Adds the given layer to the planet.
|
|
284
|
+
* @param {Layer} layer - Layer object.
|
|
285
|
+
* @public
|
|
286
|
+
*/
|
|
287
|
+
public addLayer(layer: Layer): void;
|
|
288
|
+
/**
|
|
289
|
+
* Dispatch layer visibility changing event.
|
|
290
|
+
* @param {Layer} layer - Changed layer.
|
|
291
|
+
* @protected
|
|
292
|
+
*/
|
|
293
|
+
protected _onLayerVisibilityChanged(layer: Layer): void;
|
|
294
|
+
/**
|
|
295
|
+
* Adds the given layers array to the planet.
|
|
296
|
+
* @param {Array.<Layer>} layers - Layers array.
|
|
297
|
+
* @public
|
|
298
|
+
*/
|
|
299
|
+
public addLayers(layers: Array<Layer>): void;
|
|
300
|
+
/**
|
|
301
|
+
* Removes the given layer from the planet.
|
|
302
|
+
* @param {Layer} layer - Layer to remove.
|
|
303
|
+
* @return {Layer|undefined} The removed layer or undefined if the layer was not found.
|
|
304
|
+
* @public
|
|
305
|
+
*/
|
|
306
|
+
public removeLayer(layer: Layer): Layer | undefined;
|
|
307
|
+
/**
|
|
308
|
+
*
|
|
309
|
+
* @protected
|
|
310
|
+
* @param {Layer} layer - Material layer.
|
|
311
|
+
*/
|
|
312
|
+
protected _clearLayerMaterial(layer: Layer): void;
|
|
313
|
+
/**
|
|
314
|
+
* Get the collection of layers associated with this planet.
|
|
315
|
+
* @return {Array.<Layer>} Layers array.
|
|
316
|
+
* @public
|
|
317
|
+
*/
|
|
318
|
+
public getLayers(): Array<Layer>;
|
|
319
|
+
/**
|
|
320
|
+
* Sets base layer coverage to the planet.
|
|
321
|
+
* @param {Layer} layer - Layer object.
|
|
322
|
+
* @public
|
|
323
|
+
*/
|
|
324
|
+
public setBaseLayer(layer: Layer): void;
|
|
325
|
+
/**
|
|
326
|
+
* Sets elevation scale. 1.0 is default.
|
|
327
|
+
* @param {number} factor - Elevation scale.
|
|
328
|
+
*/
|
|
329
|
+
setHeightFactor(factor: number): void;
|
|
330
|
+
/**
|
|
331
|
+
* Gets elevation scale.
|
|
332
|
+
* @returns {number} Terrain elevation scale
|
|
333
|
+
*/
|
|
334
|
+
getHeightFactor(): number;
|
|
335
|
+
/**
|
|
336
|
+
* Sets terrain provider
|
|
337
|
+
* @public
|
|
338
|
+
* @param {Terrain} terrain - Terrain provider.
|
|
339
|
+
*/
|
|
340
|
+
public setTerrain(terrain: Terrain): void;
|
|
341
|
+
/**
|
|
342
|
+
* @virtual
|
|
343
|
+
* @protected
|
|
344
|
+
*/
|
|
345
|
+
protected _initializeShaders(): void;
|
|
346
|
+
/**
|
|
347
|
+
* @virtual
|
|
348
|
+
* @public
|
|
349
|
+
*/
|
|
350
|
+
public init(): void;
|
|
351
|
+
clearIndexesCache(): void;
|
|
352
|
+
_preRender(): void;
|
|
353
|
+
_preLoad(): void;
|
|
354
|
+
_skipPreRender: boolean;
|
|
355
|
+
/**
|
|
356
|
+
* Creates default textures first for nirth pole and whole globe and second for south pole.
|
|
357
|
+
* @public
|
|
358
|
+
* @param{Object} param0 -
|
|
359
|
+
* @param{Object} param1 -
|
|
360
|
+
*/
|
|
361
|
+
public createDefaultTextures(param0: any, param1: any): void;
|
|
362
|
+
/**
|
|
363
|
+
* Updates attribution lists
|
|
364
|
+
* @public
|
|
365
|
+
*/
|
|
366
|
+
public updateAttributionsList(): void;
|
|
367
|
+
/**
|
|
368
|
+
* Updates visible layers.
|
|
369
|
+
* @public
|
|
370
|
+
*/
|
|
371
|
+
public updateVisibleLayers(): void;
|
|
372
|
+
/**
|
|
373
|
+
* Sort visible layer - preparing for rendering.
|
|
374
|
+
* @protected
|
|
375
|
+
*/
|
|
376
|
+
protected _sortLayers(): void;
|
|
377
|
+
_clearRenderedNodeList(): void;
|
|
378
|
+
/**
|
|
379
|
+
* Collects visible quad nodes.
|
|
380
|
+
* @protected
|
|
381
|
+
*/
|
|
382
|
+
protected _collectRenderNodes(): void;
|
|
383
|
+
_globalPreDraw(): void;
|
|
384
|
+
/**
|
|
385
|
+
* Render node callback.
|
|
386
|
+
* @public
|
|
387
|
+
*/
|
|
388
|
+
public frame(): void;
|
|
389
|
+
_checkRendercompleted(): void;
|
|
390
|
+
/**
|
|
391
|
+
* @protected
|
|
392
|
+
*/
|
|
393
|
+
protected _renderScreenNodesPASS(): void;
|
|
394
|
+
/**
|
|
395
|
+
* @protected
|
|
396
|
+
*/
|
|
397
|
+
protected _renderHeightPickingFramebufferPASS(): void;
|
|
398
|
+
/**
|
|
399
|
+
* @protected
|
|
400
|
+
*/
|
|
401
|
+
protected _renderColorPickingFramebufferPASS(): void;
|
|
402
|
+
/**
|
|
403
|
+
* @protected
|
|
404
|
+
*/
|
|
405
|
+
protected _renderDepthFramebufferPASS(): void;
|
|
406
|
+
_collectVectorLayerCollections(): void;
|
|
407
|
+
/**
|
|
408
|
+
* Vector layers picking pass.
|
|
409
|
+
* @protected
|
|
410
|
+
*/
|
|
411
|
+
protected _frustumEntityCollectionPickingCallback(): void;
|
|
412
|
+
/**
|
|
413
|
+
* Starts clear memory thread.
|
|
414
|
+
* @public
|
|
415
|
+
*/
|
|
416
|
+
public memClear(): void;
|
|
417
|
+
/**
|
|
418
|
+
* Returns ray vector hit ellipsoid coordinates.
|
|
419
|
+
* If the ray doesn't hit ellipsoit returns null.
|
|
420
|
+
* @public
|
|
421
|
+
* @param {Ray} ray - Ray 3d.
|
|
422
|
+
* @returns {Vec3} -
|
|
423
|
+
*/
|
|
424
|
+
public getRayIntersectionEllipsoid(ray: Ray): Vec3;
|
|
425
|
+
/**
|
|
426
|
+
* Returns 2d screen coordanates projection point to the planet ellipsoid 3d coordinates.
|
|
427
|
+
* @public
|
|
428
|
+
* @param {math.Pixel} px - 2D sreen coordinates.
|
|
429
|
+
* @returns {Vec3} -
|
|
430
|
+
*/
|
|
431
|
+
public getCartesianFromPixelEllipsoid(px: math.Pixel): Vec3;
|
|
432
|
+
/**
|
|
433
|
+
* Returns 2d screen coordanates projection point to the planet ellipsoid geographical coordinates.
|
|
434
|
+
* @public
|
|
435
|
+
* @param {math.Pixel} px - 2D screen coordinates.
|
|
436
|
+
* @returns {LonLat} -
|
|
437
|
+
*/
|
|
438
|
+
public getLonLatFromPixelEllipsoid(px: math.Pixel): LonLat;
|
|
439
|
+
/**
|
|
440
|
+
* Returns 3d cartesian coordinates on the relief planet by mouse cursor
|
|
441
|
+
* position or null if mouse cursor is outside the planet.
|
|
442
|
+
* @public
|
|
443
|
+
* @returns {Vec3} -
|
|
444
|
+
*/
|
|
445
|
+
public getCartesianFromMouseTerrain(): Vec3;
|
|
446
|
+
/**
|
|
447
|
+
* Returns 3d cartesian coordinates on the relief planet by 2d screen coordinates.
|
|
448
|
+
* position or null if input coordinates is outside the planet.
|
|
449
|
+
* @public
|
|
450
|
+
* @param {Vec2} px - Pixel screen 2d coordinates.
|
|
451
|
+
* @param {Boolean} [force=false] - Force framebuffer rendering.
|
|
452
|
+
* @returns {Vec3} -
|
|
453
|
+
*/
|
|
454
|
+
public getCartesianFromPixelTerrain(px: Vec2): Vec3;
|
|
455
|
+
/**
|
|
456
|
+
* Returns geographical coordinates on the relief planet by 2d screen coordinates.
|
|
457
|
+
* position or null if input coordinates is outside the planet.
|
|
458
|
+
* @public
|
|
459
|
+
* @param {Vec2} px - Pixel screen 2d coordinates.
|
|
460
|
+
* @param {Boolean} [force=false] - Force framebuffer rendering.
|
|
461
|
+
* @returns {LonLat} -
|
|
462
|
+
*/
|
|
463
|
+
public getLonLatFromPixelTerrain(px: Vec2, force?: boolean): LonLat;
|
|
464
|
+
/**
|
|
465
|
+
* Returns projected 2d screen coordinates by 3d cartesian coordiantes.
|
|
466
|
+
* @public
|
|
467
|
+
* @param {Vec3} coords - Cartesian coordinates.
|
|
468
|
+
* @returns {Vec2} -
|
|
469
|
+
*/
|
|
470
|
+
public getPixelFromCartesian(coords: Vec3): Vec2;
|
|
471
|
+
/**
|
|
472
|
+
* Returns projected 2d screen coordinates by geographical coordinates.
|
|
473
|
+
* @public
|
|
474
|
+
* @param {LonLat} lonlat - Geographical coordinates.
|
|
475
|
+
* @returns {Vec2} -
|
|
476
|
+
*/
|
|
477
|
+
public getPixelFromLonLat(lonlat: LonLat): Vec2;
|
|
478
|
+
/**
|
|
479
|
+
* Returns distance from active camera to the the planet ellipsoid
|
|
480
|
+
* coordiantes unprojected by 2d screen coordiantes, or null if screen coordinates outside the planet.
|
|
481
|
+
* @public
|
|
482
|
+
* @param {Vec2} px - Screen coordinates.
|
|
483
|
+
* @returns {number} -
|
|
484
|
+
*/
|
|
485
|
+
public getDistanceFromPixelEllipsoid(px: Vec2): number;
|
|
486
|
+
/**
|
|
487
|
+
* Returns distance from active camera to the the relief planet coordiantes unprojected
|
|
488
|
+
* by 2d screen coordiantes, or null if screen coordinates outside the planet.
|
|
489
|
+
* If screen coordinates inside the planet but relief is not exists in the
|
|
490
|
+
* point than function returns distance to the planet ellipsoid.
|
|
491
|
+
* @public
|
|
492
|
+
* @param {Vec2} px - Screen coordinates.
|
|
493
|
+
* @param {Boolean} [force=false] - Force framebuffer rendering.
|
|
494
|
+
* @returns {number} -
|
|
495
|
+
*/
|
|
496
|
+
public getDistanceFromPixel(px: Vec2): number;
|
|
497
|
+
/**
|
|
498
|
+
* Sets camera to the planet geographical extent.
|
|
499
|
+
* @public
|
|
500
|
+
* @param {Extent} extent - Geographical extent.
|
|
501
|
+
*/
|
|
502
|
+
public viewExtent(extent: Extent): void;
|
|
503
|
+
/**
|
|
504
|
+
* Sets camera to the planet geographical extent.
|
|
505
|
+
* @public
|
|
506
|
+
* @param {Array.<number>} extentArr - Geographical extent array, (exactly 4 entries)
|
|
507
|
+
* where index 0 - southwest longitude, 1 - latitude southwest, 2 - longitude northeast, 3 - latitude northeast.
|
|
508
|
+
*/
|
|
509
|
+
public viewExtentArr(extentArr: Array<number>): void;
|
|
510
|
+
/**
|
|
511
|
+
* Gets current viewing geographical extent.
|
|
512
|
+
* @public
|
|
513
|
+
* @returns {Extent} -
|
|
514
|
+
*/
|
|
515
|
+
public getViewExtent(): Extent;
|
|
516
|
+
/**
|
|
517
|
+
* Sets camera to the planet geographical position.
|
|
518
|
+
* @public
|
|
519
|
+
* @param {LonLat} lonlat - New geographical position.
|
|
520
|
+
* @param {Vec3} [up] - Camera UP vector.
|
|
521
|
+
*/
|
|
522
|
+
public viewLonLat(lonlat: LonLat, up?: Vec3): void;
|
|
523
|
+
/**
|
|
524
|
+
* Fly camera to the planet geographical extent.
|
|
525
|
+
* @public
|
|
526
|
+
* @param {Extent} extent - Geographical extent.
|
|
527
|
+
* @param {Number} [height] - Height on the end of the flight route.
|
|
528
|
+
* @param {Vec3} [up] - Camera UP vector on the end of a flying.
|
|
529
|
+
* @param {Number} [ampl] - Altitude amplitude factor.
|
|
530
|
+
* @param {cameraCallback} [startCallback] - Callback that calls after flying when flying is finished.
|
|
531
|
+
* @param {cameraCallback} [completeCallback] - Callback that calls befor the flying begins.
|
|
532
|
+
*/
|
|
533
|
+
public flyExtent(extent: Extent, height?: number, up?: Vec3, ampl?: number, completeCallback?: cameraCallback, startCallback?: cameraCallback): void;
|
|
534
|
+
/**
|
|
535
|
+
* Fly camera to the new point.
|
|
536
|
+
* @public
|
|
537
|
+
* @param {Vec3} cartesian - Fly coordiantes.
|
|
538
|
+
* @param {Vec3} [look] - Camera "look at" point.
|
|
539
|
+
* @param {Vec3} [up] - Camera UP vector on the end of a flying.
|
|
540
|
+
* @param {Number} [ampl] - Altitude amplitude factor.
|
|
541
|
+
* @param [completeCallback]
|
|
542
|
+
* @param [startCallback]
|
|
543
|
+
* @param [frameCallback]
|
|
544
|
+
*/
|
|
545
|
+
public flyCartesian(cartesian: Vec3, look?: Vec3, up?: Vec3, ampl?: number, completeCallback?: any, startCallback?: any, frameCallback?: any): void;
|
|
546
|
+
/**
|
|
547
|
+
* Fly camera to the new geographical position.
|
|
548
|
+
* @public
|
|
549
|
+
* @param {LonLat} lonlat - Fly geographical coordiantes.
|
|
550
|
+
* @param {Vec3} [look] - Camera "look at" point on the end of a flying.
|
|
551
|
+
* @param {Vec3} [up] - Camera UP vector on the end of a flying.
|
|
552
|
+
* @param {Number} [ampl] - Altitude amplitude factor.
|
|
553
|
+
* @param [completeCallback]
|
|
554
|
+
* @param [startCallback]
|
|
555
|
+
* @param [frameCallback]
|
|
556
|
+
*/
|
|
557
|
+
public flyLonLat(lonlat: LonLat, look?: Vec3, up?: Vec3, ampl?: number, completeCallback?: any, startCallback?: any, frameCallback?: any): void;
|
|
558
|
+
/**
|
|
559
|
+
* Breaks the flight.
|
|
560
|
+
* @public
|
|
561
|
+
*/
|
|
562
|
+
public stopFlying(): void;
|
|
563
|
+
getEntityTerrainPoint(entity: any, res: any): any;
|
|
564
|
+
}
|
|
565
|
+
import { RenderNode } from "./RenderNode.js";
|
|
566
|
+
import { PlanetCamera } from "../camera/PlanetCamera.js";
|
|
567
|
+
import { Vec3 } from "../math/index.js";
|
|
568
|
+
import { VectorTileCreator } from "../utils/VectorTileCreator.js";
|
|
569
|
+
import { NormalMapCreator } from "../utils/NormalMapCreator.js";
|
|
570
|
+
import { TerrainWorker } from "../utils/TerrainWorker.js";
|
|
571
|
+
import { PlainSegmentWorker } from "../utils/PlainSegmentWorker.js";
|
|
572
|
+
import { Loader } from "../utils/Loader.js";
|
|
573
|
+
import { Key } from "../Lock.js";
|
|
574
|
+
import { LonLat } from "../LonLat.js";
|
|
575
|
+
import { Extent } from "../Extent.js";
|
|
576
|
+
import { Quat } from "../math/index.js";
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Render node is a logical part of a render mechanism. Represents scene rendering.
|
|
3
|
+
* Forexample one scene node for rendering the Earth, another one for rendering the Moon, another node for rendering stars etc.
|
|
4
|
+
* Each render node has own model view space defined with matrices(scale, rotation, translation, transformation).
|
|
5
|
+
* There are collections of ligh sources, entities and so on in the node.
|
|
6
|
+
* Access to the node is renderer.renderNodes["Earth"]
|
|
7
|
+
* @class
|
|
8
|
+
* @extends {RenderNode}
|
|
9
|
+
* @param {string} name - Node name.
|
|
10
|
+
*/
|
|
11
|
+
export class RenderNode {
|
|
12
|
+
/**
|
|
13
|
+
* Renderer that calls frame() callback.
|
|
14
|
+
* @public
|
|
15
|
+
* @type {Renderer}
|
|
16
|
+
*/
|
|
17
|
+
public renderer: Renderer;
|
|
18
|
+
drawMode: number;
|
|
19
|
+
/** Show rendering.
|
|
20
|
+
* @public
|
|
21
|
+
*/
|
|
22
|
+
public show: boolean;
|
|
23
|
+
_isActive: boolean;
|
|
24
|
+
/**
|
|
25
|
+
* Lighting calculations.
|
|
26
|
+
* @public
|
|
27
|
+
* @type {boolean}
|
|
28
|
+
*/
|
|
29
|
+
public lightEnabled: boolean;
|
|
30
|
+
/**
|
|
31
|
+
* Point light array.
|
|
32
|
+
* @private
|
|
33
|
+
* @type {Array.<LightSource>}
|
|
34
|
+
*/
|
|
35
|
+
private _lights;
|
|
36
|
+
_lightsTransformedPositions: any[];
|
|
37
|
+
_lightsParamsv: any[];
|
|
38
|
+
_lightsParamsf: any[];
|
|
39
|
+
_lightsNames: any[];
|
|
40
|
+
/**
|
|
41
|
+
* Entity collection array.
|
|
42
|
+
* @public
|
|
43
|
+
* @type {Array.<EntityCollection>}
|
|
44
|
+
*/
|
|
45
|
+
public entityCollections: Array<EntityCollection>;
|
|
46
|
+
_pickingId: number;
|
|
47
|
+
events: Events;
|
|
48
|
+
/**
|
|
49
|
+
* Adds node to the current hierarchy.
|
|
50
|
+
* @public
|
|
51
|
+
* @type {RenderNode}
|
|
52
|
+
*/
|
|
53
|
+
public addNode(node: any): void;
|
|
54
|
+
/**
|
|
55
|
+
* Assign render node with renderer.
|
|
56
|
+
* @public
|
|
57
|
+
* @param {Renderer} renderer - Redner node's renderer.
|
|
58
|
+
*/
|
|
59
|
+
public assign(renderer: Renderer): void;
|
|
60
|
+
onremove(): void;
|
|
61
|
+
remove(): void;
|
|
62
|
+
/**
|
|
63
|
+
* Adds entity collection.
|
|
64
|
+
* @public
|
|
65
|
+
* @param {EntityCollection} entityCollection - Entity collection.
|
|
66
|
+
* @param {boolean} [isHidden] - If it's true that this collection has specific rendering.
|
|
67
|
+
* @returns {RenderNode} -
|
|
68
|
+
*/
|
|
69
|
+
public addEntityCollection(entityCollection: EntityCollection, isHidden?: boolean): RenderNode;
|
|
70
|
+
/**
|
|
71
|
+
* Removes entity collection.
|
|
72
|
+
* @public
|
|
73
|
+
* @param {EntityCollection} entityCollection - Entity collection for remove.
|
|
74
|
+
*/
|
|
75
|
+
public removeEntityCollection(entityCollection: EntityCollection): void;
|
|
76
|
+
/**
|
|
77
|
+
* Adds point light source.
|
|
78
|
+
* @public
|
|
79
|
+
* @param {LightSource} light - Light source.
|
|
80
|
+
* @returns {RenderNode}
|
|
81
|
+
*/
|
|
82
|
+
public addLight(light: LightSource): RenderNode;
|
|
83
|
+
/**
|
|
84
|
+
* Gets light object by its name.
|
|
85
|
+
* @public
|
|
86
|
+
* @param {string} name - Point light name.
|
|
87
|
+
* @returns {LightSource}
|
|
88
|
+
*/
|
|
89
|
+
public getLightByName(name: string): LightSource;
|
|
90
|
+
/**
|
|
91
|
+
* Removes light source.
|
|
92
|
+
* @public
|
|
93
|
+
* @param {LightSource} light - Light source object.
|
|
94
|
+
*/
|
|
95
|
+
public removeLight(light: LightSource): void;
|
|
96
|
+
/**
|
|
97
|
+
* Calls render frame node's callback. Used in renderer.
|
|
98
|
+
* @public
|
|
99
|
+
*/
|
|
100
|
+
public drawNode(frustum: any, frustumIndex: any): void;
|
|
101
|
+
/**
|
|
102
|
+
* Gets render node activity.
|
|
103
|
+
* @public
|
|
104
|
+
* @returns {Boolean} -
|
|
105
|
+
*/
|
|
106
|
+
public isActive(): boolean;
|
|
107
|
+
/**
|
|
108
|
+
* Rendering activation.
|
|
109
|
+
* @public
|
|
110
|
+
* @param {boolean} isActive - Activation flag.
|
|
111
|
+
*/
|
|
112
|
+
public setActive(isActive: boolean): void;
|
|
113
|
+
/**
|
|
114
|
+
* Sets draw mode
|
|
115
|
+
* @public
|
|
116
|
+
* @param {Number} mode - Draw mode, such as gl.TRIANGLES, gl.TRIANGLE_STRIP, gl.LINES etc.
|
|
117
|
+
*/
|
|
118
|
+
public setDrawMode(mode: number): void;
|
|
119
|
+
/**
|
|
120
|
+
* IMPORTANT: This function have to be called manualy in each render node frame callback, before drawing scene geometry.
|
|
121
|
+
* @public
|
|
122
|
+
*/
|
|
123
|
+
public transformLights(): void;
|
|
124
|
+
updateBillboardsTexCoords(): void;
|
|
125
|
+
/**
|
|
126
|
+
* @private
|
|
127
|
+
*/
|
|
128
|
+
private _drawNodes;
|
|
129
|
+
drawEntityCollections(ec: any): void;
|
|
130
|
+
/**
|
|
131
|
+
* Draw entity collections picking frame.
|
|
132
|
+
* @public
|
|
133
|
+
* @param {Array<og.EntityCollection>} ec - Entity collection array.
|
|
134
|
+
*/
|
|
135
|
+
public drawPickingEntityCollections(ec: Array<og.EntityCollection>): void;
|
|
136
|
+
/**
|
|
137
|
+
* Picking entity frame callback
|
|
138
|
+
* @private
|
|
139
|
+
*/
|
|
140
|
+
private _entityCollectionPickingCallback;
|
|
141
|
+
}
|
|
142
|
+
import { Events } from "../Events.js";
|