@kitware/vtk.js 28.10.1 → 28.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (566) hide show
  1. package/Common/Core/Base64.js +53 -82
  2. package/Common/Core/CellArray.js +52 -60
  3. package/Common/Core/ClassHierarchy.js +8 -36
  4. package/Common/Core/DataArray/Constants.js +6 -6
  5. package/Common/Core/DataArray.js +185 -270
  6. package/Common/Core/Endian.js +14 -17
  7. package/Common/Core/HalfFloat.js +17 -34
  8. package/Common/Core/ImageHelper.js +17 -25
  9. package/Common/Core/LookupTable.js +131 -144
  10. package/Common/Core/Math/Constants.js +8 -8
  11. package/Common/Core/Math/index.js +778 -903
  12. package/Common/Core/Math.d.ts +14 -0
  13. package/Common/Core/Math.js +2 -4
  14. package/Common/Core/MatrixBuilder.js +99 -151
  15. package/Common/Core/Points.js +43 -43
  16. package/Common/Core/PriorityQueue.js +30 -28
  17. package/Common/Core/ProgressHandler.js +31 -32
  18. package/Common/Core/ScalarsToColors/Constants.js +4 -4
  19. package/Common/Core/ScalarsToColors.js +196 -253
  20. package/Common/Core/StringArray.js +48 -73
  21. package/Common/Core/URLExtract.js +10 -29
  22. package/Common/Core/VariantArray.js +48 -73
  23. package/Common/Core.js +11 -11
  24. package/Common/DataModel/AbstractPointLocator.js +19 -17
  25. package/Common/DataModel/BoundingBox.js +322 -490
  26. package/Common/DataModel/Box.js +46 -63
  27. package/Common/DataModel/CardinalSpline1D.js +92 -102
  28. package/Common/DataModel/Cell.js +41 -61
  29. package/Common/DataModel/CellLinks.js +91 -127
  30. package/Common/DataModel/CellTypes/Constants.js +7 -6
  31. package/Common/DataModel/CellTypes.js +55 -74
  32. package/Common/DataModel/Collection.js +45 -61
  33. package/Common/DataModel/Cone.js +28 -20
  34. package/Common/DataModel/Cylinder.js +41 -35
  35. package/Common/DataModel/DataSet/Constants.js +11 -5
  36. package/Common/DataModel/DataSet.js +37 -25
  37. package/Common/DataModel/DataSetAttributes/Constants.js +18 -18
  38. package/Common/DataModel/DataSetAttributes/FieldData.js +103 -194
  39. package/Common/DataModel/DataSetAttributes.js +96 -138
  40. package/Common/DataModel/EdgeLocator.js +45 -70
  41. package/Common/DataModel/ITKHelper.js +67 -137
  42. package/Common/DataModel/ImageData.js +115 -172
  43. package/Common/DataModel/ImplicitBoolean/Constants.js +2 -2
  44. package/Common/DataModel/ImplicitBoolean.js +66 -96
  45. package/Common/DataModel/IncrementalOctreeNode.js +201 -231
  46. package/Common/DataModel/IncrementalOctreePointLocator.js +160 -198
  47. package/Common/DataModel/KochanekSpline1D.js +78 -81
  48. package/Common/DataModel/Line/Constants.js +2 -2
  49. package/Common/DataModel/Line.js +82 -105
  50. package/Common/DataModel/Locator.js +17 -10
  51. package/Common/DataModel/Molecule.js +26 -17
  52. package/Common/DataModel/PiecewiseFunction.js +218 -239
  53. package/Common/DataModel/Plane.js +90 -113
  54. package/Common/DataModel/PointSet.js +30 -26
  55. package/Common/DataModel/PolyData/Constants.js +2 -2
  56. package/Common/DataModel/PolyData.js +95 -120
  57. package/Common/DataModel/PolyLine.js +44 -61
  58. package/Common/DataModel/Polygon/Constants.js +4 -4
  59. package/Common/DataModel/Polygon.js +128 -169
  60. package/Common/DataModel/Quad/Constants.js +2 -2
  61. package/Common/DataModel/Quad.js +61 -100
  62. package/Common/DataModel/SelectionNode/Constants.js +5 -4
  63. package/Common/DataModel/SelectionNode.js +25 -21
  64. package/Common/DataModel/Sphere.js +40 -35
  65. package/Common/DataModel/Spline1D/Constants.js +3 -2
  66. package/Common/DataModel/Spline1D.js +34 -18
  67. package/Common/DataModel/Spline3D/Constants.js +2 -2
  68. package/Common/DataModel/Spline3D.js +46 -41
  69. package/Common/DataModel/StructuredData/Constants.js +2 -2
  70. package/Common/DataModel/StructuredData.js +9 -20
  71. package/Common/DataModel/Triangle.js +207 -250
  72. package/Common/DataModel.js +19 -19
  73. package/Common/System/MobileVR.js +56 -61
  74. package/Common/System/TimerLog.js +1 -1
  75. package/Common/System.js +2 -2
  76. package/Common/Transform/LandmarkTransform/Constants.js +2 -2
  77. package/Common/Transform/LandmarkTransform.js +133 -117
  78. package/Common/Transform/Transform.js +42 -57
  79. package/Common/Transform.js +2 -2
  80. package/Common/index.js +4 -4
  81. package/Filters/Core/Cutter.js +134 -146
  82. package/Filters/Core/PolyDataNormals.js +44 -50
  83. package/Filters/Core.js +2 -2
  84. package/Filters/Cornerstone/ImageDataToCornerstoneImage.js +45 -33
  85. package/Filters/Cornerstone.js +1 -1
  86. package/Filters/General/AppendPolyData.js +84 -100
  87. package/Filters/General/Calculator.js +95 -163
  88. package/Filters/General/ClipClosedSurface/Constants.js +2 -2
  89. package/Filters/General/ClipClosedSurface.js +341 -416
  90. package/Filters/General/ClosedPolyLineToSurfaceFilter.js +141 -156
  91. package/Filters/General/ContourTriangulator/Constants.js +2 -2
  92. package/Filters/General/ContourTriangulator/helper.js +684 -812
  93. package/Filters/General/ContourTriangulator.js +92 -89
  94. package/Filters/General/ImageCropFilter.js +77 -78
  95. package/Filters/General/ImageDataOutlineFilter.js +42 -36
  96. package/Filters/General/ImageMarchingCubes/caseTable.js +9 -521
  97. package/Filters/General/ImageMarchingCubes.js +99 -112
  98. package/Filters/General/ImageMarchingSquares/caseTable.js +9 -41
  99. package/Filters/General/ImageMarchingSquares.js +93 -118
  100. package/Filters/General/ImageOutlineFilter.js +53 -54
  101. package/Filters/General/ImageSliceFilter.js +39 -30
  102. package/Filters/General/ImageStreamline.js +107 -124
  103. package/Filters/General/LineFilter.js +26 -15
  104. package/Filters/General/MoleculeToRepresentation.js +136 -149
  105. package/Filters/General/OBBTree/OBBNode.js +36 -34
  106. package/Filters/General/OBBTree/helper.js +19 -24
  107. package/Filters/General/OBBTree.js +396 -488
  108. package/Filters/General/OutlineFilter.js +52 -34
  109. package/Filters/General/PaintFilter/PaintFilter.worker.js +93 -130
  110. package/Filters/General/PaintFilter.js +150 -162
  111. package/Filters/General/ScalarToRGBA.js +38 -33
  112. package/Filters/General/TriangleFilter.js +65 -62
  113. package/Filters/General/TubeFilter/Constants.js +4 -4
  114. package/Filters/General/TubeFilter.js +376 -496
  115. package/Filters/General/WarpScalar.js +58 -60
  116. package/Filters/General/WindowedSincPolyDataFilter.js +258 -330
  117. package/Filters/General.js +21 -21
  118. package/Filters/Sources/Arrow2DSource/Constants.js +2 -2
  119. package/Filters/Sources/Arrow2DSource.js +56 -56
  120. package/Filters/Sources/ArrowSource.js +39 -29
  121. package/Filters/Sources/CircleSource.js +43 -43
  122. package/Filters/Sources/ConcentricCylinderSource.js +151 -174
  123. package/Filters/Sources/ConeSource.js +51 -42
  124. package/Filters/Sources/CubeSource.js +75 -96
  125. package/Filters/Sources/Cursor3D.js +94 -109
  126. package/Filters/Sources/CylinderSource.js +90 -90
  127. package/Filters/Sources/ImageGridSource.js +43 -43
  128. package/Filters/Sources/LineSource.js +49 -39
  129. package/Filters/Sources/PlaneSource.js +97 -104
  130. package/Filters/Sources/PointSource.js +46 -37
  131. package/Filters/Sources/RTAnalyticSource.js +50 -48
  132. package/Filters/Sources/SLICSource.js +63 -73
  133. package/Filters/Sources/SphereSource.js +88 -78
  134. package/Filters/Sources/ViewFinderSource.js +26 -23
  135. package/Filters/Sources.js +14 -14
  136. package/Filters/Texture/TextureMapToPlane.js +95 -97
  137. package/Filters/Texture/TextureMapToSphere.js +46 -54
  138. package/Filters/Texture.js +2 -2
  139. package/Filters/index.js +5 -5
  140. package/IO/Core/BinaryHelper.js +12 -18
  141. package/IO/Core/DataAccessHelper/HtmlDataAccessHelper.js +43 -59
  142. package/IO/Core/DataAccessHelper/HttpDataAccessHelper.js +76 -113
  143. package/IO/Core/DataAccessHelper/JSZipDataAccessHelper.js +62 -112
  144. package/IO/Core/DataAccessHelper/LiteHttpDataAccessHelper.js +76 -113
  145. package/IO/Core/DataAccessHelper.js +6 -6
  146. package/IO/Core/HttpDataSetReader.js +136 -139
  147. package/IO/Core/HttpDataSetSeriesReader.js +64 -75
  148. package/IO/Core/HttpSceneLoader.js +130 -179
  149. package/IO/Core/ImageStream/DefaultProtocol.js +29 -43
  150. package/IO/Core/ImageStream/ViewStream.js +100 -103
  151. package/IO/Core/ImageStream.js +62 -54
  152. package/IO/Core/ResourceLoader.js +10 -9
  153. package/IO/Core/Serializer/ArraySerializer.js +40 -40
  154. package/IO/Core/Serializer/FieldDataSerializer.js +18 -28
  155. package/IO/Core/Serializer/ImageDataSerializer.js +22 -23
  156. package/IO/Core/Serializer/PolyDataSerializer.js +17 -21
  157. package/IO/Core/Serializer.js +6 -13
  158. package/IO/Core/WSLinkClient.js +90 -76
  159. package/IO/Core/ZipMultiDataSetReader.js +46 -44
  160. package/IO/Core/ZipMultiDataSetWriter.js +43 -34
  161. package/IO/Core.js +7 -7
  162. package/IO/Geometry/DracoReader.js +118 -121
  163. package/IO/Geometry/PLYReader.js +163 -223
  164. package/IO/Geometry/PLYWriter/Constants.js +5 -5
  165. package/IO/Geometry/PLYWriter.js +139 -154
  166. package/IO/Geometry/STLReader.js +123 -146
  167. package/IO/Geometry/STLWriter/Constants.js +2 -2
  168. package/IO/Geometry/STLWriter.js +83 -82
  169. package/IO/Geometry.js +5 -5
  170. package/IO/Legacy/LegacyAsciiParser.js +78 -139
  171. package/IO/Legacy/PolyDataReader.js +48 -36
  172. package/IO/Legacy.js +2 -2
  173. package/IO/Misc/ElevationReader.js +67 -60
  174. package/IO/Misc/HttpDataSetLODsLoader.js +41 -38
  175. package/IO/Misc/ITKImageReader.js +58 -45
  176. package/IO/Misc/ITKPolyDataReader.js +50 -38
  177. package/IO/Misc/JSONNucleoReader.js +49 -42
  178. package/IO/Misc/JSONReader.js +38 -33
  179. package/IO/Misc/MTLReader.js +74 -119
  180. package/IO/Misc/OBJReader.js +153 -206
  181. package/IO/Misc/PDBReader.js +70 -68
  182. package/IO/Misc/SkyboxReader.js +77 -82
  183. package/IO/Misc.js +9 -9
  184. package/IO/XML/XMLImageDataReader.js +36 -38
  185. package/IO/XML/XMLImageDataWriter.js +28 -21
  186. package/IO/XML/XMLPolyDataReader.js +49 -46
  187. package/IO/XML/XMLPolyDataWriter.js +43 -42
  188. package/IO/XML/XMLReader.js +262 -304
  189. package/IO/XML/XMLWriter/Constants.js +3 -3
  190. package/IO/XML/XMLWriter.js +70 -84
  191. package/IO/XML.js +6 -6
  192. package/IO/index.js +5 -5
  193. package/Imaging/Core/AbstractImageInterpolator/Constants.js +4 -4
  194. package/Imaging/Core/AbstractImageInterpolator/InterpolationInfo.js +30 -27
  195. package/Imaging/Core/AbstractImageInterpolator.js +74 -87
  196. package/Imaging/Core/ImageInterpolator.js +201 -252
  197. package/Imaging/Core/ImagePointDataIterator.js +96 -122
  198. package/Imaging/Core/ImageReslice/Constants.js +2 -2
  199. package/Imaging/Core/ImageReslice.js +327 -464
  200. package/Imaging/Core.js +4 -4
  201. package/Imaging/Hybrid/SampleFunction.js +58 -51
  202. package/Imaging/Hybrid.js +1 -1
  203. package/Imaging/index.js +2 -2
  204. package/Interaction/Animations/TimeStepBasedAnimationHandler.js +39 -54
  205. package/Interaction/Manipulators/CompositeCameraManipulator.js +22 -13
  206. package/Interaction/Manipulators/CompositeGestureManipulator.js +31 -43
  207. package/Interaction/Manipulators/CompositeKeyboardManipulator.js +15 -11
  208. package/Interaction/Manipulators/CompositeMouseManipulator.js +27 -33
  209. package/Interaction/Manipulators/CompositeVRManipulator.js +22 -15
  210. package/Interaction/Manipulators/GestureCameraManipulator.js +54 -36
  211. package/Interaction/Manipulators/KeyboardCameraManipulator.js +95 -97
  212. package/Interaction/Manipulators/MouseBoxSelectorManipulator.js +70 -89
  213. package/Interaction/Manipulators/MouseCameraAxisRotateManipulator.js +67 -54
  214. package/Interaction/Manipulators/MouseCameraSliceManipulator.js +40 -38
  215. package/Interaction/Manipulators/MouseCameraTrackballFirstPersonManipulator.js +83 -68
  216. package/Interaction/Manipulators/MouseCameraTrackballMultiRotateManipulator.js +32 -28
  217. package/Interaction/Manipulators/MouseCameraTrackballPanManipulator.js +47 -40
  218. package/Interaction/Manipulators/MouseCameraTrackballRollManipulator.js +55 -43
  219. package/Interaction/Manipulators/MouseCameraTrackballRotateManipulator.js +56 -46
  220. package/Interaction/Manipulators/MouseCameraTrackballZoomManipulator.js +41 -46
  221. package/Interaction/Manipulators/MouseCameraTrackballZoomToMouseManipulator.js +29 -27
  222. package/Interaction/Manipulators/MouseCameraUnicamManipulator.js +123 -146
  223. package/Interaction/Manipulators/MouseCameraUnicamRotateManipulator.js +144 -166
  224. package/Interaction/Manipulators/MouseRangeManipulator.js +127 -132
  225. package/Interaction/Manipulators/VRButtonPanManipulator.js +33 -23
  226. package/Interaction/Manipulators.js +21 -21
  227. package/Interaction/Misc/DeviceOrientationToCamera.js +25 -47
  228. package/Interaction/Misc.js +1 -1
  229. package/Interaction/Style/InteractorStyleImage.js +101 -121
  230. package/Interaction/Style/InteractorStyleMPRSlice.js +111 -128
  231. package/Interaction/Style/InteractorStyleManipulator/Presets.js +9 -17
  232. package/Interaction/Style/InteractorStyleManipulator.js +254 -329
  233. package/Interaction/Style/InteractorStyleRemoteMouse.js +195 -180
  234. package/Interaction/Style/InteractorStyleTrackballCamera.js +154 -157
  235. package/Interaction/Style/InteractorStyleUnicam.js +30 -38
  236. package/Interaction/Style.js +5 -5
  237. package/Interaction/UI/CornerAnnotation/CornerAnnotation.module.css.js +1 -1
  238. package/Interaction/UI/CornerAnnotation.js +65 -48
  239. package/Interaction/UI/FPSMonitor.js +104 -105
  240. package/Interaction/UI/Icons.js +1 -1
  241. package/Interaction/UI/Slider/Constants.js +2 -2
  242. package/Interaction/UI/Slider.js +78 -95
  243. package/Interaction/UI/VolumeController.js +104 -97
  244. package/Interaction/UI.js +5 -5
  245. package/Interaction/Widgets/OrientationMarkerWidget/Constants.js +2 -2
  246. package/Interaction/Widgets/OrientationMarkerWidget.js +90 -135
  247. package/Interaction/Widgets/PiecewiseGaussianWidget/ComputeHistogram.worker.js +0 -3
  248. package/Interaction/Widgets/PiecewiseGaussianWidget.js +381 -498
  249. package/Interaction/Widgets.js +2 -2
  250. package/Interaction/index.js +5 -5
  251. package/Proxy/Animation/AbstractAnimationProxy.js +22 -15
  252. package/Proxy/Animation/AnimationProxyManager.js +43 -51
  253. package/Proxy/Animation/TimeStepBasedAnimationHandlerProxy.js +26 -19
  254. package/Proxy/Core/AbstractRepresentationProxy.js +97 -151
  255. package/Proxy/Core/LookupTableProxy/Constants.js +4 -4
  256. package/Proxy/Core/LookupTableProxy.js +49 -52
  257. package/Proxy/Core/PiecewiseFunctionProxy/Constants.js +4 -4
  258. package/Proxy/Core/PiecewiseFunctionProxy.js +63 -72
  259. package/Proxy/Core/ProxyManager/core.js +83 -106
  260. package/Proxy/Core/ProxyManager/properties.js +53 -76
  261. package/Proxy/Core/ProxyManager/state.js +100 -110
  262. package/Proxy/Core/ProxyManager/view.js +45 -55
  263. package/Proxy/Core/ProxyManager.js +16 -8
  264. package/Proxy/Core/SourceProxy.js +41 -38
  265. package/Proxy/Core/View2DProxy.js +143 -199
  266. package/Proxy/Core/ViewProxy.js +223 -269
  267. package/Proxy/Core.js +7 -7
  268. package/Proxy/Representations/GeometryRepresentationProxy.js +34 -20
  269. package/Proxy/Representations/GlyphRepresentationProxy.js +42 -41
  270. package/Proxy/Representations/MoleculeRepresentationProxy.js +32 -22
  271. package/Proxy/Representations/ResliceRepresentationProxy.js +48 -32
  272. package/Proxy/Representations/SkyboxRepresentationProxy.js +30 -29
  273. package/Proxy/Representations/SliceRepresentationProxy.js +93 -112
  274. package/Proxy/Representations/SlicedGeometryRepresentationProxy.js +46 -42
  275. package/Proxy/Representations/VolumeRepresentationProxy.js +108 -133
  276. package/Proxy/Representations.js +7 -7
  277. package/Proxy/index.js +2 -2
  278. package/Rendering/Core/AbstractImageMapper/helper.js +44 -49
  279. package/Rendering/Core/AbstractImageMapper.js +18 -19
  280. package/Rendering/Core/AbstractMapper.js +39 -55
  281. package/Rendering/Core/AbstractMapper3D.js +26 -31
  282. package/Rendering/Core/AbstractPicker.js +25 -21
  283. package/Rendering/Core/Actor.js +71 -93
  284. package/Rendering/Core/Actor2D.js +64 -78
  285. package/Rendering/Core/AnnotatedCubeActor/Presets.js +5 -11
  286. package/Rendering/Core/AnnotatedCubeActor.js +94 -79
  287. package/Rendering/Core/AxesActor.js +65 -87
  288. package/Rendering/Core/Camera.js +246 -271
  289. package/Rendering/Core/CellPicker.js +125 -148
  290. package/Rendering/Core/ColorTransferFunction/ColorMaps.js +20 -21
  291. package/Rendering/Core/ColorTransferFunction/ColorMapsLite.js +20 -21
  292. package/Rendering/Core/ColorTransferFunction/Constants.js +4 -4
  293. package/Rendering/Core/ColorTransferFunction.js +460 -546
  294. package/Rendering/Core/Coordinate/Constants.js +2 -2
  295. package/Rendering/Core/Coordinate.js +119 -198
  296. package/Rendering/Core/CubeAxesActor.js +294 -320
  297. package/Rendering/Core/Follower.js +46 -45
  298. package/Rendering/Core/Glyph3DMapper/Constants.js +4 -4
  299. package/Rendering/Core/Glyph3DMapper.js +96 -148
  300. package/Rendering/Core/HardwareSelector.js +36 -69
  301. package/Rendering/Core/ImageArrayMapper.js +87 -126
  302. package/Rendering/Core/ImageCPRMapper.js +134 -209
  303. package/Rendering/Core/ImageMapper/Constants.js +2 -2
  304. package/Rendering/Core/ImageMapper.js +92 -170
  305. package/Rendering/Core/ImageProperty/Constants.js +2 -2
  306. package/Rendering/Core/ImageProperty.js +66 -81
  307. package/Rendering/Core/ImageResliceMapper/Constants.js +2 -2
  308. package/Rendering/Core/ImageResliceMapper.js +36 -29
  309. package/Rendering/Core/ImageSlice.js +85 -127
  310. package/Rendering/Core/InteractorObserver.js +82 -73
  311. package/Rendering/Core/InteractorStyle/Constants.js +2 -2
  312. package/Rendering/Core/InteractorStyle.js +56 -58
  313. package/Rendering/Core/Light.js +43 -49
  314. package/Rendering/Core/Mapper/CoincidentTopologyHelper.js +37 -48
  315. package/Rendering/Core/Mapper/Constants.js +6 -6
  316. package/Rendering/Core/Mapper/Static.js +15 -12
  317. package/Rendering/Core/Mapper.js +194 -259
  318. package/Rendering/Core/Mapper2D.js +61 -100
  319. package/Rendering/Core/Picker.js +124 -143
  320. package/Rendering/Core/PixelSpaceCallbackMapper.js +40 -37
  321. package/Rendering/Core/PointPicker.js +68 -79
  322. package/Rendering/Core/Prop/Constants.js +2 -2
  323. package/Rendering/Core/Prop.js +58 -106
  324. package/Rendering/Core/Prop3D.js +54 -83
  325. package/Rendering/Core/Property/Constants.js +6 -6
  326. package/Rendering/Core/Property.js +45 -74
  327. package/Rendering/Core/Property2D/Constants.js +2 -2
  328. package/Rendering/Core/Property2D.js +33 -42
  329. package/Rendering/Core/RenderWindow.js +70 -82
  330. package/Rendering/Core/RenderWindowInteractor/Constants.js +7 -7
  331. package/Rendering/Core/RenderWindowInteractor.js +324 -439
  332. package/Rendering/Core/Renderer.js +193 -257
  333. package/Rendering/Core/ScalarBarActor.js +267 -272
  334. package/Rendering/Core/Skybox.js +26 -24
  335. package/Rendering/Core/SphereMapper.js +22 -12
  336. package/Rendering/Core/StickMapper.js +22 -12
  337. package/Rendering/Core/SurfaceLICInterface/Constants.js +6 -6
  338. package/Rendering/Core/SurfaceLICInterface.js +13 -9
  339. package/Rendering/Core/SurfaceLICMapper.js +23 -15
  340. package/Rendering/Core/Texture.js +99 -141
  341. package/Rendering/Core/Viewport.js +60 -88
  342. package/Rendering/Core/Volume.js +55 -77
  343. package/Rendering/Core/VolumeMapper/Constants.js +4 -4
  344. package/Rendering/Core/VolumeMapper.js +59 -91
  345. package/Rendering/Core/VolumeProperty/Constants.js +4 -4
  346. package/Rendering/Core/VolumeProperty.js +78 -115
  347. package/Rendering/Core.js +47 -49
  348. package/Rendering/Misc/CanvasView.js +62 -61
  349. package/Rendering/Misc/FullScreenRenderWindow.js +60 -62
  350. package/Rendering/Misc/GenericRenderWindow.js +48 -37
  351. package/Rendering/Misc/RemoteView.js +86 -80
  352. package/Rendering/Misc/RenderWindowWithControlBar.js +54 -48
  353. package/Rendering/Misc/SynchronizableRenderWindow/BehaviorManager/CameraSynchronizer.js +43 -51
  354. package/Rendering/Misc/SynchronizableRenderWindow/BehaviorManager.js +52 -82
  355. package/Rendering/Misc/SynchronizableRenderWindow/ObjectManager.js +258 -308
  356. package/Rendering/Misc/SynchronizableRenderWindow.js +133 -163
  357. package/Rendering/Misc/TextureLODsDownloader.js +72 -74
  358. package/Rendering/Misc.js +7 -7
  359. package/Rendering/OpenGL/Actor.js +57 -68
  360. package/Rendering/OpenGL/Actor2D.js +56 -56
  361. package/Rendering/OpenGL/BufferObject/Constants.js +2 -2
  362. package/Rendering/OpenGL/BufferObject.js +50 -65
  363. package/Rendering/OpenGL/Camera.js +35 -29
  364. package/Rendering/OpenGL/CellArrayBufferObject.js +119 -149
  365. package/Rendering/OpenGL/Convolution2DPass.js +87 -81
  366. package/Rendering/OpenGL/CubeAxesActor.js +28 -21
  367. package/Rendering/OpenGL/ForwardPass.js +53 -64
  368. package/Rendering/OpenGL/Framebuffer.js +61 -101
  369. package/Rendering/OpenGL/Glyph3DMapper.js +165 -196
  370. package/Rendering/OpenGL/HardwareSelector/Constants.js +2 -2
  371. package/Rendering/OpenGL/HardwareSelector.js +272 -397
  372. package/Rendering/OpenGL/Helper.js +58 -73
  373. package/Rendering/OpenGL/ImageCPRMapper.js +339 -421
  374. package/Rendering/OpenGL/ImageMapper.js +268 -361
  375. package/Rendering/OpenGL/ImageResliceMapper.js +306 -438
  376. package/Rendering/OpenGL/ImageSlice.js +48 -54
  377. package/Rendering/OpenGL/OrderIndependentTranslucentPass.js +102 -84
  378. package/Rendering/OpenGL/PixelSpaceCallbackMapper.js +43 -42
  379. package/Rendering/OpenGL/PolyDataMapper.js +358 -492
  380. package/Rendering/OpenGL/PolyDataMapper2D.js +153 -205
  381. package/Rendering/OpenGL/RadialDistortionPass.js +86 -89
  382. package/Rendering/OpenGL/RenderWindow/Constants.js +2 -2
  383. package/Rendering/OpenGL/RenderWindow/ContextProxy.js +20 -29
  384. package/Rendering/OpenGL/RenderWindow.js +356 -510
  385. package/Rendering/OpenGL/Renderer.js +77 -89
  386. package/Rendering/OpenGL/ReplacementShaderMapper.js +28 -46
  387. package/Rendering/OpenGL/ScalarBarActor.js +28 -21
  388. package/Rendering/OpenGL/Shader.js +37 -31
  389. package/Rendering/OpenGL/ShaderCache.js +67 -74
  390. package/Rendering/OpenGL/ShaderProgram.js +136 -248
  391. package/Rendering/OpenGL/Skybox.js +99 -60
  392. package/Rendering/OpenGL/SphereMapper.js +94 -108
  393. package/Rendering/OpenGL/StickMapper.js +110 -114
  394. package/Rendering/OpenGL/SurfaceLIC/LineIntegralConvolution2D/pingpong.js +91 -157
  395. package/Rendering/OpenGL/SurfaceLIC/LineIntegralConvolution2D.js +142 -151
  396. package/Rendering/OpenGL/SurfaceLIC/SurfaceLICInterface.js +142 -216
  397. package/Rendering/OpenGL/SurfaceLIC/SurfaceLICMapper.js +79 -100
  398. package/Rendering/OpenGL/SurfaceLIC.js +2 -2
  399. package/Rendering/OpenGL/Texture/Constants.js +4 -4
  400. package/Rendering/OpenGL/Texture.js +444 -609
  401. package/Rendering/OpenGL/TextureUnitManager.js +47 -43
  402. package/Rendering/OpenGL/VertexArrayObject.js +92 -131
  403. package/Rendering/OpenGL/ViewNodeFactory.js +25 -13
  404. package/Rendering/OpenGL/Volume.js +38 -34
  405. package/Rendering/OpenGL/VolumeMapper.js +437 -547
  406. package/Rendering/OpenGL.js +28 -28
  407. package/Rendering/SceneGraph/RenderPass.js +34 -31
  408. package/Rendering/SceneGraph/RenderWindowViewNode.js +68 -94
  409. package/Rendering/SceneGraph/ViewNode.js +82 -111
  410. package/Rendering/SceneGraph/ViewNodeFactory.js +31 -26
  411. package/Rendering/SceneGraph.js +4 -4
  412. package/Rendering/WebGPU/Actor.js +49 -49
  413. package/Rendering/WebGPU/Actor2D.js +45 -44
  414. package/Rendering/WebGPU/BindGroup.js +43 -50
  415. package/Rendering/WebGPU/Buffer.js +41 -50
  416. package/Rendering/WebGPU/BufferManager/Constants.js +4 -4
  417. package/Rendering/WebGPU/BufferManager.js +111 -141
  418. package/Rendering/WebGPU/Camera.js +65 -67
  419. package/Rendering/WebGPU/CellArrayMapper.js +621 -388
  420. package/Rendering/WebGPU/CubeAxesActor.js +28 -19
  421. package/Rendering/WebGPU/Device.js +78 -133
  422. package/Rendering/WebGPU/ForwardPass.js +75 -72
  423. package/Rendering/WebGPU/FullScreenQuad.js +25 -18
  424. package/Rendering/WebGPU/Glyph3DMapper.js +62 -74
  425. package/Rendering/WebGPU/HardwareSelectionPass.js +45 -38
  426. package/Rendering/WebGPU/HardwareSelector.js +200 -276
  427. package/Rendering/WebGPU/ImageMapper.js +180 -171
  428. package/Rendering/WebGPU/ImageSlice.js +45 -44
  429. package/Rendering/WebGPU/IndexBuffer.js +166 -200
  430. package/Rendering/WebGPU/OpaquePass.js +37 -36
  431. package/Rendering/WebGPU/OrderIndependentTranslucentPass.js +72 -45
  432. package/Rendering/WebGPU/Pipeline.js +37 -51
  433. package/Rendering/WebGPU/PixelSpaceCallbackMapper.js +27 -19
  434. package/Rendering/WebGPU/PolyDataMapper.js +50 -53
  435. package/Rendering/WebGPU/PolyDataMapper2D.js +39 -39
  436. package/Rendering/WebGPU/RenderEncoder.js +68 -88
  437. package/Rendering/WebGPU/RenderWindow.js +262 -376
  438. package/Rendering/WebGPU/Renderer.js +224 -208
  439. package/Rendering/WebGPU/Sampler.js +27 -21
  440. package/Rendering/WebGPU/ScalarBarActor.js +28 -19
  441. package/Rendering/WebGPU/ShaderCache.js +43 -41
  442. package/Rendering/WebGPU/ShaderDescription.js +52 -59
  443. package/Rendering/WebGPU/ShaderModule.js +26 -17
  444. package/Rendering/WebGPU/SimpleMapper.js +185 -121
  445. package/Rendering/WebGPU/SphereMapper.js +200 -130
  446. package/Rendering/WebGPU/StickMapper.js +289 -152
  447. package/Rendering/WebGPU/StorageBuffer.js +100 -115
  448. package/Rendering/WebGPU/Texture.js +79 -99
  449. package/Rendering/WebGPU/TextureManager.js +52 -54
  450. package/Rendering/WebGPU/TextureView.js +40 -43
  451. package/Rendering/WebGPU/Types.js +53 -70
  452. package/Rendering/WebGPU/UniformBuffer.js +158 -184
  453. package/Rendering/WebGPU/VertexInput.js +64 -90
  454. package/Rendering/WebGPU/ViewNodeFactory.js +25 -13
  455. package/Rendering/WebGPU/Volume.js +52 -51
  456. package/Rendering/WebGPU/VolumePass.js +218 -239
  457. package/Rendering/WebGPU/VolumePassFSQ.js +625 -306
  458. package/Rendering/WebGPU.js +1 -1
  459. package/Rendering/index.js +5 -5
  460. package/Widgets/Core/AbstractWidget/Constants.js +2 -2
  461. package/Widgets/Core/AbstractWidget.js +49 -58
  462. package/Widgets/Core/AbstractWidgetFactory.js +101 -122
  463. package/Widgets/Core/StateBuilder/boundsMixin.js +23 -28
  464. package/Widgets/Core/StateBuilder/color3Mixin.js +10 -7
  465. package/Widgets/Core/StateBuilder/colorMixin.js +10 -6
  466. package/Widgets/Core/StateBuilder/cornerMixin.js +16 -15
  467. package/Widgets/Core/StateBuilder/directionMixin.js +20 -18
  468. package/Widgets/Core/StateBuilder/manipulatorMixin.js +26 -18
  469. package/Widgets/Core/StateBuilder/nameMixin.js +10 -6
  470. package/Widgets/Core/StateBuilder/orientationMixin.js +19 -16
  471. package/Widgets/Core/StateBuilder/originMixin.js +25 -32
  472. package/Widgets/Core/StateBuilder/scale1Mixin.js +10 -6
  473. package/Widgets/Core/StateBuilder/scale3Mixin.js +10 -6
  474. package/Widgets/Core/StateBuilder/shapeMixin.js +12 -6
  475. package/Widgets/Core/StateBuilder/textMixin.js +10 -6
  476. package/Widgets/Core/StateBuilder/visibleMixin.js +10 -6
  477. package/Widgets/Core/StateBuilder.js +120 -149
  478. package/Widgets/Core/WidgetManager/Constants.js +7 -7
  479. package/Widgets/Core/WidgetManager.js +249 -421
  480. package/Widgets/Core/WidgetState.js +48 -57
  481. package/Widgets/Core.js +5 -5
  482. package/Widgets/Manipulators/AbstractManipulator.js +20 -14
  483. package/Widgets/Manipulators/CPRManipulator.js +55 -71
  484. package/Widgets/Manipulators/LineManipulator.js +31 -28
  485. package/Widgets/Manipulators/PickerManipulator.d.ts +48 -0
  486. package/Widgets/Manipulators/PickerManipulator.js +65 -0
  487. package/Widgets/Manipulators/PlaneManipulator.js +26 -23
  488. package/Widgets/Manipulators/TrackballManipulator.js +39 -35
  489. package/Widgets/Manipulators.js +4 -2
  490. package/Widgets/Representations/ArrowHandleRepresentation.js +148 -162
  491. package/Widgets/Representations/CircleContextRepresentation.js +44 -38
  492. package/Widgets/Representations/ContextRepresentation.js +17 -14
  493. package/Widgets/Representations/ConvexFaceContextRepresentation.js +50 -47
  494. package/Widgets/Representations/CroppingOutlineRepresentation.js +38 -27
  495. package/Widgets/Representations/CubeHandleRepresentation.js +21 -18
  496. package/Widgets/Representations/GlyphRepresentation.js +107 -152
  497. package/Widgets/Representations/HandleRepresentation.js +17 -14
  498. package/Widgets/Representations/ImplicitPlaneRepresentation.js +97 -91
  499. package/Widgets/Representations/LineHandleRepresentation.js +44 -41
  500. package/Widgets/Representations/OutlineContextRepresentation.js +42 -36
  501. package/Widgets/Representations/PolyLineRepresentation.js +60 -75
  502. package/Widgets/Representations/RectangleContextRepresentation.js +42 -37
  503. package/Widgets/Representations/SphereContextRepresentation.js +19 -27
  504. package/Widgets/Representations/SphereHandleRepresentation.js +31 -27
  505. package/Widgets/Representations/SplineContextRepresentation.js +46 -70
  506. package/Widgets/Representations/WidgetRepresentation/Constants.js +2 -2
  507. package/Widgets/Representations/WidgetRepresentation.js +99 -134
  508. package/Widgets/Representations.js +13 -13
  509. package/Widgets/Widgets3D/AngleWidget/behavior.js +41 -63
  510. package/Widgets/Widgets3D/AngleWidget.js +41 -39
  511. package/Widgets/Widgets3D/DistanceWidget/behavior.js +40 -61
  512. package/Widgets/Widgets3D/DistanceWidget.js +38 -36
  513. package/Widgets/Widgets3D/EllipseWidget/behavior.js +14 -19
  514. package/Widgets/Widgets3D/EllipseWidget/state.js +4 -2
  515. package/Widgets/Widgets3D/EllipseWidget.js +37 -26
  516. package/Widgets/Widgets3D/ImageCroppingWidget/behavior.js +26 -56
  517. package/Widgets/Widgets3D/ImageCroppingWidget/helpers.js +14 -17
  518. package/Widgets/Widgets3D/ImageCroppingWidget/state.js +20 -16
  519. package/Widgets/Widgets3D/ImageCroppingWidget.js +80 -98
  520. package/Widgets/Widgets3D/ImplicitPlaneWidget.js +55 -77
  521. package/Widgets/Widgets3D/InteractiveOrientationWidget/behavior.js +17 -18
  522. package/Widgets/Widgets3D/InteractiveOrientationWidget/state.js +15 -7
  523. package/Widgets/Widgets3D/InteractiveOrientationWidget.js +30 -29
  524. package/Widgets/Widgets3D/LabelWidget/behavior.js +37 -62
  525. package/Widgets/Widgets3D/LabelWidget.js +31 -25
  526. package/Widgets/Widgets3D/LineWidget/Constants.js +8 -8
  527. package/Widgets/Widgets3D/LineWidget/behavior.js +77 -114
  528. package/Widgets/Widgets3D/LineWidget/helpers.js +13 -20
  529. package/Widgets/Widgets3D/LineWidget/state.js +2 -1
  530. package/Widgets/Widgets3D/LineWidget.js +39 -35
  531. package/Widgets/Widgets3D/PaintWidget/behavior.js +24 -59
  532. package/Widgets/Widgets3D/PaintWidget.js +39 -37
  533. package/Widgets/Widgets3D/PolyLineWidget/behavior.js +44 -68
  534. package/Widgets/Widgets3D/PolyLineWidget.js +36 -31
  535. package/Widgets/Widgets3D/RectangleWidget/behavior.js +6 -11
  536. package/Widgets/Widgets3D/RectangleWidget/state.js +4 -2
  537. package/Widgets/Widgets3D/RectangleWidget.js +37 -25
  538. package/Widgets/Widgets3D/ResliceCursorWidget/Constants.js +35 -21
  539. package/Widgets/Widgets3D/ResliceCursorWidget/behavior.js +134 -210
  540. package/Widgets/Widgets3D/ResliceCursorWidget/cprBehavior.js +26 -41
  541. package/Widgets/Widgets3D/ResliceCursorWidget/helpers.js +90 -117
  542. package/Widgets/Widgets3D/ResliceCursorWidget/state.js +33 -40
  543. package/Widgets/Widgets3D/ResliceCursorWidget.js +186 -227
  544. package/Widgets/Widgets3D/SeedWidget/behavior.js +82 -0
  545. package/Widgets/Widgets3D/SeedWidget/state.js +18 -0
  546. package/Widgets/Widgets3D/SeedWidget.d.ts +44 -0
  547. package/Widgets/Widgets3D/SeedWidget.js +43 -0
  548. package/Widgets/Widgets3D/ShapeWidget/Constants.js +19 -19
  549. package/Widgets/Widgets3D/ShapeWidget/behavior.js +150 -252
  550. package/Widgets/Widgets3D/ShapeWidget.js +24 -27
  551. package/Widgets/Widgets3D/SphereWidget/behavior.js +35 -69
  552. package/Widgets/Widgets3D/SphereWidget/state.js +9 -5
  553. package/Widgets/Widgets3D/SphereWidget.js +34 -44
  554. package/Widgets/Widgets3D/SplineWidget/behavior.js +85 -120
  555. package/Widgets/Widgets3D/SplineWidget.js +43 -39
  556. package/Widgets/Widgets3D.js +15 -15
  557. package/Widgets/index.js +4 -4
  558. package/_virtual/rollup-plugin-worker-loader__module_Sources/Filters/General/PaintFilter/PaintFilter.worker.js +95 -207
  559. package/_virtual/rollup-plugin-worker-loader__module_Sources/Interaction/Widgets/PiecewiseGaussianWidget/ComputeHistogram.worker.js +0 -3
  560. package/favicon.js +5 -6
  561. package/index.d.ts +4 -2
  562. package/index.js +4 -3
  563. package/macros.js +4 -1931
  564. package/macros2.js +1684 -0
  565. package/package.json +6 -6
  566. package/vtk.js +18 -31
