@kitware/vtk.js 28.10.1 → 28.11.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 (566) hide show
  1. package/Common/Core/Base64.js +53 -82
  2. package/Common/Core/CellArray.js +52 -60
  3. package/Common/Core/ClassHierarchy.js +8 -36
  4. package/Common/Core/DataArray/Constants.js +6 -6
  5. package/Common/Core/DataArray.js +185 -270
  6. package/Common/Core/Endian.js +14 -17
  7. package/Common/Core/HalfFloat.js +17 -34
  8. package/Common/Core/ImageHelper.js +17 -25
  9. package/Common/Core/LookupTable.js +131 -144
  10. package/Common/Core/Math/Constants.js +8 -8
  11. package/Common/Core/Math/index.js +778 -903
  12. package/Common/Core/Math.d.ts +14 -0
  13. package/Common/Core/Math.js +2 -4
  14. package/Common/Core/MatrixBuilder.js +99 -151
  15. package/Common/Core/Points.js +43 -43
  16. package/Common/Core/PriorityQueue.js +30 -28
  17. package/Common/Core/ProgressHandler.js +31 -32
  18. package/Common/Core/ScalarsToColors/Constants.js +4 -4
  19. package/Common/Core/ScalarsToColors.js +196 -253
  20. package/Common/Core/StringArray.js +48 -73
  21. package/Common/Core/URLExtract.js +10 -29
  22. package/Common/Core/VariantArray.js +48 -73
  23. package/Common/Core.js +11 -11
  24. package/Common/DataModel/AbstractPointLocator.js +19 -17
  25. package/Common/DataModel/BoundingBox.js +322 -490
  26. package/Common/DataModel/Box.js +46 -63
  27. package/Common/DataModel/CardinalSpline1D.js +92 -102
  28. package/Common/DataModel/Cell.js +41 -61
  29. package/Common/DataModel/CellLinks.js +91 -127
  30. package/Common/DataModel/CellTypes/Constants.js +7 -6
  31. package/Common/DataModel/CellTypes.js +55 -74
  32. package/Common/DataModel/Collection.js +45 -61
  33. package/Common/DataModel/Cone.js +28 -20
  34. package/Common/DataModel/Cylinder.js +41 -35
  35. package/Common/DataModel/DataSet/Constants.js +11 -5
  36. package/Common/DataModel/DataSet.js +37 -25
  37. package/Common/DataModel/DataSetAttributes/Constants.js +18 -18
  38. package/Common/DataModel/DataSetAttributes/FieldData.js +103 -194
  39. package/Common/DataModel/DataSetAttributes.js +96 -138
  40. package/Common/DataModel/EdgeLocator.js +45 -70
  41. package/Common/DataModel/ITKHelper.js +67 -137
  42. package/Common/DataModel/ImageData.js +115 -172
  43. package/Common/DataModel/ImplicitBoolean/Constants.js +2 -2
  44. package/Common/DataModel/ImplicitBoolean.js +66 -96
  45. package/Common/DataModel/IncrementalOctreeNode.js +201 -231
  46. package/Common/DataModel/IncrementalOctreePointLocator.js +160 -198
  47. package/Common/DataModel/KochanekSpline1D.js +78 -81
  48. package/Common/DataModel/Line/Constants.js +2 -2
  49. package/Common/DataModel/Line.js +82 -105
  50. package/Common/DataModel/Locator.js +17 -10
  51. package/Common/DataModel/Molecule.js +26 -17
  52. package/Common/DataModel/PiecewiseFunction.js +218 -239
  53. package/Common/DataModel/Plane.js +90 -113
  54. package/Common/DataModel/PointSet.js +30 -26
  55. package/Common/DataModel/PolyData/Constants.js +2 -2
  56. package/Common/DataModel/PolyData.js +95 -120
  57. package/Common/DataModel/PolyLine.js +44 -61
  58. package/Common/DataModel/Polygon/Constants.js +4 -4
  59. package/Common/DataModel/Polygon.js +128 -169
  60. package/Common/DataModel/Quad/Constants.js +2 -2
  61. package/Common/DataModel/Quad.js +61 -100
  62. package/Common/DataModel/SelectionNode/Constants.js +5 -4
  63. package/Common/DataModel/SelectionNode.js +25 -21
  64. package/Common/DataModel/Sphere.js +40 -35
  65. package/Common/DataModel/Spline1D/Constants.js +3 -2
  66. package/Common/DataModel/Spline1D.js +34 -18
  67. package/Common/DataModel/Spline3D/Constants.js +2 -2
  68. package/Common/DataModel/Spline3D.js +46 -41
  69. package/Common/DataModel/StructuredData/Constants.js +2 -2
  70. package/Common/DataModel/StructuredData.js +9 -20
  71. package/Common/DataModel/Triangle.js +207 -250
  72. package/Common/DataModel.js +19 -19
  73. package/Common/System/MobileVR.js +56 -61
  74. package/Common/System/TimerLog.js +1 -1
  75. package/Common/System.js +2 -2
  76. package/Common/Transform/LandmarkTransform/Constants.js +2 -2
  77. package/Common/Transform/LandmarkTransform.js +133 -117
  78. package/Common/Transform/Transform.js +42 -57
  79. package/Common/Transform.js +2 -2
  80. package/Common/index.js +4 -4
  81. package/Filters/Core/Cutter.js +134 -146
  82. package/Filters/Core/PolyDataNormals.js +44 -50
  83. package/Filters/Core.js +2 -2
  84. package/Filters/Cornerstone/ImageDataToCornerstoneImage.js +45 -33
  85. package/Filters/Cornerstone.js +1 -1
  86. package/Filters/General/AppendPolyData.js +84 -100
  87. package/Filters/General/Calculator.js +95 -163
  88. package/Filters/General/ClipClosedSurface/Constants.js +2 -2
  89. package/Filters/General/ClipClosedSurface.js +341 -416
  90. package/Filters/General/ClosedPolyLineToSurfaceFilter.js +141 -156
  91. package/Filters/General/ContourTriangulator/Constants.js +2 -2
  92. package/Filters/General/ContourTriangulator/helper.js +684 -812
  93. package/Filters/General/ContourTriangulator.js +92 -89
  94. package/Filters/General/ImageCropFilter.js +77 -78
  95. package/Filters/General/ImageDataOutlineFilter.js +42 -36
  96. package/Filters/General/ImageMarchingCubes/caseTable.js +9 -521
  97. package/Filters/General/ImageMarchingCubes.js +99 -112
  98. package/Filters/General/ImageMarchingSquares/caseTable.js +9 -41
  99. package/Filters/General/ImageMarchingSquares.js +93 -118
  100. package/Filters/General/ImageOutlineFilter.js +53 -54
  101. package/Filters/General/ImageSliceFilter.js +39 -30
  102. package/Filters/General/ImageStreamline.js +107 -124
  103. package/Filters/General/LineFilter.js +26 -15
  104. package/Filters/General/MoleculeToRepresentation.js +136 -149
  105. package/Filters/General/OBBTree/OBBNode.js +36 -34
  106. package/Filters/General/OBBTree/helper.js +19 -24
  107. package/Filters/General/OBBTree.js +396 -488
  108. package/Filters/General/OutlineFilter.js +52 -34
  109. package/Filters/General/PaintFilter/PaintFilter.worker.js +93 -130
  110. package/Filters/General/PaintFilter.js +150 -162
  111. package/Filters/General/ScalarToRGBA.js +38 -33
  112. package/Filters/General/TriangleFilter.js +65 -62
  113. package/Filters/General/TubeFilter/Constants.js +4 -4
  114. package/Filters/General/TubeFilter.js +376 -496
  115. package/Filters/General/WarpScalar.js +58 -60
  116. package/Filters/General/WindowedSincPolyDataFilter.js +258 -330
  117. package/Filters/General.js +21 -21
  118. package/Filters/Sources/Arrow2DSource/Constants.js +2 -2
  119. package/Filters/Sources/Arrow2DSource.js +56 -56
  120. package/Filters/Sources/ArrowSource.js +39 -29
  121. package/Filters/Sources/CircleSource.js +43 -43
  122. package/Filters/Sources/ConcentricCylinderSource.js +151 -174
  123. package/Filters/Sources/ConeSource.js +51 -42
  124. package/Filters/Sources/CubeSource.js +75 -96
  125. package/Filters/Sources/Cursor3D.js +94 -109
  126. package/Filters/Sources/CylinderSource.js +90 -90
  127. package/Filters/Sources/ImageGridSource.js +43 -43
  128. package/Filters/Sources/LineSource.js +49 -39
  129. package/Filters/Sources/PlaneSource.js +97 -104
  130. package/Filters/Sources/PointSource.js +46 -37
  131. package/Filters/Sources/RTAnalyticSource.js +50 -48
  132. package/Filters/Sources/SLICSource.js +63 -73
  133. package/Filters/Sources/SphereSource.js +88 -78
  134. package/Filters/Sources/ViewFinderSource.js +26 -23
  135. package/Filters/Sources.js +14 -14
  136. package/Filters/Texture/TextureMapToPlane.js +95 -97
  137. package/Filters/Texture/TextureMapToSphere.js +46 -54
  138. package/Filters/Texture.js +2 -2
  139. package/Filters/index.js +5 -5
  140. package/IO/Core/BinaryHelper.js +12 -18
  141. package/IO/Core/DataAccessHelper/HtmlDataAccessHelper.js +43 -59
  142. package/IO/Core/DataAccessHelper/HttpDataAccessHelper.js +76 -113
  143. package/IO/Core/DataAccessHelper/JSZipDataAccessHelper.js +62 -112
  144. package/IO/Core/DataAccessHelper/LiteHttpDataAccessHelper.js +76 -113
  145. package/IO/Core/DataAccessHelper.js +6 -6
  146. package/IO/Core/HttpDataSetReader.js +136 -139
  147. package/IO/Core/HttpDataSetSeriesReader.js +64 -75
  148. package/IO/Core/HttpSceneLoader.js +130 -179
  149. package/IO/Core/ImageStream/DefaultProtocol.js +29 -43
  150. package/IO/Core/ImageStream/ViewStream.js +100 -103
  151. package/IO/Core/ImageStream.js +62 -54
  152. package/IO/Core/ResourceLoader.js +10 -9
  153. package/IO/Core/Serializer/ArraySerializer.js +40 -40
  154. package/IO/Core/Serializer/FieldDataSerializer.js +18 -28
  155. package/IO/Core/Serializer/ImageDataSerializer.js +22 -23
  156. package/IO/Core/Serializer/PolyDataSerializer.js +17 -21
  157. package/IO/Core/Serializer.js +6 -13
  158. package/IO/Core/WSLinkClient.js +90 -76
  159. package/IO/Core/ZipMultiDataSetReader.js +46 -44
  160. package/IO/Core/ZipMultiDataSetWriter.js +43 -34
  161. package/IO/Core.js +7 -7
  162. package/IO/Geometry/DracoReader.js +118 -121
  163. package/IO/Geometry/PLYReader.js +163 -223
  164. package/IO/Geometry/PLYWriter/Constants.js +5 -5
  165. package/IO/Geometry/PLYWriter.js +139 -154
  166. package/IO/Geometry/STLReader.js +123 -146
  167. package/IO/Geometry/STLWriter/Constants.js +2 -2
  168. package/IO/Geometry/STLWriter.js +83 -82
  169. package/IO/Geometry.js +5 -5
  170. package/IO/Legacy/LegacyAsciiParser.js +78 -139
  171. package/IO/Legacy/PolyDataReader.js +48 -36
  172. package/IO/Legacy.js +2 -2
  173. package/IO/Misc/ElevationReader.js +67 -60
  174. package/IO/Misc/HttpDataSetLODsLoader.js +41 -38
  175. package/IO/Misc/ITKImageReader.js +58 -45
  176. package/IO/Misc/ITKPolyDataReader.js +50 -38
  177. package/IO/Misc/JSONNucleoReader.js +49 -42
  178. package/IO/Misc/JSONReader.js +38 -33
  179. package/IO/Misc/MTLReader.js +74 -119
  180. package/IO/Misc/OBJReader.js +153 -206
  181. package/IO/Misc/PDBReader.js +70 -68
  182. package/IO/Misc/SkyboxReader.js +77 -82
  183. package/IO/Misc.js +9 -9
  184. package/IO/XML/XMLImageDataReader.js +36 -38
  185. package/IO/XML/XMLImageDataWriter.js +28 -21
  186. package/IO/XML/XMLPolyDataReader.js +49 -46
  187. package/IO/XML/XMLPolyDataWriter.js +43 -42
  188. package/IO/XML/XMLReader.js +262 -304
  189. package/IO/XML/XMLWriter/Constants.js +3 -3
  190. package/IO/XML/XMLWriter.js +70 -84
  191. package/IO/XML.js +6 -6
  192. package/IO/index.js +5 -5
  193. package/Imaging/Core/AbstractImageInterpolator/Constants.js +4 -4
  194. package/Imaging/Core/AbstractImageInterpolator/InterpolationInfo.js +30 -27
  195. package/Imaging/Core/AbstractImageInterpolator.js +74 -87
  196. package/Imaging/Core/ImageInterpolator.js +201 -252
  197. package/Imaging/Core/ImagePointDataIterator.js +96 -122
  198. package/Imaging/Core/ImageReslice/Constants.js +2 -2
  199. package/Imaging/Core/ImageReslice.js +327 -464
  200. package/Imaging/Core.js +4 -4
  201. package/Imaging/Hybrid/SampleFunction.js +58 -51
  202. package/Imaging/Hybrid.js +1 -1
  203. package/Imaging/index.js +2 -2
  204. package/Interaction/Animations/TimeStepBasedAnimationHandler.js +39 -54
  205. package/Interaction/Manipulators/CompositeCameraManipulator.js +22 -13
  206. package/Interaction/Manipulators/CompositeGestureManipulator.js +31 -43
  207. package/Interaction/Manipulators/CompositeKeyboardManipulator.js +15 -11
  208. package/Interaction/Manipulators/CompositeMouseManipulator.js +27 -33
  209. package/Interaction/Manipulators/CompositeVRManipulator.js +22 -15
  210. package/Interaction/Manipulators/GestureCameraManipulator.js +54 -36
  211. package/Interaction/Manipulators/KeyboardCameraManipulator.js +95 -97
  212. package/Interaction/Manipulators/MouseBoxSelectorManipulator.js +70 -89
  213. package/Interaction/Manipulators/MouseCameraAxisRotateManipulator.js +67 -54
  214. package/Interaction/Manipulators/MouseCameraSliceManipulator.js +40 -38
  215. package/Interaction/Manipulators/MouseCameraTrackballFirstPersonManipulator.js +83 -68
  216. package/Interaction/Manipulators/MouseCameraTrackballMultiRotateManipulator.js +32 -28
  217. package/Interaction/Manipulators/MouseCameraTrackballPanManipulator.js +47 -40
  218. package/Interaction/Manipulators/MouseCameraTrackballRollManipulator.js +55 -43
  219. package/Interaction/Manipulators/MouseCameraTrackballRotateManipulator.js +56 -46
  220. package/Interaction/Manipulators/MouseCameraTrackballZoomManipulator.js +41 -46
  221. package/Interaction/Manipulators/MouseCameraTrackballZoomToMouseManipulator.js +29 -27
  222. package/Interaction/Manipulators/MouseCameraUnicamManipulator.js +123 -146
  223. package/Interaction/Manipulators/MouseCameraUnicamRotateManipulator.js +144 -166
  224. package/Interaction/Manipulators/MouseRangeManipulator.js +127 -132
  225. package/Interaction/Manipulators/VRButtonPanManipulator.js +33 -23
  226. package/Interaction/Manipulators.js +21 -21
  227. package/Interaction/Misc/DeviceOrientationToCamera.js +25 -47
  228. package/Interaction/Misc.js +1 -1
  229. package/Interaction/Style/InteractorStyleImage.js +101 -121
  230. package/Interaction/Style/InteractorStyleMPRSlice.js +111 -128
  231. package/Interaction/Style/InteractorStyleManipulator/Presets.js +9 -17
  232. package/Interaction/Style/InteractorStyleManipulator.js +254 -329
  233. package/Interaction/Style/InteractorStyleRemoteMouse.js +195 -180
  234. package/Interaction/Style/InteractorStyleTrackballCamera.js +154 -157
  235. package/Interaction/Style/InteractorStyleUnicam.js +30 -38
  236. package/Interaction/Style.js +5 -5
  237. package/Interaction/UI/CornerAnnotation/CornerAnnotation.module.css.js +1 -1
  238. package/Interaction/UI/CornerAnnotation.js +65 -48
  239. package/Interaction/UI/FPSMonitor.js +104 -105
  240. package/Interaction/UI/Icons.js +1 -1
  241. package/Interaction/UI/Slider/Constants.js +2 -2
  242. package/Interaction/UI/Slider.js +78 -95
  243. package/Interaction/UI/VolumeController.js +104 -97
  244. package/Interaction/UI.js +5 -5
  245. package/Interaction/Widgets/OrientationMarkerWidget/Constants.js +2 -2
  246. package/Interaction/Widgets/OrientationMarkerWidget.js +90 -135
  247. package/Interaction/Widgets/PiecewiseGaussianWidget/ComputeHistogram.worker.js +0 -3
  248. package/Interaction/Widgets/PiecewiseGaussianWidget.js +381 -498
  249. package/Interaction/Widgets.js +2 -2
  250. package/Interaction/index.js +5 -5
  251. package/Proxy/Animation/AbstractAnimationProxy.js +22 -15
  252. package/Proxy/Animation/AnimationProxyManager.js +43 -51
  253. package/Proxy/Animation/TimeStepBasedAnimationHandlerProxy.js +26 -19
  254. package/Proxy/Core/AbstractRepresentationProxy.js +97 -151
  255. package/Proxy/Core/LookupTableProxy/Constants.js +4 -4
  256. package/Proxy/Core/LookupTableProxy.js +49 -52
  257. package/Proxy/Core/PiecewiseFunctionProxy/Constants.js +4 -4
  258. package/Proxy/Core/PiecewiseFunctionProxy.js +63 -72
  259. package/Proxy/Core/ProxyManager/core.js +83 -106
  260. package/Proxy/Core/ProxyManager/properties.js +53 -76
  261. package/Proxy/Core/ProxyManager/state.js +100 -110
  262. package/Proxy/Core/ProxyManager/view.js +45 -55
  263. package/Proxy/Core/ProxyManager.js +16 -8
  264. package/Proxy/Core/SourceProxy.js +41 -38
  265. package/Proxy/Core/View2DProxy.js +143 -199
  266. package/Proxy/Core/ViewProxy.js +223 -269
  267. package/Proxy/Core.js +7 -7
  268. package/Proxy/Representations/GeometryRepresentationProxy.js +34 -20
  269. package/Proxy/Representations/GlyphRepresentationProxy.js +42 -41
  270. package/Proxy/Representations/MoleculeRepresentationProxy.js +32 -22
  271. package/Proxy/Representations/ResliceRepresentationProxy.js +48 -32
  272. package/Proxy/Representations/SkyboxRepresentationProxy.js +30 -29
  273. package/Proxy/Representations/SliceRepresentationProxy.js +93 -112
  274. package/Proxy/Representations/SlicedGeometryRepresentationProxy.js +46 -42
  275. package/Proxy/Representations/VolumeRepresentationProxy.js +108 -133
  276. package/Proxy/Representations.js +7 -7
  277. package/Proxy/index.js +2 -2
  278. package/Rendering/Core/AbstractImageMapper/helper.js +44 -49
  279. package/Rendering/Core/AbstractImageMapper.js +18 -19
  280. package/Rendering/Core/AbstractMapper.js +39 -55
  281. package/Rendering/Core/AbstractMapper3D.js +26 -31
  282. package/Rendering/Core/AbstractPicker.js +25 -21
  283. package/Rendering/Core/Actor.js +71 -93
  284. package/Rendering/Core/Actor2D.js +64 -78
  285. package/Rendering/Core/AnnotatedCubeActor/Presets.js +5 -11
  286. package/Rendering/Core/AnnotatedCubeActor.js +94 -79
  287. package/Rendering/Core/AxesActor.js +65 -87
  288. package/Rendering/Core/Camera.js +246 -271
  289. package/Rendering/Core/CellPicker.js +125 -148
  290. package/Rendering/Core/ColorTransferFunction/ColorMaps.js +20 -21
  291. package/Rendering/Core/ColorTransferFunction/ColorMapsLite.js +20 -21
  292. package/Rendering/Core/ColorTransferFunction/Constants.js +4 -4
  293. package/Rendering/Core/ColorTransferFunction.js +460 -546
  294. package/Rendering/Core/Coordinate/Constants.js +2 -2
  295. package/Rendering/Core/Coordinate.js +119 -198
  296. package/Rendering/Core/CubeAxesActor.js +294 -320
  297. package/Rendering/Core/Follower.js +46 -45
  298. package/Rendering/Core/Glyph3DMapper/Constants.js +4 -4
  299. package/Rendering/Core/Glyph3DMapper.js +96 -148
  300. package/Rendering/Core/HardwareSelector.js +36 -69
  301. package/Rendering/Core/ImageArrayMapper.js +87 -126
  302. package/Rendering/Core/ImageCPRMapper.js +134 -209
  303. package/Rendering/Core/ImageMapper/Constants.js +2 -2
  304. package/Rendering/Core/ImageMapper.js +92 -170
  305. package/Rendering/Core/ImageProperty/Constants.js +2 -2
  306. package/Rendering/Core/ImageProperty.js +66 -81
  307. package/Rendering/Core/ImageResliceMapper/Constants.js +2 -2
  308. package/Rendering/Core/ImageResliceMapper.js +36 -29
  309. package/Rendering/Core/ImageSlice.js +85 -127
  310. package/Rendering/Core/InteractorObserver.js +82 -73
  311. package/Rendering/Core/InteractorStyle/Constants.js +2 -2
  312. package/Rendering/Core/InteractorStyle.js +56 -58
  313. package/Rendering/Core/Light.js +43 -49
  314. package/Rendering/Core/Mapper/CoincidentTopologyHelper.js +37 -48
  315. package/Rendering/Core/Mapper/Constants.js +6 -6
  316. package/Rendering/Core/Mapper/Static.js +15 -12
  317. package/Rendering/Core/Mapper.js +194 -259
  318. package/Rendering/Core/Mapper2D.js +61 -100
  319. package/Rendering/Core/Picker.js +124 -143
  320. package/Rendering/Core/PixelSpaceCallbackMapper.js +40 -37
  321. package/Rendering/Core/PointPicker.js +68 -79
  322. package/Rendering/Core/Prop/Constants.js +2 -2
  323. package/Rendering/Core/Prop.js +58 -106
  324. package/Rendering/Core/Prop3D.js +54 -83
  325. package/Rendering/Core/Property/Constants.js +6 -6
  326. package/Rendering/Core/Property.js +45 -74
  327. package/Rendering/Core/Property2D/Constants.js +2 -2
  328. package/Rendering/Core/Property2D.js +33 -42
  329. package/Rendering/Core/RenderWindow.js +70 -82
  330. package/Rendering/Core/RenderWindowInteractor/Constants.js +7 -7
  331. package/Rendering/Core/RenderWindowInteractor.js +324 -439
  332. package/Rendering/Core/Renderer.js +193 -257
  333. package/Rendering/Core/ScalarBarActor.js +267 -272
  334. package/Rendering/Core/Skybox.js +26 -24
  335. package/Rendering/Core/SphereMapper.js +22 -12
  336. package/Rendering/Core/StickMapper.js +22 -12
  337. package/Rendering/Core/SurfaceLICInterface/Constants.js +6 -6
  338. package/Rendering/Core/SurfaceLICInterface.js +13 -9
  339. package/Rendering/Core/SurfaceLICMapper.js +23 -15
  340. package/Rendering/Core/Texture.js +99 -141
  341. package/Rendering/Core/Viewport.js +60 -88
  342. package/Rendering/Core/Volume.js +55 -77
  343. package/Rendering/Core/VolumeMapper/Constants.js +4 -4
  344. package/Rendering/Core/VolumeMapper.js +59 -91
  345. package/Rendering/Core/VolumeProperty/Constants.js +4 -4
  346. package/Rendering/Core/VolumeProperty.js +78 -115
  347. package/Rendering/Core.js +47 -49
  348. package/Rendering/Misc/CanvasView.js +62 -61
  349. package/Rendering/Misc/FullScreenRenderWindow.js +60 -62
  350. package/Rendering/Misc/GenericRenderWindow.js +48 -37
  351. package/Rendering/Misc/RemoteView.js +86 -80
  352. package/Rendering/Misc/RenderWindowWithControlBar.js +54 -48
  353. package/Rendering/Misc/SynchronizableRenderWindow/BehaviorManager/CameraSynchronizer.js +43 -51
  354. package/Rendering/Misc/SynchronizableRenderWindow/BehaviorManager.js +52 -82
  355. package/Rendering/Misc/SynchronizableRenderWindow/ObjectManager.js +258 -308
  356. package/Rendering/Misc/SynchronizableRenderWindow.js +133 -163
  357. package/Rendering/Misc/TextureLODsDownloader.js +72 -74
  358. package/Rendering/Misc.js +7 -7
  359. package/Rendering/OpenGL/Actor.js +57 -68
  360. package/Rendering/OpenGL/Actor2D.js +56 -56
  361. package/Rendering/OpenGL/BufferObject/Constants.js +2 -2
  362. package/Rendering/OpenGL/BufferObject.js +50 -65
  363. package/Rendering/OpenGL/Camera.js +35 -29
  364. package/Rendering/OpenGL/CellArrayBufferObject.js +119 -149
  365. package/Rendering/OpenGL/Convolution2DPass.js +87 -81
  366. package/Rendering/OpenGL/CubeAxesActor.js +28 -21
  367. package/Rendering/OpenGL/ForwardPass.js +53 -64
  368. package/Rendering/OpenGL/Framebuffer.js +61 -101
  369. package/Rendering/OpenGL/Glyph3DMapper.js +165 -196
  370. package/Rendering/OpenGL/HardwareSelector/Constants.js +2 -2
  371. package/Rendering/OpenGL/HardwareSelector.js +272 -397
  372. package/Rendering/OpenGL/Helper.js +58 -73
  373. package/Rendering/OpenGL/ImageCPRMapper.js +339 -421
  374. package/Rendering/OpenGL/ImageMapper.js +268 -361
  375. package/Rendering/OpenGL/ImageResliceMapper.js +306 -438
  376. package/Rendering/OpenGL/ImageSlice.js +48 -54
  377. package/Rendering/OpenGL/OrderIndependentTranslucentPass.js +102 -84
  378. package/Rendering/OpenGL/PixelSpaceCallbackMapper.js +43 -42
  379. package/Rendering/OpenGL/PolyDataMapper.js +358 -492
  380. package/Rendering/OpenGL/PolyDataMapper2D.js +153 -205
  381. package/Rendering/OpenGL/RadialDistortionPass.js +86 -89
  382. package/Rendering/OpenGL/RenderWindow/Constants.js +2 -2
  383. package/Rendering/OpenGL/RenderWindow/ContextProxy.js +20 -29
  384. package/Rendering/OpenGL/RenderWindow.js +356 -510
  385. package/Rendering/OpenGL/Renderer.js +77 -89
  386. package/Rendering/OpenGL/ReplacementShaderMapper.js +28 -46
  387. package/Rendering/OpenGL/ScalarBarActor.js +28 -21
  388. package/Rendering/OpenGL/Shader.js +37 -31
  389. package/Rendering/OpenGL/ShaderCache.js +67 -74
  390. package/Rendering/OpenGL/ShaderProgram.js +136 -248
  391. package/Rendering/OpenGL/Skybox.js +99 -60
  392. package/Rendering/OpenGL/SphereMapper.js +94 -108
  393. package/Rendering/OpenGL/StickMapper.js +110 -114
  394. package/Rendering/OpenGL/SurfaceLIC/LineIntegralConvolution2D/pingpong.js +91 -157
  395. package/Rendering/OpenGL/SurfaceLIC/LineIntegralConvolution2D.js +142 -151
  396. package/Rendering/OpenGL/SurfaceLIC/SurfaceLICInterface.js +142 -216
  397. package/Rendering/OpenGL/SurfaceLIC/SurfaceLICMapper.js +79 -100
  398. package/Rendering/OpenGL/SurfaceLIC.js +2 -2
  399. package/Rendering/OpenGL/Texture/Constants.js +4 -4
  400. package/Rendering/OpenGL/Texture.js +444 -609
  401. package/Rendering/OpenGL/TextureUnitManager.js +47 -43
  402. package/Rendering/OpenGL/VertexArrayObject.js +92 -131
  403. package/Rendering/OpenGL/ViewNodeFactory.js +25 -13
  404. package/Rendering/OpenGL/Volume.js +38 -34
  405. package/Rendering/OpenGL/VolumeMapper.js +437 -547
  406. package/Rendering/OpenGL.js +28 -28
  407. package/Rendering/SceneGraph/RenderPass.js +34 -31
  408. package/Rendering/SceneGraph/RenderWindowViewNode.js +68 -94
  409. package/Rendering/SceneGraph/ViewNode.js +82 -111
  410. package/Rendering/SceneGraph/ViewNodeFactory.js +31 -26
  411. package/Rendering/SceneGraph.js +4 -4
  412. package/Rendering/WebGPU/Actor.js +49 -49
  413. package/Rendering/WebGPU/Actor2D.js +45 -44
  414. package/Rendering/WebGPU/BindGroup.js +43 -50
  415. package/Rendering/WebGPU/Buffer.js +41 -50
  416. package/Rendering/WebGPU/BufferManager/Constants.js +4 -4
  417. package/Rendering/WebGPU/BufferManager.js +111 -141
  418. package/Rendering/WebGPU/Camera.js +65 -67
  419. package/Rendering/WebGPU/CellArrayMapper.js +621 -388
  420. package/Rendering/WebGPU/CubeAxesActor.js +28 -19
  421. package/Rendering/WebGPU/Device.js +78 -133
  422. package/Rendering/WebGPU/ForwardPass.js +75 -72
  423. package/Rendering/WebGPU/FullScreenQuad.js +25 -18
  424. package/Rendering/WebGPU/Glyph3DMapper.js +62 -74
  425. package/Rendering/WebGPU/HardwareSelectionPass.js +45 -38
  426. package/Rendering/WebGPU/HardwareSelector.js +200 -276
  427. package/Rendering/WebGPU/ImageMapper.js +180 -171
  428. package/Rendering/WebGPU/ImageSlice.js +45 -44
  429. package/Rendering/WebGPU/IndexBuffer.js +166 -200
  430. package/Rendering/WebGPU/OpaquePass.js +37 -36
  431. package/Rendering/WebGPU/OrderIndependentTranslucentPass.js +72 -45
  432. package/Rendering/WebGPU/Pipeline.js +37 -51
  433. package/Rendering/WebGPU/PixelSpaceCallbackMapper.js +27 -19
  434. package/Rendering/WebGPU/PolyDataMapper.js +50 -53
  435. package/Rendering/WebGPU/PolyDataMapper2D.js +39 -39
  436. package/Rendering/WebGPU/RenderEncoder.js +68 -88
  437. package/Rendering/WebGPU/RenderWindow.js +262 -376
  438. package/Rendering/WebGPU/Renderer.js +224 -208
  439. package/Rendering/WebGPU/Sampler.js +27 -21
  440. package/Rendering/WebGPU/ScalarBarActor.js +28 -19
  441. package/Rendering/WebGPU/ShaderCache.js +43 -41
  442. package/Rendering/WebGPU/ShaderDescription.js +52 -59
  443. package/Rendering/WebGPU/ShaderModule.js +26 -17
  444. package/Rendering/WebGPU/SimpleMapper.js +185 -121
  445. package/Rendering/WebGPU/SphereMapper.js +200 -130
  446. package/Rendering/WebGPU/StickMapper.js +289 -152
  447. package/Rendering/WebGPU/StorageBuffer.js +100 -115
  448. package/Rendering/WebGPU/Texture.js +79 -99
  449. package/Rendering/WebGPU/TextureManager.js +52 -54
  450. package/Rendering/WebGPU/TextureView.js +40 -43
  451. package/Rendering/WebGPU/Types.js +53 -70
  452. package/Rendering/WebGPU/UniformBuffer.js +158 -184
  453. package/Rendering/WebGPU/VertexInput.js +64 -90
  454. package/Rendering/WebGPU/ViewNodeFactory.js +25 -13
  455. package/Rendering/WebGPU/Volume.js +52 -51
  456. package/Rendering/WebGPU/VolumePass.js +218 -239
  457. package/Rendering/WebGPU/VolumePassFSQ.js +625 -306
  458. package/Rendering/WebGPU.js +1 -1
  459. package/Rendering/index.js +5 -5
  460. package/Widgets/Core/AbstractWidget/Constants.js +2 -2
  461. package/Widgets/Core/AbstractWidget.js +49 -58
  462. package/Widgets/Core/AbstractWidgetFactory.js +101 -122
  463. package/Widgets/Core/StateBuilder/boundsMixin.js +23 -28
  464. package/Widgets/Core/StateBuilder/color3Mixin.js +10 -7
  465. package/Widgets/Core/StateBuilder/colorMixin.js +10 -6
  466. package/Widgets/Core/StateBuilder/cornerMixin.js +16 -15
  467. package/Widgets/Core/StateBuilder/directionMixin.js +20 -18
  468. package/Widgets/Core/StateBuilder/manipulatorMixin.js +26 -18
  469. package/Widgets/Core/StateBuilder/nameMixin.js +10 -6
  470. package/Widgets/Core/StateBuilder/orientationMixin.js +19 -16
  471. package/Widgets/Core/StateBuilder/originMixin.js +25 -32
  472. package/Widgets/Core/StateBuilder/scale1Mixin.js +10 -6
  473. package/Widgets/Core/StateBuilder/scale3Mixin.js +10 -6
  474. package/Widgets/Core/StateBuilder/shapeMixin.js +12 -6
  475. package/Widgets/Core/StateBuilder/textMixin.js +10 -6
  476. package/Widgets/Core/StateBuilder/visibleMixin.js +10 -6
  477. package/Widgets/Core/StateBuilder.js +120 -149
  478. package/Widgets/Core/WidgetManager/Constants.js +7 -7
  479. package/Widgets/Core/WidgetManager.js +249 -421
  480. package/Widgets/Core/WidgetState.js +48 -57
  481. package/Widgets/Core.js +5 -5
  482. package/Widgets/Manipulators/AbstractManipulator.js +20 -14
  483. package/Widgets/Manipulators/CPRManipulator.js +55 -71
  484. package/Widgets/Manipulators/LineManipulator.js +31 -28
  485. package/Widgets/Manipulators/PickerManipulator.d.ts +48 -0
  486. package/Widgets/Manipulators/PickerManipulator.js +65 -0
  487. package/Widgets/Manipulators/PlaneManipulator.js +26 -23
  488. package/Widgets/Manipulators/TrackballManipulator.js +39 -35
  489. package/Widgets/Manipulators.js +4 -2
  490. package/Widgets/Representations/ArrowHandleRepresentation.js +148 -162
  491. package/Widgets/Representations/CircleContextRepresentation.js +44 -38
  492. package/Widgets/Representations/ContextRepresentation.js +17 -14
  493. package/Widgets/Representations/ConvexFaceContextRepresentation.js +50 -47
  494. package/Widgets/Representations/CroppingOutlineRepresentation.js +38 -27
  495. package/Widgets/Representations/CubeHandleRepresentation.js +21 -18
  496. package/Widgets/Representations/GlyphRepresentation.js +107 -152
  497. package/Widgets/Representations/HandleRepresentation.js +17 -14
  498. package/Widgets/Representations/ImplicitPlaneRepresentation.js +97 -91
  499. package/Widgets/Representations/LineHandleRepresentation.js +44 -41
  500. package/Widgets/Representations/OutlineContextRepresentation.js +42 -36
  501. package/Widgets/Representations/PolyLineRepresentation.js +60 -75
  502. package/Widgets/Representations/RectangleContextRepresentation.js +42 -37
  503. package/Widgets/Representations/SphereContextRepresentation.js +19 -27
  504. package/Widgets/Representations/SphereHandleRepresentation.js +31 -27
  505. package/Widgets/Representations/SplineContextRepresentation.js +46 -70
  506. package/Widgets/Representations/WidgetRepresentation/Constants.js +2 -2
  507. package/Widgets/Representations/WidgetRepresentation.js +99 -134
  508. package/Widgets/Representations.js +13 -13
  509. package/Widgets/Widgets3D/AngleWidget/behavior.js +41 -63
  510. package/Widgets/Widgets3D/AngleWidget.js +41 -39
  511. package/Widgets/Widgets3D/DistanceWidget/behavior.js +40 -61
  512. package/Widgets/Widgets3D/DistanceWidget.js +38 -36
  513. package/Widgets/Widgets3D/EllipseWidget/behavior.js +14 -19
  514. package/Widgets/Widgets3D/EllipseWidget/state.js +4 -2
  515. package/Widgets/Widgets3D/EllipseWidget.js +37 -26
  516. package/Widgets/Widgets3D/ImageCroppingWidget/behavior.js +26 -56
  517. package/Widgets/Widgets3D/ImageCroppingWidget/helpers.js +14 -17
  518. package/Widgets/Widgets3D/ImageCroppingWidget/state.js +20 -16
  519. package/Widgets/Widgets3D/ImageCroppingWidget.js +80 -98
  520. package/Widgets/Widgets3D/ImplicitPlaneWidget.js +55 -77
  521. package/Widgets/Widgets3D/InteractiveOrientationWidget/behavior.js +17 -18
  522. package/Widgets/Widgets3D/InteractiveOrientationWidget/state.js +15 -7
  523. package/Widgets/Widgets3D/InteractiveOrientationWidget.js +30 -29
  524. package/Widgets/Widgets3D/LabelWidget/behavior.js +37 -62
  525. package/Widgets/Widgets3D/LabelWidget.js +31 -25
  526. package/Widgets/Widgets3D/LineWidget/Constants.js +8 -8
  527. package/Widgets/Widgets3D/LineWidget/behavior.js +77 -114
  528. package/Widgets/Widgets3D/LineWidget/helpers.js +13 -20
  529. package/Widgets/Widgets3D/LineWidget/state.js +2 -1
  530. package/Widgets/Widgets3D/LineWidget.js +39 -35
  531. package/Widgets/Widgets3D/PaintWidget/behavior.js +24 -59
  532. package/Widgets/Widgets3D/PaintWidget.js +39 -37
  533. package/Widgets/Widgets3D/PolyLineWidget/behavior.js +44 -68
  534. package/Widgets/Widgets3D/PolyLineWidget.js +36 -31
  535. package/Widgets/Widgets3D/RectangleWidget/behavior.js +6 -11
  536. package/Widgets/Widgets3D/RectangleWidget/state.js +4 -2
  537. package/Widgets/Widgets3D/RectangleWidget.js +37 -25
  538. package/Widgets/Widgets3D/ResliceCursorWidget/Constants.js +35 -21
  539. package/Widgets/Widgets3D/ResliceCursorWidget/behavior.js +134 -210
  540. package/Widgets/Widgets3D/ResliceCursorWidget/cprBehavior.js +26 -41
  541. package/Widgets/Widgets3D/ResliceCursorWidget/helpers.js +90 -117
  542. package/Widgets/Widgets3D/ResliceCursorWidget/state.js +33 -40
  543. package/Widgets/Widgets3D/ResliceCursorWidget.js +186 -227
  544. package/Widgets/Widgets3D/SeedWidget/behavior.js +82 -0
  545. package/Widgets/Widgets3D/SeedWidget/state.js +18 -0
  546. package/Widgets/Widgets3D/SeedWidget.d.ts +44 -0
  547. package/Widgets/Widgets3D/SeedWidget.js +43 -0
  548. package/Widgets/Widgets3D/ShapeWidget/Constants.js +19 -19
  549. package/Widgets/Widgets3D/ShapeWidget/behavior.js +150 -252
  550. package/Widgets/Widgets3D/ShapeWidget.js +24 -27
  551. package/Widgets/Widgets3D/SphereWidget/behavior.js +35 -69
  552. package/Widgets/Widgets3D/SphereWidget/state.js +9 -5
  553. package/Widgets/Widgets3D/SphereWidget.js +34 -44
  554. package/Widgets/Widgets3D/SplineWidget/behavior.js +85 -120
  555. package/Widgets/Widgets3D/SplineWidget.js +43 -39
  556. package/Widgets/Widgets3D.js +15 -15
  557. package/Widgets/index.js +4 -4
  558. package/_virtual/rollup-plugin-worker-loader__module_Sources/Filters/General/PaintFilter/PaintFilter.worker.js +95 -207
  559. package/_virtual/rollup-plugin-worker-loader__module_Sources/Interaction/Widgets/PiecewiseGaussianWidget/ComputeHistogram.worker.js +0 -3
  560. package/favicon.js +5 -6
  561. package/index.d.ts +4 -2
  562. package/index.js +4 -3
  563. package/macros.js +4 -1931
  564. package/macros2.js +1684 -0
  565. package/package.json +6 -6
  566. package/vtk.js +18 -31
