@kitware/vtk.js 34.16.2 → 34.16.6

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 (470) hide show
  1. package/CONTRIBUTING.md +8 -8
  2. package/Common/Core/CellArray.d.ts +5 -1
  3. package/Common/Core/CellArray.js +6 -10
  4. package/Common/Core/DataArray.js +9 -23
  5. package/Common/Core/ImageHelper.d.ts +2 -2
  6. package/Common/Core/ImageHelper.js +6 -8
  7. package/Common/Core/LookupTable.js +1 -3
  8. package/Common/Core/Math/index.js +19 -47
  9. package/Common/Core/MatrixBuilder.js +2 -5
  10. package/Common/Core/Points.js +3 -8
  11. package/Common/Core/PriorityQueue.js +4 -8
  12. package/Common/Core/ProgressHandler.js +4 -7
  13. package/Common/Core/ScalarsToColors.js +1 -2
  14. package/Common/Core/StringArray.js +4 -12
  15. package/Common/Core/URLExtract.js +1 -3
  16. package/Common/Core/VariantArray.js +4 -12
  17. package/Common/DataModel/AbstractPointLocator.js +1 -2
  18. package/Common/DataModel/BoundingBox.js +6 -16
  19. package/Common/DataModel/Box.js +7 -11
  20. package/Common/DataModel/CardinalSpline1D.js +2 -4
  21. package/Common/DataModel/Cell.js +2 -4
  22. package/Common/DataModel/CellLinks.js +2 -4
  23. package/Common/DataModel/CellTypes.js +2 -5
  24. package/Common/DataModel/Collection.js +1 -2
  25. package/Common/DataModel/Cone.js +1 -2
  26. package/Common/DataModel/Cylinder.js +1 -2
  27. package/Common/DataModel/DataSet/Constants.js +0 -1
  28. package/Common/DataModel/DataSet.js +2 -4
  29. package/Common/DataModel/DataSetAttributes/Constants.js +0 -4
  30. package/Common/DataModel/DataSetAttributes/FieldData.js +3 -11
  31. package/Common/DataModel/DataSetAttributes.js +1 -2
  32. package/Common/DataModel/EdgeLocator.js +2 -4
  33. package/Common/DataModel/ITKHelper.js +4 -8
  34. package/Common/DataModel/ImageData.js +17 -33
  35. package/Common/DataModel/ImplicitBoolean.js +1 -2
  36. package/Common/DataModel/ImplicitFunction.js +1 -2
  37. package/Common/DataModel/IncrementalOctreeNode.js +1 -2
  38. package/Common/DataModel/IncrementalOctreePointLocator.js +2 -3
  39. package/Common/DataModel/KochanekSpline1D.js +2 -4
  40. package/Common/DataModel/Line.js +2 -4
  41. package/Common/DataModel/Locator.js +1 -2
  42. package/Common/DataModel/MergePoints.js +1 -2
  43. package/Common/DataModel/Molecule.js +1 -2
  44. package/Common/DataModel/PiecewiseFunction.js +2 -4
  45. package/Common/DataModel/Plane.js +1 -2
  46. package/Common/DataModel/Planes.js +2 -4
  47. package/Common/DataModel/PointLocator.js +3 -7
  48. package/Common/DataModel/PointSet.js +2 -4
  49. package/Common/DataModel/PolyData.js +4 -8
  50. package/Common/DataModel/PolyLine.js +1 -2
  51. package/Common/DataModel/Polygon.js +2 -4
  52. package/Common/DataModel/Quad.js +1 -2
  53. package/Common/DataModel/SelectionNode.js +1 -2
  54. package/Common/DataModel/Sphere.js +1 -2
  55. package/Common/DataModel/Spline1D.js +2 -3
  56. package/Common/DataModel/Spline3D.js +1 -2
  57. package/Common/DataModel/Triangle.js +2 -6
  58. package/Common/DataModel/TriangleStrip.js +1 -2
  59. package/Common/Transform/LandmarkTransform.js +1 -2
  60. package/Common/Transform/Transform.js +4 -10
  61. package/Filters/Core/CleanPolyData.js +1 -2
  62. package/Filters/Core/Cutter.js +1 -3
  63. package/Filters/Core/PolyDataNormals.js +1 -3
  64. package/Filters/Core/ThresholdPoints.js +2 -4
  65. package/Filters/Cornerstone/ImageDataToCornerstoneImage.js +1 -2
  66. package/Filters/General/AppendPolyData.js +1 -2
  67. package/Filters/General/Calculator.js +40 -47
  68. package/Filters/General/ClipClosedSurface.js +1 -4
  69. package/Filters/General/ClosedPolyLineToSurfaceFilter.js +1 -2
  70. package/Filters/General/ContourLoopExtraction.js +1 -2
  71. package/Filters/General/ContourTriangulator/helper.js +1 -5
  72. package/Filters/General/ContourTriangulator.js +2 -4
  73. package/Filters/General/ImageCropFilter.js +1 -2
  74. package/Filters/General/ImageDataOutlineFilter.js +1 -2
  75. package/Filters/General/ImageMarchingCubes/caseTable.js +0 -1
  76. package/Filters/General/ImageMarchingCubes.js +1 -4
  77. package/Filters/General/ImageMarchingSquares/caseTable.js +0 -1
  78. package/Filters/General/ImageMarchingSquares.js +1 -4
  79. package/Filters/General/ImageOutlineFilter.js +1 -2
  80. package/Filters/General/ImageSliceFilter.js +1 -2
  81. package/Filters/General/ImageStreamline.js +1 -3
  82. package/Filters/General/LineFilter.js +1 -2
  83. package/Filters/General/MoleculeToRepresentation.js +2 -5
  84. package/Filters/General/OBBTree/OBBNode.js +1 -2
  85. package/Filters/General/OBBTree.js +2 -6
  86. package/Filters/General/OutlineFilter.js +1 -2
  87. package/Filters/General/PaintFilter/PaintFilter.worker.js +20 -25
  88. package/Filters/General/PaintFilter.js +1 -2
  89. package/Filters/General/ScalarToRGBA.js +1 -2
  90. package/Filters/General/ShrinkPolyData.js +2 -4
  91. package/Filters/General/TransformPolyDataFilter.js +1 -2
  92. package/Filters/General/TriangleFilter.js +1 -2
  93. package/Filters/General/TubeFilter.js +2 -6
  94. package/Filters/General/WarpScalar.js +1 -2
  95. package/Filters/General/WindowedSincPolyDataFilter.js +1 -2
  96. package/Filters/Sources/ArcSource.js +1 -2
  97. package/Filters/Sources/Arrow2DSource.js +1 -2
  98. package/Filters/Sources/ArrowSource.js +1 -2
  99. package/Filters/Sources/CircleSource.d.ts +2 -3
  100. package/Filters/Sources/CircleSource.js +1 -2
  101. package/Filters/Sources/ConcentricCylinderSource.js +2 -6
  102. package/Filters/Sources/ConeSource.js +1 -2
  103. package/Filters/Sources/CubeSource.js +6 -7
  104. package/Filters/Sources/Cursor3D.js +1 -2
  105. package/Filters/Sources/CylinderSource.js +1 -2
  106. package/Filters/Sources/DiskSource.js +1 -2
  107. package/Filters/Sources/EllipseArcSource.js +1 -2
  108. package/Filters/Sources/FrustumSource.js +1 -2
  109. package/Filters/Sources/ImageGridSource.js +1 -2
  110. package/Filters/Sources/LineSource.js +1 -2
  111. package/Filters/Sources/PlaneSource.js +21 -22
  112. package/Filters/Sources/PlatonicSolidSource.js +1 -2
  113. package/Filters/Sources/PointSource.js +1 -2
  114. package/Filters/Sources/RTAnalyticSource.js +1 -2
  115. package/Filters/Sources/SLICSource.js +1 -2
  116. package/Filters/Sources/SphereSource.js +1 -2
  117. package/Filters/Sources/TorusSource.js +1 -2
  118. package/Filters/Sources/ViewFinderSource.js +1 -2
  119. package/Filters/Texture/TextureMapToPlane.js +1 -2
  120. package/Filters/Texture/TextureMapToSphere.js +1 -2
  121. package/IO/Core/BinaryHelper.js +1 -2
  122. package/IO/Core/DataAccessHelper/HtmlDataAccessHelper.js +4 -5
  123. package/IO/Core/DataAccessHelper/HttpDataAccessHelper.js +7 -16
  124. package/IO/Core/DataAccessHelper/JSZipDataAccessHelper.js +5 -9
  125. package/IO/Core/DataAccessHelper/LiteHttpDataAccessHelper.js +7 -16
  126. package/IO/Core/DataAccessHelper.js +1 -3
  127. package/IO/Core/HttpDataSetReader.js +10 -16
  128. package/IO/Core/HttpDataSetSeriesReader.js +4 -8
  129. package/IO/Core/HttpSceneLoader.js +3 -8
  130. package/IO/Core/ImageStream/DefaultProtocol.js +12 -42
  131. package/IO/Core/ImageStream/ViewStream.js +5 -8
  132. package/IO/Core/ImageStream.js +4 -9
  133. package/IO/Core/Serializer/ArraySerializer.js +1 -2
  134. package/IO/Core/WSLinkClient.js +14 -25
  135. package/IO/Core/ZipMultiDataSetReader.js +5 -12
  136. package/IO/Core/ZipMultiDataSetWriter.js +1 -2
  137. package/IO/Geometry/DracoReader.js +6 -10
  138. package/IO/Geometry/GLTFImporter/Animations.js +9 -14
  139. package/IO/Geometry/GLTFImporter/Constants.js +0 -1
  140. package/IO/Geometry/GLTFImporter/Parser.js +1 -3
  141. package/IO/Geometry/GLTFImporter/Reader.js +2 -5
  142. package/IO/Geometry/GLTFImporter.js +7 -12
  143. package/IO/Geometry/IFCImporter.d.ts +1 -1
  144. package/IO/Geometry/IFCImporter.js +6 -10
  145. package/IO/Geometry/PLYReader.js +6 -11
  146. package/IO/Geometry/PLYWriter.js +1 -2
  147. package/IO/Geometry/STLReader.js +6 -11
  148. package/IO/Geometry/STLWriter.js +2 -6
  149. package/IO/Image/HDRReader/Utils.js +1 -2
  150. package/IO/Image/HDRReader.js +7 -10
  151. package/IO/Image/TGAReader.js +7 -9
  152. package/IO/Image/TIFFReader.js +7 -10
  153. package/IO/Legacy/LegacyAsciiParser.js +1 -2
  154. package/IO/Legacy/PolyDataReader.js +5 -7
  155. package/IO/Misc/ElevationReader.js +1 -2
  156. package/IO/Misc/GCodeReader.js +6 -11
  157. package/IO/Misc/HttpDataSetLODsLoader.js +1 -2
  158. package/IO/Misc/ITKImageReader.js +6 -13
  159. package/IO/Misc/ITKPolyDataReader.js +6 -13
  160. package/IO/Misc/JSONNucleoReader.js +1 -2
  161. package/IO/Misc/JSONReader.js +4 -10
  162. package/IO/Misc/MTLReader.js +2 -4
  163. package/IO/Misc/OBJReader.js +4 -10
  164. package/IO/Misc/OBJWriter.js +1 -2
  165. package/IO/Misc/PDBReader.js +1 -2
  166. package/IO/Misc/SkyboxReader.js +5 -10
  167. package/IO/XML/XMLImageDataReader.js +1 -2
  168. package/IO/XML/XMLImageDataWriter.js +1 -2
  169. package/IO/XML/XMLPolyDataReader.js +1 -2
  170. package/IO/XML/XMLPolyDataWriter.js +1 -2
  171. package/IO/XML/XMLReader.js +4 -10
  172. package/IO/XML/XMLWriter.js +2 -4
  173. package/Imaging/Core/AbstractImageInterpolator.js +1 -3
  174. package/Imaging/Core/ImageInterpolator.js +1 -3
  175. package/Imaging/Core/ImagePointDataIterator.js +2 -6
  176. package/Imaging/Core/ImageReslice.js +1 -3
  177. package/Imaging/Hybrid/SampleFunction.js +1 -2
  178. package/Interaction/Animations/TimeStepBasedAnimationHandler.js +1 -2
  179. package/Interaction/Manipulators/3DControllerModelSelectorManipulator/index.js +1 -2
  180. package/Interaction/Manipulators/CompositeCameraManipulator.js +1 -2
  181. package/Interaction/Manipulators/CompositeGestureManipulator.js +1 -2
  182. package/Interaction/Manipulators/CompositeKeyboardManipulator.js +1 -2
  183. package/Interaction/Manipulators/CompositeMouseManipulator.js +1 -2
  184. package/Interaction/Manipulators/CompositeVRManipulator.js +1 -2
  185. package/Interaction/Manipulators/GestureCameraManipulator.js +1 -2
  186. package/Interaction/Manipulators/KeyboardCameraManipulator.js +1 -2
  187. package/Interaction/Manipulators/MouseBoxSelectorManipulator.js +1 -2
  188. package/Interaction/Manipulators/MouseCameraAxisRotateManipulator.js +1 -2
  189. package/Interaction/Manipulators/MouseCameraSliceManipulator.js +1 -2
  190. package/Interaction/Manipulators/MouseCameraTrackballFirstPersonManipulator.js +1 -2
  191. package/Interaction/Manipulators/MouseCameraTrackballMultiRotateManipulator.js +1 -2
  192. package/Interaction/Manipulators/MouseCameraTrackballPanManipulator.js +1 -2
  193. package/Interaction/Manipulators/MouseCameraTrackballPanManipulatorAutoCenter.js +1 -2
  194. package/Interaction/Manipulators/MouseCameraTrackballRollManipulator.js +1 -2
  195. package/Interaction/Manipulators/MouseCameraTrackballRotateManipulator.js +1 -2
  196. package/Interaction/Manipulators/MouseCameraTrackballZoomManipulator.js +1 -2
  197. package/Interaction/Manipulators/MouseCameraTrackballZoomToMouseManipulator.js +1 -2
  198. package/Interaction/Manipulators/MouseCameraUnicamManipulator.js +1 -2
  199. package/Interaction/Manipulators/MouseCameraUnicamRotateManipulator.js +1 -2
  200. package/Interaction/Manipulators/MouseRangeManipulator.js +4 -11
  201. package/Interaction/Manipulators/VRButtonPanManipulator.js +1 -2
  202. package/Interaction/Misc/DeviceOrientationToCamera.js +1 -2
  203. package/Interaction/Style/InteractorStyleHMDXR.js +1 -2
  204. package/Interaction/Style/InteractorStyleImage.js +1 -2
  205. package/Interaction/Style/InteractorStyleMPRSlice.js +2 -6
  206. package/Interaction/Style/InteractorStyleManipulator.js +1 -2
  207. package/Interaction/Style/InteractorStyleRemoteMouse.js +1 -2
  208. package/Interaction/Style/InteractorStyleTrackballCamera.js +1 -3
  209. package/Interaction/Style/InteractorStyleUnicam.js +1 -2
  210. package/Interaction/UI/CornerAnnotation.js +2 -4
  211. package/Interaction/UI/FPSMonitor.js +3 -9
  212. package/Interaction/UI/Slider.js +1 -3
  213. package/Interaction/UI/VolumeController.js +2 -5
  214. package/Interaction/Widgets/OrientationMarkerWidget.js +1 -2
  215. package/Interaction/Widgets/PiecewiseGaussianWidget.js +42 -59
  216. package/Proxy/Animation/AbstractAnimationProxy.js +1 -2
  217. package/Proxy/Animation/AnimationProxyManager.js +1 -2
  218. package/Proxy/Animation/TimeStepBasedAnimationHandlerProxy.js +1 -2
  219. package/Proxy/Core/AbstractRepresentationProxy.js +3 -6
  220. package/Proxy/Core/LookupTableProxy.js +1 -3
  221. package/Proxy/Core/PiecewiseFunctionProxy.js +3 -11
  222. package/Proxy/Core/ProxyManager/state.js +171 -182
  223. package/Proxy/Core/ProxyManager/view.js +3 -6
  224. package/Proxy/Core/ProxyManager.js +1 -2
  225. package/Proxy/Core/SourceProxy.js +2 -6
  226. package/Proxy/Core/View2DProxy.js +2 -4
  227. package/Proxy/Core/ViewProxy.js +20 -37
  228. package/Proxy/Representations/GeometryRepresentationProxy.js +1 -2
  229. package/Proxy/Representations/GlyphRepresentationProxy.js +1 -2
  230. package/Proxy/Representations/MoleculeRepresentationProxy.js +1 -2
  231. package/Proxy/Representations/ResliceRepresentationProxy.js +3 -8
  232. package/Proxy/Representations/SkyboxRepresentationProxy.js +1 -2
  233. package/Proxy/Representations/SliceRepresentationProxy.js +3 -8
  234. package/Proxy/Representations/SlicedGeometryRepresentationProxy.js +3 -6
  235. package/Proxy/Representations/VolumeRepresentationProxy.js +9 -17
  236. package/Rendering/Core/AbstractImageMapper.js +1 -2
  237. package/Rendering/Core/AbstractMapper.js +1 -2
  238. package/Rendering/Core/AbstractMapper3D.js +1 -2
  239. package/Rendering/Core/AbstractPicker.js +1 -2
  240. package/Rendering/Core/Actor.js +1 -2
  241. package/Rendering/Core/Actor2D.js +1 -2
  242. package/Rendering/Core/AnnotatedCubeActor.js +2 -4
  243. package/Rendering/Core/AxesActor.js +2 -4
  244. package/Rendering/Core/Camera.js +2 -6
  245. package/Rendering/Core/CellPicker.js +1 -3
  246. package/Rendering/Core/ColorTransferFunction/CssFilters.js +8 -16
  247. package/Rendering/Core/ColorTransferFunction.js +4 -10
  248. package/Rendering/Core/Coordinate.js +2 -6
  249. package/Rendering/Core/CubeAxesActor.js +4 -6
  250. package/Rendering/Core/Follower.js +1 -2
  251. package/Rendering/Core/Glyph3DMapper.js +1 -2
  252. package/Rendering/Core/HardwareSelector.js +1 -2
  253. package/Rendering/Core/ImageArrayMapper.js +6 -13
  254. package/Rendering/Core/ImageCPRMapper.js +1 -2
  255. package/Rendering/Core/ImageMapper.d.ts +2 -0
  256. package/Rendering/Core/ImageMapper.js +2 -5
  257. package/Rendering/Core/ImageProperty.js +9 -28
  258. package/Rendering/Core/ImageResliceMapper.js +1 -2
  259. package/Rendering/Core/ImageSlice.js +1 -2
  260. package/Rendering/Core/InteractorObserver.js +1 -2
  261. package/Rendering/Core/InteractorStyle.js +1 -2
  262. package/Rendering/Core/Light.js +1 -2
  263. package/Rendering/Core/Mapper/Static.js +1 -2
  264. package/Rendering/Core/Mapper.js +1 -6
  265. package/Rendering/Core/Mapper2D.js +1 -3
  266. package/Rendering/Core/Picker.js +1 -2
  267. package/Rendering/Core/PixelSpaceCallbackMapper.js +1 -2
  268. package/Rendering/Core/PointPicker.js +1 -2
  269. package/Rendering/Core/Prop.js +1 -2
  270. package/Rendering/Core/Prop3D.js +3 -8
  271. package/Rendering/Core/Property.js +1 -2
  272. package/Rendering/Core/Property2D.js +1 -2
  273. package/Rendering/Core/RenderWindow.js +4 -11
  274. package/Rendering/Core/RenderWindowInteractor/Constants.js +0 -1
  275. package/Rendering/Core/RenderWindowInteractor.js +7 -12
  276. package/Rendering/Core/Renderer.js +3 -6
  277. package/Rendering/Core/ScalarBarActor.js +4 -6
  278. package/Rendering/Core/Skybox.js +1 -2
  279. package/Rendering/Core/SphereMapper.js +1 -2
  280. package/Rendering/Core/StickMapper.js +1 -2
  281. package/Rendering/Core/SurfaceLICInterface.js +1 -2
  282. package/Rendering/Core/SurfaceLICMapper.js +1 -2
  283. package/Rendering/Core/TextActor.js +1 -2
  284. package/Rendering/Core/TextProperty.js +1 -2
  285. package/Rendering/Core/Texture.js +1 -2
  286. package/Rendering/Core/VectorText/Utils.js +4 -8
  287. package/Rendering/Core/VectorText.js +1 -3
  288. package/Rendering/Core/Viewport.js +2 -4
  289. package/Rendering/Core/Volume.js +1 -2
  290. package/Rendering/Core/VolumeMapper.js +1 -2
  291. package/Rendering/Core/VolumeProperty.js +9 -22
  292. package/Rendering/Misc/CanvasView.js +1 -2
  293. package/Rendering/Misc/FullScreenRenderWindow.js +1 -2
  294. package/Rendering/Misc/GenericRenderWindow.js +1 -2
  295. package/Rendering/Misc/RemoteView.js +1 -2
  296. package/Rendering/Misc/RenderWindowWithControlBar.js +1 -2
  297. package/Rendering/Misc/SynchronizableRenderWindow/BehaviorManager/CameraSynchronizer.js +1 -3
  298. package/Rendering/Misc/SynchronizableRenderWindow/BehaviorManager.js +5 -6
  299. package/Rendering/Misc/SynchronizableRenderWindow/ObjectManager.js +24 -43
  300. package/Rendering/Misc/SynchronizableRenderWindow.js +3 -6
  301. package/Rendering/Misc/TextureLODsDownloader.js +1 -2
  302. package/Rendering/OpenGL/Actor.js +1 -2
  303. package/Rendering/OpenGL/Actor2D.js +1 -2
  304. package/Rendering/OpenGL/BufferObject.js +1 -3
  305. package/Rendering/OpenGL/Camera.js +1 -2
  306. package/Rendering/OpenGL/CellArrayBufferObject.js +2 -4
  307. package/Rendering/OpenGL/Convolution2DPass.js +2 -3
  308. package/Rendering/OpenGL/CubeAxesActor.js +1 -2
  309. package/Rendering/OpenGL/ForwardPass.js +2 -4
  310. package/Rendering/OpenGL/Framebuffer.js +4 -8
  311. package/Rendering/OpenGL/Glyph3DMapper.js +1 -2
  312. package/Rendering/OpenGL/HardwareSelector.js +21 -27
  313. package/Rendering/OpenGL/Helper.js +1 -2
  314. package/Rendering/OpenGL/ImageCPRMapper.js +1 -2
  315. package/Rendering/OpenGL/ImageMapper.js +1 -2
  316. package/Rendering/OpenGL/ImageResliceMapper.js +10 -16
  317. package/Rendering/OpenGL/ImageSlice.js +1 -2
  318. package/Rendering/OpenGL/OrderIndependentTranslucentPass.js +1 -2
  319. package/Rendering/OpenGL/PixelSpaceCallbackMapper.js +1 -2
  320. package/Rendering/OpenGL/PolyDataMapper.js +5 -4
  321. package/Rendering/OpenGL/PolyDataMapper2D.js +1 -2
  322. package/Rendering/OpenGL/RadialDistortionPass.js +2 -3
  323. package/Rendering/OpenGL/RenderWindow.js +36 -53
  324. package/Rendering/OpenGL/Renderer.js +1 -3
  325. package/Rendering/OpenGL/ReplacementShaderMapper.js +2 -2
  326. package/Rendering/OpenGL/ScalarBarActor.js +1 -2
  327. package/Rendering/OpenGL/Shader.js +1 -2
  328. package/Rendering/OpenGL/ShaderCache.js +1 -2
  329. package/Rendering/OpenGL/ShaderProgram.js +4 -14
  330. package/Rendering/OpenGL/Skybox.js +1 -2
  331. package/Rendering/OpenGL/SphereMapper.js +1 -2
  332. package/Rendering/OpenGL/StickMapper.js +1 -2
  333. package/Rendering/OpenGL/SurfaceLIC/LineIntegralConvolution2D/pingpong.js +6 -12
  334. package/Rendering/OpenGL/SurfaceLIC/LineIntegralConvolution2D.js +4 -12
  335. package/Rendering/OpenGL/SurfaceLIC/SurfaceLICInterface.js +2 -4
  336. package/Rendering/OpenGL/SurfaceLIC/SurfaceLICMapper.js +1 -2
  337. package/Rendering/OpenGL/Texture.js +91 -113
  338. package/Rendering/OpenGL/TextureUnitManager.js +1 -2
  339. package/Rendering/OpenGL/VertexArrayObject.js +1 -2
  340. package/Rendering/OpenGL/ViewNodeFactory.js +1 -2
  341. package/Rendering/OpenGL/Volume.js +1 -2
  342. package/Rendering/OpenGL/VolumeMapper.js +11 -17
  343. package/Rendering/SceneGraph/RenderPass.js +2 -4
  344. package/Rendering/SceneGraph/RenderWindowViewNode.js +1 -2
  345. package/Rendering/SceneGraph/ViewNode.js +3 -6
  346. package/Rendering/SceneGraph/ViewNodeFactory.js +1 -2
  347. package/Rendering/WebGPU/Actor.js +1 -2
  348. package/Rendering/WebGPU/Actor2D.js +1 -2
  349. package/Rendering/WebGPU/BindGroup.js +1 -2
  350. package/Rendering/WebGPU/Buffer.js +2 -5
  351. package/Rendering/WebGPU/BufferManager.js +1 -2
  352. package/Rendering/WebGPU/Camera.js +1 -2
  353. package/Rendering/WebGPU/CellArrayMapper.js +3 -6
  354. package/Rendering/WebGPU/CubeAxesActor.js +1 -2
  355. package/Rendering/WebGPU/Device.js +2 -6
  356. package/Rendering/WebGPU/ForwardPass.js +2 -4
  357. package/Rendering/WebGPU/FullScreenQuad.js +1 -2
  358. package/Rendering/WebGPU/Glyph3DMapper.js +2 -4
  359. package/Rendering/WebGPU/HardwareSelectionPass.js +1 -2
  360. package/Rendering/WebGPU/HardwareSelector.js +1 -2
  361. package/Rendering/WebGPU/ImageMapper.js +1 -2
  362. package/Rendering/WebGPU/ImageSlice.js +1 -2
  363. package/Rendering/WebGPU/IndexBuffer.js +1 -2
  364. package/Rendering/WebGPU/OpaquePass.js +1 -2
  365. package/Rendering/WebGPU/OrderIndependentTranslucentPass.js +1 -2
  366. package/Rendering/WebGPU/Pipeline.js +1 -2
  367. package/Rendering/WebGPU/PixelSpaceCallbackMapper.js +1 -2
  368. package/Rendering/WebGPU/PolyDataMapper.js +1 -2
  369. package/Rendering/WebGPU/PolyDataMapper2D.js +1 -2
  370. package/Rendering/WebGPU/RenderEncoder.js +2 -5
  371. package/Rendering/WebGPU/RenderWindow.js +15 -25
  372. package/Rendering/WebGPU/Renderer.js +1 -2
  373. package/Rendering/WebGPU/Sampler.js +2 -4
  374. package/Rendering/WebGPU/ScalarBarActor.js +1 -2
  375. package/Rendering/WebGPU/ShaderCache.js +2 -4
  376. package/Rendering/WebGPU/ShaderDescription.js +2 -4
  377. package/Rendering/WebGPU/ShaderModule.js +1 -2
  378. package/Rendering/WebGPU/SimpleMapper.js +1 -3
  379. package/Rendering/WebGPU/SphereMapper.js +1 -2
  380. package/Rendering/WebGPU/StickMapper.js +1 -2
  381. package/Rendering/WebGPU/StorageBuffer.js +1 -2
  382. package/Rendering/WebGPU/Texture.js +3 -7
  383. package/Rendering/WebGPU/TextureManager.js +2 -6
  384. package/Rendering/WebGPU/TextureView.js +1 -3
  385. package/Rendering/WebGPU/UniformBuffer.js +1 -2
  386. package/Rendering/WebGPU/VertexInput.js +2 -4
  387. package/Rendering/WebGPU/ViewNodeFactory.js +1 -2
  388. package/Rendering/WebGPU/Volume.js +1 -2
  389. package/Rendering/WebGPU/VolumePass.js +1 -2
  390. package/Rendering/WebGPU/VolumePassFSQ.js +1 -2
  391. package/Rendering/WebXR/RenderWindowHelper.js +2 -6
  392. package/Widgets/Core/AbstractWidget.js +6 -10
  393. package/Widgets/Core/AbstractWidgetFactory.js +17 -22
  394. package/Widgets/Core/StateBuilder/boundsMixin.js +1 -2
  395. package/Widgets/Core/StateBuilder/color3Mixin.js +1 -2
  396. package/Widgets/Core/StateBuilder/colorMixin.js +1 -2
  397. package/Widgets/Core/StateBuilder/cornerMixin.js +1 -2
  398. package/Widgets/Core/StateBuilder/directionMixin.js +1 -2
  399. package/Widgets/Core/StateBuilder/manipulatorMixin.js +1 -2
  400. package/Widgets/Core/StateBuilder/nameMixin.js +1 -2
  401. package/Widgets/Core/StateBuilder/orientationMixin.js +1 -2
  402. package/Widgets/Core/StateBuilder/originMixin.js +1 -2
  403. package/Widgets/Core/StateBuilder/scale1Mixin.js +1 -2
  404. package/Widgets/Core/StateBuilder/scale3Mixin.js +1 -2
  405. package/Widgets/Core/StateBuilder/shapeMixin.js +1 -2
  406. package/Widgets/Core/StateBuilder/textMixin.js +1 -2
  407. package/Widgets/Core/StateBuilder/visibleMixin.js +1 -2
  408. package/Widgets/Core/StateBuilder.js +23 -33
  409. package/Widgets/Core/WidgetManager/Constants.js +0 -1
  410. package/Widgets/Core/WidgetManager.js +25 -30
  411. package/Widgets/Core/WidgetState.js +2 -4
  412. package/Widgets/Manipulators/AbstractManipulator.js +1 -2
  413. package/Widgets/Manipulators/CPRManipulator.js +1 -2
  414. package/Widgets/Manipulators/LineManipulator.js +1 -2
  415. package/Widgets/Manipulators/PickerManipulator.js +1 -2
  416. package/Widgets/Manipulators/PlaneManipulator.js +1 -2
  417. package/Widgets/Manipulators/TrackballManipulator.js +1 -2
  418. package/Widgets/Representations/ArrowHandleRepresentation.js +2 -6
  419. package/Widgets/Representations/CircleContextRepresentation.js +1 -2
  420. package/Widgets/Representations/ContextRepresentation.js +1 -2
  421. package/Widgets/Representations/ConvexFaceContextRepresentation.js +2 -6
  422. package/Widgets/Representations/CroppingOutlineRepresentation.js +1 -2
  423. package/Widgets/Representations/CubeHandleRepresentation.js +1 -2
  424. package/Widgets/Representations/GlyphRepresentation.js +3 -11
  425. package/Widgets/Representations/HandleRepresentation.js +1 -2
  426. package/Widgets/Representations/ImplicitPlaneRepresentation.js +1 -2
  427. package/Widgets/Representations/LineHandleRepresentation.js +1 -2
  428. package/Widgets/Representations/OutlineContextRepresentation.js +1 -2
  429. package/Widgets/Representations/PolyLineRepresentation.js +2 -4
  430. package/Widgets/Representations/RectangleContextRepresentation.js +1 -2
  431. package/Widgets/Representations/RotateTransformHandleRepresentation.js +1 -2
  432. package/Widgets/Representations/ScaleTransformHandleRepresentation.js +1 -2
  433. package/Widgets/Representations/SphereContextRepresentation.js +1 -2
  434. package/Widgets/Representations/SphereHandleRepresentation.js +1 -2
  435. package/Widgets/Representations/SplineContextRepresentation.js +2 -6
  436. package/Widgets/Representations/TranslateTransformHandleRepresentation/TransformHandleSource.js +1 -2
  437. package/Widgets/Representations/TranslateTransformHandleRepresentation.js +1 -2
  438. package/Widgets/Representations/WidgetRepresentation.js +6 -20
  439. package/Widgets/Widgets3D/AngleWidget.js +1 -2
  440. package/Widgets/Widgets3D/EllipseWidget.js +1 -2
  441. package/Widgets/Widgets3D/ImageCroppingWidget.js +1 -2
  442. package/Widgets/Widgets3D/ImplicitPlaneWidget.js +1 -3
  443. package/Widgets/Widgets3D/InteractiveOrientationWidget/helpers.js +6 -7
  444. package/Widgets/Widgets3D/InteractiveOrientationWidget/state.js +0 -1
  445. package/Widgets/Widgets3D/InteractiveOrientationWidget.js +1 -2
  446. package/Widgets/Widgets3D/LabelWidget.js +1 -2
  447. package/Widgets/Widgets3D/LineWidget/behavior.js +1 -2
  448. package/Widgets/Widgets3D/LineWidget/helpers.js +1 -2
  449. package/Widgets/Widgets3D/LineWidget.js +1 -2
  450. package/Widgets/Widgets3D/PaintWidget.js +1 -2
  451. package/Widgets/Widgets3D/PolyLineWidget/behavior.js +3 -4
  452. package/Widgets/Widgets3D/PolyLineWidget.js +1 -2
  453. package/Widgets/Widgets3D/RectangleWidget.js +1 -2
  454. package/Widgets/Widgets3D/ResliceCursorWidget/Constants.js +0 -1
  455. package/Widgets/Widgets3D/ResliceCursorWidget/behavior.js +0 -1
  456. package/Widgets/Widgets3D/ResliceCursorWidget/helpers.js +2 -3
  457. package/Widgets/Widgets3D/ResliceCursorWidget/state.js +1 -3
  458. package/Widgets/Widgets3D/ResliceCursorWidget.js +1 -3
  459. package/Widgets/Widgets3D/SeedWidget/behavior.js +15 -14
  460. package/Widgets/Widgets3D/SeedWidget.d.ts +18 -1
  461. package/Widgets/Widgets3D/SeedWidget.js +1 -2
  462. package/Widgets/Widgets3D/ShapeWidget/behavior.js +7 -10
  463. package/Widgets/Widgets3D/ShapeWidget.js +1 -2
  464. package/Widgets/Widgets3D/SphereWidget.js +1 -2
  465. package/Widgets/Widgets3D/SplineWidget/behavior.js +13 -13
  466. package/Widgets/Widgets3D/SplineWidget.js +1 -2
  467. package/Widgets/Widgets3D/TransformControlsWidget.js +1 -2
  468. package/_virtual/rollup-plugin-worker-loader__module_Sources/Filters/General/PaintFilter/PaintFilter.worker.js +20 -25
  469. package/macros2.js +46 -114
  470. package/package.json +24 -16