@@ -1,7 +1,4 @@
1
- import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
- import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
3
- import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
4
- import { capitalize } from '../../../macros.js';
1
+ import { q as capitalize } from '../../../macros2.js';
5
2
  import vtkActor from '../../Core/Actor.js';
6
3
  import vtkCamera from '../../Core/Camera.js';
7
4
  import vtkColorTransferFunction from '../../Core/ColorTransferFunction.js';
@@ -30,367 +27,335 @@ import vtkScalarBarActor from '../../Core/ScalarBarActor.js';
30
27
  import vtkAxesActor from '../../Core/AxesActor.js';
31
28
  import BehaviorManager from './BehaviorManager.js';
32
29
 
33
- 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; }
34
-
35
- 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; }
30
+ // ----------------------------------------------------------------------------
36
31
  // Some internal, module-level variables and methods
37
32
  // ----------------------------------------------------------------------------
38
33
 
39
- var TYPE_HANDLERS = {};
40
- var WRAPPED_ID_RE = /instance:\${([^}]+)}/;
41
-
42
- var WRAP_ID = function WRAP_ID(id) {
43
- return "instance:${".concat(id, "}");
34
+ const TYPE_HANDLERS = {};
35
+ const WRAPPED_ID_RE = /instance:\${([^}]+)}/;
36
+ const WRAP_ID = id => `instance:$\{${id}}`;
37
+ const ONE_TIME_INSTANCE_TRACKERS = {};
38
+ const SKIPPED_INSTANCE_IDS = [];
39
+ const EXCLUDE_INSTANCE_MAP = {};
40
+ const DATA_ARRAY_MAPPER = {
41
+ vtkPoints,
42
+ vtkCellArray,
43
+ vtkDataArray
44
44
  };
