@shapediver/viewer.rendering-engine.rendering-engine-threejs 3.7.3 → 3.7.5
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/dist/managers/environmentGeometry/ContactShadow.d.ts +42 -0
- package/dist/managers/environmentGeometry/ContactShadow.d.ts.map +1 -0
- package/dist/managers/environmentGeometry/ContactShadow.js +232 -0
- package/dist/managers/environmentGeometry/ContactShadow.js.map +1 -0
- package/dist/managers/environmentGeometry/Grid.d.ts +21 -0
- package/dist/managers/environmentGeometry/Grid.d.ts.map +1 -0
- package/dist/managers/environmentGeometry/Grid.js +86 -0
- package/dist/managers/environmentGeometry/Grid.js.map +1 -0
- package/dist/managers/environmentGeometry/GroundPlane.d.ts +22 -0
- package/dist/managers/environmentGeometry/GroundPlane.d.ts.map +1 -0
- package/dist/managers/environmentGeometry/GroundPlane.js +88 -0
- package/dist/managers/environmentGeometry/GroundPlane.js.map +1 -0
- package/dist/managers/environmentGeometry/GroundPlaneShadow.d.ts +22 -0
- package/dist/managers/environmentGeometry/GroundPlaneShadow.d.ts.map +1 -0
- package/dist/managers/environmentGeometry/GroundPlaneShadow.js +84 -0
- package/dist/managers/environmentGeometry/GroundPlaneShadow.js.map +1 -0
- package/dist/managers/environmentGeometry/GroundProjection.d.ts +19 -0
- package/dist/managers/environmentGeometry/GroundProjection.d.ts.map +1 -0
- package/dist/managers/environmentGeometry/GroundProjection.js +66 -0
- package/dist/managers/environmentGeometry/GroundProjection.js.map +1 -0
- package/dist/managers/environmentGeometry/IEnvironmentGeometry.d.ts +9 -0
- package/dist/managers/environmentGeometry/IEnvironmentGeometry.d.ts.map +1 -0
- package/dist/managers/environmentGeometry/IEnvironmentGeometry.js +3 -0
- package/dist/managers/environmentGeometry/IEnvironmentGeometry.js.map +1 -0
- package/dist/managers/environmentGeometry/SkyBottom.d.ts +1 -0
- package/dist/managers/environmentGeometry/SkyBottom.d.ts.map +1 -0
- package/dist/managers/environmentGeometry/SkyBottom.js +2 -0
- package/dist/managers/environmentGeometry/SkyBottom.js.map +1 -0
- package/package.json +17 -17
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { vec3 } from 'gl-matrix';
|
|
2
|
+
import { SDObject } from '../../objects/SDObject';
|
|
3
|
+
import { RenderingEngine } from '../../RenderingEngine';
|
|
4
|
+
import { IEnvironmentGeometry } from './IEnvironmentGeometry';
|
|
5
|
+
export declare class ContactShadow implements IEnvironmentGeometry {
|
|
6
|
+
private readonly _renderingEngine;
|
|
7
|
+
private readonly _parent;
|
|
8
|
+
private _blur;
|
|
9
|
+
private _blurPlane;
|
|
10
|
+
private _color;
|
|
11
|
+
private _contactShadowObject;
|
|
12
|
+
private _darkness;
|
|
13
|
+
private _depthMaterial;
|
|
14
|
+
private _fillPlane;
|
|
15
|
+
private _height;
|
|
16
|
+
private _horizontalBlurMaterial;
|
|
17
|
+
private _opacity;
|
|
18
|
+
private _plane;
|
|
19
|
+
private _renderTarget;
|
|
20
|
+
private _renderTargetBlur;
|
|
21
|
+
private _shadowCamera;
|
|
22
|
+
private _shadowGroup;
|
|
23
|
+
private _verticalBlurMaterial;
|
|
24
|
+
private _currentGridExtents;
|
|
25
|
+
constructor(_renderingEngine: RenderingEngine, _parent: SDObject);
|
|
26
|
+
get blur(): number;
|
|
27
|
+
set blur(value: number);
|
|
28
|
+
get darkness(): number;
|
|
29
|
+
set darkness(value: number);
|
|
30
|
+
get height(): number;
|
|
31
|
+
set height(value: number);
|
|
32
|
+
get opacity(): number;
|
|
33
|
+
set opacity(value: number);
|
|
34
|
+
get visible(): boolean;
|
|
35
|
+
set visible(value: boolean);
|
|
36
|
+
changeSceneExtents(position: vec3, divisions: number, gridExtents: number): void;
|
|
37
|
+
render(): void;
|
|
38
|
+
updatePosition(position: vec3): void;
|
|
39
|
+
private blurShadow;
|
|
40
|
+
private createContactShadow;
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=ContactShadow.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ContactShadow.d.ts","sourceRoot":"","sources":["../../../src/managers/environmentGeometry/ContactShadow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAK9D,qBAAa,aAAc,YAAW,oBAAoB;IAyB1C,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IAAmB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAtBxF,OAAO,CAAC,KAAK,CAAO;IACpB,OAAO,CAAC,UAAU,CAA8F;IAChH,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,oBAAoB,CAAS;IACrC,OAAO,CAAC,SAAS,CAAe;IAChC,OAAO,CAAC,cAAc,CAA2B;IACjD,OAAO,CAAC,UAAU,CAAoF;IACtG,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,uBAAuB,CAAwB;IACvD,OAAO,CAAC,QAAQ,CAAa;IAC7B,OAAO,CAAC,MAAM,CAAoF;IAClG,OAAO,CAAC,aAAa,CAA0C;IAC/D,OAAO,CAAC,iBAAiB,CAA0C;IACnE,OAAO,CAAC,aAAa,CAA4B;IACjD,OAAO,CAAC,YAAY,CAAuC;IAC3D,OAAO,CAAC,qBAAqB,CAAwB;IACrD,OAAO,CAAC,mBAAmB,CAAa;gBAMX,gBAAgB,EAAE,eAAe,EAAmB,OAAO,EAAE,QAAQ;IAWlG,IAAW,IAAI,IAAI,MAAM,CAExB;IAED,IAAW,IAAI,CAAC,KAAK,EAAE,MAAM,EAE5B;IAED,IAAW,QAAQ,IAAI,MAAM,CAE5B;IAED,IAAW,QAAQ,CAAC,KAAK,EAAE,MAAM,EAGhC;IAED,IAAW,MAAM,IAAI,MAAM,CAE1B;IAED,IAAW,MAAM,CAAC,KAAK,EAAE,MAAM,EAO9B;IAED,IAAW,OAAO,IAAI,MAAM,CAE3B;IAED,IAAW,OAAO,CAAC,KAAK,EAAE,MAAM,EAG/B;IAED,IAAW,OAAO,IAAI,OAAO,CAE5B;IAED,IAAW,OAAO,CAAC,KAAK,EAAE,OAAO,EAEhC;IAMM,kBAAkB,CAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI;IA0BhF,MAAM;IAgDN,cAAc,CAAC,QAAQ,EAAE,IAAI,GAAG,IAAI;IAQ3C,OAAO,CAAC,UAAU;IAsBlB,OAAO,CAAC,mBAAmB;CAgF9B"}
|
|
@@ -0,0 +1,232 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.ContactShadow = void 0;
|
|
27
|
+
const SDData_1 = require("../../objects/SDData");
|
|
28
|
+
const THREE = __importStar(require("three"));
|
|
29
|
+
const HorizontalBlurShader_js_1 = require("three/examples/jsm/shaders/HorizontalBlurShader.js");
|
|
30
|
+
const VerticalBlurShader_js_1 = require("three/examples/jsm/shaders/VerticalBlurShader.js");
|
|
31
|
+
class ContactShadow {
|
|
32
|
+
// #endregion Properties (17)
|
|
33
|
+
// #region Constructors (1)
|
|
34
|
+
constructor(_renderingEngine, _parent) {
|
|
35
|
+
this._renderingEngine = _renderingEngine;
|
|
36
|
+
this._parent = _parent;
|
|
37
|
+
// #region Properties (17)
|
|
38
|
+
this._blur = 1.5;
|
|
39
|
+
this._color = '#ffffff';
|
|
40
|
+
this._darkness = 2.5;
|
|
41
|
+
this._height = 0.25;
|
|
42
|
+
this._opacity = 1;
|
|
43
|
+
this._currentGridExtents = 1;
|
|
44
|
+
this._contactShadowObject = new SDData_1.SDData('contactShadow', '');
|
|
45
|
+
this._contactShadowObject.visible = false;
|
|
46
|
+
this._parent.add(this._contactShadowObject);
|
|
47
|
+
this.createContactShadow();
|
|
48
|
+
}
|
|
49
|
+
// #endregion Constructors (1)
|
|
50
|
+
// #region Public Getters And Setters (10)
|
|
51
|
+
get blur() {
|
|
52
|
+
return this._blur;
|
|
53
|
+
}
|
|
54
|
+
set blur(value) {
|
|
55
|
+
this._blur = value;
|
|
56
|
+
}
|
|
57
|
+
get darkness() {
|
|
58
|
+
return this._darkness;
|
|
59
|
+
}
|
|
60
|
+
set darkness(value) {
|
|
61
|
+
this._darkness = value;
|
|
62
|
+
this._depthMaterial.userData.darkness.value = value;
|
|
63
|
+
}
|
|
64
|
+
get height() {
|
|
65
|
+
return this._height;
|
|
66
|
+
}
|
|
67
|
+
set height(value) {
|
|
68
|
+
this._height = value;
|
|
69
|
+
this._shadowCamera.far = this._currentGridExtents * value;
|
|
70
|
+
this._shadowCamera.updateProjectionMatrix();
|
|
71
|
+
// const cameraHelper = new THREE.CameraHelper(this._shadowCamera);
|
|
72
|
+
// this._parent.add(cameraHelper);
|
|
73
|
+
this._renderingEngine.renderingManager.updateShadowMap();
|
|
74
|
+
}
|
|
75
|
+
get opacity() {
|
|
76
|
+
return this._opacity;
|
|
77
|
+
}
|
|
78
|
+
set opacity(value) {
|
|
79
|
+
this._opacity = value;
|
|
80
|
+
this._plane.material.opacity = value;
|
|
81
|
+
}
|
|
82
|
+
get visible() {
|
|
83
|
+
return this._contactShadowObject.visible;
|
|
84
|
+
}
|
|
85
|
+
set visible(value) {
|
|
86
|
+
this._contactShadowObject.visible = value;
|
|
87
|
+
}
|
|
88
|
+
// #endregion Public Getters And Setters (10)
|
|
89
|
+
// #region Public Methods (3)
|
|
90
|
+
changeSceneExtents(position, divisions, gridExtents) {
|
|
91
|
+
this._currentGridExtents = gridExtents;
|
|
92
|
+
const widthAndHeight = 2 * gridExtents;
|
|
93
|
+
const planeGeometry = new THREE.PlaneGeometry(widthAndHeight, widthAndHeight);
|
|
94
|
+
this._plane.geometry.dispose();
|
|
95
|
+
this._plane.geometry = planeGeometry;
|
|
96
|
+
this._fillPlane.geometry.dispose();
|
|
97
|
+
this._fillPlane.geometry = planeGeometry;
|
|
98
|
+
this._blurPlane.geometry.dispose();
|
|
99
|
+
this._blurPlane.geometry = planeGeometry;
|
|
100
|
+
this._shadowCamera = new THREE.OrthographicCamera(-widthAndHeight / 2, widthAndHeight / 2, widthAndHeight / 2, -widthAndHeight / 2, 0, gridExtents * this._height);
|
|
101
|
+
this._shadowCamera.up.set(0, 1, 0);
|
|
102
|
+
this._shadowCamera.position.set(0, 0, -gridExtents / 50);
|
|
103
|
+
this._shadowCamera.lookAt(0, 0, 1);
|
|
104
|
+
this._shadowCamera.updateProjectionMatrix();
|
|
105
|
+
this._shadowGroup.add(this._shadowCamera);
|
|
106
|
+
// const cameraHelper = new THREE.CameraHelper(this._shadowCamera);
|
|
107
|
+
// this._parent.add(cameraHelper);
|
|
108
|
+
this._contactShadowObject.position.set(position[0], position[1], position[2]);
|
|
109
|
+
this._renderingEngine.renderingManager.updateShadowMap();
|
|
110
|
+
}
|
|
111
|
+
render() {
|
|
112
|
+
const initialGridVisibility = this._renderingEngine.gridVisibility;
|
|
113
|
+
this._renderingEngine.gridVisibility = false;
|
|
114
|
+
const initialGroundPlaneVisibility = this._renderingEngine.groundPlaneVisibility;
|
|
115
|
+
this._renderingEngine.groundPlaneVisibility = false;
|
|
116
|
+
const initialGroundPlaneShadowVisibility = this._renderingEngine.groundPlaneShadowVisibility;
|
|
117
|
+
this._renderingEngine.groundPlaneShadowVisibility = false;
|
|
118
|
+
this._blurPlane.visible = false;
|
|
119
|
+
this._fillPlane.visible = false;
|
|
120
|
+
this._plane.visible = false;
|
|
121
|
+
// remove the background
|
|
122
|
+
const initialBackground = this._renderingEngine.scene.background;
|
|
123
|
+
this._renderingEngine.scene.background = null;
|
|
124
|
+
// force the depthMaterial to everything
|
|
125
|
+
this._renderingEngine.scene.overrideMaterial = this._depthMaterial;
|
|
126
|
+
// set renderer clear alpha
|
|
127
|
+
const initialClearAlpha = this._renderingEngine.renderer.getClearAlpha();
|
|
128
|
+
this._renderingEngine.renderer.setClearAlpha(0);
|
|
129
|
+
// render to the render target to get the depths
|
|
130
|
+
this._renderingEngine.renderer.setRenderTarget(this._renderTarget);
|
|
131
|
+
this._renderingEngine.renderer.render(this._renderingEngine.scene, this._shadowCamera);
|
|
132
|
+
// and reset the override material
|
|
133
|
+
this._renderingEngine.scene.overrideMaterial = null;
|
|
134
|
+
this.blurShadow(this._blur);
|
|
135
|
+
// // a second pass to reduce the artifacts
|
|
136
|
+
// // (0.4 is the minimum blur amount so that the artifacts are gone)
|
|
137
|
+
this.blurShadow(this._blur * 0.4);
|
|
138
|
+
// reset and render the normal scene
|
|
139
|
+
this._renderingEngine.renderer.setRenderTarget(null);
|
|
140
|
+
this._renderingEngine.renderer.setClearAlpha(initialClearAlpha);
|
|
141
|
+
this._renderingEngine.scene.background = initialBackground;
|
|
142
|
+
this._plane.visible = true;
|
|
143
|
+
this._renderingEngine.gridVisibility = initialGridVisibility;
|
|
144
|
+
this._renderingEngine.groundPlaneVisibility = initialGroundPlaneVisibility;
|
|
145
|
+
this._renderingEngine.groundPlaneShadowVisibility = initialGroundPlaneShadowVisibility;
|
|
146
|
+
}
|
|
147
|
+
updatePosition(position) {
|
|
148
|
+
this._contactShadowObject.position.set(position[0], position[1], position[2]);
|
|
149
|
+
}
|
|
150
|
+
// #endregion Public Methods (3)
|
|
151
|
+
// #region Private Methods (2)
|
|
152
|
+
blurShadow(amount) {
|
|
153
|
+
this._blurPlane.visible = true;
|
|
154
|
+
// blur horizontally and draw in the renderTargetBlur
|
|
155
|
+
this._blurPlane.material = this._horizontalBlurMaterial;
|
|
156
|
+
this._blurPlane.material.uniforms.tDiffuse.value = this._renderTarget.texture;
|
|
157
|
+
this._horizontalBlurMaterial.uniforms.h.value = amount * 1 / 256;
|
|
158
|
+
this._renderingEngine.renderer.setRenderTarget(this._renderTargetBlur);
|
|
159
|
+
this._renderingEngine.renderer.render(this._blurPlane, this._shadowCamera);
|
|
160
|
+
// blur vertically and draw in the main renderTarget
|
|
161
|
+
this._blurPlane.material = this._verticalBlurMaterial;
|
|
162
|
+
this._blurPlane.material.uniforms.tDiffuse.value = this._renderTargetBlur.texture;
|
|
163
|
+
this._verticalBlurMaterial.uniforms.v.value = amount * 1 / 256;
|
|
164
|
+
this._renderingEngine.renderer.setRenderTarget(this._renderTarget);
|
|
165
|
+
this._renderingEngine.renderer.render(this._blurPlane, this._shadowCamera);
|
|
166
|
+
this._blurPlane.visible = false;
|
|
167
|
+
}
|
|
168
|
+
createContactShadow() {
|
|
169
|
+
const widthAndHeight = 1;
|
|
170
|
+
// the container, if you need to move the plane just move this
|
|
171
|
+
this._shadowGroup = new THREE.Group();
|
|
172
|
+
this._contactShadowObject.add(this._shadowGroup);
|
|
173
|
+
// the render target that will show the shadows in the plane texture
|
|
174
|
+
this._renderTarget = new THREE.WebGLRenderTarget(512, 512);
|
|
175
|
+
this._renderTarget.texture.generateMipmaps = false;
|
|
176
|
+
// the render target that we will use to blur the first render target
|
|
177
|
+
this._renderTargetBlur = new THREE.WebGLRenderTarget(512, 512);
|
|
178
|
+
this._renderTargetBlur.texture.generateMipmaps = false;
|
|
179
|
+
// make a plane and make it face up
|
|
180
|
+
const planeGeometry = new THREE.PlaneGeometry(widthAndHeight, widthAndHeight);
|
|
181
|
+
const planeMaterial = new THREE.MeshBasicMaterial({
|
|
182
|
+
map: this._renderTarget.texture,
|
|
183
|
+
opacity: this._opacity,
|
|
184
|
+
transparent: true,
|
|
185
|
+
depthWrite: false,
|
|
186
|
+
});
|
|
187
|
+
this._plane = new THREE.Mesh(planeGeometry, planeMaterial);
|
|
188
|
+
// make sure it's rendered after the fillPlane
|
|
189
|
+
this._plane.renderOrder = 1;
|
|
190
|
+
this._shadowGroup.add(this._plane);
|
|
191
|
+
// // the y from the texture is flipped!
|
|
192
|
+
// this._plane.rotateZ(-Math.PI/2);
|
|
193
|
+
this._plane.scale.x = -1;
|
|
194
|
+
// this._plane.scale.y = -1;
|
|
195
|
+
// the plane onto which to blur the texture
|
|
196
|
+
this._blurPlane = new THREE.Mesh(planeGeometry);
|
|
197
|
+
this._blurPlane.rotateX(Math.PI);
|
|
198
|
+
this._blurPlane.visible = false;
|
|
199
|
+
this._shadowGroup.add(this._blurPlane);
|
|
200
|
+
// the plane with the color of the ground
|
|
201
|
+
const fillPlaneMaterial = new THREE.MeshBasicMaterial({
|
|
202
|
+
color: this._color,
|
|
203
|
+
opacity: 0,
|
|
204
|
+
transparent: true,
|
|
205
|
+
depthWrite: false,
|
|
206
|
+
});
|
|
207
|
+
this._fillPlane = new THREE.Mesh(planeGeometry, fillPlaneMaterial);
|
|
208
|
+
this._shadowGroup.add(this._fillPlane);
|
|
209
|
+
// the camera to render the depth material from
|
|
210
|
+
this._shadowCamera = new THREE.OrthographicCamera(-widthAndHeight / 2, widthAndHeight / 2, widthAndHeight / 2, -widthAndHeight / 2, 0, 1);
|
|
211
|
+
this._shadowGroup.add(this._shadowCamera);
|
|
212
|
+
// like MeshDepthMaterial, but goes from black to transparent
|
|
213
|
+
this._depthMaterial = new THREE.MeshDepthMaterial();
|
|
214
|
+
this._depthMaterial.side = THREE.DoubleSide;
|
|
215
|
+
this._depthMaterial.userData.darkness = { value: this._darkness };
|
|
216
|
+
this._depthMaterial.onBeforeCompile = (shader) => {
|
|
217
|
+
shader.uniforms.darkness = this._depthMaterial.userData.darkness;
|
|
218
|
+
shader.fragmentShader = /* glsl */ `
|
|
219
|
+
uniform float darkness;
|
|
220
|
+
${shader.fragmentShader.replace('gl_FragColor = vec4( vec3( 1.0 - fragCoordZ ), opacity );', 'gl_FragColor = vec4( vec3( 0.0 ), ( 1.0 - fragCoordZ ) * darkness );')}
|
|
221
|
+
`;
|
|
222
|
+
};
|
|
223
|
+
this._depthMaterial.depthTest = false;
|
|
224
|
+
this._depthMaterial.depthWrite = false;
|
|
225
|
+
this._horizontalBlurMaterial = new THREE.ShaderMaterial(HorizontalBlurShader_js_1.HorizontalBlurShader);
|
|
226
|
+
this._horizontalBlurMaterial.depthTest = false;
|
|
227
|
+
this._verticalBlurMaterial = new THREE.ShaderMaterial(VerticalBlurShader_js_1.VerticalBlurShader);
|
|
228
|
+
this._verticalBlurMaterial.depthTest = false;
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
exports.ContactShadow = ContactShadow;
|
|
232
|
+
//# sourceMappingURL=ContactShadow.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ContactShadow.js","sourceRoot":"","sources":["../../../src/managers/environmentGeometry/ContactShadow.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Color } from '@shapediver/viewer.shared.types';
|
|
2
|
+
import { RenderingEngine } from '../..';
|
|
3
|
+
import { vec3 } from 'gl-matrix';
|
|
4
|
+
import { SDObject } from '../../objects/SDObject';
|
|
5
|
+
import { IEnvironmentGeometry } from './IEnvironmentGeometry';
|
|
6
|
+
export declare class Grid implements IEnvironmentGeometry {
|
|
7
|
+
private readonly _renderingEngine;
|
|
8
|
+
private readonly _parent;
|
|
9
|
+
private readonly _converter;
|
|
10
|
+
private _grid;
|
|
11
|
+
private _color;
|
|
12
|
+
private _gridObject;
|
|
13
|
+
constructor(_renderingEngine: RenderingEngine, _parent: SDObject);
|
|
14
|
+
get color(): Color;
|
|
15
|
+
set color(value: Color);
|
|
16
|
+
get visible(): boolean;
|
|
17
|
+
set visible(value: boolean);
|
|
18
|
+
changeSceneExtents(position: vec3, divisions: number, gridExtents: number): void;
|
|
19
|
+
updatePosition(position: vec3): void;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=Grid.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Grid.d.ts","sourceRoot":"","sources":["../../../src/managers/environmentGeometry/Grid.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,qBAAa,IAAK,YAAW,oBAAoB;IAajC,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IAAmB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAVxF,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAiC;IAE5D,OAAO,CAAC,KAAK,CAAoB;IACjC,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,WAAW,CAAU;gBAMA,gBAAgB,EAAE,eAAe,EAAmB,OAAO,EAAE,QAAQ;IAgBlG,IAAW,KAAK,IAAI,KAAK,CAExB;IAED,IAAW,KAAK,CAAC,KAAK,EAAE,KAAK,EAM5B;IAED,IAAW,OAAO,IAAI,OAAO,CAE5B;IAED,IAAW,OAAO,CAAC,KAAK,EAAE,OAAO,EAEhC;IAMM,kBAAkB,CAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI;IAahF,cAAc,CAAC,QAAQ,EAAE,IAAI,GAAG,IAAI;CAK9C"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.Grid = void 0;
|
|
27
|
+
const SDData_1 = require("../../objects/SDData");
|
|
28
|
+
const THREE = __importStar(require("three"));
|
|
29
|
+
const viewer_shared_services_1 = require("@shapediver/viewer.shared.services");
|
|
30
|
+
class Grid {
|
|
31
|
+
// #endregion Properties (5)
|
|
32
|
+
// #region Constructors (1)
|
|
33
|
+
constructor(_renderingEngine, _parent) {
|
|
34
|
+
this._renderingEngine = _renderingEngine;
|
|
35
|
+
this._parent = _parent;
|
|
36
|
+
// #region Properties (5)
|
|
37
|
+
this._converter = viewer_shared_services_1.Converter.instance;
|
|
38
|
+
this._color = '#44444426';
|
|
39
|
+
this._gridObject = new SDData_1.SDData('grid', '');
|
|
40
|
+
this._grid = new THREE.GridHelper();
|
|
41
|
+
this._grid.material.opacity = typeof this._color == 'string' && this._color.length <= 8 ? 0.15 : this._converter.toAlpha(this._color);
|
|
42
|
+
this._grid.material.transparent = this._grid.material.opacity !== 1;
|
|
43
|
+
this._grid.material.color = this._renderingEngine.createThreeJsColor(this._color);
|
|
44
|
+
this._grid.rotateX(Math.PI / 2);
|
|
45
|
+
this._grid.visible = false;
|
|
46
|
+
this._gridObject.add(this._grid);
|
|
47
|
+
this._parent.add(this._gridObject);
|
|
48
|
+
}
|
|
49
|
+
// #endregion Constructors (1)
|
|
50
|
+
// #region Public Getters And Setters (3)
|
|
51
|
+
get color() {
|
|
52
|
+
return this._color;
|
|
53
|
+
}
|
|
54
|
+
set color(value) {
|
|
55
|
+
this._color = value;
|
|
56
|
+
this._grid.material.opacity = typeof this._color == 'string' && this._color.length <= 8 ? 0.15 : this._converter.toAlpha(this._color);
|
|
57
|
+
this._grid.material.transparent = this._grid.material.opacity !== 1;
|
|
58
|
+
this._grid.material.color = this._renderingEngine.createThreeJsColor(this._color);
|
|
59
|
+
this._grid.material.needsUpdate = true;
|
|
60
|
+
}
|
|
61
|
+
get visible() {
|
|
62
|
+
return this._grid.visible;
|
|
63
|
+
}
|
|
64
|
+
set visible(value) {
|
|
65
|
+
this._grid.visible = value;
|
|
66
|
+
}
|
|
67
|
+
// #endregion Public Getters And Setters (3)
|
|
68
|
+
// #region Public Methods (3)
|
|
69
|
+
changeSceneExtents(position, divisions, gridExtents) {
|
|
70
|
+
this._gridObject.remove(this._grid);
|
|
71
|
+
this._grid = new THREE.GridHelper(2 * gridExtents, divisions);
|
|
72
|
+
this._grid.material.opacity = typeof this._color == 'string' && this._color.length <= 8 ? 0.15 : this._converter.toAlpha(this._color);
|
|
73
|
+
this._grid.material.transparent = this._grid.material.opacity !== 1;
|
|
74
|
+
this._grid.material.color = this._renderingEngine.createThreeJsColor(this._color);
|
|
75
|
+
this._grid.rotateX(Math.PI / 2);
|
|
76
|
+
this._grid.visible = this._renderingEngine.gridVisibility;
|
|
77
|
+
this._gridObject.add(this._grid);
|
|
78
|
+
this._grid.position.set(position[0], position[1], position[2]);
|
|
79
|
+
}
|
|
80
|
+
updatePosition(position) {
|
|
81
|
+
if (this._grid)
|
|
82
|
+
this._grid.position.set(position[0], position[1], position[2]);
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
exports.Grid = Grid;
|
|
86
|
+
//# sourceMappingURL=Grid.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Grid.js","sourceRoot":"","sources":["../../../src/managers/environmentGeometry/Grid.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Color } from '@shapediver/viewer.shared.types';
|
|
2
|
+
import { RenderingEngine } from '../..';
|
|
3
|
+
import { vec3 } from 'gl-matrix';
|
|
4
|
+
import { SDObject } from '../../objects/SDObject';
|
|
5
|
+
import { IEnvironmentGeometry } from './IEnvironmentGeometry';
|
|
6
|
+
export declare class GroundPlane implements IEnvironmentGeometry {
|
|
7
|
+
private readonly _renderingEngine;
|
|
8
|
+
private readonly _parent;
|
|
9
|
+
private readonly _converter;
|
|
10
|
+
private _color;
|
|
11
|
+
private _groundPlane;
|
|
12
|
+
private _groundPlaneObject;
|
|
13
|
+
constructor(_renderingEngine: RenderingEngine, _parent: SDObject);
|
|
14
|
+
get color(): Color;
|
|
15
|
+
set color(value: Color);
|
|
16
|
+
get visible(): boolean;
|
|
17
|
+
set visible(value: boolean);
|
|
18
|
+
changeSceneExtents(position: vec3, divisions: number, gridExtents: number): void;
|
|
19
|
+
updatePosition(position: vec3): void;
|
|
20
|
+
private assignGroundPlaneColor;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=GroundPlane.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GroundPlane.d.ts","sourceRoot":"","sources":["../../../src/managers/environmentGeometry/GroundPlane.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAuC,MAAM,iCAAiC,CAAC;AAC7F,OAAO,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,qBAAa,WAAY,YAAW,oBAAoB;IAaxC,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IAAmB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAVxF,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAiC;IAE5D,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,YAAY,CAAc;IAClC,OAAO,CAAC,kBAAkB,CAAU;gBAMP,gBAAgB,EAAE,eAAe,EAAmB,OAAO,EAAE,QAAQ;IAmBlG,IAAW,KAAK,IAAI,KAAK,CAExB;IAED,IAAW,KAAK,CAAC,KAAK,EAAE,KAAK,EAG5B;IAED,IAAW,OAAO,IAAI,OAAO,CAE5B;IAED,IAAW,OAAO,CAAC,KAAK,EAAE,OAAO,EAEhC;IAMM,kBAAkB,CAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI;IAKhF,cAAc,CAAC,QAAQ,EAAE,IAAI,GAAG,IAAI;IAQ3C,OAAO,CAAC,sBAAsB;CASjC"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.GroundPlane = void 0;
|
|
27
|
+
const SDData_1 = require("../../objects/SDData");
|
|
28
|
+
const THREE = __importStar(require("three"));
|
|
29
|
+
const viewer_shared_types_1 = require("@shapediver/viewer.shared.types");
|
|
30
|
+
const viewer_shared_services_1 = require("@shapediver/viewer.shared.services");
|
|
31
|
+
class GroundPlane {
|
|
32
|
+
// #endregion Properties (4)
|
|
33
|
+
// #region Constructors (1)
|
|
34
|
+
constructor(_renderingEngine, _parent) {
|
|
35
|
+
this._renderingEngine = _renderingEngine;
|
|
36
|
+
this._parent = _parent;
|
|
37
|
+
// #region Properties (4)
|
|
38
|
+
this._converter = viewer_shared_services_1.Converter.instance;
|
|
39
|
+
this._color = '#d3d3d3ff';
|
|
40
|
+
this._groundPlaneObject = new SDData_1.SDData('groundPlane', '');
|
|
41
|
+
const mat = new viewer_shared_types_1.MaterialStandardData();
|
|
42
|
+
mat.color = this._color;
|
|
43
|
+
mat.side = viewer_shared_types_1.MATERIAL_SIDE.FRONT;
|
|
44
|
+
mat.opacity = this._converter.toAlpha(this._color);
|
|
45
|
+
mat.roughness = 1;
|
|
46
|
+
mat.metalness = 0;
|
|
47
|
+
this._groundPlane = new THREE.Mesh(new THREE.PlaneGeometry(), this._renderingEngine.materialLoader.load(mat));
|
|
48
|
+
this._groundPlane.receiveShadow = true;
|
|
49
|
+
this._groundPlane.visible = false;
|
|
50
|
+
this._groundPlaneObject.add(this._groundPlane);
|
|
51
|
+
this._parent.add(this._groundPlaneObject);
|
|
52
|
+
}
|
|
53
|
+
// #endregion Constructors (1)
|
|
54
|
+
// #region Public Getters And Setters (4)
|
|
55
|
+
get color() {
|
|
56
|
+
return this._color;
|
|
57
|
+
}
|
|
58
|
+
set color(value) {
|
|
59
|
+
this._color = value;
|
|
60
|
+
this.assignGroundPlaneColor(value);
|
|
61
|
+
}
|
|
62
|
+
get visible() {
|
|
63
|
+
return this._groundPlane.visible;
|
|
64
|
+
}
|
|
65
|
+
set visible(value) {
|
|
66
|
+
this._groundPlane.visible = value;
|
|
67
|
+
}
|
|
68
|
+
// #endregion Public Getters And Setters (4)
|
|
69
|
+
// #region Public Methods (2)
|
|
70
|
+
changeSceneExtents(position, divisions, gridExtents) {
|
|
71
|
+
this._groundPlane.geometry = new THREE.PlaneGeometry(2 * gridExtents, 2 * gridExtents, 2, 2);
|
|
72
|
+
this._groundPlane.position.set(position[0], position[1], position[2]);
|
|
73
|
+
}
|
|
74
|
+
updatePosition(position) {
|
|
75
|
+
this._groundPlane.position.set(position[0], position[1], position[2]);
|
|
76
|
+
}
|
|
77
|
+
// #endregion Public Methods (2)
|
|
78
|
+
// #region Private Methods (1)
|
|
79
|
+
assignGroundPlaneColor(color) {
|
|
80
|
+
this._groundPlane.material.opacity = this._converter.toAlpha(color);
|
|
81
|
+
this._groundPlane.material.transparent = this._groundPlane.material.opacity !== 1;
|
|
82
|
+
this._groundPlane.material.depthWrite = !this._groundPlane.material.transparent;
|
|
83
|
+
this._groundPlane.material.color = this._renderingEngine.createThreeJsColor(color);
|
|
84
|
+
this._groundPlane.material.needsUpdate = true;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
exports.GroundPlane = GroundPlane;
|
|
88
|
+
//# sourceMappingURL=GroundPlane.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GroundPlane.js","sourceRoot":"","sources":["../../../src/managers/environmentGeometry/GroundPlane.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Color } from '@shapediver/viewer.shared.types';
|
|
2
|
+
import { RenderingEngine } from '../..';
|
|
3
|
+
import { vec3 } from 'gl-matrix';
|
|
4
|
+
import { SDObject } from '../../objects/SDObject';
|
|
5
|
+
import { IEnvironmentGeometry } from './IEnvironmentGeometry';
|
|
6
|
+
export declare class GroundPlaneShadow implements IEnvironmentGeometry {
|
|
7
|
+
private readonly _renderingEngine;
|
|
8
|
+
private readonly _parent;
|
|
9
|
+
private readonly _converter;
|
|
10
|
+
private _color;
|
|
11
|
+
private _groundPlaneShadow;
|
|
12
|
+
private _groundPlaneShadowObject;
|
|
13
|
+
constructor(_renderingEngine: RenderingEngine, _parent: SDObject);
|
|
14
|
+
get color(): Color;
|
|
15
|
+
set color(value: Color);
|
|
16
|
+
get visible(): boolean;
|
|
17
|
+
set visible(value: boolean);
|
|
18
|
+
changeSceneExtents(position: vec3, divisions: number, gridExtents: number): void;
|
|
19
|
+
updatePosition(position: vec3): void;
|
|
20
|
+
private assignGroundPlaneShadowColor;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=GroundPlaneShadow.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GroundPlaneShadow.d.ts","sourceRoot":"","sources":["../../../src/managers/environmentGeometry/GroundPlaneShadow.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAsB,MAAM,iCAAiC,CAAC;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,qBAAa,iBAAkB,YAAW,oBAAoB;IAa9C,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IAAmB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAVxF,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAiC;IAE5D,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,kBAAkB,CAAc;IACxC,OAAO,CAAC,wBAAwB,CAAU;gBAMb,gBAAgB,EAAE,eAAe,EAAmB,OAAO,EAAE,QAAQ;IAiBlG,IAAW,KAAK,IAAI,KAAK,CAExB;IAED,IAAW,KAAK,CAAC,KAAK,EAAE,KAAK,EAG5B;IAED,IAAW,OAAO,IAAI,OAAO,CAE5B;IAED,IAAW,OAAO,CAAC,KAAK,EAAE,OAAO,EAEhC;IAMM,kBAAkB,CAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI;IAKhF,cAAc,CAAC,QAAQ,EAAE,IAAI,GAAG,IAAI;IAQ3C,OAAO,CAAC,4BAA4B;CAOvC"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.GroundPlaneShadow = void 0;
|
|
27
|
+
const SDData_1 = require("../../objects/SDData");
|
|
28
|
+
const THREE = __importStar(require("three"));
|
|
29
|
+
const viewer_shared_types_1 = require("@shapediver/viewer.shared.types");
|
|
30
|
+
const viewer_shared_services_1 = require("@shapediver/viewer.shared.services");
|
|
31
|
+
class GroundPlaneShadow {
|
|
32
|
+
// #endregion Properties (4)
|
|
33
|
+
// #region Constructors (1)
|
|
34
|
+
constructor(_renderingEngine, _parent) {
|
|
35
|
+
this._renderingEngine = _renderingEngine;
|
|
36
|
+
this._parent = _parent;
|
|
37
|
+
// #region Properties (4)
|
|
38
|
+
this._converter = viewer_shared_services_1.Converter.instance;
|
|
39
|
+
this._color = '#d3d3d3ff';
|
|
40
|
+
this._groundPlaneShadowObject = new SDData_1.SDData('groundPlaneShadow', '');
|
|
41
|
+
const matShadow = new viewer_shared_types_1.MaterialShadowData();
|
|
42
|
+
matShadow.color = this._color;
|
|
43
|
+
matShadow.opacity = this._converter.toAlpha(this._color);
|
|
44
|
+
this._groundPlaneShadow = new THREE.Mesh(new THREE.PlaneGeometry(), this._renderingEngine.materialLoader.load(matShadow));
|
|
45
|
+
this._groundPlaneShadow.receiveShadow = true;
|
|
46
|
+
this._groundPlaneShadow.visible = false;
|
|
47
|
+
this._groundPlaneShadowObject.add(this._groundPlaneShadow);
|
|
48
|
+
this._groundPlaneShadowObject.userData.ambientOcclusion = true;
|
|
49
|
+
this._parent.add(this._groundPlaneShadowObject);
|
|
50
|
+
}
|
|
51
|
+
// #endregion Constructors (1)
|
|
52
|
+
// #region Public Getters And Setters (4)
|
|
53
|
+
get color() {
|
|
54
|
+
return this._color;
|
|
55
|
+
}
|
|
56
|
+
set color(value) {
|
|
57
|
+
this._color = value;
|
|
58
|
+
this.assignGroundPlaneShadowColor(value);
|
|
59
|
+
}
|
|
60
|
+
get visible() {
|
|
61
|
+
return this._groundPlaneShadow.visible;
|
|
62
|
+
}
|
|
63
|
+
set visible(value) {
|
|
64
|
+
this._groundPlaneShadow.visible = value;
|
|
65
|
+
}
|
|
66
|
+
// #endregion Public Getters And Setters (4)
|
|
67
|
+
// #region Public Methods (2)
|
|
68
|
+
changeSceneExtents(position, divisions, gridExtents) {
|
|
69
|
+
this._groundPlaneShadow.geometry = new THREE.PlaneGeometry(4 * gridExtents, 4 * gridExtents, 2, 2);
|
|
70
|
+
this._groundPlaneShadow.position.set(position[0], position[1], position[2]);
|
|
71
|
+
}
|
|
72
|
+
updatePosition(position) {
|
|
73
|
+
this._groundPlaneShadow.position.set(position[0], position[1], position[2]);
|
|
74
|
+
}
|
|
75
|
+
// #endregion Public Methods (2)
|
|
76
|
+
// #region Private Methods (1)
|
|
77
|
+
assignGroundPlaneShadowColor(color) {
|
|
78
|
+
this._groundPlaneShadow.material.opacity = this._converter.toAlpha(color);
|
|
79
|
+
this._groundPlaneShadow.material.color = this._renderingEngine.createThreeJsColor(color);
|
|
80
|
+
this._groundPlaneShadow.material.needsUpdate = true;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
exports.GroundPlaneShadow = GroundPlaneShadow;
|
|
84
|
+
//# sourceMappingURL=GroundPlaneShadow.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GroundPlaneShadow.js","sourceRoot":"","sources":["../../../src/managers/environmentGeometry/GroundPlaneShadow.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { vec3 } from "gl-matrix";
|
|
2
|
+
import { SDObject } from "../../objects/SDObject";
|
|
3
|
+
import { RenderingEngine } from "../../RenderingEngine";
|
|
4
|
+
import { IEnvironmentGeometry } from "./IEnvironmentGeometry";
|
|
5
|
+
export declare class GroundProjection implements IEnvironmentGeometry {
|
|
6
|
+
private readonly _renderingEngine;
|
|
7
|
+
private readonly _parent;
|
|
8
|
+
private readonly _eventEngine;
|
|
9
|
+
private _groundProjectionObject;
|
|
10
|
+
private _groundedSkyBox?;
|
|
11
|
+
private _visible;
|
|
12
|
+
constructor(_renderingEngine: RenderingEngine, _parent: SDObject);
|
|
13
|
+
get visible(): boolean;
|
|
14
|
+
set visible(value: boolean);
|
|
15
|
+
changeSceneExtents(position: vec3, divisions: number, gridExtents: number): void;
|
|
16
|
+
updatePosition(position: vec3): void;
|
|
17
|
+
private createGroundProjection;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=GroundProjection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GroundProjection.d.ts","sourceRoot":"","sources":["../../../src/managers/environmentGeometry/GroundProjection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAO9D,qBAAa,gBAAiB,YAAW,oBAAoB;IAc7C,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IAAmB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAXxF,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAwB;IAErD,OAAO,CAAC,uBAAuB,CAAU;IACzC,OAAO,CAAC,eAAe,CAAC,CAAiB;IAEzC,OAAO,CAAC,QAAQ,CAAkB;gBAML,gBAAgB,EAAE,eAAe,EAAmB,OAAO,EAAE,QAAQ;IAiBlG,IAAW,OAAO,IAAI,OAAO,CAE5B;IAED,IAAW,OAAO,CAAC,KAAK,EAAE,OAAO,EAGhC;IAMM,kBAAkB,CAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI;IAKhF,cAAc,CAAC,QAAQ,EAAE,IAAI,GAAG,IAAI;IAO3C,OAAO,CAAC,sBAAsB;CAiBjC"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.GroundProjection = void 0;
|
|
4
|
+
const SDData_1 = require("../../objects/SDData");
|
|
5
|
+
const GroundedSkyBox_1 = require("three/examples/jsm/objects/GroundedSkyBox");
|
|
6
|
+
const viewer_shared_services_1 = require("@shapediver/viewer.shared.services");
|
|
7
|
+
const viewer_shared_types_1 = require("@shapediver/viewer.shared.types");
|
|
8
|
+
class GroundProjection {
|
|
9
|
+
// #endregion Properties (2)
|
|
10
|
+
// #region Constructors (1)
|
|
11
|
+
constructor(_renderingEngine, _parent) {
|
|
12
|
+
this._renderingEngine = _renderingEngine;
|
|
13
|
+
this._parent = _parent;
|
|
14
|
+
// #region Properties (2)
|
|
15
|
+
this._eventEngine = viewer_shared_services_1.EventEngine.instance;
|
|
16
|
+
this._visible = false;
|
|
17
|
+
this._groundProjectionObject = new SDData_1.SDData('grid', '');
|
|
18
|
+
this.createGroundProjection(this._renderingEngine.environmentMapLoader.environmentMap);
|
|
19
|
+
this._parent.add(this._groundProjectionObject);
|
|
20
|
+
this._eventEngine.addListener(viewer_shared_services_1.EVENTTYPE.TASK.TASK_END, (e) => {
|
|
21
|
+
const taskEvent = e;
|
|
22
|
+
if (taskEvent.type === viewer_shared_types_1.TASK_TYPE.ENVIRONMENT_MAP_LOADING) {
|
|
23
|
+
this.createGroundProjection(this._renderingEngine.environmentMapLoader.environmentMap);
|
|
24
|
+
}
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
// #endregion Constructors (1)
|
|
28
|
+
// #region Public Getters And Setters (2)
|
|
29
|
+
get visible() {
|
|
30
|
+
return this._visible;
|
|
31
|
+
}
|
|
32
|
+
set visible(value) {
|
|
33
|
+
this._visible = value;
|
|
34
|
+
this._groundProjectionObject.visible = value;
|
|
35
|
+
}
|
|
36
|
+
// #endregion Public Getters And Setters (2)
|
|
37
|
+
// #region Public Methods (2)
|
|
38
|
+
changeSceneExtents(position, divisions, gridExtents) {
|
|
39
|
+
this.createGroundProjection(this._renderingEngine.environmentMapLoader.environmentMap);
|
|
40
|
+
if (this._groundedSkyBox)
|
|
41
|
+
this._groundedSkyBox.position.set(position[0], position[1], position[2]);
|
|
42
|
+
}
|
|
43
|
+
updatePosition(position) {
|
|
44
|
+
if (this._groundedSkyBox)
|
|
45
|
+
this._groundedSkyBox.position.set(position[0], position[1], position[2]);
|
|
46
|
+
}
|
|
47
|
+
// #endregion Public Methods (2)
|
|
48
|
+
createGroundProjection(map) {
|
|
49
|
+
if (this._groundedSkyBox) {
|
|
50
|
+
this._groundedSkyBox.geometry.dispose();
|
|
51
|
+
this._groundedSkyBox.material.dispose();
|
|
52
|
+
}
|
|
53
|
+
if (!map) {
|
|
54
|
+
if (this._groundedSkyBox)
|
|
55
|
+
this._groundProjectionObject.remove(this._groundedSkyBox);
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
this._groundedSkyBox = new GroundedSkyBox_1.GroundedSkybox(map, 0.1, 100);
|
|
59
|
+
this._groundedSkyBox.rotateX(Math.PI / 2);
|
|
60
|
+
this._groundProjectionObject.add(this._groundedSkyBox);
|
|
61
|
+
}
|
|
62
|
+
this._groundProjectionObject.visible = this._visible;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
exports.GroundProjection = GroundProjection;
|
|
66
|
+
//# sourceMappingURL=GroundProjection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GroundProjection.js","sourceRoot":"","sources":["../../../src/managers/environmentGeometry/GroundProjection.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Color } from '@shapediver/viewer.shared.types';
|
|
2
|
+
import { vec3 } from 'gl-matrix';
|
|
3
|
+
export interface IEnvironmentGeometry {
|
|
4
|
+
color?: Color;
|
|
5
|
+
visible: boolean;
|
|
6
|
+
changeSceneExtents(position: vec3, divisions: number, gridExtents: number): void;
|
|
7
|
+
updatePosition(position: vec3): void;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=IEnvironmentGeometry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IEnvironmentGeometry.d.ts","sourceRoot":"","sources":["../../../src/managers/environmentGeometry/IEnvironmentGeometry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AACxD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,MAAM,WAAW,oBAAoB;IAGjC,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IAMjB,kBAAkB,CAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IACjF,cAAc,CAAC,QAAQ,EAAE,IAAI,GAAG,IAAI,CAAC;CAGxC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IEnvironmentGeometry.js","sourceRoot":"","sources":["../../../src/managers/environmentGeometry/IEnvironmentGeometry.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=SkyBottom.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SkyBottom.d.ts","sourceRoot":"","sources":["../../../src/managers/environmentGeometry/SkyBottom.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SkyBottom.js","sourceRoot":"","sources":["../../../src/managers/environmentGeometry/SkyBottom.ts"],"names":[],"mappings":""}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@shapediver/viewer.rendering-engine.rendering-engine-threejs",
|
|
3
|
-
"version": "3.7.
|
|
3
|
+
"version": "3.7.5",
|
|
4
4
|
"description": "",
|
|
5
5
|
"keywords": [],
|
|
6
6
|
"author": "Michael Oppitz <michael@shapediver.com>",
|
|
@@ -38,21 +38,21 @@
|
|
|
38
38
|
"testEnvironment": "node"
|
|
39
39
|
},
|
|
40
40
|
"dependencies": {
|
|
41
|
-
"@shapediver/viewer.data-engine.gltf-converter": "3.7.
|
|
42
|
-
"@shapediver/viewer.data-engine.shared-types": "3.7.
|
|
43
|
-
"@shapediver/viewer.data-engine.tag3d-engine": "3.7.
|
|
44
|
-
"@shapediver/viewer.rendering-engine.animation-engine": "3.7.
|
|
45
|
-
"@shapediver/viewer.rendering-engine.animation-frame-engine": "3.7.
|
|
46
|
-
"@shapediver/viewer.rendering-engine.camera-engine": "3.7.
|
|
47
|
-
"@shapediver/viewer.rendering-engine.canvas-engine": "3.7.
|
|
48
|
-
"@shapediver/viewer.rendering-engine.intersection-engine": "3.7.
|
|
49
|
-
"@shapediver/viewer.rendering-engine.light-engine": "3.7.
|
|
50
|
-
"@shapediver/viewer.rendering-engine.rendering-engine": "3.7.
|
|
51
|
-
"@shapediver/viewer.shared.global-access-objects": "3.7.
|
|
52
|
-
"@shapediver/viewer.shared.math": "3.7.
|
|
53
|
-
"@shapediver/viewer.shared.node-tree": "3.7.
|
|
54
|
-
"@shapediver/viewer.shared.services": "3.7.
|
|
55
|
-
"@shapediver/viewer.shared.types": "3.7.
|
|
41
|
+
"@shapediver/viewer.data-engine.gltf-converter": "3.7.5",
|
|
42
|
+
"@shapediver/viewer.data-engine.shared-types": "3.7.5",
|
|
43
|
+
"@shapediver/viewer.data-engine.tag3d-engine": "3.7.5",
|
|
44
|
+
"@shapediver/viewer.rendering-engine.animation-engine": "3.7.5",
|
|
45
|
+
"@shapediver/viewer.rendering-engine.animation-frame-engine": "3.7.5",
|
|
46
|
+
"@shapediver/viewer.rendering-engine.camera-engine": "3.7.5",
|
|
47
|
+
"@shapediver/viewer.rendering-engine.canvas-engine": "3.7.5",
|
|
48
|
+
"@shapediver/viewer.rendering-engine.intersection-engine": "3.7.5",
|
|
49
|
+
"@shapediver/viewer.rendering-engine.light-engine": "3.7.5",
|
|
50
|
+
"@shapediver/viewer.rendering-engine.rendering-engine": "3.7.5",
|
|
51
|
+
"@shapediver/viewer.shared.global-access-objects": "3.7.5",
|
|
52
|
+
"@shapediver/viewer.shared.math": "3.7.5",
|
|
53
|
+
"@shapediver/viewer.shared.node-tree": "3.7.5",
|
|
54
|
+
"@shapediver/viewer.shared.services": "3.7.5",
|
|
55
|
+
"@shapediver/viewer.shared.types": "3.7.5",
|
|
56
56
|
"@tweenjs/tween.js": "^18.6.4",
|
|
57
57
|
"@types/stats.js": "^0.17.0",
|
|
58
58
|
"@types/three": "0.162.0",
|
|
@@ -61,5 +61,5 @@
|
|
|
61
61
|
"stats.js": "^0.17.0",
|
|
62
62
|
"three": "0.162.0"
|
|
63
63
|
},
|
|
64
|
-
"gitHead": "
|
|
64
|
+
"gitHead": "177ba027c00086c12e216d226eab3f4abeb1a1ea"
|
|
65
65
|
}
|