@kitware/vtk.js 28.10.2 → 28.11.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (566) hide show
  1. package/Common/Core/Base64.js +53 -82
  2. package/Common/Core/CellArray.js +52 -60
  3. package/Common/Core/ClassHierarchy.js +8 -36
  4. package/Common/Core/DataArray/Constants.js +6 -6
  5. package/Common/Core/DataArray.js +193 -277
  6. package/Common/Core/Endian.js +14 -17
  7. package/Common/Core/HalfFloat.js +17 -34
  8. package/Common/Core/ImageHelper.js +17 -25
  9. package/Common/Core/LookupTable.js +131 -144
  10. package/Common/Core/Math/Constants.js +8 -8
  11. package/Common/Core/Math/index.js +754 -942
  12. package/Common/Core/Math.js +2 -4
  13. package/Common/Core/MatrixBuilder.js +99 -151
  14. package/Common/Core/Points.js +43 -43
  15. package/Common/Core/PriorityQueue.js +30 -28
  16. package/Common/Core/ProgressHandler.js +31 -32
  17. package/Common/Core/ScalarsToColors/Constants.js +4 -4
  18. package/Common/Core/ScalarsToColors.js +196 -253
  19. package/Common/Core/StringArray.js +48 -73
  20. package/Common/Core/URLExtract.js +10 -29
  21. package/Common/Core/VariantArray.js +48 -73
  22. package/Common/Core.js +11 -11
  23. package/Common/DataModel/AbstractPointLocator.js +19 -17
  24. package/Common/DataModel/BoundingBox.js +322 -490
  25. package/Common/DataModel/Box.js +46 -63
  26. package/Common/DataModel/CardinalSpline1D.js +92 -102
  27. package/Common/DataModel/Cell.js +41 -61
  28. package/Common/DataModel/CellLinks.js +91 -127
  29. package/Common/DataModel/CellTypes/Constants.js +7 -6
  30. package/Common/DataModel/CellTypes.js +55 -74
  31. package/Common/DataModel/Collection.js +45 -61
  32. package/Common/DataModel/Cone.js +28 -20
  33. package/Common/DataModel/Cylinder.js +41 -35
  34. package/Common/DataModel/DataSet/Constants.js +11 -5
  35. package/Common/DataModel/DataSet.js +37 -25
  36. package/Common/DataModel/DataSetAttributes/Constants.js +18 -18
  37. package/Common/DataModel/DataSetAttributes/FieldData.js +103 -194
  38. package/Common/DataModel/DataSetAttributes.js +96 -138
  39. package/Common/DataModel/EdgeLocator.js +45 -70
  40. package/Common/DataModel/ITKHelper.js +67 -137
  41. package/Common/DataModel/ImageData.js +115 -172
  42. package/Common/DataModel/ImplicitBoolean/Constants.js +2 -2
  43. package/Common/DataModel/ImplicitBoolean.js +66 -96
  44. package/Common/DataModel/IncrementalOctreeNode.js +201 -231
  45. package/Common/DataModel/IncrementalOctreePointLocator.js +160 -198
  46. package/Common/DataModel/KochanekSpline1D.js +78 -81
  47. package/Common/DataModel/Line/Constants.js +2 -2
  48. package/Common/DataModel/Line.js +82 -105
  49. package/Common/DataModel/Locator.js +17 -10
  50. package/Common/DataModel/Molecule.js +26 -17
  51. package/Common/DataModel/PiecewiseFunction.js +218 -239
  52. package/Common/DataModel/Plane.js +90 -113
  53. package/Common/DataModel/PointSet.js +30 -26
  54. package/Common/DataModel/PolyData/Constants.js +2 -2
  55. package/Common/DataModel/PolyData.js +95 -120
  56. package/Common/DataModel/PolyLine.js +44 -61
  57. package/Common/DataModel/Polygon/Constants.js +4 -4
  58. package/Common/DataModel/Polygon.js +128 -169
  59. package/Common/DataModel/Quad/Constants.js +2 -2
  60. package/Common/DataModel/Quad.js +61 -100
  61. package/Common/DataModel/SelectionNode/Constants.js +5 -4
  62. package/Common/DataModel/SelectionNode.js +25 -21
  63. package/Common/DataModel/Sphere.js +40 -35
  64. package/Common/DataModel/Spline1D/Constants.js +3 -2
  65. package/Common/DataModel/Spline1D.js +34 -18
  66. package/Common/DataModel/Spline3D/Constants.js +2 -2
  67. package/Common/DataModel/Spline3D.js +46 -41
  68. package/Common/DataModel/StructuredData/Constants.js +2 -2
  69. package/Common/DataModel/StructuredData.js +9 -20
  70. package/Common/DataModel/Triangle.js +207 -250
  71. package/Common/DataModel.js +19 -19
  72. package/Common/System/MobileVR.js +56 -61
  73. package/Common/System/TimerLog.js +1 -1
  74. package/Common/System.js +2 -2
  75. package/Common/Transform/LandmarkTransform/Constants.js +2 -2
  76. package/Common/Transform/LandmarkTransform.js +133 -117
  77. package/Common/Transform/Transform.js +42 -57
  78. package/Common/Transform.js +2 -2
  79. package/Common/index.js +4 -4
  80. package/Filters/Core/Cutter.js +134 -146
  81. package/Filters/Core/PolyDataNormals.js +44 -50
  82. package/Filters/Core.js +2 -2
  83. package/Filters/Cornerstone/ImageDataToCornerstoneImage.js +45 -33
  84. package/Filters/Cornerstone.js +1 -1
  85. package/Filters/General/AppendPolyData.js +84 -100
  86. package/Filters/General/Calculator.js +95 -163
  87. package/Filters/General/ClipClosedSurface/Constants.js +2 -2
  88. package/Filters/General/ClipClosedSurface.js +341 -416
  89. package/Filters/General/ClosedPolyLineToSurfaceFilter.js +141 -156
  90. package/Filters/General/ContourTriangulator/Constants.js +2 -2
  91. package/Filters/General/ContourTriangulator/helper.js +684 -812
  92. package/Filters/General/ContourTriangulator.js +92 -89
  93. package/Filters/General/ImageCropFilter.js +77 -78
  94. package/Filters/General/ImageDataOutlineFilter.js +42 -36
  95. package/Filters/General/ImageMarchingCubes/caseTable.js +9 -521
  96. package/Filters/General/ImageMarchingCubes.js +99 -112
  97. package/Filters/General/ImageMarchingSquares/caseTable.js +9 -41
  98. package/Filters/General/ImageMarchingSquares.js +93 -118
  99. package/Filters/General/ImageOutlineFilter.js +53 -54
  100. package/Filters/General/ImageSliceFilter.js +39 -30
  101. package/Filters/General/ImageStreamline.js +107 -124
  102. package/Filters/General/LineFilter.js +26 -15
  103. package/Filters/General/MoleculeToRepresentation.js +136 -149
  104. package/Filters/General/OBBTree/OBBNode.js +36 -34
  105. package/Filters/General/OBBTree/helper.js +19 -24
  106. package/Filters/General/OBBTree.js +396 -488
  107. package/Filters/General/OutlineFilter.js +52 -34
  108. package/Filters/General/PaintFilter/PaintFilter.worker.js +93 -130
  109. package/Filters/General/PaintFilter.js +150 -162
  110. package/Filters/General/ScalarToRGBA.js +38 -33
  111. package/Filters/General/TriangleFilter.js +65 -62
  112. package/Filters/General/TubeFilter/Constants.js +4 -4
  113. package/Filters/General/TubeFilter.js +376 -496
  114. package/Filters/General/WarpScalar.js +58 -60
  115. package/Filters/General/WindowedSincPolyDataFilter.js +258 -330
  116. package/Filters/General.js +21 -21
  117. package/Filters/Sources/Arrow2DSource/Constants.js +2 -2
  118. package/Filters/Sources/Arrow2DSource.js +56 -56
  119. package/Filters/Sources/ArrowSource.js +39 -29
  120. package/Filters/Sources/CircleSource.js +43 -43
  121. package/Filters/Sources/ConcentricCylinderSource.js +151 -174
  122. package/Filters/Sources/ConeSource.js +51 -42
  123. package/Filters/Sources/CubeSource.js +75 -96
  124. package/Filters/Sources/Cursor3D.js +94 -109
  125. package/Filters/Sources/CylinderSource.js +90 -90
  126. package/Filters/Sources/ImageGridSource.js +43 -43
  127. package/Filters/Sources/LineSource.js +49 -39
  128. package/Filters/Sources/PlaneSource.js +97 -104
  129. package/Filters/Sources/PointSource.js +46 -37
  130. package/Filters/Sources/RTAnalyticSource.js +50 -48
  131. package/Filters/Sources/SLICSource.js +63 -73
  132. package/Filters/Sources/SphereSource.js +88 -78
  133. package/Filters/Sources/ViewFinderSource.js +26 -23
  134. package/Filters/Sources.js +14 -14
  135. package/Filters/Texture/TextureMapToPlane.js +95 -97
  136. package/Filters/Texture/TextureMapToSphere.js +46 -54
  137. package/Filters/Texture.js +2 -2
  138. package/Filters/index.js +5 -5
  139. package/IO/Core/BinaryHelper.js +12 -18
  140. package/IO/Core/DataAccessHelper/HtmlDataAccessHelper.js +43 -59
  141. package/IO/Core/DataAccessHelper/HttpDataAccessHelper.js +76 -113
  142. package/IO/Core/DataAccessHelper/JSZipDataAccessHelper.js +62 -112
  143. package/IO/Core/DataAccessHelper/LiteHttpDataAccessHelper.js +76 -113
  144. package/IO/Core/DataAccessHelper.js +6 -6
  145. package/IO/Core/HttpDataSetReader.js +136 -139
  146. package/IO/Core/HttpDataSetSeriesReader.js +64 -75
  147. package/IO/Core/HttpSceneLoader.js +130 -179
  148. package/IO/Core/ImageStream/DefaultProtocol.js +29 -43
  149. package/IO/Core/ImageStream/ViewStream.js +100 -103
  150. package/IO/Core/ImageStream.js +62 -54
  151. package/IO/Core/ResourceLoader.js +10 -9
  152. package/IO/Core/Serializer/ArraySerializer.js +40 -40
  153. package/IO/Core/Serializer/FieldDataSerializer.js +18 -28
  154. package/IO/Core/Serializer/ImageDataSerializer.js +22 -23
  155. package/IO/Core/Serializer/PolyDataSerializer.js +17 -21
  156. package/IO/Core/Serializer.js +6 -13
  157. package/IO/Core/WSLinkClient.js +90 -76
  158. package/IO/Core/ZipMultiDataSetReader.js +46 -44
  159. package/IO/Core/ZipMultiDataSetWriter.js +43 -34
  160. package/IO/Core.js +7 -7
  161. package/IO/Geometry/DracoReader.js +118 -121
  162. package/IO/Geometry/PLYReader.js +163 -223
  163. package/IO/Geometry/PLYWriter/Constants.js +5 -5
  164. package/IO/Geometry/PLYWriter.js +139 -154
  165. package/IO/Geometry/STLReader.js +123 -146
  166. package/IO/Geometry/STLWriter/Constants.js +2 -2
  167. package/IO/Geometry/STLWriter.js +83 -82
  168. package/IO/Geometry.js +5 -5
  169. package/IO/Legacy/LegacyAsciiParser.js +78 -139
  170. package/IO/Legacy/PolyDataReader.js +48 -36
  171. package/IO/Legacy.js +2 -2
  172. package/IO/Misc/ElevationReader.js +67 -60
  173. package/IO/Misc/HttpDataSetLODsLoader.js +41 -38
  174. package/IO/Misc/ITKImageReader.js +58 -45
  175. package/IO/Misc/ITKPolyDataReader.js +50 -38
  176. package/IO/Misc/JSONNucleoReader.js +49 -42
  177. package/IO/Misc/JSONReader.js +38 -33
  178. package/IO/Misc/MTLReader.js +74 -119
  179. package/IO/Misc/OBJReader.js +153 -206
  180. package/IO/Misc/PDBReader.js +70 -68
  181. package/IO/Misc/SkyboxReader.js +77 -82
  182. package/IO/Misc.js +9 -9
  183. package/IO/XML/XMLImageDataReader.js +36 -38
  184. package/IO/XML/XMLImageDataWriter.js +28 -21
  185. package/IO/XML/XMLPolyDataReader.js +49 -46
  186. package/IO/XML/XMLPolyDataWriter.js +43 -42
  187. package/IO/XML/XMLReader.js +262 -304
  188. package/IO/XML/XMLWriter/Constants.js +3 -3
  189. package/IO/XML/XMLWriter.js +70 -84
  190. package/IO/XML.js +6 -6
  191. package/IO/index.js +5 -5
  192. package/Imaging/Core/AbstractImageInterpolator/Constants.js +4 -4
  193. package/Imaging/Core/AbstractImageInterpolator/InterpolationInfo.js +30 -27
  194. package/Imaging/Core/AbstractImageInterpolator.js +74 -87
  195. package/Imaging/Core/ImageInterpolator.js +201 -252
  196. package/Imaging/Core/ImagePointDataIterator.js +96 -122
  197. package/Imaging/Core/ImageReslice/Constants.js +2 -2
  198. package/Imaging/Core/ImageReslice.js +327 -464
  199. package/Imaging/Core.js +4 -4
  200. package/Imaging/Hybrid/SampleFunction.js +58 -51
  201. package/Imaging/Hybrid.js +1 -1
  202. package/Imaging/index.js +2 -2
  203. package/Interaction/Animations/TimeStepBasedAnimationHandler.js +39 -54
  204. package/Interaction/Manipulators/CompositeCameraManipulator.js +22 -13
  205. package/Interaction/Manipulators/CompositeGestureManipulator.js +31 -43
  206. package/Interaction/Manipulators/CompositeKeyboardManipulator.js +15 -11
  207. package/Interaction/Manipulators/CompositeMouseManipulator.js +27 -33
  208. package/Interaction/Manipulators/CompositeVRManipulator.js +22 -15
  209. package/Interaction/Manipulators/GestureCameraManipulator.js +54 -36
  210. package/Interaction/Manipulators/KeyboardCameraManipulator.js +95 -97
  211. package/Interaction/Manipulators/MouseBoxSelectorManipulator.js +70 -89
  212. package/Interaction/Manipulators/MouseCameraAxisRotateManipulator.js +67 -54
  213. package/Interaction/Manipulators/MouseCameraSliceManipulator.js +40 -38
  214. package/Interaction/Manipulators/MouseCameraTrackballFirstPersonManipulator.js +83 -68
  215. package/Interaction/Manipulators/MouseCameraTrackballMultiRotateManipulator.js +32 -28
  216. package/Interaction/Manipulators/MouseCameraTrackballPanManipulator.js +47 -40
  217. package/Interaction/Manipulators/MouseCameraTrackballRollManipulator.js +55 -43
  218. package/Interaction/Manipulators/MouseCameraTrackballRotateManipulator.js +56 -46
  219. package/Interaction/Manipulators/MouseCameraTrackballZoomManipulator.js +41 -46
  220. package/Interaction/Manipulators/MouseCameraTrackballZoomToMouseManipulator.js +29 -27
  221. package/Interaction/Manipulators/MouseCameraUnicamManipulator.js +123 -146
  222. package/Interaction/Manipulators/MouseCameraUnicamRotateManipulator.js +144 -166
  223. package/Interaction/Manipulators/MouseRangeManipulator.js +127 -132
  224. package/Interaction/Manipulators/VRButtonPanManipulator.js +33 -23
  225. package/Interaction/Manipulators.js +21 -21
  226. package/Interaction/Misc/DeviceOrientationToCamera.js +25 -47
  227. package/Interaction/Misc.js +1 -1
  228. package/Interaction/Style/InteractorStyleImage.js +101 -121
  229. package/Interaction/Style/InteractorStyleMPRSlice.js +111 -128
  230. package/Interaction/Style/InteractorStyleManipulator/Presets.js +9 -17
  231. package/Interaction/Style/InteractorStyleManipulator.js +254 -329
  232. package/Interaction/Style/InteractorStyleRemoteMouse.js +195 -180
  233. package/Interaction/Style/InteractorStyleTrackballCamera.js +154 -157
  234. package/Interaction/Style/InteractorStyleUnicam.js +30 -38
  235. package/Interaction/Style.js +5 -5
  236. package/Interaction/UI/CornerAnnotation/CornerAnnotation.module.css.js +1 -1
  237. package/Interaction/UI/CornerAnnotation.js +65 -48
  238. package/Interaction/UI/FPSMonitor.js +104 -105
  239. package/Interaction/UI/Icons.js +1 -1
  240. package/Interaction/UI/Slider/Constants.js +2 -2
  241. package/Interaction/UI/Slider.js +78 -95
  242. package/Interaction/UI/VolumeController.js +104 -97
  243. package/Interaction/UI.js +5 -5
  244. package/Interaction/Widgets/OrientationMarkerWidget/Constants.js +2 -2
  245. package/Interaction/Widgets/OrientationMarkerWidget.js +90 -135
  246. package/Interaction/Widgets/PiecewiseGaussianWidget/ComputeHistogram.worker.js +0 -3
  247. package/Interaction/Widgets/PiecewiseGaussianWidget.js +381 -498
  248. package/Interaction/Widgets.js +2 -2
  249. package/Interaction/index.js +5 -5
  250. package/Proxy/Animation/AbstractAnimationProxy.js +22 -15
  251. package/Proxy/Animation/AnimationProxyManager.js +43 -51
  252. package/Proxy/Animation/TimeStepBasedAnimationHandlerProxy.js +26 -19
  253. package/Proxy/Core/AbstractRepresentationProxy.js +97 -151
  254. package/Proxy/Core/LookupTableProxy/Constants.js +4 -4
  255. package/Proxy/Core/LookupTableProxy.js +49 -52
  256. package/Proxy/Core/PiecewiseFunctionProxy/Constants.js +4 -4
  257. package/Proxy/Core/PiecewiseFunctionProxy.js +63 -72
  258. package/Proxy/Core/ProxyManager/core.js +83 -106
  259. package/Proxy/Core/ProxyManager/properties.js +53 -76
  260. package/Proxy/Core/ProxyManager/state.js +100 -110
  261. package/Proxy/Core/ProxyManager/view.js +45 -55
  262. package/Proxy/Core/ProxyManager.js +16 -8
  263. package/Proxy/Core/SourceProxy.js +41 -38
  264. package/Proxy/Core/View2DProxy.js +143 -199
  265. package/Proxy/Core/ViewProxy.js +223 -269
  266. package/Proxy/Core.js +7 -7
  267. package/Proxy/Representations/GeometryRepresentationProxy.js +34 -20
  268. package/Proxy/Representations/GlyphRepresentationProxy.js +42 -41
  269. package/Proxy/Representations/MoleculeRepresentationProxy.js +32 -22
  270. package/Proxy/Representations/ResliceRepresentationProxy.js +48 -32
  271. package/Proxy/Representations/SkyboxRepresentationProxy.js +30 -29
  272. package/Proxy/Representations/SliceRepresentationProxy.js +93 -112
  273. package/Proxy/Representations/SlicedGeometryRepresentationProxy.js +46 -42
  274. package/Proxy/Representations/VolumeRepresentationProxy.js +108 -133
  275. package/Proxy/Representations.js +7 -7
  276. package/Proxy/index.js +2 -2
  277. package/README.md +1 -1
  278. package/Rendering/Core/AbstractImageMapper/helper.js +44 -49
  279. package/Rendering/Core/AbstractImageMapper.js +18 -19
  280. package/Rendering/Core/AbstractMapper.js +39 -55
  281. package/Rendering/Core/AbstractMapper3D.js +26 -31
  282. package/Rendering/Core/AbstractPicker.js +25 -21
  283. package/Rendering/Core/Actor.js +71 -93
  284. package/Rendering/Core/Actor2D.js +64 -78
  285. package/Rendering/Core/AnnotatedCubeActor/Presets.js +5 -11
  286. package/Rendering/Core/AnnotatedCubeActor.js +94 -79
  287. package/Rendering/Core/AxesActor.js +65 -87
  288. package/Rendering/Core/Camera.js +246 -271
  289. package/Rendering/Core/CellPicker.js +125 -148
  290. package/Rendering/Core/ColorTransferFunction/ColorMaps.js +20 -21
  291. package/Rendering/Core/ColorTransferFunction/ColorMapsLite.js +20 -21
  292. package/Rendering/Core/ColorTransferFunction/Constants.js +4 -4
  293. package/Rendering/Core/ColorTransferFunction.js +460 -546
  294. package/Rendering/Core/Coordinate/Constants.js +2 -2
  295. package/Rendering/Core/Coordinate.js +119 -198
  296. package/Rendering/Core/CubeAxesActor.js +294 -320
  297. package/Rendering/Core/Follower.js +46 -45
  298. package/Rendering/Core/Glyph3DMapper/Constants.js +4 -4
  299. package/Rendering/Core/Glyph3DMapper.js +96 -148
  300. package/Rendering/Core/HardwareSelector.js +36 -69
  301. package/Rendering/Core/ImageArrayMapper.js +87 -126
  302. package/Rendering/Core/ImageCPRMapper.js +134 -209
  303. package/Rendering/Core/ImageMapper/Constants.js +2 -2
  304. package/Rendering/Core/ImageMapper.js +85 -144
  305. package/Rendering/Core/ImageProperty/Constants.js +2 -2
  306. package/Rendering/Core/ImageProperty.js +66 -81
  307. package/Rendering/Core/ImageResliceMapper/Constants.js +2 -2
  308. package/Rendering/Core/ImageResliceMapper.js +36 -29
  309. package/Rendering/Core/ImageSlice.js +85 -127
  310. package/Rendering/Core/InteractorObserver.js +82 -73
  311. package/Rendering/Core/InteractorStyle/Constants.js +2 -2
  312. package/Rendering/Core/InteractorStyle.js +56 -58
  313. package/Rendering/Core/Light.js +43 -49
  314. package/Rendering/Core/Mapper/CoincidentTopologyHelper.js +37 -48
  315. package/Rendering/Core/Mapper/Constants.js +6 -6
  316. package/Rendering/Core/Mapper/Static.js +15 -12
  317. package/Rendering/Core/Mapper.js +194 -259
  318. package/Rendering/Core/Mapper2D.js +61 -100
  319. package/Rendering/Core/Picker.js +124 -143
  320. package/Rendering/Core/PixelSpaceCallbackMapper.js +40 -37
  321. package/Rendering/Core/PointPicker.js +68 -79
  322. package/Rendering/Core/Prop/Constants.js +2 -2
  323. package/Rendering/Core/Prop.js +58 -106
  324. package/Rendering/Core/Prop3D.js +54 -83
  325. package/Rendering/Core/Property/Constants.js +6 -6
  326. package/Rendering/Core/Property.js +45 -74
  327. package/Rendering/Core/Property2D/Constants.js +2 -2
  328. package/Rendering/Core/Property2D.js +33 -42
  329. package/Rendering/Core/RenderWindow.js +70 -82
  330. package/Rendering/Core/RenderWindowInteractor/Constants.js +7 -7
  331. package/Rendering/Core/RenderWindowInteractor.js +324 -439
  332. package/Rendering/Core/Renderer.js +192 -256
  333. package/Rendering/Core/ScalarBarActor.js +267 -272
  334. package/Rendering/Core/Skybox.js +26 -24
  335. package/Rendering/Core/SphereMapper.js +22 -12
  336. package/Rendering/Core/StickMapper.js +22 -12
  337. package/Rendering/Core/SurfaceLICInterface/Constants.js +6 -6
  338. package/Rendering/Core/SurfaceLICInterface.js +13 -9
  339. package/Rendering/Core/SurfaceLICMapper.js +23 -15
  340. package/Rendering/Core/Texture.js +99 -141
  341. package/Rendering/Core/Viewport.js +60 -88
  342. package/Rendering/Core/Volume.js +55 -77
  343. package/Rendering/Core/VolumeMapper/Constants.js +4 -4
  344. package/Rendering/Core/VolumeMapper.js +59 -91
  345. package/Rendering/Core/VolumeProperty/Constants.js +4 -4
  346. package/Rendering/Core/VolumeProperty.js +78 -115
  347. package/Rendering/Core.js +47 -49
  348. package/Rendering/Misc/CanvasView.js +62 -61
  349. package/Rendering/Misc/FullScreenRenderWindow.js +60 -62
  350. package/Rendering/Misc/GenericRenderWindow.js +48 -37
  351. package/Rendering/Misc/RemoteView.js +86 -80
  352. package/Rendering/Misc/RenderWindowWithControlBar.js +54 -48
  353. package/Rendering/Misc/SynchronizableRenderWindow/BehaviorManager/CameraSynchronizer.js +43 -51
  354. package/Rendering/Misc/SynchronizableRenderWindow/BehaviorManager.js +52 -82
  355. package/Rendering/Misc/SynchronizableRenderWindow/ObjectManager.js +258 -308
  356. package/Rendering/Misc/SynchronizableRenderWindow.js +133 -163
  357. package/Rendering/Misc/TextureLODsDownloader.js +72 -74
  358. package/Rendering/Misc.js +7 -7
  359. package/Rendering/OpenGL/Actor.js +57 -68
  360. package/Rendering/OpenGL/Actor2D.js +56 -56
  361. package/Rendering/OpenGL/BufferObject/Constants.js +2 -2
  362. package/Rendering/OpenGL/BufferObject.js +50 -65
  363. package/Rendering/OpenGL/Camera.js +35 -29
  364. package/Rendering/OpenGL/CellArrayBufferObject.js +119 -149
  365. package/Rendering/OpenGL/Convolution2DPass.js +87 -81
  366. package/Rendering/OpenGL/CubeAxesActor.js +28 -21
  367. package/Rendering/OpenGL/ForwardPass.js +53 -64
  368. package/Rendering/OpenGL/Framebuffer.js +61 -101
  369. package/Rendering/OpenGL/Glyph3DMapper.js +165 -196
  370. package/Rendering/OpenGL/HardwareSelector/Constants.js +2 -2
  371. package/Rendering/OpenGL/HardwareSelector.js +272 -397
  372. package/Rendering/OpenGL/Helper.js +58 -73
  373. package/Rendering/OpenGL/ImageCPRMapper.js +339 -421
  374. package/Rendering/OpenGL/ImageMapper.js +268 -361
  375. package/Rendering/OpenGL/ImageResliceMapper.js +306 -438
  376. package/Rendering/OpenGL/ImageSlice.js +48 -54
  377. package/Rendering/OpenGL/OrderIndependentTranslucentPass.js +102 -84
  378. package/Rendering/OpenGL/PixelSpaceCallbackMapper.js +43 -42
  379. package/Rendering/OpenGL/PolyDataMapper.js +358 -492
  380. package/Rendering/OpenGL/PolyDataMapper2D.js +153 -205
  381. package/Rendering/OpenGL/RadialDistortionPass.js +86 -89
  382. package/Rendering/OpenGL/RenderWindow/Constants.js +2 -2
  383. package/Rendering/OpenGL/RenderWindow/ContextProxy.js +20 -29
  384. package/Rendering/OpenGL/RenderWindow.js +356 -510
  385. package/Rendering/OpenGL/Renderer.js +77 -89
  386. package/Rendering/OpenGL/ReplacementShaderMapper.js +28 -46
  387. package/Rendering/OpenGL/ScalarBarActor.js +28 -21
  388. package/Rendering/OpenGL/Shader.js +37 -31
  389. package/Rendering/OpenGL/ShaderCache.js +67 -74
  390. package/Rendering/OpenGL/ShaderProgram.js +136 -248
  391. package/Rendering/OpenGL/Skybox.js +99 -60
  392. package/Rendering/OpenGL/SphereMapper.js +94 -108
  393. package/Rendering/OpenGL/StickMapper.js +110 -114
  394. package/Rendering/OpenGL/SurfaceLIC/LineIntegralConvolution2D/pingpong.js +91 -157
  395. package/Rendering/OpenGL/SurfaceLIC/LineIntegralConvolution2D.js +142 -151
  396. package/Rendering/OpenGL/SurfaceLIC/SurfaceLICInterface.js +142 -216
  397. package/Rendering/OpenGL/SurfaceLIC/SurfaceLICMapper.js +79 -100
  398. package/Rendering/OpenGL/SurfaceLIC.js +2 -2
  399. package/Rendering/OpenGL/Texture/Constants.js +4 -4
  400. package/Rendering/OpenGL/Texture.js +443 -608
  401. package/Rendering/OpenGL/TextureUnitManager.js +47 -43
  402. package/Rendering/OpenGL/VertexArrayObject.js +92 -131
  403. package/Rendering/OpenGL/ViewNodeFactory.js +25 -13
  404. package/Rendering/OpenGL/Volume.js +38 -34
  405. package/Rendering/OpenGL/VolumeMapper.js +437 -547
  406. package/Rendering/OpenGL.js +28 -28
  407. package/Rendering/SceneGraph/RenderPass.js +34 -31
  408. package/Rendering/SceneGraph/RenderWindowViewNode.js +68 -94
  409. package/Rendering/SceneGraph/ViewNode.js +82 -111
  410. package/Rendering/SceneGraph/ViewNodeFactory.js +31 -26
  411. package/Rendering/SceneGraph.js +4 -4
  412. package/Rendering/WebGPU/Actor.js +49 -49
  413. package/Rendering/WebGPU/Actor2D.js +45 -44
  414. package/Rendering/WebGPU/BindGroup.js +43 -50
  415. package/Rendering/WebGPU/Buffer.js +41 -50
  416. package/Rendering/WebGPU/BufferManager/Constants.js +4 -4
  417. package/Rendering/WebGPU/BufferManager.js +111 -141
  418. package/Rendering/WebGPU/Camera.js +65 -67
  419. package/Rendering/WebGPU/CellArrayMapper.js +621 -388
  420. package/Rendering/WebGPU/CubeAxesActor.js +28 -19
  421. package/Rendering/WebGPU/Device.js +78 -133
  422. package/Rendering/WebGPU/ForwardPass.js +75 -72
  423. package/Rendering/WebGPU/FullScreenQuad.js +25 -18
  424. package/Rendering/WebGPU/Glyph3DMapper.js +62 -74
  425. package/Rendering/WebGPU/HardwareSelectionPass.js +45 -38
  426. package/Rendering/WebGPU/HardwareSelector.js +200 -276
  427. package/Rendering/WebGPU/ImageMapper.js +180 -171
  428. package/Rendering/WebGPU/ImageSlice.js +45 -44
  429. package/Rendering/WebGPU/IndexBuffer.js +166 -200
  430. package/Rendering/WebGPU/OpaquePass.js +37 -36
  431. package/Rendering/WebGPU/OrderIndependentTranslucentPass.js +72 -45
  432. package/Rendering/WebGPU/Pipeline.js +37 -51
  433. package/Rendering/WebGPU/PixelSpaceCallbackMapper.js +27 -19
  434. package/Rendering/WebGPU/PolyDataMapper.js +50 -53
  435. package/Rendering/WebGPU/PolyDataMapper2D.js +39 -39
  436. package/Rendering/WebGPU/RenderEncoder.js +68 -88
  437. package/Rendering/WebGPU/RenderWindow.js +262 -376
  438. package/Rendering/WebGPU/Renderer.js +224 -208
  439. package/Rendering/WebGPU/Sampler.js +27 -21
  440. package/Rendering/WebGPU/ScalarBarActor.js +28 -19
  441. package/Rendering/WebGPU/ShaderCache.js +43 -41
  442. package/Rendering/WebGPU/ShaderDescription.js +52 -59
  443. package/Rendering/WebGPU/ShaderModule.js +26 -17
  444. package/Rendering/WebGPU/SimpleMapper.js +185 -121
  445. package/Rendering/WebGPU/SphereMapper.js +200 -130
  446. package/Rendering/WebGPU/StickMapper.js +289 -152
  447. package/Rendering/WebGPU/StorageBuffer.js +100 -115
  448. package/Rendering/WebGPU/Texture.js +79 -99
  449. package/Rendering/WebGPU/TextureManager.js +52 -54
  450. package/Rendering/WebGPU/TextureView.js +40 -43
  451. package/Rendering/WebGPU/Types.js +53 -70
  452. package/Rendering/WebGPU/UniformBuffer.js +158 -184
  453. package/Rendering/WebGPU/VertexInput.js +64 -90
  454. package/Rendering/WebGPU/ViewNodeFactory.js +25 -13
  455. package/Rendering/WebGPU/Volume.js +52 -51
  456. package/Rendering/WebGPU/VolumePass.js +218 -239
  457. package/Rendering/WebGPU/VolumePassFSQ.js +625 -306
  458. package/Rendering/WebGPU.js +1 -1
  459. package/Rendering/index.js +5 -5
  460. package/Widgets/Core/AbstractWidget/Constants.js +2 -2
  461. package/Widgets/Core/AbstractWidget.js +49 -58
  462. package/Widgets/Core/AbstractWidgetFactory.js +101 -122
  463. package/Widgets/Core/StateBuilder/boundsMixin.js +23 -28
  464. package/Widgets/Core/StateBuilder/color3Mixin.js +10 -7
  465. package/Widgets/Core/StateBuilder/colorMixin.js +10 -6
  466. package/Widgets/Core/StateBuilder/cornerMixin.js +16 -15
  467. package/Widgets/Core/StateBuilder/directionMixin.js +20 -18
  468. package/Widgets/Core/StateBuilder/manipulatorMixin.js +26 -18
  469. package/Widgets/Core/StateBuilder/nameMixin.js +10 -6
  470. package/Widgets/Core/StateBuilder/orientationMixin.js +19 -16
  471. package/Widgets/Core/StateBuilder/originMixin.js +25 -32
  472. package/Widgets/Core/StateBuilder/scale1Mixin.js +10 -6
  473. package/Widgets/Core/StateBuilder/scale3Mixin.js +10 -6
  474. package/Widgets/Core/StateBuilder/shapeMixin.js +12 -6
  475. package/Widgets/Core/StateBuilder/textMixin.js +10 -6
  476. package/Widgets/Core/StateBuilder/visibleMixin.js +10 -6
  477. package/Widgets/Core/StateBuilder.js +120 -149
  478. package/Widgets/Core/WidgetManager/Constants.js +7 -7
  479. package/Widgets/Core/WidgetManager.js +249 -421
  480. package/Widgets/Core/WidgetState.js +48 -57
  481. package/Widgets/Core.js +5 -5
  482. package/Widgets/Manipulators/AbstractManipulator.js +20 -14
  483. package/Widgets/Manipulators/CPRManipulator.js +55 -71
  484. package/Widgets/Manipulators/LineManipulator.js +31 -28
  485. package/Widgets/Manipulators/PickerManipulator.d.ts +48 -0
  486. package/Widgets/Manipulators/PickerManipulator.js +65 -0
  487. package/Widgets/Manipulators/PlaneManipulator.js +26 -23
  488. package/Widgets/Manipulators/TrackballManipulator.js +39 -35
  489. package/Widgets/Manipulators.js +4 -2
  490. package/Widgets/Representations/ArrowHandleRepresentation.js +148 -162
  491. package/Widgets/Representations/CircleContextRepresentation.js +44 -38
  492. package/Widgets/Representations/ContextRepresentation.js +17 -14
  493. package/Widgets/Representations/ConvexFaceContextRepresentation.js +50 -47
  494. package/Widgets/Representations/CroppingOutlineRepresentation.js +38 -27
  495. package/Widgets/Representations/CubeHandleRepresentation.js +21 -18
  496. package/Widgets/Representations/GlyphRepresentation.js +107 -152
  497. package/Widgets/Representations/HandleRepresentation.js +17 -14
  498. package/Widgets/Representations/ImplicitPlaneRepresentation.js +97 -91
  499. package/Widgets/Representations/LineHandleRepresentation.js +44 -41
  500. package/Widgets/Representations/OutlineContextRepresentation.js +42 -36
  501. package/Widgets/Representations/PolyLineRepresentation.js +60 -75
  502. package/Widgets/Representations/RectangleContextRepresentation.js +42 -37
  503. package/Widgets/Representations/SphereContextRepresentation.js +19 -27
  504. package/Widgets/Representations/SphereHandleRepresentation.js +31 -27
  505. package/Widgets/Representations/SplineContextRepresentation.js +46 -70
  506. package/Widgets/Representations/WidgetRepresentation/Constants.js +2 -2
  507. package/Widgets/Representations/WidgetRepresentation.js +99 -134
  508. package/Widgets/Representations.js +13 -13
  509. package/Widgets/Widgets3D/AngleWidget/behavior.js +41 -63
  510. package/Widgets/Widgets3D/AngleWidget.js +40 -38
  511. package/Widgets/Widgets3D/DistanceWidget/behavior.js +40 -61
  512. package/Widgets/Widgets3D/DistanceWidget.js +38 -36
  513. package/Widgets/Widgets3D/EllipseWidget/behavior.js +14 -19
  514. package/Widgets/Widgets3D/EllipseWidget/state.js +4 -2
  515. package/Widgets/Widgets3D/EllipseWidget.js +37 -26
  516. package/Widgets/Widgets3D/ImageCroppingWidget/behavior.js +26 -56
  517. package/Widgets/Widgets3D/ImageCroppingWidget/helpers.js +14 -17
  518. package/Widgets/Widgets3D/ImageCroppingWidget/state.js +20 -16
  519. package/Widgets/Widgets3D/ImageCroppingWidget.js +80 -98
  520. package/Widgets/Widgets3D/ImplicitPlaneWidget.js +55 -77
  521. package/Widgets/Widgets3D/InteractiveOrientationWidget/behavior.js +17 -18
  522. package/Widgets/Widgets3D/InteractiveOrientationWidget/state.js +15 -7
  523. package/Widgets/Widgets3D/InteractiveOrientationWidget.js +30 -29
  524. package/Widgets/Widgets3D/LabelWidget/behavior.js +37 -62
  525. package/Widgets/Widgets3D/LabelWidget.js +31 -25
  526. package/Widgets/Widgets3D/LineWidget/Constants.js +8 -8
  527. package/Widgets/Widgets3D/LineWidget/behavior.js +77 -114
  528. package/Widgets/Widgets3D/LineWidget/helpers.js +13 -20
  529. package/Widgets/Widgets3D/LineWidget/state.js +2 -1
  530. package/Widgets/Widgets3D/LineWidget.js +39 -35
  531. package/Widgets/Widgets3D/PaintWidget/behavior.js +24 -59
  532. package/Widgets/Widgets3D/PaintWidget.js +39 -37
  533. package/Widgets/Widgets3D/PolyLineWidget/behavior.js +44 -68
  534. package/Widgets/Widgets3D/PolyLineWidget.js +36 -31
  535. package/Widgets/Widgets3D/RectangleWidget/behavior.js +6 -11
  536. package/Widgets/Widgets3D/RectangleWidget/state.js +4 -2
  537. package/Widgets/Widgets3D/RectangleWidget.js +37 -25
  538. package/Widgets/Widgets3D/ResliceCursorWidget/Constants.js +35 -21
  539. package/Widgets/Widgets3D/ResliceCursorWidget/behavior.js +133 -209
  540. package/Widgets/Widgets3D/ResliceCursorWidget/cprBehavior.js +26 -41
  541. package/Widgets/Widgets3D/ResliceCursorWidget/helpers.js +89 -116
  542. package/Widgets/Widgets3D/ResliceCursorWidget/state.js +33 -40
  543. package/Widgets/Widgets3D/ResliceCursorWidget.js +186 -227
  544. package/Widgets/Widgets3D/SeedWidget/behavior.js +82 -0
  545. package/Widgets/Widgets3D/SeedWidget/state.js +18 -0
  546. package/Widgets/Widgets3D/SeedWidget.d.ts +44 -0
  547. package/Widgets/Widgets3D/SeedWidget.js +43 -0
  548. package/Widgets/Widgets3D/ShapeWidget/Constants.js +19 -19
  549. package/Widgets/Widgets3D/ShapeWidget/behavior.js +150 -252
  550. package/Widgets/Widgets3D/ShapeWidget.js +24 -27
  551. package/Widgets/Widgets3D/SphereWidget/behavior.js +35 -69
  552. package/Widgets/Widgets3D/SphereWidget/state.js +9 -5
  553. package/Widgets/Widgets3D/SphereWidget.js +34 -44
  554. package/Widgets/Widgets3D/SplineWidget/behavior.js +85 -120
  555. package/Widgets/Widgets3D/SplineWidget.js +43 -39
  556. package/Widgets/Widgets3D.js +15 -15
  557. package/Widgets/index.js +4 -4
  558. package/_virtual/rollup-plugin-worker-loader__module_Sources/Filters/General/PaintFilter/PaintFilter.worker.js +95 -207
  559. package/_virtual/rollup-plugin-worker-loader__module_Sources/Interaction/Widgets/PiecewiseGaussianWidget/ComputeHistogram.worker.js +0 -3
  560. package/favicon.js +5 -6
  561. package/index.d.ts +4 -2
  562. package/index.js +4 -3
  563. package/macros.js +4 -1931
  564. package/macros2.js +1684 -0
  565. package/package.json +6 -6
  566. package/vtk.js +18 -31
