@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,7 +1,7 @@
1
1
  import '../../Common/DataModel/ImageData.js';
2
2
  import '../../Common/DataModel/PolyData.js';
3
3
  import vtk from '../../vtk.js';
4
- import macro from '../../macros.js';
4
+ import { m as macro } from '../../macros2.js';
5
5
  import DataAccessHelper from './DataAccessHelper.js';
6
6
  import vtkDataArray from '../../Common/Core/DataArray.js';
7
7
  import vtkStringArray from '../../Common/Core/StringArray.js';
@@ -12,315 +12,312 @@ import './DataAccessHelper/LiteHttpDataAccessHelper.js';
12
12
  // import 'vtk.js/Sources/IO/Core/DataAccessHelper/HtmlDataAccessHelper'; // html + base64 + zip
13
13
  // import 'vtk.js/Sources/IO/Core/DataAccessHelper/JSZipDataAccessHelper'; // zip
14
14
 
15
- var fieldDataLocations = ['pointData', 'cellData', 'fieldData'];
16
- var ARRAY_BUILDERS = {
17
- vtkDataArray: vtkDataArray,
18
- vtkStringArray: vtkStringArray
19
- }; // ----------------------------------------------------------------------------
15
+ const fieldDataLocations = ['pointData', 'cellData', 'fieldData'];
16
+ const ARRAY_BUILDERS = {
17
+ vtkDataArray,
18
+ vtkStringArray
19
+ };
20
+
21
+ // ----------------------------------------------------------------------------
20
22
  // Global methods
21
23
  // ----------------------------------------------------------------------------
22
24
 
