@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,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 };