@@ -1,173 +1,174 @@
1
- import macro from '../../macros.js';
1
+ import { m as macro } from '../../macros2.js';
2
2
 
3
- var vtkErrorMacro = macro.vtkErrorMacro; // ----------------------------------------------------------------------------
3
+ const {
4
+ vtkErrorMacro
5
+ } = macro;
6
+
7
+ // ----------------------------------------------------------------------------
4
8
  // vtkCanvasView methods
5
9
  // ----------------------------------------------------------------------------
6
10
 
7
11
  function vtkCanvasView(publicAPI, model) {
8
12
  // Set our className
9
- model.classHierarchy.push('vtkCanvasView'); // Auto update style
13
+ model.classHierarchy.push('vtkCanvasView');
10
14
 
15
+ // Auto update style
11
16
  function updateWindow() {
12
17
  // Canvas size
13
18
  if (model._renderable) {
14
19
  model.canvas.setAttribute('width', model.size[0]);
15
20
  model.canvas.setAttribute('height', model.size[1]);
16
- } // ImageStream size
17
-
21
+ }
18
22
 
23
+ // ImageStream size
19
24
  if (model.viewStream) {
20
25
  // If same size that's a NoOp
21
26
  model.viewStream.setSize(model.size[0], model.size[1]);
22
- } // Offscreen ?
23
-
27
+ }
24
28
 
