@cornerstonejs/core 0.28.0 → 0.29.1

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 (184) hide show
  1. package/dist/cjs/RenderingEngine/BaseVolumeViewport.d.ts +1 -0
  2. package/dist/cjs/RenderingEngine/BaseVolumeViewport.js +21 -8
  3. package/dist/cjs/RenderingEngine/BaseVolumeViewport.js.map +1 -1
  4. package/dist/cjs/RenderingEngine/StackViewport.js +12 -13
  5. package/dist/cjs/RenderingEngine/StackViewport.js.map +1 -1
  6. package/dist/cjs/RenderingEngine/Viewport.d.ts +1 -1
  7. package/dist/cjs/RenderingEngine/Viewport.js +10 -7
  8. package/dist/cjs/RenderingEngine/Viewport.js.map +1 -1
  9. package/dist/cjs/RenderingEngine/VolumeViewport.js +10 -13
  10. package/dist/cjs/RenderingEngine/VolumeViewport.js.map +1 -1
  11. package/dist/cjs/RenderingEngine/VolumeViewport3D.d.ts +2 -0
  12. package/dist/cjs/RenderingEngine/VolumeViewport3D.js +9 -8
  13. package/dist/cjs/RenderingEngine/VolumeViewport3D.js.map +1 -1
  14. package/dist/cjs/RenderingEngine/helpers/createVolumeActor.js +1 -1
  15. package/dist/cjs/RenderingEngine/helpers/createVolumeActor.js.map +1 -1
  16. package/dist/cjs/RenderingEngine/helpers/setDefaultVolumeVOI.js +1 -1
  17. package/dist/cjs/RenderingEngine/helpers/setDefaultVolumeVOI.js.map +1 -1
  18. package/dist/cjs/RenderingEngine/helpers/volumeNewImageEventDispatcher.js +6 -1
  19. package/dist/cjs/RenderingEngine/helpers/volumeNewImageEventDispatcher.js.map +1 -1
  20. package/dist/cjs/RenderingEngine/vtkClasses/vtkStreamingOpenGLVolumeMapper.js +90 -5
  21. package/dist/cjs/RenderingEngine/vtkClasses/vtkStreamingOpenGLVolumeMapper.js.map +1 -1
  22. package/dist/cjs/cache/cache.d.ts +4 -1
  23. package/dist/cjs/cache/cache.js +53 -2
  24. package/dist/cjs/cache/cache.js.map +1 -1
  25. package/dist/cjs/cache/classes/Contour.d.ts +21 -0
  26. package/dist/cjs/cache/classes/Contour.js +33 -0
  27. package/dist/cjs/cache/classes/Contour.js.map +1 -0
  28. package/dist/cjs/cache/classes/ContourSet.d.ts +28 -0
  29. package/dist/cjs/cache/classes/ContourSet.js +73 -0
  30. package/dist/cjs/cache/classes/ContourSet.js.map +1 -0
  31. package/dist/cjs/enums/ContourType.d.ts +5 -0
  32. package/dist/cjs/enums/ContourType.js +9 -0
  33. package/dist/cjs/enums/ContourType.js.map +1 -0
  34. package/dist/cjs/enums/Events.d.ts +2 -1
  35. package/dist/cjs/enums/Events.js +1 -0
  36. package/dist/cjs/enums/Events.js.map +1 -1
  37. package/dist/cjs/enums/GeometryType.d.ts +4 -0
  38. package/dist/cjs/enums/GeometryType.js +8 -0
  39. package/dist/cjs/enums/GeometryType.js.map +1 -0
  40. package/dist/cjs/enums/index.d.ts +3 -1
  41. package/dist/cjs/enums/index.js +5 -1
  42. package/dist/cjs/enums/index.js.map +1 -1
  43. package/dist/cjs/index.d.ts +5 -4
  44. package/dist/cjs/index.js +6 -4
  45. package/dist/cjs/index.js.map +1 -1
  46. package/dist/cjs/loaders/geometryLoader.d.ts +9 -0
  47. package/dist/cjs/loaders/geometryLoader.js +74 -0
  48. package/dist/cjs/loaders/geometryLoader.js.map +1 -0
  49. package/dist/cjs/{imageLoader.d.ts → loaders/imageLoader.d.ts} +1 -1
  50. package/dist/cjs/{imageLoader.js → loaders/imageLoader.js} +5 -5
  51. package/dist/cjs/loaders/imageLoader.js.map +1 -0
  52. package/dist/cjs/{volumeLoader.d.ts → loaders/volumeLoader.d.ts} +3 -3
  53. package/dist/cjs/{volumeLoader.js → loaders/volumeLoader.js} +6 -6
  54. package/dist/cjs/loaders/volumeLoader.js.map +1 -0
  55. package/dist/cjs/types/ContourData.d.ts +15 -0
  56. package/dist/cjs/types/ContourData.js +3 -0
  57. package/dist/cjs/types/ContourData.js.map +1 -0
  58. package/dist/cjs/types/ICachedGeometry.d.ts +11 -0
  59. package/dist/cjs/types/ICachedGeometry.js +3 -0
  60. package/dist/cjs/types/ICachedGeometry.js.map +1 -0
  61. package/dist/cjs/types/IContour.d.ts +13 -0
  62. package/dist/cjs/types/IContour.js +3 -0
  63. package/dist/cjs/types/IContour.js.map +1 -0
  64. package/dist/cjs/types/IContourSet.d.ts +17 -0
  65. package/dist/cjs/types/IContourSet.js +3 -0
  66. package/dist/cjs/types/IContourSet.js.map +1 -0
  67. package/dist/cjs/types/IGeometry.d.ts +9 -0
  68. package/dist/cjs/types/IGeometry.js +3 -0
  69. package/dist/cjs/types/IGeometry.js.map +1 -0
  70. package/dist/cjs/types/ILoadObject.d.ts +6 -0
  71. package/dist/cjs/types/IViewport.d.ts +1 -0
  72. package/dist/cjs/types/ViewportInputOptions.d.ts +1 -0
  73. package/dist/cjs/types/index.d.ts +7 -2
  74. package/dist/cjs/utilities/actorCheck.d.ts +5 -0
  75. package/dist/cjs/utilities/actorCheck.js +13 -0
  76. package/dist/cjs/utilities/actorCheck.js.map +1 -0
  77. package/dist/cjs/utilities/getSliceRange.js +23 -1
  78. package/dist/cjs/utilities/getSliceRange.js.map +1 -1
  79. package/dist/cjs/utilities/getTargetVolumeAndSpacingInNormalDir.js +8 -4
  80. package/dist/cjs/utilities/getTargetVolumeAndSpacingInNormalDir.js.map +1 -1
  81. package/dist/cjs/utilities/index.d.ts +2 -2
  82. package/dist/cjs/utilities/index.js +4 -3
  83. package/dist/cjs/utilities/index.js.map +1 -1
  84. package/dist/cjs/utilities/loadImageToCanvas.js +1 -1
  85. package/dist/cjs/utilities/loadImageToCanvas.js.map +1 -1
  86. package/dist/esm/RenderingEngine/BaseVolumeViewport.d.ts +1 -0
  87. package/dist/esm/RenderingEngine/BaseVolumeViewport.js +20 -9
  88. package/dist/esm/RenderingEngine/BaseVolumeViewport.js.map +1 -1
  89. package/dist/esm/RenderingEngine/StackViewport.js +13 -14
  90. package/dist/esm/RenderingEngine/StackViewport.js.map +1 -1
  91. package/dist/esm/RenderingEngine/Viewport.d.ts +1 -1
  92. package/dist/esm/RenderingEngine/Viewport.js +11 -7
  93. package/dist/esm/RenderingEngine/Viewport.js.map +1 -1
  94. package/dist/esm/RenderingEngine/VolumeViewport.js +10 -13
  95. package/dist/esm/RenderingEngine/VolumeViewport.js.map +1 -1
  96. package/dist/esm/RenderingEngine/VolumeViewport3D.d.ts +2 -0
  97. package/dist/esm/RenderingEngine/VolumeViewport3D.js +9 -8
  98. package/dist/esm/RenderingEngine/VolumeViewport3D.js.map +1 -1
  99. package/dist/esm/RenderingEngine/helpers/createVolumeActor.js +1 -1
  100. package/dist/esm/RenderingEngine/helpers/createVolumeActor.js.map +1 -1
  101. package/dist/esm/RenderingEngine/helpers/setDefaultVolumeVOI.js +1 -1
  102. package/dist/esm/RenderingEngine/helpers/setDefaultVolumeVOI.js.map +1 -1
  103. package/dist/esm/RenderingEngine/helpers/volumeNewImageEventDispatcher.js +6 -1
  104. package/dist/esm/RenderingEngine/helpers/volumeNewImageEventDispatcher.js.map +1 -1
  105. package/dist/esm/RenderingEngine/vtkClasses/vtkStreamingOpenGLVolumeMapper.js +90 -5
  106. package/dist/esm/RenderingEngine/vtkClasses/vtkStreamingOpenGLVolumeMapper.js.map +1 -1
  107. package/dist/esm/cache/cache.d.ts +4 -1
  108. package/dist/esm/cache/cache.js +53 -2
  109. package/dist/esm/cache/cache.js.map +1 -1
  110. package/dist/esm/cache/classes/Contour.d.ts +21 -0
  111. package/dist/esm/cache/classes/Contour.js +29 -0
  112. package/dist/esm/cache/classes/Contour.js.map +1 -0
  113. package/dist/esm/cache/classes/ContourSet.d.ts +28 -0
  114. package/dist/esm/cache/classes/ContourSet.js +64 -0
  115. package/dist/esm/cache/classes/ContourSet.js.map +1 -0
  116. package/dist/esm/enums/ContourType.d.ts +5 -0
  117. package/dist/esm/enums/ContourType.js +7 -0
  118. package/dist/esm/enums/ContourType.js.map +1 -0
  119. package/dist/esm/enums/Events.d.ts +2 -1
  120. package/dist/esm/enums/Events.js +1 -0
  121. package/dist/esm/enums/Events.js.map +1 -1
  122. package/dist/esm/enums/GeometryType.d.ts +4 -0
  123. package/dist/esm/enums/GeometryType.js +6 -0
  124. package/dist/esm/enums/GeometryType.js.map +1 -0
  125. package/dist/esm/enums/index.d.ts +3 -1
  126. package/dist/esm/enums/index.js +3 -1
  127. package/dist/esm/enums/index.js.map +1 -1
  128. package/dist/esm/index.d.ts +5 -4
  129. package/dist/esm/index.js +5 -4
  130. package/dist/esm/index.js.map +1 -1
  131. package/dist/esm/loaders/geometryLoader.d.ts +9 -0
  132. package/dist/esm/loaders/geometryLoader.js +57 -0
  133. package/dist/esm/loaders/geometryLoader.js.map +1 -0
  134. package/dist/esm/{imageLoader.d.ts → loaders/imageLoader.d.ts} +1 -1
  135. package/dist/esm/{imageLoader.js → loaders/imageLoader.js} +5 -5
  136. package/dist/esm/loaders/imageLoader.js.map +1 -0
  137. package/dist/esm/{volumeLoader.d.ts → loaders/volumeLoader.d.ts} +3 -3
  138. package/dist/esm/{volumeLoader.js → loaders/volumeLoader.js} +6 -6
  139. package/dist/esm/loaders/volumeLoader.js.map +1 -0
  140. package/dist/esm/types/ContourData.d.ts +15 -0
  141. package/dist/esm/types/ContourData.js +2 -0
  142. package/dist/esm/types/ContourData.js.map +1 -0
  143. package/dist/esm/types/ICachedGeometry.d.ts +11 -0
  144. package/dist/esm/types/ICachedGeometry.js +2 -0
  145. package/dist/esm/types/ICachedGeometry.js.map +1 -0
  146. package/dist/esm/types/IContour.d.ts +13 -0
  147. package/dist/esm/types/IContour.js +2 -0
  148. package/dist/esm/types/IContour.js.map +1 -0
  149. package/dist/esm/types/IContourSet.d.ts +17 -0
  150. package/dist/esm/types/IContourSet.js +2 -0
  151. package/dist/esm/types/IContourSet.js.map +1 -0
  152. package/dist/esm/types/IGeometry.d.ts +9 -0
  153. package/dist/esm/types/IGeometry.js +2 -0
  154. package/dist/esm/types/IGeometry.js.map +1 -0
  155. package/dist/esm/types/ILoadObject.d.ts +6 -0
  156. package/dist/esm/types/IViewport.d.ts +1 -0
  157. package/dist/esm/types/ViewportInputOptions.d.ts +1 -0
  158. package/dist/esm/types/index.d.ts +7 -2
  159. package/dist/esm/utilities/actorCheck.d.ts +5 -0
  160. package/dist/esm/utilities/actorCheck.js +8 -0
  161. package/dist/esm/utilities/actorCheck.js.map +1 -0
  162. package/dist/esm/utilities/getSliceRange.js +23 -1
  163. package/dist/esm/utilities/getSliceRange.js.map +1 -1
  164. package/dist/esm/utilities/getTargetVolumeAndSpacingInNormalDir.js +8 -4
  165. package/dist/esm/utilities/getTargetVolumeAndSpacingInNormalDir.js.map +1 -1
  166. package/dist/esm/utilities/index.d.ts +2 -2
  167. package/dist/esm/utilities/index.js +2 -2
  168. package/dist/esm/utilities/index.js.map +1 -1
  169. package/dist/esm/utilities/loadImageToCanvas.js +1 -1
  170. package/dist/esm/utilities/loadImageToCanvas.js.map +1 -1
  171. package/dist/umd/index.js +1 -2
  172. package/dist/umd/index.js.map +1 -1
  173. package/package.json +4 -4
  174. package/dist/cjs/imageLoader.js.map +0 -1
  175. package/dist/cjs/utilities/isImageActor.d.ts +0 -4
  176. package/dist/cjs/utilities/isImageActor.js +0 -13
  177. package/dist/cjs/utilities/isImageActor.js.map +0 -1
  178. package/dist/cjs/volumeLoader.js.map +0 -1
  179. package/dist/esm/imageLoader.js.map +0 -1
  180. package/dist/esm/utilities/isImageActor.d.ts +0 -4
  181. package/dist/esm/utilities/isImageActor.js +0 -10
  182. package/dist/esm/utilities/isImageActor.js.map +0 -1
  183. package/dist/esm/volumeLoader.js.map +0 -1
  184. package/dist/umd/index.js.LICENSE.txt +0 -1