45
45
 
46
- var ONE_TIME_INSTANCE_TRACKERS = {};
47
- var SKIPPED_INSTANCE_IDS = [];
48
- var EXCLUDE_INSTANCE_MAP = {};
49
- var DATA_ARRAY_MAPPER = {
50
- vtkPoints: vtkPoints,
51
- vtkCellArray: vtkCellArray,
52
- vtkDataArray: vtkDataArray
53
- }; // ----------------------------------------------------------------------------
46
+ // ----------------------------------------------------------------------------
54
47
 
55
48
  function extractCallArgs(synchronizerContext, argList) {
56
- return argList.map(function (arg) {
57
- var m = WRAPPED_ID_RE.exec(arg);
58
-
49
+ return argList.map(arg => {
50
+ const m = WRAPPED_ID_RE.exec(arg);
59
51
  if (m) {
60
52
  return synchronizerContext.getInstance(m[1]);
61
53
  }
62
-
63
54
  return arg;
64
55
  });
65
- } // ----------------------------------------------------------------------------
56
+ }
66
57
 
58
+ // ----------------------------------------------------------------------------
67
59
 
68
60
  function extractInstanceIds(argList) {
69
- return argList.map(function (arg) {
70
- return WRAPPED_ID_RE.exec(arg);
71
- }).filter(function (m) {
72
- return m;
73
- }).map(function (m) {
74
- return m[1];
75
- });
76
- } // ----------------------------------------------------------------------------
61
+ return argList.map(arg => WRAPPED_ID_RE.exec(arg)).filter(m => m).map(m => m[1]);
62
+ }
77
63
 
