@openglobus/og 0.11.1 → 0.11.6
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/package.json +18 -20
- package/src/og/Clock.js +11 -11
- package/src/og/Deferred.js +1 -1
- package/src/og/Events.js +9 -7
- package/src/og/Extent.js +117 -72
- package/src/og/Globe.js +35 -22
- package/src/og/ImageCanvas.js +24 -18
- package/src/og/Lock.js +2 -2
- package/src/og/LonLat.js +40 -37
- package/src/og/Popup.js +21 -15
- package/src/og/QueueArray.js +7 -3
- package/src/og/Rectangle.js +11 -6
- package/src/og/Stack.js +8 -5
- package/src/og/ajax.js +21 -33
- package/src/og/astro/astro.js +5 -5
- package/src/og/astro/earth.js +23 -17
- package/src/og/astro/jd.js +44 -39
- package/src/og/astro/orbit.js +20 -18
- package/src/og/astro/rotation.js +17 -8
- package/src/og/bv/Box.js +7 -3
- package/src/og/bv/Sphere.js +17 -9
- package/src/og/camera/Camera.js +137 -86
- package/src/og/camera/Frustum.js +30 -19
- package/src/og/camera/PlanetCamera.js +30 -26
- package/src/og/control/CompassButton.js +8 -2
- package/src/og/control/Control.js +13 -11
- package/src/og/control/DebugInfo.js +4 -1
- package/src/og/control/EarthCoordinates.js +62 -41
- package/src/og/control/EarthNavigation.js +20 -22
- package/src/og/control/GeoImageDragControl.js +1 -1
- package/src/og/control/KeyboardNavigation.js +12 -12
- package/src/og/control/LayerSwitcher.js +24 -23
- package/src/og/control/Lighting.js +1 -1
- package/src/og/control/MouseNavigation.js +1 -1
- package/src/og/control/ScaleControl.js +1 -1
- package/src/og/control/SegmentBoundVisualization.js +8 -9
- package/src/og/control/ShowFps.js +15 -10
- package/src/og/control/SimpleNavigation.js +8 -10
- package/src/og/control/Sun.js +25 -15
- package/src/og/control/ToggleWireframe.js +5 -5
- package/src/og/control/TouchNavigation.js +58 -45
- package/src/og/control/ZoomControl.js +41 -25
- package/src/og/control/index.js +4 -0
- package/src/og/ellipsoid/Ellipsoid.js +181 -85
- package/src/og/ellipsoid/wgs84.js +4 -4
- package/src/og/entity/BaseBillboard.js +97 -44
- package/src/og/entity/Billboard.js +15 -11
- package/src/og/entity/BillboardHandler.js +314 -64
- package/src/og/entity/Entity.js +106 -74
- package/src/og/entity/EntityCollection.js +72 -49
- package/src/og/entity/GeoObject.js +228 -0
- package/src/og/entity/GeoObjectHandler.js +910 -0
- package/src/og/entity/Geometry.js +29 -26
- package/src/og/entity/GeometryHandler.js +598 -126
- package/src/og/entity/Label.js +74 -40
- package/src/og/entity/LabelHandler.js +47 -246
- package/src/og/entity/LabelWorker.js +213 -0
- package/src/og/entity/Object3d.js +504 -0
- package/src/og/entity/PointCloud.js +81 -33
- package/src/og/entity/PointCloudHandler.js +9 -9
- package/src/og/entity/Polyline.js +39 -39
- package/src/og/entity/Ray.js +61 -28
- package/src/og/entity/ShapeHandler.js +1 -1
- package/src/og/entity/Strip.js +77 -48
- package/src/og/entity/StripHandler.js +27 -27
- package/src/og/entity/index.js +8 -16
- package/src/og/input/KeyboardHandler.js +107 -104
- package/src/og/input/MouseHandler.js +81 -78
- package/src/og/input/TouchHandler.js +55 -51
- package/src/og/layer/BaseGeoImage.js +61 -30
- package/src/og/layer/CanvasTiles.js +26 -24
- package/src/og/layer/GeoImage.js +10 -10
- package/src/og/layer/GeoTexture2d.js +1 -1
- package/src/og/layer/GeoVideo.js +3 -3
- package/src/og/layer/KML.js +66 -40
- package/src/og/layer/Layer.js +27 -17
- package/src/og/layer/Material.js +93 -61
- package/src/og/layer/Vector.js +118 -72
- package/src/og/layer/WMS.js +36 -19
- package/src/og/layer/XYZ.js +55 -48
- package/src/og/light/LightSource.js +47 -40
- package/src/og/math/Line2.js +24 -24
- package/src/og/math/Line3.js +103 -102
- package/src/og/math/Mat3.js +134 -121
- package/src/og/math/Mat4.js +603 -459
- package/src/og/math/Plane.js +21 -20
- package/src/og/math/Quat.js +980 -927
- package/src/og/math/Ray.js +195 -187
- package/src/og/math/Vec2.js +127 -117
- package/src/og/math/Vec3.js +206 -176
- package/src/og/math/Vec4.js +49 -53
- package/src/og/math/coder.js +18 -18
- package/src/og/math.js +12 -12
- package/src/og/mercator.js +11 -11
- package/src/og/proj/EPSG3857.js +4 -4
- package/src/og/proj/EPSG4326.js +4 -4
- package/src/og/proj/Proj.js +31 -31
- package/src/og/quadTree/EntityCollectionNode.js +310 -300
- package/src/og/quadTree/Node.js +1008 -993
- package/src/og/renderer/Renderer.js +768 -747
- package/src/og/renderer/RendererEvents.js +9 -6
- package/src/og/scene/Axes.js +1 -1
- package/src/og/scene/BaseNode.js +8 -9
- package/src/og/scene/Planet.js +115 -87
- package/src/og/scene/RenderNode.js +29 -22
- package/src/og/scene/SkyBox.js +1 -1
- package/src/og/segment/Segment.js +1886 -1878
- package/src/og/segment/SegmentLonLat.js +298 -268
- package/src/og/segment/segmentHelper.js +11 -11
- package/src/og/shaders/bloom.js +1 -1
- package/src/og/shaders/blur.js +2 -2
- package/src/og/shaders/depth.js +1 -1
- package/src/og/shaders/geoObject.js +211 -0
- package/src/og/shaders/label.js +1 -1
- package/src/og/shaders/lumFilter.js +1 -1
- package/src/og/shaders/pointCloud.js +42 -42
- package/src/og/shaders/screenFrame.js +1 -1
- package/src/og/shaders/shape.js +15 -21
- package/src/og/shaders/skybox.js +37 -37
- package/src/og/shaders/toneMapping.js +1 -1
- package/src/og/shapes/BaseShape.js +129 -57
- package/src/og/shapes/Icosphere.js +30 -15
- package/src/og/shapes/Sphere.js +13 -16
- package/src/og/terrain/BilTerrain.js +2 -1
- package/src/og/terrain/EmptyTerrain.js +2 -2
- package/src/og/terrain/Geoid.js +2 -2
- package/src/og/terrain/GlobusTerrain.js +10 -10
- package/src/og/terrain/MapboxTerrain.js +1 -1
- package/src/og/utils/GeoImageCreator.js +9 -9
- package/src/og/utils/Loader.js +6 -6
- package/src/og/utils/NormalMapCreator.js +13 -13
- package/src/og/utils/TerrainWorker.js +1 -1
- package/src/og/utils/TextureAtlas.js +20 -22
- package/src/og/utils/VectorTileCreator.js +5 -5
- package/src/og/utils/earcut.js +1 -1
- package/src/og/utils/shared.js +15 -15
- package/src/og/webgl/Framebuffer.js +101 -53
- package/src/og/webgl/Handler.js +125 -85
- package/src/og/webgl/Multisample.js +55 -27
- package/src/og/webgl/Program.js +80 -35
- package/src/og/webgl/ProgramController.js +27 -23
- package/src/og/webgl/callbacks.js +8 -8
- package/types/Clock.d.ts +6 -2
- package/types/Deferred.d.ts +1 -1
- package/types/Events.d.ts +8 -4
- package/types/Extent.d.ts +37 -33
- package/types/Globe.d.ts +15 -13
- package/types/ImageCanvas.d.ts +5 -3
- package/types/LonLat.d.ts +24 -24
- package/types/Popup.d.ts +4 -0
- package/types/QueueArray.d.ts +6 -2
- package/types/Rectangle.d.ts +10 -4
- package/types/Stack.d.ts +4 -0
- package/types/ajax.d.ts +1 -1
- package/types/astro/earth.d.ts +3 -2
- package/types/bv/Box.d.ts +10 -5
- package/types/bv/Sphere.d.ts +13 -7
- package/types/camera/Camera.d.ts +90 -81
- package/types/camera/Frustum.d.ts +26 -22
- package/types/camera/PlanetCamera.d.ts +49 -53
- package/types/control/CompassButton.d.ts +4 -4
- package/types/control/Control.d.ts +7 -4
- package/types/control/DebugInfo.d.ts +3 -4
- package/types/control/EarthCoordinates.d.ts +6 -6
- package/types/control/EarthNavigation.d.ts +42 -0
- package/types/control/KeyboardNavigation.d.ts +3 -4
- package/types/control/LayerSwitcher.d.ts +3 -5
- package/types/control/Lighting.d.ts +3 -3
- package/types/control/MouseNavigation.d.ts +47 -0
- package/types/control/ScaleControl.d.ts +3 -3
- package/types/control/ShowFps.d.ts +3 -4
- package/types/control/SimpleNavigation.d.ts +3 -6
- package/types/control/Sun.d.ts +8 -10
- package/types/control/ToggleWireframe.d.ts +3 -3
- package/types/control/TouchNavigation.d.ts +48 -0
- package/types/control/ZoomControl.d.ts +3 -4
- package/types/control/index.d.ts +3 -1
- package/types/ellipsoid/Ellipsoid.d.ts +47 -43
- package/types/ellipsoid/wgs84.d.ts +3 -2
- package/types/entity/BaseBillboard.d.ts +41 -34
- package/types/entity/Billboard.d.ts +7 -7
- package/types/entity/BillboardHandler.d.ts +4 -0
- package/types/entity/Entity.d.ts +101 -83
- package/types/entity/EntityCollection.d.ts +57 -43
- package/types/entity/GeoObject.d.ts +111 -0
- package/types/entity/GeoObjectHandler.d.ts +77 -0
- package/types/entity/Geometry.d.ts +9 -7
- package/types/entity/GeometryHandler.d.ts +2 -2
- package/types/entity/Label.d.ts +24 -29
- package/types/entity/LabelHandler.d.ts +9 -2
- package/types/entity/LabelWorker.d.ts +9 -0
- package/types/entity/PointCloud.d.ts +8 -8
- package/types/entity/PointCloudHandler.d.ts +3 -3
- package/types/entity/Polyline.d.ts +58 -55
- package/types/entity/Ray.d.ts +19 -18
- package/types/entity/Strip.d.ts +8 -7
- package/types/entity/StripHandler.d.ts +3 -3
- package/types/entity/index.d.ts +7 -7
- 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/layer/BaseGeoImage.d.ts +23 -35
- package/types/layer/CanvasTiles.d.ts +15 -22
- package/types/layer/GeoImage.d.ts +5 -18
- package/types/layer/GeoVideo.d.ts +5 -30
- package/types/layer/KML.d.ts +20 -15
- package/types/layer/Layer.d.ts +326 -0
- package/types/layer/Material.d.ts +45 -0
- package/types/layer/Vector.d.ts +208 -0
- package/types/layer/WMS.d.ts +4 -7
- package/types/layer/XYZ.d.ts +19 -25
- package/types/light/LightSource.d.ts +54 -53
- package/types/math/Line2.d.ts +11 -0
- package/types/math/Line3.d.ts +10 -0
- package/types/math/Mat3.d.ts +30 -18
- package/types/math/Mat4.d.ts +71 -52
- package/types/math/Plane.d.ts +5 -4
- package/types/math/Quat.d.ts +379 -0
- package/types/math/Ray.d.ts +82 -0
- package/types/math/Vec2.d.ts +102 -101
- package/types/math/Vec3.d.ts +143 -142
- package/types/math/Vec4.d.ts +40 -39
- package/types/math/coder.d.ts +12 -11
- package/types/math.d.ts +8 -8
- package/types/mercator.d.ts +3 -3
- package/types/proj/EPSG3857.d.ts +3 -2
- package/types/proj/EPSG4326.d.ts +3 -2
- package/types/proj/Proj.d.ts +42 -0
- package/types/quadTree/EntityCollectionNode.d.ts +34 -0
- package/types/quadTree/Node.d.ts +61 -0
- package/types/renderer/Renderer.d.ts +300 -0
- package/types/renderer/RendererEvents.d.ts +10 -7
- package/types/scene/BaseNode.d.ts +9 -9
- package/types/scene/Planet.d.ts +131 -126
- package/types/scene/RenderNode.d.ts +22 -23
- package/types/segment/Segment.d.ts +279 -0
- package/types/segment/SegmentLonLat.d.ts +16 -0
- package/types/shaders/geoObject.d.ts +3 -0
- package/types/shapes/BaseShape.d.ts +43 -40
- package/types/shapes/Sphere.d.ts +7 -7
- package/types/terrain/BilTerrain.d.ts +0 -1
- package/types/terrain/EmptyTerrain.d.ts +4 -4
- package/types/terrain/GlobusTerrain.d.ts +17 -54
- package/types/terrain/MapboxTerrain.d.ts +0 -1
- package/types/utils/GeoImageCreator.d.ts +3 -2
- package/types/utils/TextureAtlas.d.ts +8 -8
- package/types/utils/shared.d.ts +25 -24
- package/types/webgl/Framebuffer.d.ts +5 -5
- package/types/webgl/Handler.d.ts +68 -43
- package/types/webgl/Multisample.d.ts +5 -5
- package/types/webgl/Program.d.ts +8 -2
- package/types/webgl/ProgramController.d.ts +18 -13
- package/src/og/inherits.js +0 -8
- package/src/og/utils/polylabel.js +0 -176
- package/types/inherits.d.ts +0 -4
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
2
|
|
|
3
|
-
import { BaseNode } from
|
|
4
|
-
import { Events } from
|
|
3
|
+
import { BaseNode } from "./BaseNode.js";
|
|
4
|
+
import { Events } from "../Events.js";
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Render node is a logical part of a render mechanism. Represents scene rendering.
|
|
@@ -10,7 +10,7 @@ import { Events } from '../Events.js';
|
|
|
10
10
|
* There are collections of ligh sources, entities and so on in the node.
|
|
11
11
|
* Access to the node is renderer.renderNodes["Earth"]
|
|
12
12
|
* @class
|
|
13
|
-
* @extends {
|
|
13
|
+
* @extends {RenderNode}
|
|
14
14
|
* @param {string} name - Node name.
|
|
15
15
|
*/
|
|
16
16
|
class RenderNode extends BaseNode {
|
|
@@ -20,7 +20,7 @@ class RenderNode extends BaseNode {
|
|
|
20
20
|
/**
|
|
21
21
|
* Renderer that calls frame() callback.
|
|
22
22
|
* @public
|
|
23
|
-
* @type {
|
|
23
|
+
* @type {Renderer}
|
|
24
24
|
*/
|
|
25
25
|
this.renderer = null;
|
|
26
26
|
|
|
@@ -43,7 +43,7 @@ class RenderNode extends BaseNode {
|
|
|
43
43
|
/**
|
|
44
44
|
* Point light array.
|
|
45
45
|
* @private
|
|
46
|
-
* @type {Array.<
|
|
46
|
+
* @type {Array.<LightSource>}
|
|
47
47
|
*/
|
|
48
48
|
this._lights = [];
|
|
49
49
|
this._lightsTransformedPositions = [];
|
|
@@ -54,7 +54,7 @@ class RenderNode extends BaseNode {
|
|
|
54
54
|
/**
|
|
55
55
|
* Entity collection array.
|
|
56
56
|
* @public
|
|
57
|
-
* @type {Array.<
|
|
57
|
+
* @type {Array.<EntityCollection>}
|
|
58
58
|
*/
|
|
59
59
|
this.entityCollections = [];
|
|
60
60
|
|
|
@@ -66,7 +66,7 @@ class RenderNode extends BaseNode {
|
|
|
66
66
|
/**
|
|
67
67
|
* Adds node to the current hierarchy.
|
|
68
68
|
* @public
|
|
69
|
-
* @type {
|
|
69
|
+
* @type {RenderNode}
|
|
70
70
|
*/
|
|
71
71
|
addNode(node) {
|
|
72
72
|
super.addNode(node);
|
|
@@ -76,7 +76,7 @@ class RenderNode extends BaseNode {
|
|
|
76
76
|
/**
|
|
77
77
|
* Assign render node with renderer.
|
|
78
78
|
* @public
|
|
79
|
-
* @param {
|
|
79
|
+
* @param {Renderer} renderer - Redner node's renderer.
|
|
80
80
|
*/
|
|
81
81
|
assign(renderer) {
|
|
82
82
|
this.renderer = renderer;
|
|
@@ -98,8 +98,7 @@ class RenderNode extends BaseNode {
|
|
|
98
98
|
n = this.name;
|
|
99
99
|
|
|
100
100
|
if (r) {
|
|
101
|
-
if (r.renderNodes[n] &&
|
|
102
|
-
r.renderNodes[n].isEqual(this)) {
|
|
101
|
+
if (r.renderNodes[n] && r.renderNodes[n].isEqual(this)) {
|
|
103
102
|
r.renderNodes[n] = null;
|
|
104
103
|
delete r.renderNodes[n];
|
|
105
104
|
}
|
|
@@ -119,9 +118,9 @@ class RenderNode extends BaseNode {
|
|
|
119
118
|
/**
|
|
120
119
|
* Adds entity collection.
|
|
121
120
|
* @public
|
|
122
|
-
* @param {
|
|
121
|
+
* @param {EntityCollection} entityCollection - Entity collection.
|
|
123
122
|
* @param {boolean} [isHidden] - If it's true that this collection has specific rendering.
|
|
124
|
-
* @returns {
|
|
123
|
+
* @returns {RenderNode} -
|
|
125
124
|
*/
|
|
126
125
|
addEntityCollection(entityCollection, isHidden) {
|
|
127
126
|
entityCollection.addTo(this, isHidden);
|
|
@@ -131,7 +130,7 @@ class RenderNode extends BaseNode {
|
|
|
131
130
|
/**
|
|
132
131
|
* Removes entity collection.
|
|
133
132
|
* @public
|
|
134
|
-
* @param {
|
|
133
|
+
* @param {EntityCollection} entityCollection - Entity collection for remove.
|
|
135
134
|
*/
|
|
136
135
|
removeEntityCollection(entityCollection) {
|
|
137
136
|
entityCollection.remove();
|
|
@@ -140,8 +139,8 @@ class RenderNode extends BaseNode {
|
|
|
140
139
|
/**
|
|
141
140
|
* Adds point light source.
|
|
142
141
|
* @public
|
|
143
|
-
* @param {
|
|
144
|
-
* @returns {
|
|
142
|
+
* @param {LightSource} light - Light source.
|
|
143
|
+
* @returns {RenderNode}
|
|
145
144
|
*/
|
|
146
145
|
addLight(light) {
|
|
147
146
|
light.addTo(this);
|
|
@@ -152,7 +151,7 @@ class RenderNode extends BaseNode {
|
|
|
152
151
|
* Gets light object by its name.
|
|
153
152
|
* @public
|
|
154
153
|
* @param {string} name - Point light name.
|
|
155
|
-
* @returns {
|
|
154
|
+
* @returns {LightSource}
|
|
156
155
|
*/
|
|
157
156
|
getLightByName(name) {
|
|
158
157
|
var li = this._lightsNames.indexOf(name);
|
|
@@ -162,7 +161,7 @@ class RenderNode extends BaseNode {
|
|
|
162
161
|
/**
|
|
163
162
|
* Removes light source.
|
|
164
163
|
* @public
|
|
165
|
-
* @param {
|
|
164
|
+
* @param {LightSource} light - Light source object.
|
|
166
165
|
*/
|
|
167
166
|
removeLight(light) {
|
|
168
167
|
light.remove();
|
|
@@ -195,7 +194,10 @@ class RenderNode extends BaseNode {
|
|
|
195
194
|
|
|
196
195
|
if (this.renderer) {
|
|
197
196
|
if (this._isActive && this._pickingId === -1) {
|
|
198
|
-
this._pickingId = this.renderer.addPickingCallback(
|
|
197
|
+
this._pickingId = this.renderer.addPickingCallback(
|
|
198
|
+
this,
|
|
199
|
+
this._entityCollectionPickingCallback
|
|
200
|
+
);
|
|
199
201
|
} else if (!this._isActive && this._pickingId !== -1) {
|
|
200
202
|
this.renderer.removePickingCallback(this._pickingId);
|
|
201
203
|
this._pickingId = -1;
|
|
@@ -277,7 +279,6 @@ class RenderNode extends BaseNode {
|
|
|
277
279
|
*/
|
|
278
280
|
drawPickingEntityCollections(ec) {
|
|
279
281
|
if (ec.length) {
|
|
280
|
-
|
|
281
282
|
var gl = this.renderer.handler.gl;
|
|
282
283
|
|
|
283
284
|
gl.disable(gl.CULL_FACE);
|
|
@@ -292,6 +293,12 @@ class RenderNode extends BaseNode {
|
|
|
292
293
|
ec[i]._fadingOpacity && ec[i].billboardHandler.drawPicking();
|
|
293
294
|
}
|
|
294
295
|
|
|
296
|
+
// geoObject pass
|
|
297
|
+
i = ec.length;
|
|
298
|
+
while (i--) {
|
|
299
|
+
ec[i]._fadingOpacity && ec[i].geoObjectHandler.drawPicking();
|
|
300
|
+
}
|
|
301
|
+
|
|
295
302
|
// label pass
|
|
296
303
|
i = ec.length;
|
|
297
304
|
while (i--) {
|
|
@@ -342,6 +349,6 @@ class RenderNode extends BaseNode {
|
|
|
342
349
|
_entityCollectionPickingCallback() {
|
|
343
350
|
this.drawPickingEntityCollections(this.entityCollections);
|
|
344
351
|
}
|
|
345
|
-
}
|
|
352
|
+
}
|
|
346
353
|
|
|
347
|
-
export { RenderNode };
|
|
354
|
+
export { RenderNode };
|