@@ -1,15 +1,16 @@
1
1
  import BaseVolumeViewport from './BaseVolumeViewport';
2
- import { RENDERING_DEFAULTS } from '../constants';
3
2
  class VolumeViewport3D extends BaseVolumeViewport {
4
- resetCamera(resetPan = true, resetZoom = true, resetToCenter = true) {
5
- super.resetCamera(resetPan, resetZoom, resetToCenter);
3
+ constructor(props) {
4
+ super(props);
5
+ const { parallelProjection } = this.options;
6
6
  const activeCamera = this.getVtkActiveCamera();
7
- if (activeCamera.getParallelProjection()) {
8
- activeCamera.setClippingRange(-RENDERING_DEFAULTS.MAXIMUM_RAY_DISTANCE, RENDERING_DEFAULTS.MAXIMUM_RAY_DISTANCE);
9
- }
10
- else {
11
- activeCamera.setClippingRange(RENDERING_DEFAULTS.MINIMUM_SLAB_THICKNESS, RENDERING_DEFAULTS.MAXIMUM_RAY_DISTANCE);
7
+ if (parallelProjection != null) {
8
+ activeCamera.setParallelProjection(parallelProjection);
12
9
  }
10
+ }
11
+ resetCamera(resetPan = true, resetZoom = true, resetToCenter = true) {
12
+ super.resetCamera(resetPan, resetZoom, resetToCenter);
13
+ this.resetVolumeViewportClippingRange();
13
14
  return;
14
15
  }
15
16
  }
@@ -1 +1 @@
1
- {"version":3,"file":"VolumeViewport3D.js","sourceRoot":"","sources":["../../../src/RenderingEngine/VolumeViewport3D.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AASlD,MAAM,gBAAiB,SAAQ,kBAAkB;IACxC,WAAW,CAChB,QAAQ,GAAG,IAAI,EACf,SAAS,GAAG,IAAI,EAChB,aAAa,GAAG,IAAI;QAEpB,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;QACtD,MAAM,YAAY,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE/C,IAAI,YAAY,CAAC,qBAAqB,EAAE,EAAE;YACxC,YAAY,CAAC,gBAAgB,CAC3B,CAAC,kBAAkB,CAAC,oBAAoB,EACxC,kBAAkB,CAAC,oBAAoB,CACxC,CAAC;SACH;aAAM;YACL,YAAY,CAAC,gBAAgB,CAC3B,kBAAkB,CAAC,sBAAsB,EACzC,kBAAkB,CAAC,oBAAoB,CACxC,CAAC;SACH;QAED,OAAO;IACT,CAAC;CACF;AAED,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"VolumeViewport3D.js","sourceRoot":"","sources":["../../../src/RenderingEngine/VolumeViewport3D.ts"],"names":[],"mappings":"AACA,OAAO,kBAAkB,MAAM,sBAAsB,CAAC;AAUtD,MAAM,gBAAiB,SAAQ,kBAAkB;IAC/C,YAAY,KAAoB;QAC9B,KAAK,CAAC,KAAK,CAAC,CAAC;QAEb,MAAM,EAAE,kBAAkB,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;QAE5C,MAAM,YAAY,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE/C,IAAI,kBAAkB,IAAI,IAAI,EAAE;YAC9B,YAAY,CAAC,qBAAqB,CAAC,kBAAkB,CAAC,CAAC;SACxD;IACH,CAAC;IAEM,WAAW,CAChB,QAAQ,GAAG,IAAI,EACf,SAAS,GAAG,IAAI,EAChB,aAAa,GAAG,IAAI;QAEpB,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;QACtD,IAAI,CAAC,gCAAgC,EAAE,CAAC;QACxC,OAAO;IACT,CAAC;CACF;AAED,eAAe,gBAAgB,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import vtkVolume from '@kitware/vtk.js/Rendering/Core/Volume';
2
- import { loadVolume } from '../../volumeLoader';
2
+ import { loadVolume } from '../../loaders/volumeLoader';
3
3
  import createVolumeMapper from './createVolumeMapper';
4
4
  import { triggerEvent } from '../../utilities';
5
5
  import { Events } from '../../enums';
@@ -1 +1 @@
1
- {"version":3,"file":"createVolumeActor.js","sourceRoot":"","sources":["../../../../src/RenderingEngine/helpers/createVolumeActor.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,uCAAuC,CAAC;AAI9D,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,kBAAkB,MAAM,sBAAsB,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,mBAAmB,MAAM,uBAAuB,CAAC;AAsBxD,KAAK,UAAU,iBAAiB,CAC9B,KAAiC,EACjC,OAAuB,EACvB,UAAkB,EAClB,cAAc,GAAG,KAAK;IAEtB,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;IAEhD,MAAM,WAAW,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,CAAC;IAE/C,IAAI,CAAC,WAAW,EAAE;QAChB,MAAM,IAAI,KAAK,CACb,wBAAwB,WAAW,CAAC,QAAQ,iBAAiB,CAC9D,CAAC;KACH;IAED,MAAM,EAAE,SAAS,EAAE,gBAAgB,EAAE,GAAG,WAAW,CAAC;IAEpD,MAAM,YAAY,GAAG,kBAAkB,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;IAErE,IAAI,SAAS,EAAE;QACb,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;KACtC;IAED,MAAM,WAAW,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;IAC5C,WAAW,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;IAMpC,IAAI,WAAW,CAAC,QAAQ,EAAE;QACxB,MAAM,mBAAmB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;KACrD;IAED,IAAI,QAAQ,EAAE;QACZ,QAAQ,CAAC,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC;KACrC;IAED,IAAI,CAAC,cAAc,EAAE;QACnB,kBAAkB,CAAC,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;KAChE;IAED,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,SAAS,kBAAkB,CACzB,OAAuB,EACvB,UAAkB,EAClB,WAAwB,EACxB,QAAgB;IAEhB,MAAM,QAAQ,GAAG,WAAW;SACzB,WAAW,EAAE;SACb,sBAAsB,CAAC,CAAC,CAAC;SAEzB,QAAQ,EAAE,CAAC;IAEd,MAAM,sBAAsB,GAA2B;QACrD,UAAU;QACV,KAAK,EAAE;YACL,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;YAClB,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;SACnB;QACD,QAAQ;KACT,CAAC;IAEF,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,YAAY,EAAE,sBAAsB,CAAC,CAAC;AACrE,CAAC;AAED,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"createVolumeActor.js","sourceRoot":"","sources":["../../../../src/RenderingEngine/helpers/createVolumeActor.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,uCAAuC,CAAC;AAI9D,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,kBAAkB,MAAM,sBAAsB,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,mBAAmB,MAAM,uBAAuB,CAAC;AAsBxD,KAAK,UAAU,iBAAiB,CAC9B,KAAiC,EACjC,OAAuB,EACvB,UAAkB,EAClB,cAAc,GAAG,KAAK;IAEtB,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;IAEhD,MAAM,WAAW,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,CAAC;IAE/C,IAAI,CAAC,WAAW,EAAE;QAChB,MAAM,IAAI,KAAK,CACb,wBAAwB,WAAW,CAAC,QAAQ,iBAAiB,CAC9D,CAAC;KACH;IAED,MAAM,EAAE,SAAS,EAAE,gBAAgB,EAAE,GAAG,WAAW,CAAC;IAEpD,MAAM,YAAY,GAAG,kBAAkB,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;IAErE,IAAI,SAAS,EAAE;QACb,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;KACtC;IAED,MAAM,WAAW,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;IAC5C,WAAW,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;IAMpC,IAAI,WAAW,CAAC,QAAQ,EAAE;QACxB,MAAM,mBAAmB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;KACrD;IAED,IAAI,QAAQ,EAAE;QACZ,QAAQ,CAAC,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC;KACrC;IAED,IAAI,CAAC,cAAc,EAAE;QACnB,kBAAkB,CAAC,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;KAChE;IAED,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,SAAS,kBAAkB,CACzB,OAAuB,EACvB,UAAkB,EAClB,WAAwB,EACxB,QAAgB;IAEhB,MAAM,QAAQ,GAAG,WAAW;SACzB,WAAW,EAAE;SACb,sBAAsB,CAAC,CAAC,CAAC;SAEzB,QAAQ,EAAE,CAAC;IAEd,MAAM,sBAAsB,GAA2B;QACrD,UAAU;QACV,KAAK,EAAE;YACL,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;YAClB,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;SACnB;QACD,QAAQ;KACT,CAAC;IAEF,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,YAAY,EAAE,sBAAsB,CAAC,CAAC;AACrE,CAAC;AAED,eAAe,iBAAiB,CAAC"}
@@ -1,4 +1,4 @@
1
- import { loadAndCacheImage } from '../../imageLoader';
1
+ import { loadAndCacheImage } from '../../loaders/imageLoader';
2
2
  import * as metaData from '../../metaData';
3
3
  import { getMinMax, windowLevel } from '../../utilities';
4
4
  import { RequestType } from '../../enums';
@@ -1 +1 @@
1
- {"version":3,"file":"setDefaultVolumeVOI.js","sourceRoot":"","sources":["../../../../src/RenderingEngine/helpers/setDefaultVolumeVOI.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,QAAQ,GAAG,CAAC,CAAC;AACnB,MAAM,YAAY,GAAG,WAAW,CAAC,QAAQ,CAAC;AAW1C,KAAK,UAAU,mBAAmB,CAChC,WAAwB,EACxB,WAAyB;IAEzB,IAAI,GAAG,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAE1C,IAAI,CAAC,GAAG,EAAE;QACR,GAAG,GAAG,MAAM,gBAAgB,CAAC,WAAW,CAAC,CAAC;KAC3C;IAED,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS,EAAE;QAC9D,MAAM,IAAI,KAAK,CACb,iFAAiF,CAClF,CAAC;KACH;IAED,GAAG,GAAG,qBAAqB,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;IAC9C,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,GAAG,CAAC;IAE7B,WAAW;SACR,WAAW,EAAE;SACb,sBAAsB,CAAC,CAAC,CAAC;SACzB,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AACnC,CAAC;AAED,SAAS,qBAAqB,CAAC,WAAyB,EAAE,GAAa;IACrE,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC;IACtC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACrD,MAAM,OAAO,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;IAEvC,MAAM,mBAAmB,GACvB,QAAQ,CAAC,GAAG,CAAC,qBAAqB,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;IAQrD,IAAI,mBAAmB,CAAC,QAAQ,KAAK,IAAI,IAAI,WAAW,CAAC,WAAW,EAAE;QACpE,OAAO;YACL,KAAK,EAAE,CAAC;YACR,KAAK,EAAE,CAAC;SACT,CAAC;KACH;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AASD,SAAS,kBAAkB,CAAC,WAAyB;IACnD,MAAM,EAAE,QAAQ,EAAE,GAAG,WAAW,CAAC;IAEjC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACrD,MAAM,OAAO,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;IAEvC,MAAM,YAAY,GAAG,QAAQ,CAAC,GAAG,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IAE3D,IAAI,YAAY,IAAI,YAAY,CAAC,WAAW,IAAI,YAAY,CAAC,YAAY,EAAE;QACzE,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,YAAY,CAAC;QAEnD,MAAM,GAAG,GAAG;YACV,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW;YACtE,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC;gBACvC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;gBACjB,CAAC,CAAC,YAAY;SACjB,CAAC;QAEF,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,WAAW,CAAC,cAAc,CACjD,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,EACvB,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CACzB,CAAC;QAEF,OAAO;YACL,KAAK;YACL,KAAK;SACN,CAAC;KACH;AACH,CAAC;AASD,KAAK,UAAU,gBAAgB,CAAC,WAAyB;IACvD,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,WAAW,CAAC;IAG7C,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACrD,MAAM,OAAO,GAAG,WAAW,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IACnD,MAAM,mBAAmB,GACvB,QAAQ,CAAC,GAAG,CAAC,qBAAqB,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;IACrD,MAAM,EAAE,QAAQ,EAAE,GAAG,mBAAmB,CAAC;IACzC,MAAM,iBAAiB,GAAG,QAAQ,CAAC,GAAG,CAAC,mBAAmB,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;IAE3E,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC;IAClC,MAAM,aAAa,GAAG,UAAU,CAAC,UAAU,GAAG,SAAS,CAAC;IACxD,MAAM,cAAc,GAAG,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC;IACrD,MAAM,YAAY,GAAG,UAAU,CAAC,iBAAiB,CAAC;IAElD,IAAI,IAAI,CAAC;IAET,IAAI,UAAU,YAAY,UAAU,EAAE;QACpC,IAAI,GAAG,YAAY,CAAC;KACrB;SAAM,IAAI,UAAU,YAAY,YAAY,EAAE;QAC7C,IAAI,GAAG,cAAc,CAAC;KACvB;SAAM;QACL,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;KAC3C;IAED,MAAM,iBAAiB,GAAsB;QAC3C,YAAY,EAAE,iBAAiB,CAAC,YAAY;QAC5C,gBAAgB,EAAE,iBAAiB,CAAC,gBAAgB;QACpD,QAAQ;KACT,CAAC;IAEF,IAAI,sBAAsB,CAAC;IAC3B,IAAI,QAAQ,KAAK,IAAI,EAAE;QACrB,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;QAEzD,IAAI,SAAS,EAAE;YACb,sBAAsB,GAAG;gBACvB,GAAG,iBAAiB;gBACpB,KAAK,EAAE,SAAS,CAAC,KAAK;aACvB,CAAC;SACH;KACF;IAED,MAAM,UAAU,GAAG,YAAY,GAAG,aAAa,CAAC;IAEhD,MAAM,OAAO,GAAG;QACd,YAAY,EAAE;YACZ,WAAW,EAAE,UAAU,CAAC,MAAM;YAC9B,MAAM,EAAE,UAAU;YAClB,MAAM,EAAE,cAAc;YACtB,IAAI;SACL;QACD,QAAQ,EAAE,QAAQ;QAClB,WAAW,EAAE,YAAY;QACzB,QAAQ,EAAE;YACR,OAAO,EAAE,IAAI;YACb,iBAAiB,EAAE,sBAAsB;SAC1C;KACF,CAAC;IAUF,MAAM,KAAK,GAAG,MAAM,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAExD,IAAI,eAAe,CAAC;IACpB,IAAI,CAAC,KAAK,EAAE;QACV,eAAe,GAAG,kCAAkC,CAClD,WAAW,EACX,UAAU,EACV,YAAY,EACZ,cAAc,CACf,CAAC;KACH;SAAM;QACL,eAAe,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC;KACxC;IAGD,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,SAAS,CAAC,eAAe,CAAC,CAAC;IAEhD,OAAO;QACL,KAAK,EAAE,GAAG;QACV,KAAK,EAAE,GAAG;KACX,CAAC;AACJ,CAAC;AAED,SAAS,kCAAkC,CACzC,WAAW,EACX,UAAU,EACV,YAAY,EACZ,cAAc;IAEd,MAAM,EAAE,UAAU,EAAE,GAAG,WAAW,CAAC;IACnC,MAAM,EAAE,YAAY,EAAE,GAAG,UAAU,CAAC;IACpC,IAAI,UAAU,CAAC,iBAAiB,KAAK,YAAY,EAAE;QACjD,UAAU,IAAI,UAAU,CAAC,iBAAiB,GAAG,YAAY,CAAC;KAC3D;IAED,MAAM,UAAU,GAAG,UAAU,CAAC,WAAW,CAAC;IAC1C,MAAM,eAAe,GAAG,IAAI,UAAU,CAAC,cAAc,CAAC,CAAC;IAEvD,MAAM,gBAAgB,GAAG,IAAI,UAAU,CACrC,YAAY,EACZ,UAAU,EACV,cAAc,CACf,CAAC;IAEF,eAAe,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAEtC,OAAO,eAAe,CAAC;AACzB,CAAC;AAED,eAAe,mBAAmB,CAAC"}
1
+ {"version":3,"file":"setDefaultVolumeVOI.js","sourceRoot":"","sources":["../../../../src/RenderingEngine/helpers/setDefaultVolumeVOI.ts"],"names":[],"mappings":"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"}
@@ -18,7 +18,12 @@ function volumeNewImageEventDispatcher(cameraEvent) {
18
18
  if (state[viewport.id] === undefined) {
19
19
  state[viewport.id] = 0;
20
20
  }
21
- const { numberOfSlices, imageIndex } = getImageSliceDataForVolumeViewport(viewport);
21
+ const sliceData = getImageSliceDataForVolumeViewport(viewport);
22
+ if (!sliceData) {
23
+ console.warn(`volumeNewImageEventDispatcher: sliceData is undefined for viewport ${viewport.id}`);
24
+ return;
25
+ }
26
+ const { numberOfSlices, imageIndex } = sliceData;
22
27
  if (state[viewport.id] === imageIndex) {
23
28
  return;
24
29
  }
@@ -1 +1 @@
1
- {"version":3,"file":"volumeNewImageEventDispatcher.js","sourceRoot":"","sources":["../../../../src/RenderingEngine/helpers/volumeNewImageEventDispatcher.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kCAAkC,EAClC,YAAY,GACb,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,kBAAkB,MAAM,uBAAuB,CAAC;AAKvD,MAAM,KAAK,GAAqB,EAAE,CAAC;AAEnC,MAAM,UAAU,wBAAwB,CAAC,UAAkB;IACzD,IAAI,KAAK,CAAC,UAAU,CAAC,KAAK,SAAS,EAAE;QACnC,OAAO,KAAK,CAAC,UAAU,CAAC,CAAC;KAC1B;AACH,CAAC;AAYD,SAAS,6BAA6B,CACpC,WAA2C;IAE3C,MAAM,EAAE,iBAAiB,EAAE,UAAU,EAAE,GAAG,WAAW,CAAC,MAAM,CAAC;IAC7D,MAAM,eAAe,GAAG,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;IAC9D,MAAM,QAAQ,GAAG,eAAe,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAEzD,IAAI,CAAC,CAAC,QAAQ,YAAY,kBAAkB,CAAC,EAAE;QAC7C,MAAM,IAAI,KAAK,CACb,qEAAqE,CACtE,CAAC;KACH;IAED,IAAI,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,SAAS,EAAE;QACpC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;KACxB;IAED,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,GAClC,kCAAkC,CAAC,QAAQ,CAAC,CAAC;IAE/C,IAAI,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,UAAU,EAAE;QACrC,OAAO;KACR;IAED,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC;IAEhC,MAAM,WAAW,GAAyC;QACxD,UAAU;QACV,UAAU;QACV,iBAAiB;QACjB,cAAc;KACf,CAAC;IAEF,YAAY,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAC;AACvE,CAAC;AAED,eAAe,6BAA6B,CAAC"}
1
+ {"version":3,"file":"volumeNewImageEventDispatcher.js","sourceRoot":"","sources":["../../../../src/RenderingEngine/helpers/volumeNewImageEventDispatcher.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kCAAkC,EAClC,YAAY,GACb,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,kBAAkB,MAAM,uBAAuB,CAAC;AAKvD,MAAM,KAAK,GAAqB,EAAE,CAAC;AAEnC,MAAM,UAAU,wBAAwB,CAAC,UAAkB;IACzD,IAAI,KAAK,CAAC,UAAU,CAAC,KAAK,SAAS,EAAE;QACnC,OAAO,KAAK,CAAC,UAAU,CAAC,CAAC;KAC1B;AACH,CAAC;AAYD,SAAS,6BAA6B,CACpC,WAA2C;IAE3C,MAAM,EAAE,iBAAiB,EAAE,UAAU,EAAE,GAAG,WAAW,CAAC,MAAM,CAAC;IAC7D,MAAM,eAAe,GAAG,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;IAC9D,MAAM,QAAQ,GAAG,eAAe,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAEzD,IAAI,CAAC,CAAC,QAAQ,YAAY,kBAAkB,CAAC,EAAE;QAC7C,MAAM,IAAI,KAAK,CACb,qEAAqE,CACtE,CAAC;KACH;IAED,IAAI,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,SAAS,EAAE;QACpC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;KACxB;IAED,MAAM,SAAS,GAAG,kCAAkC,CAAC,QAAQ,CAAC,CAAC;IAE/D,IAAI,CAAC,SAAS,EAAE;QACd,OAAO,CAAC,IAAI,CACV,sEAAsE,QAAQ,CAAC,EAAE,EAAE,CACpF,CAAC;QACF,OAAO;KACR;IAED,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,GAAG,SAAS,CAAC;IAEjD,IAAI,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,UAAU,EAAE;QACrC,OAAO;KACR;IAED,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC;IAEhC,MAAM,WAAW,GAAyC;QACxD,UAAU;QACV,UAAU;QACV,iBAAiB;QACjB,cAAc;KACf,CAAC;IAEF,YAAY,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAC;AACvE,CAAC;AAED,eAAe,6BAA6B,CAAC"}
@@ -153,9 +153,7 @@ function vtkStreamingOpenGLVolumeMapper(publicAPI, model) {
153
153
  program.setUniformf('camThick', crange[1] - crange[0]);
154
154
  program.setUniformf('camNear', crange[0]);
155
155
  program.setUniformf('camFar', crange[1]);
156
- cam.setIsPerformingCoordinateTransformation(true);
157
156
  const keyMats = model.openGLCamera.getKeyMatrices(ren);
158
- cam.setIsPerformingCoordinateTransformation(false);
159
157
  const actMats = model.openGLVolume.getKeyMatrices();
160
158
  mat4.multiply(model.modelToView, keyMats.wcvc, actMats.mcwc);
161
159
  const bounds = model.currentInput.getBounds();
@@ -259,18 +257,24 @@ function vtkStreamingOpenGLVolumeMapper(publicAPI, model) {
259
257
  const image = model.currentInput;
260
258
  const worldToIndex = image.getWorldToIndex();
261
259
  program.setUniformMatrix('vWCtoIDX', worldToIndex);
262
- mat4.invert(model.projectionToWorld, keyMats.wcpc);
260
+ const camera = ren.getActiveCamera();
261
+ const [cRange0, cRange1] = camera.getClippingRange();
262
+ const distance = camera.getDistance();
263
+ camera.setClippingRange(distance, distance + 0.1);
264
+ const labelOutlineKeyMats = model.openGLCamera.getKeyMatrices(ren);
265
+ mat4.invert(model.projectionToWorld, labelOutlineKeyMats.wcpc);
266
+ camera.setClippingRange(cRange0, cRange1);
267
+ model.openGLCamera.getKeyMatrices(ren);
263
268
  program.setUniformMatrix('PCWCMatrix', model.projectionToWorld);
264
269
  const size = publicAPI.getRenderTargetSize();
265
- const offset = publicAPI.getRenderTargetOffset();
266
270
  program.setUniformf('vpWidth', size[0]);
267
271
  program.setUniformf('vpHeight', size[1]);
272
+ const offset = publicAPI.getRenderTargetOffset();
268
273
  program.setUniformf('vpOffsetX', offset[0] / size[0]);
269
274
  program.setUniformf('vpOffsetY', offset[1] / size[1]);
270
275
  }
271
276
  }
272
277
  mat4.invert(model.projectionToView, keyMats.vcpc);
273
- model.projectionToView[10] = model.projectionToView[14];
274
278
  program.setUniformMatrix('PCVCMatrix', model.projectionToView);
275
279
  switch (model.lastLightComplexity) {
276
280
  default:
@@ -305,6 +309,87 @@ function vtkStreamingOpenGLVolumeMapper(publicAPI, model) {
305
309
  });
306
310
  }
307
311
  }
312
+ let lightNum = 0;
313
+ const lightColor = [];
314
+ const lightDir = [];
315
+ const halfAngle = [];
316
+ ren.getLights().forEach((light) => {
317
+ const status = light.getSwitch();
318
+ if (status > 0) {
319
+ const dColor = light.getColor();
320
+ const intensity = light.getIntensity();
321
+ lightColor[0 + lightNum * 3] = dColor[0] * intensity;
322
+ lightColor[1 + lightNum * 3] = dColor[1] * intensity;
323
+ lightColor[2 + lightNum * 3] = dColor[2] * intensity;
324
+ const ldir = light.getDirection();
325
+ vec3.set(normal, ldir[0], ldir[1], ldir[2]);
326
+ vec3.transformMat3(normal, normal, keyMats.normalMatrix);
327
+ vec3.normalize(normal, normal);
328
+ lightDir[0 + lightNum * 3] = normal[0];
329
+ lightDir[1 + lightNum * 3] = normal[1];
330
+ lightDir[2 + lightNum * 3] = normal[2];
331
+ halfAngle[0 + lightNum * 3] = -0.5 * normal[0];
332
+ halfAngle[1 + lightNum * 3] = -0.5 * normal[1];
333
+ halfAngle[2 + lightNum * 3] = -0.5 * (normal[2] - 1.0);
334
+ lightNum++;
335
+ }
336
+ });
337
+ program.setUniformi('twoSidedLighting', ren.getTwoSidedLighting());
338
+ program.setUniformi('lightNum', lightNum);
339
+ program.setUniform3fv('lightColor', lightColor);
340
+ program.setUniform3fv('lightDirectionVC', lightDir);
341
+ program.setUniform3fv('lightHalfAngleVC', halfAngle);
342
+ if (model.lastLightComplexity === 3) {
343
+ lightNum = 0;
344
+ const lightPositionVC = [];
345
+ const lightAttenuation = [];
346
+ const lightConeAngle = [];
347
+ const lightExponent = [];
348
+ const lightPositional = [];
349
+ ren.getLights().forEach((light) => {
350
+ const status = light.getSwitch();
351
+ if (status > 0) {
352
+ const attenuation = light.getAttenuationValues();
353
+ lightAttenuation[0 + lightNum * 3] = attenuation[0];
354
+ lightAttenuation[1 + lightNum * 3] = attenuation[1];
355
+ lightAttenuation[2 + lightNum * 3] = attenuation[2];
356
+ lightExponent[lightNum] = light.getExponent();
357
+ lightConeAngle[lightNum] = light.getConeAngle();
358
+ lightPositional[lightNum] = light.getPositional();
359
+ const lp = light.getTransformedPosition();
360
+ vec3.transformMat4(lp, lp, model.modelToView);
361
+ lightPositionVC[0 + lightNum * 3] = lp[0];
362
+ lightPositionVC[1 + lightNum * 3] = lp[1];
363
+ lightPositionVC[2 + lightNum * 3] = lp[2];
364
+ lightNum += 1;
365
+ }
366
+ });
367
+ program.setUniform3fv('lightPositionVC', lightPositionVC);
368
+ program.setUniform3fv('lightAttenuation', lightAttenuation);
369
+ program.setUniformfv('lightConeAngle', lightConeAngle);
370
+ program.setUniformfv('lightExponent', lightExponent);
371
+ program.setUniformiv('lightPositional', lightPositional);
372
+ }
373
+ if (model.renderable.getVolumetricScatteringBlending() > 0.0) {
374
+ program.setUniformf('giReach', model.renderable.getGlobalIlluminationReach());
375
+ program.setUniformf('volumetricScatteringBlending', model.renderable.getVolumetricScatteringBlending());
376
+ program.setUniformf('volumeShadowSamplingDistFactor', model.renderable.getVolumeShadowSamplingDistFactor());
377
+ program.setUniformf('anisotropy', model.renderable.getAnisotropy());
378
+ program.setUniformf('anisotropy2', model.renderable.getAnisotropy() ** 2.0);
379
+ }
380
+ if (model.renderable.getVolumetricScatteringBlending() === 0.0 &&
381
+ model.renderable.getLocalAmbientOcclusion() &&
382
+ actor.getProperty().getAmbient() > 0.0) {
383
+ const ks = model.renderable.getLAOKernelSize();
384
+ program.setUniformi('kernelSize', ks);
385
+ const kernelSample = [];
386
+ for (let i = 0; i < ks; i++) {
387
+ kernelSample[i * 2] = Math.random() * 0.5;
388
+ kernelSample[i * 2 + 1] = Math.random() * 0.5;
389
+ }
390
+ program.setUniform2fv('kernelSample', kernelSample);
391
+ program.setUniformi('kernelRadius', model.renderable.getLAOKernelRadius());
392
+ }
308
393
  };
309
394
  publicAPI.getRenderTargetSize = () => {
310
395
  if (model._useSmallViewport) {
@@ -1 +1 @@
1
- {"version":3,"file":"vtkStreamingOpenGLVolumeMapper.js","sourceRoot":"","sources":["../../../../src/RenderingEngine/vtkClasses/vtkStreamingOpenGLVolumeMapper.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vtkStreamingOpenGLVolumeMapper.js","sourceRoot":"","sources":["../../../../src/RenderingEngine/vtkClasses/vtkStreamingOpenGLVolumeMapper.js"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
- import { ICache, IImageVolume, IImageLoadObject, IVolumeLoadObject, ICachedImage } from '../types';
1
+ import { ICache, IImageVolume, IGeometry, IImageLoadObject, IVolumeLoadObject, IGeometryLoadObject, ICachedImage } from '../types';
2
2
  declare class Cache implements ICache {
3
3
  private readonly _imageCache;
4
4
  private readonly _volumeCache;
5
+ private readonly _geometryCache;
5
6
  private _imageCacheSize;
6
7
  private _volumeCacheSize;
7
8
  private _maxCacheSize;
@@ -26,9 +27,11 @@ declare class Cache implements ICache {
26
27
  getCachedImageBasedOnImageURI(imageId: string): ICachedImage | undefined;
27
28
  putVolumeLoadObject(volumeId: string, volumeLoadObject: IVolumeLoadObject): Promise<any>;
28
29
  getVolumeLoadObject: (volumeId: string) => IVolumeLoadObject;
30
+ getGeometry: (geometryId: string) => IGeometry;
29
31
  getVolume: (volumeId: string) => IImageVolume;
30
32
  removeImageLoadObject: (imageId: string) => void;
31
33
  removeVolumeLoadObject: (volumeId: string) => void;
34
+ putGeometryLoadObject: (geometryId: string, geometryLoadObject: IGeometryLoadObject) => Promise<void>;
32
35
  private _incrementImageCacheSize;
33
36
  private _incrementVolumeCacheSize;
34
37
  }
@@ -82,6 +82,17 @@ class Cache {
82
82
  cachedVolume.timeStamp = Date.now();
83
83
  return cachedVolume.volumeLoadObject;
84
84
  };
85
+ this.getGeometry = (geometryId) => {
86
+ if (geometryId == null) {
87
+ throw new Error('getGeometry: geometryId must not be undefined');
88
+ }
89
+ const cachedGeometry = this._geometryCache.get(geometryId);
90
+ if (cachedGeometry === undefined) {
91
+ return;
92
+ }
93
+ cachedGeometry.timeStamp = Date.now();
94
+ return cachedGeometry.geometry;
95
+ };
85
96
  this.getVolume = (volumeId) => {
86
97
  if (volumeId === undefined) {
87
98
  throw new Error('getVolume: volumeId must not be undefined');
@@ -124,6 +135,45 @@ class Cache {
124
135
  triggerEvent(eventTarget, Events.VOLUME_CACHE_VOLUME_REMOVED, eventDetails);
125
136
  this._decacheVolume(volumeId);
126
137
  };
138
+ this.putGeometryLoadObject = (geometryId, geometryLoadObject) => {
139
+ if (geometryId == undefined) {
140
+ throw new Error('putGeometryLoadObject: geometryId must not be undefined');
141
+ }
142
+ if (this._geometryCache.has(geometryId)) {
143
+ throw new Error('putGeometryLoadObject: geometryId already present in geometryCache');
144
+ }
145
+ const cachedGeometry = {
146
+ geometryId,
147
+ geometryLoadObject,
148
+ loaded: false,
149
+ timeStamp: Date.now(),
150
+ sizeInBytes: 0,
151
+ };
152
+ this._geometryCache.set(geometryId, cachedGeometry);
153
+ return geometryLoadObject.promise
154
+ .then((geometry) => {
155
+ if (!this._geometryCache.has(geometryId)) {
156
+ console.warn('putGeometryLoadObject: geometryId was removed from geometryCache');
157
+ return;
158
+ }
159
+ if (Number.isNaN(geometry.sizeInBytes)) {
160
+ throw new Error('putGeometryLoadObject: geometry.sizeInBytes is not a number');
161
+ }
162
+ cachedGeometry.loaded = true;
163
+ cachedGeometry.geometry = geometry;
164
+ cachedGeometry.sizeInBytes = geometry.sizeInBytes;
165
+ const eventDetails = {
166
+ geometry,
167
+ geometryId,
168
+ };
169
+ triggerEvent(eventTarget, Events.GEOMETRY_CACHE_GEOMETRY_ADDED, eventDetails);
170
+ return;
171
+ })
172
+ .catch((error) => {
173
+ this._geometryCache.delete(geometryId);
174
+ throw error;
175
+ });
176
+ };
127
177
  this._incrementImageCacheSize = (increment) => {
128
178
  this._imageCacheSize += increment;
129
179
  };
@@ -132,6 +182,7 @@ class Cache {
132
182
  };
133
183
  this._imageCache = new Map();
134
184
  this._volumeCache = new Map();
185
+ this._geometryCache = new Map();
135
186
  this._imageCacheSize = 0;
136
187
  this._volumeCacheSize = 0;
137
188
  this._maxCacheSize = MAX_CACHE_SIZE_1GB;
@@ -208,7 +259,7 @@ class Cache {
208
259
  console.warn('The image was purged from the cache before it completed loading.');
209
260
  return;
210
261
  }
211
- if (image.sizeInBytes === undefined) {
262
+ if (Number.isNaN(image.sizeInBytes)) {
212
263
  throw new Error('putImageLoadObject: image.sizeInBytes must not be undefined');
213
264
  }
214
265
  if (image.sizeInBytes.toFixed === undefined) {
@@ -309,7 +360,7 @@ class Cache {
309
360
  console.warn('The image was purged from the cache before it completed loading.');
310
361
  return;
311
362
  }
312
- if (volume.sizeInBytes === undefined) {
363
+ if (Number.isNaN(volume.sizeInBytes)) {
313
364
  throw new Error('putVolumeLoadObject: volume.sizeInBytes must not be undefined');
314
365
  }
315
366
  if (volume.sizeInBytes.toFixed === undefined) {
@@ -1 +1 @@
1
- {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../../src/cache/cache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../../src/cache/cache.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,WAAW,MAAM,gBAAgB,CAAC;AACzC,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAErC,MAAM,kBAAkB,GAAG,UAAU,CAAC;AAEtC,MAAM,KAAK;IAST;QAqBO,oBAAe,GAAG,CAAC,eAAuB,EAAQ,EAAE;YACzD,IAAI,CAAC,eAAe,IAAI,OAAO,eAAe,KAAK,QAAQ,EAAE;gBAC3D,MAAM,YAAY,GAAG,qBAAqB,IAAI,CAAC,aAAa,4CAA4C,CAAC;gBACzG,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;aAC/B;YAED,IAAI,CAAC,aAAa,GAAG,eAAe,CAAC;QACvC,CAAC,CAAC;QAYK,gBAAW,GAAG,CAAC,UAAkB,EAAW,EAAE;YACnD,MAAM,gBAAgB,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAClD,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC;YAC5C,MAAM,cAAc,GAAG,gBAAgB,GAAG,cAAc,CAAC;YAEzD,OAAO,cAAc,GAAG,UAAU,CAAC;QACrC,CAAC,CAAC;QAOK,oBAAe,GAAG,GAAW,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC;QAOnD,iBAAY,GAAG,GAAW,EAAE,CACjC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAgBvC,kBAAa,GAAG,CAAC,OAAe,EAAE,EAAE;YAC1C,MAAM,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAG1D,IAAI,eAAe,CAAC,QAAQ,EAAE;gBAC5B,eAAe,CAAC,QAAQ,EAAE,CAAC;aAC5B;YAED,IAAI,eAAe,CAAC,OAAO,EAAE;gBAC3B,eAAe,CAAC,OAAO,EAAE,CAAC;aAC3B;YAED,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACnC,CAAC,CAAC;QAQM,mBAAc,GAAG,CAAC,QAAgB,EAAE,EAAE;YAC5C,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACrD,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,GAAG,YAAY,CAAC;YAElD,IAAI,MAAM,CAAC,aAAa,EAAE;gBACxB,MAAM,CAAC,aAAa,EAAE,CAAC;aACxB;YAED,IAAI,MAAM,CAAC,SAAS,EAAE;gBACpB,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC;aACzB;YAED,IAAI,gBAAgB,CAAC,QAAQ,EAAE;gBAE7B,gBAAgB,CAAC,QAAQ,EAAE,CAAC;aAC7B;YAED,IAAI,gBAAgB,CAAC,OAAO,EAAE;gBAC5B,gBAAgB,CAAC,OAAO,EAAE,CAAC;aAC5B;YAED,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACrC,CAAC,CAAC;QAYK,eAAU,GAAG,GAAS,EAAE;YAC7B,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;YAG9C,OAAO,IAAI,EAAE;gBACX,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,aAAa,CAAC,IAAI,EAAE,CAAC;gBAEtD,IAAI,IAAI,EAAE;oBACR,MAAM;iBACP;gBAED,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;gBAEpC,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,yBAAyB,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;aAC1E;YAED,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC1B,CAAC,CAAC;QAKK,qBAAgB,GAAG,GAAS,EAAE;YACnC,MAAM,cAAc,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;YAGhD,OAAO,IAAI,EAAE;gBACX,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,cAAc,CAAC,IAAI,EAAE,CAAC;gBAExD,IAAI,IAAI,EAAE;oBACR,MAAM;iBACP;gBAED,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;gBAEtC,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,2BAA2B,EAAE;oBAC5D,QAAQ;iBACT,CAAC,CAAC;aACJ;QACH,CAAC,CAAC;QA6ZK,wBAAmB,GAAG,CAAC,QAAgB,EAAqB,EAAE;YACnE,IAAI,QAAQ,KAAK,SAAS,EAAE;gBAC1B,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;aACxE;YACD,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAErD,IAAI,YAAY,KAAK,SAAS,EAAE;gBAC9B,OAAO;aACR;YAGD,YAAY,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAEpC,OAAO,YAAY,CAAC,gBAAgB,CAAC;QACvC,CAAC,CAAC;QAEK,gBAAW,GAAG,CAAC,UAAkB,EAAa,EAAE;YACrD,IAAI,UAAU,IAAI,IAAI,EAAE;gBACtB,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;aAClE;YAED,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAE3D,IAAI,cAAc,KAAK,SAAS,EAAE;gBAChC,OAAO;aACR;YAGD,cAAc,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAEtC,OAAO,cAAc,CAAC,QAAQ,CAAC;QACjC,CAAC,CAAC;QAQK,cAAS,GAAG,CAAC,QAAgB,EAAgB,EAAE;YACpD,IAAI,QAAQ,KAAK,SAAS,EAAE;gBAC1B,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;aAC9D;YACD,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAErD,IAAI,YAAY,KAAK,SAAS,EAAE;gBAC9B,OAAO;aACR;YAGD,YAAY,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAEpC,OAAO,YAAY,CAAC,MAAM,CAAC;QAC7B,CAAC,CAAC;QAWK,0BAAqB,GAAG,CAAC,OAAe,EAAQ,EAAE;YACvD,IAAI,OAAO,KAAK,SAAS,EAAE;gBACzB,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;aACzE;YACD,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAElD,IAAI,WAAW,KAAK,SAAS,EAAE;gBAC7B,MAAM,IAAI,KAAK,CACb,8DAA8D,CAC/D,CAAC;aACH;YAED,IAAI,CAAC,wBAAwB,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;YAExD,MAAM,YAAY,GAAG;gBACnB,OAAO;aACR,CAAC;YAEF,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,yBAAyB,EAAE,YAAY,CAAC,CAAC;YAC1E,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC9B,CAAC,CAAC;QAWK,2BAAsB,GAAG,CAAC,QAAgB,EAAQ,EAAE;YACzD,IAAI,QAAQ,KAAK,SAAS,EAAE;gBAC1B,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;aAC3E;YACD,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAErD,IAAI,YAAY,KAAK,SAAS,EAAE;gBAC9B,MAAM,IAAI,KAAK,CACb,iEAAiE,CAClE,CAAC;aACH;YAED,IAAI,CAAC,yBAAyB,CAAC,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;YAE1D,MAAM,YAAY,GAAG;gBACnB,MAAM,EAAE,YAAY;gBACpB,QAAQ;aACT,CAAC;YAEF,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,2BAA2B,EAAE,YAAY,CAAC,CAAC;YAC5E,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QAChC,CAAC,CAAC;QAEF,0BAAqB,GAAG,CACtB,UAAkB,EAClB,kBAAuC,EACxB,EAAE;YACjB,IAAI,UAAU,IAAI,SAAS,EAAE;gBAC3B,MAAM,IAAI,KAAK,CACb,yDAAyD,CAC1D,CAAC;aACH;YAED,IAAI,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE;gBACvC,MAAM,IAAI,KAAK,CACb,oEAAoE,CACrE,CAAC;aACH;YAED,MAAM,cAAc,GAAoB;gBACtC,UAAU;gBACV,kBAAkB;gBAClB,MAAM,EAAE,KAAK;gBACb,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;gBACrB,WAAW,EAAE,CAAC;aACf,CAAC;YAEF,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;YAEpD,OAAO,kBAAkB,CAAC,OAAO;iBAC9B,IAAI,CAAC,CAAC,QAAmB,EAAE,EAAE;gBAC5B,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE;oBACxC,OAAO,CAAC,IAAI,CACV,kEAAkE,CACnE,CAAC;oBACF,OAAO;iBACR;gBAED,IAAI,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE;oBACtC,MAAM,IAAI,KAAK,CACb,6DAA6D,CAC9D,CAAC;iBACH;gBAID,cAAc,CAAC,MAAM,GAAG,IAAI,CAAC;gBAC7B,cAAc,CAAC,QAAQ,GAAG,QAAQ,CAAC;gBACnC,cAAc,CAAC,WAAW,GAAG,QAAQ,CAAC,WAAW,CAAC;gBAIlD,MAAM,YAAY,GAAG;oBACnB,QAAQ;oBACR,UAAU;iBACX,CAAC;gBAEF,YAAY,CACV,WAAW,EACX,MAAM,CAAC,6BAA6B,EACpC,YAAY,CACb,CAAC;gBAEF,OAAO;YACT,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBACf,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;gBACvC,MAAM,KAAK,CAAC;YACd,CAAC,CAAC,CAAC;QACP,CAAC,CAAC;QAOM,6BAAwB,GAAG,CAAC,SAAiB,EAAE,EAAE;YACvD,IAAI,CAAC,eAAe,IAAI,SAAS,CAAC;QACpC,CAAC,CAAC;QAOM,8BAAyB,GAAG,CAAC,SAAiB,EAAE,EAAE;YACxD,IAAI,CAAC,gBAAgB,IAAI,SAAS,CAAC;QACrC,CAAC,CAAC;QAhxBA,IAAI,CAAC,WAAW,GAAG,IAAI,GAAG,EAAE,CAAC;QAE7B,IAAI,CAAC,YAAY,GAAG,IAAI,GAAG,EAAE,CAAC;QAE9B,IAAI,CAAC,cAAc,GAAG,IAAI,GAAG,EAAE,CAAC;QAChC,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC;QACzB,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC;QAC1B,IAAI,CAAC,aAAa,GAAG,kBAAkB,CAAC;IAC1C,CAAC;IAyDM,iBAAiB;QACtB,OAAO,IAAI,CAAC,eAAe,EAAE,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;IACtD,CAAC;IA+HM,qCAAqC,CAC1C,QAAgB,EAChB,cAA8B;QAE9B,IAAI,cAAc,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAG9C,IAAI,cAAc,IAAI,QAAQ,EAAE;YAC9B,OAAO,cAAc,CAAC;SACvB;QAED,IAAI,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;QAIzD,SAAS,OAAO,CAAC,CAAC,EAAE,CAAC;YACnB,IAAI,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,EAAE;gBAC7B,OAAO,CAAC,CAAC;aACV;YACD,IAAI,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,EAAE;gBAC7B,OAAO,CAAC,CAAC,CAAC;aACX;YAED,OAAO,CAAC,CAAC;QACX,CAAC;QAED,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC3B,IAAI,cAAc,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;QAE1D,IAAI,eAAe,GAAG,cAAc,CAAC;QAIrC,IAAI,cAAc,EAAE;YAClB,eAAe,GAAG,cAAc,CAAC,MAAM,CACrC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC,CACrC,CAAC;SACH;QAID,KAAK,MAAM,OAAO,IAAI,eAAe,EAAE;YACrC,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;YAEpC,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,yBAAyB,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;YAEzE,cAAc,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC1C,IAAI,cAAc,IAAI,QAAQ,EAAE;gBAC9B,OAAO,cAAc,CAAC;aACvB;SACF;QAGD,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;QACrD,cAAc,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;QAItD,KAAK,MAAM,OAAO,IAAI,cAAc,EAAE;YACpC,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;YAEpC,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,yBAAyB,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;YAEzE,cAAc,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC1C,IAAI,cAAc,IAAI,QAAQ,EAAE;gBAC9B,OAAO,cAAc,CAAC;aACvB;SACF;IAKH,CAAC;IAmBM,kBAAkB,CACvB,OAAe,EACf,eAAiC;QAEjC,IAAI,OAAO,KAAK,SAAS,EAAE;YACzB,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;SACtE;QAED,IAAI,eAAe,CAAC,OAAO,KAAK,SAAS,EAAE;YACzC,MAAM,IAAI,KAAK,CACb,mEAAmE,CACpE,CAAC;SACH;QAED,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;YACjC,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;SACjE;QAED,IACE,eAAe,CAAC,QAAQ;YACxB,OAAO,eAAe,CAAC,QAAQ,KAAK,UAAU,EAC9C;YACA,MAAM,IAAI,KAAK,CACb,+DAA+D,CAChE,CAAC;SACH;QAED,MAAM,WAAW,GAAiB;YAChC,MAAM,EAAE,KAAK;YACb,OAAO;YACP,cAAc,EAAE,SAAS;YACzB,eAAe;YACf,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;YACrB,WAAW,EAAE,CAAC;SACf,CAAC;QAEF,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAE3C,OAAO,eAAe,CAAC,OAAO;aAC3B,IAAI,CAAC,CAAC,KAAa,EAAE,EAAE;YACtB,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;gBAElC,OAAO,CAAC,IAAI,CACV,kEAAkE,CACnE,CAAC;gBACF,OAAO;aACR;YAED,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE;gBACnC,MAAM,IAAI,KAAK,CACb,6DAA6D,CAC9D,CAAC;aACH;YACD,IAAI,KAAK,CAAC,WAAW,CAAC,OAAO,KAAK,SAAS,EAAE;gBAC3C,MAAM,IAAI,KAAK,CACb,uDAAuD,CACxD,CAAC;aACH;YAGD,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE;gBACxC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;aAC7C;YAGD,IAAI,CAAC,qCAAqC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAE9D,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC;YAC1B,WAAW,CAAC,KAAK,GAAG,KAAK,CAAC;YAC1B,WAAW,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;YAC5C,IAAI,CAAC,wBAAwB,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;YAEvD,MAAM,YAAY,GAA+C;gBAC/D,KAAK,EAAE,WAAW;aACnB,CAAC;YAEF,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,uBAAuB,EAAE,YAAY,CAAC,CAAC;YAExE,WAAW,CAAC,cAAc,GAAG,KAAK,CAAC,cAAc,CAAC;QACpD,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YAEf,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACjC,MAAM,KAAK,CAAC;QACd,CAAC,CAAC,CAAC;IACP,CAAC;IAQM,kBAAkB,CAAC,OAAe;QACvC,IAAI,OAAO,KAAK,SAAS,EAAE;YACzB,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;SACtE;QACD,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAElD,IAAI,WAAW,KAAK,SAAS,EAAE;YAC7B,OAAO;SACR;QAGD,WAAW,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEnC,OAAO,WAAW,CAAC,eAAe,CAAC;IACrC,CAAC;IASM,eAAe,CAAC,OAAe;QACpC,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAElD,IAAI,CAAC,WAAW,EAAE;YAChB,OAAO,KAAK,CAAC;SACd;QAED,OAAO,WAAW,CAAC,MAAM,CAAC;IAC5B,CAAC;IASM,0BAA0B,CAAC,OAAe;QAI/C,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;QACvD,MAAM,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;QAE3C,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;YAChC,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAErD,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE;gBACxB,OAAO;aACR;YAED,IAAI,EAAE,QAAQ,EAAE,GAAG,YAAY,CAAC,MAAM,CAAC;YAEvC,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;gBACtC,SAAS;aACV;YAED,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC;YAElD,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;YACpD,IAAI,YAAY,GAAG,CAAC,CAAC,EAAE;gBACrB,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC;aACtD;SACF;IACH,CAAC;IASM,6BAA6B,CAClC,OAAe;QAEf,MAAM,aAAa,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;QAE5C,MAAM,cAAc,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC;QAC3D,MAAM,YAAY,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;YACnD,OAAO,YAAY,CAAC,OAAO,CAAC,KAAK,aAAa,CAAC;QACjD,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,YAAY,EAAE;YACjB,OAAO;SACR;QAED,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAC5C,CAAC;IAiBM,mBAAmB,CACxB,QAAgB,EAChB,gBAAmC;QAEnC,IAAI,QAAQ,KAAK,SAAS,EAAE;YAC1B,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;SACxE;QACD,IAAI,gBAAgB,CAAC,OAAO,KAAK,SAAS,EAAE;YAC1C,MAAM,IAAI,KAAK,CACb,qEAAqE,CACtE,CAAC;SACH;QACD,IAAI,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;YACnC,MAAM,IAAI,KAAK,CACb,iCAAiC,QAAQ,mBAAmB,CAC7D,CAAC;SACH;QACD,IACE,gBAAgB,CAAC,QAAQ;YACzB,OAAO,gBAAgB,CAAC,QAAQ,KAAK,UAAU,EAC/C;YACA,MAAM,IAAI,KAAK,CACb,iEAAiE,CAClE,CAAC;SACH;QAKD,MAAM,YAAY,GAAkB;YAClC,MAAM,EAAE,KAAK;YACb,QAAQ;YACR,gBAAgB;YAChB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;YACrB,WAAW,EAAE,CAAC;SACf,CAAC;QAEF,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QAE9C,OAAO,gBAAgB,CAAC,OAAO;aAC5B,IAAI,CAAC,CAAC,MAAoB,EAAE,EAAE;YAC7B,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;gBAEpC,OAAO,CAAC,IAAI,CACV,kEAAkE,CACnE,CAAC;gBACF,OAAO;aACR;YAED,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE;gBACpC,MAAM,IAAI,KAAK,CACb,+DAA+D,CAChE,CAAC;aACH;YACD,IAAI,MAAM,CAAC,WAAW,CAAC,OAAO,KAAK,SAAS,EAAE;gBAC5C,MAAM,IAAI,KAAK,CACb,yDAAyD,CAC1D,CAAC;aACH;YAKD,IAAI,CAAC,qCAAqC,CACxC,MAAM,CAAC,WAAW,EAElB,MAAM,CAAC,QAAQ,CAChB,CAAC;YAGF,YAAY,CAAC,MAAM,GAAG,MAAM,CAAC;YAC7B,YAAY,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;YAC9C,IAAI,CAAC,yBAAyB,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;YAEzD,MAAM,YAAY,GAAiD;gBACjE,MAAM,EAAE,YAAY;aACrB,CAAC;YAEF,YAAY,CACV,WAAW,EACX,MAAM,CAAC,yBAAyB,EAChC,YAAY,CACb,CAAC;QACJ,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACf,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACnC,MAAM,KAAK,CAAC;QACd,CAAC,CAAC,CAAC;IACP,CAAC;CAmNF;AA0CD,MAAM,KAAK,GAAG,IAAI,KAAK,EAAE,CAAC;AAC1B,eAAe,KAAK,CAAC;AACrB,OAAO,EAAE,KAAK,EAAE,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { Point3, ContourData, IContour } from '../../types';
2
+ import { ContourType } from '../../enums';
3
+ declare type ContourProps = {
4
+ id: string;
5
+ data: ContourData;
6
+ color: Point3;
7
+ };
8
+ export declare class Contour implements IContour {
9
+ readonly id: string;
10
+ readonly sizeInBytes: number;
11
+ points: Point3[];
12
+ color: Point3;
13
+ type: ContourType;
14
+ constructor(props: ContourProps);
15
+ _getSizeInBytes(): number;
16
+ getPoints(): Point3[];
17
+ getFlatPointsArray(): number[];
18
+ getColor(): Point3;
19
+ getType(): ContourType;
20
+ }
21
+ export default Contour;
@@ -0,0 +1,29 @@
1
+ export class Contour {
2
+ constructor(props) {
3
+ const { points, type } = props.data;
4
+ this.id = props.id;
5
+ this.points = points;
6
+ this.type = type;
7
+ this.color = props.color;
8
+ this.sizeInBytes = this._getSizeInBytes();
9
+ }
10
+ _getSizeInBytes() {
11
+ let sizeInBytes = 0;
12
+ sizeInBytes += this.points.length * 3;
13
+ return sizeInBytes;
14
+ }
15
+ getPoints() {
16
+ return this.points;
17
+ }
18
+ getFlatPointsArray() {
19
+ return this.points.map((point) => [...point]).flat();
20
+ }
21
+ getColor() {
22
+ return this.color;
23
+ }
24
+ getType() {
25
+ return this.type;
26
+ }
27
+ }
28
+ export default Contour;
29
+ //# sourceMappingURL=Contour.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Contour.js","sourceRoot":"","sources":["../../../../src/cache/classes/Contour.ts"],"names":[],"mappings":"AAeA,MAAM,OAAO,OAAO;IAOlB,YAAY,KAAmB;QAC7B,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC;QACpC,IAAI,CAAC,EAAE,GAAG,KAAK,CAAC,EAAE,CAAC;QACnB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QAEzB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;IAC5C,CAAC;IAED,eAAe;QACb,IAAI,WAAW,GAAG,CAAC,CAAC;QAGpB,WAAW,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QACtC,OAAO,WAAW,CAAC;IACrB,CAAC;IAMM,SAAS;QACd,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAEM,kBAAkB;QACvB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACvD,CAAC;IAMM,QAAQ;QACb,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAMM,OAAO;QACZ,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;CACF;AAED,eAAe,OAAO,CAAC"}
@@ -0,0 +1,28 @@
1
+ import { Point3, IContourSet, IContour, ContourData } from '../../types';
2
+ import Contour from './Contour';
3
+ declare type ContourSetProps = {
4
+ id: string;
5
+ data: ContourData[];
6
+ frameOfReferenceUID: string;
7
+ color?: Point3;
8
+ };
9
+ export declare class ContourSet implements IContourSet {
10
+ readonly id: string;
11
+ readonly sizeInBytes: number;
12
+ readonly frameOfReferenceUID: string;
13
+ private color;
14
+ contours: IContour[];
15
+ constructor(props: ContourSetProps);
16
+ _createEachContour(contourDataArray: ContourData[]): void;
17
+ _getSizeInBytes(): number;
18
+ getColor(): Point3;
19
+ getContours(): IContour[];
20
+ getSizeInBytes(): number;
21
+ getFlatPointsArray(): Point3[];
22
+ getNumberOfContours(): number;
23
+ getTotalNumberOfPoints(): number;
24
+ getNumberOfPointsArray(): number[];
25
+ getPointsInContour(contourIndex: number): Point3[];
26
+ getNumberOfPointsInAContour(contourIndex: number): number;
27
+ }
28
+ export default Contour;