64
+ // ----------------------------------------------------------------------------
78
65
 
79
66
  function extractDependencyIds(state) {
80
- var depList = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
81
-
67
+ let depList = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
82
68
  if (state.dependencies) {
83
- state.dependencies.forEach(function (childState) {
69
+ state.dependencies.forEach(childState => {
84
70
  depList.push(childState.id);
85
71
  extractDependencyIds(childState, depList);
86
72
  });
87
73
  }
88
-
89
74
  return depList;
90
- } // ----------------------------------------------------------------------------
75
+ }
91
76
 
77
+ // ----------------------------------------------------------------------------
92
78
 
93
79
  function bindArrays(arraysToBind) {
94
80
  while (arraysToBind.length) {
95
- var _arraysToBind$shift = arraysToBind.shift(),
96
- _arraysToBind$shift2 = _slicedToArray(_arraysToBind$shift, 2),
97
- fn = _arraysToBind$shift2[0],
98
- args = _arraysToBind$shift2[1];
99
-
100
- fn.apply(void 0, _toConsumableArray(args));
81
+ const [fn, args] = arraysToBind.shift();
82
+ fn(...args);
101
83
  }
102
- } // ----------------------------------------------------------------------------
84
+ }
103
85
 
86
+ // ----------------------------------------------------------------------------
104
87
 