@@ -14,202 +14,191 @@ function getProperties(proxy) {
14
14
  // ----------------------------------------------------------------------------
15
15
 
16
16
  function addStateAPI(publicAPI, model) {
17
- publicAPI.loadState = function (state) {
18
- let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
19
- return new Promise((resolve, reject) => {
20
- const proxyMapping = {};
21
- const $oldToNewIdMapping = {};
22
- const cameras = {};
23
- const datasetHandler = options.datasetHandler || vtk;
24
- const sourcePromises = [];
25
- state.sources.forEach(_ref => {
26
- let {
27
- id,
28
- group,
29
- name,
30
- props
31
- } = _ref;
32
- sourcePromises.push(Promise.resolve(datasetHandler(props.dataset)).then(dataset => {
33
- if (dataset) {
34
- const proxy = publicAPI.createProxy(group, name);
35
- proxy.setName(props.name);
36
- proxy.setInputData(dataset, props.type);
37
- proxyMapping[id] = proxy;
38
- return proxy;
39
- }
40
- return null;
41
- }));
42
- });
43
- Promise.all(sourcePromises).then(() => {
44
- const views = publicAPI.getViews();
45
- state.views.forEach(_ref2 => {
46
- let {
47
- id,
48
- group,
49
- name,
50
- props,
51
- camera
52
- } = _ref2;
53
- let proxy = null;
54
- if (state.options.recycleViews) {
55
- proxy = views.find(v => v.getProxyGroup() === group && v.getProxyName() === name && v.getName() === props.name);
56
- }
57
- if (!proxy) {
58
- proxy = publicAPI.createProxy(group, name, {
59
- disableAnimation: true
60
- });
61
- } else {
62
- proxy.setDisableAnimation(true);
63
- }
64
- proxy.set(props, true);
17
+ publicAPI.loadState = (state, options = {}) => new Promise((resolve, reject) => {
18
+ const proxyMapping = {};
19
+ const $oldToNewIdMapping = {};
20
+ const cameras = {};
21
+ const datasetHandler = options.datasetHandler || vtk;
22
+ const sourcePromises = [];
23
+ state.sources.forEach(({
24
+ id,
25
+ group,
26
+ name,
27
+ props
28
+ }) => {
29
+ sourcePromises.push(Promise.resolve(datasetHandler(props.dataset)).then(dataset => {
30
+ if (dataset) {
31
+ const proxy = publicAPI.createProxy(group, name);
32
+ proxy.setName(props.name);
33
+ proxy.setInputData(dataset, props.type);
65
34
  proxyMapping[id] = proxy;
66
- cameras[id] = camera;
67
- });
68
- function updateView(view) {
69
- if (!proxyMapping[view] || !cameras[view]) {
70
- return;
71
- }
72
- proxyMapping[view].resetOrientation().then(() => {
73
- proxyMapping[view].getCamera().set(cameras[view]);
74
- proxyMapping[view].getRenderer().updateLightsGeometryToFollowCamera();
75
- proxyMapping[view].renderLater();
35
+ return proxy;
36
+ }
37
+ return null;
38
+ }));
39
+ });
40
+ Promise.all(sourcePromises).then(() => {
41
+ const views = publicAPI.getViews();
42
+ state.views.forEach(({
43
+ id,
44
+ group,
45
+ name,
46
+ props,
47
+ camera
48
+ }) => {
49
+ let proxy = null;
50
+ if (state.options.recycleViews) {
51
+ proxy = views.find(v => v.getProxyGroup() === group && v.getProxyName() === name && v.getName() === props.name);
52
+ }
53
+ if (!proxy) {
54
+ proxy = publicAPI.createProxy(group, name, {
55
+ disableAnimation: true
76
56
  });
57
+ } else {
58
+ proxy.setDisableAnimation(true);
77
59
  }
78
- state.representations.forEach(_ref3 => {
79
- let {
80
- source,
81
- view,
82
- props
83
- } = _ref3;
84
- const proxy = publicAPI.getRepresentation(proxyMapping[source], proxyMapping[view]);
85
- proxy.set(props, true);
86
- updateView(view);
87
- });
88
-
89
- // restore luts and pwfs after restoring reps to avoid
90
- // rep initialization from resetting restored luts/pwfs
91
- Object.keys(state.fields).forEach(fieldName => {
92
- const {
93
- lookupTable,
94
- piecewiseFunction
95
- } = state.fields[fieldName];
96
- const lutProxy = publicAPI.getLookupTable(fieldName, lookupTable);
97
- lutProxy.setPresetName(lookupTable.presetName);
98
- lutProxy.setDataRange(...lookupTable.dataRange);
99
- const pwfProxy = publicAPI.getPiecewiseFunction(fieldName, piecewiseFunction);
100
- switch (piecewiseFunction.mode) {
101
- case vtkPiecewiseFunctionProxy.Mode.Gaussians:
102
- pwfProxy.setGaussians(piecewiseFunction.gaussians);
103
- break;
104
- case vtkPiecewiseFunctionProxy.Mode.Points:
105
- pwfProxy.setPoints(piecewiseFunction.points);
106
- break;
107
- case vtkPiecewiseFunctionProxy.Mode.Nodes:
108
- pwfProxy.setNodes(piecewiseFunction.nodes);
109
- break;
110
- }
111
- pwfProxy.setMode(piecewiseFunction.mode);
112
- pwfProxy.setDataRange(...piecewiseFunction.dataRange);
60
+ proxy.set(props, true);
61
+ proxyMapping[id] = proxy;
62
+ cameras[id] = camera;
63
+ });
64
+ function updateView(view) {
65
+ if (!proxyMapping[view] || !cameras[view]) {
66
+ return;
67
+ }
68
+ proxyMapping[view].resetOrientation().then(() => {
69
+ proxyMapping[view].getCamera().set(cameras[view]);
70
+ proxyMapping[view].getRenderer().updateLightsGeometryToFollowCamera();
71
+ proxyMapping[view].renderLater();
113
72
  });
73
+ }
74
+ state.representations.forEach(({
75
+ source,
76
+ view,
77
+ props
78
+ }) => {
79
+ const proxy = publicAPI.getRepresentation(proxyMapping[source], proxyMapping[view]);
80
+ proxy.set(props, true);
81
+ updateView(view);
82
+ });
114
83
 
115
- // Apply camera no matter what
116
- Object.keys(cameras).forEach(updateView);
117
-
118
- // Create id mapping
119
- Object.keys(proxyMapping).forEach(originalId => {
120
- const newId = proxyMapping[originalId].getProxyId();
121
- $oldToNewIdMapping[originalId] = newId;
122
- });
84
+ // restore luts and pwfs after restoring reps to avoid
85
+ // rep initialization from resetting restored luts/pwfs
86
+ Object.keys(state.fields).forEach(fieldName => {
87
+ const {
88
+ lookupTable,
89
+ piecewiseFunction
90
+ } = state.fields[fieldName];
91
+ const lutProxy = publicAPI.getLookupTable(fieldName, lookupTable);
92
+ lutProxy.setPresetName(lookupTable.presetName);
93
+ lutProxy.setDataRange(...lookupTable.dataRange);
94
+ const pwfProxy = publicAPI.getPiecewiseFunction(fieldName, piecewiseFunction);
95
+ switch (piecewiseFunction.mode) {
96
+ case vtkPiecewiseFunctionProxy.Mode.Gaussians:
97
+ pwfProxy.setGaussians(piecewiseFunction.gaussians);
98
+ break;
99
+ case vtkPiecewiseFunctionProxy.Mode.Points:
100
+ pwfProxy.setPoints(piecewiseFunction.points);
101
+ break;
102
+ case vtkPiecewiseFunctionProxy.Mode.Nodes:
103
+ pwfProxy.setNodes(piecewiseFunction.nodes);
104
+ break;
105
+ }
106
+ pwfProxy.setMode(piecewiseFunction.mode);
107
+ pwfProxy.setDataRange(...piecewiseFunction.dataRange);
108
+ });
123
109
 
124
- // Re-enable animation on views
125
- state.views.forEach(_ref4 => {
126
- let {
127
- id
128
- } = _ref4;
129
- proxyMapping[id].setDisableAnimation(false);
130
- });
131
- resolve({
132
- ...state.userData,
133
- $oldToNewIdMapping
134
- });
135
- }).catch(reject);
136
- });
137
- };
138
- publicAPI.saveState = function () {
139
- let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
140
- let userData = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
141
- return new Promise((resolve, reject) => {
142
- const sources = publicAPI.getSources();
143
- // const representations = publicAPI.getRepresentations();
144
- const views = publicAPI.getViews();
110
+ // Apply camera no matter what
111
+ Object.keys(cameras).forEach(updateView);
145
112
 
146
- // Extract handlers
147
- const datasetHandler = options.datasetHandler || (d => d.getState());
148
- delete options.datasetHandler;
149
- const datasets = [];
150
- const fieldNames = new Set();
151
- const state = {
152
- userData,
153
- options,
154
- sources: [],
155
- views: [],
156
- representations: [],
157
- fields: {}
158
- };
159
- sources.forEach(source => {
160
- const dataset = Promise.resolve(datasetHandler(source.getDataset(), source));
161
- datasets.push(dataset);
162
- state.sources.push({
163
- id: source.getProxyId(),
164
- group: source.getProxyGroup(),
165
- name: source.getProxyName(),
166
- props: {
167
- name: source.getName(),
168
- type: source.getType(),
169
- dataset
170
- }
171
- });
113
+ // Create id mapping
114
+ Object.keys(proxyMapping).forEach(originalId => {
115
+ const newId = proxyMapping[originalId].getProxyId();
116
+ $oldToNewIdMapping[originalId] = newId;
172
117
  });
173
- views.forEach(view => {
174
- const camera = view.getCamera().get('position', 'viewUp', 'focalPoint');
175
- state.views.push({
176
- id: view.getProxyId(),
177
- group: view.getProxyGroup(),
178
- name: view.getProxyName(),
179
- props: Object.assign(getProperties(view), view.get('axis', 'orientation', 'viewUp')),
180
- camera
181
- });
182
118
 
183
- // Loop over view representations
184
- const representations = view.getRepresentations();
185
- representations.forEach(representation => {
186
- state.representations.push({
187
- source: representation.getInput().getProxyId(),
188
- view: view.getProxyId(),
189
- props: getProperties(representation)
190
- });
191
- fieldNames.add(representation.getColorBy()[0]);
192
- });
119
+ // Re-enable animation on views
120
+ state.views.forEach(({
121
+ id
122
+ }) => {
123
+ proxyMapping[id].setDisableAnimation(false);
193
124
  });
194
- fieldNames.forEach(fieldName => {
195
- state.fields[fieldName] = {
196
- lookupTable: publicAPI.getLookupTable(fieldName).get('mode', 'presetName', 'rgbPoints', 'hsvPoints', 'nodes', 'arrayName', 'arrayLocation', 'dataRange'),
197
- piecewiseFunction: publicAPI.getPiecewiseFunction(fieldName).get('mode', 'gaussians', 'points', 'nodes', 'arrayName', 'arrayLocation', 'dataRange')
198
- };
125
+ resolve({
126
+ ...state.userData,
127
+ $oldToNewIdMapping
199
128
  });
200
- Promise.all(datasets).then(() => {
201
- // Patch datasets in state to the result of the promises
202
- for (let i = 0; i < state.sources.length; i++) {
203
- state.sources[i].props.dataset.then(value => {
204
- state.sources[i].props.dataset = value;
205
- });
129
+ }).catch(reject);
130
+ });
131
+ publicAPI.saveState = (options = {}, userData = {}) => new Promise((resolve, reject) => {
132
+ const sources = publicAPI.getSources();
133
+ // const representations = publicAPI.getRepresentations();
134
+ const views = publicAPI.getViews();
135
+
136
+ // Extract handlers
137
+ const datasetHandler = options.datasetHandler || (d => d.getState());
138
+ delete options.datasetHandler;
139
+ const datasets = [];
140
+ const fieldNames = new Set();
141
+ const state = {
142
+ userData,
143
+ options,
144
+ sources: [],
145
+ views: [],
146
+ representations: [],
147
+ fields: {}
148
+ };
149
+ sources.forEach(source => {
150
+ const dataset = Promise.resolve(datasetHandler(source.getDataset(), source));
151
+ datasets.push(dataset);
152
+ state.sources.push({
153
+ id: source.getProxyId(),
154
+ group: source.getProxyGroup(),
155
+ name: source.getProxyName(),
156
+ props: {
157
+ name: source.getName(),
158
+ type: source.getType(),
159
+ dataset
206
160
  }
161
+ });
162
+ });
163
+ views.forEach(view => {
164
+ const camera = view.getCamera().get('position', 'viewUp', 'focalPoint');
165
+ state.views.push({
166
+ id: view.getProxyId(),
167
+ group: view.getProxyGroup(),
168
+ name: view.getProxyName(),
169
+ props: Object.assign(getProperties(view), view.get('axis', 'orientation', 'viewUp')),
170
+ camera
171
+ });
207
172
 
208
- // provide valide state
209
- resolve(state);
210
- }).catch(reject);
173
+ // Loop over view representations
174
+ const representations = view.getRepresentations();
175
+ representations.forEach(representation => {
176
+ state.representations.push({
177
+ source: representation.getInput().getProxyId(),
178
+ view: view.getProxyId(),
179
+ props: getProperties(representation)
180
+ });
181
+ fieldNames.add(representation.getColorBy()[0]);
182
+ });
211
183
  });
212
- };
184
+ fieldNames.forEach(fieldName => {
185
+ state.fields[fieldName] = {
186
+ lookupTable: publicAPI.getLookupTable(fieldName).get('mode', 'presetName', 'rgbPoints', 'hsvPoints', 'nodes', 'arrayName', 'arrayLocation', 'dataRange'),
187
+ piecewiseFunction: publicAPI.getPiecewiseFunction(fieldName).get('mode', 'gaussians', 'points', 'nodes', 'arrayName', 'arrayLocation', 'dataRange')
188
+ };
189
+ });
190
+ Promise.all(datasets).then(() => {
191
+ // Patch datasets in state to the result of the promises
192
+ for (let i = 0; i < state.sources.length; i++) {
193
+ state.sources[i].props.dataset.then(value => {
194
+ state.sources[i].props.dataset = value;
195
+ });
196
+ }
197
+
198
+ // provide valide state
199
+ resolve(state);
200
+ }).catch(reject);
201
+ });
213
202
  }
214
203
 
215
204
  export { addStateAPI as default };
@@ -18,8 +18,7 @@ function addViewHandlingAPI(publicAPI, model) {
18
18
 
19
19
  // --------------------------------------------------------------------------
20
20
 
21
- publicAPI.renderAllViews = function () {
22
- let blocking = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
21
+ publicAPI.renderAllViews = (blocking = false) => {
23
22
  const allViews = publicAPI.getViews();
24
23
  for (let i = 0; i < allViews.length; i++) {
25
24
  allViews[i].render(blocking);
@@ -28,8 +27,7 @@ function addViewHandlingAPI(publicAPI, model) {
28
27
 
29
28
  // --------------------------------------------------------------------------
30
29
 
31
- publicAPI.setAnimationOnAllViews = function () {
32
- let enable = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
30
+ publicAPI.setAnimationOnAllViews = (enable = false) => {
33
31
  const allViews = publicAPI.getViews().filter(v => !enable || v.getContainer());
34
32
  for (let i = 0; i < allViews.length; i++) {
35
33
  allViews[i].setAnimation(enable, publicAPI);
@@ -48,8 +46,7 @@ function addViewHandlingAPI(publicAPI, model) {
48
46
 
49
47
  // --------------------------------------------------------------------------
50
48
 
51
- publicAPI.autoAnimateViews = function () {
52
- let debouceTimout = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 250;
49
+ publicAPI.autoAnimateViews = (debouceTimout = 250) => {
53
50
  if (!model.animating) {
54
51
  model.animating = true;
55
52
  const allViews = publicAPI.getViews().filter(v => v.getContainer());
@@ -6,8 +6,7 @@ import addVPropertyHandlingAPI from './ProxyManager/properties.js';
6
6
 
7
7
  // ----------------------------------------------------------------------------
8
8
 
9
- function extend(publicAPI, model) {
10
- let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
9
+ function extend(publicAPI, model, initialValues = {}) {
11
10
  Object.assign(model, {
12
11
  proxyIdMapping: {},
13
12
  proxyByGroup: {},
@@ -19,7 +19,6 @@ function vtkSourceProxy(publicAPI, model) {
19
19
  if (model.inputProxy) {
20
20
  model.inputSubscription = source.onModified(publicAPI.update, -1).unsubscribe; // Trigger at next cycle
21
21
  }
22
-
23
22
  publicAPI.update();
24
23
  };
25
24
 
@@ -36,8 +35,7 @@ function vtkSourceProxy(publicAPI, model) {
36
35
 
37
36
  // --------------------------------------------------------------------------
38
37
 
39
- publicAPI.setInputAlgorithm = function (algo, type) {
40
- let autoUpdate = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
38
+ publicAPI.setInputAlgorithm = (algo, type, autoUpdate = true) => {
41
39
  model.type = type;
42
40
  if (model.algo !== algo) {
43
41
  model.algo = algo;
@@ -91,7 +89,6 @@ function vtkSourceProxy(publicAPI, model) {
91
89
  publicAPI.update();
92
90
  }, -1).unsubscribe; // Trigger at next cycle
93
91
  }
94
-
95
92
  if (model.algoFactory) {
96
93
  publicAPI.setInputAlgorithm(model.algoFactory.newInstance(), null, model.autoUpdate);
97
94
  }
@@ -108,8 +105,7 @@ const DEFAULT_VALUES = {
108
105
 
109
106
  // ----------------------------------------------------------------------------
110
107
 
111
- function extend(publicAPI, model) {
112
- let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
108
+ function extend(publicAPI, model, initialValues = {}) {
113
109
  Object.assign(model, DEFAULT_VALUES, initialValues);
114
110
  macro.obj(publicAPI, model);
115
111
  macro.get(publicAPI, model, ['name', 'type', 'dataset', 'algo', 'inputProxy']);
@@ -143,8 +143,7 @@ function vtkView2DProxy(publicAPI, model) {
143
143
  * Exact fitting requires useParallelRendering, and an active camera
144
144
  * Otherwise, the default renderer.resetCamera is used and it uses a larger bounding box
145
145
  */
146
- model._resetCamera = function () {
147
- let bounds = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
146
+ model._resetCamera = (bounds = null) => {
148
147
  // Always reset camera first to set physicalScale, physicalTranslation and trigger events
149
148
  const initialReset = superInternalResetCamera(bounds);
150
149
  if (!model.fitProps || !model.useParallelRendering || !initialReset) {
@@ -331,8 +330,7 @@ const DEFAULT_VALUES = {
331
330
 
332
331
  // ----------------------------------------------------------------------------
333
332
 
334
- function extend(publicAPI, model) {
335
- let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
333
+ function extend(publicAPI, model, initialValues = {}) {
336
334
  Object.assign(model, DEFAULT_VALUES, initialValues);
337
335
  vtkViewProxy.extend(publicAPI, model, initialValues);
338
336
  macro.get(publicAPI, model, ['axis']);
@@ -46,10 +46,7 @@ function vtkViewProxy(publicAPI, model) {
46
46
  /**
47
47
  * Internal function used by publicAPI.resetCamera()
48
48
  */
49
- model._resetCamera = function () {
50
- let bounds = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
51
- return model.renderer.resetCamera(bounds);
52
- };
49
+ model._resetCamera = (bounds = null) => model.renderer.resetCamera(bounds);
53
50
 
54
51
  // Apply default interaction styles
55
52
  InteractionPresets.applyPreset('3D', model.interactorStyle3D);
@@ -190,8 +187,7 @@ function vtkViewProxy(publicAPI, model) {
190
187
 
191
188
  // --------------------------------------------------------------------------
192
189
 
193
- publicAPI.render = function () {
194
- let blocking = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
190
+ publicAPI.render = (blocking = true) => {
195
191
  if (model.representations.length > 0 && model.resetCameraOnFirstRender) {
196
192
  model.resetCameraOnFirstRender = false;
197
193
  publicAPI.resetCamera();
@@ -234,14 +230,13 @@ function vtkViewProxy(publicAPI, model) {
234
230
 
235
231
  // --------------------------------------------------------------------------
236
232
 
237
- publicAPI.setCameraParameters = _ref => {
238
- let {
239
- position,
240
- focalPoint,
241
- bounds,
242
- parallelScale,
243
- viewAngle
244
- } = _ref;
233
+ publicAPI.setCameraParameters = ({
234
+ position,
235
+ focalPoint,
236
+ bounds,
237
+ parallelScale,
238
+ viewAngle
239
+ }) => {
245
240
  if (position != null) {
246
241
  model.camera.setPosition(...position);
247
242
  }
@@ -272,18 +267,14 @@ function vtkViewProxy(publicAPI, model) {
272
267
 
273
268
  // --------------------------------------------------------------------------
274
269
 
275
- publicAPI.captureImage = function () {
276
- let {
277
- format = 'image/png',
278
- ...opts
279
- } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
280
- return model.renderWindow.captureImages(format, opts)[0];
281
- };
270
+ publicAPI.captureImage = ({
271
+ format = 'image/png',
272
+ ...opts
273
+ } = {}) => model.renderWindow.captureImages(format, opts)[0];
282
274
 
283
275
  // --------------------------------------------------------------------------
284
276
 
285
- publicAPI.openCaptureImage = function () {
286
- let target = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '_blank';
277
+ publicAPI.openCaptureImage = (target = '_blank') => {
287
278
  const image = new Image();
288
279
  return publicAPI.captureImage().then(imageURL => {
289
280
  image.src = imageURL;
@@ -304,8 +295,7 @@ function vtkViewProxy(publicAPI, model) {
304
295
 
305
296
  // --------------------------------------------------------------------------
306
297
 
307
- publicAPI.setCornerAnnotations = function (annotations) {
308
- let useTemplateString = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
298
+ publicAPI.setCornerAnnotations = (annotations, useTemplateString = false) => {
309
299
  if (useTemplateString) {
310
300
  Object.keys(annotations).forEach(key => {
311
301
  publicAPI.setCornerAnnotation(key, annotations[key]);
@@ -339,8 +329,7 @@ function vtkViewProxy(publicAPI, model) {
339
329
 
340
330
  // --------------------------------------------------------------------------
341
331
 
342
- publicAPI.setAnimation = function (enable) {
343
- let requester = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : publicAPI;
332
+ publicAPI.setAnimation = (enable, requester = publicAPI) => {
344
333
  if (model.disableAnimation && enable) {
345
334
  return;
346
335
  }
@@ -354,8 +343,7 @@ function vtkViewProxy(publicAPI, model) {
354
343
 
355
344
  // --------------------------------------------------------------------------
356
345
 
357
- publicAPI.updateOrientation = function (axisIndex, orientation, viewUp) {
358
- let animateSteps = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;
346
+ publicAPI.updateOrientation = (axisIndex, orientation, viewUp, animateSteps = 0) => {
359
347
  if (axisIndex === undefined) {
360
348
  return Promise.resolve();
361
349
  }
@@ -383,8 +371,7 @@ function vtkViewProxy(publicAPI, model) {
383
371
 
384
372
  // --------------------------------------------------------------------------
385
373
 
386
- publicAPI.moveCamera = function (focalPoint, position, viewUp) {
387
- let animateSteps = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;
374
+ publicAPI.moveCamera = (focalPoint, position, viewUp, animateSteps = 0) => {
388
375
  const originalFocalPoint = model.camera.getFocalPoint();
389
376
  const originalPosition = model.camera.getPosition();
390
377
  const originalViewUp = model.camera.getViewUp();
@@ -466,10 +453,7 @@ function vtkViewProxy(publicAPI, model) {
466
453
 
467
454
  // --------------------------------------------------------------------------
468
455
 
469
- publicAPI.resetOrientation = function () {
470
- let animateSteps = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
471
- return publicAPI.updateOrientation(model.axis, model.orientation, model.viewUp, animateSteps);
472
- };
456
+ publicAPI.resetOrientation = (animateSteps = 0) => publicAPI.updateOrientation(model.axis, model.orientation, model.viewUp, animateSteps);
473
457
 
474
458
  // --------------------------------------------------------------------------
475
459
 
@@ -536,8 +520,7 @@ const DEFAULT_VALUES = {
536
520
 
537
521
  // ----------------------------------------------------------------------------
538
522
 
539
- function extend(publicAPI, model) {
540
- let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
523
+ function extend(publicAPI, model, initialValues = {}) {
541
524
  Object.assign(model, DEFAULT_VALUES, initialValues);
542
525
  obj(publicAPI, model);
543
526
  setGet(publicAPI, model, ['name', 'disableAnimation', 'resetCameraOnFirstRender']);
@@ -69,8 +69,7 @@ const DEFAULT_VALUES = {
69
69
 
70
70
  // ----------------------------------------------------------------------------
71
71
 
72
- function extend(publicAPI, model) {
73
- let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
72
+ function extend(publicAPI, model, initialValues = {}) {
74
73
  Object.assign(model, DEFAULT_VALUES, initialValues);
75
74
 
76
75
  // Object methods
@@ -107,8 +107,7 @@ const DEFAULT_VALUES = {};
107
107
 
108
108
  // ----------------------------------------------------------------------------
109
109
 
110
- function extend(publicAPI, model) {
111
- let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
110
+ function extend(publicAPI, model, initialValues = {}) {
112
111
  Object.assign(model, DEFAULT_VALUES, initialValues);
113
112
 
114
113
  // Object methods
@@ -51,8 +51,7 @@ const DEFAULT_VALUES = {};
51
51
 
52
52
  // ----------------------------------------------------------------------------
53
53
 
54
- function extend(publicAPI, model) {
55
- let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
54
+ function extend(publicAPI, model, initialValues = {}) {
56
55
  Object.assign(model, DEFAULT_VALUES, initialValues);
57
56
 
58
57
  // Object methods
@@ -17,10 +17,7 @@ function sum(a, b) {
17
17
 
18
18
  // ----------------------------------------------------------------------------
19
19
 
20
- function mean() {
21
- for (var _len = arguments.length, array = new Array(_len), _key = 0; _key < _len; _key++) {
22
- array[_key] = arguments[_key];
23
- }
20
+ function mean(...array) {
24
21
  return array.reduce(sum, 0) / array.length;
25
22
  }
26
23
 
@@ -104,8 +101,7 @@ function vtkResliceRepresentationProxy(publicAPI, model) {
104
101
  // API ----------------------------------------------------------------------
105
102
 
106
103
  const parentSetColorBy = publicAPI.setColorBy;
107
- publicAPI.setColorBy = function (arrayName, arrayLocation) {
108
- let componentIndex = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : -1;
104
+ publicAPI.setColorBy = (arrayName, arrayLocation, componentIndex = -1) => {
109
105
  if (arrayName === null) {
110
106
  model.property.setRGBTransferFunction(null);
111
107
  model.property.setPiecewiseFunction(null);
@@ -127,8 +123,7 @@ const DEFAULT_VALUES = {};
127
123
 
128
124
  // ----------------------------------------------------------------------------
129
125
 
130
- function extend(publicAPI, model) {
131
- let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
126
+ function extend(publicAPI, model, initialValues = {}) {
132
127
  Object.assign(model, DEFAULT_VALUES, initialValues);
133
128
 
134
129
  // Object methods