@itwin/core-frontend 5.3.0-dev.8 → 5.3.0-dev.9
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/lib/cjs/ElementLocateManager.d.ts.map +1 -1
- package/lib/cjs/ElementLocateManager.js +2 -5
- package/lib/cjs/ElementLocateManager.js.map +1 -1
- package/lib/cjs/HitDetail.d.ts +1 -24
- package/lib/cjs/HitDetail.d.ts.map +1 -1
- package/lib/cjs/HitDetail.js +0 -5
- package/lib/cjs/HitDetail.js.map +1 -1
- package/lib/cjs/internal/render/webgl/FrustumUniforms.d.ts +0 -2
- package/lib/cjs/internal/render/webgl/FrustumUniforms.d.ts.map +1 -1
- package/lib/cjs/internal/render/webgl/FrustumUniforms.js +0 -7
- package/lib/cjs/internal/render/webgl/FrustumUniforms.js.map +1 -1
- package/lib/cjs/internal/render/webgl/SceneCompositor.d.ts +0 -9
- package/lib/cjs/internal/render/webgl/SceneCompositor.d.ts.map +1 -1
- package/lib/cjs/internal/render/webgl/SceneCompositor.js +4 -67
- package/lib/cjs/internal/render/webgl/SceneCompositor.js.map +1 -1
- package/lib/cjs/internal/render/webgl/ShaderBuilder.d.ts +3 -4
- package/lib/cjs/internal/render/webgl/ShaderBuilder.d.ts.map +1 -1
- package/lib/cjs/internal/render/webgl/ShaderBuilder.js +3 -3
- package/lib/cjs/internal/render/webgl/ShaderBuilder.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Atmosphere.js +1 -1
- package/lib/cjs/internal/render/webgl/glsl/ClearPickAndColor.d.ts.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/ClearPickAndColor.js +1 -2
- package/lib/cjs/internal/render/webgl/glsl/ClearPickAndColor.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Contours.d.ts.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Contours.js +1 -30
- package/lib/cjs/internal/render/webgl/glsl/Contours.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Fragment.d.ts.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Fragment.js +2 -7
- package/lib/cjs/internal/render/webgl/glsl/Fragment.js.map +1 -1
- package/lib/cjs/internal/render/webgl/glsl/RealityMesh.js +1 -1
- package/lib/cjs/internal/render/webgl/glsl/Surface.js +1 -1
- package/lib/cjs/render/Pixel.d.ts +2 -13
- package/lib/cjs/render/Pixel.d.ts.map +1 -1
- package/lib/cjs/render/Pixel.js +1 -9
- package/lib/cjs/render/Pixel.js.map +1 -1
- package/lib/esm/ElementLocateManager.d.ts.map +1 -1
- package/lib/esm/ElementLocateManager.js +2 -5
- package/lib/esm/ElementLocateManager.js.map +1 -1
- package/lib/esm/HitDetail.d.ts +1 -24
- package/lib/esm/HitDetail.d.ts.map +1 -1
- package/lib/esm/HitDetail.js +0 -5
- package/lib/esm/HitDetail.js.map +1 -1
- package/lib/esm/internal/render/webgl/FrustumUniforms.d.ts +0 -2
- package/lib/esm/internal/render/webgl/FrustumUniforms.d.ts.map +1 -1
- package/lib/esm/internal/render/webgl/FrustumUniforms.js +1 -8
- package/lib/esm/internal/render/webgl/FrustumUniforms.js.map +1 -1
- package/lib/esm/internal/render/webgl/SceneCompositor.d.ts +0 -9
- package/lib/esm/internal/render/webgl/SceneCompositor.d.ts.map +1 -1
- package/lib/esm/internal/render/webgl/SceneCompositor.js +4 -67
- package/lib/esm/internal/render/webgl/SceneCompositor.js.map +1 -1
- package/lib/esm/internal/render/webgl/ShaderBuilder.d.ts +3 -4
- package/lib/esm/internal/render/webgl/ShaderBuilder.d.ts.map +1 -1
- package/lib/esm/internal/render/webgl/ShaderBuilder.js +3 -3
- package/lib/esm/internal/render/webgl/ShaderBuilder.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Atmosphere.js +1 -1
- package/lib/esm/internal/render/webgl/glsl/ClearPickAndColor.d.ts.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/ClearPickAndColor.js +1 -2
- package/lib/esm/internal/render/webgl/glsl/ClearPickAndColor.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Contours.d.ts.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Contours.js +1 -30
- package/lib/esm/internal/render/webgl/glsl/Contours.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Fragment.d.ts.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/Fragment.js +2 -7
- package/lib/esm/internal/render/webgl/glsl/Fragment.js.map +1 -1
- package/lib/esm/internal/render/webgl/glsl/RealityMesh.js +1 -1
- package/lib/esm/internal/render/webgl/glsl/Surface.js +1 -1
- package/lib/esm/render/Pixel.d.ts +2 -13
- package/lib/esm/render/Pixel.d.ts.map +1 -1
- package/lib/esm/render/Pixel.js +1 -9
- package/lib/esm/render/Pixel.js.map +1 -1
- package/package.json +21 -22
|
@@ -42,8 +42,6 @@ class Textures {
|
|
|
42
42
|
featureId;
|
|
43
43
|
depthAndOrder;
|
|
44
44
|
depthAndOrderHidden; // only used if AO and multisampling
|
|
45
|
-
contours;
|
|
46
|
-
contoursMsBuff;
|
|
47
45
|
hilite;
|
|
48
46
|
occlusion;
|
|
49
47
|
occlusionBlur;
|
|
@@ -61,8 +59,6 @@ class Textures {
|
|
|
61
59
|
&& undefined === this.color
|
|
62
60
|
&& undefined === this.featureId
|
|
63
61
|
&& undefined === this.depthAndOrder
|
|
64
|
-
&& undefined === this.contours
|
|
65
|
-
&& undefined === this.contoursMsBuff
|
|
66
62
|
&& undefined === this.depthAndOrderHidden
|
|
67
63
|
&& undefined === this.hilite
|
|
68
64
|
&& undefined === this.occlusion
|
|
@@ -82,8 +78,6 @@ class Textures {
|
|
|
82
78
|
this.color = dispose(this.color);
|
|
83
79
|
this.featureId = dispose(this.featureId);
|
|
84
80
|
this.depthAndOrder = dispose(this.depthAndOrder);
|
|
85
|
-
this.contours = dispose(this.contours);
|
|
86
|
-
this.contoursMsBuff = dispose(this.contoursMsBuff);
|
|
87
81
|
this.depthAndOrderHidden = dispose(this.depthAndOrderHidden);
|
|
88
82
|
this.hilite = dispose(this.hilite);
|
|
89
83
|
this.occlusion = dispose(this.occlusion);
|
|
@@ -103,8 +97,6 @@ class Textures {
|
|
|
103
97
|
collectTextureStatistics(this.color, stats);
|
|
104
98
|
collectTextureStatistics(this.featureId, stats);
|
|
105
99
|
collectTextureStatistics(this.depthAndOrder, stats);
|
|
106
|
-
collectTextureStatistics(this.contours, stats);
|
|
107
|
-
collectMsBufferStatistics(this.contoursMsBuff, stats);
|
|
108
100
|
collectTextureStatistics(this.depthAndOrderHidden, stats);
|
|
109
101
|
collectTextureStatistics(this.hilite, stats);
|
|
110
102
|
collectTextureStatistics(this.occlusion, stats);
|
|
@@ -143,13 +135,11 @@ class Textures {
|
|
|
143
135
|
this.color = TextureHandle.createForAttachment(width, height, GL.Texture.Format.Rgba, GL.Texture.DataType.UnsignedByte);
|
|
144
136
|
this.featureId = TextureHandle.createForAttachment(width, height, GL.Texture.Format.Rgba, GL.Texture.DataType.UnsignedByte);
|
|
145
137
|
this.depthAndOrder = TextureHandle.createForAttachment(width, height, GL.Texture.Format.Rgba, GL.Texture.DataType.UnsignedByte);
|
|
146
|
-
this.contours = TextureHandle.createForAttachment(width, height, GL.Texture.Format.Rgba, GL.Texture.DataType.UnsignedByte);
|
|
147
138
|
let rVal = undefined !== this.accumulation
|
|
148
139
|
&& undefined !== this.revealage
|
|
149
140
|
&& undefined !== this.color
|
|
150
141
|
&& undefined !== this.featureId
|
|
151
142
|
&& undefined !== this.depthAndOrder
|
|
152
|
-
&& undefined !== this.contours
|
|
153
143
|
&& undefined !== this.hilite;
|
|
154
144
|
if (rVal && numSamples > 1) {
|
|
155
145
|
rVal = this.enableMultiSampling(width, height, numSamples);
|
|
@@ -194,14 +184,12 @@ class Textures {
|
|
|
194
184
|
this.featureIdMsBuffHidden = RenderBufferMultiSample.create(width, height, WebGL2RenderingContext.RGBA8, numSamples);
|
|
195
185
|
this.depthAndOrderMsBuff = RenderBufferMultiSample.create(width, height, WebGL2RenderingContext.RGBA8, numSamples);
|
|
196
186
|
this.depthAndOrderMsBuffHidden = RenderBufferMultiSample.create(width, height, WebGL2RenderingContext.RGBA8, numSamples);
|
|
197
|
-
this.contoursMsBuff = RenderBufferMultiSample.create(width, height, WebGL2RenderingContext.RGBA8, numSamples);
|
|
198
187
|
this.hiliteMsBuff = RenderBufferMultiSample.create(width, height, WebGL2RenderingContext.RGBA8, numSamples);
|
|
199
188
|
return undefined !== this.colorMsBuff
|
|
200
189
|
&& undefined !== this.featureIdMsBuff
|
|
201
190
|
&& undefined !== this.featureIdMsBuffHidden
|
|
202
191
|
&& undefined !== this.depthAndOrderMsBuff
|
|
203
192
|
&& undefined !== this.depthAndOrderMsBuffHidden
|
|
204
|
-
&& undefined !== this.contoursMsBuff
|
|
205
193
|
&& undefined !== this.hiliteMsBuff;
|
|
206
194
|
}
|
|
207
195
|
disableMultiSampling() {
|
|
@@ -210,7 +198,6 @@ class Textures {
|
|
|
210
198
|
this.featureIdMsBuffHidden = dispose(this.featureIdMsBuffHidden);
|
|
211
199
|
this.depthAndOrderMsBuff = dispose(this.depthAndOrderMsBuff);
|
|
212
200
|
this.depthAndOrderMsBuffHidden = dispose(this.depthAndOrderMsBuffHidden);
|
|
213
|
-
this.contoursMsBuff = dispose(this.contoursMsBuff);
|
|
214
201
|
this.hiliteMsBuff = dispose(this.hiliteMsBuff);
|
|
215
202
|
return true;
|
|
216
203
|
}
|
|
@@ -220,7 +207,6 @@ class FrameBuffers {
|
|
|
220
207
|
opaqueColor;
|
|
221
208
|
opaqueAndCompositeColor;
|
|
222
209
|
depthAndOrder;
|
|
223
|
-
contours;
|
|
224
210
|
hilite;
|
|
225
211
|
hiliteUsingStencil;
|
|
226
212
|
stencilSet;
|
|
@@ -245,10 +231,9 @@ class FrameBuffers {
|
|
|
245
231
|
if (!this.initPotentialMSFbos(textures, depth, depthMS))
|
|
246
232
|
return false;
|
|
247
233
|
this.depthAndOrder = FrameBuffer.create([expectDefined(textures.depthAndOrder)], depth);
|
|
248
|
-
this.contours = FrameBuffer.create([expectDefined(textures.contours)], depth);
|
|
249
234
|
this.hilite = FrameBuffer.create([expectDefined(textures.hilite)], depth);
|
|
250
235
|
this.hiliteUsingStencil = FrameBuffer.create([expectDefined(textures.hilite)], depth);
|
|
251
|
-
if (!this.depthAndOrder || !this.
|
|
236
|
+
if (!this.depthAndOrder || !this.hilite || !this.hiliteUsingStencil)
|
|
252
237
|
return false;
|
|
253
238
|
assert(undefined === this.opaqueAll);
|
|
254
239
|
if (!this.initPotentialMSMRTFbos(textures, depth, depthMS))
|
|
@@ -289,10 +274,9 @@ class FrameBuffers {
|
|
|
289
274
|
undefined !== textures.color &&
|
|
290
275
|
undefined !== textures.featureId &&
|
|
291
276
|
undefined !== textures.depthAndOrder &&
|
|
292
|
-
undefined !== textures.contours &&
|
|
293
277
|
undefined !== textures.accumulation &&
|
|
294
278
|
undefined !== textures.revealage);
|
|
295
|
-
const colorAndPick = [boundColor, textures.featureId, textures.depthAndOrder
|
|
279
|
+
const colorAndPick = [boundColor, textures.featureId, textures.depthAndOrder];
|
|
296
280
|
if (undefined === depthMs) {
|
|
297
281
|
this.opaqueAll = FrameBuffer.create(colorAndPick, depth);
|
|
298
282
|
colorAndPick[0] = textures.color;
|
|
@@ -302,10 +286,9 @@ class FrameBuffers {
|
|
|
302
286
|
assert(undefined !== textures.colorMsBuff &&
|
|
303
287
|
undefined !== textures.featureIdMsBuff &&
|
|
304
288
|
undefined !== textures.featureIdMsBuffHidden &&
|
|
305
|
-
undefined !== textures.contoursMsBuff &&
|
|
306
289
|
undefined !== textures.depthAndOrderMsBuff &&
|
|
307
290
|
undefined !== textures.depthAndOrderMsBuffHidden);
|
|
308
|
-
const colorAndPickMsBuffs = [textures.colorMsBuff, textures.featureIdMsBuff, textures.depthAndOrderMsBuff
|
|
291
|
+
const colorAndPickMsBuffs = [textures.colorMsBuff, textures.featureIdMsBuff, textures.depthAndOrderMsBuff];
|
|
309
292
|
const colorAndPickFilters = [GL.MultiSampling.Filter.Linear, GL.MultiSampling.Filter.Nearest, GL.MultiSampling.Filter.Nearest, GL.MultiSampling.Filter.Nearest];
|
|
310
293
|
this.opaqueAll = FrameBuffer.create(colorAndPick, depth, colorAndPickMsBuffs, colorAndPickFilters, depthMs);
|
|
311
294
|
colorAndPick[0] = textures.color;
|
|
@@ -421,7 +404,7 @@ class FrameBuffers {
|
|
|
421
404
|
return this.initPotentialMSFbos(textures, depth, undefined);
|
|
422
405
|
}
|
|
423
406
|
get isDisposed() {
|
|
424
|
-
return undefined === this.opaqueColor && undefined === this.opaqueAndCompositeColor && undefined === this.depthAndOrder
|
|
407
|
+
return undefined === this.opaqueColor && undefined === this.opaqueAndCompositeColor && undefined === this.depthAndOrder
|
|
425
408
|
&& undefined === this.hilite && undefined === this.hiliteUsingStencil && undefined === this.occlusion
|
|
426
409
|
&& undefined === this.occlusionBlur && undefined === this.stencilSet && undefined === this.altZOnly
|
|
427
410
|
&& undefined === this.volClassCreateBlend && undefined === this.volClassCreateBlendAltZ && undefined === this.opaqueAll
|
|
@@ -434,7 +417,6 @@ class FrameBuffers {
|
|
|
434
417
|
this.opaqueColor = dispose(this.opaqueColor);
|
|
435
418
|
this.opaqueAndCompositeColor = dispose(this.opaqueAndCompositeColor);
|
|
436
419
|
this.depthAndOrder = dispose(this.depthAndOrder);
|
|
437
|
-
this.contours = dispose(this.contours);
|
|
438
420
|
this.hilite = dispose(this.hilite);
|
|
439
421
|
this.hiliteUsingStencil = dispose(this.hiliteUsingStencil);
|
|
440
422
|
this.occlusion = dispose(this.occlusion);
|
|
@@ -551,7 +533,6 @@ class PixelBuffer {
|
|
|
551
533
|
_selector;
|
|
552
534
|
_featureId;
|
|
553
535
|
_depthAndOrder;
|
|
554
|
-
_contours;
|
|
555
536
|
_batchState;
|
|
556
537
|
_scratchModelFeature = ModelFeature.create();
|
|
557
538
|
get _numPixels() { return this._rect.width * this._rect.height; }
|
|
@@ -665,28 +646,6 @@ class PixelBuffer {
|
|
|
665
646
|
}
|
|
666
647
|
}
|
|
667
648
|
}
|
|
668
|
-
let contour;
|
|
669
|
-
if (this._contours) {
|
|
670
|
-
const contour32 = this.getPixel32(this._contours.data, index);
|
|
671
|
-
if (contour32) { // undefined means out of bounds; zero means not a contour.
|
|
672
|
-
const groupIndexAndType = this.decodeUint8(contour32, 32);
|
|
673
|
-
const groupIndex = groupIndexAndType & ~(8 | 16);
|
|
674
|
-
const group = this._contours.display.groups[groupIndex];
|
|
675
|
-
if (group) {
|
|
676
|
-
const elevationFraction = this.decodeDepthRgba(contour32);
|
|
677
|
-
let elevation = elevationFraction * (this._contours.zHigh - this._contours.zLow) + this._contours.zLow;
|
|
678
|
-
// The shader rounds to the nearest contour elevation using single-precision arithmetic.
|
|
679
|
-
// Re-round here using double-precision to get closer.
|
|
680
|
-
const interval = group.contourDef.minorInterval;
|
|
681
|
-
elevation = (elevation >= 0 ? Math.floor((elevation + interval / 2) / interval) : Math.ceil((elevation - interval / 2) / interval)) * interval;
|
|
682
|
-
contour = {
|
|
683
|
-
group,
|
|
684
|
-
elevation,
|
|
685
|
-
isMajor: groupIndexAndType > 15,
|
|
686
|
-
};
|
|
687
|
-
}
|
|
688
|
-
}
|
|
689
|
-
}
|
|
690
649
|
let featureTable, iModel, transformToIModel, tileId, viewAttachmentId, inSectionDrawingAttachment;
|
|
691
650
|
if (undefined !== batchInfo) {
|
|
692
651
|
featureTable = batchInfo.featureTable;
|
|
@@ -707,7 +666,6 @@ class PixelBuffer {
|
|
|
707
666
|
tileId,
|
|
708
667
|
viewAttachmentId,
|
|
709
668
|
inSectionDrawingAttachment,
|
|
710
|
-
contour,
|
|
711
669
|
});
|
|
712
670
|
}
|
|
713
671
|
constructor(rect, selector, compositor) {
|
|
@@ -728,10 +686,6 @@ class PixelBuffer {
|
|
|
728
686
|
else
|
|
729
687
|
this._selector &= ~Pixel.Selector.Feature;
|
|
730
688
|
}
|
|
731
|
-
// Note: readContours is a no-op unless contours are actually being drawn.
|
|
732
|
-
if (Pixel.Selector.None !== (selector & Pixel.Selector.Contours)) {
|
|
733
|
-
this._contours = compositor.readContours(rect);
|
|
734
|
-
}
|
|
735
689
|
}
|
|
736
690
|
get isEmpty() { return Pixel.Selector.None === this._selector; }
|
|
737
691
|
static create(rect, selector, compositor) {
|
|
@@ -1418,23 +1372,6 @@ class Compositor extends SceneCompositor {
|
|
|
1418
1372
|
readDepthAndOrder(rect) {
|
|
1419
1373
|
return this.readFrameBuffer(rect, this._fbos.depthAndOrder);
|
|
1420
1374
|
}
|
|
1421
|
-
readContours(rect) {
|
|
1422
|
-
// Are we actually drawing any contours? If not, don't bother reading an array of all zeroes off the GPU.
|
|
1423
|
-
const contours = this.target.currentContours;
|
|
1424
|
-
if (!contours || !contours.displayContours || contours.groups.length === 0) {
|
|
1425
|
-
return undefined;
|
|
1426
|
-
}
|
|
1427
|
-
const info = this.readFrameBuffer(rect, this._fbos.contours);
|
|
1428
|
-
if (!info) {
|
|
1429
|
-
return undefined;
|
|
1430
|
-
}
|
|
1431
|
-
return {
|
|
1432
|
-
data: new Uint32Array(info.buffer),
|
|
1433
|
-
display: contours,
|
|
1434
|
-
zLow: this.target.uniforms.frustum.worldFrustumZRange[0],
|
|
1435
|
-
zHigh: this.target.uniforms.frustum.worldFrustumZRange[1],
|
|
1436
|
-
};
|
|
1437
|
-
}
|
|
1438
1375
|
readFeatureIds(rect) {
|
|
1439
1376
|
const tex = this._textures.featureId;
|
|
1440
1377
|
if (undefined === tex)
|