25
- model.canvas.style.display = model.useOffScreen ? 'none' : 'block'; // Cursor type
29
+ // Offscreen ?
30
+ model.canvas.style.display = model.useOffScreen ? 'none' : 'block';
26
31
 
32
+ // Cursor type
27
33
  if (model.el) {
28
34
  model.el.style.cursor = model.cursorVisibility ? model.cursor : 'none';
29
35
  }
30
36
  }
31
-
32
37
  publicAPI.onModified(updateWindow);
33
-
34
- publicAPI.setContainer = function (el) {
38
+ publicAPI.setContainer = el => {
35
39
  if (model.el && model.el !== el) {
36
40
  if (model.canvas.parentNode !== model.el) {
37
41
  vtkErrorMacro('Error: canvas parent node does not match container');
38
- } // Remove canvas from previous container
42
+ }
39
43
 
44
+ // Remove canvas from previous container
45
+ model.el.removeChild(model.canvas);
40
46
 
41
- model.el.removeChild(model.canvas); // If the renderer has previously added
47
+ // If the renderer has previously added
42
48
  // a background image, remove it from the DOM.
43
-
44
49
  if (model.el.contains(model.bgImage)) {
45
50
  model.el.removeChild(model.bgImage);
46
51
  }
47
52
  }
48
-
49
53
  if (model.el !== el) {
50
54
  model.el = el;
51
-
52
55
  if (model.el) {
53
56
  model.el.appendChild(model.canvas);
54
- } // If the renderer is set to use a background
55
- // image, attach it to the DOM.
56
-
57
+ }
57
58
 
59
+ // If the renderer is set to use a background
60
+ // image, attach it to the DOM.
58
61
  if (model.useBackgroundImage) {
59
62
  model.el.appendChild(model.bgImage);
60
- } // Trigger modified()
61
-
63
+ }
62
64
 
