copper3d 1.15.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.
Files changed (130) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +105 -0
  3. package/dist/Controls/Copper3dTrackballControls.d.ts +45 -0
  4. package/dist/Controls/Copper3dTrackballControls.js +543 -0
  5. package/dist/Controls/Copper3dTrackballControls.js.map +1 -0
  6. package/dist/Controls/copperControls.d.ts +17 -0
  7. package/dist/Controls/copperControls.js +36 -0
  8. package/dist/Controls/copperControls.js.map +1 -0
  9. package/dist/Loader/convet.d.ts +1 -0
  10. package/dist/Loader/convet.js +80 -0
  11. package/dist/Loader/convet.js.map +1 -0
  12. package/dist/Loader/copperDicomLoader.d.ts +7 -0
  13. package/dist/Loader/copperDicomLoader.js +113 -0
  14. package/dist/Loader/copperDicomLoader.js.map +1 -0
  15. package/dist/Loader/copperGltfLoader.d.ts +3 -0
  16. package/dist/Loader/copperGltfLoader.js +16 -0
  17. package/dist/Loader/copperGltfLoader.js.map +1 -0
  18. package/dist/Loader/copperNrrdLoader.d.ts +13 -0
  19. package/dist/Loader/copperNrrdLoader.js +424 -0
  20. package/dist/Loader/copperNrrdLoader.js.map +1 -0
  21. package/dist/Loader/copperOBJLoader.d.ts +3 -0
  22. package/dist/Loader/copperOBJLoader.js +4 -0
  23. package/dist/Loader/copperOBJLoader.js.map +1 -0
  24. package/dist/Loader/copperVtkLoader.d.ts +8 -0
  25. package/dist/Loader/copperVtkLoader.js +44 -0
  26. package/dist/Loader/copperVtkLoader.js.map +1 -0
  27. package/dist/Renderer/baseRenderer.d.ts +30 -0
  28. package/dist/Renderer/baseRenderer.js +223 -0
  29. package/dist/Renderer/baseRenderer.js.map +1 -0
  30. package/dist/Renderer/copperMSceneRenderer.d.ts +21 -0
  31. package/dist/Renderer/copperMSceneRenderer.js +115 -0
  32. package/dist/Renderer/copperMSceneRenderer.js.map +1 -0
  33. package/dist/Renderer/copperRenderer.d.ts +15 -0
  34. package/dist/Renderer/copperRenderer.js +52 -0
  35. package/dist/Renderer/copperRenderer.js.map +1 -0
  36. package/dist/Renderer/copperRendererOnDemond.d.ts +13 -0
  37. package/dist/Renderer/copperRendererOnDemond.js +44 -0
  38. package/dist/Renderer/copperRendererOnDemond.js.map +1 -0
  39. package/dist/Scene/baseScene.d.ts +38 -0
  40. package/dist/Scene/baseScene.js +180 -0
  41. package/dist/Scene/baseScene.js.map +1 -0
  42. package/dist/Scene/commonSceneMethod.d.ts +45 -0
  43. package/dist/Scene/commonSceneMethod.js +258 -0
  44. package/dist/Scene/commonSceneMethod.js.map +1 -0
  45. package/dist/Scene/copperMScene.d.ts +42 -0
  46. package/dist/Scene/copperMScene.js +325 -0
  47. package/dist/Scene/copperMScene.js.map +1 -0
  48. package/dist/Scene/copperScene.d.ts +34 -0
  49. package/dist/Scene/copperScene.js +303 -0
  50. package/dist/Scene/copperScene.js.map +1 -0
  51. package/dist/Scene/copperSceneOnDemond.d.ts +13 -0
  52. package/dist/Scene/copperSceneOnDemond.js +60 -0
  53. package/dist/Scene/copperSceneOnDemond.js.map +1 -0
  54. package/dist/Utils/add3DLabel.d.ts +18 -0
  55. package/dist/Utils/add3DLabel.js +66 -0
  56. package/dist/Utils/add3DLabel.js.map +1 -0
  57. package/dist/Utils/download.d.ts +1 -0
  58. package/dist/Utils/download.js +21 -0
  59. package/dist/Utils/download.js.map +1 -0
  60. package/dist/Utils/getVOILUT.d.ts +13 -0
  61. package/dist/Utils/getVOILUT.js +78 -0
  62. package/dist/Utils/getVOILUT.js.map +1 -0
  63. package/dist/Utils/kiwrious/configKiwrious.d.ts +4 -0
  64. package/dist/Utils/kiwrious/configKiwrious.js +59 -0
  65. package/dist/Utils/kiwrious/configKiwrious.js.map +1 -0
  66. package/dist/Utils/nrrd_tool.d.ts +187 -0
  67. package/dist/Utils/nrrd_tool.js +2173 -0
  68. package/dist/Utils/nrrd_tool.js.map +1 -0
  69. package/dist/Utils/raycaster.d.ts +9 -0
  70. package/dist/Utils/raycaster.js +75 -0
  71. package/dist/Utils/raycaster.js.map +1 -0
  72. package/dist/Utils/texture2d.d.ts +10 -0
  73. package/dist/Utils/texture2d.js +111 -0
  74. package/dist/Utils/texture2d.js.map +1 -0
  75. package/dist/Utils/utils.d.ts +8 -0
  76. package/dist/Utils/utils.js +141 -0
  77. package/dist/Utils/utils.js.map +1 -0
  78. package/dist/Utils/workers/reformatSaveDataWorker.d.ts +13 -0
  79. package/dist/Utils/workers/reformatSaveDataWorker.js +107 -0
  80. package/dist/Utils/workers/reformatSaveDataWorker.js.map +1 -0
  81. package/dist/bundle.esm.js +68951 -0
  82. package/dist/bundle.umd.js +68982 -0
  83. package/dist/css/style.css +168 -0
  84. package/dist/index.d.ts +21 -0
  85. package/dist/index.js +22 -0
  86. package/dist/index.js.map +1 -0
  87. package/dist/lib/dicom_pharser_dictionary.d.ts +1 -0
  88. package/dist/lib/dicom_pharser_dictionary.js +28116 -0
  89. package/dist/lib/dicom_pharser_dictionary.js.map +1 -0
  90. package/dist/lib/environment/index.d.ts +8 -0
  91. package/dist/lib/environment/index.js +28 -0
  92. package/dist/lib/environment/index.js.map +1 -0
  93. package/dist/lib/three-vignette.d.ts +11 -0
  94. package/dist/lib/three-vignette.js +93 -0
  95. package/dist/lib/three-vignette.js.map +1 -0
  96. package/dist/types/Controls/Copper3dTrackballControls.d.ts +45 -0
  97. package/dist/types/Controls/copperControls.d.ts +17 -0
  98. package/dist/types/Loader/convet.d.ts +1 -0
  99. package/dist/types/Loader/copperDicomLoader.d.ts +7 -0
  100. package/dist/types/Loader/copperGltfLoader.d.ts +3 -0
  101. package/dist/types/Loader/copperNrrdLoader.d.ts +13 -0
  102. package/dist/types/Loader/copperOBJLoader.d.ts +3 -0
  103. package/dist/types/Loader/copperVtkLoader.d.ts +8 -0
  104. package/dist/types/Renderer/baseRenderer.d.ts +30 -0
  105. package/dist/types/Renderer/copperMSceneRenderer.d.ts +21 -0
  106. package/dist/types/Renderer/copperRenderer.d.ts +15 -0
  107. package/dist/types/Renderer/copperRendererOnDemond.d.ts +13 -0
  108. package/dist/types/Scene/baseScene.d.ts +38 -0
  109. package/dist/types/Scene/commonSceneMethod.d.ts +45 -0
  110. package/dist/types/Scene/copperMScene.d.ts +42 -0
  111. package/dist/types/Scene/copperScene.d.ts +34 -0
  112. package/dist/types/Scene/copperSceneOnDemond.d.ts +13 -0
  113. package/dist/types/Utils/add3DLabel.d.ts +18 -0
  114. package/dist/types/Utils/download.d.ts +1 -0
  115. package/dist/types/Utils/getVOILUT.d.ts +13 -0
  116. package/dist/types/Utils/kiwrious/configKiwrious.d.ts +4 -0
  117. package/dist/types/Utils/nrrd_tool.d.ts +187 -0
  118. package/dist/types/Utils/raycaster.d.ts +9 -0
  119. package/dist/types/Utils/texture2d.d.ts +10 -0
  120. package/dist/types/Utils/utils.d.ts +8 -0
  121. package/dist/types/Utils/workers/reformatSaveDataWorker.d.ts +13 -0
  122. package/dist/types/index.d.ts +21 -0
  123. package/dist/types/lib/dicom_pharser_dictionary.d.ts +1 -0
  124. package/dist/types/lib/environment/index.d.ts +8 -0
  125. package/dist/types/lib/three-vignette.d.ts +11 -0
  126. package/dist/types/types/types.d.ts +198 -0
  127. package/dist/types/types.d.ts +198 -0
  128. package/dist/types/types.js +2 -0
  129. package/dist/types/types.js.map +1 -0
  130. package/package.json +60 -0
