@openglobus/og 0.13.7 → 0.13.10
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/README.md +1 -1
- package/css/og.css +388 -129
- package/dist/@openglobus/og.css +1 -1
- package/dist/@openglobus/og.esm.js +2 -2
- package/dist/@openglobus/og.esm.js.map +1 -1
- package/dist/@openglobus/og.umd.js +2 -2
- package/dist/@openglobus/og.umd.js.map +1 -1
- package/package.json +20 -19
- package/src/og/Globe.js +15 -16
- package/src/og/Object3d.js +417 -0
- package/src/og/arial.js +1705 -1703
- package/src/og/camera/Camera.js +640 -640
- package/src/og/control/EarthCoordinates.js +1 -1
- package/src/og/control/GeoImageDragControl.js +102 -75
- package/src/og/control/LayerAnimation.js +383 -0
- package/src/og/control/LayerSwitcher.js +506 -159
- package/src/og/control/Lighting.js +27 -27
- package/src/og/control/MouseNavigation.js +460 -460
- package/src/og/control/RulerSwitcher.js +69 -0
- package/src/og/control/Sun.js +170 -170
- package/src/og/control/UIhelpers.js +146 -0
- package/src/og/control/ZoomControl.js +0 -2
- package/src/og/control/index.js +5 -1
- package/src/og/control/ruler/Ruler.js +43 -0
- package/src/og/control/ruler/RulerScene.js +374 -0
- package/src/og/control/visibleExtent/Segment.js +3 -5
- package/src/og/ellipsoid/Ellipsoid.js +19 -0
- package/src/og/ellipsoid/wgs84.js +1 -1
- package/src/og/entity/Entity.js +1 -1
- package/src/og/entity/GeoObject.js +1 -1
- package/src/og/entity/LabelHandler.js +6 -2
- package/src/og/entity/LabelWorker.js +38 -53
- package/src/og/layer/BaseGeoImage.js +347 -312
- package/src/og/layer/CanvasTiles.js +312 -290
- package/src/og/layer/GeoImage.js +222 -214
- package/src/og/layer/GeoVideo.js +291 -291
- package/src/og/layer/Layer.js +94 -70
- package/src/og/layer/Material.js +109 -109
- package/src/og/layer/Vector.js +81 -14
- package/src/og/layer/XYZ.js +23 -11
- package/src/og/light/LightSource.js +364 -363
- package/src/og/math/Vec3.js +1 -1
- package/src/og/math.js +6 -6
- package/src/og/quadTree/Node.js +8 -6
- package/src/og/renderer/Renderer.js +2 -3
- package/src/og/res/images.js +0 -2
- package/src/og/scene/Planet.js +106 -44
- package/src/og/segment/Segment.js +34 -64
- package/src/og/segment/Slice.js +1 -1
- package/src/og/shaders/drawnode.js +1 -1
- package/src/og/shaders/label.js +30 -42
- package/src/og/terrain/GlobusTerrain.js +31 -20
- package/src/og/terrain/MapboxTerrain.js +1 -1
- package/src/og/utils/BaseWorker.js +46 -0
- package/src/og/utils/FontAtlas.js +1 -2
- package/src/og/utils/GeoImageCreator.js +164 -161
- package/src/og/utils/Loader.js +187 -153
- package/src/og/utils/NormalMapCreator.js +403 -412
- package/src/og/utils/PlainSegmentWorker.js +29 -55
- package/src/og/utils/TerrainWorker.js +572 -589
- package/src/og/utils/VectorTileCreator.js +1 -1
- package/src/og/utils/functionComposition.js +13 -0
- package/src/og/webgl/Handler.js +42 -41
- package/src/og/webgl/ProgramController.js +143 -143
- package/types/Object3d.d.ts +22 -0
- package/types/arial.d.ts +1 -0
- package/types/camera/PlanetCamera.d.ts +4 -0
- package/types/control/GeoImageDragControl.d.ts +2 -0
- package/types/control/LayerAnimation.d.ts +73 -0
- package/types/control/LayerSwitcher.d.ts +55 -11
- package/types/control/MouseNavigation.d.ts +1 -0
- package/types/control/MouseWheelZoomControl.d.ts +1 -0
- package/types/control/Sun.d.ts +2 -1
- package/types/control/TouchNavigation.d.ts +1 -0
- package/types/control/UIhelpers.d.ts +13 -0
- package/types/control/index.d.ts +3 -1
- package/types/control/ruler/Ruler.d.ts +13 -0
- package/types/control/ruler/RulerScene.d.ts +48 -0
- package/types/ellipsoid/Ellipsoid.d.ts +8 -0
- package/types/entity/LabelHandler.d.ts +2 -0
- package/types/entity/LabelWorker.d.ts +5 -7
- package/types/layer/BaseGeoImage.d.ts +9 -1
- package/types/layer/CanvasTiles.d.ts +5 -1
- package/types/layer/GeoImage.d.ts +1 -0
- package/types/layer/GeoTexture2d.d.ts +1 -0
- package/types/layer/Layer.d.ts +28 -32
- package/types/layer/Vector.d.ts +9 -0
- package/types/layer/WMS.d.ts +1 -0
- package/types/layer/XYZ.d.ts +8 -5
- package/types/math.d.ts +2 -2
- package/types/quadTree/EntityCollectionNode.d.ts +7 -0
- package/types/quadTree/Node.d.ts +1 -2
- package/types/renderer/Renderer.d.ts +1 -1
- package/types/renderer/RendererEvents.d.ts +16 -0
- package/types/res/images.d.ts +0 -1
- package/types/scene/Planet.d.ts +21 -6
- package/types/segment/SegmentLonLat.d.ts +2 -0
- package/types/terrain/BilTerrain.d.ts +6 -0
- package/types/terrain/GlobusTerrain.d.ts +7 -0
- package/types/terrain/MapboxTerrain.d.ts +8 -0
- package/types/utils/BaseWorker.d.ts +14 -0
- package/types/utils/Loader.d.ts +4 -1
- package/types/utils/PlainSegmentWorker.d.ts +4 -6
- package/types/utils/TerrainWorker.d.ts +4 -6
- package/types/utils/functionComposition.d.ts +5 -0
- package/types/webgl/Handler.d.ts +4 -1
package/src/og/layer/XYZ.js
CHANGED
|
@@ -76,11 +76,6 @@ class XYZ extends Layer {
|
|
|
76
76
|
*/
|
|
77
77
|
this.maxNativeZoom = options.maxNativeZoom || 19;
|
|
78
78
|
|
|
79
|
-
/**
|
|
80
|
-
* @protected
|
|
81
|
-
*/
|
|
82
|
-
this._crossOrigin = options.crossOrigin === undefined ? "" : options.crossOrigin;
|
|
83
|
-
|
|
84
79
|
/**
|
|
85
80
|
* Rewrites imagery tile url query.
|
|
86
81
|
* @private
|
|
@@ -90,6 +85,16 @@ class XYZ extends Layer {
|
|
|
90
85
|
* @returns {string} - Url query string.
|
|
91
86
|
*/
|
|
92
87
|
this._urlRewriteCallback = options.urlRewrite || null;
|
|
88
|
+
|
|
89
|
+
this._requestsPeerSubdomian = 4;
|
|
90
|
+
this._requestCount = 0;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
/**
|
|
94
|
+
* @warning Use XYZ.isIdle in requesAnimationFrame(after setVisibility)
|
|
95
|
+
*/
|
|
96
|
+
get isIdle() {
|
|
97
|
+
return super.isIdle && this._planet._tileLoader.getRequestCounter(this) === 0;
|
|
93
98
|
}
|
|
94
99
|
|
|
95
100
|
get instanceName() {
|
|
@@ -102,7 +107,7 @@ class XYZ extends Layer {
|
|
|
102
107
|
*/
|
|
103
108
|
abortLoading() {
|
|
104
109
|
if (this._planet) {
|
|
105
|
-
this._planet._tileLoader.abort();
|
|
110
|
+
this._planet._tileLoader.abort(this);
|
|
106
111
|
}
|
|
107
112
|
}
|
|
108
113
|
|
|
@@ -114,13 +119,17 @@ class XYZ extends Layer {
|
|
|
114
119
|
setVisibility(visibility) {
|
|
115
120
|
if (visibility !== this._visibility) {
|
|
116
121
|
super.setVisibility(visibility);
|
|
117
|
-
|
|
118
122
|
if (!visibility) {
|
|
119
123
|
this.abortLoading();
|
|
120
124
|
}
|
|
121
125
|
}
|
|
122
126
|
}
|
|
123
127
|
|
|
128
|
+
remove() {
|
|
129
|
+
this.abortLoading();
|
|
130
|
+
super.remove();
|
|
131
|
+
}
|
|
132
|
+
|
|
124
133
|
/**
|
|
125
134
|
* Sets imagery tiles url source template.
|
|
126
135
|
* @public
|
|
@@ -144,6 +153,7 @@ class XYZ extends Layer {
|
|
|
144
153
|
* @param {Material} material - Loads current material.
|
|
145
154
|
*/
|
|
146
155
|
loadMaterial(material, forceLoading) {
|
|
156
|
+
|
|
147
157
|
let seg = material.segment;
|
|
148
158
|
|
|
149
159
|
if (this._isBaseLayer) {
|
|
@@ -212,7 +222,9 @@ class XYZ extends Layer {
|
|
|
212
222
|
}
|
|
213
223
|
|
|
214
224
|
_getSubdomain() {
|
|
215
|
-
|
|
225
|
+
this._requestCount++;
|
|
226
|
+
return this._s[Math.floor(this._requestCount % (this._requestsPeerSubdomian * this._s.length) / this._requestsPeerSubdomian)];
|
|
227
|
+
|
|
216
228
|
}
|
|
217
229
|
|
|
218
230
|
/**
|
|
@@ -236,7 +248,7 @@ class XYZ extends Layer {
|
|
|
236
248
|
this._urlRewriteCallback = ur;
|
|
237
249
|
}
|
|
238
250
|
|
|
239
|
-
applyMaterial(material) {
|
|
251
|
+
applyMaterial(material, forceLoading) {
|
|
240
252
|
if (material.isReady) {
|
|
241
253
|
return material.texOffset;
|
|
242
254
|
} else if (material.segment.tileZoom <= this.minNativeZoom) {
|
|
@@ -263,7 +275,7 @@ class XYZ extends Layer {
|
|
|
263
275
|
if (pn.segment.tileZoom === maxNativeZoom) {
|
|
264
276
|
material.textureNotExists();
|
|
265
277
|
} else if (material.segment.tileZoom <= maxNativeZoom) {
|
|
266
|
-
!material.isLoading && !material.isReady && this.loadMaterial(material);
|
|
278
|
+
!material.isLoading && !material.isReady && this.loadMaterial(material, forceLoading);
|
|
267
279
|
} else {
|
|
268
280
|
let pn = segment.node;
|
|
269
281
|
while (pn.segment.tileZoom > material.layer.maxNativeZoom) {
|
|
@@ -305,7 +317,7 @@ class XYZ extends Layer {
|
|
|
305
317
|
clearMaterial(material) {
|
|
306
318
|
if (material.isReady && material.textureExists) {
|
|
307
319
|
!material.texture.default &&
|
|
308
|
-
|
|
320
|
+
material.segment.handler.gl.deleteTexture(material.texture);
|
|
309
321
|
material.texture = null;
|
|
310
322
|
|
|
311
323
|
if (material.image) {
|