@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.
Files changed (211) hide show
  1. package/css/og.css +5 -2
  2. package/dist/@openglobus/og.css +1 -0
  3. package/dist/@openglobus/og.esm.js +21 -0
  4. package/dist/@openglobus/og.esm.js.map +1 -0
  5. package/dist/@openglobus/og.umd.js +21 -0
  6. package/dist/@openglobus/og.umd.js.map +1 -0
  7. package/package.json +11 -11
  8. package/src/og/Globe.js +18 -6
  9. package/src/og/camera/Camera.js +70 -79
  10. package/src/og/camera/PlanetCamera.js +25 -30
  11. package/src/og/control/DebugInfo.js +2 -2
  12. package/src/og/control/EarthNavigation.js +26 -17
  13. package/src/og/control/Lighting.js +52 -73
  14. package/src/og/control/MouseNavigation.js +30 -29
  15. package/src/og/control/MouseWheelZoomControl.js +257 -0
  16. package/src/og/control/Sun.js +3 -3
  17. package/src/og/control/index.js +2 -0
  18. package/src/og/control/visibleExtent/Segment.js +1862 -0
  19. package/src/og/control/visibleExtent/VisibleExtent.js +80 -0
  20. package/src/og/control/visibleExtent/drawnode.js +751 -0
  21. package/src/og/entity/BaseBillboard.js +9 -9
  22. package/src/og/entity/Entity.js +742 -742
  23. package/src/og/entity/GeoObjectHandler.js +138 -134
  24. package/src/og/entity/Label.js +7 -7
  25. package/src/og/entity/LabelHandler.js +2 -1
  26. package/src/og/layer/CanvasTiles.js +8 -12
  27. package/src/og/layer/GeoImage.js +2 -10
  28. package/src/og/layer/GeoTexture2d.js +2 -10
  29. package/src/og/layer/GeoVideo.js +2 -10
  30. package/src/og/layer/KML.js +19 -12
  31. package/src/og/layer/Layer.js +4 -23
  32. package/src/og/layer/WMS.js +0 -2
  33. package/src/og/layer/XYZ.js +31 -33
  34. package/src/og/math/Vec3.js +18 -2
  35. package/src/og/quadTree/Node.js +48 -93
  36. package/src/og/quadTree/quadTree.js +1 -1
  37. package/src/og/renderer/Renderer.js +69 -96
  38. package/src/og/renderer/RendererEvents.js +3 -1
  39. package/src/og/scene/Planet.js +171 -173
  40. package/src/og/segment/Segment.js +99 -268
  41. package/src/og/segment/Slice.js +45 -0
  42. package/src/og/shaders/drawnode.js +171 -350
  43. package/src/og/shaders/geoObject.js +15 -6
  44. package/src/og/terrain/EmptyTerrain.js +3 -2
  45. package/src/og/terrain/GlobusTerrain.js +2 -0
  46. package/src/og/utils/GeoImageCreator.js +5 -1
  47. package/src/og/utils/Loader.js +1 -1
  48. package/src/og/utils/PlainSegmentWorker.js +0 -13
  49. package/src/og/webgl/Handler.js +14 -10
  50. package/types/Clock.d.ts +94 -0
  51. package/types/Deferred.d.ts +6 -0
  52. package/types/Events.d.ts +77 -0
  53. package/types/Extent.d.ts +166 -0
  54. package/types/Globe.d.ts +85 -0
  55. package/types/ImageCanvas.d.ts +123 -0
  56. package/types/Lock.d.ts +12 -0
  57. package/types/LonLat.d.ts +108 -0
  58. package/types/Popup.d.ts +42 -0
  59. package/types/QueueArray.d.ts +19 -0
  60. package/types/Rectangle.d.ts +80 -0
  61. package/types/Stack.d.ts +19 -0
  62. package/types/ajax.d.ts +24 -0
  63. package/types/arial.d.ts +48 -0
  64. package/types/astro/astro.d.ts +38 -0
  65. package/types/astro/earth.d.ts +7 -0
  66. package/types/astro/jd.d.ts +254 -0
  67. package/types/bv/Box.d.ts +30 -0
  68. package/types/bv/Sphere.d.ts +38 -0
  69. package/types/bv/index.d.ts +3 -0
  70. package/types/camera/Camera.d.ts +312 -0
  71. package/types/camera/Frustum.d.ts +133 -0
  72. package/types/camera/PlanetCamera.d.ts +219 -0
  73. package/types/camera/index.d.ts +3 -0
  74. package/types/cons.d.ts +40 -0
  75. package/types/control/CompassButton.d.ts +17 -0
  76. package/types/control/Control.d.ts +104 -0
  77. package/types/control/DebugInfo.d.ts +15 -0
  78. package/types/control/EarthCoordinates.d.ts +47 -0
  79. package/types/control/EarthNavigation.d.ts +43 -0
  80. package/types/control/GeoImageDragControl.d.ts +6 -0
  81. package/types/control/KeyboardNavigation.d.ts +21 -0
  82. package/types/control/LayerSwitcher.d.ts +21 -0
  83. package/types/control/Lighting.d.ts +16 -0
  84. package/types/control/MouseNavigation.d.ts +48 -0
  85. package/types/control/MouseWheelZoomControl.d.ts +45 -0
  86. package/types/control/ScaleControl.d.ts +22 -0
  87. package/types/control/ShowFps.d.ts +11 -0
  88. package/types/control/SimpleNavigation.d.ts +25 -0
  89. package/types/control/Sun.d.ts +50 -0
  90. package/types/control/ToggleWireframe.d.ts +12 -0
  91. package/types/control/TouchNavigation.d.ts +48 -0
  92. package/types/control/ZoomControl.d.ts +27 -0
  93. package/types/control/index.d.ts +18 -0
  94. package/types/ellipsoid/Ellipsoid.d.ts +146 -0
  95. package/types/ellipsoid/index.d.ts +3 -0
  96. package/types/ellipsoid/wgs84.d.ts +6 -0
  97. package/types/entity/BaseBillboard.d.ts +215 -0
  98. package/types/entity/Billboard.d.ts +94 -0
  99. package/types/entity/BillboardHandler.d.ts +79 -0
  100. package/types/entity/Entity.d.ts +348 -0
  101. package/types/entity/EntityCollection.d.ts +317 -0
  102. package/types/entity/GeoObject.d.ts +111 -0
  103. package/types/entity/GeoObjectHandler.d.ts +81 -0
  104. package/types/entity/Geometry.d.ts +74 -0
  105. package/types/entity/GeometryHandler.d.ts +76 -0
  106. package/types/entity/Label.d.ts +189 -0
  107. package/types/entity/LabelHandler.d.ts +31 -0
  108. package/types/entity/LabelWorker.d.ts +11 -0
  109. package/types/entity/PointCloud.d.ts +174 -0
  110. package/types/entity/PointCloudHandler.d.ts +38 -0
  111. package/types/entity/Polyline.d.ts +306 -0
  112. package/types/entity/PolylineHandler.d.ts +18 -0
  113. package/types/entity/Ray.d.ts +124 -0
  114. package/types/entity/RayHandler.d.ts +67 -0
  115. package/types/entity/ShapeHandler.d.ts +22 -0
  116. package/types/entity/Strip.d.ts +119 -0
  117. package/types/entity/StripHandler.d.ts +38 -0
  118. package/types/entity/index.d.ts +8 -0
  119. package/types/index.core.d.ts +65 -0
  120. package/types/index.d.ts +45 -0
  121. package/types/index.webgl.d.ts +7 -0
  122. package/types/input/KeyboardHandler.d.ts +10 -0
  123. package/types/input/MouseHandler.d.ts +5 -0
  124. package/types/input/TouchHandler.d.ts +5 -0
  125. package/types/input/input.d.ts +34 -0
  126. package/types/layer/BaseGeoImage.d.ts +94 -0
  127. package/types/layer/CanvasTiles.d.ts +67 -0
  128. package/types/layer/GeoImage.d.ts +52 -0
  129. package/types/layer/GeoTexture2d.d.ts +8 -0
  130. package/types/layer/GeoVideo.d.ts +55 -0
  131. package/types/layer/KML.d.ts +68 -0
  132. package/types/layer/Layer.d.ts +310 -0
  133. package/types/layer/Material.d.ts +45 -0
  134. package/types/layer/Vector.d.ts +208 -0
  135. package/types/layer/WMS.d.ts +61 -0
  136. package/types/layer/XYZ.d.ts +119 -0
  137. package/types/layer/index.d.ts +10 -0
  138. package/types/light/LightSource.d.ts +178 -0
  139. package/types/math/Line2.d.ts +11 -0
  140. package/types/math/Line3.d.ts +10 -0
  141. package/types/math/Mat3.d.ts +65 -0
  142. package/types/math/Mat4.d.ts +176 -0
  143. package/types/math/Plane.d.ts +18 -0
  144. package/types/math/Quat.d.ts +379 -0
  145. package/types/math/Ray.d.ts +82 -0
  146. package/types/math/Vec2.d.ts +309 -0
  147. package/types/math/Vec3.d.ts +467 -0
  148. package/types/math/Vec4.d.ts +162 -0
  149. package/types/math/coder.d.ts +43 -0
  150. package/types/math/index.d.ts +11 -0
  151. package/types/math.d.ts +261 -0
  152. package/types/mercator.d.ts +92 -0
  153. package/types/proj/EPSG3857.d.ts +6 -0
  154. package/types/proj/EPSG4326.d.ts +6 -0
  155. package/types/proj/Proj.d.ts +42 -0
  156. package/types/quadTree/EntityCollectionNode.d.ts +34 -0
  157. package/types/quadTree/Node.d.ts +60 -0
  158. package/types/quadTree/quadTree.d.ts +40 -0
  159. package/types/renderer/Renderer.d.ts +290 -0
  160. package/types/renderer/RendererEvents.d.ts +237 -0
  161. package/types/res/images.d.ts +3 -0
  162. package/types/scene/Axes.d.ts +11 -0
  163. package/types/scene/BaseNode.d.ts +60 -0
  164. package/types/scene/Planet.d.ts +576 -0
  165. package/types/scene/RenderNode.d.ts +142 -0
  166. package/types/scene/SkyBox.d.ts +10 -0
  167. package/types/scene/index.d.ts +4 -0
  168. package/types/segment/Segment.d.ts +275 -0
  169. package/types/segment/SegmentLonLat.d.ts +17 -0
  170. package/types/segment/Slice.d.ts +10 -0
  171. package/types/segment/segmentHelper.d.ts +13 -0
  172. package/types/shaders/billboard.d.ts +3 -0
  173. package/types/shaders/depth.d.ts +2 -0
  174. package/types/shaders/drawnode.d.ts +7 -0
  175. package/types/shaders/geoObject.d.ts +3 -0
  176. package/types/shaders/label.d.ts +4 -0
  177. package/types/shaders/pointCloud.d.ts +2 -0
  178. package/types/shaders/polyline.d.ts +3 -0
  179. package/types/shaders/ray.d.ts +2 -0
  180. package/types/shaders/screenFrame.d.ts +2 -0
  181. package/types/shaders/shape.d.ts +4 -0
  182. package/types/shaders/skybox.d.ts +2 -0
  183. package/types/shaders/toneMapping.d.ts +2 -0
  184. package/types/shapes/BaseShape.d.ts +250 -0
  185. package/types/shapes/Sphere.d.ts +41 -0
  186. package/types/terrain/BilTerrain.d.ts +7 -0
  187. package/types/terrain/EmptyTerrain.d.ts +73 -0
  188. package/types/terrain/Geoid.d.ts +26 -0
  189. package/types/terrain/GlobusTerrain.d.ts +116 -0
  190. package/types/terrain/MapboxTerrain.d.ts +7 -0
  191. package/types/terrain/index.d.ts +5 -0
  192. package/types/utils/FontAtlas.d.ts +15 -0
  193. package/types/utils/GeoImageCreator.d.ts +30 -0
  194. package/types/utils/ImagesCacheManager.d.ts +10 -0
  195. package/types/utils/Loader.d.ts +25 -0
  196. package/types/utils/NormalMapCreator.d.ts +39 -0
  197. package/types/utils/PlainSegmentWorker.d.ts +10 -0
  198. package/types/utils/TerrainWorker.d.ts +9 -0
  199. package/types/utils/TextureAtlas.d.ts +111 -0
  200. package/types/utils/VectorTileCreator.d.ts +16 -0
  201. package/types/utils/colorTable.d.ts +143 -0
  202. package/types/utils/earcut.d.ts +6 -0
  203. package/types/utils/shared.d.ts +231 -0
  204. package/types/webgl/Framebuffer.d.ts +135 -0
  205. package/types/webgl/Handler.d.ts +417 -0
  206. package/types/webgl/Multisample.d.ts +89 -0
  207. package/types/webgl/Program.d.ts +161 -0
  208. package/types/webgl/ProgramController.d.ts +89 -0
  209. package/types/webgl/callbacks.d.ts +1 -0
  210. package/types/webgl/index.d.ts +6 -0
  211. package/types/webgl/types.d.ts +2 -0
