@kitware/vtk.js 28.10.2 → 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 (565) 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 +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/Rendering/Core/AbstractImageMapper/helper.js +44 -49
  278. package/Rendering/Core/AbstractImageMapper.js +18 -19
  279. package/Rendering/Core/AbstractMapper.js +39 -55
  280. package/Rendering/Core/AbstractMapper3D.js +26 -31
  281. package/Rendering/Core/AbstractPicker.js +25 -21
  282. package/Rendering/Core/Actor.js +71 -93
  283. package/Rendering/Core/Actor2D.js +64 -78
  284. package/Rendering/Core/AnnotatedCubeActor/Presets.js +5 -11
  285. package/Rendering/Core/AnnotatedCubeActor.js +94 -79
  286. package/Rendering/Core/AxesActor.js +65 -87
  287. package/Rendering/Core/Camera.js +246 -271
  288. package/Rendering/Core/CellPicker.js +125 -148
  289. package/Rendering/Core/ColorTransferFunction/ColorMaps.js +20 -21
  290. package/Rendering/Core/ColorTransferFunction/ColorMapsLite.js +20 -21
  291. package/Rendering/Core/ColorTransferFunction/Constants.js +4 -4
  292. package/Rendering/Core/ColorTransferFunction.js +460 -546
  293. package/Rendering/Core/Coordinate/Constants.js +2 -2
  294. package/Rendering/Core/Coordinate.js +119 -198
  295. package/Rendering/Core/CubeAxesActor.js +294 -320
  296. package/Rendering/Core/Follower.js +46 -45
  297. package/Rendering/Core/Glyph3DMapper/Constants.js +4 -4
  298. package/Rendering/Core/Glyph3DMapper.js +96 -148
  299. package/Rendering/Core/HardwareSelector.js +36 -69
  300. package/Rendering/Core/ImageArrayMapper.js +87 -126
  301. package/Rendering/Core/ImageCPRMapper.js +134 -209
  302. package/Rendering/Core/ImageMapper/Constants.js +2 -2
  303. package/Rendering/Core/ImageMapper.js +85 -144
  304. package/Rendering/Core/ImageProperty/Constants.js +2 -2
  305. package/Rendering/Core/ImageProperty.js +66 -81
  306. package/Rendering/Core/ImageResliceMapper/Constants.js +2 -2
  307. package/Rendering/Core/ImageResliceMapper.js +36 -29
  308. package/Rendering/Core/ImageSlice.js +85 -127
  309. package/Rendering/Core/InteractorObserver.js +82 -73
  310. package/Rendering/Core/InteractorStyle/Constants.js +2 -2
  311. package/Rendering/Core/InteractorStyle.js +56 -58
  312. package/Rendering/Core/Light.js +43 -49
  313. package/Rendering/Core/Mapper/CoincidentTopologyHelper.js +37 -48
  314. package/Rendering/Core/Mapper/Constants.js +6 -6
  315. package/Rendering/Core/Mapper/Static.js +15 -12
  316. package/Rendering/Core/Mapper.js +194 -259
  317. package/Rendering/Core/Mapper2D.js +61 -100
  318. package/Rendering/Core/Picker.js +124 -143
  319. package/Rendering/Core/PixelSpaceCallbackMapper.js +40 -37
  320. package/Rendering/Core/PointPicker.js +68 -79
  321. package/Rendering/Core/Prop/Constants.js +2 -2
  322. package/Rendering/Core/Prop.js +58 -106
  323. package/Rendering/Core/Prop3D.js +54 -83
  324. package/Rendering/Core/Property/Constants.js +6 -6
  325. package/Rendering/Core/Property.js +45 -74
  326. package/Rendering/Core/Property2D/Constants.js +2 -2
  327. package/Rendering/Core/Property2D.js +33 -42
  328. package/Rendering/Core/RenderWindow.js +70 -82
  329. package/Rendering/Core/RenderWindowInteractor/Constants.js +7 -7
  330. package/Rendering/Core/RenderWindowInteractor.js +324 -439
  331. package/Rendering/Core/Renderer.js +192 -256
  332. package/Rendering/Core/ScalarBarActor.js +267 -272
  333. package/Rendering/Core/Skybox.js +26 -24
  334. package/Rendering/Core/SphereMapper.js +22 -12
  335. package/Rendering/Core/StickMapper.js +22 -12
  336. package/Rendering/Core/SurfaceLICInterface/Constants.js +6 -6
  337. package/Rendering/Core/SurfaceLICInterface.js +13 -9
  338. package/Rendering/Core/SurfaceLICMapper.js +23 -15
  339. package/Rendering/Core/Texture.js +99 -141
  340. package/Rendering/Core/Viewport.js +60 -88
  341. package/Rendering/Core/Volume.js +55 -77
  342. package/Rendering/Core/VolumeMapper/Constants.js +4 -4
  343. package/Rendering/Core/VolumeMapper.js +59 -91
  344. package/Rendering/Core/VolumeProperty/Constants.js +4 -4
  345. package/Rendering/Core/VolumeProperty.js +78 -115
  346. package/Rendering/Core.js +47 -49
  347. package/Rendering/Misc/CanvasView.js +62 -61
  348. package/Rendering/Misc/FullScreenRenderWindow.js +60 -62
  349. package/Rendering/Misc/GenericRenderWindow.js +48 -37
  350. package/Rendering/Misc/RemoteView.js +86 -80
  351. package/Rendering/Misc/RenderWindowWithControlBar.js +54 -48
  352. package/Rendering/Misc/SynchronizableRenderWindow/BehaviorManager/CameraSynchronizer.js +43 -51
  353. package/Rendering/Misc/SynchronizableRenderWindow/BehaviorManager.js +52 -82
  354. package/Rendering/Misc/SynchronizableRenderWindow/ObjectManager.js +258 -308
  355. package/Rendering/Misc/SynchronizableRenderWindow.js +133 -163
  356. package/Rendering/Misc/TextureLODsDownloader.js +72 -74
  357. package/Rendering/Misc.js +7 -7
  358. package/Rendering/OpenGL/Actor.js +57 -68
  359. package/Rendering/OpenGL/Actor2D.js +56 -56
  360. package/Rendering/OpenGL/BufferObject/Constants.js +2 -2
  361. package/Rendering/OpenGL/BufferObject.js +50 -65
  362. package/Rendering/OpenGL/Camera.js +35 -29
  363. package/Rendering/OpenGL/CellArrayBufferObject.js +119 -149
  364. package/Rendering/OpenGL/Convolution2DPass.js +87 -81
  365. package/Rendering/OpenGL/CubeAxesActor.js +28 -21
  366. package/Rendering/OpenGL/ForwardPass.js +53 -64
  367. package/Rendering/OpenGL/Framebuffer.js +61 -101
  368. package/Rendering/OpenGL/Glyph3DMapper.js +165 -196
  369. package/Rendering/OpenGL/HardwareSelector/Constants.js +2 -2
  370. package/Rendering/OpenGL/HardwareSelector.js +272 -397
  371. package/Rendering/OpenGL/Helper.js +58 -73
  372. package/Rendering/OpenGL/ImageCPRMapper.js +339 -421
  373. package/Rendering/OpenGL/ImageMapper.js +268 -361
  374. package/Rendering/OpenGL/ImageResliceMapper.js +306 -438
  375. package/Rendering/OpenGL/ImageSlice.js +48 -54
  376. package/Rendering/OpenGL/OrderIndependentTranslucentPass.js +102 -84
  377. package/Rendering/OpenGL/PixelSpaceCallbackMapper.js +43 -42
  378. package/Rendering/OpenGL/PolyDataMapper.js +358 -492
  379. package/Rendering/OpenGL/PolyDataMapper2D.js +153 -205
  380. package/Rendering/OpenGL/RadialDistortionPass.js +86 -89
  381. package/Rendering/OpenGL/RenderWindow/Constants.js +2 -2
  382. package/Rendering/OpenGL/RenderWindow/ContextProxy.js +20 -29
  383. package/Rendering/OpenGL/RenderWindow.js +356 -510
  384. package/Rendering/OpenGL/Renderer.js +77 -89
  385. package/Rendering/OpenGL/ReplacementShaderMapper.js +28 -46
  386. package/Rendering/OpenGL/ScalarBarActor.js +28 -21
  387. package/Rendering/OpenGL/Shader.js +37 -31
  388. package/Rendering/OpenGL/ShaderCache.js +67 -74
  389. package/Rendering/OpenGL/ShaderProgram.js +136 -248
  390. package/Rendering/OpenGL/Skybox.js +99 -60
  391. package/Rendering/OpenGL/SphereMapper.js +94 -108
  392. package/Rendering/OpenGL/StickMapper.js +110 -114
  393. package/Rendering/OpenGL/SurfaceLIC/LineIntegralConvolution2D/pingpong.js +91 -157
  394. package/Rendering/OpenGL/SurfaceLIC/LineIntegralConvolution2D.js +142 -151
  395. package/Rendering/OpenGL/SurfaceLIC/SurfaceLICInterface.js +142 -216
  396. package/Rendering/OpenGL/SurfaceLIC/SurfaceLICMapper.js +79 -100
  397. package/Rendering/OpenGL/SurfaceLIC.js +2 -2
  398. package/Rendering/OpenGL/Texture/Constants.js +4 -4
  399. package/Rendering/OpenGL/Texture.js +443 -608
  400. package/Rendering/OpenGL/TextureUnitManager.js +47 -43
  401. package/Rendering/OpenGL/VertexArrayObject.js +92 -131
  402. package/Rendering/OpenGL/ViewNodeFactory.js +25 -13
  403. package/Rendering/OpenGL/Volume.js +38 -34
  404. package/Rendering/OpenGL/VolumeMapper.js +437 -547
  405. package/Rendering/OpenGL.js +28 -28
  406. package/Rendering/SceneGraph/RenderPass.js +34 -31
  407. package/Rendering/SceneGraph/RenderWindowViewNode.js +68 -94
  408. package/Rendering/SceneGraph/ViewNode.js +82 -111
  409. package/Rendering/SceneGraph/ViewNodeFactory.js +31 -26
  410. package/Rendering/SceneGraph.js +4 -4
  411. package/Rendering/WebGPU/Actor.js +49 -49
  412. package/Rendering/WebGPU/Actor2D.js +45 -44
  413. package/Rendering/WebGPU/BindGroup.js +43 -50
  414. package/Rendering/WebGPU/Buffer.js +41 -50
  415. package/Rendering/WebGPU/BufferManager/Constants.js +4 -4
  416. package/Rendering/WebGPU/BufferManager.js +111 -141
  417. package/Rendering/WebGPU/Camera.js +65 -67
  418. package/Rendering/WebGPU/CellArrayMapper.js +621 -388
  419. package/Rendering/WebGPU/CubeAxesActor.js +28 -19
  420. package/Rendering/WebGPU/Device.js +78 -133
  421. package/Rendering/WebGPU/ForwardPass.js +75 -72
  422. package/Rendering/WebGPU/FullScreenQuad.js +25 -18
  423. package/Rendering/WebGPU/Glyph3DMapper.js +62 -74
  424. package/Rendering/WebGPU/HardwareSelectionPass.js +45 -38
  425. package/Rendering/WebGPU/HardwareSelector.js +200 -276
  426. package/Rendering/WebGPU/ImageMapper.js +180 -171
  427. package/Rendering/WebGPU/ImageSlice.js +45 -44
  428. package/Rendering/WebGPU/IndexBuffer.js +166 -200
  429. package/Rendering/WebGPU/OpaquePass.js +37 -36
  430. package/Rendering/WebGPU/OrderIndependentTranslucentPass.js +72 -45
  431. package/Rendering/WebGPU/Pipeline.js +37 -51
  432. package/Rendering/WebGPU/PixelSpaceCallbackMapper.js +27 -19
  433. package/Rendering/WebGPU/PolyDataMapper.js +50 -53
  434. package/Rendering/WebGPU/PolyDataMapper2D.js +39 -39
  435. package/Rendering/WebGPU/RenderEncoder.js +68 -88
  436. package/Rendering/WebGPU/RenderWindow.js +262 -376
  437. package/Rendering/WebGPU/Renderer.js +224 -208
  438. package/Rendering/WebGPU/Sampler.js +27 -21
  439. package/Rendering/WebGPU/ScalarBarActor.js +28 -19
  440. package/Rendering/WebGPU/ShaderCache.js +43 -41
  441. package/Rendering/WebGPU/ShaderDescription.js +52 -59
  442. package/Rendering/WebGPU/ShaderModule.js +26 -17
  443. package/Rendering/WebGPU/SimpleMapper.js +185 -121
  444. package/Rendering/WebGPU/SphereMapper.js +200 -130
  445. package/Rendering/WebGPU/StickMapper.js +289 -152
  446. package/Rendering/WebGPU/StorageBuffer.js +100 -115
  447. package/Rendering/WebGPU/Texture.js +79 -99
  448. package/Rendering/WebGPU/TextureManager.js +52 -54
  449. package/Rendering/WebGPU/TextureView.js +40 -43
  450. package/Rendering/WebGPU/Types.js +53 -70
  451. package/Rendering/WebGPU/UniformBuffer.js +158 -184
  452. package/Rendering/WebGPU/VertexInput.js +64 -90
  453. package/Rendering/WebGPU/ViewNodeFactory.js +25 -13
  454. package/Rendering/WebGPU/Volume.js +52 -51
  455. package/Rendering/WebGPU/VolumePass.js +218 -239
  456. package/Rendering/WebGPU/VolumePassFSQ.js +625 -306
  457. package/Rendering/WebGPU.js +1 -1
  458. package/Rendering/index.js +5 -5
  459. package/Widgets/Core/AbstractWidget/Constants.js +2 -2
  460. package/Widgets/Core/AbstractWidget.js +49 -58
  461. package/Widgets/Core/AbstractWidgetFactory.js +101 -122
  462. package/Widgets/Core/StateBuilder/boundsMixin.js +23 -28
  463. package/Widgets/Core/StateBuilder/color3Mixin.js +10 -7
  464. package/Widgets/Core/StateBuilder/colorMixin.js +10 -6
  465. package/Widgets/Core/StateBuilder/cornerMixin.js +16 -15
  466. package/Widgets/Core/StateBuilder/directionMixin.js +20 -18
  467. package/Widgets/Core/StateBuilder/manipulatorMixin.js +26 -18
  468. package/Widgets/Core/StateBuilder/nameMixin.js +10 -6
  469. package/Widgets/Core/StateBuilder/orientationMixin.js +19 -16
  470. package/Widgets/Core/StateBuilder/originMixin.js +25 -32
  471. package/Widgets/Core/StateBuilder/scale1Mixin.js +10 -6
  472. package/Widgets/Core/StateBuilder/scale3Mixin.js +10 -6
  473. package/Widgets/Core/StateBuilder/shapeMixin.js +12 -6
  474. package/Widgets/Core/StateBuilder/textMixin.js +10 -6
  475. package/Widgets/Core/StateBuilder/visibleMixin.js +10 -6
  476. package/Widgets/Core/StateBuilder.js +120 -149
  477. package/Widgets/Core/WidgetManager/Constants.js +7 -7
  478. package/Widgets/Core/WidgetManager.js +249 -421
  479. package/Widgets/Core/WidgetState.js +48 -57
  480. package/Widgets/Core.js +5 -5
  481. package/Widgets/Manipulators/AbstractManipulator.js +20 -14
  482. package/Widgets/Manipulators/CPRManipulator.js +55 -71
  483. package/Widgets/Manipulators/LineManipulator.js +31 -28
  484. package/Widgets/Manipulators/PickerManipulator.d.ts +48 -0
  485. package/Widgets/Manipulators/PickerManipulator.js +65 -0
  486. package/Widgets/Manipulators/PlaneManipulator.js +26 -23
  487. package/Widgets/Manipulators/TrackballManipulator.js +39 -35
  488. package/Widgets/Manipulators.js +4 -2
  489. package/Widgets/Representations/ArrowHandleRepresentation.js +148 -162
  490. package/Widgets/Representations/CircleContextRepresentation.js +44 -38
  491. package/Widgets/Representations/ContextRepresentation.js +17 -14
  492. package/Widgets/Representations/ConvexFaceContextRepresentation.js +50 -47
  493. package/Widgets/Representations/CroppingOutlineRepresentation.js +38 -27
  494. package/Widgets/Representations/CubeHandleRepresentation.js +21 -18
  495. package/Widgets/Representations/GlyphRepresentation.js +107 -152
  496. package/Widgets/Representations/HandleRepresentation.js +17 -14
  497. package/Widgets/Representations/ImplicitPlaneRepresentation.js +97 -91
  498. package/Widgets/Representations/LineHandleRepresentation.js +44 -41
  499. package/Widgets/Representations/OutlineContextRepresentation.js +42 -36
  500. package/Widgets/Representations/PolyLineRepresentation.js +60 -75
  501. package/Widgets/Representations/RectangleContextRepresentation.js +42 -37
  502. package/Widgets/Representations/SphereContextRepresentation.js +19 -27
  503. package/Widgets/Representations/SphereHandleRepresentation.js +31 -27
  504. package/Widgets/Representations/SplineContextRepresentation.js +46 -70
  505. package/Widgets/Representations/WidgetRepresentation/Constants.js +2 -2
  506. package/Widgets/Representations/WidgetRepresentation.js +99 -134
  507. package/Widgets/Representations.js +13 -13
  508. package/Widgets/Widgets3D/AngleWidget/behavior.js +41 -63
  509. package/Widgets/Widgets3D/AngleWidget.js +40 -38
  510. package/Widgets/Widgets3D/DistanceWidget/behavior.js +40 -61
  511. package/Widgets/Widgets3D/DistanceWidget.js +38 -36
  512. package/Widgets/Widgets3D/EllipseWidget/behavior.js +14 -19
  513. package/Widgets/Widgets3D/EllipseWidget/state.js +4 -2
  514. package/Widgets/Widgets3D/EllipseWidget.js +37 -26
  515. package/Widgets/Widgets3D/ImageCroppingWidget/behavior.js +26 -56
  516. package/Widgets/Widgets3D/ImageCroppingWidget/helpers.js +14 -17
  517. package/Widgets/Widgets3D/ImageCroppingWidget/state.js +20 -16
  518. package/Widgets/Widgets3D/ImageCroppingWidget.js +80 -98
  519. package/Widgets/Widgets3D/ImplicitPlaneWidget.js +55 -77
  520. package/Widgets/Widgets3D/InteractiveOrientationWidget/behavior.js +17 -18
  521. package/Widgets/Widgets3D/InteractiveOrientationWidget/state.js +15 -7
  522. package/Widgets/Widgets3D/InteractiveOrientationWidget.js +30 -29
  523. package/Widgets/Widgets3D/LabelWidget/behavior.js +37 -62
  524. package/Widgets/Widgets3D/LabelWidget.js +31 -25
  525. package/Widgets/Widgets3D/LineWidget/Constants.js +8 -8
  526. package/Widgets/Widgets3D/LineWidget/behavior.js +77 -114
  527. package/Widgets/Widgets3D/LineWidget/helpers.js +13 -20
  528. package/Widgets/Widgets3D/LineWidget/state.js +2 -1
  529. package/Widgets/Widgets3D/LineWidget.js +39 -35
  530. package/Widgets/Widgets3D/PaintWidget/behavior.js +24 -59
  531. package/Widgets/Widgets3D/PaintWidget.js +39 -37
  532. package/Widgets/Widgets3D/PolyLineWidget/behavior.js +44 -68
  533. package/Widgets/Widgets3D/PolyLineWidget.js +36 -31
  534. package/Widgets/Widgets3D/RectangleWidget/behavior.js +6 -11
  535. package/Widgets/Widgets3D/RectangleWidget/state.js +4 -2
  536. package/Widgets/Widgets3D/RectangleWidget.js +37 -25
  537. package/Widgets/Widgets3D/ResliceCursorWidget/Constants.js +35 -21
  538. package/Widgets/Widgets3D/ResliceCursorWidget/behavior.js +133 -209
  539. package/Widgets/Widgets3D/ResliceCursorWidget/cprBehavior.js +26 -41
  540. package/Widgets/Widgets3D/ResliceCursorWidget/helpers.js +89 -116
  541. package/Widgets/Widgets3D/ResliceCursorWidget/state.js +33 -40
  542. package/Widgets/Widgets3D/ResliceCursorWidget.js +186 -227
  543. package/Widgets/Widgets3D/SeedWidget/behavior.js +82 -0
  544. package/Widgets/Widgets3D/SeedWidget/state.js +18 -0
  545. package/Widgets/Widgets3D/SeedWidget.d.ts +44 -0
  546. package/Widgets/Widgets3D/SeedWidget.js +43 -0
  547. package/Widgets/Widgets3D/ShapeWidget/Constants.js +19 -19
  548. package/Widgets/Widgets3D/ShapeWidget/behavior.js +150 -252
  549. package/Widgets/Widgets3D/ShapeWidget.js +24 -27
  550. package/Widgets/Widgets3D/SphereWidget/behavior.js +35 -69
  551. package/Widgets/Widgets3D/SphereWidget/state.js +9 -5
  552. package/Widgets/Widgets3D/SphereWidget.js +34 -44
  553. package/Widgets/Widgets3D/SplineWidget/behavior.js +85 -120
  554. package/Widgets/Widgets3D/SplineWidget.js +43 -39
  555. package/Widgets/Widgets3D.js +15 -15
  556. package/Widgets/index.js +4 -4
  557. package/_virtual/rollup-plugin-worker-loader__module_Sources/Filters/General/PaintFilter/PaintFilter.worker.js +95 -207
  558. package/_virtual/rollup-plugin-worker-loader__module_Sources/Interaction/Widgets/PiecewiseGaussianWidget/ComputeHistogram.worker.js +0 -3
  559. package/favicon.js +5 -6
  560. package/index.d.ts +4 -2
  561. package/index.js +4 -3
  562. package/macros.js +4 -1931
  563. package/macros2.js +1684 -0
  564. package/package.json +6 -6
  565. 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 };