vim-web 0.3.39-dev.5 → 0.3.39-dev.7

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.
Files changed (42) hide show
  1. package/README.md +2 -4
  2. package/dist/style.css +51 -13
  3. package/dist/types/core-viewers/ultra/utils/math3d.d.ts +1 -0
  4. package/dist/types/core-viewers/ultra/viewer/marshal.d.ts +3 -1
  5. package/dist/types/core-viewers/ultra/viewer/renderer.d.ts +6 -0
  6. package/dist/types/core-viewers/ultra/viewer/rpcClient.d.ts +8 -3
  7. package/dist/types/core-viewers/ultra/viewer/rpcSafeClient.d.ts +2 -1
  8. package/dist/types/core-viewers/ultra/viewer/socketClient.d.ts +14 -4
  9. package/dist/types/core-viewers/ultra/viewer/viewer.d.ts +1 -0
  10. package/dist/types/core-viewers/webgl/loader/geometry.d.ts +2 -2
  11. package/dist/types/core-viewers/webgl/loader/materials/outlineMaterial.d.ts +42 -0
  12. package/dist/types/core-viewers/webgl/loader/materials/standardMaterial.d.ts +5 -5
  13. package/dist/types/core-viewers/webgl/loader/materials/viewerMaterials.d.ts +2 -0
  14. package/dist/types/core-viewers/webgl/loader/mesh.d.ts +2 -2
  15. package/dist/types/core-viewers/webgl/loader/progressive/g3dSubset.d.ts +3 -1
  16. package/dist/types/core-viewers/webgl/loader/progressive/insertableSubmesh.d.ts +1 -1
  17. package/dist/types/core-viewers/webgl/loader/progressive/instancedSubmesh.d.ts +1 -1
  18. package/dist/types/core-viewers/webgl/utils/boxes.d.ts +1 -1
  19. package/dist/types/core-viewers/webgl/viewer/gizmos/sectionBox/sectionBoxInputs.d.ts +1 -1
  20. package/dist/types/core-viewers/webgl/viewer/raycaster.d.ts +1 -1
  21. package/dist/types/core-viewers/webgl/viewer/rendering/mergePass.d.ts +3 -1
  22. package/dist/types/core-viewers/webgl/viewer/rendering/outlinePass.d.ts +1 -1
  23. package/dist/types/core-viewers/webgl/viewer/rendering/renderScene.d.ts +4 -0
  24. package/dist/types/core-viewers/webgl/viewer/rendering/renderer.d.ts +4 -0
  25. package/dist/types/core-viewers/webgl/viewer/rendering/renderingComposer.d.ts +59 -10
  26. package/dist/types/core-viewers/webgl/viewer/rendering/transferPass.d.ts +3 -1
  27. package/dist/types/core-viewers/webgl/viewer/settings/viewerSettings.d.ts +5 -0
  28. package/dist/types/react-viewers/errors/errors.d.ts +6 -5
  29. package/dist/types/react-viewers/{errors → ultra/errors}/fileLoadingError.d.ts +1 -1
  30. package/dist/types/react-viewers/{errors → ultra/errors}/fileOpeningError.d.ts +1 -1
  31. package/dist/types/react-viewers/{errors → ultra/errors}/serverCompatibilityError.d.ts +1 -1
  32. package/dist/types/react-viewers/{errors → ultra/errors}/serverConnectionError.d.ts +1 -1
  33. package/dist/types/react-viewers/ultra/errors/serverFileDownloadingError.d.ts +2 -0
  34. package/dist/types/react-viewers/ultra/errors/serverStreamError.d.ts +2 -0
  35. package/dist/types/react-viewers/ultra/errors/ultraErrors.d.ts +3 -0
  36. package/dist/vim-web.iife.js +24439 -21259
  37. package/dist/vim-web.iife.js.map +1 -1
  38. package/dist/vim-web.js +24441 -21261
  39. package/dist/vim-web.js.map +1 -1
  40. package/package.json +3 -3
  41. package/dist/types/react-viewers/errors/fileDownloadingError.d.ts +0 -2
  42. package/dist/types/react-viewers/ultra/ultraErrors.d.ts +0 -3
