@kitware/vtk.js 28.10.2 → 28.11.1

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 +193 -277
  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/README.md +1 -1
  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 +85 -144
  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 +192 -256
  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 +443 -608
  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 +40 -38
  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 +133 -209
  540. package/Widgets/Widgets3D/ResliceCursorWidget/cprBehavior.js +26 -41
  541. package/Widgets/Widgets3D/ResliceCursorWidget/helpers.js +89 -116
  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 };