105
88
  function createNewArrayHandler(instance, arrayMetadata, arraysToBind) {
106
- return function (values) {
107
- var regMethod = arrayMetadata.registration ? arrayMetadata.registration : 'addArray';
108
- var location = arrayMetadata.location ? instance.getReferenceByName(arrayMetadata.location) : instance; // Try to prevent unncessary modified
109
-
110
- var previousArray = null;
89
+ return values => {
90
+ const regMethod = arrayMetadata.registration ? arrayMetadata.registration : 'addArray';
91
+ const location = arrayMetadata.location ? instance.getReferenceByName(arrayMetadata.location) : instance;
111
92
 
93
+ // Try to prevent unncessary modified
94
+ let previousArray = null;
112
95
  if (arrayMetadata.location) {
113
96
  previousArray = instance.getReferenceByName(arrayMetadata.location).getArray(arrayMetadata.name);
114
97
  } else {
115
- previousArray = instance["get".concat(regMethod.substring(3))]();
98
+ previousArray = instance[`get${regMethod.substring(3)}`]();
116
99
  }
117
-
118
100
  if (previousArray) {
119
101
  if (previousArray.getData() !== values) {
120
102
  arraysToBind.push([previousArray.setData, [values, arrayMetadata.numberOfComponents]]);
121
103
  }
122
-
123
104
  return previousArray;
124
105
  }
125
-
126
- var vtkClass = arrayMetadata.vtkClass ? arrayMetadata.vtkClass : 'vtkDataArray';
127
- var array = DATA_ARRAY_MAPPER[vtkClass].newInstance(_objectSpread(_objectSpread({}, arrayMetadata), {}, {
128
- values: values
129
- }));
106
+ const vtkClass = arrayMetadata.vtkClass ? arrayMetadata.vtkClass : 'vtkDataArray';
107
+ const array = DATA_ARRAY_MAPPER[vtkClass].newInstance({
108
+ ...arrayMetadata,
109
+ values
110
+ });
130
111
  arraysToBind.push([location[regMethod], [array]]);
131
112
  return array;
132
113
  };
133
- } // ----------------------------------------------------------------------------
114
+ }
115
+
116
+ // ----------------------------------------------------------------------------
134
117
  // Static methods for export
135
118
  // ----------------------------------------------------------------------------
136
119
 
137
-
138
120
  function update(type, instance, props, context) {
139
121
  if (!instance) {
140
- return Promise.reject(new Error("No instance provided."));
122
+ return Promise.reject(new Error(`No instance provided.`));
141
123
  }
142
-
143
- var handler = TYPE_HANDLERS[type];
144
-
124
+ const handler = TYPE_HANDLERS[type];
145
125
  if (handler && handler.update) {
146
126
  return handler.update(instance, props, context);
147
127
  }
128
+ return Promise.reject(new Error(`No updater for ${type}`));
129
+ }
148
130
 
149
- return Promise.reject(new Error("No updater for ".concat(type)));
150
- } // ----------------------------------------------------------------------------
151
-
131
+ // ----------------------------------------------------------------------------
152
132
 
153
133
  function build(type) {
154
- var initialProps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
155
- var handler = TYPE_HANDLERS[type];
156
-
134
+ let initialProps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
135
+ const handler = TYPE_HANDLERS[type];
157
136
  if (handler && handler.build) {
158
137
  // DEBUG console.log(`new ${type} - ${initialProps.managedInstanceId}`);
159
138
  return handler.build(initialProps);
160
139
  }
161
-
162
140
  console.log('No builder for', type);
163
141
  return null;
164
- } // ----------------------------------------------------------------------------
142
+ }
165
143
 