@@ -7,40 +7,89 @@ import { RenderScene } from './renderScene';
7
7
  import { ViewerMaterials } from '../../loader/materials/viewerMaterials';
8
8
  import { Camera } from '../camera/camera';
9
9
  /**
10
- * Composer for AA and Outline effects.
10
+ * Composer for managing the rendering pipeline including anti-aliasing and outline effects.
11
+ * Handles the orchestration of multiple render passes including:
12
+ * - Main scene rendering
13
+ * - Selection outline rendering
14
+ * - FXAA anti-aliasing
15
+ * - Final composition and screen output
11
16
  */
12
17
  export declare class RenderingComposer {
13
18
  private _renderer;
14
19
  private _scene;
15
20
  private _materials;
16
21
  private _camera;
17
- private _samples;
18
22
  private _size;
19
23
  private _composer;
20
24
  private _renderPass;
21
- private _ssaaRenderPass;
22
25
  private _selectionRenderPass;
23
26
  private _transferPass;
27
+ private _outlineFxaaPass;
24
28
  private _outlines;
25
29
  private _clock;
26
- private _nextAATime;
27
- onDemand: boolean;
28
30
  private _outlinePass;
29
- private _fxaaPass;
30
31
  private _mergePass;
31
32
  private _outlineTarget;
32
33
  private _sceneTarget;
34
+ /**
35
+ * Creates a new RenderingComposer instance
36
+ * @param renderer - The WebGL renderer instance
37
+ * @param scene - The scene to be rendered
38
+ * @param viewport - The viewport containing size information
39
+ * @param materials - Materials used for rendering including outline and mask materials
40
+ * @param camera - The camera used for rendering
41
+ */
33
42
  constructor(renderer: THREE.WebGLRenderer, scene: RenderScene, viewport: Viewport, materials: ViewerMaterials, camera: Camera);
34
- private setup;
35
- private setupRendering;
36
- private setupOutline;
43
+ /**
44
+ * Initializes the main scene rendering pipeline
45
+ * Creates render targets and sets up the main render pass
46
+ * @private
47
+ */
48
+ private initSceneRenderingPipeline;
49
+ /**
50
+ * Initializes the outline rendering pipeline
51
+ * Sets up render targets and passes for selection, outline, FXAA, and final composition
52
+ * @private
53
+ */
54
+ private initOutlinePipeline;
55
+ /**
56
+ * @returns Whether outline rendering is enabled
57
+ */
37
58
  get outlines(): boolean;
59
+ /**
60
+ * Enables or disables outline rendering
61
+ */
38
62
  set outlines(value: boolean);
63
+ /**
64
+ * @returns The current camera
65
+ */
39
66
  get camera(): THREE.PerspectiveCamera | THREE.OrthographicCamera;
67
+ /**
68
+ * Updates the camera across all render passes
69
+ */
40
70
  set camera(value: THREE.PerspectiveCamera | THREE.OrthographicCamera);
71
+ /**
72
+ * Updates the size of all render targets and passes
73
+ * @param width - New width in pixels
74
+ * @param height - New height in pixels
75
+ */
41
76
  setSize(width: number, height: number): void;
77
+ /**
78
+ * @returns The current MSAA sample count
79
+ */
42
80
  get samples(): number;
81
+ /**
82
+ * Sets the MSAA sample count for the scene render target
83
+ */
43
84
  set samples(value: number);
44
- render(updated: boolean, antialias: boolean): void;
85
+ /**
86
+ * Executes the complete rendering pipeline
87
+ * First renders the main scene, then processes outlines if enabled
88
+ */
89
+ render(): void;
90
+ /**
91
+ * Cleans up all resources used by the composer
92
+ * Should be called when the composer is no longer needed
93
+ */
45
94
  dispose(): void;
46
95
  }
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @module viw-webgl-viewer/rendering
3
3
  */
