@kitware/vtk.js 28.10.2 → 28.11.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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 +193 -277
  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 +754 -942
  12. package/Common/Core/Math.js +2 -4
  13. package/Common/Core/MatrixBuilder.js +99 -151
  14. package/Common/Core/Points.js +43 -43
  15. package/Common/Core/PriorityQueue.js +30 -28
  16. package/Common/Core/ProgressHandler.js +31 -32
  17. package/Common/Core/ScalarsToColors/Constants.js +4 -4
  18. package/Common/Core/ScalarsToColors.js +196 -253
  19. package/Common/Core/StringArray.js +48 -73
  20. package/Common/Core/URLExtract.js +10 -29
  21. package/Common/Core/VariantArray.js +48 -73
  22. package/Common/Core.js +11 -11
  23. package/Common/DataModel/AbstractPointLocator.js +19 -17
  24. package/Common/DataModel/BoundingBox.js +322 -490
  25. package/Common/DataModel/Box.js +46 -63
  26. package/Common/DataModel/CardinalSpline1D.js +92 -102
  27. package/Common/DataModel/Cell.js +41 -61
  28. package/Common/DataModel/CellLinks.js +91 -127
  29. package/Common/DataModel/CellTypes/Constants.js +7 -6
  30. package/Common/DataModel/CellTypes.js +55 -74
  31. package/Common/DataModel/Collection.js +45 -61
  32. package/Common/DataModel/Cone.js +28 -20
  33. package/Common/DataModel/Cylinder.js +41 -35
  34. package/Common/DataModel/DataSet/Constants.js +11 -5
  35. package/Common/DataModel/DataSet.js +37 -25
  36. package/Common/DataModel/DataSetAttributes/Constants.js +18 -18
  37. package/Common/DataModel/DataSetAttributes/FieldData.js +103 -194
  38. package/Common/DataModel/DataSetAttributes.js +96 -138
  39. package/Common/DataModel/EdgeLocator.js +45 -70
  40. package/Common/DataModel/ITKHelper.js +67 -137
  41. package/Common/DataModel/ImageData.js +115 -172
  42. package/Common/DataModel/ImplicitBoolean/Constants.js +2 -2
  43. package/Common/DataModel/ImplicitBoolean.js +66 -96
  44. package/Common/DataModel/IncrementalOctreeNode.js +201 -231
  45. package/Common/DataModel/IncrementalOctreePointLocator.js +160 -198
  46. package/Common/DataModel/KochanekSpline1D.js +78 -81
  47. package/Common/DataModel/Line/Constants.js +2 -2
  48. package/Common/DataModel/Line.js +82 -105
  49. package/Common/DataModel/Locator.js +17 -10
  50. package/Common/DataModel/Molecule.js +26 -17
  51. package/Common/DataModel/PiecewiseFunction.js +218 -239
  52. package/Common/DataModel/Plane.js +90 -113
  53. package/Common/DataModel/PointSet.js +30 -26
  54. package/Common/DataModel/PolyData/Constants.js +2 -2
  55. package/Common/DataModel/PolyData.js +95 -120
  56. package/Common/DataModel/PolyLine.js +44 -61
  57. package/Common/DataModel/Polygon/Constants.js +4 -4
  58. package/Common/DataModel/Polygon.js +128 -169
  59. package/Common/DataModel/Quad/Constants.js +2 -2
  60. package/Common/DataModel/Quad.js +61 -100
  61. package/Common/DataModel/SelectionNode/Constants.js +5 -4
  62. package/Common/DataModel/SelectionNode.js +25 -21
  63. package/Common/DataModel/Sphere.js +40 -35
  64. package/Common/DataModel/Spline1D/Constants.js +3 -2
  65. package/Common/DataModel/Spline1D.js +34 -18
  66. package/Common/DataModel/Spline3D/Constants.js +2 -2
  67. package/Common/DataModel/Spline3D.js +46 -41
  68. package/Common/DataModel/StructuredData/Constants.js +2 -2
  69. package/Common/DataModel/StructuredData.js +9 -20
  70. package/Common/DataModel/Triangle.js +207 -250
  71. package/Common/DataModel.js +19 -19
  72. package/Common/System/MobileVR.js +56 -61
  73. package/Common/System/TimerLog.js +1 -1
  74. package/Common/System.js +2 -2
  75. package/Common/Transform/LandmarkTransform/Constants.js +2 -2
  76. package/Common/Transform/LandmarkTransform.js +133 -117
  77. package/Common/Transform/Transform.js +42 -57
  78. package/Common/Transform.js +2 -2
  79. package/Common/index.js +4 -4
  80. package/Filters/Core/Cutter.js +134 -146
  81. package/Filters/Core/PolyDataNormals.js +44 -50
  82. package/Filters/Core.js +2 -2
  83. package/Filters/Cornerstone/ImageDataToCornerstoneImage.js +45 -33
  84. package/Filters/Cornerstone.js +1 -1
  85. package/Filters/General/AppendPolyData.js +84 -100
  86. package/Filters/General/Calculator.js +95 -163
  87. package/Filters/General/ClipClosedSurface/Constants.js +2 -2
  88. package/Filters/General/ClipClosedSurface.js +341 -416
  89. package/Filters/General/ClosedPolyLineToSurfaceFilter.js +141 -156
  90. package/Filters/General/ContourTriangulator/Constants.js +2 -2
  91. package/Filters/General/ContourTriangulator/helper.js +684 -812
  92. package/Filters/General/ContourTriangulator.js +92 -89
  93. package/Filters/General/ImageCropFilter.js +77 -78
  94. package/Filters/General/ImageDataOutlineFilter.js +42 -36
  95. package/Filters/General/ImageMarchingCubes/caseTable.js +9 -521
  96. package/Filters/General/ImageMarchingCubes.js +99 -112
  97. package/Filters/General/ImageMarchingSquares/caseTable.js +9 -41
  98. package/Filters/General/ImageMarchingSquares.js +93 -118
  99. package/Filters/General/ImageOutlineFilter.js +53 -54
  100. package/Filters/General/ImageSliceFilter.js +39 -30
  101. package/Filters/General/ImageStreamline.js +107 -124
  102. package/Filters/General/LineFilter.js +26 -15
  103. package/Filters/General/MoleculeToRepresentation.js +136 -149
  104. package/Filters/General/OBBTree/OBBNode.js +36 -34
  105. package/Filters/General/OBBTree/helper.js +19 -24
  106. package/Filters/General/OBBTree.js +396 -488
  107. package/Filters/General/OutlineFilter.js +52 -34
  108. package/Filters/General/PaintFilter/PaintFilter.worker.js +93 -130
  109. package/Filters/General/PaintFilter.js +150 -162
  110. package/Filters/General/ScalarToRGBA.js +38 -33
  111. package/Filters/General/TriangleFilter.js +65 -62
  112. package/Filters/General/TubeFilter/Constants.js +4 -4
  113. package/Filters/General/TubeFilter.js +376 -496
  114. package/Filters/General/WarpScalar.js +58 -60
  115. package/Filters/General/WindowedSincPolyDataFilter.js +258 -330
  116. package/Filters/General.js +21 -21
  117. package/Filters/Sources/Arrow2DSource/Constants.js +2 -2
  118. package/Filters/Sources/Arrow2DSource.js +56 -56
  119. package/Filters/Sources/ArrowSource.js +39 -29
  120. package/Filters/Sources/CircleSource.js +43 -43
  121. package/Filters/Sources/ConcentricCylinderSource.js +151 -174
  122. package/Filters/Sources/ConeSource.js +51 -42
  123. package/Filters/Sources/CubeSource.js +75 -96
  124. package/Filters/Sources/Cursor3D.js +94 -109
  125. package/Filters/Sources/CylinderSource.js +90 -90
  126. package/Filters/Sources/ImageGridSource.js +43 -43
  127. package/Filters/Sources/LineSource.js +49 -39
  128. package/Filters/Sources/PlaneSource.js +97 -104
  129. package/Filters/Sources/PointSource.js +46 -37
  130. package/Filters/Sources/RTAnalyticSource.js +50 -48
  131. package/Filters/Sources/SLICSource.js +63 -73
  132. package/Filters/Sources/SphereSource.js +88 -78
  133. package/Filters/Sources/ViewFinderSource.js +26 -23
  134. package/Filters/Sources.js +14 -14
  135. package/Filters/Texture/TextureMapToPlane.js +95 -97
  136. package/Filters/Texture/TextureMapToSphere.js +46 -54
  137. package/Filters/Texture.js +2 -2
  138. package/Filters/index.js +5 -5
  139. package/IO/Core/BinaryHelper.js +12 -18
  140. package/IO/Core/DataAccessHelper/HtmlDataAccessHelper.js +43 -59
  141. package/IO/Core/DataAccessHelper/HttpDataAccessHelper.js +76 -113
  142. package/IO/Core/DataAccessHelper/JSZipDataAccessHelper.js +62 -112
  143. package/IO/Core/DataAccessHelper/LiteHttpDataAccessHelper.js +76 -113
  144. package/IO/Core/DataAccessHelper.js +6 -6
  145. package/IO/Core/HttpDataSetReader.js +136 -139
  146. package/IO/Core/HttpDataSetSeriesReader.js +64 -75
  147. package/IO/Core/HttpSceneLoader.js +130 -179
  148. package/IO/Core/ImageStream/DefaultProtocol.js +29 -43
  149. package/IO/Core/ImageStream/ViewStream.js +100 -103
  150. package/IO/Core/ImageStream.js +62 -54
  151. package/IO/Core/ResourceLoader.js +10 -9
  152. package/IO/Core/Serializer/ArraySerializer.js +40 -40
  153. package/IO/Core/Serializer/FieldDataSerializer.js +18 -28
  154. package/IO/Core/Serializer/ImageDataSerializer.js +22 -23
  155. package/IO/Core/Serializer/PolyDataSerializer.js +17 -21
  156. package/IO/Core/Serializer.js +6 -13
  157. package/IO/Core/WSLinkClient.js +90 -76
  158. package/IO/Core/ZipMultiDataSetReader.js +46 -44
  159. package/IO/Core/ZipMultiDataSetWriter.js +43 -34
  160. package/IO/Core.js +7 -7
  161. package/IO/Geometry/DracoReader.js +118 -121
  162. package/IO/Geometry/PLYReader.js +163 -223
  163. package/IO/Geometry/PLYWriter/Constants.js +5 -5
  164. package/IO/Geometry/PLYWriter.js +139 -154
  165. package/IO/Geometry/STLReader.js +123 -146
  166. package/IO/Geometry/STLWriter/Constants.js +2 -2
  167. package/IO/Geometry/STLWriter.js +83 -82
  168. package/IO/Geometry.js +5 -5
  169. package/IO/Legacy/LegacyAsciiParser.js +78 -139
  170. package/IO/Legacy/PolyDataReader.js +48 -36
  171. package/IO/Legacy.js +2 -2
  172. package/IO/Misc/ElevationReader.js +67 -60
  173. package/IO/Misc/HttpDataSetLODsLoader.js +41 -38
  174. package/IO/Misc/ITKImageReader.js +58 -45
  175. package/IO/Misc/ITKPolyDataReader.js +50 -38
  176. package/IO/Misc/JSONNucleoReader.js +49 -42
  177. package/IO/Misc/JSONReader.js +38 -33
  178. package/IO/Misc/MTLReader.js +74 -119
  179. package/IO/Misc/OBJReader.js +153 -206
  180. package/IO/Misc/PDBReader.js +70 -68
  181. package/IO/Misc/SkyboxReader.js +77 -82
  182. package/IO/Misc.js +9 -9
  183. package/IO/XML/XMLImageDataReader.js +36 -38
  184. package/IO/XML/XMLImageDataWriter.js +28 -21
  185. package/IO/XML/XMLPolyDataReader.js +49 -46
  186. package/IO/XML/XMLPolyDataWriter.js +43 -42
  187. package/IO/XML/XMLReader.js +262 -304
  188. package/IO/XML/XMLWriter/Constants.js +3 -3
  189. package/IO/XML/XMLWriter.js +70 -84
  190. package/IO/XML.js +6 -6
  191. package/IO/index.js +5 -5
  192. package/Imaging/Core/AbstractImageInterpolator/Constants.js +4 -4
  193. package/Imaging/Core/AbstractImageInterpolator/InterpolationInfo.js +30 -27
  194. package/Imaging/Core/AbstractImageInterpolator.js +74 -87
  195. package/Imaging/Core/ImageInterpolator.js +201 -252
  196. package/Imaging/Core/ImagePointDataIterator.js +96 -122
  197. package/Imaging/Core/ImageReslice/Constants.js +2 -2
  198. package/Imaging/Core/ImageReslice.js +327 -464
  199. package/Imaging/Core.js +4 -4
  200. package/Imaging/Hybrid/SampleFunction.js +58 -51
  201. package/Imaging/Hybrid.js +1 -1
  202. package/Imaging/index.js +2 -2
  203. package/Interaction/Animations/TimeStepBasedAnimationHandler.js +39 -54
  204. package/Interaction/Manipulators/CompositeCameraManipulator.js +22 -13
  205. package/Interaction/Manipulators/CompositeGestureManipulator.js +31 -43
  206. package/Interaction/Manipulators/CompositeKeyboardManipulator.js +15 -11
  207. package/Interaction/Manipulators/CompositeMouseManipulator.js +27 -33
  208. package/Interaction/Manipulators/CompositeVRManipulator.js +22 -15
  209. package/Interaction/Manipulators/GestureCameraManipulator.js +54 -36
  210. package/Interaction/Manipulators/KeyboardCameraManipulator.js +95 -97
  211. package/Interaction/Manipulators/MouseBoxSelectorManipulator.js +70 -89
  212. package/Interaction/Manipulators/MouseCameraAxisRotateManipulator.js +67 -54
  213. package/Interaction/Manipulators/MouseCameraSliceManipulator.js +40 -38
  214. package/Interaction/Manipulators/MouseCameraTrackballFirstPersonManipulator.js +83 -68
  215. package/Interaction/Manipulators/MouseCameraTrackballMultiRotateManipulator.js +32 -28
  216. package/Interaction/Manipulators/MouseCameraTrackballPanManipulator.js +47 -40
  217. package/Interaction/Manipulators/MouseCameraTrackballRollManipulator.js +55 -43
  218. package/Interaction/Manipulators/MouseCameraTrackballRotateManipulator.js +56 -46
  219. package/Interaction/Manipulators/MouseCameraTrackballZoomManipulator.js +41 -46
  220. package/Interaction/Manipulators/MouseCameraTrackballZoomToMouseManipulator.js +29 -27
  221. package/Interaction/Manipulators/MouseCameraUnicamManipulator.js +123 -146
  222. package/Interaction/Manipulators/MouseCameraUnicamRotateManipulator.js +144 -166
  223. package/Interaction/Manipulators/MouseRangeManipulator.js +127 -132
  224. package/Interaction/Manipulators/VRButtonPanManipulator.js +33 -23
  225. package/Interaction/Manipulators.js +21 -21
  226. package/Interaction/Misc/DeviceOrientationToCamera.js +25 -47
  227. package/Interaction/Misc.js +1 -1
  228. package/Interaction/Style/InteractorStyleImage.js +101 -121
  229. package/Interaction/Style/InteractorStyleMPRSlice.js +111 -128
  230. package/Interaction/Style/InteractorStyleManipulator/Presets.js +9 -17
  231. package/Interaction/Style/InteractorStyleManipulator.js +254 -329
  232. package/Interaction/Style/InteractorStyleRemoteMouse.js +195 -180
  233. package/Interaction/Style/InteractorStyleTrackballCamera.js +154 -157
  234. package/Interaction/Style/InteractorStyleUnicam.js +30 -38
  235. package/Interaction/Style.js +5 -5
  236. package/Interaction/UI/CornerAnnotation/CornerAnnotation.module.css.js +1 -1
  237. package/Interaction/UI/CornerAnnotation.js +65 -48
  238. package/Interaction/UI/FPSMonitor.js +104 -105
  239. package/Interaction/UI/Icons.js +1 -1
  240. package/Interaction/UI/Slider/Constants.js +2 -2
  241. package/Interaction/UI/Slider.js +78 -95
  242. package/Interaction/UI/VolumeController.js +104 -97
  243. package/Interaction/UI.js +5 -5
  244. package/Interaction/Widgets/OrientationMarkerWidget/Constants.js +2 -2
  245. package/Interaction/Widgets/OrientationMarkerWidget.js +90 -135
  246. package/Interaction/Widgets/PiecewiseGaussianWidget/ComputeHistogram.worker.js +0 -3
  247. package/Interaction/Widgets/PiecewiseGaussianWidget.js +381 -498
  248. package/Interaction/Widgets.js +2 -2
  249. package/Interaction/index.js +5 -5
  250. package/Proxy/Animation/AbstractAnimationProxy.js +22 -15
  251. package/Proxy/Animation/AnimationProxyManager.js +43 -51
  252. package/Proxy/Animation/TimeStepBasedAnimationHandlerProxy.js +26 -19
  253. package/Proxy/Core/AbstractRepresentationProxy.js +97 -151
  254. package/Proxy/Core/LookupTableProxy/Constants.js +4 -4
  255. package/Proxy/Core/LookupTableProxy.js +49 -52
  256. package/Proxy/Core/PiecewiseFunctionProxy/Constants.js +4 -4
  257. package/Proxy/Core/PiecewiseFunctionProxy.js +63 -72
  258. package/Proxy/Core/ProxyManager/core.js +83 -106
  259. package/Proxy/Core/ProxyManager/properties.js +53 -76
  260. package/Proxy/Core/ProxyManager/state.js +100 -110
  261. package/Proxy/Core/ProxyManager/view.js +45 -55
  262. package/Proxy/Core/ProxyManager.js +16 -8
  263. package/Proxy/Core/SourceProxy.js +41 -38
  264. package/Proxy/Core/View2DProxy.js +143 -199
  265. package/Proxy/Core/ViewProxy.js +223 -269
  266. package/Proxy/Core.js +7 -7
  267. package/Proxy/Representations/GeometryRepresentationProxy.js +34 -20
  268. package/Proxy/Representations/GlyphRepresentationProxy.js +42 -41
  269. package/Proxy/Representations/MoleculeRepresentationProxy.js +32 -22
  270. package/Proxy/Representations/ResliceRepresentationProxy.js +48 -32
  271. package/Proxy/Representations/SkyboxRepresentationProxy.js +30 -29
  272. package/Proxy/Representations/SliceRepresentationProxy.js +93 -112
  273. package/Proxy/Representations/SlicedGeometryRepresentationProxy.js +46 -42
  274. package/Proxy/Representations/VolumeRepresentationProxy.js +108 -133
  275. package/Proxy/Representations.js +7 -7
  276. package/Proxy/index.js +2 -2
  277. package/README.md +1 -1
  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 +85 -144
  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 +192 -256
  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 +443 -608
  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 +40 -38
  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 +133 -209
  540. package/Widgets/Widgets3D/ResliceCursorWidget/cprBehavior.js +26 -41
  541. package/Widgets/Widgets3D/ResliceCursorWidget/helpers.js +89 -116
  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 };