@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,189 @@
1
+ /**
2
+ * Billboard text label.
3
+ * @class
4
+ * @extends {BaseBillboard}
5
+ * @param {Object} [options] - Label options:
6
+ * @param {Vec3|Array.<number>} [options.position] - Billboard spatial position.
7
+ * @param {number} [options.rotation] - Screen angle rotaion.
8
+ * @param {Vec4|string|Array.<number>} [options.color] - Billboard color.
9
+ * @param {Vec3|Array.<number>} [options.alignedAxis] - Billboard aligned vector.
10
+ * @param {Vec3|Array.<number>} [options.offset] - Billboard center screen offset.
11
+ * @param {boolean} [options.visibility] - Visibility.
12
+ * @param {string} [options.text] - Text string.
13
+ * @param {string} [options.face] - HTML5 font face.
14
+ * @param {number} [options.size] - Font size in pixels.
15
+ * @param {string} [options.style] - HTML5 font style. Example 'normal', 'italic'.
16
+ * @param {string} [options.weight] - HTML5 font weight. Example 'normal', 'bold'.
17
+ * @param {number} [options.outline] - Text outline size. 0 - no outline, 1 - maximum outline. Default 0.58.
18
+ * @param {Vec4|string|Array.<number>} [options.outlineColor] - Outline color.
19
+ * @param {Label.ALIGN} [options.align] - Text horizontal align: "left", "right" and "center".
20
+ */
21
+ export class Label extends BaseBillboard {
22
+ /**
23
+ * Label text string.
24
+ * @private
25
+ * @type {string}
26
+ */
27
+ private _text;
28
+ /**
29
+ * HTML5 font face.
30
+ * @private
31
+ * @type {string}
32
+ */
33
+ private _face;
34
+ /**
35
+ * Font size in pixels.
36
+ * @private
37
+ * @type {number}
38
+ */
39
+ private _size;
40
+ /**
41
+ * Label outline.
42
+ * @private
43
+ * @type {number}
44
+ */
45
+ private _outline;
46
+ /**
47
+ * Label outline color.
48
+ * @private
49
+ * @type {Vec4}
50
+ */
51
+ private _outlineColor;
52
+ /**
53
+ * Text horizontal align: "left", "right" and "center".
54
+ * @private
55
+ * @type {Label.ALIGN}
56
+ */
57
+ private _align;
58
+ /**
59
+ * Label font atlas index.
60
+ * @private
61
+ * @type {number}
62
+ */
63
+ private _fontIndex;
64
+ /**
65
+ * Font atlas pointer.
66
+ * @private
67
+ * @type {utils.FontAtlas}
68
+ */
69
+ private _fontAtlas;
70
+ /**
71
+ * Sets lablel text.
72
+ * @public
73
+ * @param {string} text - Text string.
74
+ * It can't be bigger than maximum labelHandler _maxLetters value.
75
+ */
76
+ public setText(text: string): void;
77
+ /**
78
+ * Gets current text string.
79
+ * @public
80
+ * @returns {string}
81
+ */
82
+ public getText(): string;
83
+ /**
84
+ * Sets label text align. Could be center, left or right. Left is default.
85
+ * @public
86
+ * @param {Label.ALIGN} align - Text align.
87
+ */
88
+ public setAlign(align: Label.ALIGN): void;
89
+ /**
90
+ * Gets label text current alignment.
91
+ * @public
92
+ * @returns {Label.ALIGN}
93
+ */
94
+ public getAlign(): Label.ALIGN;
95
+ /**
96
+ * Sets font face family.
97
+ * @public
98
+ * @param {string} face - Font face family.
99
+ */
100
+ public setFace(face: string): void;
101
+ /**
102
+ * Gets current font face.
103
+ * @public
104
+ * @returns {string}
105
+ */
106
+ public getFace(): string;
107
+ /**
108
+ * Sets label font size in pixels.
109
+ * @public
110
+ * @param {number} size - Label size in pixels.
111
+ */
112
+ public setSize(size: number): void;
113
+ /**
114
+ * Gets label size in pixels.
115
+ * @public
116
+ * @returns {number}
117
+ */
118
+ public getSize(): number;
119
+ /**
120
+ * Sets text outline border size. Where 0 - is no outline and 1 - is the maximum outline size.
121
+ * @public
122
+ * @param {number} outline - Text outline size.
123
+ */
124
+ public setOutline(outline: number): void;
125
+ /**
126
+ * Gets text current outline size.
127
+ * @public
128
+ * @returns {number}
129
+ */
130
+ public getOutline(): number;
131
+ /**
132
+ * Sets text outline color.
133
+ * @public
134
+ * @param {number} r - Red.
135
+ * @param {number} g - Green.
136
+ * @param {number} b - Blue.
137
+ * @param {number} a - Alpha.
138
+ */
139
+ public setOutlineColor(r: number, g: number, b: number, a: number): void;
140
+ /**
141
+ * Sets text outline color.
142
+ * @public
143
+ * @param {Vec4} rgba - Color vector.
144
+ */
145
+ public setOutlineColor4v(rgba: Vec4): void;
146
+ /**
147
+ * Sets text outline color HTML string.
148
+ * @public
149
+ * @param {string} color - HTML string color.
150
+ */
151
+ public setOutlineColorHTML(color: string): void;
152
+ /**
153
+ * Gets outline color vector.
154
+ * @public
155
+ * @returns {Vec4}
156
+ */
157
+ public getOutlineColor(): Vec4;
158
+ /**
159
+ * Sets outline opacity. Actually outline color alpha value.
160
+ * @public
161
+ * @param {number} opacity - Outline opacity.
162
+ */
163
+ public setOutlineOpacity(opacity: number): void;
164
+ /**
165
+ * Gets outline opacity value.
166
+ * @public
167
+ * @returns {number}
168
+ */
169
+ public getOutlineOpacity(): number;
170
+ /**
171
+ * Updates label parameters.
172
+ * @public
173
+ */
174
+ public update(): Promise<void>;
175
+ _applyFontIndex(fontIndex: any): void;
176
+ /**
177
+ * Assigns font atlas and update.
178
+ * @public
179
+ * @param {utils.FontAtlas} fontAtlas - Font atlas.
180
+ */
181
+ public assignFontAtlas(fontAtlas: utils.FontAtlas): void;
182
+ }
183
+ export namespace ALIGN {
184
+ const RIGHT: number;
185
+ const LEFT: number;
186
+ const CENTER: number;
187
+ }
188
+ import { BaseBillboard } from "./BaseBillboard.js";
189
+ import { Vec4 } from "../math/Vec4.js";
@@ -0,0 +1,31 @@
1
+ export class LabelHandler extends BillboardHandler {
2
+ /**
3
+ *
4
+ * @param {*} entityCollection
5
+ * @param {*} maxLetters
6
+ */
7
+ constructor(entityCollection: any, maxLetters?: any);
8
+ _gliphParamBuffer: any;
9
+ _fontIndexBuffer: any;
10
+ _noOutlineBuffer: any;
11
+ _outlineBuffer: any;
12
+ _outlineColorBuffer: any;
13
+ _gliphParamArr: Float32Array;
14
+ _fontIndexArr: Float32Array;
15
+ _noOutlineArr: Float32Array;
16
+ _outlineArr: Float32Array;
17
+ _outlineColorArr: Float32Array;
18
+ _maxLetters: any;
19
+ _addLabelToArrays(label: any): void;
20
+ assignFontAtlas(label: any): void;
21
+ workerCallback(data: any, label: any): void;
22
+ setText(index: any, text: any, fontIndex: any, align: any): void;
23
+ setOutlineColorArr(index: any, rgba: any): void;
24
+ setOutlineArr(index: any, outline: any): void;
25
+ setFontIndexArr(index: any, fontIndex: any): void;
26
+ createFontIndexBuffer(): void;
27
+ createOutlineBuffer(): void;
28
+ createOutlineColorBuffer(): void;
29
+ setMaxLetters(c: any): void;
30
+ }
31
+ import { BillboardHandler } from "./BillboardHandler.js";
@@ -0,0 +1,11 @@
1
+ export const LOCK_UPDATE: -2;
2
+ export const LOCK_FREE: -1;
3
+ export class LabelWorker {
4
+ constructor(numWorkers?: number);
5
+ _id: number;
6
+ _source: {};
7
+ _freeWorkerQueue: Worker[];
8
+ _pendingQueue: any[];
9
+ check(): void;
10
+ make(handler: any, label: any): void;
11
+ }
@@ -0,0 +1,174 @@
1
+ /**
2
+ * PointCloud object.
3
+ * @class
4
+ * @param {*} [options] - Point cloud options:
5
+ * @param {Array.<Array.<number>>} [options.points] - Points cartesian coordinates array,
6
+ * where first three is cartesian coordinates, next fourth is a RGBA color, and last is an point properties.
7
+ * @param {number} [options.pointSize] - Point screen size in pixels.
8
+ * @param {number} [options.pickingDistance] - Point border picking size in screen pixels.
9
+ * @param {boolean} [options.visibility] - Point cloud visibility.
10
+ * @example <caption>Creates point cloud with two ten pixel size points</caption>
11
+ * new og.Entity({
12
+ * pointCloud: {
13
+ * pointSize: 10,
14
+ * points: [
15
+ * [0, 0, 0, 255, 255, 255, 255, { 'name': 'White point' }],
16
+ * [100, 100, 0, 255, 0, 0, 255, { 'name': 'Red point' }]
17
+ * ]
18
+ * }
19
+ * });
20
+ */
21
+ export class PointCloud {
22
+ static set _staticCounter(arg: any);
23
+ static get _staticCounter(): any;
24
+ constructor(options: any);
25
+ /**
26
+ * Object unic identifier.
27
+ * @public
28
+ * @readonly
29
+ * @type {number}
30
+ */
31
+ public readonly id: number;
32
+ /**
33
+ * Cloud visibility.
34
+ * @public
35
+ * @type {boolean}
36
+ */
37
+ public visibility: boolean;
38
+ /**
39
+ * Point screen size in pixels.
40
+ * @public
41
+ * @type {number}
42
+ */
43
+ public pointSize: number;
44
+ /**
45
+ * Point picking border size in pixels.
46
+ * @public
47
+ * @type {number}
48
+ */
49
+ public pickingDistance: number;
50
+ /**
51
+ * Parent collection render node.
52
+ * @private
53
+ * @type {RenderNode}
54
+ */
55
+ private _renderNode;
56
+ /**
57
+ * Entity instance that holds this point cloud.
58
+ * @private
59
+ * @type {Entity}
60
+ */
61
+ private _entity;
62
+ /**
63
+ * Points properties.
64
+ * @private
65
+ * @type {Array.<*>}
66
+ */
67
+ private _points;
68
+ /**
69
+ * Coordinates array.
70
+ * @private
71
+ * @type {Array.<number>}
72
+ */
73
+ private _coordinatesData;
74
+ /**
75
+ * Color array.
76
+ * @private
77
+ * @type {Array.<number>}
78
+ */
79
+ private _colorData;
80
+ /**
81
+ * Picking color array.
82
+ * @private
83
+ * @type {Array.<number>}
84
+ */
85
+ private _pickingColorData;
86
+ _coordinatesBuffer: any;
87
+ _colorBuffer: any;
88
+ _pickingColorBuffer: any;
89
+ /**
90
+ * Handler that stores and renders this object.
91
+ * @private
92
+ * @type {PointCloudHandler}
93
+ */
94
+ private _handler;
95
+ _handlerIndex: number;
96
+ _buffersUpdateCallbacks: (() => void)[];
97
+ _changedBuffers: any[];
98
+ /**
99
+ * Clears point cloud data
100
+ * @public
101
+ */
102
+ public clear(): void;
103
+ /**
104
+ * Set point cloud opacity.
105
+ * @public
106
+ * @param {number} opacity - Cloud opacity.
107
+ */
108
+ public setOpacity(opacity: number): void;
109
+ opacity: number;
110
+ /**
111
+ * Sets cloud visibility.
112
+ * @public
113
+ * @param {number} visibility - Visibility flag.
114
+ */
115
+ public setVisibility(visibility: number): void;
116
+ /**
117
+ * @return {boolean} Point cloud visibily.
118
+ */
119
+ getVisibility(): boolean;
120
+ /**
121
+ * Assign rendering scene node.
122
+ * @public
123
+ * @param {RenderNode} renderNode - Assigned render node.
124
+ */
125
+ public setRenderNode(renderNode: RenderNode): void;
126
+ /**
127
+ * Removes from entity.
128
+ * @public
129
+ */
130
+ public remove(): void;
131
+ /**
132
+ * Adds points to render.
133
+ * @public
134
+ * @param {Array.<Array<number>>} points - Point cloud array.
135
+ * @example
136
+ * var points = [[0, 0, 0, 255, 255, 255, 255, { 'name': 'White point' }], [100, 100, 0, 255, 0, 0, 255, { 'name': 'Red point' }]];
137
+ */
138
+ public setPoints(points: Array<Array<number>>): void;
139
+ setPointPosition(index: any, x: any, y: any, z: any): void;
140
+ setPointColor(index: any, r: any, g: any, b: any, a: any): void;
141
+ addPoints(points: any): void;
142
+ addPoint(index: any, point: any): void;
143
+ /**
144
+ * Returns specific point by index.
145
+ * @public
146
+ * @param {number} index - Point index.
147
+ * @return {*} Specific point
148
+ */
149
+ public getPoint(index: number): any;
150
+ removePoint(index: any): void;
151
+ insertPoint(index: any, point: any): void;
152
+ /**
153
+ * Each point iterator.
154
+ * @public
155
+ * @param {callback} callback -
156
+ */
157
+ public each(callback: any): void;
158
+ draw(): void;
159
+ drawPicking(): void;
160
+ /**
161
+ * Update gl buffers.
162
+ * @private
163
+ */
164
+ private _update;
165
+ /**
166
+ * Delete buffers
167
+ * @private
168
+ */
169
+ private _deleteBuffers;
170
+ _createCoordinatesBuffer(): void;
171
+ _createColorBuffer(): void;
172
+ _createPickingColorBuffer(): void;
173
+ _setPickingColors(): void;
174
+ }
@@ -0,0 +1,38 @@
1
+ export class PointCloudHandler {
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
+ /**
12
+ * Parent collection
13
+ * @private
14
+ * @type {EntityCollection}
15
+ */
16
+ private _entityCollection;
17
+ /**
18
+ * Renderer
19
+ * @private
20
+ * @type {Renderer}
21
+ */
22
+ private _renderer;
23
+ /**
24
+ * Point cloud array
25
+ * @private
26
+ * @type {Array.<PointCloud>}
27
+ */
28
+ private _pointClouds;
29
+ __staticId: number;
30
+ _initProgram(): void;
31
+ setRenderNode(renderNode: any): void;
32
+ add(pointCloud: any): void;
33
+ remove(pointCloud: any): void;
34
+ reindexPointCloudArray(startIndex: any): void;
35
+ draw(): void;
36
+ drawPicking(): void;
37
+ clear(): void;
38
+ }