4
- import THREE from 'three';
4
+ import * as THREE from 'three';
5
5
  import { Pass } from 'three/examples/jsm/postprocessing/Pass';
6
6
  /**
7
7
  * Copies a source buffer to the current write buffer.
@@ -10,6 +10,8 @@ export declare class TransferPass extends Pass {
10
10
  private _fsQuad;
11
11
  private _uniforms;
12
12
  constructor(sceneTexture: THREE.Texture);
13
+ get source(): THREE.Texture;
14
+ set source(value: THREE.Texture);
13
15
  dispose(): void;
14
16
  render(renderer: THREE.WebGLRenderer, writeBuffer: THREE.WebGLRenderTarget, readBuffer: THREE.WebGLRenderTarget): void;
15
17
  }
@@ -264,6 +264,11 @@ export type ViewerSettings = {
264
264
  * Selection outline options
265
265
  */
266
266
  outline: {
267
+ /**
268
+ * Enable antialiasing for the outline.
269
+ * Default: false
270
+ */
271
+ antialias: boolean;
267
272
  /**
268
273
  * Selection outline intensity.
269
274
  * Default: 3
@@ -1,5 +1,6 @@
1
- export { fileOpeningError } from './fileOpeningError';
2
- export { fileDownloadingError as serverFileDownloadingError } from './fileDownloadingError';
3
- export { serverFileLoadingError } from './fileLoadingError';
4
- export { serverConnectionError } from './serverConnectionError';
5
- export { serverCompatibilityError } from './serverCompatibilityError';
1
+ export { fileOpeningError } from '../ultra/errors/fileOpeningError';
2
+ export { serverFileDownloadingError } from '../ultra/errors/serverFileDownloadingError';
3
+ export { serverFileLoadingError } from '../ultra/errors/fileLoadingError';
4
+ export { serverConnectionError } from '../ultra/errors/serverConnectionError';
5
+ export { serverCompatibilityError } from '../ultra/errors/serverCompatibilityError';
6
+ export { serverStreamError } from '../ultra/errors/serverStreamError';
@@ -1,2 +1,2 @@
1
- import { MessageBoxProps } from '../panels/messageBox';
1
+ import { MessageBoxProps } from '../../panels/messageBox';
2
2
  export declare function serverFileLoadingError(url: string): MessageBoxProps;
@@ -1,2 +1,2 @@
1
- import { MessageBoxProps } from '../panels/messageBox';
1
+ import { MessageBoxProps } from '../../panels/messageBox';
2
2
  export declare function fileOpeningError(url: string): MessageBoxProps;
@@ -1,2 +1,2 @@
1
- import { MessageBoxProps } from '../panels/messageBox';
1
+ import { MessageBoxProps } from '../../panels/messageBox';
2
2
  export declare function serverCompatibilityError(url: string, localVersion: string, remoteVersion: string): MessageBoxProps;
@@ -1,2 +1,2 @@
1
- import { MessageBoxProps } from '../panels/messageBox';
1
+ import { MessageBoxProps } from '../../panels/messageBox';
2
2
  export declare function serverConnectionError(url: string): MessageBoxProps;
@@ -0,0 +1,2 @@
1
+ import { MessageBoxProps } from '../../panels/messageBox';
2
+ export declare function serverFileDownloadingError(url: string, server?: string): MessageBoxProps;
@@ -0,0 +1,2 @@
1
+ import { MessageBoxProps } from '../../panels/messageBox';
2
+ export declare function serverStreamError(url: string): MessageBoxProps;
@@ -0,0 +1,3 @@
1
+ import * as Ultra from '../../../core-viewers/ultra';
2
+ export declare function getErrorMessage(state: Ultra.ClientState): import("../..").MessageBoxProps;
3
+ export declare function getRequestErrorMessage(url: string, error: Ultra.VimRequestErrorType): import("../..").MessageBoxProps;