@openglobus/og 0.17.0 → 0.17.2
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/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 +1 -1
- package/src/og/Events.js +2 -2
- package/src/og/Globe.js +1 -1
- package/src/og/ImageCanvas.js +2 -2
- package/src/og/LonLat.js +1 -1
- package/src/og/Object3d.js +1 -1
- package/src/og/QueueArray.js +1 -1
- package/src/og/Stack.js +1 -1
- package/src/og/astro/earth.js +3 -3
- package/src/og/camera/Frustum.js +4 -4
- package/src/og/camera/PlanetCamera.js +10 -11
- package/src/og/cons.js +1 -1
- package/src/og/control/DebugInfo.js +3 -3
- package/src/og/control/EarthNavigation.js +6 -13
- package/src/og/control/KeyboardNavigation.js +41 -18
- package/src/og/control/Lighting.js +1 -1
- package/src/og/control/MouseNavigation.js +1 -1
- package/src/og/control/visibleExtent/Segment.js +2 -2
- package/src/og/ellipsoid/Ellipsoid.js +31 -50
- package/src/og/entity/BillboardHandler.js +3 -3
- package/src/og/entity/EntityCollection.js +7 -7
- package/src/og/entity/GeoObject.js +6 -4
- package/src/og/entity/GeoObjectHandler.js +30 -20
- package/src/og/entity/Geometry.js +2 -2
- package/src/og/entity/GeometryHandler.js +15 -15
- package/src/og/entity/LabelHandler.js +10 -10
- package/src/og/entity/LabelWorker.js +1 -1
- package/src/og/entity/PointCloud.js +2 -2
- package/src/og/entity/PointCloudHandler.js +2 -2
- package/src/og/entity/Polyline.js +11 -11
- package/src/og/entity/PolylineHandler.js +2 -2
- package/src/og/entity/RayHandler.js +2 -2
- package/src/og/entity/StripHandler.js +2 -2
- package/src/og/input/KeyboardHandler.js +90 -23
- package/src/og/layer/BaseGeoImage.js +1 -1
- package/src/og/layer/CanvasTiles.js +1 -1
- package/src/og/layer/Vector.js +2 -2
- package/src/og/math/Vec3.js +5 -0
- package/src/og/math.js +3 -3
- package/src/og/mercator.js +1 -1
- package/src/og/quadTree/Node.js +15 -14
- package/src/og/renderer/Renderer.js +5 -5
- package/src/og/renderer/RendererEvents.js +4 -18
- package/src/og/scene/BaseNode.js +1 -1
- package/src/og/scene/Planet.js +17 -24
- package/src/og/scene/RenderNode.js +9 -9
- package/src/og/segment/Segment.js +2 -2
- package/src/og/segment/SegmentLonLat.js +1 -1
- package/src/og/segment/segmentHelper.js +12 -12
- package/src/og/shaders/atmos.js +1 -1
- package/src/og/utils/GeoImageCreator.js +1 -1
- package/src/og/utils/NormalMapCreator.js +3 -3
- package/src/og/utils/PlainSegmentWorker.js +9 -9
- package/src/og/utils/TerrainWorker.js +2 -2
- package/src/og/utils/TextureAtlas.js +2 -2
- package/src/og/utils/earcut.js +8 -8
- package/src/og/utils/shared.js +10 -10
- package/src/og/webgl/Framebuffer.js +2 -2
- package/src/og/webgl/Handler.js +3 -1
- package/src/og/webgl/Multisample.js +2 -2
- package/src/og/webgl/Program.js +4 -4
- package/types/ImageCanvas.d.ts +1 -1
- package/types/ellipsoid/Ellipsoid.d.ts +3 -1
- package/types/entity/GeoObject.d.ts +1 -2
- package/types/input/KeyboardHandler.d.ts +9 -2
- package/types/math/Vec3.d.ts +2 -0
- package/types/renderer/RendererEvents.d.ts +2 -16
- package/types/scene/Planet.d.ts +1 -3
|
@@ -21,8 +21,8 @@ function createCenterBodyIndexes(size) {
|
|
|
21
21
|
j1 = 1;
|
|
22
22
|
|
|
23
23
|
var ind1, ind2, nr;
|
|
24
|
-
for (
|
|
25
|
-
for (
|
|
24
|
+
for (let i = i0; i < size - 1 - i1; i++) {
|
|
25
|
+
for (let j = j0; j < size - j1; j++) {
|
|
26
26
|
ind1 = i * size + j;
|
|
27
27
|
nr = (i + 1) * size;
|
|
28
28
|
ind2 = nr + j;
|
|
@@ -40,7 +40,7 @@ function createWestNeighborSkirt(size, deltaGr) {
|
|
|
40
40
|
var grCount = (size - 1) / deltaGr;
|
|
41
41
|
var b = size * size - size;
|
|
42
42
|
var k = 0;
|
|
43
|
-
for (
|
|
43
|
+
for (let i = 0; i < size - 2; i++) {
|
|
44
44
|
if (i % grCount === 0) {
|
|
45
45
|
k = i;
|
|
46
46
|
}
|
|
@@ -61,7 +61,7 @@ function createNorthNeighborSkirt(size, deltaGr) {
|
|
|
61
61
|
let indexes = [];
|
|
62
62
|
var grCount = (size - 1) / deltaGr;
|
|
63
63
|
var k = 0;
|
|
64
|
-
for (
|
|
64
|
+
for (let i = 0; i < size - 2; i++) {
|
|
65
65
|
if (i % grCount === 0) {
|
|
66
66
|
k = i;
|
|
67
67
|
}
|
|
@@ -82,7 +82,7 @@ function createEastNeighborSkirt(size, deltaGr) {
|
|
|
82
82
|
let indexes = [];
|
|
83
83
|
var grCount = (size - 1) / deltaGr;
|
|
84
84
|
var k = 0;
|
|
85
|
-
for (
|
|
85
|
+
for (let i = 0; i < size - 2; i++) {
|
|
86
86
|
if (i % grCount === 0) {
|
|
87
87
|
k = i;
|
|
88
88
|
}
|
|
@@ -105,7 +105,7 @@ function createSouthNeighborSkirt(size, deltaGr) {
|
|
|
105
105
|
var k = 0;
|
|
106
106
|
var rb = size * (size - 1) - 2;
|
|
107
107
|
var lb = size * size - 1;
|
|
108
|
-
for (
|
|
108
|
+
for (let i = 0; i < size - 2; i++) {
|
|
109
109
|
if (i % grCount === 0) {
|
|
110
110
|
k = i;
|
|
111
111
|
}
|
|
@@ -130,7 +130,7 @@ function initIndexesBodySkirts(pow) {
|
|
|
130
130
|
table[S] = [];
|
|
131
131
|
table[E] = [];
|
|
132
132
|
|
|
133
|
-
for (
|
|
133
|
+
for (let i = 0; i <= pow; i++) {
|
|
134
134
|
var d = Math.pow(2, i),
|
|
135
135
|
d1 = d + 1;
|
|
136
136
|
|
|
@@ -139,7 +139,7 @@ function initIndexesBodySkirts(pow) {
|
|
|
139
139
|
table[S][i] = [];
|
|
140
140
|
table[E][i] = [];
|
|
141
141
|
|
|
142
|
-
for (
|
|
142
|
+
for (let j = 0; j <= pow; j++) {
|
|
143
143
|
var dd = Math.pow(2, j);
|
|
144
144
|
table[W][i][j] = createWestNeighborSkirt(d1, dd);
|
|
145
145
|
table[N][i][j] = createNorthNeighborSkirt(d1, dd);
|
|
@@ -153,7 +153,7 @@ function initIndexesBodySkirts(pow) {
|
|
|
153
153
|
|
|
154
154
|
function initIndexBodiesTable(pow) {
|
|
155
155
|
var table = [];
|
|
156
|
-
for (
|
|
156
|
+
for (let i = 0; i <= pow; i++) {
|
|
157
157
|
var d = Math.pow(2, i);
|
|
158
158
|
table[i] = createCenterBodyIndexes(d + 1);
|
|
159
159
|
}
|
|
@@ -163,8 +163,8 @@ function initIndexBodiesTable(pow) {
|
|
|
163
163
|
function createTextureCoords(size) {
|
|
164
164
|
var texCoords = new Uint16Array((size + 1) * (size + 1) * 2);
|
|
165
165
|
let k = 0;
|
|
166
|
-
for (
|
|
167
|
-
for (
|
|
166
|
+
for (let i = 0; i <= size; i++) {
|
|
167
|
+
for (let j = 0; j <= size; j++) {
|
|
168
168
|
texCoords[k++] = j / size * 0xFFFF;
|
|
169
169
|
texCoords[k++] = i / size * 0xFFFF;
|
|
170
170
|
}
|
|
@@ -215,7 +215,7 @@ class SegmentHelper {
|
|
|
215
215
|
|
|
216
216
|
initTextureCoordsTable(pow) {
|
|
217
217
|
var table = [];
|
|
218
|
-
for (
|
|
218
|
+
for (let i = 0; i <= pow; i++) {
|
|
219
219
|
var d = Math.pow(2, i);
|
|
220
220
|
table[i] = createTextureCoords(d);
|
|
221
221
|
}
|
package/src/og/shaders/atmos.js
CHANGED
|
@@ -23,7 +23,7 @@ export const COMMON =
|
|
|
23
23
|
const float TOP_RADIUS = 6356752.3142451793 + ATMOS_HEIGHT;
|
|
24
24
|
|
|
25
25
|
// Ellipsoid
|
|
26
|
-
const vec3 bottomRadii = vec3(6378137.0,
|
|
26
|
+
const vec3 bottomRadii = vec3(6378137.0, 6378137.0, 6356752.3142451793);
|
|
27
27
|
const vec3 topRadii = bottomRadii + ATMOS_HEIGHT;
|
|
28
28
|
|
|
29
29
|
const vec3 SPHERE_TO_ELLIPSOID_SCALE = vec3(BOTTOM_RADIUS) / bottomRadii;
|
|
@@ -122,13 +122,13 @@ export class NormalMapCreator {
|
|
|
122
122
|
this._normalMapVerticesTexture = this._handler.createEmptyTexture_l(this._width, this._height);
|
|
123
123
|
|
|
124
124
|
//create vertices hasharray for different grid size segments from 2^4(16) to 2^7(128)
|
|
125
|
-
for (
|
|
125
|
+
for (let p = this._minTabelSize; p <= this._maxTableSize; p++) {
|
|
126
126
|
var gs = Math.pow(2, p);
|
|
127
127
|
var gs2 = gs / 2;
|
|
128
128
|
var vertices = new Float32Array((gs + 1) * (gs + 1) * 2);
|
|
129
129
|
|
|
130
|
-
for (
|
|
131
|
-
for (
|
|
130
|
+
for (let i = 0; i <= gs; i++) {
|
|
131
|
+
for (let j = 0; j <= gs; j++) {
|
|
132
132
|
let ind = (i * (gs + 1) + j) * 2;
|
|
133
133
|
vertices[ind] = -1 + j / gs2;
|
|
134
134
|
vertices[ind + 1] = -1 + i / gs2;
|
|
@@ -193,7 +193,7 @@ const _programm = `
|
|
|
193
193
|
this.z = z;
|
|
194
194
|
};
|
|
195
195
|
|
|
196
|
-
var
|
|
196
|
+
var geodeticToCartesian = function (lon, lat, heightFactor, res) {
|
|
197
197
|
|
|
198
198
|
let h = getHeightMSL(lon, lat) * heightFactor;
|
|
199
199
|
|
|
@@ -204,14 +204,14 @@ const _programm = `
|
|
|
204
204
|
|
|
205
205
|
let N = A / Math.sqrt(1.0 - E2 * slt * slt);
|
|
206
206
|
let nc = (N + h) * Math.cos(latrad);
|
|
207
|
-
|
|
208
|
-
res.x = nc * Math.
|
|
209
|
-
res.y =
|
|
210
|
-
res.z =
|
|
207
|
+
|
|
208
|
+
res.x = nc * Math.cos(lonrad);
|
|
209
|
+
res.y = nc * Math.sin(lonrad);
|
|
210
|
+
res.z = (N * (1 - E2) + h) * slt;
|
|
211
211
|
};
|
|
212
212
|
|
|
213
|
-
var
|
|
214
|
-
|
|
213
|
+
var geodeticToCartesianInverse = function (lon, lat, heightFactor, res){
|
|
214
|
+
geodeticToCartesian(
|
|
215
215
|
lon * INV_POLE_BY_180,
|
|
216
216
|
INV_PI_BY_360 * Math.atan(Math.exp(lat * PI_BY_POLE)) - INV_PI_BY_180_HALF_PI,
|
|
217
217
|
heightFactor,
|
|
@@ -279,9 +279,9 @@ const _programm = `
|
|
|
279
279
|
let heightFactor = msg.data.params[13];
|
|
280
280
|
|
|
281
281
|
if(msg.data.params[1] === 0.0){
|
|
282
|
-
_projFunc =
|
|
282
|
+
_projFunc = geodeticToCartesianInverse;
|
|
283
283
|
}else{
|
|
284
|
-
_projFunc =
|
|
284
|
+
_projFunc = geodeticToCartesian;
|
|
285
285
|
}
|
|
286
286
|
|
|
287
287
|
let maxFgs = Math.max(fgs, gridSize);
|
|
@@ -232,7 +232,7 @@ const _programm =
|
|
|
232
232
|
normalMapVerticesHigh = new Float32Array(fileGridSize_one_x2 * 3);
|
|
233
233
|
normalMapVerticesLow = new Float32Array(fileGridSize_one_x2 * 3);
|
|
234
234
|
|
|
235
|
-
for (
|
|
235
|
+
for (let k = 0; k < fileGridSize_one_x2; k++) {
|
|
236
236
|
|
|
237
237
|
var j = k % fileGridSize_one,
|
|
238
238
|
i = ~~(k / fileGridSize_one);
|
|
@@ -502,7 +502,7 @@ const _programm =
|
|
|
502
502
|
normalMapVerticesHigh.set(terrainVerticesHigh);
|
|
503
503
|
normalMapVerticesLow.set(terrainVerticesLow);
|
|
504
504
|
|
|
505
|
-
for(
|
|
505
|
+
for (let k = 0; k < gsgs; k++) {
|
|
506
506
|
|
|
507
507
|
var j = k % gs,
|
|
508
508
|
i = ~~(k / gs);
|
|
@@ -168,7 +168,7 @@ class TextureAtlas {
|
|
|
168
168
|
this.clearCanvas();
|
|
169
169
|
|
|
170
170
|
var newNodes = new Map();
|
|
171
|
-
for (
|
|
171
|
+
for (let i = 0; i < im.length; i++) {
|
|
172
172
|
this._completeNode(newNodes, this._btree.insert(im[i]));
|
|
173
173
|
}
|
|
174
174
|
this.nodes = null;
|
|
@@ -189,7 +189,7 @@ class TextureAtlas {
|
|
|
189
189
|
* @public
|
|
190
190
|
*/
|
|
191
191
|
createTexture(img, internalFormat) {
|
|
192
|
-
if (this._handler) {
|
|
192
|
+
if (this._handler && this._handler.gl) {
|
|
193
193
|
this._handler.gl.deleteTexture(this.texture);
|
|
194
194
|
if (img) {
|
|
195
195
|
this.canvas.resize(img.width, img.height);
|
package/src/og/utils/earcut.js
CHANGED
|
@@ -45,7 +45,7 @@ function earcut(data, holeIndices, dim) {
|
|
|
45
45
|
minX = maxX = data[0];
|
|
46
46
|
minY = maxY = data[1];
|
|
47
47
|
|
|
48
|
-
for (
|
|
48
|
+
for (let i = dim; i < outerLen; i += dim) {
|
|
49
49
|
x = data[i];
|
|
50
50
|
y = data[i + 1];
|
|
51
51
|
if (x < minX) minX = x;
|
|
@@ -610,7 +610,7 @@ function deviation(data, holeIndices, dim, triangles) {
|
|
|
610
610
|
|
|
611
611
|
var polygonArea = Math.abs(signedArea(data, 0, outerLen, dim));
|
|
612
612
|
if (hasHoles) {
|
|
613
|
-
for (
|
|
613
|
+
for (let i = 0, len = holeIndices.length; i < len; i++) {
|
|
614
614
|
var start = holeIndices[i] * dim;
|
|
615
615
|
var end = i < len - 1 ? holeIndices[i + 1] * dim : data.length;
|
|
616
616
|
polygonArea -= Math.abs(signedArea(data, start, end, dim));
|
|
@@ -618,7 +618,7 @@ function deviation(data, holeIndices, dim, triangles) {
|
|
|
618
618
|
}
|
|
619
619
|
|
|
620
620
|
var trianglesArea = 0;
|
|
621
|
-
for (i = 0; i < triangles.length; i += 3) {
|
|
621
|
+
for (let i = 0; i < triangles.length; i += 3) {
|
|
622
622
|
var a = triangles[i] * dim;
|
|
623
623
|
var b = triangles[i + 1] * dim;
|
|
624
624
|
var c = triangles[i + 2] * dim;
|
|
@@ -633,7 +633,7 @@ function deviation(data, holeIndices, dim, triangles) {
|
|
|
633
633
|
|
|
634
634
|
function signedArea(data, start, end, dim) {
|
|
635
635
|
var sum = 0;
|
|
636
|
-
for (
|
|
636
|
+
for (let i = start, j = end - dim; i < end; i += dim) {
|
|
637
637
|
sum += (data[j] - data[i]) * (data[i + 1] + data[j + 1]);
|
|
638
638
|
j = i;
|
|
639
639
|
}
|
|
@@ -646,9 +646,9 @@ function flatten(data) {
|
|
|
646
646
|
result = { vertices: [], holes: [], dimensions: dim },
|
|
647
647
|
holeIndex = 0;
|
|
648
648
|
|
|
649
|
-
for (
|
|
650
|
-
for (
|
|
651
|
-
for (
|
|
649
|
+
for (let i = 0; i < data.length; i++) {
|
|
650
|
+
for (let j = 0; j < data[i].length; j++) {
|
|
651
|
+
for (let d = 0; d < dim; d++) result.vertices.push(data[i][j][d]);
|
|
652
652
|
}
|
|
653
653
|
if (i > 0) {
|
|
654
654
|
holeIndex += data[i - 1].length;
|
|
@@ -658,4 +658,4 @@ function flatten(data) {
|
|
|
658
658
|
return result;
|
|
659
659
|
}
|
|
660
660
|
|
|
661
|
-
export { earcut, flatten };
|
|
661
|
+
export { earcut, flatten };
|
package/src/og/utils/shared.js
CHANGED
|
@@ -152,7 +152,7 @@ export function parseHTML(htmlStr) {
|
|
|
152
152
|
var p = document.createElement("div");
|
|
153
153
|
p.innerHTML = htmlStr;
|
|
154
154
|
var domArr = [];
|
|
155
|
-
for (
|
|
155
|
+
for (let i = 0; i < p.childNodes.length; i++) {
|
|
156
156
|
domArr.push(p.childNodes[i]);
|
|
157
157
|
p.removeChild(p.childNodes[i]);
|
|
158
158
|
}
|
|
@@ -419,7 +419,7 @@ export function xmlToJson(xml) {
|
|
|
419
419
|
// do attributes
|
|
420
420
|
if (xml.attributes.length > 0) {
|
|
421
421
|
obj["@attributes"] = {};
|
|
422
|
-
for (
|
|
422
|
+
for (let j = 0; j < xml.attributes.length; j++) {
|
|
423
423
|
var attribute = xml.attributes.item(j);
|
|
424
424
|
obj["@attributes"][attribute.nodeName] = attribute.nodeValue;
|
|
425
425
|
}
|
|
@@ -431,7 +431,7 @@ export function xmlToJson(xml) {
|
|
|
431
431
|
|
|
432
432
|
// do children
|
|
433
433
|
if (xml.hasChildNodes()) {
|
|
434
|
-
for (
|
|
434
|
+
for (let i = 0; i < xml.childNodes.length; i++) {
|
|
435
435
|
var item = xml.childNodes.item(i);
|
|
436
436
|
var nodeName = item.nodeName;
|
|
437
437
|
if (typeof obj[nodeName] === "undefined") {
|
|
@@ -511,12 +511,12 @@ export function base64toBlob(base64Data, contentType) {
|
|
|
511
511
|
var slicesCount = Math.ceil(bytesLength / sliceSize);
|
|
512
512
|
var byteArrays = new Array(slicesCount);
|
|
513
513
|
|
|
514
|
-
for (
|
|
514
|
+
for (let sliceIndex = 0; sliceIndex < slicesCount; ++sliceIndex) {
|
|
515
515
|
var begin = sliceIndex * sliceSize;
|
|
516
516
|
var end = Math.min(begin + sliceSize, bytesLength);
|
|
517
517
|
|
|
518
518
|
var bytes = new Array(end - begin);
|
|
519
|
-
for (
|
|
519
|
+
for (let offset = begin, i = 0; offset < end; ++i, ++offset) {
|
|
520
520
|
bytes[i] = byteCharacters[offset].charCodeAt(0);
|
|
521
521
|
}
|
|
522
522
|
byteArrays[sliceIndex] = new Uint8Array(bytes);
|
|
@@ -751,7 +751,7 @@ export function concatArrays(a = [], b) {
|
|
|
751
751
|
if (ArrayBuffer.isView(a)) {
|
|
752
752
|
return concatTypedArrays(a, b);
|
|
753
753
|
} else {
|
|
754
|
-
for (
|
|
754
|
+
for (let i = 0; i < b.length; i++) {
|
|
755
755
|
a.push(b[i]);
|
|
756
756
|
}
|
|
757
757
|
return a;
|
|
@@ -858,8 +858,8 @@ export function getMatrixSubArray(sourceArr, gridSize, i0, j0, size) {
|
|
|
858
858
|
var res = new Float64Array(size_1 * size_1 * 3);
|
|
859
859
|
|
|
860
860
|
var vInd = 0;
|
|
861
|
-
for (
|
|
862
|
-
for (
|
|
861
|
+
for (let i = i0; i < i0size; i++) {
|
|
862
|
+
for (let j = j0; j < j0size; j++) {
|
|
863
863
|
var ind = 3 * (i * (gridSize + 1) + j);
|
|
864
864
|
|
|
865
865
|
res[vInd++] = sourceArr[ind];
|
|
@@ -902,8 +902,8 @@ export function getMatrixSubArrayBoundsExt(
|
|
|
902
902
|
gridSize += 1;
|
|
903
903
|
var vInd = 0,
|
|
904
904
|
nInd = 0;
|
|
905
|
-
for (
|
|
906
|
-
for (
|
|
905
|
+
for (let i = i0; i < i0size; i++) {
|
|
906
|
+
for (let j = j0; j < j0size; j++) {
|
|
907
907
|
let indBy3 = i * gridSize + j,
|
|
908
908
|
ind = 3 * indBy3;
|
|
909
909
|
|
|
@@ -121,7 +121,7 @@ export class Framebuffer {
|
|
|
121
121
|
destroy() {
|
|
122
122
|
var gl = this.handler.gl;
|
|
123
123
|
|
|
124
|
-
for (
|
|
124
|
+
for (let i = 0; i < this.textures.length; i++) {
|
|
125
125
|
gl.deleteTexture(this.textures[i]);
|
|
126
126
|
}
|
|
127
127
|
this.textures = new Array(this._size);
|
|
@@ -148,7 +148,7 @@ export class Framebuffer {
|
|
|
148
148
|
|
|
149
149
|
if (!this._isBare) {
|
|
150
150
|
let attachmentArr = [];
|
|
151
|
-
for (
|
|
151
|
+
for (let i = 0; i < this.textures.length; i++) {
|
|
152
152
|
let ti = this.textures[i] || this.handler.createEmptyTexture2DExt(this._width, this._height, this._filter, this._internalFormatArr[i], this._formatArr[i], this._typeArr[i]);
|
|
153
153
|
|
|
154
154
|
let att_i = gl[this._attachmentArr[i]];
|
package/src/og/webgl/Handler.js
CHANGED
|
@@ -1026,6 +1026,8 @@ class Handler {
|
|
|
1026
1026
|
destroy() {
|
|
1027
1027
|
let gl = this.gl;
|
|
1028
1028
|
|
|
1029
|
+
this.resizeObserver.disconnect();
|
|
1030
|
+
this.intersectionObserver.disconnect();
|
|
1029
1031
|
this.stop();
|
|
1030
1032
|
|
|
1031
1033
|
//
|
|
@@ -1138,7 +1140,7 @@ class Handler {
|
|
|
1138
1140
|
// const data = new DataView(xhr.response);
|
|
1139
1141
|
// const array =
|
|
1140
1142
|
// new Float32Array(data.byteLength / Float32Array.BYTES_PER_ELEMENT);
|
|
1141
|
-
// for (
|
|
1143
|
+
// for (let i = 0; i < array.length; ++i) {
|
|
1142
1144
|
// array[i] = data.getFloat32(i * Float32Array.BYTES_PER_ELEMENT, true);
|
|
1143
1145
|
// }
|
|
1144
1146
|
// callback(array);
|
|
@@ -88,7 +88,7 @@ export class Multisample {
|
|
|
88
88
|
destroy() {
|
|
89
89
|
var gl = this.handler.gl;
|
|
90
90
|
|
|
91
|
-
for (
|
|
91
|
+
for (let i = 0; i < this.renderbuffers.length; i++) {
|
|
92
92
|
gl.deleteRenderbuffer(this.renderbuffers[i]);
|
|
93
93
|
}
|
|
94
94
|
this.renderbuffers = new Array(this._size);
|
|
@@ -116,7 +116,7 @@ export class Multisample {
|
|
|
116
116
|
gl.bindFramebuffer(gl.FRAMEBUFFER, this._fbo);
|
|
117
117
|
|
|
118
118
|
let colorAttachments = [];
|
|
119
|
-
for (
|
|
119
|
+
for (let i = 0; i < this.renderbuffers.length; i++) {
|
|
120
120
|
let rb = gl.createRenderbuffer();
|
|
121
121
|
gl.bindRenderbuffer(gl.RENDERBUFFER, rb);
|
|
122
122
|
|
package/src/og/webgl/Program.js
CHANGED
|
@@ -154,7 +154,7 @@ class Program {
|
|
|
154
154
|
*/
|
|
155
155
|
set(material) {
|
|
156
156
|
this._textureID = 0;
|
|
157
|
-
for (
|
|
157
|
+
for (let i in material) {
|
|
158
158
|
this._variables[i].value = material[i];
|
|
159
159
|
this._variables[i]._callback(this, this._variables[i]);
|
|
160
160
|
}
|
|
@@ -167,7 +167,7 @@ class Program {
|
|
|
167
167
|
apply() {
|
|
168
168
|
this._textureID = 0;
|
|
169
169
|
var v = this._variables;
|
|
170
|
-
for (
|
|
170
|
+
for (let i in v) {
|
|
171
171
|
v[i]._callback(this, v[i]);
|
|
172
172
|
}
|
|
173
173
|
}
|
|
@@ -318,7 +318,7 @@ class Program {
|
|
|
318
318
|
|
|
319
319
|
this.use();
|
|
320
320
|
|
|
321
|
-
for (
|
|
321
|
+
for (let a in this._attributes) {
|
|
322
322
|
//this.attributes[a]._name = a;
|
|
323
323
|
this._variables[a] = this._attributes[a];
|
|
324
324
|
|
|
@@ -371,7 +371,7 @@ class Program {
|
|
|
371
371
|
this.attributes[a] = this._p[a];
|
|
372
372
|
}
|
|
373
373
|
|
|
374
|
-
for (
|
|
374
|
+
for (let u in this._uniforms) {
|
|
375
375
|
//this.uniforms[u]._name = u;
|
|
376
376
|
|
|
377
377
|
if (typeof this._uniforms[u].type === "string") {
|
package/types/ImageCanvas.d.ts
CHANGED
|
@@ -92,7 +92,7 @@ export class Ellipsoid {
|
|
|
92
92
|
* @param {Number} height - Height.
|
|
93
93
|
* @returns {Vec3} -
|
|
94
94
|
*/
|
|
95
|
-
public geodeticToCartesian(lon: number, lat: number, height
|
|
95
|
+
public geodeticToCartesian(lon: number, lat: number, height: number, res: any): Vec3;
|
|
96
96
|
/**
|
|
97
97
|
* Gets Wgs84 geodetic coordinates from cartesian ECEF.
|
|
98
98
|
* @public
|
|
@@ -155,6 +155,7 @@ export class Ellipsoid {
|
|
|
155
155
|
* @returns {Vec3} -
|
|
156
156
|
*/
|
|
157
157
|
public hitRay(origin: Vec3, direction: Vec3): Vec3;
|
|
158
|
+
getNorthFrameRotation(cartesian: any): Quat;
|
|
158
159
|
/**
|
|
159
160
|
* @todo this is not precise function, needs to be replaced or removed
|
|
160
161
|
* @param lonLat1
|
|
@@ -166,3 +167,4 @@ export class Ellipsoid {
|
|
|
166
167
|
}
|
|
167
168
|
import { Vec3 } from "../math/Vec3.js";
|
|
168
169
|
import { LonLat } from "../LonLat.js";
|
|
170
|
+
import { Quat } from "../math/Quat.js";
|
|
@@ -112,7 +112,6 @@ export class GeoObject {
|
|
|
112
112
|
*/
|
|
113
113
|
public setPickingColor3v(color: og.Vec3): void;
|
|
114
114
|
updateDirection(): void;
|
|
115
|
-
_qNorthFrame:
|
|
115
|
+
_qNorthFrame: any;
|
|
116
116
|
}
|
|
117
117
|
import { Vec3 } from "../math/index.js";
|
|
118
|
-
import { Quat } from "../math/index.js";
|
|
@@ -1,8 +1,15 @@
|
|
|
1
1
|
export class KeyboardHandler {
|
|
2
|
-
|
|
2
|
+
getcurrentlyPressedKeys: () => {};
|
|
3
|
+
getPressedKeysCallbacks: () => {};
|
|
4
|
+
getUnpressedKeysCallbacks: () => {};
|
|
5
|
+
getCharkeysCallbacks: () => {};
|
|
6
|
+
removeEvent: (event: any, keyCode: any, callback: any) => void;
|
|
7
|
+
_removeCallback: (handlers: any, callback: any) => void;
|
|
8
|
+
_getStamp: (name: any, keyCode: any, ogid: any) => string;
|
|
9
|
+
_stamp: (name: any, keyCode: any, obj: any) => boolean;
|
|
3
10
|
setActivity: (activity: any) => void;
|
|
4
11
|
releaseKeys: () => void;
|
|
5
|
-
addEvent: (event: any,
|
|
12
|
+
addEvent: (event: any, keyCode: any, callback: any, sender: any, priority: any) => void;
|
|
6
13
|
isKeyPressed: (keyCode: any) => any;
|
|
7
14
|
handleKeyDown: () => void;
|
|
8
15
|
handleKeyUp: () => void;
|
package/types/math/Vec3.d.ts
CHANGED
|
@@ -170,22 +170,8 @@ export class RendererEvents extends Events {
|
|
|
170
170
|
* @public
|
|
171
171
|
*/
|
|
172
172
|
public handleEvents(): void;
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
* @public
|
|
176
|
-
* @param {string} name - Event name
|
|
177
|
-
* @param {eventCallback} callback - Callback function
|
|
178
|
-
* @param {number} [key] - Key code from og.input
|
|
179
|
-
* @param {*} sender - Callback context
|
|
180
|
-
* @param {number} [priority] - Event callback priority
|
|
181
|
-
*/
|
|
182
|
-
public on(name: string, p0: any, p1: any, p2: any, p3: any): void;
|
|
183
|
-
/**
|
|
184
|
-
* TODO: DOESNT WORK!!!
|
|
185
|
-
* @param {any} name
|
|
186
|
-
* @param {any} callback
|
|
187
|
-
*/
|
|
188
|
-
off(name: any, callback: any): void;
|
|
173
|
+
on(name: any, p0: any, p1: any, p2: any, p3: any): void;
|
|
174
|
+
off(name: any, p1: any, p2: any): void;
|
|
189
175
|
/**
|
|
190
176
|
* Check key is pressed.
|
|
191
177
|
* @public
|
package/types/scene/Planet.d.ts
CHANGED
|
@@ -16,9 +16,7 @@
|
|
|
16
16
|
* @fires og.scene.Planet#geoimageadd
|
|
17
17
|
*/
|
|
18
18
|
export class Planet extends RenderNode {
|
|
19
|
-
static getBearingNorthRotationQuat(cartesian: any): Quat;
|
|
20
19
|
constructor(options?: {});
|
|
21
|
-
_cameraFrustums: any;
|
|
22
20
|
/**
|
|
23
21
|
* @public
|
|
24
22
|
* @type {Ellipsoid}
|
|
@@ -260,6 +258,7 @@ export class Planet extends RenderNode {
|
|
|
260
258
|
_renderScreenNodesPASS: () => void;
|
|
261
259
|
_atmosphereEnabled: any;
|
|
262
260
|
_atmosphereMaxMinOpacity: Float32Array;
|
|
261
|
+
getNorthFrameRotation(cartesian: any): any;
|
|
263
262
|
set atmosphereMaxOpacity(arg: number);
|
|
264
263
|
get atmosphereMaxOpacity(): number;
|
|
265
264
|
set atmosphereMinOpacity(arg: number);
|
|
@@ -593,4 +592,3 @@ import { PlainSegmentWorker } from "../utils/PlainSegmentWorker.js";
|
|
|
593
592
|
import { Loader } from "../utils/Loader.js";
|
|
594
593
|
import { Key } from "../Lock.js";
|
|
595
594
|
import { LonLat } from "../LonLat.js";
|
|
596
|
-
import { Quat } from "../math/index.js";
|