23
- var cachedArrays = {};
24
- var GEOMETRY_ARRAYS = {
25
- vtkPolyData: function vtkPolyData(dataset) {
26
- var arrayToDownload = [];
25
+ const cachedArrays = {};
26
+ const GEOMETRY_ARRAYS = {
27
+ vtkPolyData(dataset) {
28
+ const arrayToDownload = [];
27
29
  arrayToDownload.push(dataset.points);
28
- ['verts', 'lines', 'polys', 'strips'].forEach(function (cellName) {
30
+ ['verts', 'lines', 'polys', 'strips'].forEach(cellName => {
29
31
  if (dataset[cellName]) {
30
32
  arrayToDownload.push(dataset[cellName]);
31
33
  }
32
34
  });
33
35
  return arrayToDownload;
34
36
  },
35
- vtkImageData: function vtkImageData(dataset) {
37
+ vtkImageData(dataset) {
36
38
  return [];
37
39
  },
38
- vtkUnstructuredGrid: function vtkUnstructuredGrid(dataset) {
39
- var arrayToDownload = [];
40
+ vtkUnstructuredGrid(dataset) {
41
+ const arrayToDownload = [];
40
42
  arrayToDownload.push(dataset.points);
41
43
  arrayToDownload.push(dataset.cells);
42
44
  arrayToDownload.push(dataset.cellTypes);
43
45
  return arrayToDownload;
44
46
  },
45
- vtkRectilinearGrid: function vtkRectilinearGrid(dataset) {
46
- var arrayToDownload = [];
47
+ vtkRectilinearGrid(dataset) {
48
+ const arrayToDownload = [];
47
49
  arrayToDownload.push(dataset.xCoordinates);
48
50
  arrayToDownload.push(dataset.yCoordinates);
49
51
  arrayToDownload.push(dataset.zCoordinates);
50
52
  return arrayToDownload;
51
53
  }
52
54
  };
53
-
54
55
  function processDataSet(publicAPI, model, dataset, fetchArray, resolve, reject, loadData) {
55
- var enable = model.enableArray; // Generate array list
56
+ const enable = model.enableArray;
56
57
 
58
+ // Generate array list
57
59
  model.arrays = [];
58
- fieldDataLocations.forEach(function (location) {
60
+ fieldDataLocations.forEach(location => {
59
61
  if (dataset[location]) {
60
- dataset[location].arrays.map(function (i) {
61
- return i.data;
62
- }).forEach(function (array) {
62
+ dataset[location].arrays.map(i => i.data).forEach(array => {
63
63
  model.arrays.push({
64
64
  name: array.name,
65
- enable: enable,
66
- location: location,
67
- array: array,
65
+ enable,
66
+ location,
67
+ array,
68
68
  registration: array.ref.registration || 'addArray'
69
69
  });
70
- }); // Reset data arrays
70
+ });
71
71
 
72
+ // Reset data arrays
72
73
  dataset[location].arrays = [];
73
74
  }
74
- }); // Fetch geometry arrays
75
+ });
75
76
 
76
- var pendingPromises = [];
77
- var progressCallback = model.progressCallback;
78
- var compression = model.fetchGzip ? 'gz' : null;
79
- GEOMETRY_ARRAYS[dataset.vtkClass](dataset).forEach(function (array) {
77
+ // Fetch geometry arrays
78
+ const pendingPromises = [];
79
+ const {
80
+ progressCallback
81
+ } = model;
82
+ const compression = model.fetchGzip ? 'gz' : null;
83
+ GEOMETRY_ARRAYS[dataset.vtkClass](dataset).forEach(array => {
80
84
  pendingPromises.push(fetchArray(array, {
81
- compression: compression,
82
- progressCallback: progressCallback
85
+ compression,
86
+ progressCallback
83
87
  }));
84
88
  });
85
-
86
89
  function success() {
87
90
  model.dataset = vtk(dataset);
88
-
89
91
  if (!loadData) {
90
92
  model.output[0] = model.dataset;
91
93
  resolve(publicAPI, model.output[0]);
92
94
  } else {
93
- publicAPI.loadData().then(function () {
95
+ publicAPI.loadData().then(() => {
94
96
  model.output[0] = model.dataset;
95
97
  resolve(publicAPI, model.output[0]);
96
98
  });
97
99
  }
98
- } // Wait for all geometry array to be fetched
99
-
100
+ }
100
101
 
102
+ // Wait for all geometry array to be fetched
101
103
  if (pendingPromises.length) {
102
- Promise.all(pendingPromises).then(success, function (err) {
104
+ Promise.all(pendingPromises).then(success, err => {
103
105
  reject(err);
104
106
  });
105
107
  } else {
106
108
  success();
107
109
  }
108
- } // ----------------------------------------------------------------------------
110
+ }
111
+
112
+ // ----------------------------------------------------------------------------
109
113
  // vtkHttpDataSetReader methods
110
114
  // ----------------------------------------------------------------------------
111
115
 
112
-
113
116
  function vtkHttpDataSetReader(publicAPI, model) {
114
117
  // Set our className
115
- model.classHierarchy.push('vtkHttpDataSetReader'); // Empty output by default
118
+ model.classHierarchy.push('vtkHttpDataSetReader');
116
119
 
120
+ // Empty output by default
117
121
  model.output[0] = vtk({
118
122
  vtkClass: 'vtkPolyData'
119
- }); // Create default dataAccessHelper if not available
123
+ });
120
124
 
125
+ // Create default dataAccessHelper if not available
121
126
  if (!model.dataAccessHelper) {
122
127
  model.dataAccessHelper = DataAccessHelper.get('http');
123
- } // Internal method to fetch Array
124
-
128
+ }
125
129
 
130
+ // Internal method to fetch Array
126
131
  function fetchArray(array) {
127
- var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
128
- var arrayId = "".concat(array.ref.id, "|").concat(array.vtkClass);
129
-
132
+ let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
133
+ const arrayId = `${array.ref.id}|${array.vtkClass}`;
130
134
  if (!cachedArrays[arrayId]) {
131
135
  // Cache the promise while fetching
132
- cachedArrays[arrayId] = model.dataAccessHelper.fetchArray(publicAPI, model.baseURL, array, options).then(function (newArray) {
136
+ cachedArrays[arrayId] = model.dataAccessHelper.fetchArray(publicAPI, model.baseURL, array, options).then(newArray => {
133
137
  // Replace the promise with the array in cache once downloaded
134
138
  cachedArrays[arrayId] = newArray;
135
139
  return newArray;
136
140
  });
137
141
  } else {
138
142
  // cacheArrays[arrayId] can be a promise or value
139
- Promise.resolve(cachedArrays[arrayId]).then(function (cachedArray) {
143
+ Promise.resolve(cachedArrays[arrayId]).then(cachedArray => {
140
144
  if (array !== cachedArray) {
141
145
  Object.assign(array, cachedArray);
142
146
  delete array.ref;
143
147
  }
144
148
  });
145
149
  }
146
-
147
150
  return Promise.resolve(cachedArrays[arrayId]);
148
- } // Fetch dataset (metadata)
149
-
151
+ }
150
152
 
153
+ // Fetch dataset (metadata)
151
154
  publicAPI.updateMetadata = function () {
152
- var loadData = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
153
-
155
+ let loadData = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
154
156
  if (model.compression === 'zip') {
155
- return new Promise(function (resolve, reject) {
156
- DataAccessHelper.get('http').fetchBinary(model.url).then(function (zipContent) {
157
+ return new Promise((resolve, reject) => {
158
+ DataAccessHelper.get('http').fetchBinary(model.url).then(zipContent => {
157
159
  model.dataAccessHelper = DataAccessHelper.get('zip', {
158
- zipContent: zipContent,
159
- callback: function callback(zip) {
160
+ zipContent,
161
+ callback: zip => {
160
162
  model.baseURL = '';
161
- model.dataAccessHelper.fetchJSON(publicAPI, 'index.json').then(function (dataset) {
163
+ model.dataAccessHelper.fetchJSON(publicAPI, 'index.json').then(dataset => {
162
164
  publicAPI.parseObject(dataset, {
163
- loadData: loadData,
165
+ loadData,
164
166
  deepCopy: false
165
167
  }).then(resolve, reject);
166
- }, function (error) {
168
+ }, error => {
167
169
  reject(error);
168
170
  });
169
171
  }
170
172
  });
171
- }, function (error) {
173
+ }, error => {
172
174
  reject(error);
173
175
  });
174
176
  });
175
177
  }
176
-
177
- return new Promise(function (resolve, reject) {
178
- model.dataAccessHelper.fetchJSON(publicAPI, model.url).then(function (dataset) {
178
+ return new Promise((resolve, reject) => {
179
+ model.dataAccessHelper.fetchJSON(publicAPI, model.url).then(dataset => {
179
180
  publicAPI.parseObject(dataset, {
180
- loadData: loadData,
181
+ loadData,
181
182
  deepCopy: false
182
183
  }).then(resolve, reject);
183
- }, function (error) {
184
+ }, error => {
184
185
  reject(error);
185
186
  });
186
187
  });
187
- }; // Set DataSet url
188
-
188
+ };
189
189
 
190
+ // Set DataSet url
190
191
  publicAPI.setUrl = function (url) {
191
- var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
192
-
192
+ let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
193
193
  if (url.indexOf('index.json') === -1 && !options.fullpath) {
194
194
  model.baseURL = url;
195
- model.url = "".concat(url, "/index.json");
195
+ model.url = `${url}/index.json`;
196
196
  } else {
197
- model.url = url; // Remove the file in the URL
197
+ model.url = url;
198
198
 
199
- var path = url.split('/');
199
+ // Remove the file in the URL
200
+ const path = url.split('/');
200
201
  path.pop();
201
202
  model.baseURL = path.join('/');
202
203
  }
204
+ model.compression = options.compression;
203
205
 
204
- model.compression = options.compression; // Fetch metadata
205
-
206
+ // Fetch metadata
206
207
  return publicAPI.updateMetadata(!!options.loadData);
207
208
  };
208
-
209
- publicAPI.parseObject = function (manifest, _ref) {
210
- var loadData = _ref.loadData,
211
- baseUrl = _ref.baseUrl,
212
- _ref$deepCopy = _ref.deepCopy,
213
- deepCopy = _ref$deepCopy === void 0 ? true : _ref$deepCopy;
214
-
209
+ publicAPI.parseObject = (manifest, _ref) => {
210
+ let {
211
+ loadData,
212
+ baseUrl,
213
+ deepCopy = true
214
+ } = _ref;
215
215
  if (baseUrl) {
216
216
  model.baseURL = baseUrl;
217
217
  }
218
-
219
- var dataset = deepCopy ? structuredClone(manifest) : manifest;
220
- return new Promise(function (resolve, reject) {
218
+ const dataset = deepCopy ? structuredClone(manifest) : manifest;
219
+ return new Promise((resolve, reject) => {
221
220
  processDataSet(publicAPI, model, dataset, fetchArray, resolve, reject, loadData);
222
221
  });
223
- }; // Fetch the actual data arrays
224
-
222
+ };
225
223
 
226
- publicAPI.loadData = function () {
227
- var datasetObj = model.dataset;
228
- var arrayToFecth = model.arrays.filter(function (array) {
229
- return array.enable;
230
- }).filter(function (array) {
231
- return array.array.ref;
232
- }).map(function (array) {
233
- return array.array;
234
- });
235
- return new Promise(function (resolve, reject) {
236
- var error = function error(e) {
224
+ // Fetch the actual data arrays
225
+ publicAPI.loadData = () => {
226
+ const datasetObj = model.dataset;
227
+ const arrayToFecth = model.arrays.filter(array => array.enable).filter(array => array.array.ref).map(array => array.array);
228
+ return new Promise((resolve, reject) => {
229
+ const error = e => {
237
230
  reject(e);
238
231
  };
239
-
240
- var processNext = function processNext() {
232
+ const processNext = () => {
241
233
  if (arrayToFecth.length) {
242
- var progressCallback = model.progressCallback;
243
- var compression = model.fetchGzip ? 'gz' : null;
234
+ const {
235
+ progressCallback
236
+ } = model;
237
+ const compression = model.fetchGzip ? 'gz' : null;
244
238
  fetchArray(arrayToFecth.pop(), {
245
- compression: compression,
246
- progressCallback: progressCallback
239
+ compression,
240
+ progressCallback
247
241
  }).then(processNext, error);
248
242
  } else if (datasetObj) {
249
243
  // Perform array registration on new arrays
250
- model.arrays.filter(function (metaArray) {
251
- return metaArray.registration && !metaArray.array.ref;
252
- }).forEach(function (metaArray) {
253
- var newArray = ARRAY_BUILDERS[metaArray.array.vtkClass].newInstance(metaArray.array);
254
- datasetObj["get".concat(macro.capitalize(metaArray.location))]()[metaArray.registration](newArray);
244
+ model.arrays.filter(metaArray => metaArray.registration && !metaArray.array.ref).forEach(metaArray => {
245
+ const newArray = ARRAY_BUILDERS[metaArray.array.vtkClass].newInstance(metaArray.array);
246
+ datasetObj[`get${macro.capitalize(metaArray.location)}`]()[metaArray.registration](newArray);
255
247
  delete metaArray.registration;
256
248
  });
257
249
  datasetObj.modified();
258
250
  resolve(publicAPI, datasetObj);
259
251
  }
260
- }; // Start processing queue
261
-
252
+ };
262
253
 
254
+ // Start processing queue
263
255
  processNext();
264
256
  });
265
257
  };
258
+ publicAPI.requestData = (inData, outData) => {
259
+ // do nothing loadData will eventually load up the data
260
+ };
266
261
 
267
- publicAPI.requestData = function (inData, outData) {// do nothing loadData will eventually load up the data
268
- }; // Toggle arrays to load
269
-
270
-
262
+ // Toggle arrays to load
271
263
  publicAPI.enableArray = function (location, name) {
272
- var enable = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
273
- var activeArray = model.arrays.filter(function (array) {
274
- return array.name === name && array.location === location;
275
- });
276
-
264
+ let enable = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
265
+ const activeArray = model.arrays.filter(array => array.name === name && array.location === location);
277
266
  if (activeArray.length === 1) {
278
267
  activeArray[0].enable = enable;
279
268
  }
280
- }; // return Busy state
269
+ };
281
270
 
271
+ // return Busy state
272
+ publicAPI.isBusy = () => !!model.requestCount;
273
+ }
282
274
 
283
- publicAPI.isBusy = function () {
284
- return !!model.requestCount;
285
- };
286
- } // ----------------------------------------------------------------------------
275
+ // ----------------------------------------------------------------------------
287
276
  // Object factory
288
277
  // ----------------------------------------------------------------------------
289
278
 
290
-
291
- var DEFAULT_VALUES = {
279
+ const DEFAULT_VALUES = {
292
280
  enableArray: true,
293
281
  fetchGzip: false,
294
282
  arrays: [],
295
283
  url: null,
296
284
  baseURL: null,
297
- requestCount: 0 // dataAccessHelper: null,
285
+ requestCount: 0
286
+ // dataAccessHelper: null,
287
+ };
298
288
 
299
- }; // ----------------------------------------------------------------------------
289
+ // ----------------------------------------------------------------------------
300
290
 
301
291
  function extend(publicAPI, model) {
302
- var initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
303
- Object.assign(model, DEFAULT_VALUES, initialValues); // Build VTK API
292
+ let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
293
+ Object.assign(model, DEFAULT_VALUES, initialValues);
304
294
 
295
+ // Build VTK API
305
296
  macro.obj(publicAPI, model);
306
297
  macro.get(publicAPI, model, ['enableArray', 'fetchGzip', 'url', 'baseURL', 'dataAccessHelper']);
307
298
  macro.set(publicAPI, model, ['dataAccessHelper', 'progressCallback']);
308
299
  macro.getArray(publicAPI, model, ['arrays']);
309
300
  macro.algo(publicAPI, model, 0, 1);
310
- macro.event(publicAPI, model, 'busy'); // Object methods
301
+ macro.event(publicAPI, model, 'busy');
311
302
 
312
- vtkHttpDataSetReader(publicAPI, model); // Make sure we can destructuring progressCallback from model
303
+ // Object methods
304
+ vtkHttpDataSetReader(publicAPI, model);
313
305
 
306
+ // Make sure we can destructuring progressCallback from model
314
307
  if (model.progressCallback === undefined) {
315
308
  model.progressCallback = null;
316
309
  }
317
- } // ----------------------------------------------------------------------------
310
+ }
311
+
312
+ // ----------------------------------------------------------------------------
313
+
314
+ const newInstance = macro.newInstance(extend, 'vtkHttpDataSetReader');
318
315
 
319
- var newInstance = macro.newInstance(extend, 'vtkHttpDataSetReader'); // ----------------------------------------------------------------------------
316
+ // ----------------------------------------------------------------------------
320
317
 
321
318
  var vtkHttpDataSetReader$1 = {
322
- newInstance: newInstance,
323
- extend: extend
319
+ newInstance,
320
+ extend
324
321
  };
325
322
 
326
323
  export { vtkHttpDataSetReader$1 as default, extend, newInstance };