@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,6 +1,4 @@
1
- import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
2
- import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
3
- import macro from '../../macros.js';
1
+ import { m as macro } from '../../macros2.js';
4
2
  import { b as roundVector, c as clampVector } from '../Core/Math/index.js';
5
3
  import vtkBoundingBox from './BoundingBox.js';
6
4
  import vtkDataSet from './DataSet.js';
@@ -8,55 +6,47 @@ import vtkStructuredData from './StructuredData.js';
8
6
  import { StructuredType } from './StructuredData/Constants.js';
9
7
  import { mat3, mat4, vec3 } from 'gl-matrix';
10
8
 
11
- var vtkErrorMacro = macro.vtkErrorMacro; // ----------------------------------------------------------------------------
9
+ const {
10
+ vtkErrorMacro
11
+ } = macro;
12
+
13
+ // ----------------------------------------------------------------------------
12
14
  // vtkImageData methods
13
15
  // ----------------------------------------------------------------------------
14
16
 
15
17
  function vtkImageData(publicAPI, model) {
16
18
  // Set our className
17
19
  model.classHierarchy.push('vtkImageData');
18
-
19
20
  publicAPI.setExtent = function () {
20
21
  if (model.deleted) {
21
22
  vtkErrorMacro('instance deleted - cannot call any method');
22
23
  return false;
23
24
  }
24
-
25
25
  for (var _len = arguments.length, inExtent = new Array(_len), _key = 0; _key < _len; _key++) {
26
26
  inExtent[_key] = arguments[_key];
27
27
  }
28
-
29
- var extentArray = inExtent.length === 1 ? inExtent[0] : inExtent;
30
-
28
+ const extentArray = inExtent.length === 1 ? inExtent[0] : inExtent;
31
29
  if (extentArray.length !== 6) {
32
30
  return false;
33
31
  }
34
-
35
- var changeDetected = model.extent.some(function (item, index) {
36
- return item !== extentArray[index];
37
- });
38
-
32
+ const changeDetected = model.extent.some((item, index) => item !== extentArray[index]);
39
33
  if (changeDetected) {
40
34
  model.extent = extentArray.slice();
41
35
  model.dataDescription = vtkStructuredData.getDataDescriptionFromExtent(model.extent);
42
36
  publicAPI.modified();
43
37
  }
44
-
45
38
  return changeDetected;
46
39
  };
47
-
48
40
  publicAPI.setDimensions = function () {
49
- var i;
50
- var j;
51
- var k;
52
-
41
+ let i;
42
+ let j;
43
+ let k;
53
44
  if (model.deleted) {
54
45
  vtkErrorMacro('instance deleted - cannot call any method');
55
46
  return;
56
47
  }
57
-
58
48
  if (arguments.length === 1) {
59
- var array = arguments.length <= 0 ? undefined : arguments[0];
49
+ const array = arguments.length <= 0 ? undefined : arguments[0];
60
50
  i = array[0];
61
51
  j = array[1];
62
52
  k = array[2];
@@ -68,95 +58,74 @@ function vtkImageData(publicAPI, model) {
68
58
  vtkErrorMacro('Bad dimension specification');
69
59
  return;
70
60
  }
71
-
72
61
  publicAPI.setExtent(0, i - 1, 0, j - 1, 0, k - 1);
73
62
  };
74
-
75
- publicAPI.getDimensions = function () {
76
- return [model.extent[1] - model.extent[0] + 1, model.extent[3] - model.extent[2] + 1, model.extent[5] - model.extent[4] + 1];
77
- };
78
-
79
- publicAPI.getNumberOfCells = function () {
80
- var dims = publicAPI.getDimensions();
81
- var nCells = 1;
82
-
83
- for (var i = 0; i < 3; i++) {
63
+ publicAPI.getDimensions = () => [model.extent[1] - model.extent[0] + 1, model.extent[3] - model.extent[2] + 1, model.extent[5] - model.extent[4] + 1];
64
+ publicAPI.getNumberOfCells = () => {
65
+ const dims = publicAPI.getDimensions();
66
+ let nCells = 1;
67
+ for (let i = 0; i < 3; i++) {
84
68
  if (dims[i] === 0) {
85
69
  return 0;
86
70
  }
87
-
88
71
  if (dims[i] > 1) {
89
72
  nCells *= dims[i] - 1;
90
73
  }
91
74
  }
92
-
93
75
  return nCells;
94
76
  };
95
-
96
- publicAPI.getNumberOfPoints = function () {
97
- var dims = publicAPI.getDimensions();
77
+ publicAPI.getNumberOfPoints = () => {
78
+ const dims = publicAPI.getDimensions();
98
79
  return dims[0] * dims[1] * dims[2];
99
80
  };
100
-
101
- publicAPI.getPoint = function (index) {
102
- var dims = publicAPI.getDimensions();
103
-
81
+ publicAPI.getPoint = index => {
82
+ const dims = publicAPI.getDimensions();
104
83
  if (dims[0] === 0 || dims[1] === 0 || dims[2] === 0) {
105
84
  vtkErrorMacro('Requesting a point from an empty image.');
106
85
  return null;
107
86
  }
108
-
109
- var ijk = new Float64Array(3);
110
-
87
+ const ijk = new Float64Array(3);
111
88
  switch (model.dataDescription) {
112
89
  case StructuredType.EMPTY:
113
90
  return null;
114
-
115
91
  case StructuredType.SINGLE_POINT:
116
92
  break;
117
-
118
93
  case StructuredType.X_LINE:
119
94
  ijk[0] = index;
120
95
  break;
121
-
122
96
  case StructuredType.Y_LINE:
123
97
  ijk[1] = index;
124
98
  break;
125
-
126
99
  case StructuredType.Z_LINE:
127
100
  ijk[2] = index;
128
101
  break;
129
-
130
102
  case StructuredType.XY_PLANE:
131
103
  ijk[0] = index % dims[0];
132
104
  ijk[1] = index / dims[0];
133
105
  break;
134
-
135
106
  case StructuredType.YZ_PLANE:
136
107
  ijk[1] = index % dims[1];
137
108
  ijk[2] = index / dims[1];
138
109
  break;
139
-
140
110
  case StructuredType.XZ_PLANE:
141
111
  ijk[0] = index % dims[0];
142
112
  ijk[2] = index / dims[0];
143
113
  break;
144
-
145
114
  case StructuredType.XYZ_GRID:
146
115
  ijk[0] = index % dims[0];
147
116
  ijk[1] = index / dims[0] % dims[1];
148
117
  ijk[2] = index / (dims[0] * dims[1]);
149
118
  break;
150
-
151
119
  default:
152
120
  vtkErrorMacro('Invalid dataDescription');
153
121
  break;
154
122
  }
155
-
156
- var coords = [0, 0, 0];
123
+ const coords = [0, 0, 0];
157
124
  publicAPI.indexToWorld(ijk, coords);
158
125
  return coords;
159
- }; // vtkCell *GetCell(vtkIdType cellId) VTK_OVERRIDE;
126
+ };
127
+
128
+ // vtkCell *GetCell(vtkIdType cellId) VTK_OVERRIDE;
160
129
  // void GetCell(vtkIdType cellId, vtkGenericCell *cell) VTK_OVERRIDE;
161
130
  // void GetCellBounds(vtkIdType cellId, double bounds[6]) VTK_OVERRIDE;
162
131
  // virtual vtkIdType FindPoint(double x, double y, double z)
@@ -183,21 +152,12 @@ function vtkImageData(publicAPI, model) {
183
152
  // void ComputeBounds() VTK_OVERRIDE;
184
153
  // int GetMaxCellSize() VTK_OVERRIDE {return 8;}; //voxel is the largest
185
154
 
155
+ publicAPI.getBounds = () => publicAPI.extentToBounds(publicAPI.getSpatialExtent());
156
+ publicAPI.extentToBounds = ex => vtkBoundingBox.transformBounds(ex, model.indexToWorld);
157
+ publicAPI.getSpatialExtent = () => vtkBoundingBox.inflate([...model.extent], 0.5);
186
158
 
187
- publicAPI.getBounds = function () {
188
- return publicAPI.extentToBounds(publicAPI.getSpatialExtent());
189
- };
190
-
191
- publicAPI.extentToBounds = function (ex) {
192
- return vtkBoundingBox.transformBounds(ex, model.indexToWorld);
193
- };
194
-
195
- publicAPI.getSpatialExtent = function () {
196
- return vtkBoundingBox.inflate(_toConsumableArray(model.extent), 0.5);
197
- }; // Internal, shouldn't need to call this manually.
198
-
199
-
200
- publicAPI.computeTransforms = function () {
159
+ // Internal, shouldn't need to call this manually.
160
+ publicAPI.computeTransforms = () => {
201
161
  mat4.fromTranslation(model.indexToWorld, model.origin);
202
162
  model.indexToWorld[0] = model.direction[0];
203
163
  model.indexToWorld[1] = model.direction[1];
@@ -211,147 +171,128 @@ function vtkImageData(publicAPI, model) {
211
171
  mat4.scale(model.indexToWorld, model.indexToWorld, model.spacing);
212
172
  mat4.invert(model.worldToIndex, model.indexToWorld);
213
173
  };
214
-
215
174
  publicAPI.indexToWorld = function (ain) {
216
- var aout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
175
+ let aout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
217
176
  vec3.transformMat4(aout, ain, model.indexToWorld);
218
177
  return aout;
219
178
  };
220
-
221
179
  publicAPI.indexToWorldVec3 = publicAPI.indexToWorld;
222
-
223
180
  publicAPI.worldToIndex = function (ain) {
224
- var aout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
181
+ let aout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
225
182
  vec3.transformMat4(aout, ain, model.worldToIndex);
226
183
  return aout;
227
184
  };
228
-
229
185
  publicAPI.worldToIndexVec3 = publicAPI.worldToIndex;
230
-
231
186
  publicAPI.indexToWorldBounds = function (bin) {
232
- var bout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
187
+ let bout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
233
188
  return vtkBoundingBox.transformBounds(bin, model.indexToWorld, bout);
234
189
  };
235
-
236
190
  publicAPI.worldToIndexBounds = function (bin) {
237
- var bout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
191
+ let bout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
238
192
  return vtkBoundingBox.transformBounds(bin, model.worldToIndex, bout);
239
- }; // Make sure the transform is correct
240
-
193
+ };
241
194
 
195
+ // Make sure the transform is correct
242
196
  publicAPI.onModified(publicAPI.computeTransforms);
243
197
  publicAPI.computeTransforms();
244
-
245
- publicAPI.getCenter = function () {
246
- return vtkBoundingBox.getCenter(publicAPI.getBounds());
247
- };
248
-
198
+ publicAPI.getCenter = () => vtkBoundingBox.getCenter(publicAPI.getBounds());
249
199
  publicAPI.computeHistogram = function (worldBounds) {
250
- var voxelFunc = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
251
- var bounds = [0, 0, 0, 0, 0, 0];
200
+ let voxelFunc = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
201
+ const bounds = [0, 0, 0, 0, 0, 0];
252
202
  publicAPI.worldToIndexBounds(worldBounds, bounds);
253
- var point1 = [0, 0, 0];
254
- var point2 = [0, 0, 0];
203
+ const point1 = [0, 0, 0];
204
+ const point2 = [0, 0, 0];
255
205
  vtkBoundingBox.computeCornerPoints(bounds, point1, point2);
256
206
  roundVector(point1, point1);
257
207
  roundVector(point2, point2);
258
- var dimensions = publicAPI.getDimensions();
208
+ const dimensions = publicAPI.getDimensions();
259
209
  clampVector(point1, [0, 0, 0], [dimensions[0] - 1, dimensions[1] - 1, dimensions[2] - 1], point1);
260
210
  clampVector(point2, [0, 0, 0], [dimensions[0] - 1, dimensions[1] - 1, dimensions[2] - 1], point2);
261
- var yStride = dimensions[0];
262
- var zStride = dimensions[0] * dimensions[1];
263
- var pixels = publicAPI.getPointData().getScalars().getData();
264
- var maximum = -Infinity;
265
- var minimum = Infinity;
266
- var sumOfSquares = 0;
267
- var isum = 0;
268
- var inum = 0;
269
-
270
- for (var z = point1[2]; z <= point2[2]; z++) {
271
- for (var y = point1[1]; y <= point2[1]; y++) {
272
- var index = point1[0] + y * yStride + z * zStride;
273
-
274
- for (var x = point1[0]; x <= point2[0]; x++) {
211
+ const yStride = dimensions[0];
212
+ const zStride = dimensions[0] * dimensions[1];
213
+ const pixels = publicAPI.getPointData().getScalars().getData();
214
+ let maximum = -Infinity;
215
+ let minimum = Infinity;
216
+ let sumOfSquares = 0;
217
+ let isum = 0;
218
+ let inum = 0;
219
+ for (let z = point1[2]; z <= point2[2]; z++) {
220
+ for (let y = point1[1]; y <= point2[1]; y++) {
221
+ let index = point1[0] + y * yStride + z * zStride;
222
+ for (let x = point1[0]; x <= point2[0]; x++) {
275
223
  if (!voxelFunc || voxelFunc([x, y, z], bounds)) {
276
- var pixel = pixels[index];
224
+ const pixel = pixels[index];
277
225
  if (pixel > maximum) maximum = pixel;
278
226
  if (pixel < minimum) minimum = pixel;
279
227
  sumOfSquares += pixel * pixel;
280
228
  isum += pixel;
281
229
  inum += 1;
282
230
  }
283
-
284
231
  ++index;
285
232
  }
286
233
  }
287
234
  }
288
-
289
- var average = inum > 0 ? isum / inum : 0;
290
- var variance = inum ? Math.abs(sumOfSquares / inum - average * average) : 0;
291
- var sigma = Math.sqrt(variance);
235
+ const average = inum > 0 ? isum / inum : 0;
236
+ const variance = inum ? Math.abs(sumOfSquares / inum - average * average) : 0;
237
+ const sigma = Math.sqrt(variance);
292
238
  return {
293
- minimum: minimum,
294
- maximum: maximum,
295
- average: average,
296
- variance: variance,
297
- sigma: sigma,
239
+ minimum,
240
+ maximum,
241
+ average,
242
+ variance,
243
+ sigma,
298
244
  count: inum
299
245
  };
300
- }; // TODO: use the unimplemented `vtkDataSetAttributes` for scalar length, that is currently also a TODO (GetNumberOfComponents).
301
- // Scalar data could be tuples for color information?
302
-
246
+ };
303
247
 
248
+ // TODO: use the unimplemented `vtkDataSetAttributes` for scalar length, that is currently also a TODO (GetNumberOfComponents).
249
+ // Scalar data could be tuples for color information?
304
250
  publicAPI.computeIncrements = function (extent) {
305
- var numberOfComponents = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
306
- var increments = [];
307
- var incr = numberOfComponents; // Calculate array increment offsets
308
- // similar to c++ vtkImageData::ComputeIncrements
251
+ let numberOfComponents = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
252
+ const increments = [];
253
+ let incr = numberOfComponents;
309
254
 
310
- for (var idx = 0; idx < 3; ++idx) {
255
+ // Calculate array increment offsets
256
+ // similar to c++ vtkImageData::ComputeIncrements
257
+ for (let idx = 0; idx < 3; ++idx) {
311
258
  increments[idx] = incr;
312
259
  incr *= extent[idx * 2 + 1] - extent[idx * 2] + 1;
313
260
  }
314
-
315
261
  return increments;
316
262
  };
263
+
317
264
  /**
318
265
  * @param {Number[]} index the localized `[i,j,k]` pixel array position. Float values will be rounded.
319
266
  * @return {Number} the corresponding flattened index in the scalar array
320
267
  */
321
-
322
-
323
- publicAPI.computeOffsetIndex = function (_ref) {
324
- var _ref2 = _slicedToArray(_ref, 3),
325
- i = _ref2[0],
326
- j = _ref2[1],
327
- k = _ref2[2];
328
-
329
- var extent = publicAPI.getExtent();
330
- var numberOfComponents = publicAPI.getPointData().getScalars().getNumberOfComponents();
331
- var increments = publicAPI.computeIncrements(extent, numberOfComponents); // Use the array increments to find the pixel index
268
+ publicAPI.computeOffsetIndex = _ref => {
269
+ let [i, j, k] = _ref;
270
+ const extent = publicAPI.getExtent();
271
+ const numberOfComponents = publicAPI.getPointData().getScalars().getNumberOfComponents();
272
+ const increments = publicAPI.computeIncrements(extent, numberOfComponents);
273
+ // Use the array increments to find the pixel index
332
274
  // similar to c++ vtkImageData::GetArrayPointer
333
275
  // Math.floor to catch "practically 0" e^-15 scenarios.
334
-
335
276
  return Math.floor((Math.round(i) - extent[0]) * increments[0] + (Math.round(j) - extent[2]) * increments[1] + (Math.round(k) - extent[4]) * increments[2]);
336
277
  };
278
+
337
279
  /**
338
280
  * @param {Number[]} xyz the [x,y,z] Array in world coordinates
339
281
  * @return {Number|NaN} the corresponding pixel's index in the scalar array
340
282
  */
283
+ publicAPI.getOffsetIndexFromWorld = xyz => {
284
+ const extent = publicAPI.getExtent();
285
+ const index = publicAPI.worldToIndex(xyz);
341
286
 
342
-
343
- publicAPI.getOffsetIndexFromWorld = function (xyz) {
344
- var extent = publicAPI.getExtent();
345
- var index = publicAPI.worldToIndex(xyz); // Confirm indexed i,j,k coords are within the bounds of the volume
346
-
347
- for (var idx = 0; idx < 3; ++idx) {
287
+ // Confirm indexed i,j,k coords are within the bounds of the volume
288
+ for (let idx = 0; idx < 3; ++idx) {
348
289
  if (index[idx] < extent[idx * 2] || index[idx] > extent[idx * 2 + 1]) {
349
- vtkErrorMacro("GetScalarPointer: Pixel ".concat(index, " is not in memory. Current extent = ").concat(extent));
290
+ vtkErrorMacro(`GetScalarPointer: Pixel ${index} is not in memory. Current extent = ${extent}`);
350
291
  return NaN;
351
292
  }
352
- } // Assumed the index here is within 0 <-> scalarData.length, but doesn't hurt to check upstream
353
-
293
+ }
354
294
 
295
+ // Assumed the index here is within 0 <-> scalarData.length, but doesn't hurt to check upstream
355
296
  return publicAPI.computeOffsetIndex(index);
356
297
  };
357
298
  /**
@@ -359,32 +300,27 @@ function vtkImageData(publicAPI, model) {
359
300
  * @param {Number?} comp the scalar component index for multi-component scalars
360
301
  * @return {Number|NaN} the corresponding pixel's scalar value
361
302
  */
362
-
363
-
364
303
  publicAPI.getScalarValueFromWorld = function (xyz) {
365
- var comp = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
366
- var numberOfComponents = publicAPI.getPointData().getScalars().getNumberOfComponents();
367
-
304
+ let comp = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
305
+ const numberOfComponents = publicAPI.getPointData().getScalars().getNumberOfComponents();
368
306
  if (comp < 0 || comp >= numberOfComponents) {
369
- vtkErrorMacro("GetScalarPointer: Scalar Component ".concat(comp, " is not within bounds. Current Scalar numberOfComponents: ").concat(numberOfComponents));
307
+ vtkErrorMacro(`GetScalarPointer: Scalar Component ${comp} is not within bounds. Current Scalar numberOfComponents: ${numberOfComponents}`);
370
308
  return NaN;
371
309
  }
372
-
373
- var offsetIndex = publicAPI.getOffsetIndexFromWorld(xyz);
374
-
310
+ const offsetIndex = publicAPI.getOffsetIndexFromWorld(xyz);
375
311
  if (Number.isNaN(offsetIndex)) {
376
312
  // VTK Error Macro will have been tripped already, no need to do it again,
377
313
  return offsetIndex;
378
314
  }
379
-
380
315
  return publicAPI.getPointData().getScalars().getComponent(offsetIndex, comp);
381
316
  };
382
- } // ----------------------------------------------------------------------------
317
+ }
318
+
319
+ // ----------------------------------------------------------------------------
383
320
  // Object factory
384
321
  // ----------------------------------------------------------------------------
385
322
 
386
-
387
- var DEFAULT_VALUES = {
323
+ const DEFAULT_VALUES = {
388
324
  direction: null,
389
325
  // a mat3
390
326
  indexToWorld: null,
@@ -395,36 +331,43 @@ var DEFAULT_VALUES = {
395
331
  origin: [0.0, 0.0, 0.0],
396
332
  extent: [0, -1, 0, -1, 0, -1],
397
333
  dataDescription: StructuredType.EMPTY
398
- }; // ----------------------------------------------------------------------------
334
+ };
335
+
336
+ // ----------------------------------------------------------------------------
399
337
 
400
338
  function extend(publicAPI, model) {
401
- var initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
402
- Object.assign(model, DEFAULT_VALUES, initialValues); // Inheritance
339
+ let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
340
+ Object.assign(model, DEFAULT_VALUES, initialValues);
403
341
 
342
+ // Inheritance
404
343
  vtkDataSet.extend(publicAPI, model, initialValues);
405
-
406
344
  if (!model.direction) {
407
345
  model.direction = mat3.identity(new Float64Array(9));
408
346
  } else if (Array.isArray(model.direction)) {
409
347
  model.direction = new Float64Array(model.direction.slice(0, 9));
410
348
  }
411
-
412
349
  model.indexToWorld = new Float64Array(16);
413
- model.worldToIndex = new Float64Array(16); // Set/Get methods
350
+ model.worldToIndex = new Float64Array(16);
414
351
 
352
+ // Set/Get methods
415
353
  macro.get(publicAPI, model, ['indexToWorld', 'worldToIndex']);
416
354
  macro.setGetArray(publicAPI, model, ['origin', 'spacing'], 3);
417
355
  macro.setGetArray(publicAPI, model, ['direction'], 9);
418
- macro.getArray(publicAPI, model, ['extent'], 6); // Object specific methods
356
+ macro.getArray(publicAPI, model, ['extent'], 6);
419
357
 
358
+ // Object specific methods
420
359
  vtkImageData(publicAPI, model);
421
- } // ----------------------------------------------------------------------------
360
+ }
361
+
362
+ // ----------------------------------------------------------------------------
422
363
 
423
- var newInstance = macro.newInstance(extend, 'vtkImageData'); // ----------------------------------------------------------------------------
364
+ const newInstance = macro.newInstance(extend, 'vtkImageData');
365
+
366
+ // ----------------------------------------------------------------------------
424
367
 
425
368
  var vtkImageData$1 = {
426
- newInstance: newInstance,
427
- extend: extend
369
+ newInstance,
370
+ extend
428
371
  };
429
372
 
430
373
  export { vtkImageData$1 as default, extend, newInstance };
@@ -1,12 +1,12 @@
1
1
  // Constants in support of ImplicitBoolean
2
2
  //
3
- var Operation = {
3
+ const Operation = {
4
4
  UNION: 0,
5
5
  INTERSECTION: 1,
6
6
  DIFFERENCE: 2
7
7
  };
8
8
  var Constants = {
9
- Operation: Operation
9
+ Operation
10
10
  };
11
11
 
12
12
  export { Operation, Constants as default };