@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,11 +1,14 @@
1
- import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
2
- import macro from '../../macros.js';
1
+ import { m as macro } from '../../macros2.js';
3
2
  import vtkPolyData from '../../Common/DataModel/PolyData.js';
4
3
  import vtkEdgeLocator from '../../Common/DataModel/EdgeLocator.js';
5
4
  import vtkCaseTable from './ImageMarchingSquares/caseTable.js';
6
5
 
7
- var vtkErrorMacro = macro.vtkErrorMacro,
8
- vtkDebugMacro = macro.vtkDebugMacro; // ----------------------------------------------------------------------------
6
+ const {
7
+ vtkErrorMacro,
8
+ vtkDebugMacro
9
+ } = macro;
10
+
11
+ // ----------------------------------------------------------------------------
9
12
  // vtkImageMarchingSquares methods
10
13
  // ----------------------------------------------------------------------------
11
14
 
@@ -15,10 +18,8 @@ function vtkImageMarchingSquares(publicAPI, model) {
15
18
  * @returns {[number, number]}
16
19
  */
17
20
  function getKernels() {
18
- var kernelX = 0; // default K slicing mode
19
-
20
- var kernelY = 1;
21
-
21
+ let kernelX = 0; // default K slicing mode
22
+ let kernelY = 1;
22
23
  if (model.slicingMode === 1) {
23
24
  kernelX = 0;
24
25
  kernelY = 2;
@@ -26,35 +27,31 @@ function vtkImageMarchingSquares(publicAPI, model) {
26
27
  kernelX = 1;
27
28
  kernelY = 2;
28
29
  }
29
-
30
30
  return [kernelX, kernelY];
31
- } // Set our className
32
-
31
+ }
33
32
 
33
+ // Set our className
34
34
  model.classHierarchy.push('vtkImageMarchingSquares');
35
+
35
36
  /**
36
37
  * Get the list of contour values.
37
38
  * @returns {number[]}
38
39
  */
40
+ publicAPI.getContourValues = () => model.contourValues;
39
41
 
40
- publicAPI.getContourValues = function () {
41
- return model.contourValues;
42
- };
43
42
  /**
44
43
  * Set the list contour values.
45
44
  * @param {number[]} cValues
46
45
  */
47
-
48
-
49
- publicAPI.setContourValues = function (cValues) {
46
+ publicAPI.setContourValues = cValues => {
50
47
  model.contourValues = cValues;
51
48
  publicAPI.modified();
52
49
  };
50
+ const ids = [];
51
+ const pixelScalars = [];
52
+ const pixelPts = [];
53
+ const edgeLocator = vtkEdgeLocator.newInstance();
53
54
 
54
- var ids = [];
55
- var pixelScalars = [];
56
- var pixelPts = [];
57
- var edgeLocator = vtkEdgeLocator.newInstance();
58
55
  /**
59
56
  * Retrieve scalars and pixel coordinates.
60
57
  * @param {Vector3} ijk origin of the pixel
@@ -64,27 +61,21 @@ function vtkImageMarchingSquares(publicAPI, model) {
64
61
  * @param {number} kernelX index of the X element
65
62
  * @param {number} kernelY index of the Y element
66
63
  */
64
+ publicAPI.getPixelScalars = (ijk, dims, scalars, increments, kernelX, kernelY) => {
65
+ const [i, j, k] = ijk;
67
66
 
68
- publicAPI.getPixelScalars = function (ijk, dims, scalars, increments, kernelX, kernelY) {
69
- var _ijk = _slicedToArray(ijk, 3),
70
- i = _ijk[0],
71
- j = _ijk[1],
72
- k = _ijk[2]; // First get the indices for the pixel
73
-
74
-
67
+ // First get the indices for the pixel
75
68
  ids[0] = k * dims[1] * dims[0] + j * dims[0] + i; // i, j, k
76
-
77
69
  ids[1] = ids[0] + increments[kernelX]; // i+1, j, k
78
-
79
70
  ids[2] = ids[0] + increments[kernelY]; // i, j+1, k
80
-
81
71
  ids[3] = ids[2] + increments[kernelX]; // i+1, j+1, k
82
- // Now retrieve the scalars
83
72
 
84
- for (var ii = 0; ii < 4; ++ii) {
73
+ // Now retrieve the scalars
74
+ for (let ii = 0; ii < 4; ++ii) {
85
75
  pixelScalars[ii] = scalars[ids[ii]];
86
76
  }
87
77
  };
78
+
88
79
  /**
89
80
  * Retrieve pixel coordinates.
90
81
  * @param {Vector3} ijk origin of the pixel
@@ -93,25 +84,21 @@ function vtkImageMarchingSquares(publicAPI, model) {
93
84
  * @param {number} kernelX index of the X element
94
85
  * @param {number} kernelY index of the Y element
95
86
  */
87
+ publicAPI.getPixelPoints = (ijk, origin, spacing, kernelX, kernelY) => {
88
+ const i = ijk[kernelX];
89
+ const j = ijk[kernelY];
96
90
 
97
-
98
- publicAPI.getPixelPoints = function (ijk, origin, spacing, kernelX, kernelY) {
99
- var i = ijk[kernelX];
100
- var j = ijk[kernelY]; // (i,i+1),(j,j+1),(k,k+1) - i varies fastest; then j; then k
101
-
91
+ // (i,i+1),(j,j+1),(k,k+1) - i varies fastest; then j; then k
102
92
  pixelPts[0] = origin[kernelX] + i * spacing[kernelX]; // 0
103
-
104
93
  pixelPts[1] = origin[kernelY] + j * spacing[kernelY];
105
94
  pixelPts[2] = pixelPts[0] + spacing[kernelX]; // 1
106
-
107
95
  pixelPts[3] = pixelPts[1];
108
96
  pixelPts[4] = pixelPts[0]; // 2
109
-
110
97
  pixelPts[5] = pixelPts[1] + spacing[kernelY];
111
98
  pixelPts[6] = pixelPts[2]; // 3
112
-
113
99
  pixelPts[7] = pixelPts[5];
114
100
  };
101
+
115
102
  /**
116
103
  * Produce points and lines for the polydata.
117
104
  * @param {number[]} cVal list of contour values
@@ -126,159 +113,147 @@ function vtkImageMarchingSquares(publicAPI, model) {
126
113
  * @param {number} kernelX index of the X element
127
114
  * @param {number} kernelY index of the Y element
128
115
  */
129
-
130
-
131
- publicAPI.produceLines = function (cVal, ijk, dims, origin, spacing, scalars, points, lines, increments, kernelX, kernelY) {
132
- var k = ijk[model.slicingMode];
133
- var CASE_MASK = [1, 2, 8, 4]; // case table is actually for quad
134
-
135
- var xyz = [];
136
- var pId;
116
+ publicAPI.produceLines = (cVal, ijk, dims, origin, spacing, scalars, points, lines, increments, kernelX, kernelY) => {
117
+ const k = ijk[model.slicingMode];
118
+ const CASE_MASK = [1, 2, 8, 4]; // case table is actually for quad
119
+ const xyz = [];
120
+ let pId;
137
121
  publicAPI.getPixelScalars(ijk, dims, scalars, increments, kernelX, kernelY);
138
- var index = 0;
139
-
140
- for (var idx = 0; idx < 4; idx++) {
122
+ let index = 0;
123
+ for (let idx = 0; idx < 4; idx++) {
141
124
  if (pixelScalars[idx] >= cVal) {
142
125
  index |= CASE_MASK[idx]; // eslint-disable-line no-bitwise
143
126
  }
144
127
  }
145
128
 
146
- var pixelLines = vtkCaseTable.getCase(index);
147
-
129
+ const pixelLines = vtkCaseTable.getCase(index);
148
130
  if (pixelLines[0] < 0) {
149
131
  return; // don't get the pixel coordinates, nothing to do
150
132
  }
151
133
 
152
134
  publicAPI.getPixelPoints(ijk, origin, spacing, kernelX, kernelY);
153
- var z = origin[model.slicingMode] + k * spacing[model.slicingMode];
154
-
155
- for (var _idx = 0; pixelLines[_idx] >= 0; _idx += 2) {
135
+ const z = origin[model.slicingMode] + k * spacing[model.slicingMode];
136
+ for (let idx = 0; pixelLines[idx] >= 0; idx += 2) {
156
137
  lines.push(2);
157
-
158
- for (var eid = 0; eid < 2; eid++) {
159
- var edgeVerts = vtkCaseTable.getEdge(pixelLines[_idx + eid]);
138
+ for (let eid = 0; eid < 2; eid++) {
139
+ const edgeVerts = vtkCaseTable.getEdge(pixelLines[idx + eid]);
160
140
  pId = undefined;
161
-
162
141
  if (model.mergePoints) {
163
- var _edgeLocator$isInsert;
164
-
165
- pId = (_edgeLocator$isInsert = edgeLocator.isInsertedEdge(ids[edgeVerts[0]], ids[edgeVerts[1]])) === null || _edgeLocator$isInsert === void 0 ? void 0 : _edgeLocator$isInsert.value;
142
+ pId = edgeLocator.isInsertedEdge(ids[edgeVerts[0]], ids[edgeVerts[1]])?.value;
166
143
  }
167
-
168
144
  if (pId === undefined) {
169
- var t = (cVal - pixelScalars[edgeVerts[0]]) / (pixelScalars[edgeVerts[1]] - pixelScalars[edgeVerts[0]]);
170
- var x0 = pixelPts.slice(edgeVerts[0] * 2, (edgeVerts[0] + 1) * 2);
171
- var x1 = pixelPts.slice(edgeVerts[1] * 2, (edgeVerts[1] + 1) * 2);
145
+ const t = (cVal - pixelScalars[edgeVerts[0]]) / (pixelScalars[edgeVerts[1]] - pixelScalars[edgeVerts[0]]);
146
+ const x0 = pixelPts.slice(edgeVerts[0] * 2, (edgeVerts[0] + 1) * 2);
147
+ const x1 = pixelPts.slice(edgeVerts[1] * 2, (edgeVerts[1] + 1) * 2);
172
148
  xyz[kernelX] = x0[0] + t * (x1[0] - x0[0]);
173
149
  xyz[kernelY] = x0[1] + t * (x1[1] - x0[1]);
174
150
  xyz[model.slicingMode] = z;
175
151
  pId = points.length / 3;
176
152
  points.push(xyz[0], xyz[1], xyz[2]);
177
-
178
153
  if (model.mergePoints) {
179
154
  edgeLocator.insertEdge(ids[edgeVerts[0]], ids[edgeVerts[1]], pId);
180
155
  }
181
156
  }
182
-
183
157
  lines.push(pId);
184
158
  }
185
159
  }
186
160
  };
187
-
188
- publicAPI.requestData = function (inData, outData) {
161
+ publicAPI.requestData = (inData, outData) => {
189
162
  // implement requestData
190
- var input = inData[0];
191
-
163
+ const input = inData[0];
192
164
  if (!input) {
193
165
  vtkErrorMacro('Invalid or missing input');
194
166
  return;
195
167
  }
196
-
197
168
  if (model.slicingMode == null || model.slicingMode < 0 || model.slicingMode > 2) {
198
169
  vtkErrorMacro('Invalid or missing slicing mode');
199
170
  return;
200
171
  }
172
+ console.time('msquares');
201
173
 
202
- console.time('msquares'); // Retrieve output and volume data
203
-
204
- var origin = input.getOrigin();
205
- var spacing = input.getSpacing();
206
- var dims = input.getDimensions();
207
- var extent = input.getExtent();
208
- var increments = input.computeIncrements(extent);
209
- var scalars = input.getPointData().getScalars().getData();
210
-
211
- var _getKernels = getKernels(),
212
- _getKernels2 = _slicedToArray(_getKernels, 2),
213
- kernelX = _getKernels2[0],
214
- kernelY = _getKernels2[1]; // Points - dynamic array
215
-
174
+ // Retrieve output and volume data
175
+ const origin = input.getOrigin();
176
+ const spacing = input.getSpacing();
177
+ const dims = input.getDimensions();
178
+ const extent = input.getExtent();
179
+ const increments = input.computeIncrements(extent);
180
+ const scalars = input.getPointData().getScalars().getData();
181
+ const [kernelX, kernelY] = getKernels();
216
182
 
217
- var points = []; // Cells - dynamic array
183
+ // Points - dynamic array
184
+ const points = [];
218
185
 
219
- var lines = []; // Ensure slice is valid
220
-
221
- var k = Math.round(model.slice);
186
+ // Cells - dynamic array
187
+ const lines = [];
222
188
 
189
+ // Ensure slice is valid
190
+ let k = Math.round(model.slice);
223
191
  if (k >= dims[model.slicingMode]) {
224
192
  k = 0;
225
- } // Loop over all contour values, and then pixels, determine case and process
226
-
193
+ }
227
194
 
228
- var ijk = [0, 0, 0];
195
+ // Loop over all contour values, and then pixels, determine case and process
196
+ const ijk = [0, 0, 0];
229
197
  ijk[model.slicingMode] = k;
230
-
231
- for (var cv = 0; cv < model.contourValues.length; ++cv) {
232
- for (var j = 0; j < dims[kernelY] - 1; ++j) {
198
+ for (let cv = 0; cv < model.contourValues.length; ++cv) {
199
+ for (let j = 0; j < dims[kernelY] - 1; ++j) {
233
200
  ijk[kernelY] = j;
234
-
235
- for (var i = 0; i < dims[kernelX] - 1; ++i) {
201
+ for (let i = 0; i < dims[kernelX] - 1; ++i) {
236
202
  ijk[kernelX] = i;
237
203
  publicAPI.produceLines(model.contourValues[cv], ijk, dims, origin, spacing, scalars, points, lines, increments, kernelX, kernelY);
238
204
  }
239
205
  }
240
-
241
206
  edgeLocator.initialize();
242
- } // Update output
243
-
207
+ }
244
208
 
245
- var polydata = vtkPolyData.newInstance();
209
+ // Update output
210
+ const polydata = vtkPolyData.newInstance();
246
211
  polydata.getPoints().setData(new Float32Array(points), 3);
247
212
  polydata.getLines().setData(new Uint32Array(lines));
248
213
  outData[0] = polydata;
249
214
  vtkDebugMacro('Produced output');
250
215
  console.timeEnd('msquares');
251
216
  };
252
- } // ----------------------------------------------------------------------------
217
+ }
218
+
219
+ // ----------------------------------------------------------------------------
253
220
  // Object factory
254
221
  // ----------------------------------------------------------------------------
255
222
 
256
-
257
- var DEFAULT_VALUES = {
223
+ const DEFAULT_VALUES = {
258
224
  contourValues: [],
259
225
  slicingMode: 2,
260
226
  slice: 0,
261
227
  mergePoints: false
262
- }; // ----------------------------------------------------------------------------
228
+ };
229
+
230
+ // ----------------------------------------------------------------------------
263
231
 
264
232
  function extend(publicAPI, model) {
265
- var initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
266
- Object.assign(model, DEFAULT_VALUES, initialValues); // Make this a VTK object
233
+ let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
234
+ Object.assign(model, DEFAULT_VALUES, initialValues);
267
235
 
268
- macro.obj(publicAPI, model); // Also make it an algorithm with one input and one output
236
+ // Make this a VTK object
237
+ macro.obj(publicAPI, model);
269
238
 
239
+ // Also make it an algorithm with one input and one output
270
240
  macro.algo(publicAPI, model, 1, 1);
271
- macro.setGet(publicAPI, model, ['slicingMode', 'slice', 'mergePoints']); // Object specific methods
241
+ macro.setGet(publicAPI, model, ['slicingMode', 'slice', 'mergePoints']);
272
242
 
243
+ // Object specific methods
273
244
  macro.algo(publicAPI, model, 1, 1);
274
245
  vtkImageMarchingSquares(publicAPI, model);
275
- } // ----------------------------------------------------------------------------
246
+ }
276
247
 
277
- var newInstance = macro.newInstance(extend, 'vtkImageMarchingSquares'); // ----------------------------------------------------------------------------
248
+ // ----------------------------------------------------------------------------
249
+
250
+ const newInstance = macro.newInstance(extend, 'vtkImageMarchingSquares');
251
+
252
+ // ----------------------------------------------------------------------------
278
253
 
279
254
  var vtkImageMarchingSquares$1 = {
280
- newInstance: newInstance,
281
- extend: extend
255
+ newInstance,
256
+ extend
282
257
  };
283
258
 
284
259
  export { vtkImageMarchingSquares$1 as default, extend, newInstance };
@@ -1,46 +1,40 @@
1
- import macro from '../../macros.js';
1
+ import { m as macro } from '../../macros2.js';
2
2
  import vtkDataArray from '../../Common/Core/DataArray.js';
3
3
  import vtkImageData from '../../Common/DataModel/ImageData.js';
4
4
 
5
- var vtkErrorMacro = macro.vtkErrorMacro; // ----------------------------------------------------------------------------
5
+ const {
6
+ vtkErrorMacro
7
+ } = macro;
8
+
9
+ // ----------------------------------------------------------------------------
6
10
  // vtkImageOutlineFilter methods
7
11
  // ----------------------------------------------------------------------------
8
12
 
9
13
  function vtkImageOutlineFilter(publicAPI, model) {
10
14
  model.classHierarchy.push('vtkImageOutlineFilter');
11
-
12
- publicAPI.requestData = function (inData, outData) {
15
+ publicAPI.requestData = (inData, outData) => {
13
16
  // implement requestData
14
- var input = inData[0];
15
-
17
+ const input = inData[0];
16
18
  if (!input || input.getClassName() !== 'vtkImageData') {
17
19
  vtkErrorMacro('Invalid or missing input');
18
20
  return;
19
21
  }
20
-
21
- var output = vtkImageData.newInstance(input.get('spacing', 'origin', 'direction'));
22
-
23
- var getIndex = function getIndex(point, dims) {
24
- return point[0] + point[1] * dims[0] + point[2] * dims[0] * dims[1];
25
- };
26
-
27
- var getIJK = function getIJK(index, dims) {
28
- var ijk = [0, 0, 0];
22
+ const output = vtkImageData.newInstance(input.get('spacing', 'origin', 'direction'));
23
+ const getIndex = (point, dims) => point[0] + point[1] * dims[0] + point[2] * dims[0] * dims[1];
24
+ const getIJK = (index, dims) => {
25
+ const ijk = [0, 0, 0];
29
26
  ijk[0] = index % dims[0];
30
27
  ijk[1] = Math.floor(index / dims[0]) % dims[1];
31
28
  ijk[2] = Math.floor(index / (dims[0] * dims[1]));
32
29
  return ijk;
33
30
  };
34
-
35
- var dims = input.getDimensions();
31
+ const dims = input.getDimensions();
36
32
  output.setDimensions(dims);
37
33
  output.computeTransforms();
38
- var values = new Uint8Array(input.getNumberOfPoints());
39
- var inputDataArray = input.getPointData().getScalars().getData();
40
- var kernelX = 0; // default K slicing mode
41
-
42
- var kernelY = 1;
43
-
34
+ const values = new Uint8Array(input.getNumberOfPoints());
35
+ const inputDataArray = input.getPointData().getScalars().getData();
36
+ let kernelX = 0; // default K slicing mode
37
+ let kernelY = 1;
44
38
  if (model.slicingMode === 1) {
45
39
  kernelX = 0;
46
40
  kernelY = 2;
@@ -48,18 +42,15 @@ function vtkImageOutlineFilter(publicAPI, model) {
48
42
  kernelX = 1;
49
43
  kernelY = 2;
50
44
  }
51
-
52
- inputDataArray.forEach(function (el, index) {
45
+ inputDataArray.forEach((el, index) => {
53
46
  if (el !== model.background) {
54
- var ijk = getIJK(index, dims);
55
- var isBorder = false;
56
-
57
- for (var x = -1; x <= 1 && !isBorder; x++) {
58
- for (var y = -1; y <= 1 && !isBorder; y++) {
59
- var dx = x;
60
- var dy = y;
61
- var dz = 0;
62
-
47
+ const ijk = getIJK(index, dims);
48
+ let isBorder = false;
49
+ for (let x = -1; x <= 1 && !isBorder; x++) {
50
+ for (let y = -1; y <= 1 && !isBorder; y++) {
51
+ let dx = x;
52
+ let dy = y;
53
+ let dz = 0;
63
54
  if (model.slicingMode === 1) {
64
55
  dx = x;
65
56
  dy = 0;
@@ -69,56 +60,64 @@ function vtkImageOutlineFilter(publicAPI, model) {
69
60
  dy = y;
70
61
  dz = x;
71
62
  }
72
-
73
- var evalX = ijk[kernelX] + dx;
74
- var evalY = ijk[kernelY] + dy; // check boundaries
75
-
63
+ const evalX = ijk[kernelX] + dx;
64
+ const evalY = ijk[kernelY] + dy;
65
+ // check boundaries
76
66
  if (evalX >= 0 && evalX < dims[kernelX] && evalY >= 0 && evalY < dims[kernelY]) {
77
- var hoodValue = inputDataArray[getIndex([ijk[0] + dx, ijk[1] + dy, ijk[2] + dz], dims)];
67
+ const hoodValue = inputDataArray[getIndex([ijk[0] + dx, ijk[1] + dy, ijk[2] + dz], dims)];
78
68
  if (hoodValue !== el) isBorder = true;
79
69
  }
80
70
  }
81
71
  }
82
-
83
72
  if (isBorder) values[index] = el;else values[index] = model.background;
84
73
  } else {
85
74
  values[index] = model.background;
86
75
  }
87
76
  });
88
- var dataArray = vtkDataArray.newInstance({
77
+ const dataArray = vtkDataArray.newInstance({
89
78
  numberOfComponents: 1,
90
- values: values
79
+ values
91
80
  });
92
81
  output.getPointData().setScalars(dataArray);
93
82
  outData[0] = output;
94
83
  };
95
- } // ----------------------------------------------------------------------------
84
+ }
85
+
86
+ // ----------------------------------------------------------------------------
96
87
  // Object factory
97
88
  // ----------------------------------------------------------------------------
98
89
 
99
-
100
- var DEFAULT_VALUES = {
90
+ const DEFAULT_VALUES = {
101
91
  slicingMode: 2,
102
92
  background: 0
103
- }; // ----------------------------------------------------------------------------
93
+ };
94
+
95
+ // ----------------------------------------------------------------------------
104
96
 
105
97
  function extend(publicAPI, model) {
106
- var initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
107
- Object.assign(model, DEFAULT_VALUES, initialValues); // Make this a VTK object
98
+ let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
99
+ Object.assign(model, DEFAULT_VALUES, initialValues);
108
100
 
109
- macro.obj(publicAPI, model); // Also make it an algorithm with one input and one output
101
+ // Make this a VTK object
102
+ macro.obj(publicAPI, model);
110
103
 
104
+ // Also make it an algorithm with one input and one output
111
105
  macro.algo(publicAPI, model, 1, 1);
112
- macro.setGet(publicAPI, model, ['slicingMode', 'background']); // Object specific methods
106
+ macro.setGet(publicAPI, model, ['slicingMode', 'background']);
113
107
 
108
+ // Object specific methods
114
109
  vtkImageOutlineFilter(publicAPI, model);
115
- } // ----------------------------------------------------------------------------
110
+ }
111
+
112
+ // ----------------------------------------------------------------------------
113
+
114
+ const newInstance = macro.newInstance(extend, 'vtkImageOutlineFilter');
116
115
 
117
- var newInstance = macro.newInstance(extend, 'vtkImageOutlineFilter'); // ----------------------------------------------------------------------------
116
+ // ----------------------------------------------------------------------------
118
117
 
119
118
  var vtkImageOutlineFilter$1 = {
120
- newInstance: newInstance,
121
- extend: extend
119
+ newInstance,
120
+ extend
122
121
  };
123
122
 
124
123
  export { vtkImageOutlineFilter$1 as default, extend, newInstance };
@@ -1,73 +1,82 @@
1
- import macro from '../../macros.js';
1
+ import { m as macro } from '../../macros2.js';
2
2
  import vtkImageData from '../../Common/DataModel/ImageData.js';
3
3
  import vtkDataArray from '../../Common/Core/DataArray.js';
4
4
 
5
- var vtkErrorMacro = macro.vtkErrorMacro; // ----------------------------------------------------------------------------
5
+ const {
6
+ vtkErrorMacro
7
+ } = macro;
8
+
9
+ // ----------------------------------------------------------------------------
6
10
  // vtkImageSliceFilter methods
7
11
  // ----------------------------------------------------------------------------
8
12
 
9
13
  function vtkImageSliceFilter(publicAPI, model) {
10
14
  // Set our className
11
15
  model.classHierarchy.push('vtkImageSliceFilter');
12
-
13
- publicAPI.requestData = function (inData, outData) {
16
+ publicAPI.requestData = (inData, outData) => {
14
17
  // implement requestData
15
- var input = inData[0];
16
-
18
+ const input = inData[0];
17
19
  if (!input) {
18
20
  vtkErrorMacro('Invalid or missing input');
19
21
  return;
20
22
  }
21
-
22
- var scalars = input.getPointData().getScalars();
23
-
23
+ const scalars = input.getPointData().getScalars();
24
24
  if (!scalars) {
25
25
  vtkErrorMacro('No scalars from input');
26
26
  return;
27
27
  }
28
-
29
- var datasetDefinition = input.get('extent', 'spacing', 'origin');
28
+ const datasetDefinition = input.get('extent', 'spacing', 'origin');
30
29
  datasetDefinition.extent[4] = model.sliceIndex;
31
30
  datasetDefinition.extent[5] = datasetDefinition.extent[4];
32
- var numberOfComponents = scalars.getNumberOfComponents();
33
- var sliceSize = (datasetDefinition.extent[1] - datasetDefinition.extent[0] + 1) * (datasetDefinition.extent[3] - datasetDefinition.extent[2] + 1) * numberOfComponents;
34
- var offset = sliceSize * model.sliceIndex;
35
- var sliceRawArray = scalars.getData().slice(offset, offset + sliceSize);
36
- var sliceArray = vtkDataArray.newInstance({
31
+ const numberOfComponents = scalars.getNumberOfComponents();
32
+ const sliceSize = (datasetDefinition.extent[1] - datasetDefinition.extent[0] + 1) * (datasetDefinition.extent[3] - datasetDefinition.extent[2] + 1) * numberOfComponents;
33
+ const offset = sliceSize * model.sliceIndex;
34
+ const sliceRawArray = scalars.getData().slice(offset, offset + sliceSize);
35
+ const sliceArray = vtkDataArray.newInstance({
37
36
  name: scalars.getName(),
38
- numberOfComponents: numberOfComponents,
37
+ numberOfComponents,
39
38
  values: sliceRawArray
40
39
  });
41
- var output = vtkImageData.newInstance(datasetDefinition);
40
+ const output = vtkImageData.newInstance(datasetDefinition);
42
41
  output.getPointData().setScalars(sliceArray);
43
42
  outData[0] = output;
44
43
  };
45
- } // ----------------------------------------------------------------------------
44
+ }
45
+
46
+ // ----------------------------------------------------------------------------
46
47
  // Object factory
47
48
  // ----------------------------------------------------------------------------
48
49
 
49
-
50
- var DEFAULT_VALUES = {
50
+ const DEFAULT_VALUES = {
51
51
  sliceIndex: 0
52
- }; // ----------------------------------------------------------------------------
52
+ };
53
+
54
+ // ----------------------------------------------------------------------------
53
55
 
54
56
  function extend(publicAPI, model) {
55
- var initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
56
- Object.assign(model, DEFAULT_VALUES, initialValues); // Make this a VTK object
57
+ let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
58
+ Object.assign(model, DEFAULT_VALUES, initialValues);
57
59
 
58
- macro.obj(publicAPI, model); // Also make it an algorithm with one input and one output
60
+ // Make this a VTK object
61
+ macro.obj(publicAPI, model);
59
62
 
63
+ // Also make it an algorithm with one input and one output
60
64
  macro.algo(publicAPI, model, 1, 1);
61
- macro.setGet(publicAPI, model, ['sliceIndex', 'orientation']); // Object specific methods
65
+ macro.setGet(publicAPI, model, ['sliceIndex', 'orientation']);
62
66
 
67
+ // Object specific methods
63
68
  vtkImageSliceFilter(publicAPI, model);
64
- } // ----------------------------------------------------------------------------
69
+ }
65
70
 
66
- var newInstance = macro.newInstance(extend, 'vtkImageSliceFilter'); // ----------------------------------------------------------------------------
71
+ // ----------------------------------------------------------------------------
72
+
73
+ const newInstance = macro.newInstance(extend, 'vtkImageSliceFilter');
74
+
75
+ // ----------------------------------------------------------------------------
67
76
 
68
77
  var vtkImageSliceFilter$1 = {
69
- newInstance: newInstance,
70
- extend: extend
78
+ newInstance,
79
+ extend
71
80
  };
72
81
 
73
82
  export { vtkImageSliceFilter$1 as default, extend, newInstance };