@inweb/viewer-three 27.4.7 → 27.6.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/dist/extensions/components/AxesHelperComponent.js +3 -0
- package/dist/extensions/components/AxesHelperComponent.js.map +1 -1
- package/dist/extensions/components/AxesHelperComponent.min.js +1 -1
- package/dist/extensions/components/AxesHelperComponent.module.js +3 -0
- package/dist/extensions/components/AxesHelperComponent.module.js.map +1 -1
- package/dist/extensions/components/ExtentsHelperComponent.js +6 -2
- package/dist/extensions/components/ExtentsHelperComponent.js.map +1 -1
- package/dist/extensions/components/ExtentsHelperComponent.min.js +1 -1
- package/dist/extensions/components/ExtentsHelperComponent.module.js +6 -2
- package/dist/extensions/components/ExtentsHelperComponent.module.js.map +1 -1
- package/dist/extensions/components/GridHelperComponent.js +1 -0
- package/dist/extensions/components/GridHelperComponent.js.map +1 -1
- package/dist/extensions/components/GridHelperComponent.min.js +1 -1
- package/dist/extensions/components/GridHelperComponent.module.js +1 -0
- package/dist/extensions/components/GridHelperComponent.module.js.map +1 -1
- package/dist/extensions/components/LightHelperComponent.js +2 -1
- package/dist/extensions/components/LightHelperComponent.js.map +1 -1
- package/dist/extensions/components/LightHelperComponent.min.js +1 -1
- package/dist/extensions/components/LightHelperComponent.module.js +2 -1
- package/dist/extensions/components/LightHelperComponent.module.js.map +1 -1
- package/dist/extensions/components/StatsPanelComponent.js +0 -1
- package/dist/extensions/components/StatsPanelComponent.js.map +1 -1
- package/dist/extensions/components/StatsPanelComponent.min.js +1 -1
- package/dist/extensions/components/StatsPanelComponent.module.js +0 -1
- package/dist/extensions/components/StatsPanelComponent.module.js.map +1 -1
- package/dist/extensions/loaders/GLTFCloudLoader.js +7 -2
- package/dist/extensions/loaders/GLTFCloudLoader.js.map +1 -1
- package/dist/extensions/loaders/GLTFCloudLoader.min.js +1 -1
- package/dist/extensions/loaders/GLTFCloudLoader.module.js +7 -2
- package/dist/extensions/loaders/GLTFCloudLoader.module.js.map +1 -1
- package/dist/extensions/loaders/GLTFFileLoader.js +2 -1
- package/dist/extensions/loaders/GLTFFileLoader.js.map +1 -1
- package/dist/extensions/loaders/GLTFFileLoader.min.js +1 -1
- package/dist/extensions/loaders/GLTFFileLoader.module.js +2 -1
- package/dist/extensions/loaders/GLTFFileLoader.module.js.map +1 -1
- package/dist/extensions/loaders/IFCXLoader.js +10 -5
- package/dist/extensions/loaders/IFCXLoader.js.map +1 -1
- package/dist/extensions/loaders/IFCXLoader.min.js +1 -1
- package/dist/extensions/loaders/IFCXLoader.module.js +10 -5
- package/dist/extensions/loaders/IFCXLoader.module.js.map +1 -1
- package/dist/viewer-three.js +1901 -569
- package/dist/viewer-three.js.map +1 -1
- package/dist/viewer-three.min.js +4 -4
- package/dist/viewer-three.module.js +1366 -451
- package/dist/viewer-three.module.js.map +1 -1
- package/extensions/components/AxesHelperComponent.ts +3 -0
- package/extensions/components/ExtentsHelperComponent.ts +5 -2
- package/extensions/components/GridHelperComponent.ts +1 -0
- package/extensions/components/LightHelperComponent.ts +2 -1
- package/extensions/components/StatsPanelComponent.ts +0 -1
- package/extensions/loaders/GLTFCloudLoader.ts +8 -2
- package/extensions/loaders/GLTFFileLoader.ts +3 -2
- package/extensions/loaders/IFCX/IFCXFileLoader.ts +11 -5
- package/lib/Viewer/Viewer.d.ts +6 -8
- package/lib/Viewer/components/CameraComponent.d.ts +1 -1
- package/lib/Viewer/components/ClippingPlaneComponent.d.ts +8 -0
- package/lib/Viewer/components/HighlighterComponent.d.ts +2 -2
- package/lib/Viewer/components/InfoComponent.d.ts +1 -1
- package/lib/Viewer/components/SectionsComponent.d.ts +15 -0
- package/lib/Viewer/components/WCSHelperComponent.d.ts +2 -2
- package/lib/Viewer/draggers/CuttingPlaneDragger.d.ts +6 -6
- package/lib/Viewer/draggers/OrbitDragger.d.ts +1 -1
- package/lib/Viewer/measurement/Snapper.d.ts +4 -4
- package/package.json +5 -5
- package/src/Viewer/Viewer.ts +59 -48
- package/src/Viewer/commands/GetSelected2.ts +1 -1
- package/src/Viewer/commands/SetSelected.ts +1 -1
- package/src/Viewer/commands/index.ts +1 -1
- package/src/Viewer/components/BackgroundComponent.ts +2 -1
- package/src/Viewer/components/CameraComponent.ts +6 -7
- package/src/Viewer/components/CanvasRemoveComponent.ts +0 -1
- package/src/Viewer/{scenes/Helpers.ts → components/ClippingPlaneComponent.ts} +22 -12
- package/src/Viewer/components/HighlighterComponent.ts +9 -5
- package/src/Viewer/components/HighlighterUtils.ts +2 -2
- package/src/Viewer/components/InfoComponent.ts +4 -4
- package/src/Viewer/components/SectionsComponent.ts +119 -0
- package/src/Viewer/components/SelectionComponent.ts +5 -3
- package/src/Viewer/components/WCSHelperComponent.ts +8 -6
- package/src/Viewer/components/index.ts +4 -0
- package/src/Viewer/draggers/CuttingPlaneDragger.ts +57 -34
- package/src/Viewer/draggers/MeasureLineDragger.ts +1 -1
- package/src/Viewer/draggers/OrbitDragger.ts +3 -3
- package/src/Viewer/helpers/SectionsHelper.js +1061 -0
- package/src/Viewer/helpers/WCSHelper.ts +31 -5
- package/src/Viewer/loaders/DynamicGltfLoader/DynamicGltfLoader.js +417 -92
- package/src/Viewer/loaders/DynamicGltfLoader/DynamicModelImpl.ts +19 -14
- package/src/Viewer/loaders/DynamicGltfLoader/GltfStructure.js +76 -9
- package/src/Viewer/loaders/GLTFBinaryParser.ts +2 -2
- package/src/Viewer/loaders/GLTFCloudDynamicLoader.ts +3 -2
- package/src/Viewer/loaders/GLTFFileDynamicLoader.ts +6 -4
- package/src/Viewer/measurement/Snapper.ts +6 -7
- package/src/Viewer/models/ModelImpl.ts +65 -28
- package/lib/Viewer/scenes/Helpers.d.ts +0 -7
- package/src/Viewer/postprocessing/SSAARenderPass.js +0 -245
|
@@ -76,12 +76,14 @@ class AxesHelperComponent implements IComponent {
|
|
|
76
76
|
this.axesHelper1.position.set(0, 0, 0);
|
|
77
77
|
this.axesHelper1.scale.setScalar(extentsSize * 1.5);
|
|
78
78
|
this.viewer.helpers.add(this.axesHelper1);
|
|
79
|
+
this.viewer.update();
|
|
79
80
|
|
|
80
81
|
if (this.viewer.models.length < 1) return;
|
|
81
82
|
|
|
82
83
|
this.axesHelper2.position.copy(extentsCenter);
|
|
83
84
|
this.axesHelper2.scale.setScalar(extentsSize);
|
|
84
85
|
this.viewer.helpers.add(this.axesHelper2);
|
|
86
|
+
this.viewer.update();
|
|
85
87
|
|
|
86
88
|
if (this.viewer.models.length < 2) return;
|
|
87
89
|
|
|
@@ -95,6 +97,7 @@ class AxesHelperComponent implements IComponent {
|
|
|
95
97
|
|
|
96
98
|
this.modelHelpers.push(helper);
|
|
97
99
|
this.viewer.helpers.add(helper);
|
|
100
|
+
this.viewer.update();
|
|
98
101
|
});
|
|
99
102
|
};
|
|
100
103
|
}
|
|
@@ -74,17 +74,20 @@ class ExtentsHelperComponent implements IComponent {
|
|
|
74
74
|
|
|
75
75
|
this.boxHelper.box = this.viewer.extents.clone();
|
|
76
76
|
this.viewer.helpers.add(this.boxHelper);
|
|
77
|
+
this.viewer.update();
|
|
77
78
|
|
|
78
79
|
if (this.viewer.models.length < 2) return;
|
|
79
80
|
|
|
80
|
-
this.viewer.models
|
|
81
|
+
for (const model of this.viewer.models) {
|
|
81
82
|
const extents = model.getExtents(new Box3());
|
|
83
|
+
if (extents.isEmpty()) continue;
|
|
82
84
|
|
|
83
85
|
const helper = new Box3Helper(extents, "#ff0000");
|
|
84
86
|
|
|
85
87
|
this.modelHelpers.push(helper);
|
|
86
88
|
this.viewer.helpers.add(helper);
|
|
87
|
-
}
|
|
89
|
+
}
|
|
90
|
+
this.viewer.update();
|
|
88
91
|
};
|
|
89
92
|
}
|
|
90
93
|
|
|
@@ -57,7 +57,7 @@ class LightHelperComponent implements IComponent {
|
|
|
57
57
|
const helperSize = extentsSize / 20;
|
|
58
58
|
|
|
59
59
|
this.viewer.scene.traverse((object: any) => {
|
|
60
|
-
let helper: DirectionalLightHelper | HemisphereLightHelper | PointLightHelper;
|
|
60
|
+
let helper: DirectionalLightHelper | HemisphereLightHelper | PointLightHelper | null = null;
|
|
61
61
|
|
|
62
62
|
if (object.isDirectionalLight) helper = new DirectionalLightHelper(object, helperSize, "#aa0000");
|
|
63
63
|
else if (object.isHemisphereLight) helper = new HemisphereLightHelper(object, helperSize, "#ff9800");
|
|
@@ -66,6 +66,7 @@ class LightHelperComponent implements IComponent {
|
|
|
66
66
|
if (helper) {
|
|
67
67
|
this.lightHelpers.push(helper);
|
|
68
68
|
this.viewer.helpers.add(helper);
|
|
69
|
+
this.viewer.update();
|
|
69
70
|
}
|
|
70
71
|
});
|
|
71
72
|
};
|
|
@@ -26,10 +26,16 @@ import { GLTFLoadingManager, Loader, loaders, ModelImpl, Viewer } from "@inweb/v
|
|
|
26
26
|
|
|
27
27
|
class GLTFCloudLoader extends Loader {
|
|
28
28
|
public viewer: Viewer;
|
|
29
|
+
private manager: GLTFLoadingManager | null;
|
|
29
30
|
|
|
30
31
|
constructor(viewer: Viewer) {
|
|
31
32
|
super();
|
|
32
33
|
this.viewer = viewer;
|
|
34
|
+
this.manager = null;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
override dispose() {
|
|
38
|
+
if (this.manager) this.manager.dispose();
|
|
33
39
|
}
|
|
34
40
|
|
|
35
41
|
override isSupport(file: any): boolean {
|
|
@@ -43,9 +49,9 @@ class GLTFCloudLoader extends Loader {
|
|
|
43
49
|
|
|
44
50
|
override async load(model: any): Promise<this> {
|
|
45
51
|
const url = `${model.httpClient.serverUrl}${model.path}/${model.database}`;
|
|
46
|
-
|
|
52
|
+
this.manager = new GLTFLoadingManager(url);
|
|
47
53
|
|
|
48
|
-
const loader = new GLTFLoader(manager);
|
|
54
|
+
const loader = new GLTFLoader(this.manager);
|
|
49
55
|
loader.setRequestHeader(model.httpClient.headers);
|
|
50
56
|
|
|
51
57
|
const progress = (event: ProgressEvent) => {
|
|
@@ -26,18 +26,19 @@ import { GLTFLoadingManager, GLTFLoadParams, Loader, loaders, ModelImpl, Viewer
|
|
|
26
26
|
|
|
27
27
|
export class GLTFFileLoader extends Loader {
|
|
28
28
|
public viewer: Viewer;
|
|
29
|
-
private manager: GLTFLoadingManager;
|
|
29
|
+
private manager: GLTFLoadingManager | null;
|
|
30
30
|
|
|
31
31
|
constructor(viewer: Viewer) {
|
|
32
32
|
super();
|
|
33
33
|
this.viewer = viewer;
|
|
34
|
+
this.manager = null;
|
|
34
35
|
}
|
|
35
36
|
|
|
36
37
|
override dispose() {
|
|
37
38
|
if (this.manager) this.manager.dispose();
|
|
38
39
|
}
|
|
39
40
|
|
|
40
|
-
override isSupport(file: any, format
|
|
41
|
+
override isSupport(file: any, format = ""): boolean {
|
|
41
42
|
return (
|
|
42
43
|
(typeof file === "string" || file instanceof globalThis.File || file instanceof ArrayBuffer) &&
|
|
43
44
|
/(gltf|glb)$/i.test(format)
|
|
@@ -26,13 +26,19 @@ import { IFCXLoader } from "./IFCXLoader";
|
|
|
26
26
|
|
|
27
27
|
export class IFCXFileLoader extends Loader {
|
|
28
28
|
public viewer: Viewer;
|
|
29
|
+
private manager: GLTFLoadingManager | null;
|
|
29
30
|
|
|
30
31
|
constructor(viewer: Viewer) {
|
|
31
32
|
super();
|
|
32
33
|
this.viewer = viewer;
|
|
34
|
+
this.manager = null;
|
|
33
35
|
}
|
|
34
36
|
|
|
35
|
-
override
|
|
37
|
+
override dispose() {
|
|
38
|
+
if (this.manager) this.manager.dispose();
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
override isSupport(file: any, format = ""): boolean {
|
|
36
42
|
return (
|
|
37
43
|
(typeof file === "string" || file instanceof globalThis.File || file instanceof ArrayBuffer) &&
|
|
38
44
|
/(ifcx)$/i.test(format)
|
|
@@ -40,10 +46,10 @@ export class IFCXFileLoader extends Loader {
|
|
|
40
46
|
}
|
|
41
47
|
|
|
42
48
|
override async load(file: any, format?: string, params: GLTFLoadParams = {}): Promise<this> {
|
|
43
|
-
|
|
49
|
+
this.manager = new GLTFLoadingManager(file, params);
|
|
44
50
|
|
|
45
|
-
const loader = new IFCXLoader(manager);
|
|
46
|
-
loader.setPath(manager.path);
|
|
51
|
+
const loader = new IFCXLoader(this.manager);
|
|
52
|
+
loader.setPath(this.manager.path);
|
|
47
53
|
loader.setCrossOrigin(params.crossOrigin || loader.crossOrigin);
|
|
48
54
|
loader.setWithCredentials(params.withCredentials || loader.withCredentials);
|
|
49
55
|
|
|
@@ -53,7 +59,7 @@ export class IFCXFileLoader extends Loader {
|
|
|
53
59
|
this.viewer.emitEvent({ type: "geometryprogress", data: progress, file });
|
|
54
60
|
};
|
|
55
61
|
|
|
56
|
-
const scene = await loader.loadAsync(manager.fileURL, progress);
|
|
62
|
+
const scene = await loader.loadAsync(this.manager.fileURL, progress);
|
|
57
63
|
if (!this.viewer.scene) return this;
|
|
58
64
|
|
|
59
65
|
let handle = 1;
|
package/lib/Viewer/Viewer.d.ts
CHANGED
|
@@ -1,16 +1,15 @@
|
|
|
1
|
-
import { Box3, Object3D, OrthographicCamera, PerspectiveCamera, Scene, Vector3, WebGLRenderer } from "three";
|
|
1
|
+
import { Box3, Group, Object3D, OrthographicCamera, PerspectiveCamera, Plane, Scene, Vector3, WebGLRenderer } from "three";
|
|
2
2
|
import { EffectComposer } from "three/examples/jsm/postprocessing/EffectComposer.js";
|
|
3
3
|
import { RenderPass } from "three/examples/jsm/postprocessing/RenderPass.js";
|
|
4
4
|
import { FXAAPass } from "three/examples/jsm/postprocessing/FXAAPass.js";
|
|
5
5
|
import { SMAAPass } from "three/examples/jsm/postprocessing/SMAAPass.js";
|
|
6
|
-
import { SSAARenderPass } from "
|
|
6
|
+
import { SSAARenderPass } from "three/examples/jsm/postprocessing/SSAARenderPass.js";
|
|
7
7
|
import { OutputPass } from "three/examples/jsm/postprocessing/OutputPass.js";
|
|
8
8
|
import { EventEmitter2 } from "@inweb/eventemitter2";
|
|
9
9
|
import { Assembly, Client, Model, File } from "@inweb/client";
|
|
10
10
|
import { CanvasEventMap, FileSource, IComponent, IDragger, IInfo, ILoader, IOptions, IViewer, IViewpoint, OptionsEventMap, ViewerEventMap } from "@inweb/viewer-core";
|
|
11
11
|
import { IMarkup, IWorldTransform } from "@inweb/markup";
|
|
12
12
|
import { IModelImpl } from "./models/IModelImpl";
|
|
13
|
-
import { Helpers } from "./scenes/Helpers";
|
|
14
13
|
/**
|
|
15
14
|
* 3D viewer powered by {@link https://threejs.org/ | Three.js}.
|
|
16
15
|
*/
|
|
@@ -24,11 +23,10 @@ export declare class Viewer extends EventEmitter2<ViewerEventMap & CanvasEventMa
|
|
|
24
23
|
info: IInfo;
|
|
25
24
|
private canvaseventlistener;
|
|
26
25
|
scene: Scene | undefined;
|
|
27
|
-
helpers:
|
|
26
|
+
helpers: Group | undefined;
|
|
28
27
|
camera: PerspectiveCamera | OrthographicCamera | undefined;
|
|
29
28
|
renderer: WebGLRenderer | undefined;
|
|
30
29
|
renderPass: RenderPass | undefined;
|
|
31
|
-
helpersPass: RenderPass | undefined;
|
|
32
30
|
fxaaPass: FXAAPass | undefined;
|
|
33
31
|
smaaPass: SMAAPass | undefined;
|
|
34
32
|
ssaaRenderPass: SSAARenderPass | undefined;
|
|
@@ -37,9 +35,9 @@ export declare class Viewer extends EventEmitter2<ViewerEventMap & CanvasEventMa
|
|
|
37
35
|
selected: Object3D[];
|
|
38
36
|
extents: Box3;
|
|
39
37
|
target: Vector3;
|
|
38
|
+
clippingPlanes: Plane[];
|
|
40
39
|
private _activeDragger;
|
|
41
40
|
private _components;
|
|
42
|
-
private _updateDelay;
|
|
43
41
|
private _renderNeeded;
|
|
44
42
|
private _renderTime;
|
|
45
43
|
private _markup;
|
|
@@ -61,7 +59,7 @@ export declare class Viewer extends EventEmitter2<ViewerEventMap & CanvasEventMa
|
|
|
61
59
|
dispose(): this;
|
|
62
60
|
isInitialized(): boolean;
|
|
63
61
|
setSize(width: number, height: number, updateStyle?: boolean): void;
|
|
64
|
-
update(force?: boolean): void;
|
|
62
|
+
update(force?: boolean | number): void;
|
|
65
63
|
render(time?: DOMHighResTimeStamp, force?: boolean): void;
|
|
66
64
|
loadReferences(model: Model | File | Assembly): Promise<this>;
|
|
67
65
|
/**
|
|
@@ -163,7 +161,7 @@ export declare class Viewer extends EventEmitter2<ViewerEventMap & CanvasEventMa
|
|
|
163
161
|
activeDragger(): IDragger | null;
|
|
164
162
|
setActiveDragger(name?: string): IDragger | null;
|
|
165
163
|
resetActiveDragger(): void;
|
|
166
|
-
getComponent(name: string): IComponent;
|
|
164
|
+
getComponent(name: string): IComponent | null;
|
|
167
165
|
drawViewpoint(viewpoint: IViewpoint): void;
|
|
168
166
|
createViewpoint(): IViewpoint;
|
|
169
167
|
getSnapshot(type?: string, quality?: number): string;
|
|
@@ -7,6 +7,6 @@ export declare class CameraComponent implements IComponent {
|
|
|
7
7
|
getCameraMode(camera: any): CameraMode;
|
|
8
8
|
switchCamera(camera: any): void;
|
|
9
9
|
switchCameraMode(mode: CameraMode): void;
|
|
10
|
-
|
|
10
|
+
syncOptions: () => void;
|
|
11
11
|
geometryEnd: () => void;
|
|
12
12
|
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { IComponent } from "@inweb/viewer-core";
|
|
2
|
+
import type { Viewer } from "../Viewer";
|
|
3
|
+
export declare class ClippingPlaneComponent implements IComponent {
|
|
4
|
+
protected viewer: Viewer;
|
|
5
|
+
constructor(viewer: Viewer);
|
|
6
|
+
dispose(): void;
|
|
7
|
+
applyClippingPlanes: () => void;
|
|
8
|
+
}
|
|
@@ -14,7 +14,7 @@ export declare class HighlighterComponent implements IComponent {
|
|
|
14
14
|
highlight(objects: Object3D | Object3D[]): void;
|
|
15
15
|
unhighlight(objects: Object3D | Object3D[]): void;
|
|
16
16
|
geometryEnd: () => void;
|
|
17
|
-
|
|
17
|
+
syncOptions: () => void;
|
|
18
18
|
syncHighlightColors(): void;
|
|
19
|
-
viewerResize(event: ResizeEvent)
|
|
19
|
+
viewerResize: (event: ResizeEvent) => void;
|
|
20
20
|
}
|
|
@@ -10,7 +10,7 @@ export declare class InfoComponent implements IComponent {
|
|
|
10
10
|
dispose(): void;
|
|
11
11
|
initialize: () => void;
|
|
12
12
|
clear: () => void;
|
|
13
|
-
|
|
13
|
+
syncOptions: ({ data: options }: {
|
|
14
14
|
data: any;
|
|
15
15
|
}) => void;
|
|
16
16
|
geometryStart: () => void;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { IComponent, ResizeEvent } from "@inweb/viewer-core";
|
|
2
|
+
import type { Viewer } from "../Viewer";
|
|
3
|
+
export declare class SectionsComponent implements IComponent {
|
|
4
|
+
private viewer;
|
|
5
|
+
private sectionsHelper;
|
|
6
|
+
private updateTimerId;
|
|
7
|
+
private updateDelay;
|
|
8
|
+
constructor(viewer: Viewer);
|
|
9
|
+
dispose(): void;
|
|
10
|
+
syncOptions: () => void;
|
|
11
|
+
syncHelper: () => void;
|
|
12
|
+
syncSections: () => void;
|
|
13
|
+
viewerResize: (event: ResizeEvent) => void;
|
|
14
|
+
updateSections: () => void;
|
|
15
|
+
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { IComponent } from "@inweb/viewer-core";
|
|
2
2
|
import type { Viewer } from "../Viewer";
|
|
3
3
|
export declare class WCSHelperComponent implements IComponent {
|
|
4
|
-
private wcsHelper;
|
|
5
4
|
private viewer;
|
|
5
|
+
private wcsHelper;
|
|
6
6
|
constructor(viewer: Viewer);
|
|
7
7
|
dispose(): void;
|
|
8
|
-
|
|
8
|
+
syncHelper: () => void;
|
|
9
9
|
viewerRender: () => void;
|
|
10
10
|
updateHelperCamera: () => void;
|
|
11
11
|
}
|
|
@@ -1,13 +1,12 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Quaternion, Vector2, Vector3 } from "three";
|
|
2
2
|
import { TransformControls } from "three/examples/jsm/controls/TransformControls.js";
|
|
3
3
|
import type { Viewer } from "../Viewer";
|
|
4
4
|
import { PlaneHelper2 } from "../helpers/PlaneHelper2";
|
|
5
5
|
import { Snapper } from "../measurement/Snapper";
|
|
6
6
|
import { OrbitDragger } from "./OrbitDragger";
|
|
7
7
|
export declare class CuttingPlaneDragger extends OrbitDragger {
|
|
8
|
-
protected clippingPlanes: Plane[];
|
|
9
8
|
protected helpers: PlaneHelper2[];
|
|
10
|
-
protected activeHelper: PlaneHelper2;
|
|
9
|
+
protected activeHelper: PlaneHelper2 | undefined;
|
|
11
10
|
protected snapper: Snapper;
|
|
12
11
|
protected downPosition: Vector2;
|
|
13
12
|
protected position0: Vector3;
|
|
@@ -16,18 +15,19 @@ export declare class CuttingPlaneDragger extends OrbitDragger {
|
|
|
16
15
|
protected rotate: TransformControls;
|
|
17
16
|
constructor(viewer: Viewer);
|
|
18
17
|
dispose(): void;
|
|
18
|
+
transformUpdate: () => void;
|
|
19
19
|
transformChange: () => void;
|
|
20
20
|
translateDrag: (event: any) => void;
|
|
21
21
|
rotateDrag: (event: any) => void;
|
|
22
|
-
|
|
23
|
-
updateTransformCamera: () => void;
|
|
22
|
+
syncHelpers: () => void;
|
|
24
23
|
clearHelpers: () => void;
|
|
24
|
+
updateTransformCamera: () => void;
|
|
25
25
|
onKeyDown: (event: KeyboardEvent) => void;
|
|
26
26
|
onKeyUp: (event: KeyboardEvent) => void;
|
|
27
27
|
onPointerDown: (event: PointerEvent) => void;
|
|
28
28
|
onPointerUp: (event: PointerEvent) => void;
|
|
29
29
|
onPointerCancel: (event: PointerEvent) => void;
|
|
30
|
-
onDoubleClick: (event:
|
|
30
|
+
onDoubleClick: (event: MouseEvent) => void;
|
|
31
31
|
private addHelper;
|
|
32
32
|
private setActiveHelper;
|
|
33
33
|
private saveState;
|
|
@@ -9,7 +9,7 @@ export declare class OrbitDragger implements IDragger {
|
|
|
9
9
|
dispose(): void;
|
|
10
10
|
updateControls: () => void;
|
|
11
11
|
updateControlsCamera: () => void;
|
|
12
|
-
|
|
12
|
+
updateZoomSpeed: ({ data: options }: {
|
|
13
13
|
data: any;
|
|
14
14
|
}) => void;
|
|
15
15
|
controlsStart: () => void;
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import { Camera, Intersection, Object3D, Vector2, Vector3
|
|
1
|
+
import { Camera, Intersection, Object3D, Plane, Vector2, Vector3 } from "three";
|
|
2
2
|
export declare class Snapper {
|
|
3
3
|
camera: Camera;
|
|
4
|
-
|
|
4
|
+
clippingPlanes: Plane[];
|
|
5
5
|
canvas: HTMLCanvasElement;
|
|
6
6
|
threshold: number;
|
|
7
7
|
private raycaster;
|
|
8
8
|
private detectRadiusInPixels;
|
|
9
9
|
private edgesCache;
|
|
10
|
-
constructor(camera: Camera,
|
|
10
|
+
constructor(camera: Camera, clippingPlanes: Plane[], canvas: HTMLCanvasElement);
|
|
11
11
|
isMobile(): boolean;
|
|
12
12
|
getMousePosition(event: MouseEvent, target: Vector2): Vector2;
|
|
13
13
|
getPointerIntersects(mouse: Vector2, objects: Object3D[], recursive?: boolean, clip?: boolean): Array<Intersection<Object3D>>;
|
|
14
14
|
getDetectRadius(point: Vector3): number;
|
|
15
|
-
getSnapPoint(mouse: Vector2, objects: Object3D[]): Vector3;
|
|
15
|
+
getSnapPoint(mouse: Vector2, objects: Object3D[]): Vector3 | undefined;
|
|
16
16
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@inweb/viewer-three",
|
|
3
|
-
"version": "27.
|
|
3
|
+
"version": "27.6.0",
|
|
4
4
|
"description": "JavaScript library for rendering CAD and BIM files in a browser using Three.js",
|
|
5
5
|
"homepage": "https://cloud.opendesign.com/docs/index.html",
|
|
6
6
|
"license": "SEE LICENSE IN LICENSE",
|
|
@@ -35,10 +35,10 @@
|
|
|
35
35
|
"docs": "typedoc"
|
|
36
36
|
},
|
|
37
37
|
"dependencies": {
|
|
38
|
-
"@inweb/client": "~27.
|
|
39
|
-
"@inweb/eventemitter2": "~27.
|
|
40
|
-
"@inweb/markup": "~27.
|
|
41
|
-
"@inweb/viewer-core": "~27.
|
|
38
|
+
"@inweb/client": "~27.6.0",
|
|
39
|
+
"@inweb/eventemitter2": "~27.6.0",
|
|
40
|
+
"@inweb/markup": "~27.6.0",
|
|
41
|
+
"@inweb/viewer-core": "~27.6.0"
|
|
42
42
|
},
|
|
43
43
|
"devDependencies": {
|
|
44
44
|
"@streamparser/json": "^0.0.22",
|