144
+ // ----------------------------------------------------------------------------
166
145
 
167
146
  function excludeInstance(type, propertyName, propertyValue) {
168
147
  EXCLUDE_INSTANCE_MAP[type] = {
169
148
  key: propertyName,
170
149
  value: propertyValue
171
150
  };
172
- } // ----------------------------------------------------------------------------
151
+ }
173
152
 
153
+ // ----------------------------------------------------------------------------
174
154
 
175
155
  function getSupportedTypes() {
176
156
  return Object.keys(TYPE_HANDLERS);
177
- } // ----------------------------------------------------------------------------
157
+ }
178
158
 
159
+ // ----------------------------------------------------------------------------
179
160
 
180
161
  function clearTypeMapping() {
181
- Object.keys(TYPE_HANDLERS).forEach(function (key) {
162
+ Object.keys(TYPE_HANDLERS).forEach(key => {
182
163
  delete TYPE_HANDLERS[key];
183
164
  });
184
- } // ----------------------------------------------------------------------------
165
+ }
185
166
 
167
+ // ----------------------------------------------------------------------------
186
168
 
187
169
  function updateRenderWindow(instance, props, context) {
188
170
  return update('vtkRenderWindow', instance, props, context);
189
- } // ----------------------------------------------------------------------------
171
+ }
190
172
 
173
+ // ----------------------------------------------------------------------------
191
174
 
