@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,6 +1,4 @@
1
- import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
2
- import _defineProperty from '@babel/runtime/helpers/defineProperty';
3
- import macro from '../../macros.js';
1
+ import { m as macro } from '../../macros2.js';
4
2
  import vtkActor from '../../Rendering/Core/Actor.js';
5
3
  import vtkVolume from '../../Rendering/Core/Volume.js';
6
4
  import vtkHttpDataSetReader from './HttpDataSetReader.js';
@@ -16,49 +14,41 @@ import vtkTimeStepBasedAnimationHandler from '../../Interaction/Animations/TimeS
16
14
  import DataAccessHelper from './DataAccessHelper.js';
17
15
  import './DataAccessHelper/LiteHttpDataAccessHelper.js';
18
16
 
19
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
20
-
21
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
22
17
  // import 'vtk.js/Sources/IO/Core/DataAccessHelper/HttpDataAccessHelper'; // HTTP + zip
23
18
  // import 'vtk.js/Sources/IO/Core/DataAccessHelper/HtmlDataAccessHelper'; // html + base64 + zip
24
19
  // import 'vtk.js/Sources/IO/Core/DataAccessHelper/JSZipDataAccessHelper'; // zip
25
20
 
26
- var vtkErrorMacro = macro.vtkErrorMacro;
27
- var itemCount = 1;
28
-
21
+ const {
22
+ vtkErrorMacro
23
+ } = macro;
24
+ let itemCount = 1;
29
25
  function applySettings(sceneItem, settings) {
30
26
  if (settings.actor) {
31
27
  sceneItem.actor.set(settings.actor);
32
28
  }
33
-
34
29
  if (settings.actorRotation) {
35
30
  sceneItem.actor.rotateWXYZ(settings.actorRotation[0], settings.actorRotation[1], settings.actorRotation[2], settings.actorRotation[3]);
36
31
  }
37
-
38
32
  if (settings.volumeRotation) {
39
33
  sceneItem.volume.rotateWXYZ(settings.volumeRotation[0], settings.volumeRotation[1], settings.volumeRotation[2], settings.volumeRotation[3]);
40
34
  }
41
-
42
35
  if (settings.property) {
43
36
  if (settings.volume) {
44
- var volumePropertySettings = _objectSpread({}, settings.property);
45
-
37
+ const volumePropertySettings = {
38
+ ...settings.property
39
+ };
46
40
  delete volumePropertySettings.components;
47
41
  sceneItem.volume.getProperty().set(volumePropertySettings);
48
-
49
42
  if (settings.property.components) {
50
- var volumeProperty = sceneItem.volume.getProperty();
51
- sceneItem.volumeComponents.forEach(function (component, componentIndex) {
43
+ const volumeProperty = sceneItem.volume.getProperty();
44
+ sceneItem.volumeComponents.forEach((component, componentIndex) => {
52
45
  volumeProperty.setScalarOpacityUnitDistance(componentIndex, settings.property.components[componentIndex].scalarOpacityUnitDistance);
53
-
54
46
  if (component.rgbTransferFunction) {
55
47
  volumeProperty.setRGBTransferFunction(componentIndex, component.rgbTransferFunction);
56
48
  }
57
-
58
49
  if (component.grayTransferFunction) {
59
50
  volumeProperty.setGrayTransferFunction(componentIndex, component.grayTransferFunction);
60
51
  }
61
-
62
52
  if (component.scalarOpacity) {
63
53
  volumeProperty.setScalarOpacity(componentIndex, component.scalarOpacity);
64
54
  }
@@ -68,298 +58,255 @@ function applySettings(sceneItem, settings) {
68
58
  sceneItem.actor.getProperty().set(settings.property);
69
59
  }
70
60
  }
71
-
72
61
  if (settings.mapper) {
73
62
  if (settings.mapper.colorByArrayName) {
74
63
  sceneItem.source.enableArray(settings.mapper.colorByArrayName, settings.mapper.colorByArrayName);
75
64
  sceneItem.source.loadData();
76
65
  }
77
-
78
66
  sceneItem.mapper.set(settings.mapper);
79
-
80
67
  if (settings.mapper.colorByArrayName && settings.luts[settings.mapper.colorByArrayName]) {
81
68
  sceneItem.mapper.setLookupTable(settings.luts[settings.mapper.colorByArrayName]);
82
69
  sceneItem.mapper.setUseLookupTableScalarRange(true);
83
70
  }
84
71
  }
85
-
86
72
  if (settings.lookupTable) {
87
73
  sceneItem.mapper.getLookupTable().set(settings.lookupTable);
88
74
  sceneItem.mapper.getLookupTable().build();
89
75
  }
90
-
91
76
  if (settings.textureLODs) {
92
77
  sceneItem.textureLODs = settings.textureLODs;
93
78
  }
94
-
95
79
  if (settings.sourceLODs) {
96
80
  sceneItem.sourceLODs = settings.sourceLODs;
97
81
  }
98
- } // ----------------------------------------------------------------------------
82
+ }
83
+
84
+ // ----------------------------------------------------------------------------
99
85
  // Global methods
100
86
  // ----------------------------------------------------------------------------
101
87
 
102
-
103
88
  function isImage(str) {
104
- var ext = str.split('.').pop().toLowerCase();
89
+ const ext = str.split('.').pop().toLowerCase();
105
90
  return ['jpg', 'png', 'jpeg'].indexOf(ext) !== -1;
106
91
  }
107
-
108
92
  function loadColorTransferFunction(item) {
109
- var tf = vtkColorTransferFunction.newInstance(item);
110
-
93
+ const tf = vtkColorTransferFunction.newInstance(item);
111
94
  if (item.nodes) {
112
95
  tf.removeAllPoints();
113
- item.nodes.forEach(function (_ref) {
114
- var _ref2 = _slicedToArray(_ref, 6),
115
- x = _ref2[0],
116
- r = _ref2[1],
117
- g = _ref2[2],
118
- b = _ref2[3],
119
- midpoint = _ref2[4],
120
- sharpness = _ref2[5];
121
-
96
+ item.nodes.forEach(_ref => {
97
+ let [x, r, g, b, midpoint, sharpness] = _ref;
122
98
  tf.addRGBPointLong(x, r, g, b, midpoint, sharpness);
123
99
  });
124
100
  }
125
-
126
101
  return tf;
127
102
  }
128
-
129
103
  function loadPiecewiseFunction(item) {
130
- var pwf = vtkPiecewiseFunction.newInstance(item);
131
-
104
+ const pwf = vtkPiecewiseFunction.newInstance(item);
132
105
  if (item.points) {
133
106
  pwf.removeAllPoints();
134
- item.points.forEach(function (_ref3) {
135
- var _ref4 = _slicedToArray(_ref3, 4),
136
- x = _ref4[0],
137
- y = _ref4[1],
138
- midpoint = _ref4[2],
139
- sharpness = _ref4[3];
140
-
107
+ item.points.forEach(_ref2 => {
108
+ let [x, y, midpoint, sharpness] = _ref2;
141
109
  return pwf.addPointLong(x, y, midpoint, sharpness);
142
110
  });
143
111
  }
144
-
145
112
  return pwf;
146
113
  }
147
-
148
114
  function initializeVolumeComponents(components) {
149
- return components.map(function (component) {
150
- var ret = {};
151
-
115
+ return components.map(component => {
116
+ const ret = {};
152
117
  if (component.rgbTransferFunction) {
153
118
  ret.rgbTransferFunction = loadColorTransferFunction(component.rgbTransferFunction);
154
119
  } else if (component.grayTransferFunction) {
155
120
  ret.grayTransferFunction = loadPiecewiseFunction(component.grayTransferFunction);
156
121
  }
157
-
158
122
  if (component.scalarOpacity) {
159
123
  ret.scalarOpacity = loadPiecewiseFunction(component.scalarOpacity);
160
124
  }
161
-
162
125
  return ret;
163
126
  });
164
- } // ----------------------------------------------------------------------------
127
+ }
165
128
 
129
+ // ----------------------------------------------------------------------------
166
130
 
167
131
  function defineLoadFuctionForReader(type) {
168
- return function (item, model, publicAPI) {
169
- var source = type.newInstance({
132
+ return (item, model, publicAPI) => {
133
+ const source = type.newInstance({
170
134
  fetchGzip: model.fetchGzip,
171
135
  dataAccessHelper: model.dataAccessHelper
172
136
  });
173
- var mapper;
174
-
137
+ let mapper;
175
138
  if (item.volume) {
176
139
  mapper = vtkVolumeMapper.newInstance();
177
140
  } else {
178
141
  mapper = vtkMapper.newInstance();
179
142
  }
180
-
181
- var sceneItem = {
182
- name: item.name || "Item ".concat(itemCount++),
183
- source: source,
184
- mapper: mapper,
143
+ const sceneItem = {
144
+ name: item.name || `Item ${itemCount++}`,
145
+ source,
146
+ mapper,
185
147
  defaultSettings: item
186
148
  };
187
-
188
149
  if (item.volume) {
189
- var volume = vtkVolume.newInstance();
150
+ const volume = vtkVolume.newInstance();
190
151
  sceneItem.volume = volume;
191
-
192
152
  if (model.renderer) {
193
153
  model.renderer.addVolume(volume);
194
154
  }
195
-
196
155
  if (item.property && item.property.components) {
197
156
  // initialize transfer functions
198
157
  sceneItem.volumeComponents = initializeVolumeComponents(item.property.components);
199
158
  }
200
-
201
159
  volume.setMapper(mapper);
202
160
  } else {
203
- var actor = vtkActor.newInstance();
161
+ const actor = vtkActor.newInstance();
204
162
  sceneItem.actor = actor;
205
-
206
163
  if (item.texture && item.texture in model.usedTextures) {
207
164
  // If this texture has already been used, re-use it
208
165
  actor.addTexture(model.usedTextures[item.texture]);
209
166
  } else if (item.texture) {
210
- var url = [model.baseURL, item.texture].join('/');
211
- var texture = vtkTexture.newInstance();
167
+ const url = [model.baseURL, item.texture].join('/');
168
+ const texture = vtkTexture.newInstance();
212
169
  texture.setInterpolate(true);
213
170
  texture.setRepeat(true);
214
171
  actor.addTexture(texture);
215
172
  sceneItem.texture = texture;
216
173
  model.usedTextures[item.texture] = texture;
217
-
218
174
  if (isImage(item.texture)) {
219
175
  // It's an image file
220
176
  model.dataAccessHelper.fetchImage({}, url, {
221
177
  crossOrigin: 'anonymous'
222
- }).then(function (img) {
178
+ }).then(img => {
223
179
  texture.setImage(img);
224
180
  });
225
181
  } else {
226
182
  // Assume it's a dataset file
227
- var textureSource = type.newInstance({
183
+ const textureSource = type.newInstance({
228
184
  fetchGzip: model.fetchGzip,
229
185
  dataAccessHelper: model.dataAccessHelper
230
186
  });
231
187
  textureSource.setUrl(url, {
232
188
  loadData: true
233
- }).then(function () {
189
+ }).then(() => {
234
190
  texture.setInputData(textureSource.getOutputData());
235
191
  });
236
192
  }
237
193
  }
238
-
239
- var textureLODs = item.textureLODs;
240
-
194
+ const {
195
+ textureLODs
196
+ } = item;
241
197
  if (textureLODs && textureLODs.files && textureLODs.files.length !== 0) {
242
198
  // If this texture LOD has already been used, re-use it
243
- var textureLODsStr = JSON.stringify(textureLODs);
244
-
199
+ const textureLODsStr = JSON.stringify(textureLODs);
245
200
  if (textureLODsStr in model.usedTextureLODs) {
246
201
  actor.addTexture(model.usedTextureLODs[textureLODsStr]);
247
202
  } else {
248
203
  // Set it on the scene item so it can be accessed later, for
249
204
  // doing things like setting a callback function.
250
205
  sceneItem.textureLODsDownloader = vtkTextureLODsDownloader.newInstance();
251
- var textureDownloader = sceneItem.textureLODsDownloader;
252
-
253
- var _texture = vtkTexture.newInstance();
254
-
255
- _texture.setInterpolate(true);
256
-
257
- actor.addTexture(_texture);
258
- model.usedTextureLODs[textureLODsStr] = _texture;
259
- textureDownloader.setTexture(_texture);
206
+ const textureDownloader = sceneItem.textureLODsDownloader;
207
+ const texture = vtkTexture.newInstance();
208
+ texture.setInterpolate(true);
209
+ actor.addTexture(texture);
210
+ model.usedTextureLODs[textureLODsStr] = texture;
211
+ textureDownloader.setTexture(texture);
260
212
  textureDownloader.setCrossOrigin('anonymous');
261
213
  textureDownloader.setBaseUrl(textureLODs.baseUrl);
262
214
  textureDownloader.setFiles(textureLODs.files);
263
-
264
215
  if (model.startLODLoaders) {
265
216
  textureDownloader.startDownloads();
266
217
  }
267
218
  }
268
219
  }
269
-
270
220
  if (model.renderer) {
271
221
  model.renderer.addActor(actor);
272
222
  }
273
-
274
223
  actor.setMapper(mapper);
275
224
  }
276
-
277
225
  mapper.setInputConnection(source.getOutputPort());
278
226
  source.setUrl([model.baseURL, item[item.type].url].join('/'), {
279
227
  loadData: true
280
- }).then(function () {
281
- return publicAPI.invokeReady();
282
- });
228
+ }).then(() => publicAPI.invokeReady());
283
229
  applySettings(sceneItem, item);
284
230
  model.scene.push(sceneItem);
285
- var sourceLODs = item.sourceLODs;
286
-
231
+ const {
232
+ sourceLODs
233
+ } = item;
287
234
  if (sourceLODs && sourceLODs.files && sourceLODs.files.length !== 0) {
288
235
  // Set it on the scene item so it can be accessed later, for
289
236
  // doing things like setting a callback function.
290
237
  sceneItem.dataSetLODsLoader = vtkHttpDataSetLODsLoader.newInstance();
291
- var dataSetLODsLoader = sceneItem.dataSetLODsLoader;
238
+ const {
239
+ dataSetLODsLoader
240
+ } = sceneItem;
292
241
  dataSetLODsLoader.setMapper(mapper);
293
242
  dataSetLODsLoader.setSceneItem(sceneItem);
294
243
  dataSetLODsLoader.setBaseUrl(sourceLODs.baseUrl);
295
244
  dataSetLODsLoader.setFiles(sourceLODs.files);
296
-
297
245
  if (model.startLODLoaders) {
298
246
  dataSetLODsLoader.startDownloads();
299
247
  }
300
248
  }
301
-
302
249
  return sceneItem;
303
250
  };
304
251
  }
305
-
306
252
  function loadTimeStepBasedAnimationHandler(data, model) {
307
253
  model.animationHandler = vtkTimeStepBasedAnimationHandler.newInstance({
308
254
  scene: model.scene,
309
255
  originalMetadata: model.metadata,
310
- applySettings: applySettings
256
+ applySettings
311
257
  });
312
-
313
258
  if (model.animationHandler && model.renderer) {
314
259
  model.animationHandler.addRenderer(model.renderer);
315
260
  }
316
-
317
261
  model.animationHandler.setData(data);
318
- } // ----------------------------------------------------------------------------
262
+ }
263
+
264
+ // ----------------------------------------------------------------------------
319
265
  // Note: keeping both types (with and without 'vtk' prefix) for backwards compatibility
320
266
  // see https://gitlab.kitware.com/paraview/paraview/-/merge_requests/4628#note_876772
321
267
 
322
-
323
- var TYPE_MAPPING = {
268
+ const TYPE_MAPPING = {
324
269
  httpDataSetReader: defineLoadFuctionForReader(vtkHttpDataSetReader),
325
270
  vtkHttpDataSetReader: defineLoadFuctionForReader(vtkHttpDataSetReader),
326
271
  httpDataSetSeriesReader: defineLoadFuctionForReader(vtkHttpDataSetSeriesReader),
327
272
  vtkHttpDataSetSeriesReader: defineLoadFuctionForReader(vtkHttpDataSetSeriesReader)
328
273
  };
329
- var ANIMATION_TYPE_MAPPING = {
274
+ const ANIMATION_TYPE_MAPPING = {
330
275
  timeStepBasedAnimationHandler: loadTimeStepBasedAnimationHandler,
331
276
  vtkTimeStepBasedAnimationHandler: loadTimeStepBasedAnimationHandler
332
- }; // ----------------------------------------------------------------------------
277
+ };
278
+
279
+ // ----------------------------------------------------------------------------
333
280
 
334
281
  function updateDatasetTypeMapping(typeName, handler) {
335
282
  TYPE_MAPPING[typeName] = handler;
336
- } // ----------------------------------------------------------------------------
283
+ }
284
+
285
+ // ----------------------------------------------------------------------------
337
286
  // vtkHttpSceneLoader methods
338
287
  // ----------------------------------------------------------------------------
339
288
 
340
-
341
289
  function vtkHttpSceneLoader(publicAPI, model) {
342
- var originalSceneParameters = {}; // These are here to re-use the same textures when possible
290
+ const originalSceneParameters = {};
343
291
 
292
+ // These are here to re-use the same textures when possible
344
293
  if (!model.usedTextures) {
345
294
  model.usedTextures = {};
346
295
  }
347
-
348
296
  if (!model.usedTextureLODs) {
349
297
  model.usedTextureLODs = {};
350
- } // Set our className
351
-
298
+ }
352
299
 
353
- model.classHierarchy.push('vtkHttpSceneLoader'); // Create scene container
300
+ // Set our className
301
+ model.classHierarchy.push('vtkHttpSceneLoader');
354
302
 
303
+ // Create scene container
355
304
  if (!model.scene) {
356
305
  model.scene = [];
357
306
  }
358
-
359
307
  function setCameraParameters(params) {
360
308
  if (model.renderer) {
361
- var camera = model.renderer.getActiveCamera();
362
-
309
+ const camera = model.renderer.getActiveCamera();
363
310
  if (camera) {
364
311
  camera.set(params);
365
312
  } else {
@@ -367,99 +314,95 @@ function vtkHttpSceneLoader(publicAPI, model) {
367
314
  }
368
315
  }
369
316
  }
370
-
371
317
  function setBackground(color) {
372
318
  if (model.renderer) {
373
319
  model.renderer.setBackground(color);
374
320
  }
375
- } // Create default dataAccessHelper if not available
376
-
321
+ }
377
322
 
323
+ // Create default dataAccessHelper if not available
378
324
  if (!model.dataAccessHelper) {
379
325
  model.dataAccessHelper = DataAccessHelper.get('http');
380
326
  }
381
-
382
- publicAPI.update = function () {
383
- model.dataAccessHelper.fetchJSON(publicAPI, model.url).then(function (data) {
327
+ publicAPI.update = () => {
328
+ model.dataAccessHelper.fetchJSON(publicAPI, model.url).then(data => {
384
329
  if (data.fetchGzip !== undefined) {
385
330
  model.fetchGzip = data.fetchGzip;
386
331
  }
387
-
388
332
  if (data.background && model.renderer) {
389
333
  setBackground(data.background);
390
334
  }
391
-
392
335
  if (data.camera) {
393
336
  originalSceneParameters.camera = data.camera;
394
337
  setCameraParameters(data.camera);
395
338
  }
396
-
397
- var luts = {};
398
-
339
+ const luts = {};
399
340
  if (data.lookupTables) {
400
- Object.keys(data.lookupTables).forEach(function (fieldName) {
401
- var config = data.lookupTables[fieldName];
402
- var lookupTable = loadColorTransferFunction(config);
341
+ Object.keys(data.lookupTables).forEach(fieldName => {
342
+ const config = data.lookupTables[fieldName];
343
+ const lookupTable = loadColorTransferFunction(config);
403
344
  luts[fieldName] = lookupTable;
404
345
  });
405
346
  }
406
-
407
347
  if (data.scene) {
408
- data.scene.forEach(function (item) {
409
- var builder = TYPE_MAPPING[item.type];
410
-
348
+ data.scene.forEach(item => {
349
+ const builder = TYPE_MAPPING[item.type];
411
350
  if (builder) {
412
- builder(_objectSpread({
413
- luts: luts
414
- }, item), model, publicAPI);
351
+ builder({
352
+ luts,
353
+ ...item
354
+ }, model, publicAPI);
415
355
  }
416
356
  });
417
- global.scene = model.scene; // Clear these
357
+ global.scene = model.scene;
418
358
 
359
+ // Clear these
419
360
  model.usedTextures = {};
420
361
  model.usedTextureLODs = {};
421
- } // Capture index.json into meta
422
-
362
+ }
423
363
 
364
+ // Capture index.json into meta
424
365
  model.metadata = data;
425
-
426
366
  if (data.animation) {
427
- var animationLoader = ANIMATION_TYPE_MAPPING[data.animation.type];
428
- animationLoader(_objectSpread({}, data.animation), model, publicAPI, setCameraParameters, setBackground);
367
+ const animationLoader = ANIMATION_TYPE_MAPPING[data.animation.type];
368
+ animationLoader({
369
+ ...data.animation
370
+ }, model, publicAPI, setCameraParameters, setBackground);
429
371
  }
430
- }, function (error) {
431
- vtkErrorMacro("Error fetching scene ".concat(error));
372
+ }, error => {
373
+ vtkErrorMacro(`Error fetching scene ${error}`);
432
374
  });
433
375
  };
434
-
435
- publicAPI.resetScene = function () {
376
+ publicAPI.resetScene = () => {
436
377
  if (originalSceneParameters.camera) {
437
378
  setCameraParameters(originalSceneParameters.camera);
438
379
  }
439
- }; // Set DataSet url
440
-
380
+ };
441
381
 
442
- publicAPI.setUrl = function (url) {
382
+ // Set DataSet url
383
+ publicAPI.setUrl = url => {
443
384
  if (url.indexOf('index.json') === -1) {
444
385
  model.baseURL = url;
445
- model.url = "".concat(url, "/index.json");
386
+ model.url = `${url}/index.json`;
446
387
  } else {
447
- model.url = url; // Remove the file in the URL
388
+ model.url = url;
448
389
 
449
- var path = url.split('/');
390
+ // Remove the file in the URL
391
+ const path = url.split('/');
450
392
  path.pop();
451
393
  model.baseURL = path.join('/');
452
- } // Fetch data
453
-
394
+ }
454
395
 
396
+ // Fetch data
455
397
  return publicAPI.update();
456
398
  };
457
- } // ----------------------------------------------------------------------------
399
+ }
400
+
401
+ // ----------------------------------------------------------------------------
458
402
  // Object factory
459
403
  // ----------------------------------------------------------------------------
460
404
 
461
-
462
- var DEFAULT_VALUES = {
405
+ const DEFAULT_VALUES = {
463
406
  fetchGzip: false,
464
407
  url: null,
465
408
  baseURL: null,
@@ -467,27 +410,35 @@ var DEFAULT_VALUES = {
467
410
  // Whether or not to automatically start texture LOD and poly LOD
468
411
  // downloads when they are read.
469
412
  startLODLoaders: true
470
- }; // ----------------------------------------------------------------------------
413
+ };
414
+
415
+ // ----------------------------------------------------------------------------
471
416
 
472
417
  function extend(publicAPI, model) {
473
- var initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
474
- Object.assign(model, DEFAULT_VALUES, initialValues); // Build VTK API
418
+ let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
419
+ Object.assign(model, DEFAULT_VALUES, initialValues);
475
420
 
421
+ // Build VTK API
476
422
  macro.obj(publicAPI, model);
477
423
  macro.get(publicAPI, model, ['fetchGzip', 'url', 'baseURL', 'scene', 'metadata', 'animationHandler']);
478
424
  macro.setGet(publicAPI, model, ['renderer']);
479
- macro.event(publicAPI, model, 'ready'); // Object methods
425
+ macro.event(publicAPI, model, 'ready');
480
426
 
427
+ // Object methods
481
428
  vtkHttpSceneLoader(publicAPI, model);
482
- } // ----------------------------------------------------------------------------
429
+ }
430
+
431
+ // ----------------------------------------------------------------------------
432
+
433
+ const newInstance = macro.newInstance(extend, 'vtkHttpSceneLoader');
483
434
 
484
- var newInstance = macro.newInstance(extend, 'vtkHttpSceneLoader'); // ----------------------------------------------------------------------------
435
+ // ----------------------------------------------------------------------------
485
436
 
486
437
  var vtkHttpSceneLoader$1 = {
487
- newInstance: newInstance,
488
- extend: extend,
489
- applySettings: applySettings,
490
- updateDatasetTypeMapping: updateDatasetTypeMapping
438
+ newInstance,
439
+ extend,
440
+ applySettings,
441
+ updateDatasetTypeMapping
491
442
  };
492
443
 
493
444
  export { vtkHttpSceneLoader$1 as default, extend, newInstance };