viral-viewer-2 6.6.2 → 6.6.4

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.
@@ -1,2 +1,4 @@
1
1
  import { ViralInstancedMesh } from "./viral-instanced-mesh";
2
- export { ViralInstancedMesh };
2
+ import { ViralMergedMesh } from "./viral-merged-mesh";
3
+ import { ViralMergedModel } from "./viral-merged-model";
4
+ export { ViralInstancedMesh, ViralMergedModel, ViralMergedMesh };
@@ -25,6 +25,7 @@ export declare class ViralInstancedMesh extends InstancedMesh {
25
25
  selectAts(indexs: number[], material: Material): void;
26
26
  overrideObjects(reverseToOriginal?: boolean): void;
27
27
  totalSelectedIndex(): number[];
28
+ getSelectedElementIds(): any[];
28
29
  reverseIndex(clearHoverIndexs?: boolean, clearSelectIndexs?: boolean): void;
29
30
  reverseToOriginal(reverseHoverMeshes?: boolean, reverseSelectMeshes?: boolean, reverseInstanceData?: boolean): void;
30
31
  getDistinctNumbers(numbers: number[]): number[];
@@ -0,0 +1,15 @@
1
+ import { BufferGeometry, Material, Mesh } from "three";
2
+ import { BufferElement } from "../..";
3
+ export declare class ViralMergedMesh extends Mesh {
4
+ constructor(geometry?: BufferGeometry, material?: Material);
5
+ addBufferElements(bufferElements: BufferElement[]): void;
6
+ private _isHidingElementIds;
7
+ hide(elementId: string): void;
8
+ reset(): void;
9
+ /**
10
+ * *for tracking and manage element visibility, for instance hide object
11
+ */
12
+ _bufferElements: BufferElement[];
13
+ rebuildGeometry(buffers: Float32Array<ArrayBuffer>[]): void;
14
+ private mergeFloat32Arrays;
15
+ }
@@ -0,0 +1,11 @@
1
+ import { Mesh } from "three";
2
+ import { ViralMergedMesh } from "./viral-merged-mesh";
3
+ export declare class ViralMergedModel extends Mesh {
4
+ constructor();
5
+ isReady: boolean;
6
+ setReady(value: boolean): void;
7
+ private _mergedMeshes;
8
+ addMergedMesh(mesh: ViralMergedMesh): void;
9
+ hide(elementId: string): void;
10
+ reset(): void;
11
+ }
@@ -5,6 +5,9 @@ export declare class ViralCentralizedEventHandler {
5
5
  constructor(viralViewerApi: ViralViewerApi);
6
6
  private elementProperties;
7
7
  private contextMenuEventHandler;
8
+ /**
9
+ * this for optimize purpose; when renderer become too heavy, it will hide object when camera move
10
+ */
8
11
  cameraHandler(): void;
9
12
  windowHandler(): void;
10
13
  handleResize(entries: any): void;
@@ -0,0 +1,8 @@
1
+ import { RevitTransform, ViralPoint, ViralViewerApi } from "../..";
2
+ export declare class ViralGeometryHandler {
3
+ viralViewerApi: ViralViewerApi;
4
+ constructor(viralViewerApi: ViralViewerApi);
5
+ generateBuffer(indices: number[], vertices: ViralPoint[], transform?: RevitTransform | null): Float32Array;
6
+ mergeFloat32Arrays(buffers: Float32Array<ArrayBuffer>[]): Float32Array;
7
+ generateMergeModel(): void;
8
+ }
@@ -0,0 +1,6 @@
1
+ import { ViralViewerApi } from "../..";
2
+ export declare class ViralIFCLoader {
3
+ viralViewerApi: ViralViewerApi;
4
+ constructor(viralViewerApi: ViralViewerApi);
5
+ load(trackingUrl: string, dataUrl: string): Promise<void>;
6
+ }
@@ -1,7 +1,9 @@
1
- import { RevitTransform, ViralPoint, ViralViewerRevitProject, ViralutionFragmentModel } from "../../types";
1
+ import { RevitTransform, ViralPoint, ViralViewerRevitProject, ViralutionElement, ViralutionFragmentModel } from "../../types";
2
2
  import { ViralViewerApi } from "../../viral-viewer-api";
3
3
  export declare class ViralRevitLoader {
4
4
  viralViewerApi: ViralViewerApi;
5
+ rawData: any[];
6
+ elements: ViralutionElement[];
5
7
  private _loadElementStandaloneWorker;
6
8
  private _loadElementByMaterialWorker;
7
9
  private _loadElementByMaterialV2Worker;
@@ -1,11 +1,13 @@
1
1
  import { ViralViewerApi } from "../../viral-viewer-api";
2
+ import { ViralIFCLoader } from "./viral-ifc.loader";
2
3
  import { ViralPointCloudLoader } from "./viral-point-cloud.loader";
3
4
  import { ViralRevitLoader } from "./viral-revit.loader";
4
5
  import { ViralThreeLoader } from "./viral-three.loader";
5
6
  export declare class ViralLoader {
6
7
  viralViewerApi: ViralViewerApi;
7
- viralRevitLoader: ViralRevitLoader;
8
+ revitLoader: ViralRevitLoader;
8
9
  pointCloudLoader: ViralPointCloudLoader;
9
10
  threeLoader: ViralThreeLoader;
11
+ ifcLoader: ViralIFCLoader;
10
12
  constructor(viralViewerApi: ViralViewerApi);
11
13
  }
@@ -1,5 +1,4 @@
1
1
  import { Camera, Scene, WebGLRenderer } from "three";
2
- import { N8AOPass } from "../../threejs-addon/n8ao/n8ao";
3
2
  import { EffectComposer } from "three/examples/jsm/postprocessing/EffectComposer";
4
3
  import { SMAAPass } from "three/examples/jsm/postprocessing/SMAAPass";
5
4
  import { ShaderPass } from "three/examples/jsm/postprocessing/ShaderPass";
@@ -8,12 +7,10 @@ export declare class PostProcessingRenderer {
8
7
  composer: EffectComposer;
9
8
  renderPass: any;
10
9
  gammaPass: ShaderPass | null;
11
- na8oPass: N8AOPass | null;
12
10
  smaaPass: SMAAPass | null;
13
11
  constructor(renderer: WebGLRenderer);
14
12
  render(): void;
15
13
  initRenderPass(scene: Scene, camera: Camera): void;
16
14
  initGammaPass(): void;
17
- initN8aoPass(scene: Scene, camera: Camera): void;
18
15
  initSMAAPass(): void;
19
16
  }
@@ -1,6 +1,7 @@
1
1
  import { Scene, Mesh, Object3D, Light, CameraHelper } from "three";
2
2
  import { ViralViewerApi } from "../../viral-viewer-api";
3
3
  import { TransformControls } from "three/examples/jsm/controls/TransformControls";
4
+ import { ViralMergedModel } from "../custom-objects/viral-merged-model";
4
5
  export declare class ViralScene {
5
6
  viralViewerApi: ViralViewerApi;
6
7
  scene: Scene;
@@ -8,6 +9,7 @@ export declare class ViralScene {
8
9
  models: Object3D[];
9
10
  mainModel: Mesh;
10
11
  isolateModel: Mesh;
12
+ mergedModel: ViralMergedModel;
11
13
  hideables: Object3D[];
12
14
  selectables: Object3D[];
13
15
  edges: Object3D[];
@@ -18,6 +20,11 @@ export declare class ViralScene {
18
20
  addObject(object: Object3D): void;
19
21
  addModel(object: Object3D): void;
20
22
  addEdge(object: Object3D): void;
23
+ /**
24
+ * //* add merged mesh into merged model
25
+ * @param object
26
+ */
27
+ addMergedObject(object: Object3D): void;
21
28
  getObjectByName(name: string): Object3D<import("three").Object3DEventMap> | undefined;
22
29
  addLights(): void;
23
30
  addPivotPoint(): void;
@@ -3,6 +3,7 @@ import { CubeCamera } from "./components/cube-camera";
3
3
  import { CubeRenderer } from "./components/cube-renderer";
4
4
  import { CubeScene } from "./components/cube-scene";
5
5
  import { CubeMouse } from "./components/cube.mouse";
6
+ import { ViewportGizmo } from "three-viewport-gizmo";
6
7
  export declare class ViralNavigationCube {
7
8
  viralViewerApi: ViralViewerApi;
8
9
  targetElement: HTMLElement | null;
@@ -10,6 +11,7 @@ export declare class ViralNavigationCube {
10
11
  cubeRenderer: CubeRenderer | null;
11
12
  cubeCamera: CubeCamera | null;
12
13
  cubeMouse: CubeMouse | null;
14
+ gizmo: ViewportGizmo | null;
13
15
  constructor(viralViewerApi: ViralViewerApi);
14
16
  private injectCubeWrapperElement;
15
17
  private handleClick;