@@ -1,39 +1,36 @@
1
- import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
- import macro from '../../macros.js';
1
+ import { m as macro } from '../../macros2.js';
3
2
  import vtkImageSlice from '../../Rendering/Core/ImageSlice.js';
4
3
  import vtkImageMapper from '../../Rendering/Core/ImageMapper.js';
5
4
  import vtkAbstractRepresentationProxy from '../Core/AbstractRepresentationProxy.js';
6
5
 
7
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
8
-
9
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
6
+ // ----------------------------------------------------------------------------
10
7
 
11
8
  function sum(a, b) {
12
9
  return a + b;
13
- } // ----------------------------------------------------------------------------
10
+ }
14
11
 
12
+ // ----------------------------------------------------------------------------
15
13
 
16
14
  function mean() {
17
15
  for (var _len = arguments.length, array = new Array(_len), _key = 0; _key < _len; _key++) {
18
16
  array[_key] = arguments[_key];
19
17
  }
20
-
21
18
  return array.reduce(sum, 0) / array.length;
22
- } // ----------------------------------------------------------------------------
19
+ }
23
20
 
21
+ // ----------------------------------------------------------------------------
24
22
 
25
23
  function updateDomains(dataset, dataArray, model, updateProp) {
26
- var dataRange = dataArray.getRange();
27
- var spacing = dataset.getSpacing();
28
- var bounds = dataset.getBounds();
29
- var extent = dataset.getExtent();
30
- var sliceMin;
31
- var sliceMax;
32
- var stepVal;
33
- var axisIndex;
34
- var sliceMode = model.mapper.getSlicingMode();
35
- var sliceModeLabel = 'IJKXYZ'[sliceMode];
36
-
24
+ const dataRange = dataArray.getRange();
25
+ const spacing = dataset.getSpacing();
26
+ const bounds = dataset.getBounds();
27
+ const extent = dataset.getExtent();
28
+ let sliceMin;
29
+ let sliceMax;
30
+ let stepVal;
31
+ let axisIndex;
32
+ const sliceMode = model.mapper.getSlicingMode();
33
+ const sliceModeLabel = 'IJKXYZ'[sliceMode];
37
34
  switch (sliceMode) {
38
35
  case vtkImageMapper.SlicingMode.I:
39
36
  case vtkImageMapper.SlicingMode.J:
@@ -43,7 +40,6 @@ function updateDomains(dataset, dataArray, model, updateProp) {
43
40
  sliceMax = extent[axisIndex * 2 + 1];
44
41
  stepVal = 1;
45
42
  break;
46
-
47
43
  case vtkImageMapper.SlicingMode.X:
48
44
  case vtkImageMapper.SlicingMode.Y:
49
45
  case vtkImageMapper.SlicingMode.Z:
@@ -51,16 +47,14 @@ function updateDomains(dataset, dataArray, model, updateProp) {
51
47
  axisIndex = 'XYZ'.indexOf(sliceModeLabel);
52
48
  sliceMin = bounds[axisIndex * 2];
53
49
  sliceMax = bounds[axisIndex * 2 + 1];
54
-
55
- var _model$mapper$getClos = model.mapper.getClosestIJKAxis(),
56
- ijkMode = _model$mapper$getClos.ijkMode;
57
-
50
+ const {
51
+ ijkMode
52
+ } = model.mapper.getClosestIJKAxis();
58
53
  stepVal = spacing[ijkMode];
59
54
  }
60
55
  break;
61
56
  }
62
-
63
- var propToUpdate = {
57
+ const propToUpdate = {
64
58
  slice: {
65
59
  domain: {
66
60
  min: sliceMin,
@@ -91,201 +85,184 @@ function updateDomains(dataset, dataArray, model, updateProp) {
91
85
  windowWidth: propToUpdate.windowWidth.domain.max,
92
86
  windowLevel: Math.floor(mean(propToUpdate.windowLevel.domain.min, propToUpdate.windowLevel.domain.max))
93
87
  };
94
- } // ----------------------------------------------------------------------------
88
+ }
89
+
90
+ // ----------------------------------------------------------------------------
95
91
  // vtkSliceRepresentationProxy methods
96
92
  // ----------------------------------------------------------------------------
97
93
 
98
-
99
94
  function vtkSliceRepresentationProxy(publicAPI, model) {
100
95
  // Set our className
101
96
  model.classHierarchy.push('vtkSliceRepresentationProxy');
102
97
  model.mapper = vtkImageMapper.newInstance();
103
98
  model.actor = vtkImageSlice.newInstance();
104
- model.property = model.actor.getProperty(); // connect rendering pipeline
99
+ model.property = model.actor.getProperty();
105
100
 
101
+ // connect rendering pipeline
106
102
  model.actor.setMapper(model.mapper);
107
103
  model.actors.push(model.actor);
108
-
109
104
  function setInputData(inputDataset) {
110
- var state = updateDomains(inputDataset, publicAPI.getDataArray(), model, publicAPI.updateProxyProperty);
111
- publicAPI.set(state); // Init slice location
112
-
113
- var bounds = inputDataset.getBounds();
114
- var extent = inputDataset.getExtent();
105
+ const state = updateDomains(inputDataset, publicAPI.getDataArray(), model, publicAPI.updateProxyProperty);
106
+ publicAPI.set(state);
115
107
 
108
+ // Init slice location
109
+ const bounds = inputDataset.getBounds();
110
+ const extent = inputDataset.getExtent();
116
111
  switch (model.mapper.getSlicingMode()) {
117
112
  case vtkImageMapper.SlicingMode.I:
118
113
  publicAPI.setSlice(Math.floor(mean(extent[0], extent[1])));
119
114
  break;
120
-
121
115
  case vtkImageMapper.SlicingMode.J:
122
116
  publicAPI.setSlice(Math.floor(mean(extent[2], extent[3])));
123
117
  break;
124
-
125
118
  case vtkImageMapper.SlicingMode.K:
126
119
  publicAPI.setSlice(Math.floor(mean(extent[4], extent[5])));
127
120
  break;
128
-
129
121
  case vtkImageMapper.SlicingMode.X:
130
122
  publicAPI.setSlice(mean(bounds[0], bounds[1]));
131
123
  break;
132
-
133
124
  case vtkImageMapper.SlicingMode.Y:
134
125
  publicAPI.setSlice(mean(bounds[2], bounds[3]));
135
126
  break;
136
-
137
127
  case vtkImageMapper.SlicingMode.Z:
138
128
  publicAPI.setSlice(mean(bounds[4], bounds[5]));
139
129
  break;
140
130
  }
141
- } // Keep things updated
142
-
131
+ }
143
132
 
133
+ // Keep things updated
144
134
  model.sourceDependencies.push(model.mapper);
145
135
  model.sourceDependencies.push({
146
- setInputData: setInputData
147
- }); // keeps the slicing mode and domain info updated
136
+ setInputData
137
+ });
148
138
 
139
+ // keeps the slicing mode and domain info updated
149
140
  function updateSlicingMode(mode) {
150
- model.mapper.setSlicingMode(vtkImageMapper.SlicingMode[mode]); // Update to previously set position
151
-
152
- var modelKey = "".concat(mode.toLowerCase(), "Slice");
141
+ model.mapper.setSlicingMode(vtkImageMapper.SlicingMode[mode]);
153
142
 
143
+ // Update to previously set position
144
+ const modelKey = `${mode.toLowerCase()}Slice`;
154
145
  if (modelKey in model && model[modelKey] !== undefined) {
155
146
  model.mapper.setSlice(model[modelKey]);
156
147
  }
157
-
158
148
  if (model.input) {
159
149
  // Update domains for UI...
160
- var state = updateDomains(publicAPI.getInputDataSet(), publicAPI.getDataArray(), model, publicAPI.updateProxyProperty);
150
+ const state = updateDomains(publicAPI.getInputDataSet(), publicAPI.getDataArray(), model, publicAPI.updateProxyProperty);
161
151
  publicAPI.set(state);
162
152
  }
163
-
164
153
  publicAPI.modified();
165
- } // API ----------------------------------------------------------------------
154
+ }
166
155
 
156
+ // API ----------------------------------------------------------------------
167
157
 
168
- publicAPI.setSlicingMode = function (mode) {
158
+ publicAPI.setSlicingMode = mode => {
169
159
  if (!mode) {
170
160
  return false;
171
161
  }
172
-
173
162
  if (model.slicingMode !== mode) {
174
163
  // Update Mode
175
164
  model.slicingMode = mode;
176
165
  updateSlicingMode(mode);
177
166
  return true;
178
167
  }
179
-
180
168
  return false;
181
169
  };
182
-
183
- publicAPI.getSliceIndex = function () {
170
+ publicAPI.getSliceIndex = () => {
184
171
  if ('XYZ'.indexOf(model.slicingMode) !== -1) {
185
172
  return model.mapper.getSliceAtPosition(model.mapper.getSlice());
186
173
  }
187
-
188
174
  return model.mapper.getSlice();
189
175
  };
190
-
191
- publicAPI.getAnnotations = function () {
192
- var dynamicAddOn = {};
193
- var sliceIndex = publicAPI.getSliceIndex();
194
- var sliceBounds = model.mapper.getBoundsForSlice();
195
- var sliceNormal = model.mapper.getSlicingModeNormal();
196
-
197
- var _model$mapper$getClos2 = model.mapper.getClosestIJKAxis(),
198
- ijkMode = _model$mapper$getClos2.ijkMode;
199
-
200
- var sliceOrigin = [(sliceBounds[0] + sliceBounds[1]) * 0.5, (sliceBounds[2] + sliceBounds[3]) * 0.5, (sliceBounds[4] + sliceBounds[5]) * 0.5];
201
- var slicePosition = 0;
202
-
176
+ publicAPI.getAnnotations = () => {
177
+ const dynamicAddOn = {};
178
+ const sliceIndex = publicAPI.getSliceIndex();
179
+ const sliceBounds = model.mapper.getBoundsForSlice();
180
+ const sliceNormal = model.mapper.getSlicingModeNormal();
181
+ const {
182
+ ijkMode
183
+ } = model.mapper.getClosestIJKAxis();
184
+ const sliceOrigin = [(sliceBounds[0] + sliceBounds[1]) * 0.5, (sliceBounds[2] + sliceBounds[3]) * 0.5, (sliceBounds[4] + sliceBounds[5]) * 0.5];
185
+ let slicePosition = 0;
203
186
  if (sliceBounds[1] - sliceBounds[0] < Number.EPSILON) {
204
187
  slicePosition = sliceBounds[0];
205
188
  }
206
-
207
189
  if (sliceBounds[3] - sliceBounds[2] < Number.EPSILON) {
208
190
  slicePosition = sliceBounds[2];
209
191
  }
210
-
211
192
  if (sliceBounds[5] - sliceBounds[4] < Number.EPSILON) {
212
193
  slicePosition = sliceBounds[4];
213
194
  }
214
-
215
- var imageData = model.mapper.getInputData();
216
-
195
+ const imageData = model.mapper.getInputData();
217
196
  if (imageData) {
218
197
  dynamicAddOn.sliceSpacing = imageData.getSpacing()[ijkMode];
219
198
  dynamicAddOn.dimensions = imageData.getDimensions();
220
199
  dynamicAddOn.sliceCount = imageData.getDimensions()[ijkMode];
221
- var ijkOrientation = [];
222
-
223
- for (var i = 0; i < 3; i++) {
224
- var extent = [0, 0, 0, 0, 0, 0];
200
+ const ijkOrientation = [];
201
+ for (let i = 0; i < 3; i++) {
202
+ const extent = [0, 0, 0, 0, 0, 0];
225
203
  extent[i * 2 + 1] = 1;
226
- var tmpBounds = imageData.extentToBounds(extent);
227
-
204
+ const tmpBounds = imageData.extentToBounds(extent);
228
205
  if (tmpBounds[1] - tmpBounds[0] > Number.EPSILON) {
229
206
  ijkOrientation[0] = 'IJK'[i];
230
207
  }
231
-
232
208
  if (tmpBounds[3] - tmpBounds[2] > Number.EPSILON) {
233
209
  ijkOrientation[1] = 'IJK'[i];
234
210
  }
235
-
236
211
  if (tmpBounds[5] - tmpBounds[4] > Number.EPSILON) {
237
212
  ijkOrientation[2] = 'IJK'[i];
238
213
  }
239
214
  }
240
-
241
215
  dynamicAddOn.ijkOrientation = ijkOrientation.join('');
242
216
  }
243
-
244
- return _objectSpread({
245
- ijkMode: ijkMode,
246
- sliceBounds: sliceBounds,
247
- sliceIndex: sliceIndex,
248
- sliceNormal: sliceNormal,
249
- sliceOrigin: sliceOrigin,
250
- slicePosition: slicePosition
251
- }, dynamicAddOn);
217
+ return {
218
+ ijkMode,
219
+ sliceBounds,
220
+ sliceIndex,
221
+ sliceNormal,
222
+ sliceOrigin,
223
+ slicePosition,
224
+ ...dynamicAddOn
225
+ };
252
226
  };
253
-
254
- var parentSetColorBy = publicAPI.setColorBy;
255
-
227
+ const parentSetColorBy = publicAPI.setColorBy;
256
228
  publicAPI.setColorBy = function (arrayName, arrayLocation) {
257
- var componentIndex = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : -1;
258
-
229
+ let componentIndex = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : -1;
259
230
  if (arrayName === null) {
260
231
  model.property.setRGBTransferFunction(null);
261
232
  model.property.setPiecewiseFunction(null);
262
233
  } else {
263
234
  parentSetColorBy(arrayName, arrayLocation, componentIndex);
264
- var lutProxy = publicAPI.getLookupTableProxy(arrayName);
265
- var pwfProxy = publicAPI.getPiecewiseFunctionProxy(arrayName);
235
+ const lutProxy = publicAPI.getLookupTableProxy(arrayName);
236
+ const pwfProxy = publicAPI.getPiecewiseFunctionProxy(arrayName);
266
237
  model.property.setRGBTransferFunction(lutProxy.getLookupTable());
267
238
  model.property.setPiecewiseFunction(pwfProxy.getPiecewiseFunction());
268
239
  }
269
- }; // Initialize slicing mode
270
-
240
+ };
271
241
 
242
+ // Initialize slicing mode
272
243
  updateSlicingMode(model.slicingMode || 'X');
273
- } // ----------------------------------------------------------------------------
244
+ }
245
+
246
+ // ----------------------------------------------------------------------------
274
247
  // Object factory
275
248
  // ----------------------------------------------------------------------------
276
249
 
250
+ const DEFAULT_VALUES = {};
277
251
 
278
- var DEFAULT_VALUES = {}; // ----------------------------------------------------------------------------
252
+ // ----------------------------------------------------------------------------
279
253
 
280
254
  function extend(publicAPI, model) {
281
- var initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
282
- Object.assign(model, DEFAULT_VALUES, initialValues); // Object methods
255
+ let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
256
+ Object.assign(model, DEFAULT_VALUES, initialValues);
283
257
 
258
+ // Object methods
284
259
  vtkAbstractRepresentationProxy.extend(publicAPI, model, initialValues);
285
- macro.get(publicAPI, model, ['slicingMode']); // Object specific methods
260
+ macro.get(publicAPI, model, ['slicingMode']);
286
261
 
287
- vtkSliceRepresentationProxy(publicAPI, model); // Proxyfy
262
+ // Object specific methods
263
+ vtkSliceRepresentationProxy(publicAPI, model);
288
264
 
265
+ // Proxyfy
289
266
  macro.proxyPropertyMapping(publicAPI, model, {
290
267
  visibility: {
291
268
  modelKey: 'actor',
@@ -308,13 +285,17 @@ function extend(publicAPI, model) {
308
285
  property: 'slice'
309
286
  }
310
287
  });
311
- } // ----------------------------------------------------------------------------
288
+ }
312
289
 
313
- var newInstance = macro.newInstance(extend, 'vtkSliceRepresentationProxy'); // ----------------------------------------------------------------------------
290
+ // ----------------------------------------------------------------------------
291
+
292
+ const newInstance = macro.newInstance(extend, 'vtkSliceRepresentationProxy');
293
+
294
+ // ----------------------------------------------------------------------------
314
295
 
315
296
  var vtkSliceRepresentationProxy$1 = {
316
- newInstance: newInstance,
317
- extend: extend
297
+ newInstance,
298
+ extend
318
299
  };
319
300
 
320
301
  export { vtkSliceRepresentationProxy$1 as default, extend, newInstance };
@@ -1,4 +1,4 @@
1
- import macro from '../../macros.js';
1
+ import { m as macro } from '../../macros2.js';
2
2
  import vtkActor from '../../Rendering/Core/Actor.js';
3
3
  import vtkCutter from '../../Filters/Core/Cutter.js';
4
4
  import vtkImageMapper from '../../Rendering/Core/ImageMapper.js';
@@ -6,110 +6,110 @@ import vtkMapper from '../../Rendering/Core/Mapper.js';
6
6
  import vtkPlane from '../../Common/DataModel/Plane.js';
7
7
  import vtkAbstractRepresentationProxy from '../Core/AbstractRepresentationProxy.js';
8
8
 
9
+ // ----------------------------------------------------------------------------
9
10
  // vtkSlicedGeometryRepresentationProxy methods
10
11
  // ----------------------------------------------------------------------------
11
12
 
12
13
  function vtkSlicedGeometryRepresentationProxy(publicAPI, model) {
13
14
  // Set our className
14
- model.classHierarchy.push('vtkSlicedGeometryRepresentationProxy'); // Internals
15
+ model.classHierarchy.push('vtkSlicedGeometryRepresentationProxy');
15
16
 
17
+ // Internals
16
18
  model.plane = vtkPlane.newInstance();
17
19
  model.cutter = vtkCutter.newInstance();
18
20
  model.cutter.setCutFunction(model.plane);
19
21
  model.mapper = vtkMapper.newInstance();
20
22
  model.actor = vtkActor.newInstance();
21
23
  model.property = model.actor.getProperty();
22
- model.property.setLighting(false); // connect rendering pipeline
24
+ model.property.setLighting(false);
23
25
 
26
+ // connect rendering pipeline
24
27
  model.mapper.setInputConnection(model.cutter.getOutputPort());
25
28
  model.actor.setMapper(model.mapper);
26
- model.actors.push(model.actor); // Keep things updated
29
+ model.actors.push(model.actor);
27
30
 
28
- model.sourceDependencies.push(model.cutter); // API ----------------------------------------------------------------------
31
+ // Keep things updated
32
+ model.sourceDependencies.push(model.cutter);
29
33
 
34
+ // API ----------------------------------------------------------------------
30
35
  publicAPI.setSlice = function () {
31
- var slice = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
32
- var stateModified = model.slice !== slice;
36
+ let slice = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
37
+ const stateModified = model.slice !== slice;
33
38
  model.slice = slice;
34
- var n = model.plane.getNormal();
35
- var planeModified = model.plane.setOrigin(n[0] * slice, n[1] * slice, n[2] * slice);
36
-
39
+ const n = model.plane.getNormal();
40
+ const planeModified = model.plane.setOrigin(n[0] * slice, n[1] * slice, n[2] * slice);
37
41
  if (planeModified || stateModified) {
38
42
  publicAPI.modified();
39
43
  return true;
40
44
  }
41
-
42
45
  return false;
43
46
  };
44
-
45
47
  publicAPI.setOffset = function () {
46
- var offset = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
47
- var stateModified = model.offset !== offset;
48
+ let offset = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
49
+ const stateModified = model.offset !== offset;
48
50
  model.offset = offset;
49
- var normal = model.plane.getNormal();
50
- var actorModified = model.actor.setPosition(offset * normal[0], offset * normal[1], offset * normal[2]);
51
-
51
+ const normal = model.plane.getNormal();
52
+ const actorModified = model.actor.setPosition(offset * normal[0], offset * normal[1], offset * normal[2]);
52
53
  if (actorModified || stateModified) {
53
54
  publicAPI.modified();
54
55
  return true;
55
56
  }
56
-
57
57
  return false;
58
58
  };
59
-
60
- publicAPI.setSlicingMode = function (mode) {
59
+ publicAPI.setSlicingMode = mode => {
61
60
  if (model.slicingMode === mode || !mode) {
62
61
  console.log('skip setSlicingMode', mode);
63
62
  return;
64
63
  }
65
-
66
64
  model.slicingMode = mode;
67
-
68
65
  switch (vtkImageMapper.SlicingMode[mode]) {
69
66
  case vtkImageMapper.SlicingMode.X:
70
67
  model.plane.setNormal(1, 0, 0);
71
68
  break;
72
-
73
69
  case vtkImageMapper.SlicingMode.Y:
74
70
  model.plane.setNormal(0, 1, 0);
75
71
  break;
76
-
77
72
  case vtkImageMapper.SlicingMode.Z:
78
73
  model.plane.setNormal(0, 0, 1);
79
74
  break;
80
-
81
75
  default:
82
76
  return;
83
- } // Reslice properly along that new axis
84
-
85
-
86
- var alreadyModified = publicAPI.setSlice(model.slice);
87
- alreadyModified = publicAPI.setOffset(model.offset) || alreadyModified; // Update pipeline
77
+ }
78
+ // Reslice properly along that new axis
79
+ let alreadyModified = publicAPI.setSlice(model.slice);
80
+ alreadyModified = publicAPI.setOffset(model.offset) || alreadyModified;
88
81
 
82
+ // Update pipeline
89
83
  if (!alreadyModified) {
90
84
  publicAPI.modified();
91
85
  }
92
86
  };
93
- } // ----------------------------------------------------------------------------
87
+ }
88
+
89
+ // ----------------------------------------------------------------------------
94
90
  // Object factory
95
91
  // ----------------------------------------------------------------------------
96
92
 
97
-
98
- var DEFAULT_VALUES = {
93
+ const DEFAULT_VALUES = {
99
94
  slicingMode: vtkImageMapper.SlicingMode.NONE,
100
95
  slice: 0,
101
96
  offset: 0
102
- }; // ----------------------------------------------------------------------------
97
+ };
98
+
99
+ // ----------------------------------------------------------------------------
103
100
 
104
101
  function extend(publicAPI, model) {
105
- var initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
106
- Object.assign(model, DEFAULT_VALUES, initialValues); // Object methods
102
+ let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
103
+ Object.assign(model, DEFAULT_VALUES, initialValues);
107
104
 
105
+ // Object methods
108
106
  vtkAbstractRepresentationProxy.extend(publicAPI, model, initialValues);
109
- macro.get(publicAPI, model, ['slicingMode', 'slice', 'offset']); // Object specific methods
107
+ macro.get(publicAPI, model, ['slicingMode', 'slice', 'offset']);
110
108
 
111
- vtkSlicedGeometryRepresentationProxy(publicAPI, model); // Map proxy properties
109
+ // Object specific methods
110
+ vtkSlicedGeometryRepresentationProxy(publicAPI, model);
112
111
 
112
+ // Map proxy properties
113
113
  macro.proxyPropertyState(publicAPI, model);
114
114
  macro.proxyPropertyMapping(publicAPI, model, {
115
115
  opacity: {
@@ -133,13 +133,17 @@ function extend(publicAPI, model) {
133
133
  property: 'useBounds'
134
134
  }
135
135
  });
136
- } // ----------------------------------------------------------------------------
136
+ }
137
+
138
+ // ----------------------------------------------------------------------------
139
+
140
+ const newInstance = macro.newInstance(extend, 'vtkSlicedGeometryRepresentationProxy');
137
141
 
138
- var newInstance = macro.newInstance(extend, 'vtkSlicedGeometryRepresentationProxy'); // ----------------------------------------------------------------------------
142
+ // ----------------------------------------------------------------------------
139
143
 
140
144
  var vtkSlicedGeometryRepresentationProxy$1 = {
141
- newInstance: newInstance,
142
- extend: extend
145
+ newInstance,
146
+ extend
143
147
  };
144
148
 
145
149
  export { vtkSlicedGeometryRepresentationProxy$1 as default, extend, newInstance };