65
+ // Trigger modified()
63
66
  publicAPI.modified();
64
67
  }
65
68
  };
66
-
67
- publicAPI.setBackgroundImage = function (img) {
69
+ publicAPI.setBackgroundImage = img => {
68
70
  model.bgImage.src = img.src;
69
71
  };
72
+ publicAPI.setUseBackgroundImage = value => {
73
+ model.useBackgroundImage = value;
70
74
 
71
- publicAPI.setUseBackgroundImage = function (value) {
72
- model.useBackgroundImage = value; // Add or remove the background image from the
75
+ // Add or remove the background image from the
73
76
  // DOM as specified.
74
-
75
77
  if (model.useBackgroundImage && model.el && !model.el.contains(model.bgImage)) {
76
78
  model.el.appendChild(model.bgImage);
77
79
  } else if (!model.useBackgroundImage && model.el && model.el.contains(model.bgImage)) {
78
80
  model.el.removeChild(model.bgImage);
79
81
  }
80
82
  };
81
-
82
- publicAPI.setViewStream = function (stream) {
83
+ publicAPI.setViewStream = stream => {
83
84
  if (model.viewStream === stream) {
84
85
  return false;
85
86
  }
86
-
87
87
  if (model.subscription) {
88
88
  model.subscription.unsubscribe();
89
89
  model.subscription = null;
90
90
  }
91
-
92
91
  model.viewStream = stream;
93
-
94
92
  if (model.viewStream) {
95
93
  // Enable display of the background image
96
- publicAPI.setUseBackgroundImage(true); // Bind to remote stream
94
+ publicAPI.setUseBackgroundImage(true);
97
95
 
98
- model.subscription = model.viewStream.onImageReady(function (e) {
99
- return publicAPI.setBackgroundImage(e.image);
100
- });
96
+ // Bind to remote stream
97
+ model.subscription = model.viewStream.onImageReady(e => publicAPI.setBackgroundImage(e.image));
101
98
  model.viewStream.setSize(model.size[0], model.size[1]);
102
99
  model.viewStream.invalidateCache();
103
100
  model.viewStream.render();
104
101
  publicAPI.modified();
105
102
  }
106
-
107
103
  return true;
108
104
  };
105
+ publicAPI.delete = macro.chain(publicAPI.setViewStream, publicAPI.delete);
109
106
 
110
- publicAPI.delete = macro.chain(publicAPI.setViewStream, publicAPI.delete); // --------------------------------------------------------------------------
107
+ // --------------------------------------------------------------------------
111
108
  // Make us look like a View (i.e.: vtkOpenGLRenderWindow)
112
109
  // --------------------------------------------------------------------------
113
-
114
110
  model._renderable = publicAPI;
115
111
  model._renderers = [publicAPI];
112
+ publicAPI.traverseAllPasses = () => {};
113
+ publicAPI.isInViewport = () => true;
114
+ publicAPI.getInteractive = () => true;
115
+ }
116
116
 
117
- publicAPI.traverseAllPasses = function () {};
118
-
119
- publicAPI.isInViewport = function () {
120
- return true;
121
- };
122
-
123
- publicAPI.getInteractive = function () {
124
- return true;
125
- };
126
- } // ----------------------------------------------------------------------------
117
+ // ----------------------------------------------------------------------------
127
118
  // Object factory
128
119
  // ----------------------------------------------------------------------------
129
120
 
130
-
131
- var DEFAULT_VALUES = {
121
+ const DEFAULT_VALUES = {
132
122
  canvas: null,
133
123
  size: [300, 300],
134
124
  cursorVisibility: true,
135
125
  cursor: 'pointer',
136
126
  useOffScreen: false,
137
127
  useBackgroundImage: false
138
- }; // ----------------------------------------------------------------------------
128
+ };
129
+
130
+ // ----------------------------------------------------------------------------
139
131
 
140
132
  function extend(publicAPI, model) {
141
- var initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
142
- Object.assign(model, DEFAULT_VALUES, initialValues); // Create internal instances
133
+ let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
134
+ Object.assign(model, DEFAULT_VALUES, initialValues);
143
135
 
136
+ // Create internal instances
144
137
  model.canvas = document.createElement('canvas');
145
- model.canvas.style.width = '100%'; // Create internal bgImage
138
+ model.canvas.style.width = '100%';
146
139
 
140
+ // Create internal bgImage
147
141
  model.bgImage = new Image();
148
142
  model.bgImage.style.position = 'absolute';
149
143
  model.bgImage.style.left = '0';
150
144
  model.bgImage.style.top = '0';
151
145
  model.bgImage.style.width = '100%';
152
146
  model.bgImage.style.height = '100%';
153
- model.bgImage.style.zIndex = '-1'; // Inheritance
147
+ model.bgImage.style.zIndex = '-1';
154
148
 
155
- macro.obj(publicAPI, model, initialValues); // Build VTK API
149
+ // Inheritance
150
+ macro.obj(publicAPI, model, initialValues);
156
151
 
152
+ // Build VTK API
157
153
  macro.get(publicAPI, model, ['useBackgroundImage', '_renderable']);
158
154
  macro.setGet(publicAPI, model, ['canvas', 'cursor', 'useOffScreen', 'interactor']);
159
155
  macro.setGetArray(publicAPI, model, ['size'], 2);
160
156
  macro.getArray(publicAPI, model, ['_renderers']);
161
- macro.moveToProtected(publicAPI, model, ['renderable', 'renderers']); // Object methods
157
+ macro.moveToProtected(publicAPI, model, ['renderable', 'renderers']);
162
158
 
159
+ // Object methods
163
160
  vtkCanvasView(publicAPI, model);
164
- } // ----------------------------------------------------------------------------
161
+ }
162
+
163
+ // ----------------------------------------------------------------------------
165
164
 
