vim-web 0.3.35-dev.0 → 0.3.39-dev.0
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/types/react-viewers/index.d.ts +3 -2
- package/dist/types/react-viewers/webgl/index.d.ts +0 -2
- package/dist/vim-web.iife.js +285 -440
- package/dist/vim-web.iife.js.map +1 -1
- package/dist/vim-web.js +285 -440
- package/dist/vim-web.js.map +1 -1
- package/package.json +3 -3
package/dist/vim-web.js
CHANGED
|
@@ -2815,11 +2815,11 @@ let Vector3$1 = class Vector3 {
|
|
|
2815
2815
|
this.z = iz * qw + iw * -qz + ix * -qy - iy * -qx;
|
|
2816
2816
|
return this;
|
|
2817
2817
|
}
|
|
2818
|
-
project(
|
|
2819
|
-
return this.applyMatrix4(
|
|
2818
|
+
project(camera) {
|
|
2819
|
+
return this.applyMatrix4(camera.matrixWorldInverse).applyMatrix4(camera.projectionMatrix);
|
|
2820
2820
|
}
|
|
2821
|
-
unproject(
|
|
2822
|
-
return this.applyMatrix4(
|
|
2821
|
+
unproject(camera) {
|
|
2822
|
+
return this.applyMatrix4(camera.projectionMatrixInverse).applyMatrix4(camera.matrixWorld);
|
|
2823
2823
|
}
|
|
2824
2824
|
transformDirection(m) {
|
|
2825
2825
|
const x = this.x, y = this.y, z = this.z;
|
|
@@ -7336,8 +7336,8 @@ class WebGLCubeRenderTarget extends WebGLRenderTarget {
|
|
|
7336
7336
|
const mesh = new Mesh(geometry, material);
|
|
7337
7337
|
const currentMinFilter = texture.minFilter;
|
|
7338
7338
|
if (texture.minFilter === LinearMipmapLinearFilter) texture.minFilter = LinearFilter;
|
|
7339
|
-
const
|
|
7340
|
-
|
|
7339
|
+
const camera = new CubeCamera(1, 10, this);
|
|
7340
|
+
camera.update(renderer, mesh);
|
|
7341
7341
|
texture.minFilter = currentMinFilter;
|
|
7342
7342
|
mesh.geometry.dispose();
|
|
7343
7343
|
mesh.material.dispose();
|
|
@@ -8446,8 +8446,8 @@ function WebGLBackground(renderer, cubemaps, state, objects, alpha, premultiplie
|
|
|
8446
8446
|
);
|
|
8447
8447
|
boxMesh.geometry.deleteAttribute("normal");
|
|
8448
8448
|
boxMesh.geometry.deleteAttribute("uv");
|
|
8449
|
-
boxMesh.onBeforeRender = function(renderer2, scene2,
|
|
8450
|
-
this.matrixWorld.copyPosition(
|
|
8449
|
+
boxMesh.onBeforeRender = function(renderer2, scene2, camera) {
|
|
8450
|
+
this.matrixWorld.copyPosition(camera.matrixWorld);
|
|
8451
8451
|
};
|
|
8452
8452
|
Object.defineProperty(boxMesh.material, "envMap", {
|
|
8453
8453
|
get: function() {
|
|
@@ -8976,12 +8976,12 @@ function WebGLClipping(properties) {
|
|
|
8976
8976
|
this.uniform = uniform;
|
|
8977
8977
|
this.numPlanes = 0;
|
|
8978
8978
|
this.numIntersection = 0;
|
|
8979
|
-
this.init = function(planes, enableLocalClipping,
|
|
8979
|
+
this.init = function(planes, enableLocalClipping, camera) {
|
|
8980
8980
|
const enabled = planes.length !== 0 || enableLocalClipping || // enable state of previous frame - the clipping code has to
|
|
8981
8981
|
// run another frame in order to reset the state:
|
|
8982
8982
|
numGlobalPlanes !== 0 || localClippingEnabled;
|
|
8983
8983
|
localClippingEnabled = enableLocalClipping;
|
|
8984
|
-
globalState = projectPlanes(planes,
|
|
8984
|
+
globalState = projectPlanes(planes, camera, 0);
|
|
8985
8985
|
numGlobalPlanes = planes.length;
|
|
8986
8986
|
return enabled;
|
|
8987
8987
|
};
|
|
@@ -8993,7 +8993,7 @@ function WebGLClipping(properties) {
|
|
|
8993
8993
|
renderingShadows = false;
|
|
8994
8994
|
resetGlobalState();
|
|
8995
8995
|
};
|
|
8996
|
-
this.setState = function(material,
|
|
8996
|
+
this.setState = function(material, camera, useCache) {
|
|
8997
8997
|
const planes = material.clippingPlanes, clipIntersection = material.clipIntersection, clipShadows = material.clipShadows;
|
|
8998
8998
|
const materialProperties = properties.get(material);
|
|
8999
8999
|
if (!localClippingEnabled || planes === null || planes.length === 0 || renderingShadows && !clipShadows) {
|
|
@@ -9006,7 +9006,7 @@ function WebGLClipping(properties) {
|
|
|
9006
9006
|
const nGlobal = renderingShadows ? 0 : numGlobalPlanes, lGlobal = nGlobal * 4;
|
|
9007
9007
|
let dstArray = materialProperties.clippingState || null;
|
|
9008
9008
|
uniform.value = dstArray;
|
|
9009
|
-
dstArray = projectPlanes(planes,
|
|
9009
|
+
dstArray = projectPlanes(planes, camera, lGlobal, useCache);
|
|
9010
9010
|
for (let i = 0; i !== lGlobal; ++i) {
|
|
9011
9011
|
dstArray[i] = globalState[i];
|
|
9012
9012
|
}
|
|
@@ -9023,13 +9023,13 @@ function WebGLClipping(properties) {
|
|
|
9023
9023
|
scope.numPlanes = numGlobalPlanes;
|
|
9024
9024
|
scope.numIntersection = 0;
|
|
9025
9025
|
}
|
|
9026
|
-
function projectPlanes(planes,
|
|
9026
|
+
function projectPlanes(planes, camera, dstOffset, skipTransform) {
|
|
9027
9027
|
const nPlanes = planes !== null ? planes.length : 0;
|
|
9028
9028
|
let dstArray = null;
|
|
9029
9029
|
if (nPlanes !== 0) {
|
|
9030
9030
|
dstArray = uniform.value;
|
|
9031
9031
|
if (skipTransform !== true || dstArray === null) {
|
|
9032
|
-
const flatSize = dstOffset + nPlanes * 4, viewMatrix =
|
|
9032
|
+
const flatSize = dstOffset + nPlanes * 4, viewMatrix = camera.matrixWorldInverse;
|
|
9033
9033
|
viewNormalMatrix.getNormalMatrix(viewMatrix);
|
|
9034
9034
|
if (dstArray === null || dstArray.length < flatSize) {
|
|
9035
9035
|
dstArray = new Float32Array(flatSize);
|
|
@@ -12324,13 +12324,13 @@ function WebGLLights(extensions, capabilities) {
|
|
|
12324
12324
|
state.version = nextVersion++;
|
|
12325
12325
|
}
|
|
12326
12326
|
}
|
|
12327
|
-
function setupView(lights,
|
|
12327
|
+
function setupView(lights, camera) {
|
|
12328
12328
|
let directionalLength = 0;
|
|
12329
12329
|
let pointLength = 0;
|
|
12330
12330
|
let spotLength = 0;
|
|
12331
12331
|
let rectAreaLength = 0;
|
|
12332
12332
|
let hemiLength = 0;
|
|
12333
|
-
const viewMatrix =
|
|
12333
|
+
const viewMatrix = camera.matrixWorldInverse;
|
|
12334
12334
|
for (let i = 0, l = lights.length; i < l; i++) {
|
|
12335
12335
|
const light = lights[i];
|
|
12336
12336
|
if (light.isDirectionalLight) {
|
|
@@ -12398,8 +12398,8 @@ function WebGLRenderState(extensions, capabilities) {
|
|
|
12398
12398
|
function setupLights(physicallyCorrectLights) {
|
|
12399
12399
|
lights.setup(lightsArray, physicallyCorrectLights);
|
|
12400
12400
|
}
|
|
12401
|
-
function setupLightsView(
|
|
12402
|
-
lights.setupView(lightsArray,
|
|
12401
|
+
function setupLightsView(camera) {
|
|
12402
|
+
lights.setupView(lightsArray, camera);
|
|
12403
12403
|
}
|
|
12404
12404
|
const state = {
|
|
12405
12405
|
lightsArray,
|
|
@@ -12530,7 +12530,7 @@ function WebGLShadowMap(_renderer, _objects, _capabilities) {
|
|
|
12530
12530
|
this.autoUpdate = true;
|
|
12531
12531
|
this.needsUpdate = false;
|
|
12532
12532
|
this.type = PCFShadowMap;
|
|
12533
|
-
this.render = function(lights, scene,
|
|
12533
|
+
this.render = function(lights, scene, camera) {
|
|
12534
12534
|
if (scope.enabled === false) return;
|
|
12535
12535
|
if (scope.autoUpdate === false && scope.needsUpdate === false) return;
|
|
12536
12536
|
if (lights.length === 0) return;
|
|
@@ -12586,17 +12586,17 @@ function WebGLShadowMap(_renderer, _objects, _capabilities) {
|
|
|
12586
12586
|
_state.viewport(_viewport);
|
|
12587
12587
|
shadow.updateMatrices(light, vp);
|
|
12588
12588
|
_frustum = shadow.getFrustum();
|
|
12589
|
-
renderObject(scene,
|
|
12589
|
+
renderObject(scene, camera, shadow.camera, light, this.type);
|
|
12590
12590
|
}
|
|
12591
12591
|
if (shadow.isPointLightShadow !== true && this.type === VSMShadowMap) {
|
|
12592
|
-
VSMPass(shadow,
|
|
12592
|
+
VSMPass(shadow, camera);
|
|
12593
12593
|
}
|
|
12594
12594
|
shadow.needsUpdate = false;
|
|
12595
12595
|
}
|
|
12596
12596
|
scope.needsUpdate = false;
|
|
12597
12597
|
_renderer.setRenderTarget(currentRenderTarget, activeCubeFace, activeMipmapLevel);
|
|
12598
12598
|
};
|
|
12599
|
-
function VSMPass(shadow,
|
|
12599
|
+
function VSMPass(shadow, camera) {
|
|
12600
12600
|
const geometry = _objects.update(fullScreenMesh);
|
|
12601
12601
|
if (shadowMaterialVertical.defines.VSM_SAMPLES !== shadow.blurSamples) {
|
|
12602
12602
|
shadowMaterialVertical.defines.VSM_SAMPLES = shadow.blurSamples;
|
|
@@ -12612,13 +12612,13 @@ function WebGLShadowMap(_renderer, _objects, _capabilities) {
|
|
|
12612
12612
|
shadowMaterialVertical.uniforms.radius.value = shadow.radius;
|
|
12613
12613
|
_renderer.setRenderTarget(shadow.mapPass);
|
|
12614
12614
|
_renderer.clear();
|
|
12615
|
-
_renderer.renderBufferDirect(
|
|
12615
|
+
_renderer.renderBufferDirect(camera, null, geometry, shadowMaterialVertical, fullScreenMesh, null);
|
|
12616
12616
|
shadowMaterialHorizontal.uniforms.shadow_pass.value = shadow.mapPass.texture;
|
|
12617
12617
|
shadowMaterialHorizontal.uniforms.resolution.value = shadow.mapSize;
|
|
12618
12618
|
shadowMaterialHorizontal.uniforms.radius.value = shadow.radius;
|
|
12619
12619
|
_renderer.setRenderTarget(shadow.map);
|
|
12620
12620
|
_renderer.clear();
|
|
12621
|
-
_renderer.renderBufferDirect(
|
|
12621
|
+
_renderer.renderBufferDirect(camera, null, geometry, shadowMaterialHorizontal, fullScreenMesh, null);
|
|
12622
12622
|
}
|
|
12623
12623
|
function getDepthMaterial(object, material, light, shadowCameraNear, shadowCameraFar, type) {
|
|
12624
12624
|
let result = null;
|
|
@@ -12666,10 +12666,10 @@ function WebGLShadowMap(_renderer, _objects, _capabilities) {
|
|
|
12666
12666
|
}
|
|
12667
12667
|
return result;
|
|
12668
12668
|
}
|
|
12669
|
-
function renderObject(object,
|
|
12669
|
+
function renderObject(object, camera, shadowCamera, light, type) {
|
|
12670
12670
|
if (object.visible === false) return;
|
|
12671
|
-
const
|
|
12672
|
-
if (
|
|
12671
|
+
const visible = object.layers.test(camera.layers);
|
|
12672
|
+
if (visible && (object.isMesh || object.isLine || object.isPoints)) {
|
|
12673
12673
|
if ((object.castShadow || object.receiveShadow && type === VSMShadowMap) && (!object.frustumCulled || _frustum.intersectsObject(object))) {
|
|
12674
12674
|
object.modelViewMatrix.multiplyMatrices(shadowCamera.matrixWorldInverse, object.matrixWorld);
|
|
12675
12675
|
const geometry = _objects.update(object);
|
|
@@ -12692,7 +12692,7 @@ function WebGLShadowMap(_renderer, _objects, _capabilities) {
|
|
|
12692
12692
|
}
|
|
12693
12693
|
const children = object.children;
|
|
12694
12694
|
for (let i = 0, l = children.length; i < l; i++) {
|
|
12695
|
-
renderObject(children[i],
|
|
12695
|
+
renderObject(children[i], camera, shadowCamera, light, type);
|
|
12696
12696
|
}
|
|
12697
12697
|
}
|
|
12698
12698
|
}
|
|
@@ -14962,7 +14962,7 @@ class WebXRManager extends EventDispatcher {
|
|
|
14962
14962
|
}
|
|
14963
14963
|
const cameraLPos = new Vector3$1();
|
|
14964
14964
|
const cameraRPos = new Vector3$1();
|
|
14965
|
-
function setProjectionFromUnion(
|
|
14965
|
+
function setProjectionFromUnion(camera, cameraL2, cameraR2) {
|
|
14966
14966
|
cameraLPos.setFromMatrixPosition(cameraL2.matrixWorld);
|
|
14967
14967
|
cameraRPos.setFromMatrixPosition(cameraR2.matrixWorld);
|
|
14968
14968
|
const ipd = cameraLPos.distanceTo(cameraRPos);
|
|
@@ -14978,31 +14978,31 @@ class WebXRManager extends EventDispatcher {
|
|
|
14978
14978
|
const right = near * rightFov;
|
|
14979
14979
|
const zOffset = ipd / (-leftFov + rightFov);
|
|
14980
14980
|
const xOffset = zOffset * -leftFov;
|
|
14981
|
-
cameraL2.matrixWorld.decompose(
|
|
14982
|
-
|
|
14983
|
-
|
|
14984
|
-
|
|
14985
|
-
|
|
14981
|
+
cameraL2.matrixWorld.decompose(camera.position, camera.quaternion, camera.scale);
|
|
14982
|
+
camera.translateX(xOffset);
|
|
14983
|
+
camera.translateZ(zOffset);
|
|
14984
|
+
camera.matrixWorld.compose(camera.position, camera.quaternion, camera.scale);
|
|
14985
|
+
camera.matrixWorldInverse.copy(camera.matrixWorld).invert();
|
|
14986
14986
|
const near2 = near + zOffset;
|
|
14987
14987
|
const far2 = far + zOffset;
|
|
14988
14988
|
const left2 = left - xOffset;
|
|
14989
14989
|
const right2 = right + (ipd - xOffset);
|
|
14990
14990
|
const top2 = topFov * far / far2 * near2;
|
|
14991
14991
|
const bottom2 = bottomFov * far / far2 * near2;
|
|
14992
|
-
|
|
14992
|
+
camera.projectionMatrix.makePerspective(left2, right2, top2, bottom2, near2, far2);
|
|
14993
14993
|
}
|
|
14994
|
-
function updateCamera(
|
|
14994
|
+
function updateCamera(camera, parent) {
|
|
14995
14995
|
if (parent === null) {
|
|
14996
|
-
|
|
14996
|
+
camera.matrixWorld.copy(camera.matrix);
|
|
14997
14997
|
} else {
|
|
14998
|
-
|
|
14998
|
+
camera.matrixWorld.multiplyMatrices(parent.matrixWorld, camera.matrix);
|
|
14999
14999
|
}
|
|
15000
|
-
|
|
15000
|
+
camera.matrixWorldInverse.copy(camera.matrixWorld).invert();
|
|
15001
15001
|
}
|
|
15002
|
-
this.updateCamera = function(
|
|
15002
|
+
this.updateCamera = function(camera) {
|
|
15003
15003
|
if (session === null) return;
|
|
15004
|
-
cameraVR.near = cameraR.near = cameraL.near =
|
|
15005
|
-
cameraVR.far = cameraR.far = cameraL.far =
|
|
15004
|
+
cameraVR.near = cameraR.near = cameraL.near = camera.near;
|
|
15005
|
+
cameraVR.far = cameraR.far = cameraL.far = camera.far;
|
|
15006
15006
|
if (_currentDepthNear !== cameraVR.near || _currentDepthFar !== cameraVR.far) {
|
|
15007
15007
|
session.updateRenderState({
|
|
15008
15008
|
depthNear: cameraVR.near,
|
|
@@ -15011,19 +15011,19 @@ class WebXRManager extends EventDispatcher {
|
|
|
15011
15011
|
_currentDepthNear = cameraVR.near;
|
|
15012
15012
|
_currentDepthFar = cameraVR.far;
|
|
15013
15013
|
}
|
|
15014
|
-
const parent =
|
|
15014
|
+
const parent = camera.parent;
|
|
15015
15015
|
const cameras2 = cameraVR.cameras;
|
|
15016
15016
|
updateCamera(cameraVR, parent);
|
|
15017
15017
|
for (let i = 0; i < cameras2.length; i++) {
|
|
15018
15018
|
updateCamera(cameras2[i], parent);
|
|
15019
15019
|
}
|
|
15020
15020
|
cameraVR.matrixWorld.decompose(cameraVR.position, cameraVR.quaternion, cameraVR.scale);
|
|
15021
|
-
|
|
15022
|
-
|
|
15023
|
-
|
|
15024
|
-
|
|
15025
|
-
|
|
15026
|
-
const children =
|
|
15021
|
+
camera.position.copy(cameraVR.position);
|
|
15022
|
+
camera.quaternion.copy(cameraVR.quaternion);
|
|
15023
|
+
camera.scale.copy(cameraVR.scale);
|
|
15024
|
+
camera.matrix.copy(cameraVR.matrix);
|
|
15025
|
+
camera.matrixWorld.copy(cameraVR.matrixWorld);
|
|
15026
|
+
const children = camera.children;
|
|
15027
15027
|
for (let i = 0, l = children.length; i < l; i++) {
|
|
15028
15028
|
children[i].updateMatrixWorld(true);
|
|
15029
15029
|
}
|
|
@@ -15085,21 +15085,21 @@ class WebXRManager extends EventDispatcher {
|
|
|
15085
15085
|
renderer.setRenderTarget(newRenderTarget);
|
|
15086
15086
|
}
|
|
15087
15087
|
}
|
|
15088
|
-
let
|
|
15089
|
-
if (
|
|
15090
|
-
|
|
15091
|
-
|
|
15092
|
-
|
|
15093
|
-
cameras[i] =
|
|
15088
|
+
let camera = cameras[i];
|
|
15089
|
+
if (camera === void 0) {
|
|
15090
|
+
camera = new PerspectiveCamera();
|
|
15091
|
+
camera.layers.enable(i);
|
|
15092
|
+
camera.viewport = new Vector4();
|
|
15093
|
+
cameras[i] = camera;
|
|
15094
15094
|
}
|
|
15095
|
-
|
|
15096
|
-
|
|
15097
|
-
|
|
15095
|
+
camera.matrix.fromArray(view.transform.matrix);
|
|
15096
|
+
camera.projectionMatrix.fromArray(view.projectionMatrix);
|
|
15097
|
+
camera.viewport.set(viewport.x, viewport.y, viewport.width, viewport.height);
|
|
15098
15098
|
if (i === 0) {
|
|
15099
|
-
cameraVR.matrix.copy(
|
|
15099
|
+
cameraVR.matrix.copy(camera.matrix);
|
|
15100
15100
|
}
|
|
15101
15101
|
if (cameraVRNeedsUpdate === true) {
|
|
15102
|
-
cameraVR.cameras.push(
|
|
15102
|
+
cameraVR.cameras.push(camera);
|
|
15103
15103
|
}
|
|
15104
15104
|
}
|
|
15105
15105
|
}
|
|
@@ -16000,10 +16000,10 @@ function WebGLRenderer$1(parameters = {}) {
|
|
|
16000
16000
|
}
|
|
16001
16001
|
}
|
|
16002
16002
|
}
|
|
16003
|
-
this.renderBufferDirect = function(
|
|
16003
|
+
this.renderBufferDirect = function(camera, scene, geometry, material, object, group) {
|
|
16004
16004
|
if (scene === null) scene = _emptyScene;
|
|
16005
16005
|
const frontFaceCW = object.isMesh && object.matrixWorld.determinant() < 0;
|
|
16006
|
-
const program = setProgram(
|
|
16006
|
+
const program = setProgram(camera, scene, geometry, material, object);
|
|
16007
16007
|
state.setMaterial(material, frontFaceCW);
|
|
16008
16008
|
let index2 = geometry.index;
|
|
16009
16009
|
const position = geometry.attributes.position;
|
|
@@ -16066,12 +16066,12 @@ function WebGLRenderer$1(parameters = {}) {
|
|
|
16066
16066
|
renderer.render(drawStart, drawCount);
|
|
16067
16067
|
}
|
|
16068
16068
|
};
|
|
16069
|
-
this.compile = function(scene,
|
|
16069
|
+
this.compile = function(scene, camera) {
|
|
16070
16070
|
currentRenderState = renderStates.get(scene);
|
|
16071
16071
|
currentRenderState.init();
|
|
16072
16072
|
renderStateStack.push(currentRenderState);
|
|
16073
16073
|
scene.traverseVisible(function(object) {
|
|
16074
|
-
if (object.isLight && object.layers.test(
|
|
16074
|
+
if (object.isLight && object.layers.test(camera.layers)) {
|
|
16075
16075
|
currentRenderState.pushLight(object);
|
|
16076
16076
|
if (object.castShadow) {
|
|
16077
16077
|
currentRenderState.pushShadow(object);
|
|
@@ -16115,55 +16115,55 @@ function WebGLRenderer$1(parameters = {}) {
|
|
|
16115
16115
|
};
|
|
16116
16116
|
xr.addEventListener("sessionstart", onXRSessionStart);
|
|
16117
16117
|
xr.addEventListener("sessionend", onXRSessionEnd);
|
|
16118
|
-
this.render = function(scene,
|
|
16119
|
-
if (
|
|
16118
|
+
this.render = function(scene, camera) {
|
|
16119
|
+
if (camera !== void 0 && camera.isCamera !== true) {
|
|
16120
16120
|
console.error("THREE.WebGLRenderer.render: camera is not an instance of THREE.Camera.");
|
|
16121
16121
|
return;
|
|
16122
16122
|
}
|
|
16123
16123
|
if (_isContextLost === true) return;
|
|
16124
16124
|
if (scene.autoUpdate === true) scene.updateMatrixWorld();
|
|
16125
|
-
if (
|
|
16125
|
+
if (camera.parent === null) camera.updateMatrixWorld();
|
|
16126
16126
|
if (xr.enabled === true && xr.isPresenting === true) {
|
|
16127
|
-
if (xr.cameraAutoUpdate === true) xr.updateCamera(
|
|
16128
|
-
|
|
16127
|
+
if (xr.cameraAutoUpdate === true) xr.updateCamera(camera);
|
|
16128
|
+
camera = xr.getCamera();
|
|
16129
16129
|
}
|
|
16130
|
-
if (scene.isScene === true) scene.onBeforeRender(_this, scene,
|
|
16130
|
+
if (scene.isScene === true) scene.onBeforeRender(_this, scene, camera, _currentRenderTarget);
|
|
16131
16131
|
currentRenderState = renderStates.get(scene, renderStateStack.length);
|
|
16132
16132
|
currentRenderState.init();
|
|
16133
16133
|
renderStateStack.push(currentRenderState);
|
|
16134
|
-
_projScreenMatrix2.multiplyMatrices(
|
|
16134
|
+
_projScreenMatrix2.multiplyMatrices(camera.projectionMatrix, camera.matrixWorldInverse);
|
|
16135
16135
|
_frustum.setFromProjectionMatrix(_projScreenMatrix2);
|
|
16136
16136
|
_localClippingEnabled = this.localClippingEnabled;
|
|
16137
|
-
_clippingEnabled = clipping.init(this.clippingPlanes, _localClippingEnabled,
|
|
16137
|
+
_clippingEnabled = clipping.init(this.clippingPlanes, _localClippingEnabled, camera);
|
|
16138
16138
|
currentRenderList = renderLists.get(scene, renderListStack.length);
|
|
16139
16139
|
currentRenderList.init();
|
|
16140
16140
|
renderListStack.push(currentRenderList);
|
|
16141
|
-
projectObject(scene,
|
|
16141
|
+
projectObject(scene, camera, 0, _this.sortObjects);
|
|
16142
16142
|
currentRenderList.finish();
|
|
16143
16143
|
if (_this.sortObjects === true) {
|
|
16144
16144
|
currentRenderList.sort(_opaqueSort, _transparentSort);
|
|
16145
16145
|
}
|
|
16146
16146
|
if (_clippingEnabled === true) clipping.beginShadows();
|
|
16147
16147
|
const shadowsArray = currentRenderState.state.shadowsArray;
|
|
16148
|
-
shadowMap.render(shadowsArray, scene,
|
|
16148
|
+
shadowMap.render(shadowsArray, scene, camera);
|
|
16149
16149
|
if (_clippingEnabled === true) clipping.endShadows();
|
|
16150
16150
|
if (this.info.autoReset === true) this.info.reset();
|
|
16151
16151
|
background.render(currentRenderList, scene);
|
|
16152
16152
|
currentRenderState.setupLights(_this.physicallyCorrectLights);
|
|
16153
|
-
if (
|
|
16154
|
-
const cameras =
|
|
16153
|
+
if (camera.isArrayCamera) {
|
|
16154
|
+
const cameras = camera.cameras;
|
|
16155
16155
|
for (let i = 0, l = cameras.length; i < l; i++) {
|
|
16156
|
-
const
|
|
16157
|
-
renderScene(currentRenderList, scene,
|
|
16156
|
+
const camera2 = cameras[i];
|
|
16157
|
+
renderScene(currentRenderList, scene, camera2, camera2.viewport);
|
|
16158
16158
|
}
|
|
16159
16159
|
} else {
|
|
16160
|
-
renderScene(currentRenderList, scene,
|
|
16160
|
+
renderScene(currentRenderList, scene, camera);
|
|
16161
16161
|
}
|
|
16162
16162
|
if (_currentRenderTarget !== null) {
|
|
16163
16163
|
textures.updateMultisampleRenderTarget(_currentRenderTarget);
|
|
16164
16164
|
textures.updateRenderTargetMipmap(_currentRenderTarget);
|
|
16165
16165
|
}
|
|
16166
|
-
if (scene.isScene === true) scene.onAfterRender(_this, scene,
|
|
16166
|
+
if (scene.isScene === true) scene.onAfterRender(_this, scene, camera);
|
|
16167
16167
|
bindingStates.resetDefaultState();
|
|
16168
16168
|
_currentMaterialId = -1;
|
|
16169
16169
|
_currentCamera = null;
|
|
@@ -16180,14 +16180,14 @@ function WebGLRenderer$1(parameters = {}) {
|
|
|
16180
16180
|
currentRenderList = null;
|
|
16181
16181
|
}
|
|
16182
16182
|
};
|
|
16183
|
-
function projectObject(object,
|
|
16183
|
+
function projectObject(object, camera, groupOrder, sortObjects) {
|
|
16184
16184
|
if (object.visible === false) return;
|
|
16185
|
-
const
|
|
16186
|
-
if (
|
|
16185
|
+
const visible = object.layers.test(camera.layers);
|
|
16186
|
+
if (visible) {
|
|
16187
16187
|
if (object.isGroup) {
|
|
16188
16188
|
groupOrder = object.renderOrder;
|
|
16189
16189
|
} else if (object.isLOD) {
|
|
16190
|
-
if (object.autoUpdate === true) object.update(
|
|
16190
|
+
if (object.autoUpdate === true) object.update(camera);
|
|
16191
16191
|
} else if (object.isLight) {
|
|
16192
16192
|
currentRenderState.pushLight(object);
|
|
16193
16193
|
if (object.castShadow) {
|
|
@@ -16234,25 +16234,25 @@ function WebGLRenderer$1(parameters = {}) {
|
|
|
16234
16234
|
}
|
|
16235
16235
|
const children = object.children;
|
|
16236
16236
|
for (let i = 0, l = children.length; i < l; i++) {
|
|
16237
|
-
projectObject(children[i],
|
|
16237
|
+
projectObject(children[i], camera, groupOrder, sortObjects);
|
|
16238
16238
|
}
|
|
16239
16239
|
}
|
|
16240
|
-
function renderScene(currentRenderList2, scene,
|
|
16240
|
+
function renderScene(currentRenderList2, scene, camera, viewport) {
|
|
16241
16241
|
const opaqueObjects = currentRenderList2.opaque;
|
|
16242
16242
|
const transmissiveObjects = currentRenderList2.transmissive;
|
|
16243
16243
|
const transparentObjects = currentRenderList2.transparent;
|
|
16244
|
-
currentRenderState.setupLightsView(
|
|
16245
|
-
if (transmissiveObjects.length > 0) renderTransmissionPass(opaqueObjects, scene,
|
|
16244
|
+
currentRenderState.setupLightsView(camera);
|
|
16245
|
+
if (transmissiveObjects.length > 0) renderTransmissionPass(opaqueObjects, scene, camera);
|
|
16246
16246
|
if (viewport) state.viewport(_currentViewport.copy(viewport));
|
|
16247
|
-
if (opaqueObjects.length > 0) renderObjects(opaqueObjects, scene,
|
|
16248
|
-
if (transmissiveObjects.length > 0) renderObjects(transmissiveObjects, scene,
|
|
16249
|
-
if (transparentObjects.length > 0) renderObjects(transparentObjects, scene,
|
|
16247
|
+
if (opaqueObjects.length > 0) renderObjects(opaqueObjects, scene, camera);
|
|
16248
|
+
if (transmissiveObjects.length > 0) renderObjects(transmissiveObjects, scene, camera);
|
|
16249
|
+
if (transparentObjects.length > 0) renderObjects(transparentObjects, scene, camera);
|
|
16250
16250
|
state.buffers.depth.setTest(true);
|
|
16251
16251
|
state.buffers.depth.setMask(true);
|
|
16252
16252
|
state.buffers.color.setMask(true);
|
|
16253
16253
|
state.setPolygonOffset(false);
|
|
16254
16254
|
}
|
|
16255
|
-
function renderTransmissionPass(opaqueObjects, scene,
|
|
16255
|
+
function renderTransmissionPass(opaqueObjects, scene, camera) {
|
|
16256
16256
|
const isWebGL2 = capabilities.isWebGL2;
|
|
16257
16257
|
if (_transmissionRenderTarget === null) {
|
|
16258
16258
|
_transmissionRenderTarget = new WebGLRenderTarget(1, 1, {
|
|
@@ -16273,13 +16273,13 @@ function WebGLRenderer$1(parameters = {}) {
|
|
|
16273
16273
|
_this.clear();
|
|
16274
16274
|
const currentToneMapping = _this.toneMapping;
|
|
16275
16275
|
_this.toneMapping = NoToneMapping;
|
|
16276
|
-
renderObjects(opaqueObjects, scene,
|
|
16276
|
+
renderObjects(opaqueObjects, scene, camera);
|
|
16277
16277
|
_this.toneMapping = currentToneMapping;
|
|
16278
16278
|
textures.updateMultisampleRenderTarget(_transmissionRenderTarget);
|
|
16279
16279
|
textures.updateRenderTargetMipmap(_transmissionRenderTarget);
|
|
16280
16280
|
_this.setRenderTarget(currentRenderTarget);
|
|
16281
16281
|
}
|
|
16282
|
-
function renderObjects(renderList, scene,
|
|
16282
|
+
function renderObjects(renderList, scene, camera) {
|
|
16283
16283
|
const overrideMaterial = scene.isScene === true ? scene.overrideMaterial : null;
|
|
16284
16284
|
for (let i = 0, l = renderList.length; i < l; i++) {
|
|
16285
16285
|
const renderItem = renderList[i];
|
|
@@ -16287,28 +16287,28 @@ function WebGLRenderer$1(parameters = {}) {
|
|
|
16287
16287
|
const geometry = renderItem.geometry;
|
|
16288
16288
|
const material = overrideMaterial === null ? renderItem.material : overrideMaterial;
|
|
16289
16289
|
const group = renderItem.group;
|
|
16290
|
-
if (object.layers.test(
|
|
16291
|
-
renderObject(object, scene,
|
|
16290
|
+
if (object.layers.test(camera.layers)) {
|
|
16291
|
+
renderObject(object, scene, camera, geometry, material, group);
|
|
16292
16292
|
}
|
|
16293
16293
|
}
|
|
16294
16294
|
}
|
|
16295
|
-
function renderObject(object, scene,
|
|
16296
|
-
object.onBeforeRender(_this, scene,
|
|
16297
|
-
object.modelViewMatrix.multiplyMatrices(
|
|
16295
|
+
function renderObject(object, scene, camera, geometry, material, group) {
|
|
16296
|
+
object.onBeforeRender(_this, scene, camera, geometry, material, group);
|
|
16297
|
+
object.modelViewMatrix.multiplyMatrices(camera.matrixWorldInverse, object.matrixWorld);
|
|
16298
16298
|
object.normalMatrix.getNormalMatrix(object.modelViewMatrix);
|
|
16299
|
-
material.onBeforeRender(_this, scene,
|
|
16299
|
+
material.onBeforeRender(_this, scene, camera, geometry, object, group);
|
|
16300
16300
|
if (material.transparent === true && material.side === DoubleSide) {
|
|
16301
16301
|
material.side = BackSide;
|
|
16302
16302
|
material.needsUpdate = true;
|
|
16303
|
-
_this.renderBufferDirect(
|
|
16303
|
+
_this.renderBufferDirect(camera, scene, geometry, material, object, group);
|
|
16304
16304
|
material.side = FrontSide;
|
|
16305
16305
|
material.needsUpdate = true;
|
|
16306
|
-
_this.renderBufferDirect(
|
|
16306
|
+
_this.renderBufferDirect(camera, scene, geometry, material, object, group);
|
|
16307
16307
|
material.side = DoubleSide;
|
|
16308
16308
|
} else {
|
|
16309
|
-
_this.renderBufferDirect(
|
|
16309
|
+
_this.renderBufferDirect(camera, scene, geometry, material, object, group);
|
|
16310
16310
|
}
|
|
16311
|
-
object.onAfterRender(_this, scene,
|
|
16311
|
+
object.onAfterRender(_this, scene, camera, geometry, material, group);
|
|
16312
16312
|
}
|
|
16313
16313
|
function getProgram(material, scene, object) {
|
|
16314
16314
|
if (scene.isScene !== true) scene = _emptyScene;
|
|
@@ -16389,7 +16389,7 @@ function WebGLRenderer$1(parameters = {}) {
|
|
|
16389
16389
|
materialProperties.vertexTangents = parameters2.vertexTangents;
|
|
16390
16390
|
materialProperties.toneMapping = parameters2.toneMapping;
|
|
16391
16391
|
}
|
|
16392
|
-
function setProgram(
|
|
16392
|
+
function setProgram(camera, scene, geometry, material, object) {
|
|
16393
16393
|
if (scene.isScene !== true) scene = _emptyScene;
|
|
16394
16394
|
textures.resetTextureUnits();
|
|
16395
16395
|
const fog = scene.fog;
|
|
@@ -16407,9 +16407,9 @@ function WebGLRenderer$1(parameters = {}) {
|
|
|
16407
16407
|
const materialProperties = properties.get(material);
|
|
16408
16408
|
const lights = currentRenderState.state.lights;
|
|
16409
16409
|
if (_clippingEnabled === true) {
|
|
16410
|
-
if (_localClippingEnabled === true ||
|
|
16411
|
-
const useCache =
|
|
16412
|
-
clipping.setState(material,
|
|
16410
|
+
if (_localClippingEnabled === true || camera !== _currentCamera) {
|
|
16411
|
+
const useCache = camera === _currentCamera && material.id === _currentMaterialId;
|
|
16412
|
+
clipping.setState(material, camera, useCache);
|
|
16413
16413
|
}
|
|
16414
16414
|
}
|
|
16415
16415
|
let needsProgramChange = false;
|
|
@@ -16468,17 +16468,17 @@ function WebGLRenderer$1(parameters = {}) {
|
|
|
16468
16468
|
_currentMaterialId = material.id;
|
|
16469
16469
|
refreshMaterial = true;
|
|
16470
16470
|
}
|
|
16471
|
-
if (refreshProgram || _currentCamera !==
|
|
16472
|
-
p_uniforms.setValue(_gl, "projectionMatrix",
|
|
16471
|
+
if (refreshProgram || _currentCamera !== camera) {
|
|
16472
|
+
p_uniforms.setValue(_gl, "projectionMatrix", camera.projectionMatrix);
|
|
16473
16473
|
if (capabilities.logarithmicDepthBuffer) {
|
|
16474
16474
|
p_uniforms.setValue(
|
|
16475
16475
|
_gl,
|
|
16476
16476
|
"logDepthBufFC",
|
|
16477
|
-
2 / (Math.log(
|
|
16477
|
+
2 / (Math.log(camera.far + 1) / Math.LN2)
|
|
16478
16478
|
);
|
|
16479
16479
|
}
|
|
16480
|
-
if (_currentCamera !==
|
|
16481
|
-
_currentCamera =
|
|
16480
|
+
if (_currentCamera !== camera) {
|
|
16481
|
+
_currentCamera = camera;
|
|
16482
16482
|
refreshMaterial = true;
|
|
16483
16483
|
refreshLights = true;
|
|
16484
16484
|
}
|
|
@@ -16487,15 +16487,15 @@ function WebGLRenderer$1(parameters = {}) {
|
|
|
16487
16487
|
if (uCamPos !== void 0) {
|
|
16488
16488
|
uCamPos.setValue(
|
|
16489
16489
|
_gl,
|
|
16490
|
-
_vector3.setFromMatrixPosition(
|
|
16490
|
+
_vector3.setFromMatrixPosition(camera.matrixWorld)
|
|
16491
16491
|
);
|
|
16492
16492
|
}
|
|
16493
16493
|
}
|
|
16494
16494
|
if (material.isMeshPhongMaterial || material.isMeshToonMaterial || material.isMeshLambertMaterial || material.isMeshBasicMaterial || material.isMeshStandardMaterial || material.isShaderMaterial) {
|
|
16495
|
-
p_uniforms.setValue(_gl, "isOrthographic",
|
|
16495
|
+
p_uniforms.setValue(_gl, "isOrthographic", camera.isOrthographicCamera === true);
|
|
16496
16496
|
}
|
|
16497
16497
|
if (material.isMeshPhongMaterial || material.isMeshToonMaterial || material.isMeshLambertMaterial || material.isMeshBasicMaterial || material.isMeshStandardMaterial || material.isShaderMaterial || material.isShadowMaterial || object.isSkinnedMesh) {
|
|
16498
|
-
p_uniforms.setValue(_gl, "viewMatrix",
|
|
16498
|
+
p_uniforms.setValue(_gl, "viewMatrix", camera.matrixWorldInverse);
|
|
16499
16499
|
}
|
|
16500
16500
|
}
|
|
16501
16501
|
if (object.isSkinnedMesh) {
|
|
@@ -17294,12 +17294,12 @@ class LOD extends Object3D$1 {
|
|
|
17294
17294
|
this.getObjectForDistance(distance).raycast(raycaster, intersects2);
|
|
17295
17295
|
}
|
|
17296
17296
|
}
|
|
17297
|
-
update(
|
|
17297
|
+
update(camera) {
|
|
17298
17298
|
const levels = this.levels;
|
|
17299
17299
|
if (levels.length > 1) {
|
|
17300
|
-
_v1$2.setFromMatrixPosition(
|
|
17300
|
+
_v1$2.setFromMatrixPosition(camera.matrixWorld);
|
|
17301
17301
|
_v2$1.setFromMatrixPosition(this.matrixWorld);
|
|
17302
|
-
const distance = _v1$2.distanceTo(_v2$1) /
|
|
17302
|
+
const distance = _v1$2.distanceTo(_v2$1) / camera.zoom;
|
|
17303
17303
|
levels[0].object.visible = true;
|
|
17304
17304
|
let i, l;
|
|
17305
17305
|
for (i = 1, l = levels.length; i < l; i++) {
|
|
@@ -23314,8 +23314,8 @@ const _projScreenMatrix$1 = /* @__PURE__ */ new Matrix4();
|
|
|
23314
23314
|
const _lightPositionWorld$1 = /* @__PURE__ */ new Vector3$1();
|
|
23315
23315
|
const _lookTarget$1 = /* @__PURE__ */ new Vector3$1();
|
|
23316
23316
|
class LightShadow {
|
|
23317
|
-
constructor(
|
|
23318
|
-
this.camera =
|
|
23317
|
+
constructor(camera) {
|
|
23318
|
+
this.camera = camera;
|
|
23319
23319
|
this.bias = 0;
|
|
23320
23320
|
this.normalBias = 0;
|
|
23321
23321
|
this.radius = 1;
|
|
@@ -23412,15 +23412,15 @@ class SpotLightShadow extends LightShadow {
|
|
|
23412
23412
|
this.focus = 1;
|
|
23413
23413
|
}
|
|
23414
23414
|
updateMatrices(light) {
|
|
23415
|
-
const
|
|
23415
|
+
const camera = this.camera;
|
|
23416
23416
|
const fov2 = RAD2DEG * 2 * light.angle * this.focus;
|
|
23417
23417
|
const aspect2 = this.mapSize.width / this.mapSize.height;
|
|
23418
|
-
const far = light.distance ||
|
|
23419
|
-
if (fov2 !==
|
|
23420
|
-
|
|
23421
|
-
|
|
23422
|
-
|
|
23423
|
-
|
|
23418
|
+
const far = light.distance || camera.far;
|
|
23419
|
+
if (fov2 !== camera.fov || aspect2 !== camera.aspect || far !== camera.far) {
|
|
23420
|
+
camera.fov = fov2;
|
|
23421
|
+
camera.aspect = aspect2;
|
|
23422
|
+
camera.far = far;
|
|
23423
|
+
camera.updateProjectionMatrix();
|
|
23424
23424
|
}
|
|
23425
23425
|
super.updateMatrices(light);
|
|
23426
23426
|
}
|
|
@@ -23517,22 +23517,22 @@ class PointLightShadow extends LightShadow {
|
|
|
23517
23517
|
];
|
|
23518
23518
|
}
|
|
23519
23519
|
updateMatrices(light, viewportIndex = 0) {
|
|
23520
|
-
const
|
|
23520
|
+
const camera = this.camera;
|
|
23521
23521
|
const shadowMatrix = this.matrix;
|
|
23522
|
-
const far = light.distance ||
|
|
23523
|
-
if (far !==
|
|
23524
|
-
|
|
23525
|
-
|
|
23522
|
+
const far = light.distance || camera.far;
|
|
23523
|
+
if (far !== camera.far) {
|
|
23524
|
+
camera.far = far;
|
|
23525
|
+
camera.updateProjectionMatrix();
|
|
23526
23526
|
}
|
|
23527
23527
|
_lightPositionWorld.setFromMatrixPosition(light.matrixWorld);
|
|
23528
|
-
|
|
23529
|
-
_lookTarget.copy(
|
|
23528
|
+
camera.position.copy(_lightPositionWorld);
|
|
23529
|
+
_lookTarget.copy(camera.position);
|
|
23530
23530
|
_lookTarget.add(this._cubeDirections[viewportIndex]);
|
|
23531
|
-
|
|
23532
|
-
|
|
23533
|
-
|
|
23531
|
+
camera.up.copy(this._cubeUps[viewportIndex]);
|
|
23532
|
+
camera.lookAt(_lookTarget);
|
|
23533
|
+
camera.updateMatrixWorld();
|
|
23534
23534
|
shadowMatrix.makeTranslation(-_lightPositionWorld.x, -_lightPositionWorld.y, -_lightPositionWorld.z);
|
|
23535
|
-
_projScreenMatrix.multiplyMatrices(
|
|
23535
|
+
_projScreenMatrix.multiplyMatrices(camera.projectionMatrix, camera.matrixWorldInverse);
|
|
23536
23536
|
this._frustum.setFromProjectionMatrix(_projScreenMatrix);
|
|
23537
23537
|
}
|
|
23538
23538
|
}
|
|
@@ -24849,18 +24849,18 @@ class StereoCamera {
|
|
|
24849
24849
|
eyeSep: null
|
|
24850
24850
|
};
|
|
24851
24851
|
}
|
|
24852
|
-
update(
|
|
24852
|
+
update(camera) {
|
|
24853
24853
|
const cache = this._cache;
|
|
24854
|
-
const needsUpdate = cache.focus !==
|
|
24854
|
+
const needsUpdate = cache.focus !== camera.focus || cache.fov !== camera.fov || cache.aspect !== camera.aspect * this.aspect || cache.near !== camera.near || cache.far !== camera.far || cache.zoom !== camera.zoom || cache.eyeSep !== this.eyeSep;
|
|
24855
24855
|
if (needsUpdate) {
|
|
24856
|
-
cache.focus =
|
|
24857
|
-
cache.fov =
|
|
24858
|
-
cache.aspect =
|
|
24859
|
-
cache.near =
|
|
24860
|
-
cache.far =
|
|
24861
|
-
cache.zoom =
|
|
24856
|
+
cache.focus = camera.focus;
|
|
24857
|
+
cache.fov = camera.fov;
|
|
24858
|
+
cache.aspect = camera.aspect * this.aspect;
|
|
24859
|
+
cache.near = camera.near;
|
|
24860
|
+
cache.far = camera.far;
|
|
24861
|
+
cache.zoom = camera.zoom;
|
|
24862
24862
|
cache.eyeSep = this.eyeSep;
|
|
24863
|
-
_projectionMatrix.copy(
|
|
24863
|
+
_projectionMatrix.copy(camera.projectionMatrix);
|
|
24864
24864
|
const eyeSepHalf = cache.eyeSep / 2;
|
|
24865
24865
|
const eyeSepOnProjection = eyeSepHalf * cache.near / cache.focus;
|
|
24866
24866
|
const ymax = cache.near * Math.tan(DEG2RAD * cache.fov * 0.5) / cache.zoom;
|
|
@@ -24878,8 +24878,8 @@ class StereoCamera {
|
|
|
24878
24878
|
_projectionMatrix.elements[8] = (xmax + xmin) / (xmax - xmin);
|
|
24879
24879
|
this.cameraR.projectionMatrix.copy(_projectionMatrix);
|
|
24880
24880
|
}
|
|
24881
|
-
this.cameraL.matrixWorld.copy(
|
|
24882
|
-
this.cameraR.matrixWorld.copy(
|
|
24881
|
+
this.cameraL.matrixWorld.copy(camera.matrixWorld).multiply(_eyeLeft);
|
|
24882
|
+
this.cameraR.matrixWorld.copy(camera.matrixWorld).multiply(_eyeRight);
|
|
24883
24883
|
}
|
|
24884
24884
|
}
|
|
24885
24885
|
class Clock {
|
|
@@ -26819,17 +26819,17 @@ let Raycaster$1 = class Raycaster {
|
|
|
26819
26819
|
set(origin, direction) {
|
|
26820
26820
|
this.ray.set(origin, direction);
|
|
26821
26821
|
}
|
|
26822
|
-
setFromCamera(coords,
|
|
26823
|
-
if (
|
|
26824
|
-
this.ray.origin.setFromMatrixPosition(
|
|
26825
|
-
this.ray.direction.set(coords.x, coords.y, 0.5).unproject(
|
|
26826
|
-
this.camera =
|
|
26827
|
-
} else if (
|
|
26828
|
-
this.ray.origin.set(coords.x, coords.y, (
|
|
26829
|
-
this.ray.direction.set(0, 0, -1).transformDirection(
|
|
26830
|
-
this.camera =
|
|
26822
|
+
setFromCamera(coords, camera) {
|
|
26823
|
+
if (camera.isPerspectiveCamera) {
|
|
26824
|
+
this.ray.origin.setFromMatrixPosition(camera.matrixWorld);
|
|
26825
|
+
this.ray.direction.set(coords.x, coords.y, 0.5).unproject(camera).sub(this.ray.origin).normalize();
|
|
26826
|
+
this.camera = camera;
|
|
26827
|
+
} else if (camera.isOrthographicCamera) {
|
|
26828
|
+
this.ray.origin.set(coords.x, coords.y, (camera.near + camera.far) / (camera.near - camera.far)).unproject(camera);
|
|
26829
|
+
this.ray.direction.set(0, 0, -1).transformDirection(camera.matrixWorld);
|
|
26830
|
+
this.camera = camera;
|
|
26831
26831
|
} else {
|
|
26832
|
-
console.error("THREE.Raycaster: Unsupported camera type: " +
|
|
26832
|
+
console.error("THREE.Raycaster: Unsupported camera type: " + camera.type);
|
|
26833
26833
|
}
|
|
26834
26834
|
}
|
|
26835
26835
|
intersectObject(object, recursive = true, intersects2 = []) {
|
|
@@ -27436,7 +27436,7 @@ class DirectionalLightHelper extends Object3D$1 {
|
|
|
27436
27436
|
const _vector$d = /* @__PURE__ */ new Vector3$1();
|
|
27437
27437
|
const _camera$1 = /* @__PURE__ */ new Camera$2();
|
|
27438
27438
|
class CameraHelper extends LineSegments {
|
|
27439
|
-
constructor(
|
|
27439
|
+
constructor(camera) {
|
|
27440
27440
|
const geometry = new BufferGeometry();
|
|
27441
27441
|
const material = new LineBasicMaterial({ color: 16777215, vertexColors: true, toneMapped: false });
|
|
27442
27442
|
const vertices = [];
|
|
@@ -27483,9 +27483,9 @@ class CameraHelper extends LineSegments {
|
|
|
27483
27483
|
geometry.setAttribute("color", new Float32BufferAttribute(colors, 3));
|
|
27484
27484
|
super(geometry, material);
|
|
27485
27485
|
this.type = "CameraHelper";
|
|
27486
|
-
this.camera =
|
|
27486
|
+
this.camera = camera;
|
|
27487
27487
|
if (this.camera.updateProjectionMatrix) this.camera.updateProjectionMatrix();
|
|
27488
|
-
this.matrix =
|
|
27488
|
+
this.matrix = camera.matrixWorld;
|
|
27489
27489
|
this.matrixAutoUpdate = false;
|
|
27490
27490
|
this.pointMap = pointMap;
|
|
27491
27491
|
this.update();
|
|
@@ -27584,8 +27584,8 @@ class CameraHelper extends LineSegments {
|
|
|
27584
27584
|
this.material.dispose();
|
|
27585
27585
|
}
|
|
27586
27586
|
}
|
|
27587
|
-
function setPoint(point, pointMap, geometry,
|
|
27588
|
-
_vector$d.set(x, y, z).unproject(
|
|
27587
|
+
function setPoint(point, pointMap, geometry, camera, x, y, z) {
|
|
27588
|
+
_vector$d.set(x, y, z).unproject(camera);
|
|
27589
27589
|
const points = pointMap[point];
|
|
27590
27590
|
if (points !== void 0) {
|
|
27591
27591
|
const position = geometry.getAttribute("position");
|
|
@@ -29804,11 +29804,11 @@ function requireDeflate$1() {
|
|
|
29804
29804
|
};
|
|
29805
29805
|
const fill_window = (s) => {
|
|
29806
29806
|
const _w_size = s.w_size;
|
|
29807
|
-
let n,
|
|
29807
|
+
let n, more, str;
|
|
29808
29808
|
do {
|
|
29809
|
-
|
|
29809
|
+
more = s.window_size - s.lookahead - s.strstart;
|
|
29810
29810
|
if (s.strstart >= _w_size + (_w_size - MIN_LOOKAHEAD)) {
|
|
29811
|
-
s.window.set(s.window.subarray(_w_size, _w_size + _w_size -
|
|
29811
|
+
s.window.set(s.window.subarray(_w_size, _w_size + _w_size - more), 0);
|
|
29812
29812
|
s.match_start -= _w_size;
|
|
29813
29813
|
s.strstart -= _w_size;
|
|
29814
29814
|
s.block_start -= _w_size;
|
|
@@ -29816,12 +29816,12 @@ function requireDeflate$1() {
|
|
|
29816
29816
|
s.insert = s.strstart;
|
|
29817
29817
|
}
|
|
29818
29818
|
slide_hash(s);
|
|
29819
|
-
|
|
29819
|
+
more += _w_size;
|
|
29820
29820
|
}
|
|
29821
29821
|
if (s.strm.avail_in === 0) {
|
|
29822
29822
|
break;
|
|
29823
29823
|
}
|
|
29824
|
-
n = read_buf(s.strm, s.window, s.strstart + s.lookahead,
|
|
29824
|
+
n = read_buf(s.strm, s.window, s.strstart + s.lookahead, more);
|
|
29825
29825
|
s.lookahead += n;
|
|
29826
29826
|
if (s.lookahead + s.insert >= MIN_MATCH) {
|
|
29827
29827
|
str = s.strstart - s.insert;
|
|
@@ -38676,10 +38676,10 @@ function requireObjectModel() {
|
|
|
38676
38676
|
upOffset = await localTable.getNumberArray("double:UpOffset");
|
|
38677
38677
|
})()
|
|
38678
38678
|
]);
|
|
38679
|
-
let
|
|
38679
|
+
let camera = [];
|
|
38680
38680
|
const rowCount = await this.getCount();
|
|
38681
38681
|
for (let i = 0; i < rowCount; i++) {
|
|
38682
|
-
|
|
38682
|
+
camera.push({
|
|
38683
38683
|
index: i,
|
|
38684
38684
|
id: id2 ? id2[i] : void 0,
|
|
38685
38685
|
isPerspective: isPerspective ? isPerspective[i] : void 0,
|
|
@@ -38692,7 +38692,7 @@ function requireObjectModel() {
|
|
|
38692
38692
|
upOffset: upOffset ? upOffset[i] : void 0
|
|
38693
38693
|
});
|
|
38694
38694
|
}
|
|
38695
|
-
return
|
|
38695
|
+
return camera;
|
|
38696
38696
|
}
|
|
38697
38697
|
async getId(cameraIndex) {
|
|
38698
38698
|
return await this.entityTable.getNumber(cameraIndex, "int:Id");
|
|
@@ -47140,9 +47140,9 @@ function clamp$2(value, min2, max2) {
|
|
|
47140
47140
|
return Math.max(min2, Math.min(max2, value));
|
|
47141
47141
|
}
|
|
47142
47142
|
class PerspectiveWrapper {
|
|
47143
|
-
constructor(
|
|
47143
|
+
constructor(camera) {
|
|
47144
47144
|
__publicField(this, "camera");
|
|
47145
|
-
this.camera =
|
|
47145
|
+
this.camera = camera;
|
|
47146
47146
|
}
|
|
47147
47147
|
applySettings(settings2) {
|
|
47148
47148
|
this.camera.fov = settings2.camera.fov;
|
|
@@ -47162,9 +47162,9 @@ class PerspectiveWrapper {
|
|
|
47162
47162
|
}
|
|
47163
47163
|
}
|
|
47164
47164
|
class OrthographicWrapper {
|
|
47165
|
-
constructor(
|
|
47165
|
+
constructor(camera) {
|
|
47166
47166
|
__publicField(this, "camera");
|
|
47167
|
-
this.camera =
|
|
47167
|
+
this.camera = camera;
|
|
47168
47168
|
}
|
|
47169
47169
|
frustrumSizeAt(point) {
|
|
47170
47170
|
return new Vector2$1(
|
|
@@ -47337,9 +47337,9 @@ class GizmoMarker {
|
|
|
47337
47337
|
}
|
|
47338
47338
|
}
|
|
47339
47339
|
class CameraMovement {
|
|
47340
|
-
constructor(
|
|
47340
|
+
constructor(camera) {
|
|
47341
47341
|
__publicField(this, "_camera");
|
|
47342
|
-
this._camera =
|
|
47342
|
+
this._camera = camera;
|
|
47343
47343
|
}
|
|
47344
47344
|
/**
|
|
47345
47345
|
* Moves the camera in a specified 2D direction within a plane defined by the given axes.
|
|
@@ -47428,8 +47428,8 @@ class CameraMovement {
|
|
|
47428
47428
|
}
|
|
47429
47429
|
}
|
|
47430
47430
|
class CameraLerp extends CameraMovement {
|
|
47431
|
-
constructor(
|
|
47432
|
-
super(
|
|
47431
|
+
constructor(camera, movement) {
|
|
47432
|
+
super(camera);
|
|
47433
47433
|
__publicField(this, "_movement");
|
|
47434
47434
|
__publicField(this, "_clock", new Clock());
|
|
47435
47435
|
// position
|
|
@@ -48321,14 +48321,14 @@ class RaycastResult {
|
|
|
48321
48321
|
}
|
|
48322
48322
|
}
|
|
48323
48323
|
class Raycaster2 {
|
|
48324
|
-
constructor(viewport,
|
|
48324
|
+
constructor(viewport, camera, scene, renderer) {
|
|
48325
48325
|
__publicField(this, "_viewport");
|
|
48326
48326
|
__publicField(this, "_camera");
|
|
48327
48327
|
__publicField(this, "_scene");
|
|
48328
48328
|
__publicField(this, "_renderer");
|
|
48329
48329
|
__publicField(this, "_raycaster", new Raycaster$1());
|
|
48330
48330
|
this._viewport = viewport;
|
|
48331
|
-
this._camera =
|
|
48331
|
+
this._camera = camera;
|
|
48332
48332
|
this._scene = scene;
|
|
48333
48333
|
this._renderer = renderer;
|
|
48334
48334
|
}
|
|
@@ -48998,12 +48998,12 @@ class DefaultInputScheme {
|
|
|
48998
48998
|
this._viewer = viewer;
|
|
48999
48999
|
}
|
|
49000
49000
|
onMainAction(action) {
|
|
49001
|
-
const
|
|
49001
|
+
const camera = this._viewer.camera;
|
|
49002
49002
|
const selection = this._viewer.selection;
|
|
49003
49003
|
if (!(action == null ? void 0 : action.object)) {
|
|
49004
49004
|
selection.select(void 0);
|
|
49005
49005
|
if (action.type === "double") {
|
|
49006
|
-
|
|
49006
|
+
camera.lerp(1).frame("all");
|
|
49007
49007
|
}
|
|
49008
49008
|
return;
|
|
49009
49009
|
}
|
|
@@ -49013,7 +49013,7 @@ class DefaultInputScheme {
|
|
|
49013
49013
|
selection.select(action.object);
|
|
49014
49014
|
}
|
|
49015
49015
|
if (action.type === "double") {
|
|
49016
|
-
|
|
49016
|
+
camera.lerp(1).frame(action.object);
|
|
49017
49017
|
}
|
|
49018
49018
|
}
|
|
49019
49019
|
onIdleAction(hit) {
|
|
@@ -49022,26 +49022,26 @@ class DefaultInputScheme {
|
|
|
49022
49022
|
}
|
|
49023
49023
|
}
|
|
49024
49024
|
onKeyAction(key) {
|
|
49025
|
-
const
|
|
49025
|
+
const camera = this._viewer.camera;
|
|
49026
49026
|
const selection = this._viewer.selection;
|
|
49027
49027
|
switch (key) {
|
|
49028
49028
|
case KEYS.KEY_P:
|
|
49029
|
-
|
|
49029
|
+
camera.orthographic = !camera.orthographic;
|
|
49030
49030
|
return true;
|
|
49031
49031
|
case KEYS.KEY_ADD:
|
|
49032
49032
|
case KEYS.KEY_OEM_PLUS:
|
|
49033
|
-
|
|
49033
|
+
camera.speed += 1;
|
|
49034
49034
|
return true;
|
|
49035
49035
|
case KEYS.KEY_SUBTRACT:
|
|
49036
49036
|
case KEYS.KEY_OEM_MINUS:
|
|
49037
|
-
|
|
49037
|
+
camera.speed -= 1;
|
|
49038
49038
|
return true;
|
|
49039
49039
|
case KEYS.KEY_F8:
|
|
49040
49040
|
case KEYS.KEY_SPACE:
|
|
49041
49041
|
this._viewer.inputs.pointerActive = this._viewer.inputs.pointerFallback;
|
|
49042
49042
|
return true;
|
|
49043
49043
|
case KEYS.KEY_HOME:
|
|
49044
|
-
|
|
49044
|
+
camera.lerp(1).reset();
|
|
49045
49045
|
return true;
|
|
49046
49046
|
// Selection
|
|
49047
49047
|
case KEYS.KEY_ESCAPE:
|
|
@@ -49050,9 +49050,9 @@ class DefaultInputScheme {
|
|
|
49050
49050
|
case KEYS.KEY_Z:
|
|
49051
49051
|
case KEYS.KEY_F:
|
|
49052
49052
|
if (selection.count > 0) {
|
|
49053
|
-
|
|
49053
|
+
camera.lerp(1).frame(selection.getBoundingBox());
|
|
49054
49054
|
} else {
|
|
49055
|
-
|
|
49055
|
+
camera.lerp(1).frame("all");
|
|
49056
49056
|
}
|
|
49057
49057
|
return true;
|
|
49058
49058
|
default:
|
|
@@ -49487,7 +49487,7 @@ class GroundPlane {
|
|
|
49487
49487
|
}
|
|
49488
49488
|
}
|
|
49489
49489
|
class Skybox {
|
|
49490
|
-
constructor(
|
|
49490
|
+
constructor(camera, renderer, materials, settings2) {
|
|
49491
49491
|
__publicField(this, "mesh");
|
|
49492
49492
|
__publicField(this, "_plane");
|
|
49493
49493
|
__publicField(this, "_material");
|
|
@@ -49500,10 +49500,10 @@ class Skybox {
|
|
|
49500
49500
|
this.skyColor = settings2.skybox.skyColor;
|
|
49501
49501
|
this.groundColor = settings2.skybox.groundColor;
|
|
49502
49502
|
this.sharpness = settings2.skybox.sharpness;
|
|
49503
|
-
|
|
49504
|
-
this.mesh.position.copy(
|
|
49505
|
-
this.mesh.quaternion.copy(
|
|
49506
|
-
const size =
|
|
49503
|
+
camera.onMoved.subscribe(() => {
|
|
49504
|
+
this.mesh.position.copy(camera.position).add(camera.forward);
|
|
49505
|
+
this.mesh.quaternion.copy(camera.quaternion);
|
|
49506
|
+
const size = camera.frustrumSizeAt(this.mesh.position);
|
|
49507
49507
|
this.mesh.scale.set(size.x, size.y, 1);
|
|
49508
49508
|
});
|
|
49509
49509
|
}
|
|
@@ -49555,7 +49555,7 @@ class Skybox {
|
|
|
49555
49555
|
}
|
|
49556
49556
|
}
|
|
49557
49557
|
class CameraLight {
|
|
49558
|
-
constructor(
|
|
49558
|
+
constructor(camera, options) {
|
|
49559
49559
|
__publicField(this, "light");
|
|
49560
49560
|
__publicField(this, "_camera");
|
|
49561
49561
|
__publicField(this, "_unsubscribe");
|
|
@@ -49563,7 +49563,7 @@ class CameraLight {
|
|
|
49563
49563
|
* The position of the light.
|
|
49564
49564
|
*/
|
|
49565
49565
|
__publicField(this, "position");
|
|
49566
|
-
this._camera =
|
|
49566
|
+
this._camera = camera;
|
|
49567
49567
|
this.position = options.position.clone();
|
|
49568
49568
|
this.light = new DirectionalLight(options.color, options.intensity);
|
|
49569
49569
|
this.followCamera = options.followCamera;
|
|
@@ -49619,7 +49619,7 @@ class CameraLight {
|
|
|
49619
49619
|
}
|
|
49620
49620
|
}
|
|
49621
49621
|
class Environment {
|
|
49622
|
-
constructor(
|
|
49622
|
+
constructor(camera, renderer, viewerMaterials, settings2) {
|
|
49623
49623
|
__publicField(this, "_renderer");
|
|
49624
49624
|
__publicField(this, "_camera");
|
|
49625
49625
|
/**
|
|
@@ -49638,11 +49638,11 @@ class Environment {
|
|
|
49638
49638
|
* The skybox in the scene.
|
|
49639
49639
|
*/
|
|
49640
49640
|
__publicField(this, "skybox");
|
|
49641
|
-
this._camera =
|
|
49641
|
+
this._camera = camera;
|
|
49642
49642
|
this._renderer = renderer;
|
|
49643
49643
|
this.groundPlane = new GroundPlane(settings2);
|
|
49644
49644
|
this.skyLight = this.createSkyLight(settings2);
|
|
49645
|
-
this.skybox = new Skybox(
|
|
49645
|
+
this.skybox = new Skybox(camera, renderer, viewerMaterials, settings2);
|
|
49646
49646
|
this.sunLights = this.createSunLights(settings2);
|
|
49647
49647
|
this.setupRendererListeners();
|
|
49648
49648
|
this.addObjectsToRenderer();
|
|
@@ -49726,12 +49726,12 @@ class CSS2DRenderer {
|
|
|
49726
49726
|
height: _height
|
|
49727
49727
|
};
|
|
49728
49728
|
};
|
|
49729
|
-
this.render = function(scene,
|
|
49729
|
+
this.render = function(scene, camera) {
|
|
49730
49730
|
if (scene.autoUpdate === true) scene.updateMatrixWorld();
|
|
49731
|
-
if (
|
|
49732
|
-
_viewMatrix.copy(
|
|
49733
|
-
_viewProjectionMatrix.multiplyMatrices(
|
|
49734
|
-
renderObject(scene, scene,
|
|
49731
|
+
if (camera.parent === null) camera.updateMatrixWorld();
|
|
49732
|
+
_viewMatrix.copy(camera.matrixWorldInverse);
|
|
49733
|
+
_viewProjectionMatrix.multiplyMatrices(camera.projectionMatrix, _viewMatrix);
|
|
49734
|
+
renderObject(scene, scene, camera);
|
|
49735
49735
|
zOrder2(scene);
|
|
49736
49736
|
};
|
|
49737
49737
|
this.setSize = function(width, height) {
|
|
@@ -49742,28 +49742,28 @@ class CSS2DRenderer {
|
|
|
49742
49742
|
domElement.style.width = width + "px";
|
|
49743
49743
|
domElement.style.height = height + "px";
|
|
49744
49744
|
};
|
|
49745
|
-
function renderObject(object, scene,
|
|
49745
|
+
function renderObject(object, scene, camera) {
|
|
49746
49746
|
if (object.isCSS2DObject) {
|
|
49747
49747
|
_vector.setFromMatrixPosition(object.matrixWorld);
|
|
49748
49748
|
_vector.applyMatrix4(_viewProjectionMatrix);
|
|
49749
|
-
const
|
|
49750
|
-
object.element.style.display =
|
|
49751
|
-
if (
|
|
49752
|
-
object.onBeforeRender(_this, scene,
|
|
49749
|
+
const visible = object.visible === true && (_vector.z >= -1 && _vector.z <= 1) && object.layers.test(camera.layers) === true;
|
|
49750
|
+
object.element.style.display = visible === true ? "" : "none";
|
|
49751
|
+
if (visible === true) {
|
|
49752
|
+
object.onBeforeRender(_this, scene, camera);
|
|
49753
49753
|
const element = object.element;
|
|
49754
49754
|
element.style.transform = "translate(-50%,-50%) translate(" + (_vector.x * _widthHalf + _widthHalf) + "px," + (-_vector.y * _heightHalf + _heightHalf) + "px)";
|
|
49755
49755
|
if (element.parentNode !== domElement) {
|
|
49756
49756
|
domElement.appendChild(element);
|
|
49757
49757
|
}
|
|
49758
|
-
object.onAfterRender(_this, scene,
|
|
49758
|
+
object.onAfterRender(_this, scene, camera);
|
|
49759
49759
|
}
|
|
49760
49760
|
const objectData = {
|
|
49761
|
-
distanceToCameraSquared: getDistanceToSquared(
|
|
49761
|
+
distanceToCameraSquared: getDistanceToSquared(camera, object)
|
|
49762
49762
|
};
|
|
49763
49763
|
cache.objects.set(object, objectData);
|
|
49764
49764
|
}
|
|
49765
49765
|
for (let i = 0, l = object.children.length; i < l; i++) {
|
|
49766
|
-
renderObject(object.children[i], scene,
|
|
49766
|
+
renderObject(object.children[i], scene, camera);
|
|
49767
49767
|
}
|
|
49768
49768
|
}
|
|
49769
49769
|
function getDistanceToSquared(object1, object2) {
|
|
@@ -50153,7 +50153,7 @@ function createAxes(settings2) {
|
|
|
50153
50153
|
];
|
|
50154
50154
|
}
|
|
50155
50155
|
class GizmoAxes {
|
|
50156
|
-
constructor(
|
|
50156
|
+
constructor(camera, viewport, options) {
|
|
50157
50157
|
// settings
|
|
50158
50158
|
__publicField(this, "_initialOptions");
|
|
50159
50159
|
__publicField(this, "_options");
|
|
@@ -50240,7 +50240,7 @@ class GizmoAxes {
|
|
|
50240
50240
|
});
|
|
50241
50241
|
this._initialOptions = new AxesSettings(options);
|
|
50242
50242
|
this._options = new AxesSettings(options);
|
|
50243
|
-
this._camera =
|
|
50243
|
+
this._camera = camera;
|
|
50244
50244
|
this._reparentConnection = viewport.onReparent.subscribe(() => this.reparent(viewport.parent));
|
|
50245
50245
|
this._canvas = this.createCanvas();
|
|
50246
50246
|
this._context = this._canvas.getContext("2d");
|
|
@@ -50427,7 +50427,7 @@ class GizmoLoading {
|
|
|
50427
50427
|
}
|
|
50428
50428
|
}
|
|
50429
50429
|
class GizmoOrbit {
|
|
50430
|
-
constructor(renderer,
|
|
50430
|
+
constructor(renderer, camera, input, settings2) {
|
|
50431
50431
|
// Dependencies
|
|
50432
50432
|
__publicField(this, "_renderer");
|
|
50433
50433
|
__publicField(this, "_camera");
|
|
@@ -50450,7 +50450,7 @@ class GizmoOrbit {
|
|
|
50450
50450
|
__publicField(this, "_active", true);
|
|
50451
50451
|
__publicField(this, "_animation", 0);
|
|
50452
50452
|
this._renderer = renderer;
|
|
50453
|
-
this._camera =
|
|
50453
|
+
this._camera = camera;
|
|
50454
50454
|
this._inputs = input;
|
|
50455
50455
|
this.applySettings(settings2);
|
|
50456
50456
|
this.connect();
|
|
@@ -51529,7 +51529,7 @@ class MeasureLine {
|
|
|
51529
51529
|
}
|
|
51530
51530
|
}
|
|
51531
51531
|
class MeasureMarker {
|
|
51532
|
-
constructor(color,
|
|
51532
|
+
constructor(color, camera) {
|
|
51533
51533
|
__publicField(this, "MARKER_SIZE", 0.01);
|
|
51534
51534
|
__publicField(this, "mesh");
|
|
51535
51535
|
__publicField(this, "_material");
|
|
@@ -51550,8 +51550,8 @@ class MeasureMarker {
|
|
|
51550
51550
|
g.addGroup(0, Infinity, 1);
|
|
51551
51551
|
this.mesh = new Mesh(g, [this._material, this._materialAlways]);
|
|
51552
51552
|
this.mesh.visible = false;
|
|
51553
|
-
this.disconnect =
|
|
51554
|
-
this._camera =
|
|
51553
|
+
this.disconnect = camera.onMoved.subscribe(() => this.updateScale());
|
|
51554
|
+
this._camera = camera;
|
|
51555
51555
|
this.updateScale();
|
|
51556
51556
|
}
|
|
51557
51557
|
updateScale() {
|
|
@@ -52384,7 +52384,7 @@ class SectionBox {
|
|
|
52384
52384
|
}
|
|
52385
52385
|
}
|
|
52386
52386
|
class Gizmos {
|
|
52387
|
-
constructor(viewer,
|
|
52387
|
+
constructor(viewer, camera) {
|
|
52388
52388
|
__publicField(this, "viewer");
|
|
52389
52389
|
__publicField(this, "_measure");
|
|
52390
52390
|
/**
|
|
@@ -52418,12 +52418,12 @@ class Gizmos {
|
|
|
52418
52418
|
this.loading = new GizmoLoading(viewer);
|
|
52419
52419
|
this.orbit = new GizmoOrbit(
|
|
52420
52420
|
viewer.renderer,
|
|
52421
|
-
|
|
52421
|
+
camera,
|
|
52422
52422
|
viewer.inputs,
|
|
52423
52423
|
viewer.settings
|
|
52424
52424
|
);
|
|
52425
52425
|
this.rectangle = new GizmoRectangle(viewer);
|
|
52426
|
-
this.axes = new GizmoAxes(
|
|
52426
|
+
this.axes = new GizmoAxes(camera, viewer.viewport, viewer.settings.axes);
|
|
52427
52427
|
this.markers = new GizmoMarkers(viewer);
|
|
52428
52428
|
(_a2 = viewer.viewport.canvas.parentElement) == null ? void 0 : _a2.prepend(this.axes.canvas);
|
|
52429
52429
|
}
|
|
@@ -52612,10 +52612,10 @@ class ShaderPass extends Pass {
|
|
|
52612
52612
|
}
|
|
52613
52613
|
}
|
|
52614
52614
|
class MaskPass extends Pass {
|
|
52615
|
-
constructor(scene,
|
|
52615
|
+
constructor(scene, camera) {
|
|
52616
52616
|
super();
|
|
52617
52617
|
this.scene = scene;
|
|
52618
|
-
this.camera =
|
|
52618
|
+
this.camera = camera;
|
|
52619
52619
|
this.clear = true;
|
|
52620
52620
|
this.needsSwap = false;
|
|
52621
52621
|
this.inverse = false;
|
|
@@ -52790,10 +52790,10 @@ const _geometry = new BufferGeometry();
|
|
|
52790
52790
|
_geometry.setAttribute("position", new Float32BufferAttribute([-1, 3, 0, -1, -1, 0, 3, -1, 0], 3));
|
|
52791
52791
|
_geometry.setAttribute("uv", new Float32BufferAttribute([0, 2, 0, 0, 2, 0], 2));
|
|
52792
52792
|
class RenderPass extends Pass {
|
|
52793
|
-
constructor(scene,
|
|
52793
|
+
constructor(scene, camera, overrideMaterial, clearColor, clearAlpha) {
|
|
52794
52794
|
super();
|
|
52795
52795
|
this.scene = scene;
|
|
52796
|
-
this.camera =
|
|
52796
|
+
this.camera = camera;
|
|
52797
52797
|
this.overrideMaterial = overrideMaterial;
|
|
52798
52798
|
this.clearColor = clearColor;
|
|
52799
52799
|
this.clearAlpha = clearAlpha !== void 0 ? clearAlpha : 0;
|
|
@@ -52831,10 +52831,10 @@ class RenderPass extends Pass {
|
|
|
52831
52831
|
}
|
|
52832
52832
|
}
|
|
52833
52833
|
class SSAARenderPass extends Pass {
|
|
52834
|
-
constructor(scene,
|
|
52834
|
+
constructor(scene, camera, clearColor, clearAlpha) {
|
|
52835
52835
|
super();
|
|
52836
52836
|
this.scene = scene;
|
|
52837
|
-
this.camera =
|
|
52837
|
+
this.camera = camera;
|
|
52838
52838
|
this.sampleLevel = 4;
|
|
52839
52839
|
this.unbiased = true;
|
|
52840
52840
|
this.clearColor = clearColor !== void 0 ? clearColor : 0;
|
|
@@ -53279,13 +53279,13 @@ const FXAAShader = {
|
|
|
53279
53279
|
`
|
|
53280
53280
|
};
|
|
53281
53281
|
class OutlinePass extends Pass {
|
|
53282
|
-
constructor(sceneBuffer,
|
|
53282
|
+
constructor(sceneBuffer, camera, material) {
|
|
53283
53283
|
super();
|
|
53284
53284
|
__publicField(this, "_fsQuad");
|
|
53285
53285
|
__publicField(this, "material");
|
|
53286
53286
|
this.material = material ?? new OutlineMaterial();
|
|
53287
53287
|
this.material.sceneBuffer = sceneBuffer;
|
|
53288
|
-
this.material.camera =
|
|
53288
|
+
this.material.camera = camera;
|
|
53289
53289
|
this._fsQuad = new FullScreenQuad(this.material.material);
|
|
53290
53290
|
}
|
|
53291
53291
|
setSize(width, height) {
|
|
@@ -53386,7 +53386,7 @@ class TransferPass extends Pass {
|
|
|
53386
53386
|
}
|
|
53387
53387
|
}
|
|
53388
53388
|
class RenderingComposer {
|
|
53389
|
-
constructor(renderer, scene, viewport, materials,
|
|
53389
|
+
constructor(renderer, scene, viewport, materials, camera) {
|
|
53390
53390
|
__publicField(this, "_renderer");
|
|
53391
53391
|
__publicField(this, "_scene");
|
|
53392
53392
|
__publicField(this, "_materials");
|
|
@@ -53413,7 +53413,7 @@ class RenderingComposer {
|
|
|
53413
53413
|
this._scene = scene;
|
|
53414
53414
|
this._materials = materials;
|
|
53415
53415
|
this._size = viewport.getSize();
|
|
53416
|
-
this._camera =
|
|
53416
|
+
this._camera = camera.three;
|
|
53417
53417
|
this.setup();
|
|
53418
53418
|
this._clock = new Clock();
|
|
53419
53419
|
}
|
|
@@ -53549,7 +53549,7 @@ class RenderingComposer {
|
|
|
53549
53549
|
}
|
|
53550
53550
|
}
|
|
53551
53551
|
let Renderer$1 = class Renderer {
|
|
53552
|
-
constructor(scene, viewport, materials,
|
|
53552
|
+
constructor(scene, viewport, materials, camera, settings2) {
|
|
53553
53553
|
/**
|
|
53554
53554
|
* The THREE WebGL renderer.
|
|
53555
53555
|
*/
|
|
@@ -53590,7 +53590,7 @@ let Renderer$1 = class Renderer {
|
|
|
53590
53590
|
this._viewport = viewport;
|
|
53591
53591
|
this._scene = scene;
|
|
53592
53592
|
this._materials = materials;
|
|
53593
|
-
this._camera =
|
|
53593
|
+
this._camera = camera;
|
|
53594
53594
|
this.renderer = new WebGLRenderer$1({
|
|
53595
53595
|
canvas: viewport.canvas,
|
|
53596
53596
|
antialias: true,
|
|
@@ -53608,7 +53608,7 @@ let Renderer$1 = class Renderer {
|
|
|
53608
53608
|
scene,
|
|
53609
53609
|
viewport,
|
|
53610
53610
|
materials,
|
|
53611
|
-
|
|
53611
|
+
camera
|
|
53612
53612
|
);
|
|
53613
53613
|
this._composer.onDemand = settings2.rendering.onDemand;
|
|
53614
53614
|
this.section = new RenderingSection(this, this._materials);
|
|
@@ -58682,15 +58682,6 @@ function checkmark({ height, width, fill, className }) {
|
|
|
58682
58682
|
}
|
|
58683
58683
|
) });
|
|
58684
58684
|
}
|
|
58685
|
-
function undo({ height, width, fill, className }) {
|
|
58686
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsx("svg", { className, height, width, viewBox: "0 0 256 256", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
58687
|
-
"path",
|
|
58688
|
-
{
|
|
58689
|
-
fill,
|
|
58690
|
-
d: "M167.055,76.799H56.971l27.112-27.112c4.687-4.687,4.687-12.285,0-16.971h0c-4.686-4.687-12.284-4.687-16.97,0L19.515,80.313c-4.686,4.687-4.686,12.285,0,16.971h0s0,0,0,0l47.598,47.598c4.686,4.686,12.284,4.686,16.97,0s4.687-12.284,0-16.971l-27.112-27.113h111.029c12.742,0,24.774,5.015,33.879,14.121,9.106,9.105,14.121,21.138,14.121,33.879s-5.015,24.774-14.121,33.879c-9.105,9.106-21.138,14.121-33.879,14.121h-60c-6.627,0-12,5.373-12,12h0c0,6.627,5.373,12,12,12h60c39.925,0,72.531-32.933,71.994-72.975-.531-39.538-33.397-71.025-72.938-71.025Z"
|
|
58691
|
-
}
|
|
58692
|
-
) });
|
|
58693
|
-
}
|
|
58694
58685
|
function close({ height, width, fill, className }) {
|
|
58695
58686
|
return /* @__PURE__ */ jsxRuntimeExports.jsx("svg", { className, height, width, viewBox: "0 0 256 256", children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
58696
58687
|
"path",
|
|
@@ -58751,31 +58742,6 @@ function treeView({ height, width, fill, className }) {
|
|
|
58751
58742
|
}
|
|
58752
58743
|
) });
|
|
58753
58744
|
}
|
|
58754
|
-
function more({ height, width, fill, className }) {
|
|
58755
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsxs("svg", { className, fill, height, width, viewBox: "0 0 256 256", children: [
|
|
58756
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
58757
|
-
"path",
|
|
58758
|
-
{
|
|
58759
|
-
fill,
|
|
58760
|
-
d: "M48,156c-15.438,0-28-12.562-28-28s12.562-28,28-28,28,12.562,28,28-12.562,28-28,28Z"
|
|
58761
|
-
}
|
|
58762
|
-
),
|
|
58763
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
58764
|
-
"path",
|
|
58765
|
-
{
|
|
58766
|
-
fill,
|
|
58767
|
-
d: "M128,156c-15.438,0-28-12.562-28-28s12.562-28,28-28,28,12.562,28,28-12.562,28-28,28Z"
|
|
58768
|
-
}
|
|
58769
|
-
),
|
|
58770
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
58771
|
-
"path",
|
|
58772
|
-
{
|
|
58773
|
-
fill,
|
|
58774
|
-
d: "M208,156c-15.438,0-28-12.562-28-28s12.562-28,28-28,28,12.562,28,28-12.562,28-28,28Z"
|
|
58775
|
-
}
|
|
58776
|
-
)
|
|
58777
|
-
] });
|
|
58778
|
-
}
|
|
58779
58745
|
function collapse({ height, width, fill, className }) {
|
|
58780
58746
|
return /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
58781
58747
|
"svg",
|
|
@@ -58794,75 +58760,6 @@ function collapse({ height, width, fill, className }) {
|
|
|
58794
58760
|
}
|
|
58795
58761
|
);
|
|
58796
58762
|
}
|
|
58797
|
-
function arrowLeft({ height, width, fill, className }) {
|
|
58798
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsxs("svg", { className, height, width, viewBox: "0 0 256 256", children: [
|
|
58799
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("path", { fill: "none", d: "M0 0h256v256H0z" }),
|
|
58800
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("path", { fill, d: "m161.905 202.207.019-.017c6.547-5.937 7.04-16.057 1.102-22.602L118.457 128l44.569-51.588c5.938-6.546 5.444-16.666-1.102-22.602l-.019-.017c-6.545-5.935-16.662-5.442-22.599 1.102l-54.33 62.348c-5.536 6.103-5.536 15.411 0 21.514l54.33 62.348c5.936 6.544 16.054 7.038 22.599 1.102Z" })
|
|
58801
|
-
] });
|
|
58802
|
-
}
|
|
58803
|
-
function fullArrowLeft({ height, width, fill, className }) {
|
|
58804
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsxs("svg", { className, height, width, viewBox: "0 0 256 256", children: [
|
|
58805
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("path", { fill: "none", d: "M0 0h256v256H0z" }),
|
|
58806
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("circle", { cx: "128", cy: "32", r: "16" }),
|
|
58807
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("circle", { cx: "128", cy: "224", r: "16" }),
|
|
58808
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
58809
|
-
"path",
|
|
58810
|
-
{
|
|
58811
|
-
fill,
|
|
58812
|
-
d: "M224 112H70.627l68.686-68.686c6.249-6.248 6.249-16.379 0-22.627-6.248-6.248-16.379-6.248-22.627 0l-95.999 95.999C17.791 119.582 16 123.582 16 128s1.791 8.418 4.687 11.314l96 96c6.248 6.248 16.379 6.248 22.627 0 6.249-6.248 6.249-16.379 0-22.627l-68.686-68.686H224c8.836 0 16-7.164 16-16s-7.164-16-16-16Z"
|
|
58813
|
-
}
|
|
58814
|
-
)
|
|
58815
|
-
] });
|
|
58816
|
-
}
|
|
58817
|
-
function visible({ height, width, fill, className }) {
|
|
58818
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
58819
|
-
"svg",
|
|
58820
|
-
{
|
|
58821
|
-
className,
|
|
58822
|
-
height,
|
|
58823
|
-
width,
|
|
58824
|
-
viewBox: "0 0 256 256",
|
|
58825
|
-
children: [
|
|
58826
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("path", { fill: "none", d: "M0 0h256v256H0z" }),
|
|
58827
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
58828
|
-
"path",
|
|
58829
|
-
{
|
|
58830
|
-
fill,
|
|
58831
|
-
d: "M128 36C57.308 36 0 97.054 0 128c0 32.943 57.308 92 128 92s128-59.057 128-92c0-30.946-57.308-92-128-92Zm75.346 131.751C190.404 178.301 163.406 196 128 196s-62.403-17.699-75.346-28.249C31.004 150.103 24 133.349 24 128c0-.047.071-4.846 6.247-14.452 5.34-8.308 13.341-17.061 22.527-24.648 6.833-5.643 17.521-13.282 31.163-19.291C71.664 81.27 64 97.734 64 116c0 35.346 28.654 64 64 64s64-28.654 64-64a63.79 63.79 0 0 0-5.004-24.847C186.913 106.546 174.413 119 159 119s-28-12.536-28-28c0-13.851 10.06-25.346 23.271-27.594 22.243 5.762 39.382 17.586 48.956 25.494 9.186 7.587 17.187 16.341 22.527 24.648 6.176 9.606 6.247 14.405 6.247 14.452 0 5.349-7.004 22.103-28.654 39.751Z"
|
|
58832
|
-
}
|
|
58833
|
-
)
|
|
58834
|
-
]
|
|
58835
|
-
}
|
|
58836
|
-
);
|
|
58837
|
-
}
|
|
58838
|
-
function hidden({ height, width, fill, className = "" }) {
|
|
58839
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
58840
|
-
"svg",
|
|
58841
|
-
{
|
|
58842
|
-
className,
|
|
58843
|
-
height,
|
|
58844
|
-
width,
|
|
58845
|
-
viewBox: "0 0 256 256",
|
|
58846
|
-
children: [
|
|
58847
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("path", { fill: "none", d: "M0 0h256v256H0z" }),
|
|
58848
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
58849
|
-
"path",
|
|
58850
|
-
{
|
|
58851
|
-
fill,
|
|
58852
|
-
d: "M154.271 63.406c22.243 5.762 39.382 17.586 48.956 25.494 9.186 7.587 17.187 16.341 22.527 24.648 6.176 9.606 6.247 14.405 6.247 14.452 0 4.764-5.566 18.577-22.079 34.01l16.973 16.972c18.185-17.247 29.106-36.602 29.106-50.982 0-30.946-57.308-92-128-92-13.307 0-26.139 2.165-38.205 5.884l42.099 42.099c2.731-10.572 11.479-18.722 22.376-20.577Z"
|
|
58853
|
-
}
|
|
58854
|
-
),
|
|
58855
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
58856
|
-
"path",
|
|
58857
|
-
{
|
|
58858
|
-
fill,
|
|
58859
|
-
d: "m166.022 118.111 21.472 21.472A63.801 63.801 0 0 0 191.999 116a63.79 63.79 0 0 0-5.004-24.847c-.07 12.971-8.957 23.853-20.974 26.958ZM31.833 17.863c-4.687-4.686-12.284-4.686-16.971 0-4.686 4.687-4.686 12.285 0 16.971l29.92 29.92C17.38 84.825 0 110.966 0 128c0 32.943 57.308 92 128 92 21.088 0 40.972-5.269 58.51-13.52l37.657 37.657c4.687 4.686 12.284 4.686 16.971 0 4.686-4.687 4.686-12.285 0-16.971L31.833 17.863ZM128 196c-35.405 0-62.403-17.699-75.346-28.249C31.004 150.103 24 133.349 24 128c0-.047.071-4.846 6.247-14.452 5.34-8.308 13.341-17.061 22.527-24.648a134.832 134.832 0 0 1 9.205-6.95l7.708 7.708a63.612 63.612 0 0 0-5.686 26.343c0 35.346 28.654 64 64 64 9.397 0 18.31-2.043 26.345-5.684l13.936 13.936c-11.606 4.516-25.17 7.749-40.281 7.749Z"
|
|
58860
|
-
}
|
|
58861
|
-
)
|
|
58862
|
-
]
|
|
58863
|
-
}
|
|
58864
|
-
);
|
|
58865
|
-
}
|
|
58866
58763
|
function orbit({ height, width, fill = "", className }) {
|
|
58867
58764
|
return /* @__PURE__ */ jsxRuntimeExports.jsxs("svg", { className, height, width, viewBox: "0 0 256 256", children: [
|
|
58868
58765
|
/* @__PURE__ */ jsxRuntimeExports.jsx("path", { fill: "none", d: "M0 0h256v256H0z" }),
|
|
@@ -58919,19 +58816,6 @@ function orthographic({ height, width, fill, className }) {
|
|
|
58919
58816
|
)
|
|
58920
58817
|
] });
|
|
58921
58818
|
}
|
|
58922
|
-
function camera({ height, width, fill, className }) {
|
|
58923
|
-
return /* @__PURE__ */ jsxRuntimeExports.jsxs("svg", { className, height, width, viewBox: "0 0 256 256", children: [
|
|
58924
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx("path", { fill: "none", d: "M0 0h256v256H0z" }),
|
|
58925
|
-
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
58926
|
-
"path",
|
|
58927
|
-
{
|
|
58928
|
-
fill,
|
|
58929
|
-
id: "noun-walking-4952413",
|
|
58930
|
-
d: "M136.693,8c-13.243,.037-23.948,10.802-23.911,24.044,.037,13.243,10.802,23.948,24.044,23.911,13.217-.037,23.912-10.761,23.912-23.978s-10.735-23.978-23.978-23.978c-.022,0-.045,0-.067,0Zm-13.867,54.936c-21.612,1.291-41.372,12.631-53.391,30.639-6.568,13.483-9.23,28.535-7.686,43.454,0,5.19,4.208,9.398,9.398,9.398s9.398-4.208,9.398-9.398c-1.308-11.482,.414-23.106,4.995-33.716,5.052-6.952,11.735-12.556,19.462-16.318-3.344,15.466-6.407,30.958-9.538,46.371l44.626,106.009c2.654,6.925,10.42,10.386,17.344,7.732,6.925-2.654,10.386-10.42,7.732-17.344-.104-.272-.217-.54-.339-.805l-35.901-85.255,4.569-19.076,3.344-13.974c9.591,17.424,31.878,22.14,47.117,25.763,5.051,1.188,10.108-1.943,11.296-6.994,1.188-5.051-1.943-10.108-6.994-11.296-11.472-1.392-22.38-5.765-31.638-12.682-3.628-3.641-6.363-8.073-7.993-12.948-2.198-6.128-3.224-12.882-5.182-18.929h0c-4.103-10.577-11.496-10.524-20.661-10.55l.04-.08Zm-30.292,84.443l-9.098,45.119-20.821,34.795c-3.996,6.247-2.171,14.551,4.076,18.547,6.247,3.996,14.551,2.171,18.547-4.076,.143-.224,.279-.452,.409-.684l22.646-37.859c1.207-2.015,1.864-4.312,1.905-6.661v-7.087l-17.717-42.108,.053,.013Z"
|
|
58931
|
-
}
|
|
58932
|
-
)
|
|
58933
|
-
] });
|
|
58934
|
-
}
|
|
58935
58819
|
function pan({ height, width, fill, className }) {
|
|
58936
58820
|
return /* @__PURE__ */ jsxRuntimeExports.jsxs("svg", { className, height, width, viewBox: "0 0 256 256", children: [
|
|
58937
58821
|
/* @__PURE__ */ jsxRuntimeExports.jsx("path", { fill: "none", d: "M0 0h256v256H0z" }),
|
|
@@ -59286,43 +59170,6 @@ function ghostDead({ height, width, fill, className }) {
|
|
|
59286
59170
|
}
|
|
59287
59171
|
) }) });
|
|
59288
59172
|
}
|
|
59289
|
-
const icons = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
59290
|
-
__proto__: null,
|
|
59291
|
-
arrowLeft,
|
|
59292
|
-
camera,
|
|
59293
|
-
checkmark,
|
|
59294
|
-
close,
|
|
59295
|
-
collapse,
|
|
59296
|
-
frameRect,
|
|
59297
|
-
frameSelection,
|
|
59298
|
-
fullArrowLeft,
|
|
59299
|
-
fullsScreen,
|
|
59300
|
-
ghost,
|
|
59301
|
-
ghostDead,
|
|
59302
|
-
help,
|
|
59303
|
-
hidden,
|
|
59304
|
-
home,
|
|
59305
|
-
look,
|
|
59306
|
-
measure,
|
|
59307
|
-
minimize,
|
|
59308
|
-
more,
|
|
59309
|
-
orbit,
|
|
59310
|
-
orthographic,
|
|
59311
|
-
pan,
|
|
59312
|
-
perspective,
|
|
59313
|
-
sectionBox,
|
|
59314
|
-
sectionBoxClip,
|
|
59315
|
-
sectionBoxIgnore,
|
|
59316
|
-
sectionBoxReset,
|
|
59317
|
-
sectionBoxShrink,
|
|
59318
|
-
settings,
|
|
59319
|
-
toggleIsolation,
|
|
59320
|
-
trash,
|
|
59321
|
-
treeView,
|
|
59322
|
-
undo,
|
|
59323
|
-
visible,
|
|
59324
|
-
zoom
|
|
59325
|
-
}, Symbol.toStringTag, { value: "Module" }));
|
|
59326
59173
|
function isTrue(value) {
|
|
59327
59174
|
return value === true || value === "AlwaysTrue";
|
|
59328
59175
|
}
|
|
@@ -59467,7 +59314,7 @@ function AxesPanel(props) {
|
|
|
59467
59314
|
children: ortho ? /* @__PURE__ */ jsxRuntimeExports.jsx(orthographic, { height: 20, width: 20, fill: "currentColor" }) : /* @__PURE__ */ jsxRuntimeExports.jsx(perspective, { height: 20, width: 20, fill: "currentColor" })
|
|
59468
59315
|
}
|
|
59469
59316
|
);
|
|
59470
|
-
const
|
|
59317
|
+
const hidden = isTrue(props.settings.value.ui.axesPanel) ? "" : " vc-hidden";
|
|
59471
59318
|
const createBar2 = () => {
|
|
59472
59319
|
if (!anyUiAxesButton(props.settings.value)) {
|
|
59473
59320
|
return (
|
|
@@ -59487,7 +59334,7 @@ function AxesPanel(props) {
|
|
|
59487
59334
|
return /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
59488
59335
|
"div",
|
|
59489
59336
|
{
|
|
59490
|
-
className: "vim-axes-panel vc-pointer-events-none vc-absolute vc-overflow-hidden vc-z-20 vc-flex vc-flex-col vc-border vc-border-white vc-opacity-50 vc-shadow-lg vc-saturate-0 vc-transition-all hover:vc-opacity-100 hover:vc-saturate-100" +
|
|
59337
|
+
className: "vim-axes-panel vc-pointer-events-none vc-absolute vc-overflow-hidden vc-z-20 vc-flex vc-flex-col vc-border vc-border-white vc-opacity-50 vc-shadow-lg vc-saturate-0 vc-transition-all hover:vc-opacity-100 hover:vc-saturate-100" + hidden,
|
|
59491
59338
|
children: [
|
|
59492
59339
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { ref: gizmoDiv, className: "vim-axes-panel-gizmo vc-absolute vc-pointer-events-auto" }),
|
|
59493
59340
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "vim-axes-panel-bar vc-absolute vc-top-[75%] vc-bottom-0 vc-right-0 vc-left-0", children: createBar2() })
|
|
@@ -63440,7 +63287,7 @@ const _SubMenu = class _SubMenu extends AbstractMenu {
|
|
|
63440
63287
|
selected
|
|
63441
63288
|
} = this.props;
|
|
63442
63289
|
const {
|
|
63443
|
-
visible
|
|
63290
|
+
visible
|
|
63444
63291
|
} = this.state;
|
|
63445
63292
|
const menuProps = {
|
|
63446
63293
|
ref: this.menuRef,
|
|
@@ -63454,7 +63301,7 @@ const _SubMenu = class _SubMenu extends AbstractMenu {
|
|
|
63454
63301
|
const menuItemProps = {
|
|
63455
63302
|
className: cx(cssClasses.menuItem, attributes.className, {
|
|
63456
63303
|
[cx(cssClasses.menuItemDisabled, attributes.disabledClassName)]: disabled,
|
|
63457
|
-
[cx(cssClasses.menuItemActive, attributes.visibleClassName)]:
|
|
63304
|
+
[cx(cssClasses.menuItemActive, attributes.visibleClassName)]: visible,
|
|
63458
63305
|
[cx(cssClasses.menuItemSelected, attributes.selectedClassName)]: selected
|
|
63459
63306
|
}),
|
|
63460
63307
|
onMouseMove: this.props.onMouseMove,
|
|
@@ -63982,7 +63829,7 @@ function VimContextMenu(props) {
|
|
|
63982
63829
|
return [...props.viewer.selection.objects].filter((o) => o.type === "Object3D");
|
|
63983
63830
|
};
|
|
63984
63831
|
const viewer = props.viewer;
|
|
63985
|
-
const
|
|
63832
|
+
const camera = props.camera;
|
|
63986
63833
|
const [section, setSection] = useState({
|
|
63987
63834
|
visible: viewer.gizmos.section.visible,
|
|
63988
63835
|
clip: viewer.gizmos.section.clip
|
|
@@ -63992,7 +63839,7 @@ function VimContextMenu(props) {
|
|
|
63992
63839
|
};
|
|
63993
63840
|
const [clipping, setClipping] = useState(isClipping());
|
|
63994
63841
|
const [, setVersion] = useState(0);
|
|
63995
|
-
const
|
|
63842
|
+
const hidden = props.isolation.any();
|
|
63996
63843
|
useEffect(() => {
|
|
63997
63844
|
const subState = viewer.gizmos.section.onStateChanged.subscribe(() => {
|
|
63998
63845
|
setSection({
|
|
@@ -64014,11 +63861,11 @@ function VimContextMenu(props) {
|
|
|
64014
63861
|
e.stopPropagation();
|
|
64015
63862
|
};
|
|
64016
63863
|
const onCameraResetBtn = (e) => {
|
|
64017
|
-
|
|
63864
|
+
camera.reset();
|
|
64018
63865
|
e.stopPropagation();
|
|
64019
63866
|
};
|
|
64020
63867
|
const onCameraFrameBtn = (e) => {
|
|
64021
|
-
|
|
63868
|
+
camera.frameContext();
|
|
64022
63869
|
e.stopPropagation();
|
|
64023
63870
|
};
|
|
64024
63871
|
const onSelectionIsolateBtn = (e) => {
|
|
@@ -64120,7 +63967,7 @@ function VimContextMenu(props) {
|
|
|
64120
63967
|
},
|
|
64121
63968
|
{
|
|
64122
63969
|
id: contextMenuElementIds.dividerSelection,
|
|
64123
|
-
enabled: hasSelection ||
|
|
63970
|
+
enabled: hasSelection || hidden
|
|
64124
63971
|
},
|
|
64125
63972
|
{
|
|
64126
63973
|
id: contextMenuElementIds.isolateSelection,
|
|
@@ -64162,7 +64009,7 @@ function VimContextMenu(props) {
|
|
|
64162
64009
|
label: "Show All",
|
|
64163
64010
|
keyboard: "Esc",
|
|
64164
64011
|
action: onShowAllBtn,
|
|
64165
|
-
enabled:
|
|
64012
|
+
enabled: hidden
|
|
64166
64013
|
},
|
|
64167
64014
|
{ id: contextMenuElementIds.dividerMeasure, enabled: measuring },
|
|
64168
64015
|
{
|
|
@@ -64598,14 +64445,14 @@ class BimTreeData {
|
|
|
64598
64445
|
}
|
|
64599
64446
|
set3.add(node);
|
|
64600
64447
|
if (node.children.length > 0) {
|
|
64601
|
-
let
|
|
64602
|
-
let
|
|
64448
|
+
let hidden = true;
|
|
64449
|
+
let visible = true;
|
|
64603
64450
|
node.children.forEach((c) => {
|
|
64604
64451
|
const r = updateOne(this.nodes[c]);
|
|
64605
|
-
if (r !== "vim-hidden")
|
|
64606
|
-
if (r !== "vim-visible")
|
|
64452
|
+
if (r !== "vim-hidden") hidden = false;
|
|
64453
|
+
if (r !== "vim-visible") visible = false;
|
|
64607
64454
|
});
|
|
64608
|
-
node.visible =
|
|
64455
|
+
node.visible = visible ? "vim-visible" : hidden ? "vim-hidden" : "vim-undefined";
|
|
64609
64456
|
return node.visible;
|
|
64610
64457
|
} else {
|
|
64611
64458
|
const obj = vim.getObjectFromElement((_a2 = node.data) == null ? void 0 : _a2.index);
|
|
@@ -66525,7 +66372,7 @@ function MenuSettings(props) {
|
|
|
66525
66372
|
}
|
|
66526
66373
|
const MenuToastMemo = React__default.memo(MenuToast);
|
|
66527
66374
|
function MenuToast(props) {
|
|
66528
|
-
const [
|
|
66375
|
+
const [visible, setVisible] = useState();
|
|
66529
66376
|
const [speed, setSpeed] = useState(-1);
|
|
66530
66377
|
const speedRef = useRef(speed);
|
|
66531
66378
|
const toastTimeout = useRef();
|
|
@@ -66556,7 +66403,7 @@ function MenuToast(props) {
|
|
|
66556
66403
|
children: /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
66557
66404
|
"div",
|
|
66558
66405
|
{
|
|
66559
|
-
className: `vim-menu-toast vc-m-auto vc-flex vc-items-center vc-justify-between vc-rounded vc-bg-gray-warm vc-py-2 vc-px-5 vc-shadow-lg vc-transition-all ${
|
|
66406
|
+
className: `vim-menu-toast vc-m-auto vc-flex vc-items-center vc-justify-between vc-rounded vc-bg-gray-warm vc-py-2 vc-px-5 vc-shadow-lg vc-transition-all ${visible ? "vc-opacity-100" : "vc-opacity-0"}`,
|
|
66560
66407
|
children: [
|
|
66561
66408
|
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "vc-text-sm vc-font-semibold vc-uppercase vc-text-gray-light", children: "Speed:" }),
|
|
66562
66409
|
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { className: "vc-ml-1 vc-text-lg vc-font-bold vc-text-white", children: speed + 25 })
|
|
@@ -66665,7 +66512,7 @@ function addPerformanceCounter(parent) {
|
|
|
66665
66512
|
animate();
|
|
66666
66513
|
}
|
|
66667
66514
|
class ComponentInputs {
|
|
66668
|
-
constructor(viewer,
|
|
66515
|
+
constructor(viewer, camera, isolation, sideState) {
|
|
66669
66516
|
__publicField(this, "_viewer");
|
|
66670
66517
|
__publicField(this, "_camera");
|
|
66671
66518
|
__publicField(this, "_default");
|
|
@@ -66678,7 +66525,7 @@ class ComponentInputs {
|
|
|
66678
66525
|
);
|
|
66679
66526
|
});
|
|
66680
66527
|
this._viewer = viewer;
|
|
66681
|
-
this._camera =
|
|
66528
|
+
this._camera = camera;
|
|
66682
66529
|
this._default = new DefaultInputScheme(viewer);
|
|
66683
66530
|
this._isolation = isolation;
|
|
66684
66531
|
this._sideState = sideState;
|
|
@@ -66718,8 +66565,8 @@ class ComponentInputs {
|
|
|
66718
66565
|
case KEYS.KEY_V: {
|
|
66719
66566
|
if (this._viewer.selection.count === 0) return false;
|
|
66720
66567
|
const objs = [...this._viewer.selection.objects];
|
|
66721
|
-
const
|
|
66722
|
-
if (
|
|
66568
|
+
const visible = objs.findIndex((o) => o.visible) >= 0;
|
|
66569
|
+
if (visible) {
|
|
66723
66570
|
this._isolation.hide(
|
|
66724
66571
|
this._getSelection(),
|
|
66725
66572
|
"keyboard"
|
|
@@ -66835,7 +66682,7 @@ function applySettings(viewer, settings2) {
|
|
|
66835
66682
|
});
|
|
66836
66683
|
}
|
|
66837
66684
|
class Isolation {
|
|
66838
|
-
constructor(viewer,
|
|
66685
|
+
constructor(viewer, camera, settings2) {
|
|
66839
66686
|
__publicField(this, "_viewer");
|
|
66840
66687
|
__publicField(this, "_settings");
|
|
66841
66688
|
__publicField(this, "_isolation");
|
|
@@ -66844,7 +66691,7 @@ class Isolation {
|
|
|
66844
66691
|
__publicField(this, "_references", /* @__PURE__ */ new Map());
|
|
66845
66692
|
__publicField(this, "_onChanged", new distExports.SimpleEventDispatcher());
|
|
66846
66693
|
this._viewer = viewer;
|
|
66847
|
-
this._camera =
|
|
66694
|
+
this._camera = camera;
|
|
66848
66695
|
this.applySettings(settings2);
|
|
66849
66696
|
}
|
|
66850
66697
|
/** Signal dispatched when the isolation set changes. */
|
|
@@ -67775,7 +67622,7 @@ function clamp(value, min2, max2) {
|
|
|
67775
67622
|
return Math.min(Math.max(value, min2), max2);
|
|
67776
67623
|
}
|
|
67777
67624
|
class InputMouse extends InputHandler2 {
|
|
67778
|
-
constructor(canvas, rpc, selection,
|
|
67625
|
+
constructor(canvas, rpc, selection, camera) {
|
|
67779
67626
|
super();
|
|
67780
67627
|
__publicField(this, "_rpc");
|
|
67781
67628
|
__publicField(this, "_canvas");
|
|
@@ -67785,7 +67632,7 @@ class InputMouse extends InputHandler2 {
|
|
|
67785
67632
|
this._canvas = canvas;
|
|
67786
67633
|
this._rpc = rpc;
|
|
67787
67634
|
this._selection = selection;
|
|
67788
|
-
this._camera =
|
|
67635
|
+
this._camera = camera;
|
|
67789
67636
|
}
|
|
67790
67637
|
register() {
|
|
67791
67638
|
this.reg(this._canvas, "pointerdown", (e) => {
|
|
@@ -69652,7 +69499,7 @@ const serverKeys = /* @__PURE__ */ new Set([
|
|
|
69652
69499
|
"Shift"
|
|
69653
69500
|
]);
|
|
69654
69501
|
class InputKeyboard extends InputHandler2 {
|
|
69655
|
-
constructor(rpc, selection,
|
|
69502
|
+
constructor(rpc, selection, camera, inputs) {
|
|
69656
69503
|
super();
|
|
69657
69504
|
__publicField(this, "_rpc");
|
|
69658
69505
|
__publicField(this, "_selection");
|
|
@@ -69660,7 +69507,7 @@ class InputKeyboard extends InputHandler2 {
|
|
|
69660
69507
|
__publicField(this, "_inputs");
|
|
69661
69508
|
this._rpc = rpc;
|
|
69662
69509
|
this._selection = selection;
|
|
69663
|
-
this._camera =
|
|
69510
|
+
this._camera = camera;
|
|
69664
69511
|
this._inputs = inputs;
|
|
69665
69512
|
}
|
|
69666
69513
|
register() {
|
|
@@ -69716,7 +69563,7 @@ class InputKeyboard extends InputHandler2 {
|
|
|
69716
69563
|
}
|
|
69717
69564
|
}
|
|
69718
69565
|
class Inputs extends InputHandler2 {
|
|
69719
|
-
constructor(canvas, rpc, selection,
|
|
69566
|
+
constructor(canvas, rpc, selection, camera, renderer) {
|
|
69720
69567
|
super();
|
|
69721
69568
|
__publicField(this, "_rpc");
|
|
69722
69569
|
__publicField(this, "_canvas");
|
|
@@ -69729,9 +69576,9 @@ class Inputs extends InputHandler2 {
|
|
|
69729
69576
|
this._canvas = canvas;
|
|
69730
69577
|
this._rpc = rpc;
|
|
69731
69578
|
this._renderer = renderer;
|
|
69732
|
-
this._inputsMouse = new InputMouse(this._canvas, this._rpc, selection,
|
|
69579
|
+
this._inputsMouse = new InputMouse(this._canvas, this._rpc, selection, camera);
|
|
69733
69580
|
this._inputsTouch = new InputTouch(this._canvas, this._rpc);
|
|
69734
|
-
this._keyboard = new InputKeyboard(this._rpc, selection,
|
|
69581
|
+
this._keyboard = new InputKeyboard(this._rpc, selection, camera, this);
|
|
69735
69582
|
this.register();
|
|
69736
69583
|
}
|
|
69737
69584
|
onConnect() {
|
|
@@ -72448,6 +72295,11 @@ async function updateProgress(request2, modal) {
|
|
|
72448
72295
|
modal.loading({ message: "Loading File...", progress });
|
|
72449
72296
|
}
|
|
72450
72297
|
}
|
|
72298
|
+
const index$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
72299
|
+
__proto__: null,
|
|
72300
|
+
UltraComponent,
|
|
72301
|
+
createUltraComponent
|
|
72302
|
+
}, Symbol.toStringTag, { value: "Module" }));
|
|
72451
72303
|
class ComponentLoader {
|
|
72452
72304
|
constructor(viewer, modal) {
|
|
72453
72305
|
__publicField(this, "_viewer");
|
|
@@ -72576,10 +72428,10 @@ function VimComponent(props) {
|
|
|
72576
72428
|
var _a2;
|
|
72577
72429
|
const settings2 = useSettings(props.viewer, props.settings ?? {});
|
|
72578
72430
|
const modal = useModal(settings2.value.capacity.canFollowUrl);
|
|
72579
|
-
const
|
|
72431
|
+
const camera = useMemo(() => new ComponentCamera(props.viewer), []);
|
|
72580
72432
|
const cursor = useMemo(() => new CursorManager(props.viewer), []);
|
|
72581
72433
|
const loader = useRef(new ComponentLoader(props.viewer, modal));
|
|
72582
|
-
const [isolation] = useState(() => new Isolation(props.viewer,
|
|
72434
|
+
const [isolation] = useState(() => new Isolation(props.viewer, camera, settings2.value));
|
|
72583
72435
|
useEffect(() => isolation.applySettings(settings2.value), [settings2]);
|
|
72584
72436
|
const side = useSideState(
|
|
72585
72437
|
isTrue(settings2.value.ui.bimTreePanel) || isTrue(settings2.value.ui.bimInfoPanel),
|
|
@@ -72603,7 +72455,7 @@ function VimComponent(props) {
|
|
|
72603
72455
|
props.viewer.viewport.canvas.tabIndex = 0;
|
|
72604
72456
|
props.viewer.inputs.scheme = new ComponentInputs(
|
|
72605
72457
|
props.viewer,
|
|
72606
|
-
|
|
72458
|
+
camera,
|
|
72607
72459
|
isolation,
|
|
72608
72460
|
side
|
|
72609
72461
|
);
|
|
@@ -72613,7 +72465,7 @@ function VimComponent(props) {
|
|
|
72613
72465
|
viewer: props.viewer,
|
|
72614
72466
|
loader: loader.current,
|
|
72615
72467
|
isolation,
|
|
72616
|
-
camera
|
|
72468
|
+
camera,
|
|
72617
72469
|
settings: settings2,
|
|
72618
72470
|
contextMenu: {
|
|
72619
72471
|
customize: (v) => setcontextMenu(() => v)
|
|
@@ -72636,7 +72488,7 @@ function VimComponent(props) {
|
|
|
72636
72488
|
OptionalBimPanel,
|
|
72637
72489
|
{
|
|
72638
72490
|
viewer: props.viewer,
|
|
72639
|
-
camera
|
|
72491
|
+
camera,
|
|
72640
72492
|
viewerState,
|
|
72641
72493
|
visible: side.getContent() === "bim",
|
|
72642
72494
|
isolation,
|
|
@@ -72674,7 +72526,7 @@ function VimComponent(props) {
|
|
|
72674
72526
|
ControlBar,
|
|
72675
72527
|
{
|
|
72676
72528
|
viewer: props.viewer,
|
|
72677
|
-
camera
|
|
72529
|
+
camera,
|
|
72678
72530
|
modal,
|
|
72679
72531
|
side,
|
|
72680
72532
|
isolation,
|
|
@@ -72687,7 +72539,7 @@ function VimComponent(props) {
|
|
|
72687
72539
|
AxesPanelMemo,
|
|
72688
72540
|
{
|
|
72689
72541
|
viewer: props.viewer,
|
|
72690
|
-
camera
|
|
72542
|
+
camera,
|
|
72691
72543
|
settings: settings2
|
|
72692
72544
|
}
|
|
72693
72545
|
)
|
|
@@ -72697,7 +72549,7 @@ function VimComponent(props) {
|
|
|
72697
72549
|
VimContextMenuMemo,
|
|
72698
72550
|
{
|
|
72699
72551
|
viewer: props.viewer,
|
|
72700
|
-
camera
|
|
72552
|
+
camera,
|
|
72701
72553
|
modal,
|
|
72702
72554
|
isolation,
|
|
72703
72555
|
selection: viewerState.selection,
|
|
@@ -72721,30 +72573,23 @@ function VimComponent(props) {
|
|
|
72721
72573
|
const webglComponentRef = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
72722
72574
|
__proto__: null
|
|
72723
72575
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
72724
|
-
const index
|
|
72576
|
+
const index = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
72725
72577
|
__proto__: null,
|
|
72726
72578
|
BimInfo: bimInfoData,
|
|
72727
72579
|
ContextMenu: contextMenu,
|
|
72728
72580
|
ControlBar: controlBar,
|
|
72729
|
-
Icons: icons,
|
|
72730
72581
|
LoadRequest: LoadRequest$1,
|
|
72731
72582
|
Refs: webglComponentRef,
|
|
72732
72583
|
VimComponent,
|
|
72733
|
-
createContainer,
|
|
72734
72584
|
createWebglComponent,
|
|
72735
72585
|
defaultSettings,
|
|
72736
72586
|
getLocalSettings
|
|
72737
72587
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
72738
|
-
const index = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
72739
|
-
__proto__: null,
|
|
72740
|
-
UltraComponent,
|
|
72741
|
-
createUltraComponent
|
|
72742
|
-
}, Symbol.toStringTag, { value: "Module" }));
|
|
72743
72588
|
export {
|
|
72744
72589
|
three_module as THREE,
|
|
72745
|
-
index as UltraReact,
|
|
72590
|
+
index$1 as UltraReact,
|
|
72746
72591
|
index$2 as UltraViewer,
|
|
72747
|
-
index
|
|
72592
|
+
index as WebglReact,
|
|
72748
72593
|
index$3 as WebglViewer
|
|
72749
72594
|
};
|
|
72750
72595
|
//# sourceMappingURL=vim-web.js.map
|