@@ -0,0 +1,187 @@
1
+ import { GUI } from "dat.gui";
2
+ import { nrrdSliceType, nrrdDragImageOptType, nrrdDrawImageOptType, paintImagesType, storedPaintImagesType, storeExportPaintImageType, loadingBarType } from "../types/types";
3
+ import copperMScene from "../Scene/copperMScene";
4
+ import copperScene from "../Scene/copperScene";
5
+ export declare class nrrd_tools {
6
+ container: HTMLDivElement;
7
+ paintImagesLabel1: paintImagesType;
8
+ paintImagesLabel2: paintImagesType;
9
+ paintImagesLabel3: paintImagesType;
10
+ storedPaintImages: storedPaintImagesType;
11
+ paintImages: paintImagesType;
12
+ private allSlicesArray;
13
+ private displaySlices;
14
+ private backUpDisplaySlices;
15
+ private skipSlicesDic;
16
+ private axis;
17
+ private mainAreaContainer;
18
+ private showDragNumberDiv;
19
+ private drawingCanvas;
20
+ private displayCanvas;
21
+ private downloadCanvas;
22
+ private emptyCanvas;
23
+ private downloadImage;
24
+ private drawingCanvasLayerMaster;
25
+ private drawingCanvasLayerOne;
26
+ private drawingCanvasLayerTwo;
27
+ private drawingCanvasLayerThree;
28
+ private currentShowingSlice;
29
+ private displayCtx;
30
+ private drawingCtx;
31
+ private emptyCtx;
32
+ private drawingLayerMasterCtx;
33
+ private drawingLayerOneCtx;
34
+ private drawingLayerTwoCtx;
35
+ private drawingLayerThreeCtx;
36
+ private originCanvas;
37
+ private mainPreSlice;
38
+ private sceneIn;
39
+ private Is_Shift_Pressed;
40
+ private Is_Draw;
41
+ private sensitiveArray;
42
+ private handleWheelMove;
43
+ start: () => void;
44
+ private paintedImage;
45
+ private previousDrawingImage;
46
+ private undoArray;
47
+ private initState;
48
+ private preTimer;
49
+ private eraserUrls;
50
+ private nrrd_states;
51
+ private cursorPage;
52
+ private gui_states;
53
+ constructor(container: HTMLDivElement);
54
+ /**
55
+ * A initialise function for nrrd_tools
56
+ */
57
+ private init;
58
+ /**
59
+ *
60
+ * entry function
61
+ *
62
+ * @param allSlices - all nrrd contrast slices
63
+ * {
64
+ * x:slice,
65
+ * y:slice,
66
+ * z:slice
67
+ * }
68
+ */
69
+ setAllSlices(allSlices: Array<nrrdSliceType>): void;
70
+ private loadingMaskByLabel;
71
+ setMasksData(masksData: storeExportPaintImageType, loadingBar?: loadingBarType): void;
72
+ setEraserUrls(urls: string[]): void;
73
+ getCurrentImageDimension(): never[];
74
+ getVoxelSpacing(): never[];
75
+ getSpaceOrigin(): never[];
76
+ private getSharedPlace;
77
+ /**
78
+ * init all painted images for store images
79
+ * @param dimensions
80
+ */
81
+ private initPaintImages;
82
+ private createEmptyPaintImage;
83
+ /**
84
+ * Switch all contrast slices' orientation
85
+ * @param {string} aixs:"x" | "y" | "z"
86
+ * */
87
+ setSliceOrientation(axis: "x" | "y" | "z"): void;
88
+ addSkip(index: number): void;
89
+ removeSkip(index: number): void;
90
+ clear(): void;
91
+ setSliceMoving(step: number): void;
92
+ setShowInMainArea(isShowContrast: boolean): void;
93
+ setMainAreaSize(factor: number): void;
94
+ getMaxSliceNum(): number[];
95
+ getCurrentSlicesNumAndContrastNum(): {
96
+ currentIndex: number;
97
+ contrastIndex: number;
98
+ };
99
+ getCurrentSliceIndex(): number;
100
+ getIsShowContrastState(): boolean;
101
+ private setIsDrawFalse;
102
+ private setDisplaySlicesBaseOnAxis;
103
+ private loadDisplaySlicesArray;
104
+ private resetDisplaySlicesStatus;
105
+ private setupConfigs;
106
+ private setMainPreSlice;
107
+ private setOriginCanvasAndPre;
108
+ private afterLoadSlice;
109
+ private updateMaxIndex;
110
+ private updateCurrentContrastSlice;
111
+ private createShowSliceNumberDiv;
112
+ private updateOriginAndChangedWH;
113
+ private initAllCanvas;
114
+ private autoFocusDiv;
115
+ private setSyncsliceNum;
116
+ private repraintCurrentContrastSlice;
117
+ private repraintAllContrastSlices;
118
+ private updateShowNumDiv;
119
+ appendLoadingbar(loadingbar: HTMLDivElement): void;
120
+ drag(opts?: nrrdDragImageOptType): void;
121
+ private updateIndex;
122
+ private drawDragSlice;
123
+ private drawMaskToLabelCtx;
124
+ draw(sceneIn: copperMScene | copperScene, gui: GUI, opts?: nrrdDrawImageOptType): void;
125
+ private paintOnCanvas;
126
+ private drawLine;
127
+ private undoLastPainting;
128
+ private getCurrentUndo;
129
+ private configMouseWheel;
130
+ private useEraser;
131
+ private clearPaint;
132
+ private getRestLabel;
133
+ private clearStoreImages;
134
+ private enableDownload;
135
+ private paintOnCanvasLayer;
136
+ private drawLinesOnLayer;
137
+ private setCurrentLayer;
138
+ private configGui;
139
+ private updateSlicesContrast;
140
+ private resetPaintArea;
141
+ private resetLayerCanvas;
142
+ private redrawDisplayCanvas;
143
+ redrawMianPreOnDisplayCanvas(): void;
144
+ private resizePaintArea;
145
+ /**
146
+ * Used to init the mask on each label and reload
147
+ * @param paintImages
148
+ * @param ctx
149
+ */
150
+ private reloadMaskToLabel;
151
+ private flipDisplayImageByAxis;
152
+ private filterDrawedImage;
153
+ removeGuiFolderChilden(modeFolder: GUI): void;
154
+ private verifyCanvasIsEmpty;
155
+ private clearDictionary;
156
+ private storeAllImages;
157
+ private storeImageToAxis;
158
+ private storeImageToLabel;
159
+ private storeEachLayerImage;
160
+ private sliceArrayH;
161
+ private sliceArrayV;
162
+ /**
163
+ *
164
+ * @param paintImageArray : the target view slice's marked images array
165
+ * @param length : the target view slice's dimention (total slice index num)
166
+ * @param ratio : the target slice image's width/height ratio of its dimention length
167
+ * @param markedArr : current painted image's vertical 2d Array
168
+ * @param targetWidth : the target image width
169
+ * @param convertIndex : Mapping current image's index to target slice image's width/height pixel start point
170
+ */
171
+ private replaceVerticalColPixels;
172
+ /**
173
+ *
174
+ * @param paintImageArray : the target view slice's marked images array
175
+ * @param length : the target view slice's dimention (total slice index num)
176
+ * @param ratio : the target slice image's width/height ratio of its dimention length
177
+ * @param markedArr : current painted image's horizontal 2d Array
178
+ * @param targetWidth : the target image width
179
+ * @param convertIndex : Mapping current image's index to target slice image's width/height pixel start point
180
+ */
181
+ private replaceHorizontalRowPixels;
182
+ private setEmptyCanvasSize;
183
+ private checkSharedPlaceSlice;
184
+ private replaceArray;
185
+ private findSliceInSharedPlace;
186
+ private exportData;
187
+ }
@@ -0,0 +1,9 @@
1
+ import * as THREE from "three";
2
+ import { mouseMovePositionType } from "../types/types";
3
+ export declare function pickModelDefault(camera: THREE.PerspectiveCamera, container: HTMLDivElement, pickableObjects: THREE.Mesh[], callback: (selectMesh: THREE.Mesh | undefined) => void): void;
4
+ export declare function throttle(callback: (event: MouseEvent) => void, wait: number): (event: MouseEvent) => void;
5
+ export declare function isPickedModel(camera: THREE.PerspectiveCamera, container: HTMLDivElement, pickableObjects: THREE.Mesh[], mouseMovePosition: mouseMovePositionType): {
6
+ intersectedObject: THREE.Object3D<THREE.Event> | null;
7
+ intersects: THREE.Intersection<THREE.Object3D<THREE.Event>>[];
8
+ };
9
+ export declare function dragImage(): void;
@@ -0,0 +1,10 @@
1
+ import * as THREE from "three";
2
+ import { copperVolumeType } from "../types/types";
3
+ import { GUI } from "dat.gui";
4
+ export declare function createTexture2D_Zip(url: string, scene: THREE.Scene): void;
5
+ export declare function createTexture2D_NRRD(data: Uint8Array, width: number, height: number, depth: number, callback: (mesh: THREE.Mesh) => void): void;
6
+ export declare function createTexture2D_Array(copperVolume: copperVolumeType, depth: number, scene: THREE.Scene, gui?: GUI): {
7
+ mesh: THREE.Mesh<THREE.PlaneGeometry, THREE.ShaderMaterial>;
8
+ copperVolume: copperVolumeType;
9
+ updateTexture: (copperVolumeUp: copperVolumeType) => void;
10
+ };
@@ -0,0 +1,8 @@
1
+ export declare function fullScreenListenner(container: HTMLDivElement | HTMLCanvasElement): void;
2
+ export declare function isIOS(): boolean;
3
+ export declare function traverseMaterials(object: THREE.Group, callback: (material: any) => void): void;
4
+ export declare function loading(): {
5
+ loadingContainer: HTMLDivElement;
6
+ progress: HTMLDivElement;
7
+ };
8
+ export declare function switchEraserSize(size: number, urls?: string[]): string;
@@ -0,0 +1,13 @@
1
+ import { paintImageType } from "../../types/types";
2
+ declare function pruningData(originArr: paintImageType[]): Uint8ClampedArray[];
3
+ declare function restructData(originArr: paintImageType[], len: number, width: number, height: number): {
4
+ sliceIndex: number;
5
+ dataFormat: string;
6
+ width: number;
7
+ height: number;
8
+ voxelSpacing: number;
9
+ spaceOrigin: number;
10
+ data: never[];
11
+ }[];
12
+ declare function convertReformatDataToBlob(maskData: any): false | Blob;
13
+ export { pruningData, restructData, convertReformatDataToBlob };
@@ -0,0 +1,21 @@
1
+ import copperRenderer from "./Renderer/copperRenderer";
2
+ import { setHDRFilePath } from "./lib/environment/index";
3
+ import copperScene from "./Scene/copperScene";
4
+ import { CameraViewPoint } from "./Controls/copperControls";
5
+ import { addLabelToScene, positionType, screenPosType, convert3DPostoScreenPos, convertScreenPosto3DPos } from "./Utils/add3DLabel";
6
+ import { addBoxHelper, optsType } from "./Loader/copperNrrdLoader";
7
+ import { fullScreenListenner, loading } from "./Utils/utils";
8
+ import copperRendererOnDemond from "./Renderer/copperRendererOnDemond";
9
+ import copperSceneOnDemond from "./Scene/copperSceneOnDemond";
10
+ import copperMSceneRenderer from "./Renderer/copperMSceneRenderer";
11
+ import copperMScene from "./Scene/copperMScene";
12
+ import { createTexture2D_NRRD } from "./Utils/texture2d";
13
+ import { configKiwriousHeart } from "./Utils/kiwrious/configKiwrious";
14
+ import kiwrious from "./Utils/kiwrious/configKiwrious";
15
+ import { nrrd_tools } from "./Utils/nrrd_tool";
16
+ import { Copper3dTrackballControls } from "./Controls/Copper3dTrackballControls";
17
+ import { nrrdMeshesType, nrrdSliceType, SensorDecodedValue_kiwrious, SensorReadResult_kiwrious, HeartRateResult_kiwrious, loadingBarType, paintImageType, exportPaintImageType, IOptVTKLoader } from "./types/types";
18
+ import "./css/style.css";
19
+ export declare const REVISION = "v1.15.0";
20
+ export { copperRenderer, copperRendererOnDemond, copperMSceneRenderer, setHDRFilePath, addLabelToScene, convert3DPostoScreenPos, convertScreenPosto3DPos, addBoxHelper, fullScreenListenner, configKiwriousHeart, copperScene, copperSceneOnDemond, copperMScene, CameraViewPoint, kiwrious, nrrd_tools, loading, Copper3dTrackballControls, createTexture2D_NRRD, };
21
+ export type { positionType, screenPosType, optsType, nrrdMeshesType, nrrdSliceType, SensorDecodedValue_kiwrious, SensorReadResult_kiwrious, HeartRateResult_kiwrious, loadingBarType, paintImageType, exportPaintImageType, IOptVTKLoader, };
@@ -0,0 +1 @@
1
+ export declare var TAG_DICT: any;
@@ -0,0 +1,8 @@
1
+ export type environmentType = {
2
+ id: string;
3
+ name: string;
4
+ path: string | null;
5
+ format: string;
6
+ };
7
+ export declare function setHDRFilePath(url: string): void;
8
+ export declare const environments: Array<environmentType>;
@@ -0,0 +1,11 @@
1
+ import { Mesh, RawShaderMaterial } from "three";
2
+ interface optType {
3
+ [key: string]: any;
4
+ }
5
+ interface customMeshType {
6
+ mesh: Mesh<any, RawShaderMaterial>;
7
+ [key: string]: any;
8
+ }
9
+ declare function createBackground(opt?: optType): customMeshType;
10
+ export { createBackground };
11
+ export type { customMeshType };
@@ -0,0 +1,198 @@
1
+ import copperScene from "../Scene/copperScene";
2
+ import baseScene from "../Scene/baseScene";
3
+ import copperMScene from "../Scene/copperMScene";
4
+ import { GUI } from "dat.gui";
5
+ interface SceneMapType {
6
+ [key: string]: copperScene | baseScene | copperMScene;
7
+ }
8
+ interface optType {
9
+ guiOpen: boolean;
10
+ camera?: boolean;
11
+ performance?: boolean;
12
+ light?: boolean;
13
+ alpha?: boolean;
14
+ [key: string]: string | boolean | undefined;
15
+ }
16
+ interface stateType {
17
+ playbackSpeed: number;
18
+ wireframe: boolean;
19
+ skeleton: boolean;
20
+ grid: boolean;
21
+ addLights: boolean;
22
+ exposure: number;
23
+ ambientIntensity: number;
24
+ ambientColor: number;
25
+ directIntensity: number;
26
+ directColor: number;
27
+ bgColor1: string;
28
+ bgColor2: string;
29
+ [key: string]: string | number | boolean | {};
30
+ }
31
+ interface modelVisualisationDataType {
32
+ name: string;
33
+ visible: boolean;
34
+ mesh: THREE.Mesh;
35
+ }
36
+ interface preRenderCallbackFunctionType {
37
+ index: number;
38
+ cache: Function[];
39
+ add: (fn: any) => void;
40
+ remove: (id: number) => void;
41
+ }
42
+ interface baseStateType {
43
+ [key: string]: string | number | boolean | {};
44
+ }
45
+ interface nrrdMeshesType {
46
+ x: THREE.Mesh;
47
+ y: THREE.Mesh;
48
+ z: THREE.Mesh;
49
+ }
50
+ interface nrrdSliceType {
51
+ x: any;
52
+ y: any;
53
+ z: any;
54
+ }
55
+ interface loadingBarType {
56
+ loadingContainer: HTMLDivElement;
57
+ progress: HTMLDivElement;
58
+ }
59
+ interface nrrdDragImageOptType {
60
+ showNumber?: boolean;
61
+ getSliceNum?: (index: number, contrastNum: number) => void;
62
+ }
63
+ interface nrrdDrawImageOptType {
64
+ getMaskData?: (mask: ImageData, sliceId: number, label: string, width: number, height: number, clearAllFlag?: boolean) => void;
65
+ }
66
+ interface SensorDecodedValue_kiwrious {
67
+ type: string;
68
+ label: string;
69
+ value: any;
70
+ }
71
+ interface SensorReadResult_kiwrious {
72
+ sensorType: string;
73
+ decodedValues: SensorDecodedValue_kiwrious[];
74
+ }
75
+ interface HeartRateResult_kiwrious {
76
+ status: string;
77
+ value?: number;
78
+ }
79
+ declare class SerialService_kiwrious {
80
+ onSerialData?: (data: SensorReadResult_kiwrious) => void;
81
+ onSerialConnection?: (connect: boolean) => void;
82
+ private _isConnected;
83
+ private _isReading;
84
+ private _port;
85
+ private _reader;
86
+ constructor();
87
+ private _log;
88
+ private _err;
89
+ get isReading(): boolean;
90
+ get canResumeReading(): boolean;
91
+ triggerStopReading(): void;
92
+ private closeReader;
93
+ private closePortAsync;
94
+ resumeReading(): Promise<void>;
95
+ disconnectAsync(): Promise<void>;
96
+ connectAndReadAsync(): Promise<void>;
97
+ private startStage1RequestPortAsync;
98
+ private startStage2ConnectPortAsync;
99
+ private stopStage2ClosePortAsync;
100
+ private connectPortAsync;
101
+ private startReading;
102
+ }
103
+ interface kiwriousType {
104
+ serialService: SerialService_kiwrious;
105
+ setBinUrl: (url: string) => void;
106
+ setWasm: (url: string) => void;
107
+ }
108
+ interface mouseMovePositionType {
109
+ x: number;
110
+ y: number;
111
+ }
112
+ interface positionType {
113
+ x?: number;
114
+ y?: number;
115
+ z?: number;
116
+ }
117
+ interface paintImagesType {
118
+ x: Array<paintImageType>;
119
+ y: Array<paintImageType>;
120
+ z: Array<paintImageType>;
121
+ }
122
+ interface paintImageType {
123
+ index: number;
124
+ image: ImageData;
125
+ }
126
+ interface storedPaintImagesType {
127
+ label1: paintImagesType;
128
+ label2: paintImagesType;
129
+ label3: paintImagesType;
130
+ }
131
+ interface exportPaintImagesType {
132
+ x: Array<exportPaintImageType>;
133
+ y: Array<exportPaintImageType>;
134
+ z: Array<exportPaintImageType>;
135
+ }
136
+ interface exportPaintImageType {
137
+ sliceIndex: number;
138
+ dataFormat: string;
139
+ width: number;
140
+ height: number;
141
+ voxelSpacing: number[];
142
+ spaceOrigin: number[];
143
+ data: number[];
144
+ }
145
+ interface storeExportPaintImageType {
146
+ label1: exportPaintImageType[];
147
+ label2: exportPaintImageType[];
148
+ label3: exportPaintImageType[];
149
+ }
150
+ interface optionsGltfExporterType {
151
+ trs?: boolean;
152
+ onlyVisible?: boolean;
153
+ truncateDrawRange?: boolean;
154
+ binary?: boolean;
155
+ maxTextureSize?: number;
156
+ animations?: Array<THREE.AnimationClip>;
157
+ }
158
+ interface vtkModels {
159
+ name: string;
160
+ urls: Array<string>;
161
+ opts?: IOptVTKLoader;
162
+ }
163
+ interface undoLayerType {
164
+ label1: Array<HTMLImageElement>;
165
+ label2: Array<HTMLImageElement>;
166
+ label3: Array<HTMLImageElement>;
167
+ }
168
+ interface undoType {
169
+ sliceIndex: number;
170
+ layers: undoLayerType;
171
+ }
172
+ interface copperVolumeType {
173
+ tags: any;
174
+ width: number;
175
+ height: number;
176
+ windowCenter: number;
177
+ windowWidth: number;
178
+ invert: boolean;
179
+ uint16: Uint16Array;
180
+ uint8: Uint8ClampedArray;
181
+ order: number;
182
+ }
183
+ interface dicomLoaderOptsType {
184
+ gui?: GUI;
185
+ getMesh?: (mesh: THREE.Mesh) => void;
186
+ getCopperVolume?: (copperVolume: copperVolumeType, updateTexture: Function) => void;
187
+ setAnimation?: (currentValue: number, depth: number, depthStep: number, copperVolume: copperVolumeType) => number;
188
+ }
189
+ interface skipSlicesDictType {
190
+ [key: string]: any;
191
+ }
192
+ interface IOptVTKLoader {
193
+ wireframe?: boolean;
194
+ color?: string | number;
195
+ transparent?: boolean;
196
+ opacity?: number;
197
+ }
198
+ export type { SceneMapType, optType, stateType, modelVisualisationDataType, preRenderCallbackFunctionType, baseStateType, nrrdMeshesType, nrrdSliceType, nrrdDragImageOptType, nrrdDrawImageOptType, loadingBarType, SensorDecodedValue_kiwrious, SensorReadResult_kiwrious, HeartRateResult_kiwrious, SerialService_kiwrious, kiwriousType, mouseMovePositionType, positionType, paintImagesType, paintImageType, storedPaintImagesType, optionsGltfExporterType, vtkModels, undoType, copperVolumeType, dicomLoaderOptsType, skipSlicesDictType, exportPaintImagesType, exportPaintImageType, storeExportPaintImageType, IOptVTKLoader, };
@@ -0,0 +1,198 @@
1
+ import copperScene from "../Scene/copperScene";
2
+ import baseScene from "../Scene/baseScene";
3
+ import copperMScene from "../Scene/copperMScene";
4
+ import { GUI } from "dat.gui";
5
+ interface SceneMapType {
6
+ [key: string]: copperScene | baseScene | copperMScene;
7
+ }
8
+ interface optType {
9
+ guiOpen: boolean;
10
+ camera?: boolean;
11
+ performance?: boolean;
12
+ light?: boolean;
13
+ alpha?: boolean;
14
+ [key: string]: string | boolean | undefined;
15
+ }
16
+ interface stateType {
17
+ playbackSpeed: number;
18
+ wireframe: boolean;
19
+ skeleton: boolean;
20
+ grid: boolean;
21
+ addLights: boolean;
22
+ exposure: number;
23
+ ambientIntensity: number;
24
+ ambientColor: number;
25
+ directIntensity: number;
26
+ directColor: number;
27
+ bgColor1: string;
28
+ bgColor2: string;
29
+ [key: string]: string | number | boolean | {};
30
+ }
31
+ interface modelVisualisationDataType {
32
+ name: string;
33
+ visible: boolean;
34
+ mesh: THREE.Mesh;
35
+ }
36
+ interface preRenderCallbackFunctionType {
37
+ index: number;
38
+ cache: Function[];
39
+ add: (fn: any) => void;
40
+ remove: (id: number) => void;
41
+ }
42
+ interface baseStateType {
43
+ [key: string]: string | number | boolean | {};
44
+ }
45
+ interface nrrdMeshesType {
46
+ x: THREE.Mesh;
47
+ y: THREE.Mesh;
48
+ z: THREE.Mesh;
49
+ }
50
+ interface nrrdSliceType {
51
+ x: any;
52
+ y: any;
53
+ z: any;
54
+ }
55
+ interface loadingBarType {
56
+ loadingContainer: HTMLDivElement;
57
+ progress: HTMLDivElement;
58
+ }
59
+ interface nrrdDragImageOptType {
60
+ showNumber?: boolean;
61
+ getSliceNum?: (index: number, contrastNum: number) => void;
62
+ }
63
+ interface nrrdDrawImageOptType {
64
+ getMaskData?: (mask: ImageData, sliceId: number, label: string, width: number, height: number, clearAllFlag?: boolean) => void;
65
+ }
66
+ interface SensorDecodedValue_kiwrious {
67
+ type: string;
68
+ label: string;
69
+ value: any;
70
+ }
71
+ interface SensorReadResult_kiwrious {
72
+ sensorType: string;
73
+ decodedValues: SensorDecodedValue_kiwrious[];
74
+ }
75
+ interface HeartRateResult_kiwrious {
76
+ status: string;
77
+ value?: number;
78
+ }
79
+ declare class SerialService_kiwrious {
80
+ onSerialData?: (data: SensorReadResult_kiwrious) => void;
81
+ onSerialConnection?: (connect: boolean) => void;
82
+ private _isConnected;
83
+ private _isReading;
84
+ private _port;
85
+ private _reader;
86
+ constructor();
87
+ private _log;
88
+ private _err;
89
+ get isReading(): boolean;
90
+ get canResumeReading(): boolean;
91
+ triggerStopReading(): void;
92
+ private closeReader;
93
+ private closePortAsync;
94
+ resumeReading(): Promise<void>;
95
+ disconnectAsync(): Promise<void>;
96
+ connectAndReadAsync(): Promise<void>;
97
+ private startStage1RequestPortAsync;
98
+ private startStage2ConnectPortAsync;
99
+ private stopStage2ClosePortAsync;
100
+ private connectPortAsync;
101
+ private startReading;
102
+ }
103
+ interface kiwriousType {
104
+ serialService: SerialService_kiwrious;
105
+ setBinUrl: (url: string) => void;
106
+ setWasm: (url: string) => void;
107
+ }
108
+ interface mouseMovePositionType {
109
+ x: number;
110
+ y: number;
111
+ }
112
+ interface positionType {
113
+ x?: number;
114
+ y?: number;
115
+ z?: number;
116
+ }
117
+ interface paintImagesType {
118
+ x: Array<paintImageType>;
119
+ y: Array<paintImageType>;
120
+ z: Array<paintImageType>;
121
+ }
122
+ interface paintImageType {
123
+ index: number;
124
+ image: ImageData;
125
+ }
126
+ interface storedPaintImagesType {
127
+ label1: paintImagesType;
128
+ label2: paintImagesType;
129
+ label3: paintImagesType;
130
+ }
131
+ interface exportPaintImagesType {
132
+ x: Array<exportPaintImageType>;
133
+ y: Array<exportPaintImageType>;
134
+ z: Array<exportPaintImageType>;
135
+ }
136
+ interface exportPaintImageType {
137
+ sliceIndex: number;
138
+ dataFormat: string;
139
+ width: number;
140
+ height: number;
141
+ voxelSpacing: number[];
142
+ spaceOrigin: number[];
143
+ data: number[];
144
+ }
145
+ interface storeExportPaintImageType {
146
+ label1: exportPaintImageType[];
147
+ label2: exportPaintImageType[];
148
+ label3: exportPaintImageType[];
149
+ }
150
+ interface optionsGltfExporterType {
151
+ trs?: boolean;
152
+ onlyVisible?: boolean;
153
+ truncateDrawRange?: boolean;
154
+ binary?: boolean;
155
+ maxTextureSize?: number;
156
+ animations?: Array<THREE.AnimationClip>;
157
+ }
158
+ interface vtkModels {
159
+ name: string;
160
+ urls: Array<string>;
161
+ opts?: IOptVTKLoader;
162
+ }
163
+ interface undoLayerType {
164
+ label1: Array<HTMLImageElement>;
165
+ label2: Array<HTMLImageElement>;
166
+ label3: Array<HTMLImageElement>;
167
+ }
168
+ interface undoType {
169
+ sliceIndex: number;
170
+ layers: undoLayerType;
171
+ }
172
+ interface copperVolumeType {
173
+ tags: any;
174
+ width: number;
175
+ height: number;
176
+ windowCenter: number;
177
+ windowWidth: number;
178
+ invert: boolean;
179
+ uint16: Uint16Array;
180
+ uint8: Uint8ClampedArray;
181
+ order: number;
182
+ }
183
+ interface dicomLoaderOptsType {
184
+ gui?: GUI;
185
+ getMesh?: (mesh: THREE.Mesh) => void;
186
+ getCopperVolume?: (copperVolume: copperVolumeType, updateTexture: Function) => void;
187
+ setAnimation?: (currentValue: number, depth: number, depthStep: number, copperVolume: copperVolumeType) => number;
188
+ }
189
+ interface skipSlicesDictType {
190
+ [key: string]: any;
191
+ }
192
+ interface IOptVTKLoader {
193
+ wireframe?: boolean;
194
+ color?: string | number;
195
+ transparent?: boolean;
196
+ opacity?: number;
197
+ }
198
+ export type { SceneMapType, optType, stateType, modelVisualisationDataType, preRenderCallbackFunctionType, baseStateType, nrrdMeshesType, nrrdSliceType, nrrdDragImageOptType, nrrdDrawImageOptType, loadingBarType, SensorDecodedValue_kiwrious, SensorReadResult_kiwrious, HeartRateResult_kiwrious, SerialService_kiwrious, kiwriousType, mouseMovePositionType, positionType, paintImagesType, paintImageType, storedPaintImagesType, optionsGltfExporterType, vtkModels, undoType, copperVolumeType, dicomLoaderOptsType, skipSlicesDictType, exportPaintImagesType, exportPaintImageType, storeExportPaintImageType, IOptVTKLoader, };
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types/types.ts"],"names":[],"mappings":""}