@@ -0,0 +1,317 @@
1
+ /**
2
+ * An observable collection of og.Entity instances where each entity has a unique id.
3
+ * Entity collection provide handlers for an each type of entity like billboard, label or 3ds object.
4
+ * @constructor
5
+ * @param {Object} [options] - Entity options:
6
+ * @param {Array.<Entity>} [options.entities] - Entities array.
7
+ * @param {boolean} [options.visibility=true] - Entity visibility.
8
+ * @param {Array.<number>} [options.scaleByDistance] - Entity scale by distance parameters. (exactly 3 entries)
9
+ * First index - near distance to the entity, after entity becomes full scale.
10
+ * Second index - far distance to the entity, when entity becomes zero scale.
11
+ * Third index - far distance to the entity, when entity becomes invisible.
12
+ * @param {number} [options.opacity] - Entity global opacity.
13
+ * @param {boolean} [options.pickingEnabled=true] - Entity picking enable.
14
+ * @param {Number} [options.polygonOffsetFactor=0.0] - The scale factor for the variable depth offset. The default value is 0.
15
+ * @param {Number} [options.polygonOffsetUnits=0.0] - The multiplier by which an implementation-specific value is multiplied with to create a constant depth offset. The default value is 0.
16
+ * @fires og.EntityCollection#entitymove
17
+ * @fires og.EntityCollection#draw
18
+ * @fires og.EntityCollection#drawend
19
+ * @fires og.EntityCollection#add
20
+ * @fires og.EntityCollection#remove
21
+ * @fires og.EntityCollection#entityadd
22
+ * @fires og.EntityCollection#entityremove
23
+ * @fires og.EntityCollection#visibilitychange
24
+ * @fires og.EntityCollection#mousemove
25
+ * @fires og.EntityCollection#mouseenter
26
+ * @fires og.EntityCollection#mouseleave
27
+ * @fires og.EntityCollection#lclick
28
+ * @fires og.EntityCollection#rclick
29
+ * @fires og.EntityCollection#mclick
30
+ * @fires og.EntityCollection#ldblclick
31
+ * @fires og.EntityCollection#rdblclick
32
+ * @fires og.EntityCollection#mdblclick
33
+ * @fires og.EntityCollection#lup
34
+ * @fires og.EntityCollection#rup
35
+ * @fires og.EntityCollection#mup
36
+ * @fires og.EntityCollection#ldown
37
+ * @fires og.EntityCollection#rdown
38
+ * @fires og.EntityCollection#mdown
39
+ * @fires og.EntityCollection#lhold
40
+ * @fires og.EntityCollection#rhold
41
+ * @fires og.EntityCollection#mhold
42
+ * @fires og.EntityCollection#mousewheel
43
+ * @fires og.EntityCollection#touchmove
44
+ * @fires og.EntityCollection#touchstart
45
+ * @fires og.EntityCollection#touchend
46
+ * @fires og.EntityCollection#doubletouch
47
+ * @fires og.EntityCollection#touchleave
48
+ * @fires og.EntityCollection#touchenter
49
+ */
50
+ export class EntityCollection {
51
+ static set _staticCounter(arg: any);
52
+ static get _staticCounter(): any;
53
+ constructor(options: any);
54
+ /**
55
+ * Unic identifier.
56
+ * @public
57
+ * @readonly
58
+ */
59
+ public readonly id: number;
60
+ /**
61
+ * Render node collections array index.
62
+ * @protected
63
+ * @type {number}
64
+ */
65
+ protected _renderNodeIndex: number;
66
+ /**
67
+ * Render node context.
68
+ * @public
69
+ * @type {RenderNode}
70
+ */
71
+ public renderNode: RenderNode;
72
+ /**
73
+ * Visibility option.
74
+ * @protected
75
+ * @type {boolean}
76
+ */
77
+ protected _visibility: boolean;
78
+ /**
79
+ * Specifies the scale factor for gl.polygonOffset function to calculate depth values, 0.0 is default.
80
+ * @public
81
+ * @type {Number}
82
+ */
83
+ public polygonOffsetFactor: number;
84
+ /**
85
+ * Specifies the scale Units for gl.polygonOffset function to calculate depth values, 0.0 is default.
86
+ * @public
87
+ * @type {Number}
88
+ */
89
+ public polygonOffsetUnits: number;
90
+ /**
91
+ * Billboards handler
92
+ * @public
93
+ * @type {BillboardHandler}
94
+ */
95
+ public billboardHandler: BillboardHandler;
96
+ /**
97
+ * Labels handler
98
+ * @public
99
+ * @type {LabelHandler}
100
+ */
101
+ public labelHandler: LabelHandler;
102
+ /**
103
+ * Shape handler
104
+ * @public
105
+ * @type {ShapeHandler}
106
+ */
107
+ public shapeHandler: ShapeHandler;
108
+ /**
109
+ * Polyline handler
110
+ * @public
111
+ * @type {PolylineHandler}
112
+ */
113
+ public polylineHandler: PolylineHandler;
114
+ /**
115
+ * Ray handler
116
+ * @public
117
+ * @type {RayHandler}
118
+ */
119
+ public rayHandler: RayHandler;
120
+ /**
121
+ * PointCloud handler
122
+ * @public
123
+ * @type {PointCloudHandler}
124
+ */
125
+ public pointCloudHandler: PointCloudHandler;
126
+ /**
127
+ * Strip handler
128
+ * @public
129
+ * @type {StripHandler}
130
+ */
131
+ public stripHandler: StripHandler;
132
+ /**
133
+ * Geo object handler
134
+ * @public
135
+ * @type {og.GeoObjectHandler}
136
+ */
137
+ public geoObjectHandler: og.GeoObjectHandler;
138
+ /**
139
+ * Entities array.
140
+ * @protected
141
+ * @type {Array.<Entity>}
142
+ */
143
+ protected _entities: Array<Entity>;
144
+ /**
145
+ * First index - near distance to the entity, after entity becomes full scale.
146
+ * Second index - far distance to the entity, when entity becomes zero scale.
147
+ * Third index - far distance to the entity, when entity becomes invisible.
148
+ * @public
149
+ * @type {Array.<number>} - (exactly 3 entries)
150
+ */
151
+ public scaleByDistance: Array<number>;
152
+ pickingScale: any;
153
+ /**
154
+ * Global opacity.
155
+ * @protected
156
+ * @type {number}
157
+ */
158
+ protected _opacity: number;
159
+ /**
160
+ * Opacity state during the animated opacity.
161
+ * @protected
162
+ * @type {number}
163
+ */
164
+ protected _fadingOpacity: number;
165
+ /**
166
+ * Entity collection events handler.
167
+ * @public
168
+ * @type {Events}
169
+ */
170
+ public events: Events;
171
+ rendererEvents: Events;
172
+ setPolygonOffset(factor: any, units: any): void;
173
+ /**
174
+ * Sets collection visibility.
175
+ * @public
176
+ * @param {boolean} visibility - Visibility flag.
177
+ */
178
+ public setVisibility(visibility: boolean): void;
179
+ /**
180
+ * Returns collection visibility.
181
+ * @public
182
+ * @returns {boolean} -
183
+ */
184
+ public getVisibility(): boolean;
185
+ /**
186
+ * Sets collection opacity.
187
+ * @public
188
+ * @param {number} opacity - Opacity.
189
+ */
190
+ public setOpacity(opacity: number): void;
191
+ /**
192
+ * Sets collection picking ability.
193
+ * @public
194
+ * @param {boolean} enable - Picking enable flag.
195
+ */
196
+ public setPickingEnabled(enable: boolean): void;
197
+ /**
198
+ * Gets collection opacity.
199
+ * @public
200
+ * @returns {number} -
201
+ */
202
+ public getOpacity(): number;
203
+ /**
204
+ * Sets scale by distance parameters.
205
+ * @public
206
+ * @param {number} near - Full scale entity distance.
207
+ * @param {number} far - Zerol scale entity distance.
208
+ * @param {number} [farInvisible] - Entity visibility distance.
209
+ */
210
+ public setScaleByDistance(near: number, far: number, farInvisible?: number): void;
211
+ _addRecursively(entity: any): void;
212
+ /**
213
+ * Adds entity to the collection and returns collection.
214
+ * @public
215
+ * @param {Entity} entity - Entity.
216
+ * @returns {EntityCollection} -
217
+ */
218
+ public add(entity: Entity): EntityCollection;
219
+ /**
220
+ * Adds entities array to the collection and returns collection.
221
+ * @public
222
+ * @param {Array.<Entity>} entities - Entities array.
223
+ * @returns {EntityCollection} -
224
+ */
225
+ public addEntities(entities: Array<Entity>): EntityCollection;
226
+ /**
227
+ * Returns true if the entity belongs this collection, otherwise returns false.
228
+ * @public
229
+ * @param {Entity} entity - Entity.
230
+ * @returns {boolean} -
231
+ */
232
+ public belongs(entity: Entity): boolean;
233
+ _removeRecursively(entity: any): void;
234
+ /**
235
+ * Removes entity from this collection.
236
+ * @public
237
+ * @param {Entity} entity - Entity to remove.
238
+ */
239
+ public removeEntity(entity: Entity): void;
240
+ _removeEntitySilent(entity: any): void;
241
+ /**
242
+ * Creates or refresh collected entities picking color.
243
+ * @public
244
+ */
245
+ public createPickingColors(): void;
246
+ /**
247
+ * Refresh collected entities indexes from startIndex entitytes collection array position.
248
+ * @public
249
+ * @param {number} startIndex - Entities collection array index.
250
+ */
251
+ public reindexEntitiesArray(startIndex: number): void;
252
+ /**
253
+ * Adds this collection to render node.
254
+ * @public
255
+ * @param {RenderNode} renderNode - Render node.
256
+ * @param {boolean} [isHidden] - Uses in vector layers that render in planet render specific function.
257
+ * @returns {EntityCollection} -
258
+ */
259
+ public addTo(renderNode: RenderNode, isHidden?: boolean): EntityCollection;
260
+ /**
261
+ * This function is called in the RenderNode assign function.
262
+ * @param {RenderNode} renderNode
263
+ */
264
+ bindRenderNode(renderNode: RenderNode): void;
265
+ /**
266
+ * Updates coordiantes all lonLat entities in collection after collecction attached to the planet node.
267
+ * @private
268
+ * @param {Ellipsoid} ellipsoid - Globe ellipsoid.
269
+ */
270
+ private _updateGeodeticCoordinates;
271
+ /**
272
+ * Updates billboard texture atlas.
273
+ * @public
274
+ */
275
+ public updateBillboardsTextureAtlas(): void;
276
+ /**
277
+ * Updates labels font atlas.
278
+ * @public
279
+ */
280
+ public updateLabelsFontAtlas(): void;
281
+ /**
282
+ * Removes collection from render node.
283
+ * @public
284
+ */
285
+ public remove(): void;
286
+ /**
287
+ * Gets entity array.
288
+ * @public
289
+ * @returns {Array.<Entity>} -
290
+ */
291
+ public getEntities(): Array<Entity>;
292
+ /**
293
+ * Safety entities loop.
294
+ * @public
295
+ * @param {function} callback - Entity callback.
296
+ */
297
+ public each(callback: Function): void;
298
+ /**
299
+ * Removes all entities from colection and clear handlers.
300
+ * @public
301
+ */
302
+ public clear(): void;
303
+ /**
304
+ * Clears entity recursevely.
305
+ * @private
306
+ * @param {Entity} entity - Entity to clear.
307
+ */
308
+ private _clearEntity;
309
+ }
310
+ import { BillboardHandler } from "./BillboardHandler.js";
311
+ import { LabelHandler } from "./LabelHandler.js";
312
+ import { ShapeHandler } from "./ShapeHandler.js";
313
+ import { PolylineHandler } from "./PolylineHandler.js";
314
+ import { RayHandler } from "./RayHandler.js";
315
+ import { PointCloudHandler } from "./PointCloudHandler.js";
316
+ import { StripHandler } from "./StripHandler.js";
317
+ import { Events } from "../Events.js";
@@ -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
+ }