@kitware/vtk.js 28.10.1 → 28.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (566) hide show
  1. package/Common/Core/Base64.js +53 -82
  2. package/Common/Core/CellArray.js +52 -60
  3. package/Common/Core/ClassHierarchy.js +8 -36
  4. package/Common/Core/DataArray/Constants.js +6 -6
  5. package/Common/Core/DataArray.js +185 -270
  6. package/Common/Core/Endian.js +14 -17
  7. package/Common/Core/HalfFloat.js +17 -34
  8. package/Common/Core/ImageHelper.js +17 -25
  9. package/Common/Core/LookupTable.js +131 -144
  10. package/Common/Core/Math/Constants.js +8 -8
  11. package/Common/Core/Math/index.js +778 -903
  12. package/Common/Core/Math.d.ts +14 -0
  13. package/Common/Core/Math.js +2 -4
  14. package/Common/Core/MatrixBuilder.js +99 -151
  15. package/Common/Core/Points.js +43 -43
  16. package/Common/Core/PriorityQueue.js +30 -28
  17. package/Common/Core/ProgressHandler.js +31 -32
  18. package/Common/Core/ScalarsToColors/Constants.js +4 -4
  19. package/Common/Core/ScalarsToColors.js +196 -253
  20. package/Common/Core/StringArray.js +48 -73
  21. package/Common/Core/URLExtract.js +10 -29
  22. package/Common/Core/VariantArray.js +48 -73
  23. package/Common/Core.js +11 -11
  24. package/Common/DataModel/AbstractPointLocator.js +19 -17
  25. package/Common/DataModel/BoundingBox.js +322 -490
  26. package/Common/DataModel/Box.js +46 -63
  27. package/Common/DataModel/CardinalSpline1D.js +92 -102
  28. package/Common/DataModel/Cell.js +41 -61
  29. package/Common/DataModel/CellLinks.js +91 -127
  30. package/Common/DataModel/CellTypes/Constants.js +7 -6
  31. package/Common/DataModel/CellTypes.js +55 -74
  32. package/Common/DataModel/Collection.js +45 -61
  33. package/Common/DataModel/Cone.js +28 -20
  34. package/Common/DataModel/Cylinder.js +41 -35
  35. package/Common/DataModel/DataSet/Constants.js +11 -5
  36. package/Common/DataModel/DataSet.js +37 -25
  37. package/Common/DataModel/DataSetAttributes/Constants.js +18 -18
  38. package/Common/DataModel/DataSetAttributes/FieldData.js +103 -194
  39. package/Common/DataModel/DataSetAttributes.js +96 -138
  40. package/Common/DataModel/EdgeLocator.js +45 -70
  41. package/Common/DataModel/ITKHelper.js +67 -137
  42. package/Common/DataModel/ImageData.js +115 -172
  43. package/Common/DataModel/ImplicitBoolean/Constants.js +2 -2
  44. package/Common/DataModel/ImplicitBoolean.js +66 -96
  45. package/Common/DataModel/IncrementalOctreeNode.js +201 -231
  46. package/Common/DataModel/IncrementalOctreePointLocator.js +160 -198
  47. package/Common/DataModel/KochanekSpline1D.js +78 -81
  48. package/Common/DataModel/Line/Constants.js +2 -2
  49. package/Common/DataModel/Line.js +82 -105
  50. package/Common/DataModel/Locator.js +17 -10
  51. package/Common/DataModel/Molecule.js +26 -17
  52. package/Common/DataModel/PiecewiseFunction.js +218 -239
  53. package/Common/DataModel/Plane.js +90 -113
  54. package/Common/DataModel/PointSet.js +30 -26
  55. package/Common/DataModel/PolyData/Constants.js +2 -2
  56. package/Common/DataModel/PolyData.js +95 -120
  57. package/Common/DataModel/PolyLine.js +44 -61
  58. package/Common/DataModel/Polygon/Constants.js +4 -4
  59. package/Common/DataModel/Polygon.js +128 -169
  60. package/Common/DataModel/Quad/Constants.js +2 -2
  61. package/Common/DataModel/Quad.js +61 -100
  62. package/Common/DataModel/SelectionNode/Constants.js +5 -4
  63. package/Common/DataModel/SelectionNode.js +25 -21
  64. package/Common/DataModel/Sphere.js +40 -35
  65. package/Common/DataModel/Spline1D/Constants.js +3 -2
  66. package/Common/DataModel/Spline1D.js +34 -18
  67. package/Common/DataModel/Spline3D/Constants.js +2 -2
  68. package/Common/DataModel/Spline3D.js +46 -41
  69. package/Common/DataModel/StructuredData/Constants.js +2 -2
  70. package/Common/DataModel/StructuredData.js +9 -20
  71. package/Common/DataModel/Triangle.js +207 -250
  72. package/Common/DataModel.js +19 -19
  73. package/Common/System/MobileVR.js +56 -61
  74. package/Common/System/TimerLog.js +1 -1
  75. package/Common/System.js +2 -2
  76. package/Common/Transform/LandmarkTransform/Constants.js +2 -2
  77. package/Common/Transform/LandmarkTransform.js +133 -117
  78. package/Common/Transform/Transform.js +42 -57
  79. package/Common/Transform.js +2 -2
  80. package/Common/index.js +4 -4
  81. package/Filters/Core/Cutter.js +134 -146
  82. package/Filters/Core/PolyDataNormals.js +44 -50
  83. package/Filters/Core.js +2 -2
  84. package/Filters/Cornerstone/ImageDataToCornerstoneImage.js +45 -33
  85. package/Filters/Cornerstone.js +1 -1
  86. package/Filters/General/AppendPolyData.js +84 -100
  87. package/Filters/General/Calculator.js +95 -163
  88. package/Filters/General/ClipClosedSurface/Constants.js +2 -2
  89. package/Filters/General/ClipClosedSurface.js +341 -416
  90. package/Filters/General/ClosedPolyLineToSurfaceFilter.js +141 -156
  91. package/Filters/General/ContourTriangulator/Constants.js +2 -2
  92. package/Filters/General/ContourTriangulator/helper.js +684 -812
  93. package/Filters/General/ContourTriangulator.js +92 -89
  94. package/Filters/General/ImageCropFilter.js +77 -78
  95. package/Filters/General/ImageDataOutlineFilter.js +42 -36
  96. package/Filters/General/ImageMarchingCubes/caseTable.js +9 -521
  97. package/Filters/General/ImageMarchingCubes.js +99 -112
  98. package/Filters/General/ImageMarchingSquares/caseTable.js +9 -41
  99. package/Filters/General/ImageMarchingSquares.js +93 -118
  100. package/Filters/General/ImageOutlineFilter.js +53 -54
  101. package/Filters/General/ImageSliceFilter.js +39 -30
  102. package/Filters/General/ImageStreamline.js +107 -124
  103. package/Filters/General/LineFilter.js +26 -15
  104. package/Filters/General/MoleculeToRepresentation.js +136 -149
  105. package/Filters/General/OBBTree/OBBNode.js +36 -34
  106. package/Filters/General/OBBTree/helper.js +19 -24
  107. package/Filters/General/OBBTree.js +396 -488
  108. package/Filters/General/OutlineFilter.js +52 -34
  109. package/Filters/General/PaintFilter/PaintFilter.worker.js +93 -130
  110. package/Filters/General/PaintFilter.js +150 -162
  111. package/Filters/General/ScalarToRGBA.js +38 -33
  112. package/Filters/General/TriangleFilter.js +65 -62
  113. package/Filters/General/TubeFilter/Constants.js +4 -4
  114. package/Filters/General/TubeFilter.js +376 -496
  115. package/Filters/General/WarpScalar.js +58 -60
  116. package/Filters/General/WindowedSincPolyDataFilter.js +258 -330
  117. package/Filters/General.js +21 -21
  118. package/Filters/Sources/Arrow2DSource/Constants.js +2 -2
  119. package/Filters/Sources/Arrow2DSource.js +56 -56
  120. package/Filters/Sources/ArrowSource.js +39 -29
  121. package/Filters/Sources/CircleSource.js +43 -43
  122. package/Filters/Sources/ConcentricCylinderSource.js +151 -174
  123. package/Filters/Sources/ConeSource.js +51 -42
  124. package/Filters/Sources/CubeSource.js +75 -96
  125. package/Filters/Sources/Cursor3D.js +94 -109
  126. package/Filters/Sources/CylinderSource.js +90 -90
  127. package/Filters/Sources/ImageGridSource.js +43 -43
  128. package/Filters/Sources/LineSource.js +49 -39
  129. package/Filters/Sources/PlaneSource.js +97 -104
  130. package/Filters/Sources/PointSource.js +46 -37
  131. package/Filters/Sources/RTAnalyticSource.js +50 -48
  132. package/Filters/Sources/SLICSource.js +63 -73
  133. package/Filters/Sources/SphereSource.js +88 -78
  134. package/Filters/Sources/ViewFinderSource.js +26 -23
  135. package/Filters/Sources.js +14 -14
  136. package/Filters/Texture/TextureMapToPlane.js +95 -97
  137. package/Filters/Texture/TextureMapToSphere.js +46 -54
  138. package/Filters/Texture.js +2 -2
  139. package/Filters/index.js +5 -5
  140. package/IO/Core/BinaryHelper.js +12 -18
  141. package/IO/Core/DataAccessHelper/HtmlDataAccessHelper.js +43 -59
  142. package/IO/Core/DataAccessHelper/HttpDataAccessHelper.js +76 -113
  143. package/IO/Core/DataAccessHelper/JSZipDataAccessHelper.js +62 -112
  144. package/IO/Core/DataAccessHelper/LiteHttpDataAccessHelper.js +76 -113
  145. package/IO/Core/DataAccessHelper.js +6 -6
  146. package/IO/Core/HttpDataSetReader.js +136 -139
  147. package/IO/Core/HttpDataSetSeriesReader.js +64 -75
  148. package/IO/Core/HttpSceneLoader.js +130 -179
  149. package/IO/Core/ImageStream/DefaultProtocol.js +29 -43
  150. package/IO/Core/ImageStream/ViewStream.js +100 -103
  151. package/IO/Core/ImageStream.js +62 -54
  152. package/IO/Core/ResourceLoader.js +10 -9
  153. package/IO/Core/Serializer/ArraySerializer.js +40 -40
  154. package/IO/Core/Serializer/FieldDataSerializer.js +18 -28
  155. package/IO/Core/Serializer/ImageDataSerializer.js +22 -23
  156. package/IO/Core/Serializer/PolyDataSerializer.js +17 -21
  157. package/IO/Core/Serializer.js +6 -13
  158. package/IO/Core/WSLinkClient.js +90 -76
  159. package/IO/Core/ZipMultiDataSetReader.js +46 -44
  160. package/IO/Core/ZipMultiDataSetWriter.js +43 -34
  161. package/IO/Core.js +7 -7
  162. package/IO/Geometry/DracoReader.js +118 -121
  163. package/IO/Geometry/PLYReader.js +163 -223
  164. package/IO/Geometry/PLYWriter/Constants.js +5 -5
  165. package/IO/Geometry/PLYWriter.js +139 -154
  166. package/IO/Geometry/STLReader.js +123 -146
  167. package/IO/Geometry/STLWriter/Constants.js +2 -2
  168. package/IO/Geometry/STLWriter.js +83 -82
  169. package/IO/Geometry.js +5 -5
  170. package/IO/Legacy/LegacyAsciiParser.js +78 -139
  171. package/IO/Legacy/PolyDataReader.js +48 -36
  172. package/IO/Legacy.js +2 -2
  173. package/IO/Misc/ElevationReader.js +67 -60
  174. package/IO/Misc/HttpDataSetLODsLoader.js +41 -38
  175. package/IO/Misc/ITKImageReader.js +58 -45
  176. package/IO/Misc/ITKPolyDataReader.js +50 -38
  177. package/IO/Misc/JSONNucleoReader.js +49 -42
  178. package/IO/Misc/JSONReader.js +38 -33
  179. package/IO/Misc/MTLReader.js +74 -119
  180. package/IO/Misc/OBJReader.js +153 -206
  181. package/IO/Misc/PDBReader.js +70 -68
  182. package/IO/Misc/SkyboxReader.js +77 -82
  183. package/IO/Misc.js +9 -9
  184. package/IO/XML/XMLImageDataReader.js +36 -38
  185. package/IO/XML/XMLImageDataWriter.js +28 -21
  186. package/IO/XML/XMLPolyDataReader.js +49 -46
  187. package/IO/XML/XMLPolyDataWriter.js +43 -42
  188. package/IO/XML/XMLReader.js +262 -304
  189. package/IO/XML/XMLWriter/Constants.js +3 -3
  190. package/IO/XML/XMLWriter.js +70 -84
  191. package/IO/XML.js +6 -6
  192. package/IO/index.js +5 -5
  193. package/Imaging/Core/AbstractImageInterpolator/Constants.js +4 -4
  194. package/Imaging/Core/AbstractImageInterpolator/InterpolationInfo.js +30 -27
  195. package/Imaging/Core/AbstractImageInterpolator.js +74 -87
  196. package/Imaging/Core/ImageInterpolator.js +201 -252
  197. package/Imaging/Core/ImagePointDataIterator.js +96 -122
  198. package/Imaging/Core/ImageReslice/Constants.js +2 -2
  199. package/Imaging/Core/ImageReslice.js +327 -464
  200. package/Imaging/Core.js +4 -4
  201. package/Imaging/Hybrid/SampleFunction.js +58 -51
  202. package/Imaging/Hybrid.js +1 -1
  203. package/Imaging/index.js +2 -2
  204. package/Interaction/Animations/TimeStepBasedAnimationHandler.js +39 -54
  205. package/Interaction/Manipulators/CompositeCameraManipulator.js +22 -13
  206. package/Interaction/Manipulators/CompositeGestureManipulator.js +31 -43
  207. package/Interaction/Manipulators/CompositeKeyboardManipulator.js +15 -11
  208. package/Interaction/Manipulators/CompositeMouseManipulator.js +27 -33
  209. package/Interaction/Manipulators/CompositeVRManipulator.js +22 -15
  210. package/Interaction/Manipulators/GestureCameraManipulator.js +54 -36
  211. package/Interaction/Manipulators/KeyboardCameraManipulator.js +95 -97
  212. package/Interaction/Manipulators/MouseBoxSelectorManipulator.js +70 -89
  213. package/Interaction/Manipulators/MouseCameraAxisRotateManipulator.js +67 -54
  214. package/Interaction/Manipulators/MouseCameraSliceManipulator.js +40 -38
  215. package/Interaction/Manipulators/MouseCameraTrackballFirstPersonManipulator.js +83 -68
  216. package/Interaction/Manipulators/MouseCameraTrackballMultiRotateManipulator.js +32 -28
  217. package/Interaction/Manipulators/MouseCameraTrackballPanManipulator.js +47 -40
  218. package/Interaction/Manipulators/MouseCameraTrackballRollManipulator.js +55 -43
  219. package/Interaction/Manipulators/MouseCameraTrackballRotateManipulator.js +56 -46
  220. package/Interaction/Manipulators/MouseCameraTrackballZoomManipulator.js +41 -46
  221. package/Interaction/Manipulators/MouseCameraTrackballZoomToMouseManipulator.js +29 -27
  222. package/Interaction/Manipulators/MouseCameraUnicamManipulator.js +123 -146
  223. package/Interaction/Manipulators/MouseCameraUnicamRotateManipulator.js +144 -166
  224. package/Interaction/Manipulators/MouseRangeManipulator.js +127 -132
  225. package/Interaction/Manipulators/VRButtonPanManipulator.js +33 -23
  226. package/Interaction/Manipulators.js +21 -21
  227. package/Interaction/Misc/DeviceOrientationToCamera.js +25 -47
  228. package/Interaction/Misc.js +1 -1
  229. package/Interaction/Style/InteractorStyleImage.js +101 -121
  230. package/Interaction/Style/InteractorStyleMPRSlice.js +111 -128
  231. package/Interaction/Style/InteractorStyleManipulator/Presets.js +9 -17
  232. package/Interaction/Style/InteractorStyleManipulator.js +254 -329
  233. package/Interaction/Style/InteractorStyleRemoteMouse.js +195 -180
  234. package/Interaction/Style/InteractorStyleTrackballCamera.js +154 -157
  235. package/Interaction/Style/InteractorStyleUnicam.js +30 -38
  236. package/Interaction/Style.js +5 -5
  237. package/Interaction/UI/CornerAnnotation/CornerAnnotation.module.css.js +1 -1
  238. package/Interaction/UI/CornerAnnotation.js +65 -48
  239. package/Interaction/UI/FPSMonitor.js +104 -105
  240. package/Interaction/UI/Icons.js +1 -1
  241. package/Interaction/UI/Slider/Constants.js +2 -2
  242. package/Interaction/UI/Slider.js +78 -95
  243. package/Interaction/UI/VolumeController.js +104 -97
  244. package/Interaction/UI.js +5 -5
  245. package/Interaction/Widgets/OrientationMarkerWidget/Constants.js +2 -2
  246. package/Interaction/Widgets/OrientationMarkerWidget.js +90 -135
  247. package/Interaction/Widgets/PiecewiseGaussianWidget/ComputeHistogram.worker.js +0 -3
  248. package/Interaction/Widgets/PiecewiseGaussianWidget.js +381 -498
  249. package/Interaction/Widgets.js +2 -2
  250. package/Interaction/index.js +5 -5
  251. package/Proxy/Animation/AbstractAnimationProxy.js +22 -15
  252. package/Proxy/Animation/AnimationProxyManager.js +43 -51
  253. package/Proxy/Animation/TimeStepBasedAnimationHandlerProxy.js +26 -19
  254. package/Proxy/Core/AbstractRepresentationProxy.js +97 -151
  255. package/Proxy/Core/LookupTableProxy/Constants.js +4 -4
  256. package/Proxy/Core/LookupTableProxy.js +49 -52
  257. package/Proxy/Core/PiecewiseFunctionProxy/Constants.js +4 -4
  258. package/Proxy/Core/PiecewiseFunctionProxy.js +63 -72
  259. package/Proxy/Core/ProxyManager/core.js +83 -106
  260. package/Proxy/Core/ProxyManager/properties.js +53 -76
  261. package/Proxy/Core/ProxyManager/state.js +100 -110
  262. package/Proxy/Core/ProxyManager/view.js +45 -55
  263. package/Proxy/Core/ProxyManager.js +16 -8
  264. package/Proxy/Core/SourceProxy.js +41 -38
  265. package/Proxy/Core/View2DProxy.js +143 -199
  266. package/Proxy/Core/ViewProxy.js +223 -269
  267. package/Proxy/Core.js +7 -7
  268. package/Proxy/Representations/GeometryRepresentationProxy.js +34 -20
  269. package/Proxy/Representations/GlyphRepresentationProxy.js +42 -41
  270. package/Proxy/Representations/MoleculeRepresentationProxy.js +32 -22
  271. package/Proxy/Representations/ResliceRepresentationProxy.js +48 -32
  272. package/Proxy/Representations/SkyboxRepresentationProxy.js +30 -29
  273. package/Proxy/Representations/SliceRepresentationProxy.js +93 -112
  274. package/Proxy/Representations/SlicedGeometryRepresentationProxy.js +46 -42
  275. package/Proxy/Representations/VolumeRepresentationProxy.js +108 -133
  276. package/Proxy/Representations.js +7 -7
  277. package/Proxy/index.js +2 -2
  278. package/Rendering/Core/AbstractImageMapper/helper.js +44 -49
  279. package/Rendering/Core/AbstractImageMapper.js +18 -19
  280. package/Rendering/Core/AbstractMapper.js +39 -55
  281. package/Rendering/Core/AbstractMapper3D.js +26 -31
  282. package/Rendering/Core/AbstractPicker.js +25 -21
  283. package/Rendering/Core/Actor.js +71 -93
  284. package/Rendering/Core/Actor2D.js +64 -78
  285. package/Rendering/Core/AnnotatedCubeActor/Presets.js +5 -11
  286. package/Rendering/Core/AnnotatedCubeActor.js +94 -79
  287. package/Rendering/Core/AxesActor.js +65 -87
  288. package/Rendering/Core/Camera.js +246 -271
  289. package/Rendering/Core/CellPicker.js +125 -148
  290. package/Rendering/Core/ColorTransferFunction/ColorMaps.js +20 -21
  291. package/Rendering/Core/ColorTransferFunction/ColorMapsLite.js +20 -21
  292. package/Rendering/Core/ColorTransferFunction/Constants.js +4 -4
  293. package/Rendering/Core/ColorTransferFunction.js +460 -546
  294. package/Rendering/Core/Coordinate/Constants.js +2 -2
  295. package/Rendering/Core/Coordinate.js +119 -198
  296. package/Rendering/Core/CubeAxesActor.js +294 -320
  297. package/Rendering/Core/Follower.js +46 -45
  298. package/Rendering/Core/Glyph3DMapper/Constants.js +4 -4
  299. package/Rendering/Core/Glyph3DMapper.js +96 -148
  300. package/Rendering/Core/HardwareSelector.js +36 -69
  301. package/Rendering/Core/ImageArrayMapper.js +87 -126
  302. package/Rendering/Core/ImageCPRMapper.js +134 -209
  303. package/Rendering/Core/ImageMapper/Constants.js +2 -2
  304. package/Rendering/Core/ImageMapper.js +92 -170
  305. package/Rendering/Core/ImageProperty/Constants.js +2 -2
  306. package/Rendering/Core/ImageProperty.js +66 -81
  307. package/Rendering/Core/ImageResliceMapper/Constants.js +2 -2
  308. package/Rendering/Core/ImageResliceMapper.js +36 -29
  309. package/Rendering/Core/ImageSlice.js +85 -127
  310. package/Rendering/Core/InteractorObserver.js +82 -73
  311. package/Rendering/Core/InteractorStyle/Constants.js +2 -2
  312. package/Rendering/Core/InteractorStyle.js +56 -58
  313. package/Rendering/Core/Light.js +43 -49
  314. package/Rendering/Core/Mapper/CoincidentTopologyHelper.js +37 -48
  315. package/Rendering/Core/Mapper/Constants.js +6 -6
  316. package/Rendering/Core/Mapper/Static.js +15 -12
  317. package/Rendering/Core/Mapper.js +194 -259
  318. package/Rendering/Core/Mapper2D.js +61 -100
  319. package/Rendering/Core/Picker.js +124 -143
  320. package/Rendering/Core/PixelSpaceCallbackMapper.js +40 -37
  321. package/Rendering/Core/PointPicker.js +68 -79
  322. package/Rendering/Core/Prop/Constants.js +2 -2
  323. package/Rendering/Core/Prop.js +58 -106
  324. package/Rendering/Core/Prop3D.js +54 -83
  325. package/Rendering/Core/Property/Constants.js +6 -6
  326. package/Rendering/Core/Property.js +45 -74
  327. package/Rendering/Core/Property2D/Constants.js +2 -2
  328. package/Rendering/Core/Property2D.js +33 -42
  329. package/Rendering/Core/RenderWindow.js +70 -82
  330. package/Rendering/Core/RenderWindowInteractor/Constants.js +7 -7
  331. package/Rendering/Core/RenderWindowInteractor.js +324 -439
  332. package/Rendering/Core/Renderer.js +193 -257
  333. package/Rendering/Core/ScalarBarActor.js +267 -272
  334. package/Rendering/Core/Skybox.js +26 -24
  335. package/Rendering/Core/SphereMapper.js +22 -12
  336. package/Rendering/Core/StickMapper.js +22 -12
  337. package/Rendering/Core/SurfaceLICInterface/Constants.js +6 -6
  338. package/Rendering/Core/SurfaceLICInterface.js +13 -9
  339. package/Rendering/Core/SurfaceLICMapper.js +23 -15
  340. package/Rendering/Core/Texture.js +99 -141
  341. package/Rendering/Core/Viewport.js +60 -88
  342. package/Rendering/Core/Volume.js +55 -77
  343. package/Rendering/Core/VolumeMapper/Constants.js +4 -4
  344. package/Rendering/Core/VolumeMapper.js +59 -91
  345. package/Rendering/Core/VolumeProperty/Constants.js +4 -4
  346. package/Rendering/Core/VolumeProperty.js +78 -115
  347. package/Rendering/Core.js +47 -49
  348. package/Rendering/Misc/CanvasView.js +62 -61
  349. package/Rendering/Misc/FullScreenRenderWindow.js +60 -62
  350. package/Rendering/Misc/GenericRenderWindow.js +48 -37
  351. package/Rendering/Misc/RemoteView.js +86 -80
  352. package/Rendering/Misc/RenderWindowWithControlBar.js +54 -48
  353. package/Rendering/Misc/SynchronizableRenderWindow/BehaviorManager/CameraSynchronizer.js +43 -51
  354. package/Rendering/Misc/SynchronizableRenderWindow/BehaviorManager.js +52 -82
  355. package/Rendering/Misc/SynchronizableRenderWindow/ObjectManager.js +258 -308
  356. package/Rendering/Misc/SynchronizableRenderWindow.js +133 -163
  357. package/Rendering/Misc/TextureLODsDownloader.js +72 -74
  358. package/Rendering/Misc.js +7 -7
  359. package/Rendering/OpenGL/Actor.js +57 -68
  360. package/Rendering/OpenGL/Actor2D.js +56 -56
  361. package/Rendering/OpenGL/BufferObject/Constants.js +2 -2
  362. package/Rendering/OpenGL/BufferObject.js +50 -65
  363. package/Rendering/OpenGL/Camera.js +35 -29
  364. package/Rendering/OpenGL/CellArrayBufferObject.js +119 -149
  365. package/Rendering/OpenGL/Convolution2DPass.js +87 -81
  366. package/Rendering/OpenGL/CubeAxesActor.js +28 -21
  367. package/Rendering/OpenGL/ForwardPass.js +53 -64
  368. package/Rendering/OpenGL/Framebuffer.js +61 -101
  369. package/Rendering/OpenGL/Glyph3DMapper.js +165 -196
  370. package/Rendering/OpenGL/HardwareSelector/Constants.js +2 -2
  371. package/Rendering/OpenGL/HardwareSelector.js +272 -397
  372. package/Rendering/OpenGL/Helper.js +58 -73
  373. package/Rendering/OpenGL/ImageCPRMapper.js +339 -421
  374. package/Rendering/OpenGL/ImageMapper.js +268 -361
  375. package/Rendering/OpenGL/ImageResliceMapper.js +306 -438
  376. package/Rendering/OpenGL/ImageSlice.js +48 -54
  377. package/Rendering/OpenGL/OrderIndependentTranslucentPass.js +102 -84
  378. package/Rendering/OpenGL/PixelSpaceCallbackMapper.js +43 -42
  379. package/Rendering/OpenGL/PolyDataMapper.js +358 -492
  380. package/Rendering/OpenGL/PolyDataMapper2D.js +153 -205
  381. package/Rendering/OpenGL/RadialDistortionPass.js +86 -89
  382. package/Rendering/OpenGL/RenderWindow/Constants.js +2 -2
  383. package/Rendering/OpenGL/RenderWindow/ContextProxy.js +20 -29
  384. package/Rendering/OpenGL/RenderWindow.js +356 -510
  385. package/Rendering/OpenGL/Renderer.js +77 -89
  386. package/Rendering/OpenGL/ReplacementShaderMapper.js +28 -46
  387. package/Rendering/OpenGL/ScalarBarActor.js +28 -21
  388. package/Rendering/OpenGL/Shader.js +37 -31
  389. package/Rendering/OpenGL/ShaderCache.js +67 -74
  390. package/Rendering/OpenGL/ShaderProgram.js +136 -248
  391. package/Rendering/OpenGL/Skybox.js +99 -60
  392. package/Rendering/OpenGL/SphereMapper.js +94 -108
  393. package/Rendering/OpenGL/StickMapper.js +110 -114
  394. package/Rendering/OpenGL/SurfaceLIC/LineIntegralConvolution2D/pingpong.js +91 -157
  395. package/Rendering/OpenGL/SurfaceLIC/LineIntegralConvolution2D.js +142 -151
  396. package/Rendering/OpenGL/SurfaceLIC/SurfaceLICInterface.js +142 -216
  397. package/Rendering/OpenGL/SurfaceLIC/SurfaceLICMapper.js +79 -100
  398. package/Rendering/OpenGL/SurfaceLIC.js +2 -2
  399. package/Rendering/OpenGL/Texture/Constants.js +4 -4
  400. package/Rendering/OpenGL/Texture.js +444 -609
  401. package/Rendering/OpenGL/TextureUnitManager.js +47 -43
  402. package/Rendering/OpenGL/VertexArrayObject.js +92 -131
  403. package/Rendering/OpenGL/ViewNodeFactory.js +25 -13
  404. package/Rendering/OpenGL/Volume.js +38 -34
  405. package/Rendering/OpenGL/VolumeMapper.js +437 -547
  406. package/Rendering/OpenGL.js +28 -28
  407. package/Rendering/SceneGraph/RenderPass.js +34 -31
  408. package/Rendering/SceneGraph/RenderWindowViewNode.js +68 -94
  409. package/Rendering/SceneGraph/ViewNode.js +82 -111
  410. package/Rendering/SceneGraph/ViewNodeFactory.js +31 -26
  411. package/Rendering/SceneGraph.js +4 -4
  412. package/Rendering/WebGPU/Actor.js +49 -49
  413. package/Rendering/WebGPU/Actor2D.js +45 -44
  414. package/Rendering/WebGPU/BindGroup.js +43 -50
  415. package/Rendering/WebGPU/Buffer.js +41 -50
  416. package/Rendering/WebGPU/BufferManager/Constants.js +4 -4
  417. package/Rendering/WebGPU/BufferManager.js +111 -141
  418. package/Rendering/WebGPU/Camera.js +65 -67
  419. package/Rendering/WebGPU/CellArrayMapper.js +621 -388
  420. package/Rendering/WebGPU/CubeAxesActor.js +28 -19
  421. package/Rendering/WebGPU/Device.js +78 -133
  422. package/Rendering/WebGPU/ForwardPass.js +75 -72
  423. package/Rendering/WebGPU/FullScreenQuad.js +25 -18
  424. package/Rendering/WebGPU/Glyph3DMapper.js +62 -74
  425. package/Rendering/WebGPU/HardwareSelectionPass.js +45 -38
  426. package/Rendering/WebGPU/HardwareSelector.js +200 -276
  427. package/Rendering/WebGPU/ImageMapper.js +180 -171
  428. package/Rendering/WebGPU/ImageSlice.js +45 -44
  429. package/Rendering/WebGPU/IndexBuffer.js +166 -200
  430. package/Rendering/WebGPU/OpaquePass.js +37 -36
  431. package/Rendering/WebGPU/OrderIndependentTranslucentPass.js +72 -45
  432. package/Rendering/WebGPU/Pipeline.js +37 -51
  433. package/Rendering/WebGPU/PixelSpaceCallbackMapper.js +27 -19
  434. package/Rendering/WebGPU/PolyDataMapper.js +50 -53
  435. package/Rendering/WebGPU/PolyDataMapper2D.js +39 -39
  436. package/Rendering/WebGPU/RenderEncoder.js +68 -88
  437. package/Rendering/WebGPU/RenderWindow.js +262 -376
  438. package/Rendering/WebGPU/Renderer.js +224 -208
  439. package/Rendering/WebGPU/Sampler.js +27 -21
  440. package/Rendering/WebGPU/ScalarBarActor.js +28 -19
  441. package/Rendering/WebGPU/ShaderCache.js +43 -41
  442. package/Rendering/WebGPU/ShaderDescription.js +52 -59
  443. package/Rendering/WebGPU/ShaderModule.js +26 -17
  444. package/Rendering/WebGPU/SimpleMapper.js +185 -121
  445. package/Rendering/WebGPU/SphereMapper.js +200 -130
  446. package/Rendering/WebGPU/StickMapper.js +289 -152
  447. package/Rendering/WebGPU/StorageBuffer.js +100 -115
  448. package/Rendering/WebGPU/Texture.js +79 -99
  449. package/Rendering/WebGPU/TextureManager.js +52 -54
  450. package/Rendering/WebGPU/TextureView.js +40 -43
  451. package/Rendering/WebGPU/Types.js +53 -70
  452. package/Rendering/WebGPU/UniformBuffer.js +158 -184
  453. package/Rendering/WebGPU/VertexInput.js +64 -90
  454. package/Rendering/WebGPU/ViewNodeFactory.js +25 -13
  455. package/Rendering/WebGPU/Volume.js +52 -51
  456. package/Rendering/WebGPU/VolumePass.js +218 -239
  457. package/Rendering/WebGPU/VolumePassFSQ.js +625 -306
  458. package/Rendering/WebGPU.js +1 -1
  459. package/Rendering/index.js +5 -5
  460. package/Widgets/Core/AbstractWidget/Constants.js +2 -2
  461. package/Widgets/Core/AbstractWidget.js +49 -58
  462. package/Widgets/Core/AbstractWidgetFactory.js +101 -122
  463. package/Widgets/Core/StateBuilder/boundsMixin.js +23 -28
  464. package/Widgets/Core/StateBuilder/color3Mixin.js +10 -7
  465. package/Widgets/Core/StateBuilder/colorMixin.js +10 -6
  466. package/Widgets/Core/StateBuilder/cornerMixin.js +16 -15
  467. package/Widgets/Core/StateBuilder/directionMixin.js +20 -18
  468. package/Widgets/Core/StateBuilder/manipulatorMixin.js +26 -18
  469. package/Widgets/Core/StateBuilder/nameMixin.js +10 -6
  470. package/Widgets/Core/StateBuilder/orientationMixin.js +19 -16
  471. package/Widgets/Core/StateBuilder/originMixin.js +25 -32
  472. package/Widgets/Core/StateBuilder/scale1Mixin.js +10 -6
  473. package/Widgets/Core/StateBuilder/scale3Mixin.js +10 -6
  474. package/Widgets/Core/StateBuilder/shapeMixin.js +12 -6
  475. package/Widgets/Core/StateBuilder/textMixin.js +10 -6
  476. package/Widgets/Core/StateBuilder/visibleMixin.js +10 -6
  477. package/Widgets/Core/StateBuilder.js +120 -149
  478. package/Widgets/Core/WidgetManager/Constants.js +7 -7
  479. package/Widgets/Core/WidgetManager.js +249 -421
  480. package/Widgets/Core/WidgetState.js +48 -57
  481. package/Widgets/Core.js +5 -5
  482. package/Widgets/Manipulators/AbstractManipulator.js +20 -14
  483. package/Widgets/Manipulators/CPRManipulator.js +55 -71
  484. package/Widgets/Manipulators/LineManipulator.js +31 -28
  485. package/Widgets/Manipulators/PickerManipulator.d.ts +48 -0
  486. package/Widgets/Manipulators/PickerManipulator.js +65 -0
  487. package/Widgets/Manipulators/PlaneManipulator.js +26 -23
  488. package/Widgets/Manipulators/TrackballManipulator.js +39 -35
  489. package/Widgets/Manipulators.js +4 -2
  490. package/Widgets/Representations/ArrowHandleRepresentation.js +148 -162
  491. package/Widgets/Representations/CircleContextRepresentation.js +44 -38
  492. package/Widgets/Representations/ContextRepresentation.js +17 -14
  493. package/Widgets/Representations/ConvexFaceContextRepresentation.js +50 -47
  494. package/Widgets/Representations/CroppingOutlineRepresentation.js +38 -27
  495. package/Widgets/Representations/CubeHandleRepresentation.js +21 -18
  496. package/Widgets/Representations/GlyphRepresentation.js +107 -152
  497. package/Widgets/Representations/HandleRepresentation.js +17 -14
  498. package/Widgets/Representations/ImplicitPlaneRepresentation.js +97 -91
  499. package/Widgets/Representations/LineHandleRepresentation.js +44 -41
  500. package/Widgets/Representations/OutlineContextRepresentation.js +42 -36
  501. package/Widgets/Representations/PolyLineRepresentation.js +60 -75
  502. package/Widgets/Representations/RectangleContextRepresentation.js +42 -37
  503. package/Widgets/Representations/SphereContextRepresentation.js +19 -27
  504. package/Widgets/Representations/SphereHandleRepresentation.js +31 -27
  505. package/Widgets/Representations/SplineContextRepresentation.js +46 -70
  506. package/Widgets/Representations/WidgetRepresentation/Constants.js +2 -2
  507. package/Widgets/Representations/WidgetRepresentation.js +99 -134
  508. package/Widgets/Representations.js +13 -13
  509. package/Widgets/Widgets3D/AngleWidget/behavior.js +41 -63
  510. package/Widgets/Widgets3D/AngleWidget.js +41 -39
  511. package/Widgets/Widgets3D/DistanceWidget/behavior.js +40 -61
  512. package/Widgets/Widgets3D/DistanceWidget.js +38 -36
  513. package/Widgets/Widgets3D/EllipseWidget/behavior.js +14 -19
  514. package/Widgets/Widgets3D/EllipseWidget/state.js +4 -2
  515. package/Widgets/Widgets3D/EllipseWidget.js +37 -26
  516. package/Widgets/Widgets3D/ImageCroppingWidget/behavior.js +26 -56
  517. package/Widgets/Widgets3D/ImageCroppingWidget/helpers.js +14 -17
  518. package/Widgets/Widgets3D/ImageCroppingWidget/state.js +20 -16
  519. package/Widgets/Widgets3D/ImageCroppingWidget.js +80 -98
  520. package/Widgets/Widgets3D/ImplicitPlaneWidget.js +55 -77
  521. package/Widgets/Widgets3D/InteractiveOrientationWidget/behavior.js +17 -18
  522. package/Widgets/Widgets3D/InteractiveOrientationWidget/state.js +15 -7
  523. package/Widgets/Widgets3D/InteractiveOrientationWidget.js +30 -29
  524. package/Widgets/Widgets3D/LabelWidget/behavior.js +37 -62
  525. package/Widgets/Widgets3D/LabelWidget.js +31 -25
  526. package/Widgets/Widgets3D/LineWidget/Constants.js +8 -8
  527. package/Widgets/Widgets3D/LineWidget/behavior.js +77 -114
  528. package/Widgets/Widgets3D/LineWidget/helpers.js +13 -20
  529. package/Widgets/Widgets3D/LineWidget/state.js +2 -1
  530. package/Widgets/Widgets3D/LineWidget.js +39 -35
  531. package/Widgets/Widgets3D/PaintWidget/behavior.js +24 -59
  532. package/Widgets/Widgets3D/PaintWidget.js +39 -37
  533. package/Widgets/Widgets3D/PolyLineWidget/behavior.js +44 -68
  534. package/Widgets/Widgets3D/PolyLineWidget.js +36 -31
  535. package/Widgets/Widgets3D/RectangleWidget/behavior.js +6 -11
  536. package/Widgets/Widgets3D/RectangleWidget/state.js +4 -2
  537. package/Widgets/Widgets3D/RectangleWidget.js +37 -25
  538. package/Widgets/Widgets3D/ResliceCursorWidget/Constants.js +35 -21
  539. package/Widgets/Widgets3D/ResliceCursorWidget/behavior.js +134 -210
  540. package/Widgets/Widgets3D/ResliceCursorWidget/cprBehavior.js +26 -41
  541. package/Widgets/Widgets3D/ResliceCursorWidget/helpers.js +90 -117
  542. package/Widgets/Widgets3D/ResliceCursorWidget/state.js +33 -40
  543. package/Widgets/Widgets3D/ResliceCursorWidget.js +186 -227
  544. package/Widgets/Widgets3D/SeedWidget/behavior.js +82 -0
  545. package/Widgets/Widgets3D/SeedWidget/state.js +18 -0
  546. package/Widgets/Widgets3D/SeedWidget.d.ts +44 -0
  547. package/Widgets/Widgets3D/SeedWidget.js +43 -0
  548. package/Widgets/Widgets3D/ShapeWidget/Constants.js +19 -19
  549. package/Widgets/Widgets3D/ShapeWidget/behavior.js +150 -252
  550. package/Widgets/Widgets3D/ShapeWidget.js +24 -27
  551. package/Widgets/Widgets3D/SphereWidget/behavior.js +35 -69
  552. package/Widgets/Widgets3D/SphereWidget/state.js +9 -5
  553. package/Widgets/Widgets3D/SphereWidget.js +34 -44
  554. package/Widgets/Widgets3D/SplineWidget/behavior.js +85 -120
  555. package/Widgets/Widgets3D/SplineWidget.js +43 -39
  556. package/Widgets/Widgets3D.js +15 -15
  557. package/Widgets/index.js +4 -4
  558. package/_virtual/rollup-plugin-worker-loader__module_Sources/Filters/General/PaintFilter/PaintFilter.worker.js +95 -207
  559. package/_virtual/rollup-plugin-worker-loader__module_Sources/Interaction/Widgets/PiecewiseGaussianWidget/ComputeHistogram.worker.js +0 -3
  560. package/favicon.js +5 -6
  561. package/index.d.ts +4 -2
  562. package/index.js +4 -3
  563. package/macros.js +4 -1931
  564. package/macros2.js +1684 -0
  565. package/package.json +6 -6
  566. package/vtk.js +18 -31
@@ -1,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 };