192
175
  function clearAllOneTimeUpdaters() {
193
- Object.keys(ONE_TIME_INSTANCE_TRACKERS).forEach(function (key) {
176
+ Object.keys(ONE_TIME_INSTANCE_TRACKERS).forEach(key => {
194
177
  delete ONE_TIME_INSTANCE_TRACKERS[key];
195
178
  });
196
- } // ----------------------------------------------------------------------------
179
+ }
197
180
 
181
+ // ----------------------------------------------------------------------------
198
182
 
199
183
  function clearOneTimeUpdaters() {
200
184
  for (var _len = arguments.length, ids = new Array(_len), _key = 0; _key < _len; _key++) {
201
185
  ids[_key] = arguments[_key];
202
186
  }
203
-
204
187
  if (ids.length === 0) {
205
188
  return clearAllOneTimeUpdaters();
206
189
  }
207
-
208
- var array = ids; // allow an array passed as a single arg.
209
-
190
+ let array = ids;
191
+ // allow an array passed as a single arg.
210
192
  if (array.length === 1 && Array.isArray(array[0])) {
211
193
  array = array[0];
212
194
  }
213
-
214
- array.forEach(function (instanceId) {
195
+ array.forEach(instanceId => {
215
196
  delete ONE_TIME_INSTANCE_TRACKERS[instanceId];
216
197
  });
217
198
  return array;
218
- } // ----------------------------------------------------------------------------
199
+ }
219
200
 
201
+ // ----------------------------------------------------------------------------
220
202
 
221
203
  function notSkippedInstance(call) {
222
204
  if (call[1].length === 1) {
223
205
  return SKIPPED_INSTANCE_IDS.indexOf(call[1][0]) === -1;
224
206
  }
225
-
226
- var keep = false;
227
-
228
- for (var i = 0; i < call[1].length; i++) {
207
+ let keep = false;
208
+ for (let i = 0; i < call[1].length; i++) {
229
209
  keep = keep || SKIPPED_INSTANCE_IDS.indexOf(call[1][i]) === -1;
230
210
  }
231
-
232
211
  return keep;
233
- } // ----------------------------------------------------------------------------
212
+ }
213
+
214
+ // ----------------------------------------------------------------------------
234
215
  // Updater functions
235
216
  // ----------------------------------------------------------------------------
236
217
 
237
-
238
218
  function genericUpdater(instance, state, context) {
239
219
  context.start(); // -> start(generic-updater)
240
- // First update our own properties
241
220
 
242
- instance.set(state.properties); // Now handle dependencies
221
+ // First update our own properties
222
+ instance.set(state.properties);
243
223
 
224
+ // Now handle dependencies
244
225
  if (state.dependencies) {
245
- state.dependencies.forEach(function (childState) {
246
- var id = childState.id,
247
- type = childState.type;
248
-
226
+ state.dependencies.forEach(childState => {
227
+ const {
228
+ id,
229
+ type
230
+ } = childState;
249
231
  if (EXCLUDE_INSTANCE_MAP[type]) {
250
- var _EXCLUDE_INSTANCE_MAP = EXCLUDE_INSTANCE_MAP[type],
251
- key = _EXCLUDE_INSTANCE_MAP.key,
252
- value = _EXCLUDE_INSTANCE_MAP.value;
253
-
232
+ const {
233
+ key,
234
+ value
235
+ } = EXCLUDE_INSTANCE_MAP[type];
254
236
  if (!key || childState.properties[key] === value) {
255
237
  SKIPPED_INSTANCE_IDS.push(WRAP_ID(id));
256
238
  return;
257
239
  }
258
240
  }
259
-
260
- var childInstance = context.getInstance(id);
261
-
241
+ let childInstance = context.getInstance(id);
262
242
  if (!childInstance) {
263
243
  childInstance = build(type, {
264
244
  managedInstanceId: id
265
245
  });
266
246
  context.registerInstance(id, childInstance);
267
247
  }
268
-
269
248
  update(type, childInstance, childState, context);
270
249
  });
271
250
  }
272
-
273
251
  if (state.calls) {
274
- state.calls.filter(notSkippedInstance).forEach(function (call) {
252
+ state.calls.filter(notSkippedInstance).forEach(call => {
275
253
  // DEBUG console.log('==>', call[0], extractCallArgs(context, call[1]));
276
254
  instance[call[0]].apply(null, extractCallArgs(context, call[1]));
277
255
  });
278
- } // if some arrays need to be be fetch
279
-
280
-
281
- var dependencies = [];
256
+ }
282
257
 
258
+ // if some arrays need to be be fetch
259
+ const dependencies = [];
283
260
  if (state.arrays) {
284
- var arraysToBind = [];
285
- var promises = Object.values(state.arrays).map(function (arrayMetadata) {
261
+ const arraysToBind = [];
262
+ const promises = Object.values(state.arrays).map(arrayMetadata => {
286
263
  context.start(); // -> start(arrays)
287
-
288
- return context.getArray(arrayMetadata.hash, arrayMetadata.dataType, context).then(createNewArrayHandler(instance, arrayMetadata, arraysToBind)).catch(function (error) {
264
+ return context.getArray(arrayMetadata.hash, arrayMetadata.dataType, context).then(createNewArrayHandler(instance, arrayMetadata, arraysToBind)).catch(error => {
289
265
  console.log('Error fetching array', JSON.stringify(arrayMetadata), error);
290
266
  }).finally(context.end); // -> end(arrays)
291
267
  });
292
- context.start(); // -> start(arraysToBind)
293
268
 
294
- dependencies.push(Promise.all(promises).then(function () {
269
+ context.start(); // -> start(arraysToBind)
270
+ dependencies.push(Promise.all(promises).then(() => {
295
271
  // Since some arrays are getting updated, we should modify our dataset
296
272
  if (arraysToBind.length) {
297
273
  instance.modified();
298
274
  }
299
-
300
275
  bindArrays(arraysToBind);
301
276
  return true;
302
- }).catch(function (error) {
277
+ }).catch(error => {
303
278
  console.error('Error in array handling for state', JSON.stringify(state), error);
304
279
  }).finally(context.end) // -> end(arraysToBind)
305
280
  );
306
281
  }
307
282
 
308
283
  context.end(); // -> end(generic-updater)
309
-
310
284
  return Promise.all(dependencies);
311
- } // ----------------------------------------------------------------------------
285
+ }
312
286
 
287
+ // ----------------------------------------------------------------------------
313
288
 
314
289
  function oneTimeGenericUpdater(instance, state, context) {
315
290
  if (!ONE_TIME_INSTANCE_TRACKERS[state.id]) {
316
291
  genericUpdater(instance, state, context);
317
292
  }
318
-
319
293
  ONE_TIME_INSTANCE_TRACKERS[state.id] = true;
320
- } // ----------------------------------------------------------------------------
294
+ }
321
295
 
296
+ // ----------------------------------------------------------------------------
322
297
 
323
298
  function rendererUpdater(instance, state, context) {
324
299
  // Don't do start/end on the context here because we don't need to hold up
325
300
  // rendering for the book-keeping we do after the genericUpdater finishes.
301
+
326
302
  // First allow generic update process to happen as usual
327
- genericUpdater(instance, state, context); // Any view props that were removed in the previous phase, genericUpdater(...),
303
+ genericUpdater(instance, state, context);
304
+
305
+ // Any view props that were removed in the previous phase, genericUpdater(...),
328
306
  // may have left orphaned children in our instance cache. Below is where those
329
307
  // refs can be tracked in the first place, and then later removed as necessary
330
308
  // to allow garbage collection.
309
+
331
310
  // In some cases, seemingly with 'vtkColorTransferFunction', the server side
332
311
  // object id may be conserved even though the actor and mapper containing or
333
312
  // using it were deleted. In this case we must not unregister an instance
334
313
  // which is depended upon by an incoming actor just because it was also
335
314
  // depended upon by an outgoing one.
315
+ const allActorsDeps = new Set();
336
316
 
337
- var allActorsDeps = new Set(); // Here we gather the list of dependencies (instance ids) for each view prop and
317
+ // Here we gather the list of dependencies (instance ids) for each view prop and
338
318
  // store them on the instance, in case that view prop is later removed.
339
-
340
319
  if (state.dependencies) {
341
- state.dependencies.forEach(function (childState) {
342
- var viewPropInstance = context.getInstance(childState.id);
343
-
320
+ state.dependencies.forEach(childState => {
321
+ const viewPropInstance = context.getInstance(childState.id);
344
322
  if (viewPropInstance) {
345
- var flattenedDepIds = extractDependencyIds(childState);
323
+ const flattenedDepIds = extractDependencyIds(childState);
346
324
  viewPropInstance.set({
347
- flattenedDepIds: flattenedDepIds
325
+ flattenedDepIds
348
326
  }, true);
349
- flattenedDepIds.forEach(function (depId) {
350
- return allActorsDeps.add(depId);
351
- });
327
+ flattenedDepIds.forEach(depId => allActorsDeps.add(depId));
352
328
  }
353
329
  });
354
- } // Look for 'removeViewProp' calls and clean up references to dependencies of
355
- // those view props.
356
-
357
-
358
- var unregisterCandidates = new Set();
330
+ }
359
331
 
332
+ // Look for 'removeViewProp' calls and clean up references to dependencies of
333
+ // those view props.
334
+ const unregisterCandidates = new Set();
360
335
  if (state.calls) {
361
- state.calls.filter(notSkippedInstance).filter(function (call) {
362
- return call[0] === 'removeViewProp';
363
- }).forEach(function (call) {
336
+ state.calls.filter(notSkippedInstance).filter(call => call[0] === 'removeViewProp').forEach(call => {
364
337
  // extract any ids associated with a 'removeViewProp' call (though really there
365
338
  // should just be a single one), and use them to build a flat list of all
366
339
  // representation dependency ids which we can then use our synchronizer context
367
340
  // to unregister
368
- extractInstanceIds(call[1]).forEach(function (vpId) {
369
- var deps = context.getInstance(vpId).get('flattenedDepIds').flattenedDepIds;
370
-
341
+ extractInstanceIds(call[1]).forEach(vpId => {
342
+ const deps = context.getInstance(vpId).get('flattenedDepIds').flattenedDepIds;
371
343
  if (deps) {
372
344
  // Consider each dependency for un-registering
373
- deps.forEach(function (depId) {
374
- return unregisterCandidates.add(depId);
375
- });
376
- } // Consider the viewProp itself for un-registering
377
-
378
-
345
+ deps.forEach(depId => unregisterCandidates.add(depId));
346
+ }
347
+ // Consider the viewProp itself for un-registering
379
348
  unregisterCandidates.add(vpId);
380
349
  });
381
350
  });
382
- } // Now unregister any instances that are no longer needed
383
-
384
-
385
- var idsToUnregister = _toConsumableArray(unregisterCandidates).filter(function (depId) {
386
- return !allActorsDeps.has(depId);
387
- });
351
+ }
388
352
 
389
- idsToUnregister.forEach(function (depId) {
390
- return context.unregisterInstance(depId);
391
- });
392
- } // ----------------------------------------------------------------------------
353
+ // Now unregister any instances that are no longer needed
354
+ const idsToUnregister = [...unregisterCandidates].filter(depId => !allActorsDeps.has(depId));
355
+ idsToUnregister.forEach(depId => context.unregisterInstance(depId));
356
+ }
393
357
 
358
+ // ----------------------------------------------------------------------------
394
359
 
395
360
  function vtkRenderWindowUpdater(instance, state, context) {
396
361
  // For each renderer we may be removing from this render window, we should first
@@ -398,115 +363,95 @@ function vtkRenderWindowUpdater(instance, state, context) {
398
363
  // itself. This will clear the screen, at which point we can go about the normal
399
364
  // updater process.
400
365
  if (state.calls) {
401
- state.calls.filter(notSkippedInstance).filter(function (call) {
402
- return call[0] === 'removeRenderer';
403
- }).forEach(function (call) {
404
- extractInstanceIds(call[1]).forEach(function (renId) {
405
- var renderer = context.getInstance(renId); // Take brief detour through the view props to unregister the dependencies
366
+ state.calls.filter(notSkippedInstance).filter(call => call[0] === 'removeRenderer').forEach(call => {
367
+ extractInstanceIds(call[1]).forEach(renId => {
368
+ const renderer = context.getInstance(renId);
369
+ // Take brief detour through the view props to unregister the dependencies
406
370
  // of each one
407
-
408
- var viewProps = renderer.getViewProps();
409
- viewProps.forEach(function (viewProp) {
410
- var deps = viewProp.get('flattenedDepIds').flattenedDepIds;
411
-
371
+ const viewProps = renderer.getViewProps();
372
+ viewProps.forEach(viewProp => {
373
+ const deps = viewProp.get('flattenedDepIds').flattenedDepIds;
412
374
  if (deps) {
413
- deps.forEach(function (depId) {
414
- return context.unregisterInstance(depId);
415
- });
375
+ deps.forEach(depId => context.unregisterInstance(depId));
416
376
  }
417
-
418
377
  context.unregisterInstance(context.getInstanceId(viewProp));
419
378
  });
420
379
  });
421
380
  });
422
381
  }
382
+ instance.render();
423
383
 
424
- instance.render(); // Now just do normal update process
425
-
426
- genericUpdater(instance, state, context); // Manage any associated behaviors
384
+ // Now just do normal update process
385
+ genericUpdater(instance, state, context);
427
386
 
387
+ // Manage any associated behaviors
428
388
  BehaviorManager.applyBehaviors(instance, state, context);
429
- } // ----------------------------------------------------------------------------
389
+ }
430
390
 
391
+ // ----------------------------------------------------------------------------
431
392
 
432
393
  function colorTransferFunctionUpdater(instance, state, context) {
433
394
  context.start(); // -> start(colorTransferFunctionUpdater)
434
-
435
395
  if (!state.properties.nodes) {
436
396
  instance.set(state.properties);
437
397
  } else {
438
- var nodes = state.properties.nodes.map(function (_ref) {
439
- var _ref2 = _slicedToArray(_ref, 6),
440
- x = _ref2[0],
441
- r = _ref2[1],
442
- g = _ref2[2],
443
- b = _ref2[3],
444
- midpoint = _ref2[4],
445
- sharpness = _ref2[5];
446
-
398
+ const nodes = state.properties.nodes.map(_ref => {
399
+ let [x, r, g, b, midpoint, sharpness] = _ref;
447
400
  return {
448
- x: x,
449
- r: r,
450
- g: g,
451
- b: b,
452
- midpoint: midpoint,
453
- sharpness: sharpness
401
+ x,
402
+ r,
403
+ g,
404
+ b,
405
+ midpoint,
406
+ sharpness
454
407
  };
455
408
  });
456
- instance.set(_objectSpread(_objectSpread({}, state.properties), {}, {
457
- nodes: nodes
458
- }), true);
409
+ instance.set({
410
+ ...state.properties,
411
+ nodes
412
+ }, true);
459
413
  }
460
-
461
414
  context.end(); // -> end(colorTransferFunctionUpdater)
462
415
  }
463
416
 
464
417
  function piecewiseFunctionUpdater(instance, state, context) {
465
418
  context.start(); // -> start(piecewiseFunctionUpdater)
466
-
467
419
  if (!state.properties.nodes) {
468
420
  instance.set(state.properties);
469
421
  } else {
470
- var nodes = state.properties.nodes.map(function (_ref3) {
471
- var _ref4 = _slicedToArray(_ref3, 4),
472
- x = _ref4[0],
473
- y = _ref4[1],
474
- midpoint = _ref4[2],
475
- sharpness = _ref4[3];
476
-
422
+ const nodes = state.properties.nodes.map(_ref2 => {
423
+ let [x, y, midpoint, sharpness] = _ref2;
477
424
  return {
478
- x: x,
479
- y: y,
480
- midpoint: midpoint,
481
- sharpness: sharpness
425
+ x,
426
+ y,
427
+ midpoint,
428
+ sharpness
482
429
  };
483
430
  });
484
- instance.set(_objectSpread(_objectSpread({}, state.properties), {}, {
485
- nodes: nodes
486
- }), true);
431
+ instance.set({
432
+ ...state.properties,
433
+ nodes
434
+ }, true);
487
435
  instance.sortAndUpdateRange();
488
- } // instance.modified();
489
-
490
-
436
+ }
437
+ // instance.modified();
491
438
  context.end(); // -> end(piecewiseFunctionUpdater)
492
- } // ----------------------------------------------------------------------------
439
+ }
493
440
 
441
+ // ----------------------------------------------------------------------------
494
442
 
495
443
  function removeUnavailableArrays(fields, availableNames) {
496
- var namesToDelete = [];
497
- var size = fields.getNumberOfArrays();
498
-
499
- for (var i = 0; i < size; i++) {
500
- var array = fields.getArray(i);
501
- var name = array.getName();
502
-
444
+ const namesToDelete = [];
445
+ const size = fields.getNumberOfArrays();
446
+ for (let i = 0; i < size; i++) {
447
+ const array = fields.getArray(i);
448
+ const name = array.getName();
503
449
  if (!availableNames.has(name)) {
504
450
  namesToDelete.push(name);
505
451
  }
506
452
  }
507
-
508
- for (var _i = 0; _i < namesToDelete.length; _i++) {
509
- fields.removeArray(namesToDelete[_i]);
453
+ for (let i = 0; i < namesToDelete.length; i++) {
454
+ fields.removeArray(namesToDelete[i]);
510
455
  }
511
456
  }
512
457
  /**
@@ -514,99 +459,97 @@ function removeUnavailableArrays(fields, availableNames) {
514
459
  * @param {object} arrayMeta
515
460
  * @returns {string} array key
516
461
  */
517
-
518
-
519
462
  function getArrayKey(arrayMeta) {
520
463
  // Two arrays can have exactly the same hash so try to distinquish with name.
521
- var namePart = arrayMeta.name ? "_".concat(arrayMeta.name) : '';
522
- return "".concat(arrayMeta.hash, "_").concat(arrayMeta.dataType).concat(namePart);
464
+ const namePart = arrayMeta.name ? `_${arrayMeta.name}` : '';
465
+ return `${arrayMeta.hash}_${arrayMeta.dataType}${namePart}`;
523
466
  }
524
-
525
467
  function createDataSetUpdate() {
526
- var piecesToFetch = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
527
- return function (instance, state, context) {
468
+ let piecesToFetch = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
469
+ return (instance, state, context) => {
528
470
  context.start(); // -> start(dataset-update)
529
- // Make sure we provide container for std arrays
530
-
531
- var localProperties = _objectSpread({}, state.properties);
532
471
 
472
+ // Make sure we provide container for std arrays
473
+ const localProperties = {
474
+ ...state.properties
475
+ };
533
476
  if (!state.arrays) {
534
477
  state.arrays = {};
535
- } // Array members
536
- // => convert old format to generic state.arrays
537
-
538
-
539
- for (var i = 0; i < piecesToFetch.length; i++) {
540
- var key = piecesToFetch[i];
478
+ }
541
479
 
480
+ // Array members
481
+ // => convert old format to generic state.arrays
482
+ for (let i = 0; i < piecesToFetch.length; i++) {
483
+ const key = piecesToFetch[i];
542
484
  if (state.properties[key]) {
543
- var arrayMeta = state.properties[key];
544
- arrayMeta.registration = "set".concat(capitalize(key));
545
- var arrayKey = getArrayKey(arrayMeta);
485
+ const arrayMeta = state.properties[key];
486
+ arrayMeta.registration = `set${capitalize(key)}`;
487
+ const arrayKey = getArrayKey(arrayMeta);
546
488
  state.arrays[arrayKey] = arrayMeta;
547
489
  delete localProperties[key];
548
490
  }
549
- } // Extract dataset fields
550
-
551
-
552
- var fieldsArrays = state.properties.fields || [];
553
-
554
- for (var _i2 = 0; _i2 < fieldsArrays.length; _i2++) {
555
- var _arrayMeta = fieldsArrays[_i2];
556
-
557
- var _arrayKey = getArrayKey(_arrayMeta);
558
-
559
- state.arrays[_arrayKey] = _arrayMeta;
560
491
  }
561
492
 
562
- delete localProperties.fields; // Reset any pre-existing fields array
493
+ // Extract dataset fields
494
+ const fieldsArrays = state.properties.fields || [];
495
+ for (let i = 0; i < fieldsArrays.length; i++) {
496
+ const arrayMeta = fieldsArrays[i];
497
+ const arrayKey = getArrayKey(arrayMeta);
498
+ state.arrays[arrayKey] = arrayMeta;
499
+ }
500
+ delete localProperties.fields;
563
501
 
564
- var arrayToKeep = {
502
+ // Reset any pre-existing fields array
503
+ const arrayToKeep = {
565
504
  pointData: new Set(),
566
505
  cellData: new Set(),
567
506
  fieldData: new Set()
568
507
  };
569
- fieldsArrays.forEach(function (_ref5) {
570
- var location = _ref5.location,
571
- name = _ref5.name;
508
+ fieldsArrays.forEach(_ref3 => {
509
+ let {
510
+ location,
511
+ name
512
+ } = _ref3;
572
513
  arrayToKeep[location].add(name);
573
514
  });
574
515
  removeUnavailableArrays(instance.getPointData(), arrayToKeep.pointData);
575
- removeUnavailableArrays(instance.getCellData(), arrayToKeep.cellData); // Generic handling
576
-
577
- var cleanState = _objectSpread({}, state);
516
+ removeUnavailableArrays(instance.getCellData(), arrayToKeep.cellData);
578
517
 
518
+ // Generic handling
519
+ const cleanState = {
520
+ ...state
521
+ };
579
522
  cleanState.properties = localProperties;
580
- var res = genericUpdater(instance, cleanState, context); // Finish what we started
523
+ const res = genericUpdater(instance, cleanState, context);
581
524
 
525
+ // Finish what we started
582
526
  context.end(); // -> end(dataset-update)
583
-
584
527
  return res;
585
528
  };
586
529
  }
530
+ const polydataUpdater = createDataSetUpdate(['points', 'polys', 'verts', 'lines', 'strips']);
531
+ const imageDataUpdater = createDataSetUpdate([]);
587
532
 
588
- var polydataUpdater = createDataSetUpdate(['points', 'polys', 'verts', 'lines', 'strips']);
589
- var imageDataUpdater = createDataSetUpdate([]); // ----------------------------------------------------------------------------
533
+ // ----------------------------------------------------------------------------
590
534
  // Construct the type mapping
591
535
  // ----------------------------------------------------------------------------
592
536
 
593
537
  function setTypeMapping(type) {
594
- var buildFn = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
595
- var updateFn = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : genericUpdater;
596
-
538
+ let buildFn = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
539
+ let updateFn = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : genericUpdater;
597
540
  if (!build && !update) {
598
541
  delete TYPE_HANDLERS[type];
599
542
  return;
600
543
  }
601
-
602
544
  TYPE_HANDLERS[type] = {
603
545
  build: buildFn,
604
546
  update: updateFn
605
547
  };
606
- } // ----------------------------------------------------------------------------
548
+ }
607
549
 
550
+ // ----------------------------------------------------------------------------
608
551
 
609
- var DEFAULT_ALIASES = {
552
+ const DEFAULT_ALIASES = {
610
553
  vtkMapper: ['vtkOpenGLPolyDataMapper', 'vtkCompositePolyDataMapper2', 'vtkDataSetMapper'],
611
554
  vtkProperty: ['vtkOpenGLProperty'],
612
555
  vtkRenderer: ['vtkOpenGLRenderer'],
@@ -617,9 +560,11 @@ var DEFAULT_ALIASES = {
617
560
  vtkTexture: ['vtkOpenGLTexture'],
618
561
  vtkImageMapper: ['vtkOpenGLImageSliceMapper'],
619
562
  vtkVolumeMapper: ['vtkFixedPointVolumeRayCastMapper']
620
- }; // ----------------------------------------------------------------------------
563
+ };
564
+
565
+ // ----------------------------------------------------------------------------
621
566
 
622
- var DEFAULT_MAPPING = {
567
+ const DEFAULT_MAPPING = {
623
568
  vtkAxesActor: {
624
569
  build: vtkAxesActor.newInstance,
625
570
  update: genericUpdater
@@ -712,62 +657,67 @@ var DEFAULT_MAPPING = {
712
657
  build: vtkScalarBarActor.newInstance,
713
658
  update: genericUpdater
714
659
  }
715
- }; // ----------------------------------------------------------------------------
660
+ };
716
661
 
717
- function setDefaultMapping() {
718
- var reset = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
662
+ // ----------------------------------------------------------------------------
719
663
 
664
+ function setDefaultMapping() {
665
+ let reset = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
720
666
  if (reset) {
721
667
  clearTypeMapping();
722
668
  }
723
-
724
- Object.keys(DEFAULT_MAPPING).forEach(function (type) {
725
- var mapping = DEFAULT_MAPPING[type];
669
+ Object.keys(DEFAULT_MAPPING).forEach(type => {
670
+ const mapping = DEFAULT_MAPPING[type];
726
671
  setTypeMapping(type, mapping.build, mapping.update);
727
672
  });
728
- } // ----------------------------------------------------------------------------
673
+ }
729
674
 
675
+ // ----------------------------------------------------------------------------
730
676
 
731
677
  function applyDefaultAliases() {
732
678
  // Add aliases
733
- Object.keys(DEFAULT_ALIASES).forEach(function (name) {
734
- var aliases = DEFAULT_ALIASES[name];
735
- aliases.forEach(function (alias) {
679
+ Object.keys(DEFAULT_ALIASES).forEach(name => {
680
+ const aliases = DEFAULT_ALIASES[name];
681
+ aliases.forEach(alias => {
736
682
  TYPE_HANDLERS[alias] = TYPE_HANDLERS[name];
737
683
  });
738
684
  });
739
- } // ----------------------------------------------------------------------------
685
+ }
740
686
 
687
+ // ----------------------------------------------------------------------------
741
688
 
742
689
  function alwaysUpdateCamera() {
743
690
  setTypeMapping('vtkCamera', vtkCamera.newInstance);
744
691
  applyDefaultAliases();
745
- } // ----------------------------------------------------------------------------
746
-
692
+ }
747
693
 
694
+ // ----------------------------------------------------------------------------
748
695
  setDefaultMapping();
749
- applyDefaultAliases(); // ----------------------------------------------------------------------------
696
+ applyDefaultAliases();
697
+ // ----------------------------------------------------------------------------
698
+
750
699
  // Avoid handling any lights at the moment
751
700
  // => vtk seems fine and PV could be fine as well but not tested so keeping PV exclude
701
+ EXCLUDE_INSTANCE_MAP.vtkPVLight = {};
752
702
 
753
- EXCLUDE_INSTANCE_MAP.vtkPVLight = {}; // ----------------------------------------------------------------------------
703
+ // ----------------------------------------------------------------------------
754
704
  // Publicly exposed methods
755
705
  // ----------------------------------------------------------------------------
756
706
 
757
707
  var vtkObjectManager = {
758
- build: build,
759
- update: update,
760
- genericUpdater: genericUpdater,
761
- oneTimeGenericUpdater: oneTimeGenericUpdater,
762
- setTypeMapping: setTypeMapping,
763
- clearTypeMapping: clearTypeMapping,
764
- getSupportedTypes: getSupportedTypes,
765
- clearOneTimeUpdaters: clearOneTimeUpdaters,
766
- updateRenderWindow: updateRenderWindow,
767
- excludeInstance: excludeInstance,
768
- setDefaultMapping: setDefaultMapping,
769
- applyDefaultAliases: applyDefaultAliases,
770
- alwaysUpdateCamera: alwaysUpdateCamera
708
+ build,
709
+ update,
710
+ genericUpdater,
711
+ oneTimeGenericUpdater,
712
+ setTypeMapping,
713
+ clearTypeMapping,
714
+ getSupportedTypes,
715
+ clearOneTimeUpdaters,
716
+ updateRenderWindow,
717
+ excludeInstance,
718
+ setDefaultMapping,
719
+ applyDefaultAliases,
720
+ alwaysUpdateCamera
771
721
  };
772
722
 
773
723
  export { vtkObjectManager as default };