@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,114 +1,90 @@
1
- import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
- import macro from '../../macros.js';
1
+ import { m as macro } from '../../macros2.js';
3
2
  import vtkAbstractImageInterpolator from './AbstractImageInterpolator.js';
4
3
  import { vtkInterpolationMathRound, vtkInterpolationMathClamp, vtkInterpolationMathMirror, vtkInterpolationMathWrap, vtkInterpolationMathFloor, vtkInterpolationWeights } from './AbstractImageInterpolator/InterpolationInfo.js';
5
4
  import { InterpolationMode, ImageBorderMode } from './AbstractImageInterpolator/Constants.js';
6
5
 
7
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
8
-
9
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
6
+ // ----------------------------------------------------------------------------
10
7
  // vtkImageInterpolator methods
11
8
  // ----------------------------------------------------------------------------
12
9
 
13
10
  function vtkImageInterpolator(publicAPI, model) {
14
11
  // Set our className
15
12
  model.classHierarchy.push('vtkImageInterpolator');
16
-
17
- publicAPI.computeSupportSize = function (matrix) {
18
- var s = 1;
19
-
13
+ publicAPI.computeSupportSize = matrix => {
14
+ let s = 1;
20
15
  if (model.interpolationMode === InterpolationMode.LINEAR) {
21
16
  s = 2;
22
17
  } else if (model.interpolationMode === InterpolationMode.CUBIC) {
23
18
  s = 4;
24
19
  }
25
-
26
- var size = [s, s, s];
27
-
20
+ const size = [s, s, s];
28
21
  if (matrix == null) {
29
22
  return size;
30
- } // TODO CHECK MATRIX
31
-
32
-
23
+ }
24
+ // TODO CHECK MATRIX
33
25
  if (matrix[12] !== 0 || matrix[13] !== 0 || matrix[14] !== 0 || matrix[15] !== 1) {
34
26
  return size;
35
27
  }
36
-
37
- for (var i = 0; i < 3; ++i) {
38
- var integerRow = true;
39
-
40
- for (var j = 0; j < 3; ++j) {
28
+ for (let i = 0; i < 3; ++i) {
29
+ let integerRow = true;
30
+ for (let j = 0; j < 3; ++j) {
41
31
  integerRow = integerRow && Number.isInteger(matrix[4 * i + j]);
42
32
  }
43
-
44
33
  if (integerRow) {
45
34
  size[i] = 1;
46
35
  }
47
36
  }
48
-
49
37
  return size;
50
38
  };
51
-
52
- publicAPI.internalUpdate = function () {
39
+ publicAPI.internalUpdate = () => {
53
40
  model.interpolationInfo.interpolationMode = model.interpolationMode;
54
41
  };
55
-
56
- publicAPI.isSeparable = function () {
57
- return true;
58
- };
59
-
60
- publicAPI.interpolateNearest = function (interpolationInfo, point, value) {
61
- var inExt = interpolationInfo.extent;
62
- var inInc = interpolationInfo.increments;
63
- var numscalars = interpolationInfo.numberOfComponents;
64
- var inIdX0 = vtkInterpolationMathRound(point[0]);
65
- var inIdY0 = vtkInterpolationMathRound(point[1]);
66
- var inIdZ0 = vtkInterpolationMathRound(point[2]);
67
-
42
+ publicAPI.isSeparable = () => true;
43
+ publicAPI.interpolateNearest = (interpolationInfo, point, value) => {
44
+ const inExt = interpolationInfo.extent;
45
+ const inInc = interpolationInfo.increments;
46
+ const numscalars = interpolationInfo.numberOfComponents;
47
+ let inIdX0 = vtkInterpolationMathRound(point[0]);
48
+ let inIdY0 = vtkInterpolationMathRound(point[1]);
49
+ let inIdZ0 = vtkInterpolationMathRound(point[2]);
68
50
  switch (interpolationInfo.borderMode) {
69
51
  case ImageBorderMode.REPEAT:
70
52
  inIdX0 = vtkInterpolationMathWrap(inIdX0, inExt[0], inExt[1]);
71
53
  inIdY0 = vtkInterpolationMathWrap(inIdY0, inExt[2], inExt[3]);
72
54
  inIdZ0 = vtkInterpolationMathWrap(inIdZ0, inExt[4], inExt[5]);
73
55
  break;
74
-
75
56
  case ImageBorderMode.MIRROR:
76
57
  inIdX0 = vtkInterpolationMathMirror(inIdX0, inExt[0], inExt[1]);
77
58
  inIdY0 = vtkInterpolationMathMirror(inIdY0, inExt[2], inExt[3]);
78
59
  inIdZ0 = vtkInterpolationMathMirror(inIdZ0, inExt[4], inExt[5]);
79
60
  break;
80
-
81
61
  default:
82
62
  inIdX0 = vtkInterpolationMathClamp(inIdX0, inExt[0], inExt[1]);
83
63
  inIdY0 = vtkInterpolationMathClamp(inIdY0, inExt[2], inExt[3]);
84
64
  inIdZ0 = vtkInterpolationMathClamp(inIdZ0, inExt[4], inExt[5]);
85
65
  break;
86
66
  }
87
-
88
- var startId = inIdX0 * inInc[0] + inIdY0 * inInc[1] + inIdZ0 * inInc[2];
89
-
90
- for (var i = 0; i < numscalars; ++i) {
67
+ const startId = inIdX0 * inInc[0] + inIdY0 * inInc[1] + inIdZ0 * inInc[2];
68
+ for (let i = 0; i < numscalars; ++i) {
91
69
  value[i] = interpolationInfo.pointer[startId + i];
92
70
  }
93
71
  };
94
-
95
- publicAPI.interpolateLinear = function (interpolationInfo, point, value) {
96
- var inExt = interpolationInfo.extent;
97
- var inInc = interpolationInfo.increments;
98
- var numscalars = interpolationInfo.numberOfComponents;
99
- var floorX = vtkInterpolationMathFloor(point[0]);
100
- var floorY = vtkInterpolationMathFloor(point[1]);
101
- var floorZ = vtkInterpolationMathFloor(point[2]);
102
- var inIdX0 = floorX.floored;
103
- var inIdY0 = floorY.floored;
104
- var inIdZ0 = floorZ.floored;
105
- var fx = floorX.error;
106
- var fy = floorY.error;
107
- var fz = floorZ.error;
108
- var inIdX1 = inIdX0 + (fx !== 0);
109
- var inIdY1 = inIdY0 + (fy !== 0);
110
- var inIdZ1 = inIdZ0 + (fz !== 0);
111
-
72
+ publicAPI.interpolateLinear = (interpolationInfo, point, value) => {
73
+ const inExt = interpolationInfo.extent;
74
+ const inInc = interpolationInfo.increments;
75
+ const numscalars = interpolationInfo.numberOfComponents;
76
+ const floorX = vtkInterpolationMathFloor(point[0]);
77
+ const floorY = vtkInterpolationMathFloor(point[1]);
78
+ const floorZ = vtkInterpolationMathFloor(point[2]);
79
+ let inIdX0 = floorX.floored;
80
+ let inIdY0 = floorY.floored;
81
+ let inIdZ0 = floorZ.floored;
82
+ const fx = floorX.error;
83
+ const fy = floorY.error;
84
+ const fz = floorZ.error;
85
+ let inIdX1 = inIdX0 + (fx !== 0);
86
+ let inIdY1 = inIdY0 + (fy !== 0);
87
+ let inIdZ1 = inIdZ0 + (fz !== 0);
112
88
  switch (interpolationInfo.borderMode) {
113
89
  case ImageBorderMode.REPEAT:
114
90
  inIdX0 = vtkInterpolationMathWrap(inIdX0, inExt[0], inExt[1]);
@@ -118,7 +94,6 @@ function vtkImageInterpolator(publicAPI, model) {
118
94
  inIdY1 = vtkInterpolationMathWrap(inIdY1, inExt[2], inExt[3]);
119
95
  inIdZ1 = vtkInterpolationMathWrap(inIdZ1, inExt[4], inExt[5]);
120
96
  break;
121
-
122
97
  case ImageBorderMode.MIRROR:
123
98
  inIdX0 = vtkInterpolationMathMirror(inIdX0, inExt[0], inExt[1]);
124
99
  inIdY0 = vtkInterpolationMathMirror(inIdY0, inExt[2], inExt[3]);
@@ -127,7 +102,6 @@ function vtkImageInterpolator(publicAPI, model) {
127
102
  inIdY1 = vtkInterpolationMathMirror(inIdY1, inExt[2], inExt[3]);
128
103
  inIdZ1 = vtkInterpolationMathMirror(inIdZ1, inExt[4], inExt[5]);
129
104
  break;
130
-
131
105
  default:
132
106
  inIdX0 = vtkInterpolationMathClamp(inIdX0, inExt[0], inExt[1]);
133
107
  inIdY0 = vtkInterpolationMathClamp(inIdY0, inExt[2], inExt[3]);
@@ -137,334 +111,302 @@ function vtkImageInterpolator(publicAPI, model) {
137
111
  inIdZ1 = vtkInterpolationMathClamp(inIdZ1, inExt[4], inExt[5]);
138
112
  break;
139
113
  }
140
-
141
- var factX0 = inIdX0 * inInc[0];
142
- var factX1 = inIdX1 * inInc[0];
143
- var factY0 = inIdY0 * inInc[1];
144
- var factY1 = inIdY1 * inInc[1];
145
- var factZ0 = inIdZ0 * inInc[2];
146
- var factZ1 = inIdZ1 * inInc[2];
147
- var i00 = factY0 + factZ0;
148
- var i01 = factY0 + factZ1;
149
- var i10 = factY1 + factZ0;
150
- var i11 = factY1 + factZ1;
151
- var rx = 1 - fx;
152
- var ry = 1 - fy;
153
- var rz = 1 - fz;
154
- var ryrz = ry * rz;
155
- var fyrz = fy * rz;
156
- var ryfz = ry * fz;
157
- var fyfz = fy * fz;
158
- var inPtr = interpolationInfo.pointer;
159
-
160
- for (var i = 0; i < numscalars; ++i) {
114
+ const factX0 = inIdX0 * inInc[0];
115
+ const factX1 = inIdX1 * inInc[0];
116
+ const factY0 = inIdY0 * inInc[1];
117
+ const factY1 = inIdY1 * inInc[1];
118
+ const factZ0 = inIdZ0 * inInc[2];
119
+ const factZ1 = inIdZ1 * inInc[2];
120
+ const i00 = factY0 + factZ0;
121
+ const i01 = factY0 + factZ1;
122
+ const i10 = factY1 + factZ0;
123
+ const i11 = factY1 + factZ1;
124
+ const rx = 1 - fx;
125
+ const ry = 1 - fy;
126
+ const rz = 1 - fz;
127
+ const ryrz = ry * rz;
128
+ const fyrz = fy * rz;
129
+ const ryfz = ry * fz;
130
+ const fyfz = fy * fz;
131
+ const inPtr = interpolationInfo.pointer;
132
+ for (let i = 0; i < numscalars; ++i) {
161
133
  value[i] = rx * (ryrz * inPtr[factX0 + i00 + i * 4] + ryfz * inPtr[factX0 + i01 + i * 4] + fyrz * inPtr[factX0 + i10 + i * 4] + fyfz * inPtr[factX0 + i11 + i * 4]) + fx * (ryrz * inPtr[factX1 + i00 + i * 4] + ryfz * inPtr[factX1 + i01 + i * 4] + fyrz * inPtr[factX1 + i10 + i * 4] + fyfz * inPtr[factX1 + i11 + i * 4]);
162
134
  }
163
135
  };
164
-
165
- publicAPI.interpolatePoint = function (interpolationInfo, point, value) {
136
+ publicAPI.interpolatePoint = (interpolationInfo, point, value) => {
166
137
  switch (model.interpolationMode) {
167
138
  case InterpolationMode.LINEAR:
168
139
  publicAPI.interpolateLinear(interpolationInfo, point, value);
169
140
  break;
170
-
171
141
  case InterpolationMode.CUBIC:
172
142
  console.log('CUBIC not implemented');
173
143
  break;
174
-
175
144
  case InterpolationMode.NEAREST:
176
145
  default:
177
146
  publicAPI.interpolateNearest(interpolationInfo, point, value);
178
147
  break;
179
148
  }
180
149
  };
181
-
182
- publicAPI.interpolateRowNearest = function (weights, idX, idY, idZ, outPtr, n) {
150
+ publicAPI.interpolateRowNearest = (weights, idX, idY, idZ, outPtr, n) => {
183
151
  // TODO check pointers
184
- var iX = weights.positions[0].subarray(idX);
185
- var iY = weights.positions[1].subarray(idY);
186
- var iZ = weights.positions[2].subarray(idZ);
187
- var inPtr0 = weights.pointer.subarray(iY[0] + iZ[0]); // get the number of components per pixel
152
+ const iX = weights.positions[0].subarray(idX);
153
+ const iY = weights.positions[1].subarray(idY);
154
+ const iZ = weights.positions[2].subarray(idZ);
155
+ const inPtr0 = weights.pointer.subarray(iY[0] + iZ[0]);
188
156
 
189
- var numscalars = weights.numberOfComponents; // This is a hot loop.
157
+ // get the number of components per pixel
158
+ const numscalars = weights.numberOfComponents;
190
159
 
191
- for (var i = 0; i < n; ++i) {
160
+ // This is a hot loop.
161
+ for (let i = 0; i < n; ++i) {
192
162
  outPtr.set(inPtr0.subarray(iX[i], numscalars), i * numscalars);
193
163
  }
194
164
  };
195
-
196
- publicAPI.interpolateRowLinear = function (weights, idX, idY, idZ, outPtr, n) {
197
- var stepX = weights.kernelSize[0];
198
- var stepY = weights.kernelSize[1];
199
- var stepZ = weights.kernelSize[2];
200
- var idXtemp = idX * stepX;
201
- var idYtemp = idY * stepY;
202
- var idZtemp = idZ * stepZ;
203
- var fX = weights.weights[0].subarray(idXtemp);
204
- var fY = weights.weights[1].subarray(idYtemp);
205
- var fZ = weights.weights[2].subarray(idZtemp);
206
- var iX = weights.positions[0].subarray(idXtemp);
207
- var iY = weights.positions[1].subarray(idYtemp);
208
- var iZ = weights.positions[2].subarray(idZtemp);
209
- var inPtr = weights.pointer; // get the number of components per pixel
210
-
211
- var numscalars = weights.numberOfComponents; // create a 2x2 bilinear kernel in local variables
212
-
213
- var i00 = iY.subarray(iZ[0]);
214
- var i01 = i00;
215
- var i10 = i00;
216
- var i11 = i00;
217
- var ry = 1;
218
- var fy = 0;
219
- var rz = 1;
220
- var fz = 0;
221
-
165
+ publicAPI.interpolateRowLinear = (weights, idX, idY, idZ, outPtr, n) => {
166
+ const stepX = weights.kernelSize[0];
167
+ const stepY = weights.kernelSize[1];
168
+ const stepZ = weights.kernelSize[2];
169
+ const idXtemp = idX * stepX;
170
+ const idYtemp = idY * stepY;
171
+ const idZtemp = idZ * stepZ;
172
+ const fX = weights.weights[0].subarray(idXtemp);
173
+ const fY = weights.weights[1].subarray(idYtemp);
174
+ const fZ = weights.weights[2].subarray(idZtemp);
175
+ const iX = weights.positions[0].subarray(idXtemp);
176
+ const iY = weights.positions[1].subarray(idYtemp);
177
+ const iZ = weights.positions[2].subarray(idZtemp);
178
+ const inPtr = weights.pointer;
179
+
180
+ // get the number of components per pixel
181
+ const numscalars = weights.numberOfComponents;
182
+
183
+ // create a 2x2 bilinear kernel in local variables
184
+ const i00 = iY.subarray(iZ[0]);
185
+ let i01 = i00;
186
+ let i10 = i00;
187
+ let i11 = i00;
188
+ let ry = 1;
189
+ let fy = 0;
190
+ let rz = 1;
191
+ let fz = 0;
222
192
  if (stepY === 2) {
223
193
  i10 = iY[1].subarray(iZ[0]);
224
194
  i11 = i10;
225
195
  ry = fY[0];
226
196
  fy = fY[1];
227
197
  }
228
-
229
198
  if (stepZ === 2) {
230
199
  i01 = iY[0].subarray(iZ[1]);
231
200
  i11 = i01;
232
201
  rz = fZ[0];
233
202
  fz = fZ[1];
234
203
  }
235
-
236
204
  if (stepY + stepZ === 4) {
237
205
  i11 = iY[1].subarray(iZ[1]);
238
206
  }
239
-
240
- var ryrz = ry * rz;
241
- var ryfz = ry * fz;
242
- var fyrz = fy * rz;
243
- var fyfz = fy * fz;
244
-
207
+ const ryrz = ry * rz;
208
+ const ryfz = ry * fz;
209
+ const fyrz = fy * rz;
210
+ const fyfz = fy * fz;
245
211
  if (stepX === 1) {
246
212
  if (fy === 0 && fz === 0) {
247
213
  // no interpolation needed at all
248
- for (var i = n; i > 0; --i) {
249
- for (var j = 0; j < numscalars; j++) {
214
+ for (let i = n; i > 0; --i) {
215
+ for (let j = 0; j < numscalars; j++) {
250
216
  outPtr[j + n - i] = inPtr[i00 + iX[n - i] + j];
251
217
  }
252
218
  }
253
219
  } else if (fy === 0) {
254
220
  // only need linear z interpolation
255
- for (var _i = n; _i > 0; --_i) {
256
- for (var _j = 0; _j < numscalars; _j++) {
257
- outPtr[_j + n - _i] = rz * inPtr[iX[n - _i] + i00 + _j * 4] + fz * inPtr[iX[n - _i] + i01 + _j * 4];
221
+ for (let i = n; i > 0; --i) {
222
+ for (let j = 0; j < numscalars; j++) {
223
+ outPtr[j + n - i] = rz * inPtr[iX[n - i] + i00 + j * 4] + fz * inPtr[iX[n - i] + i01 + j * 4];
258
224
  }
259
225
  }
260
226
  } else {
261
227
  // interpolate in y and z but not in x
262
- for (var _i2 = n; _i2 > 0; --_i2) {
263
- for (var _j2 = 0; _j2 < numscalars; _j2++) {
264
- outPtr[_j2 + n - _i2] = ryrz * inPtr[iX[n - _i2] + i00 + _j2 * 4] + ryfz * inPtr[iX[n - _i2] + i01 + _j2 * 4] + fyrz * inPtr[iX[n - _i2] + i10 + _j2 * 4] + fyfz * inPtr[iX[n - _i2] + i11 + _j2 * 4];
228
+ for (let i = n; i > 0; --i) {
229
+ for (let j = 0; j < numscalars; j++) {
230
+ outPtr[j + n - i] = ryrz * inPtr[iX[n - i] + i00 + j * 4] + ryfz * inPtr[iX[n - i] + i01 + j * 4] + fyrz * inPtr[iX[n - i] + i10 + j * 4] + fyfz * inPtr[iX[n - i] + i11 + j * 4];
265
231
  }
266
232
  }
267
233
  }
268
234
  } else if (fz === 0) {
269
- var x = 0; // bilinear interpolation in x,y
270
-
271
- for (var _i3 = n; _i3 > 0; --_i3) {
272
- var rx = fX[0 + 2 * x];
273
- var fx = fX[1 + 2 * x];
274
- var t0 = iX[0 + 2 * x];
275
- var t1 = iX[1 + 2 * x];
276
-
277
- for (var _j3 = 0; _j3 < numscalars; _j3++) {
278
- outPtr[_j3 + n - _i3] = rx * (ry * inPtr[t0 + i00 + _j3 * 4] + fy * inPtr[t0 + i10 + _j3 * 4]) + fx * (ry * inPtr[t1 + i00 + _j3 * 4] + fy * inPtr[t1 + i10 + _j3 * 4]);
235
+ let x = 0;
236
+ // bilinear interpolation in x,y
237
+ for (let i = n; i > 0; --i) {
238
+ const rx = fX[0 + 2 * x];
239
+ const fx = fX[1 + 2 * x];
240
+ const t0 = iX[0 + 2 * x];
241
+ const t1 = iX[1 + 2 * x];
242
+ for (let j = 0; j < numscalars; j++) {
243
+ outPtr[j + n - i] = rx * (ry * inPtr[t0 + i00 + j * 4] + fy * inPtr[t0 + i10 + j * 4]) + fx * (ry * inPtr[t1 + i00 + j * 4] + fy * inPtr[t1 + i10 + j * 4]);
279
244
  }
280
-
281
245
  x++;
282
246
  }
283
247
  } else {
284
- var _x = 0; // do full trilinear interpolation
285
-
286
- for (var _i4 = n; _i4 > 0; --_i4) {
287
- var _rx = fX[0 + 2 * _x];
288
- var _fx = fX[1 + 2 * _x];
289
- var _t = iX[0 + 2 * _x];
290
- var _t2 = iX[1 + 2 * _x];
291
-
292
- for (var _j4 = 0; _j4 < numscalars; _j4++) {
293
- outPtr[_j4] = _rx * (ryrz * inPtr[_t + i00 + _j4 * 4] + ryfz * inPtr[_t + i01 + _j4 * 4] + fyrz * inPtr[_t + i10 + _j4 * 4] + fyfz * inPtr[_t + i11 + _j4 * 4]) + _fx * (ryrz * inPtr[_t2 + i00 + _j4 * 4] + ryfz * inPtr[_t2 + i01 + _j4 * 4] + fyrz * inPtr[_t2 + i10 + _j4 * 4] + fyfz * inPtr[_t2 + i11 + _j4 * 4]);
248
+ let x = 0;
249
+ // do full trilinear interpolation
250
+ for (let i = n; i > 0; --i) {
251
+ const rx = fX[0 + 2 * x];
252
+ const fx = fX[1 + 2 * x];
253
+ const t0 = iX[0 + 2 * x];
254
+ const t1 = iX[1 + 2 * x];
255
+ for (let j = 0; j < numscalars; j++) {
256
+ outPtr[j] = rx * (ryrz * inPtr[t0 + i00 + j * 4] + ryfz * inPtr[t0 + i01 + j * 4] + fyrz * inPtr[t0 + i10 + j * 4] + fyfz * inPtr[t0 + i11 + j * 4]) + fx * (ryrz * inPtr[t1 + i00 + j * 4] + ryfz * inPtr[t1 + i01 + j * 4] + fyrz * inPtr[t1 + i10 + j * 4] + fyfz * inPtr[t1 + i11 + j * 4]);
294
257
  }
295
-
296
- _x++;
258
+ x++;
297
259
  }
298
260
  }
299
261
  };
300
-
301
- publicAPI.interpolateRow = function (weights, xIdx, yIdx, zIdx, value, n) {
262
+ publicAPI.interpolateRow = (weights, xIdx, yIdx, zIdx, value, n) => {
302
263
  switch (model.interpolationMode) {
303
264
  case InterpolationMode.LINEAR:
304
265
  publicAPI.interpolateRowLinear(weights, xIdx, yIdx, zIdx, value, n);
305
266
  break;
306
-
307
267
  case InterpolationMode.CUBIC:
308
268
  console.log('CUBIC not implemented');
309
269
  break;
310
-
311
270
  case InterpolationMode.NEAREST:
312
271
  default:
313
272
  publicAPI.interpolateRowNearest(weights, xIdx, yIdx, zIdx, value, n);
314
273
  break;
315
274
  }
316
275
  };
276
+ publicAPI.vtkTricubicInterpWeights = f => {
277
+ const half = 0.5;
317
278
 
318
- publicAPI.vtkTricubicInterpWeights = function (f) {
319
- var half = 0.5; // cubic interpolation
320
-
321
- var fm1 = f - 1;
322
- var fd2 = f * half;
323
- var ft3 = f * 3;
279
+ // cubic interpolation
280
+ const fm1 = f - 1;
281
+ const fd2 = f * half;
282
+ const ft3 = f * 3;
324
283
  return [-fd2 * fm1 * fm1, ((ft3 - 2) * fd2 - 1) * fm1, -((ft3 - 4) * f - 1) * fd2, f * fd2 * fm1];
325
284
  };
326
-
327
- publicAPI.precomputeWeightsForExtent = function (matrix, outExt, clipExt) {
328
- var weights = _objectSpread(_objectSpread({}, vtkInterpolationWeights.newInstance()), model.interpolationInfo);
329
-
285
+ publicAPI.precomputeWeightsForExtent = (matrix, outExt, clipExt) => {
286
+ const weights = {
287
+ ...vtkInterpolationWeights.newInstance(),
288
+ ...model.interpolationInfo
289
+ };
330
290
  weights.weightType = 'Float32Array';
331
- var interpMode = weights.interpolationMode;
332
- var validClip = true;
333
-
334
- for (var j = 0; j < 3; ++j) {
291
+ const interpMode = weights.interpolationMode;
292
+ let validClip = true;
293
+ for (let j = 0; j < 3; ++j) {
335
294
  // set k to the row for which the element in column j is nonzero
336
- var k = void 0;
337
-
295
+ let k;
338
296
  for (k = 0; k < 3; ++k) {
339
297
  if (matrix[4 * j + k] !== 0) {
340
298
  break;
341
299
  }
342
- } // get the extents
343
-
300
+ }
344
301
 
302
+ // get the extents
345
303
  clipExt[2 * j] = outExt[2 * j];
346
304
  clipExt[2 * j + 1] = outExt[2 * j + 1];
347
- var minExt = weights.extent[2 * k];
348
- var maxExt = weights.extent[2 * k + 1];
349
- var minBounds = model.structuredBounds[2 * k];
350
- var maxBounds = model.structuredBounds[2 * k + 1]; // the kernel size should not exceed the input dimension
305
+ const minExt = weights.extent[2 * k];
306
+ const maxExt = weights.extent[2 * k + 1];
307
+ const minBounds = model.structuredBounds[2 * k];
308
+ const maxBounds = model.structuredBounds[2 * k + 1];
351
309
 
352
- var step = 1;
310
+ // the kernel size should not exceed the input dimension
311
+ let step = 1;
353
312
  step = interpMode < InterpolationMode.LINEAR ? step : 2;
354
313
  step = interpMode < InterpolationMode.CUBIC ? step : 4;
355
- var inCount = maxExt - minExt + 1;
356
- step = step < inCount ? step : inCount; // if output pixels lie exactly on top of the input pixels
314
+ const inCount = maxExt - minExt + 1;
315
+ step = step < inCount ? step : inCount;
357
316
 
317
+ // if output pixels lie exactly on top of the input pixels
358
318
  if (Number.isInteger(matrix[4 * j + k]) && Number.isInteger(matrix[4 * k + k])) {
359
319
  step = 1;
360
320
  }
361
-
362
- var size = step * (outExt[2 * j + 1] - outExt[2 * j] + 1); // TODO: check pointers
363
-
364
- var positions = new Int16Array(size); // positions -= step*outExt[2 * j];
365
-
366
- var startPositions = step * outExt[2 * j];
367
- var constants = null;
368
-
321
+ const size = step * (outExt[2 * j + 1] - outExt[2 * j] + 1);
322
+ // TODO: check pointers
323
+ const positions = new Int16Array(size);
324
+ // positions -= step*outExt[2 * j];
325
+ const startPositions = step * outExt[2 * j];
326
+ let constants = null;
369
327
  if (interpMode !== InterpolationMode.NEAREST) {
370
- constants = new Int16Array(size); // constants -= step * outExt[2 * j];
328
+ constants = new Int16Array(size);
329
+ // constants -= step * outExt[2 * j];
371
330
  }
372
331
 
373
332
  weights.kernelSize[j] = step;
374
333
  weights.weightExtent[2 * j] = outExt[2 * j];
375
334
  weights.weightExtent[2 * j + 1] = outExt[2 * j + 1];
376
335
  weights.positions[j] = positions; // TODO: check pointers
377
-
378
336
  weights.weights[j] = constants; // TODO: check pointers
379
337
 
380
- var region = 0;
381
-
382
- for (var i = outExt[2 * j]; i <= outExt[2 * j + 1]; ++i) {
383
- var point = matrix[4 * 3 + k] + i * matrix[4 * j + k];
384
- var lcount = step;
385
- var inId0 = 0;
386
- var f = 0;
387
-
338
+ let region = 0;
339
+ for (let i = outExt[2 * j]; i <= outExt[2 * j + 1]; ++i) {
340
+ const point = matrix[4 * 3 + k] + i * matrix[4 * j + k];
341
+ let lcount = step;
342
+ let inId0 = 0;
343
+ let f = 0;
388
344
  if (interpMode === InterpolationMode.NEAREST) {
389
345
  inId0 = Math.round(point);
390
346
  } else {
391
- var res = vtkInterpolationMathFloor(point);
347
+ const res = vtkInterpolationMathFloor(point);
392
348
  inId0 = res.integer;
393
349
  f = res.error;
394
-
395
350
  if (interpMode === InterpolationMode.CUBIC && step !== 1) {
396
351
  inId0--;
397
352
  lcount = 4;
398
353
  }
399
354
  }
400
-
401
- var inId = [0, 0, 0, 0];
402
- var l = 0;
403
-
355
+ const inId = [0, 0, 0, 0];
356
+ let l = 0;
404
357
  switch (weights.borderMode) {
405
358
  case ImageBorderMode.REPEAT:
406
359
  do {
407
360
  inId[l] = vtkInterpolationMathWrap(inId0, minExt, maxExt);
408
361
  inId0++;
409
362
  } while (++l < lcount);
410
-
411
363
  break;
412
-
413
364
  case ImageBorderMode.MIRROR:
414
365
  do {
415
366
  inId[l] = vtkInterpolationMathMirror(inId0, minExt, maxExt);
416
367
  inId0++;
417
368
  } while (++l < lcount);
418
-
419
369
  break;
420
-
421
370
  default:
422
371
  do {
423
372
  inId[l] = vtkInterpolationMathClamp(inId0, minExt, maxExt);
424
373
  inId0++;
425
374
  } while (++l < lcount);
426
-
427
375
  break;
428
- } // compute the weights and offsets
429
-
376
+ }
430
377
 
431
- var inInc = weights.increments[k];
378
+ // compute the weights and offsets
379
+ const inInc = weights.increments[k];
432
380
  positions[step * i - startPositions] = inId[0] * inInc;
433
-
434
381
  if (interpMode !== InterpolationMode.NEAREST) {
435
382
  constants[step * i - startPositions] = 1;
436
383
  }
437
-
438
384
  if (step > 1) {
439
385
  if (interpMode === InterpolationMode.LINEAR) {
440
386
  positions[step * i + 1 - startPositions] = inId[1] * inInc;
441
387
  constants[step * i - startPositions] = 1.0 - f;
442
388
  constants[step * i + 1 - startPositions] = f;
443
389
  } else if (interpMode === InterpolationMode.CUBIC) {
444
- var g = publicAPI.vtkTricubicInterpWeights(f);
445
-
390
+ const g = publicAPI.vtkTricubicInterpWeights(f);
446
391
  if (step === 4) {
447
- for (var ll = 0; ll < 4; ll++) {
392
+ for (let ll = 0; ll < 4; ll++) {
448
393
  positions[step * i + ll - startPositions] = inId[ll] * inInc;
449
394
  constants[step * i + ll - startPositions] = g[ll];
450
395
  }
451
396
  } else {
452
397
  // it gets tricky if there are fewer than 4 slices
453
- var gg = [0, 0, 0, 0];
454
-
455
- for (var _ll = 0; _ll < 4; _ll++) {
456
- var rIdx = inId[_ll] - minExt;
457
- gg[rIdx] += g[_ll];
398
+ const gg = [0, 0, 0, 0];
399
+ for (let ll = 0; ll < 4; ll++) {
400
+ const rIdx = inId[ll] - minExt;
401
+ gg[rIdx] += g[ll];
458
402
  }
459
-
460
- for (var jj = 0; jj < step; jj++) {
403
+ for (let jj = 0; jj < step; jj++) {
461
404
  positions[step * i + jj - startPositions] = minExt + jj;
462
405
  constants[step * i + jj - startPositions] = gg[jj];
463
406
  }
464
407
  }
465
408
  }
466
409
  }
467
-
468
410
  if (point >= minBounds && point <= maxBounds) {
469
411
  if (region === 0) {
470
412
  // entering the input extent
@@ -477,45 +419,52 @@ function vtkImageInterpolator(publicAPI, model) {
477
419
  clipExt[2 * j + 1] = i - 1;
478
420
  }
479
421
  }
480
-
481
422
  if (region === 0 || clipExt[2 * j] > clipExt[2 * j + 1]) {
482
423
  // never entered input extent!
483
424
  validClip = false;
484
425
  }
485
426
  }
486
-
487
427
  if (!validClip) {
488
428
  // output extent doesn't itersect input extent
489
- for (var _j5 = 0; _j5 < 3; _j5++) {
490
- clipExt[2 * _j5] = outExt[2 * _j5];
491
- clipExt[2 * _j5 + 1] = outExt[2 * _j5] - 1;
429
+ for (let j = 0; j < 3; j++) {
430
+ clipExt[2 * j] = outExt[2 * j];
431
+ clipExt[2 * j + 1] = outExt[2 * j] - 1;
492
432
  }
493
433
  }
494
434
  };
495
- } // ----------------------------------------------------------------------------
435
+ }
436
+
437
+ // ----------------------------------------------------------------------------
496
438
  // Object factory
497
439
  // ----------------------------------------------------------------------------
498
440
 
499
-
500
- var DEFAULT_VALUES = {
441
+ const DEFAULT_VALUES = {
501
442
  interpolationMode: InterpolationMode.NEAREST
502
- }; // ----------------------------------------------------------------------------
443
+ };
444
+
445
+ // ----------------------------------------------------------------------------
503
446
 
504
447
  function extend(publicAPI, model) {
505
- var initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
506
- Object.assign(model, DEFAULT_VALUES, initialValues); // Inheritance
448
+ let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
449
+ Object.assign(model, DEFAULT_VALUES, initialValues);
507
450
 
451
+ // Inheritance
508
452
  vtkAbstractImageInterpolator.extend(publicAPI, model, initialValues);
509
- macro.setGet(publicAPI, model, ['interpolationMode']); // Object specific methods
453
+ macro.setGet(publicAPI, model, ['interpolationMode']);
510
454
 
455
+ // Object specific methods
511
456
  vtkImageInterpolator(publicAPI, model);
512
- } // ----------------------------------------------------------------------------
457
+ }
458
+
459
+ // ----------------------------------------------------------------------------
513
460
 
514
- var newInstance = macro.newInstance(extend, 'vtkImageInterpolator'); // ----------------------------------------------------------------------------
461
+ const newInstance = macro.newInstance(extend, 'vtkImageInterpolator');
462
+
463
+ // ----------------------------------------------------------------------------
515
464
 
516
465
  var vtkImageInterpolator$1 = {
517
- newInstance: newInstance,
518
- extend: extend
466
+ newInstance,
467
+ extend
519
468
  };
520
469
 
521
470
  export { vtkImageInterpolator$1 as default, extend, newInstance };