166
- var newInstance = macro.newInstance(extend, 'vtkCanvasView'); // ----------------------------------------------------------------------------
165
+ const newInstance = macro.newInstance(extend, 'vtkCanvasView');
166
+
167
+ // ----------------------------------------------------------------------------
167
168
 
168
169
  var vtkCanvasView$1 = {
169
- newInstance: newInstance,
170
- extend: extend
170
+ newInstance,
171
+ extend
171
172
  };
172
173
 
173
174
  export { vtkCanvasView$1 as default, extend, newInstance };
@@ -1,5 +1,4 @@
1
- import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
2
- import macro from '../../macros.js';
1
+ import { m as macro } from '../../macros2.js';
3
2
  import vtkRenderer from '../Core/Renderer.js';
4
3
  import vtkRenderWindow from '../Core/RenderWindow.js';
5
4
  import vtkRenderWindowInteractor from '../Core/RenderWindowInteractor.js';
@@ -13,8 +12,9 @@ import '../Core/Mapper.js';
13
12
  import '../OpenGL/RenderWindow.js';
14
13
  import '../WebGPU/RenderWindow.js';
15
14
 
16
- var userParams = vtkURLExtract.extractURLParameters();
17
- var STYLE_CONTAINER = {
15
+ // Process arguments from URL
16
+ const userParams = vtkURLExtract.extractURLParameters();
17
+ const STYLE_CONTAINER = {
18
18
  margin: '0',
19
19
  padding: '0',
20
20
  position: 'absolute',
@@ -24,7 +24,7 @@ var STYLE_CONTAINER = {
24
24
  height: '100%',
25
25
  overflow: 'hidden'
26
26
  };
27
- var STYLE_CONTROL_PANEL = {
27
+ const STYLE_CONTROL_PANEL = {
28
28
  position: 'absolute',
29
29
  left: '25px',
30
30
  top: '25px',
@@ -39,63 +39,60 @@ var STYLE_CONTROL_PANEL = {
39
39
  maxHeight: 'calc(100% - 60px)',
40
40
  overflow: 'auto'
41
41
  };
42
-
43
42
  function applyStyle(el, style) {
44
- Object.keys(style).forEach(function (key) {
43
+ Object.keys(style).forEach(key => {
45
44
  el.style[key] = style[key];
46
45
  });
47
46
  }
48
-
49
47
  function vtkFullScreenRenderWindow(publicAPI, model) {
50
48
  model.classHierarchy.push('vtkFullScreenRenderWindow');
51
- var body = document.querySelector('body'); // Full screen DOM handler
49
+ const body = document.querySelector('body');
52
50
 
51
+ // Full screen DOM handler
53
52
  if (!model.rootContainer) {
54
53
  model.rootContainer = body;
55
54
  }
56
-
57
55
  if (!model.container) {
58
56
  model.container = document.createElement('div');
59
57
  applyStyle(model.container, model.containerStyle || STYLE_CONTAINER);
60
58
  model.rootContainer.appendChild(model.container);
61
- } // apply 100% to html and body for fullscreen
62
-
59
+ }
63
60
 
61
+ // apply 100% to html and body for fullscreen
64
62
  if (model.rootContainer === body) {
65
63
  document.documentElement.style.height = '100%';
66
64
  body.style.height = '100%';
67
65
  body.style.padding = '0';
68
66
  body.style.margin = '0';
69
- } // VTK renderWindow/renderer
70
-
67
+ }
71
68
 
69
+ // VTK renderWindow/renderer
72
70
  model.renderWindow = vtkRenderWindow.newInstance();
73
71
  model.renderer = vtkRenderer.newInstance();
74
- model.renderWindow.addRenderer(model.renderer); // apiSpecificRenderWindow
72
+ model.renderWindow.addRenderer(model.renderer);
75
73
 
74
+ // apiSpecificRenderWindow
76
75
  model.apiSpecificRenderWindow = model.renderWindow.newAPISpecificView(userParams.viewAPI);
77
76
  model.apiSpecificRenderWindow.setContainer(model.container);
78
- model.renderWindow.addView(model.apiSpecificRenderWindow); // Interactor
77
+ model.renderWindow.addView(model.apiSpecificRenderWindow);
79
78
 
79
+ // Interactor
80
80
  model.interactor = vtkRenderWindowInteractor.newInstance();
81
81
  model.interactor.setInteractorStyle(vtkInteractorStyleTrackballCamera.newInstance());
82
82
  model.interactor.setView(model.apiSpecificRenderWindow);
83
83
  model.interactor.initialize();
84
- model.interactor.bindEvents(model.container); // Expose background
84
+ model.interactor.bindEvents(model.container);
85
85
 
86
+ // Expose background
86
87
  publicAPI.setBackground = model.renderer.setBackground;
87
-
88
- publicAPI.removeController = function () {
89
- var el = model.controlContainer;
90
-
88
+ publicAPI.removeController = () => {
89
+ const el = model.controlContainer;
91
90
  if (el) {
92
91
  el.parentNode.removeChild(el);
93
92
  }
94
93
  };
95
-
96
- publicAPI.setControllerVisibility = function (visible) {
94
+ publicAPI.setControllerVisibility = visible => {
97
95
  model.controllerVisibility = visible;
98
-
99
96
  if (model.controlContainer) {
100
97
  if (visible) {
101
98
  model.controlContainer.style.display = 'block';
@@ -104,93 +101,94 @@ function vtkFullScreenRenderWindow(publicAPI, model) {
104
101
  }
105
102
  }
106
103
  };
107
-
108
- publicAPI.toggleControllerVisibility = function () {
104
+ publicAPI.toggleControllerVisibility = () => {
109
105
  publicAPI.setControllerVisibility(!model.controllerVisibility);
110
106
  };
111
-
112
- publicAPI.addController = function (html) {
107
+ publicAPI.addController = html => {
113
108
  model.controlContainer = document.createElement('div');
114
109
  applyStyle(model.controlContainer, model.controlPanelStyle || STYLE_CONTROL_PANEL);
115
110
  model.rootContainer.appendChild(model.controlContainer);
116
111
  model.controlContainer.innerHTML = html;
117
112
  publicAPI.setControllerVisibility(model.controllerVisibility);
118
- model.rootContainer.addEventListener('keypress', function (e) {
113
+ model.rootContainer.addEventListener('keypress', e => {
119
114
  if (String.fromCharCode(e.charCode) === 'c') {
120
115
  publicAPI.toggleControllerVisibility();
121
116
  }
122
117
  });
123
- }; // Update BG color
124
-
118
+ };
125
119
 
126
- publicAPI.setBackground.apply(publicAPI, _toConsumableArray(model.background)); // Representation API
120
+ // Update BG color
121
+ publicAPI.setBackground(...model.background);
127
122
 
128
- publicAPI.addRepresentation = function (representation) {
129
- representation.getActors().forEach(function (actor) {
123
+ // Representation API
124
+ publicAPI.addRepresentation = representation => {
125
+ representation.getActors().forEach(actor => {
130
126
  model.renderer.addActor(actor);
131
127
  });
132
128
  };
129
+ publicAPI.removeRepresentation = representation => {
130
+ representation.getActors().forEach(actor => model.renderer.removeActor(actor));
131
+ };
133
132
 
134
- publicAPI.removeRepresentation = function (representation) {
135
- representation.getActors().forEach(function (actor) {
136
- return model.renderer.removeActor(actor);
137
- });
138
- }; // Properly release GL context
139
-
140
-
141
- publicAPI.delete = macro.chain(publicAPI.setContainer, model.apiSpecificRenderWindow.delete, publicAPI.delete); // Handle window resize
133
+ // Properly release GL context
134
+ publicAPI.delete = macro.chain(publicAPI.setContainer, model.apiSpecificRenderWindow.delete, publicAPI.delete);
142
135
 
143
- publicAPI.resize = function () {
144
- var dims = model.container.getBoundingClientRect();
145
- var devicePixelRatio = window.devicePixelRatio || 1;
136
+ // Handle window resize
137
+ publicAPI.resize = () => {
138
+ const dims = model.container.getBoundingClientRect();
139
+ const devicePixelRatio = window.devicePixelRatio || 1;
146
140
  model.apiSpecificRenderWindow.setSize(Math.floor(dims.width * devicePixelRatio), Math.floor(dims.height * devicePixelRatio));
147
-
148
141
  if (model.resizeCallback) {
149
142
  model.resizeCallback(dims);
150
143
  }
151
-
152
144
  model.renderWindow.render();
153
145
  };
154
-
155
- publicAPI.setResizeCallback = function (cb) {
146
+ publicAPI.setResizeCallback = cb => {
156
147
  model.resizeCallback = cb;
157
148
  publicAPI.resize();
158
149
  };
159
-
160
150
  if (model.listenWindowResize) {
161
151
  window.addEventListener('resize', publicAPI.resize);
162
152
  }
163
-
164
153
  publicAPI.resize();
165
- } // ----------------------------------------------------------------------------
154
+ }
155
+
156
+ // ----------------------------------------------------------------------------
166
157
  // Object factory
167
158
  // ----------------------------------------------------------------------------
168
159
 
169
-
170
- var DEFAULT_VALUES = {
160
+ const DEFAULT_VALUES = {
171
161
  background: [0.32, 0.34, 0.43],
172
162
  containerStyle: null,
173
163
  controlPanelStyle: null,
174
164
  listenWindowResize: true,
175
165
  resizeCallback: null,
176
166
  controllerVisibility: true
177
- }; // ----------------------------------------------------------------------------
167
+ };
168
+
169
+ // ----------------------------------------------------------------------------
178
170
 
179
171
  function extend(publicAPI, model) {
180
- var initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
181
- Object.assign(model, DEFAULT_VALUES, initialValues); // Object methods
172
+ let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
173
+ Object.assign(model, DEFAULT_VALUES, initialValues);
182
174
 
175
+ // Object methods
183
176
  macro.obj(publicAPI, model);
184
- macro.get(publicAPI, model, ['renderWindow', 'renderer', 'apiSpecificRenderWindow', 'interactor', 'rootContainer', 'container', 'controlContainer']); // Object specific methods
177
+ macro.get(publicAPI, model, ['renderWindow', 'renderer', 'apiSpecificRenderWindow', 'interactor', 'rootContainer', 'container', 'controlContainer']);
185
178
 
179
+ // Object specific methods
186
180
  vtkFullScreenRenderWindow(publicAPI, model);
187
- } // ----------------------------------------------------------------------------
181
+ }
188
182
 
189
- var newInstance = macro.newInstance(extend); // ----------------------------------------------------------------------------
183
+ // ----------------------------------------------------------------------------
184
+
185
+ const newInstance = macro.newInstance(extend);
186
+
187
+ // ----------------------------------------------------------------------------
190
188
 
191
189
  var vtkFullScreenRenderWindow$1 = {
192
- newInstance: newInstance,
193
- extend: extend
190
+ newInstance,
191
+ extend
194
192
  };
195
193
 
196
194
  export { vtkFullScreenRenderWindow$1 as default, extend, newInstance };
@@ -1,5 +1,4 @@
1
- import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
2
- import macro from '../../macros.js';
1
+ import { m as macro } from '../../macros2.js';
3
2
  import vtkRenderWindow$1 from '../OpenGL/RenderWindow.js';
4
3
  import vtkRenderer from '../Core/Renderer.js';
5
4
  import vtkRenderWindow from '../Core/RenderWindow.js';
@@ -13,90 +12,102 @@ import '../Core/Mapper.js';
13
12
 
14
13
  function vtkGenericRenderWindow(publicAPI, model) {
15
14
  // Capture resize trigger method to remove from publicAPI
16
- var invokeResize = publicAPI.invokeResize;
17
- delete publicAPI.invokeResize; // VTK renderWindow/renderer
15
+ const invokeResize = publicAPI.invokeResize;
16
+ delete publicAPI.invokeResize;
18
17
 
18
+ // VTK renderWindow/renderer
19
19
  model.renderWindow = vtkRenderWindow.newInstance();
20
20
  model.renderer = vtkRenderer.newInstance();
21
- model.renderWindow.addRenderer(model.renderer); // OpenGLRenderWindow
21
+ model.renderWindow.addRenderer(model.renderer);
22
22
 
23
+ // OpenGLRenderWindow
23
24
  model._openGLRenderWindow = vtkRenderWindow$1.newInstance();
24
- model.renderWindow.addView(model._openGLRenderWindow); // Interactor
25
+ model.renderWindow.addView(model._openGLRenderWindow);
25
26
 
27
+ // Interactor
26
28
  model.interactor = vtkRenderWindowInteractor.newInstance();
27
29
  model.interactor.setInteractorStyle(vtkInteractorStyleTrackballCamera.newInstance());
28
30
  model.interactor.setView(model._openGLRenderWindow);
29
- model.interactor.initialize(); // Expose background
31
+ model.interactor.initialize();
30
32
 
31
- publicAPI.setBackground = model.renderer.setBackground; // Update BG color
33
+ // Expose background
34
+ publicAPI.setBackground = model.renderer.setBackground;
32
35
 
33
- publicAPI.setBackground.apply(publicAPI, _toConsumableArray(model.background)); // Handle window resize
36
+ // Update BG color
37
+ publicAPI.setBackground(...model.background);
34
38
 
35
- publicAPI.resize = function () {
39
+ // Handle window resize
40
+ publicAPI.resize = () => {
36
41
  if (model.container) {
37
- var dims = model.container.getBoundingClientRect();
38
- var devicePixelRatio = window.devicePixelRatio || 1;
39
-
42
+ const dims = model.container.getBoundingClientRect();
43
+ const devicePixelRatio = window.devicePixelRatio || 1;
40
44
  model._openGLRenderWindow.setSize(Math.floor(dims.width * devicePixelRatio), Math.floor(dims.height * devicePixelRatio));
41
-
42
45
  invokeResize();
43
46
  model.renderWindow.render();
44
47
  }
45
- }; // Handle DOM container relocation
46
-
48
+ };
47
49
 
48
- publicAPI.setContainer = function (el) {
50
+ // Handle DOM container relocation
51
+ publicAPI.setContainer = el => {
49
52
  if (model.container) {
50
53
  model.interactor.unbindEvents(model.container);
51
- } // Switch container
52
-
54
+ }
53
55
 
56
+ // Switch container
54
57
  model.container = el;
58
+ model._openGLRenderWindow.setContainer(model.container);
55
59
 
56
- model._openGLRenderWindow.setContainer(model.container); // Bind to new container
57
-
58
-
60
+ // Bind to new container
59
61
  if (model.container) {
60
62
  model.interactor.bindEvents(model.container);
61
63
  }
62
- }; // Properly release GL context
63
-
64
+ };
64
65
 
65
- publicAPI.delete = macro.chain(publicAPI.setContainer, model._openGLRenderWindow.delete, publicAPI.delete); // Handle size
66
+ // Properly release GL context
67
+ publicAPI.delete = macro.chain(publicAPI.setContainer, model._openGLRenderWindow.delete, publicAPI.delete);
66
68
 
69
+ // Handle size
67
70
  if (model.listenWindowResize) {
68
71
  window.addEventListener('resize', publicAPI.resize);
69
72
  }
70
-
71
73
  publicAPI.resize();
72
- } // ----------------------------------------------------------------------------
74
+ }
75
+
76
+ // ----------------------------------------------------------------------------
73
77
  // Object factory
74
78
  // ----------------------------------------------------------------------------
75
79
 
76
-
77
- var DEFAULT_VALUES = {
80
+ const DEFAULT_VALUES = {
78
81
  background: [0.32, 0.34, 0.43],
79
82
  listenWindowResize: true,
80
83
  container: null
81
- }; // ----------------------------------------------------------------------------
84
+ };
85
+
86
+ // ----------------------------------------------------------------------------
82
87
 
83
88
  function extend(publicAPI, model) {
84
- var initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
85
- Object.assign(model, DEFAULT_VALUES, initialValues); // Object methods
89
+ let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
90
+ Object.assign(model, DEFAULT_VALUES, initialValues);
86
91
 
92
+ // Object methods
87
93
  macro.obj(publicAPI, model);
88
94
  macro.get(publicAPI, model, ['renderWindow', 'renderer', '_openGLRenderWindow', 'interactor', 'container']);
89
95
  macro.moveToProtected(publicAPI, model, ['openGLRenderWindow']);
90
- macro.event(publicAPI, model, 'resize'); // Object specific methods
96
+ macro.event(publicAPI, model, 'resize');
91
97
 
98
+ // Object specific methods
92
99
  vtkGenericRenderWindow(publicAPI, model);
93
- } // ----------------------------------------------------------------------------
100
+ }
94
101
 
95
- var newInstance = macro.newInstance(extend); // ----------------------------------------------------------------------------
102
+ // ----------------------------------------------------------------------------
103
+
104
+ const newInstance = macro.newInstance(extend);
105
+
106
+ // ----------------------------------------------------------------------------
96
107
 
97
108
  var vtkGenericRenderWindow$1 = {
98
- newInstance: newInstance,
99
- extend: extend
109
+ newInstance,
110
+ extend
100
111
  };
101
112
 
102
113
  export { vtkGenericRenderWindow$1 as default, extend, newInstance };