@kitware/vtk.js 28.10.2 → 28.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (565) hide show
  1. package/Common/Core/Base64.js +53 -82
  2. package/Common/Core/CellArray.js +52 -60
  3. package/Common/Core/ClassHierarchy.js +8 -36
  4. package/Common/Core/DataArray/Constants.js +6 -6
  5. package/Common/Core/DataArray.js +185 -270
  6. package/Common/Core/Endian.js +14 -17
  7. package/Common/Core/HalfFloat.js +17 -34
  8. package/Common/Core/ImageHelper.js +17 -25
  9. package/Common/Core/LookupTable.js +131 -144
  10. package/Common/Core/Math/Constants.js +8 -8
  11. package/Common/Core/Math/index.js +754 -942
  12. package/Common/Core/Math.js +2 -4
  13. package/Common/Core/MatrixBuilder.js +99 -151
  14. package/Common/Core/Points.js +43 -43
  15. package/Common/Core/PriorityQueue.js +30 -28
  16. package/Common/Core/ProgressHandler.js +31 -32
  17. package/Common/Core/ScalarsToColors/Constants.js +4 -4
  18. package/Common/Core/ScalarsToColors.js +196 -253
  19. package/Common/Core/StringArray.js +48 -73
  20. package/Common/Core/URLExtract.js +10 -29
  21. package/Common/Core/VariantArray.js +48 -73
  22. package/Common/Core.js +11 -11
  23. package/Common/DataModel/AbstractPointLocator.js +19 -17
  24. package/Common/DataModel/BoundingBox.js +322 -490
  25. package/Common/DataModel/Box.js +46 -63
  26. package/Common/DataModel/CardinalSpline1D.js +92 -102
  27. package/Common/DataModel/Cell.js +41 -61
  28. package/Common/DataModel/CellLinks.js +91 -127
  29. package/Common/DataModel/CellTypes/Constants.js +7 -6
  30. package/Common/DataModel/CellTypes.js +55 -74
  31. package/Common/DataModel/Collection.js +45 -61
  32. package/Common/DataModel/Cone.js +28 -20
  33. package/Common/DataModel/Cylinder.js +41 -35
  34. package/Common/DataModel/DataSet/Constants.js +11 -5
  35. package/Common/DataModel/DataSet.js +37 -25
  36. package/Common/DataModel/DataSetAttributes/Constants.js +18 -18
  37. package/Common/DataModel/DataSetAttributes/FieldData.js +103 -194
  38. package/Common/DataModel/DataSetAttributes.js +96 -138
  39. package/Common/DataModel/EdgeLocator.js +45 -70
  40. package/Common/DataModel/ITKHelper.js +67 -137
  41. package/Common/DataModel/ImageData.js +115 -172
  42. package/Common/DataModel/ImplicitBoolean/Constants.js +2 -2
  43. package/Common/DataModel/ImplicitBoolean.js +66 -96
  44. package/Common/DataModel/IncrementalOctreeNode.js +201 -231
  45. package/Common/DataModel/IncrementalOctreePointLocator.js +160 -198
  46. package/Common/DataModel/KochanekSpline1D.js +78 -81
  47. package/Common/DataModel/Line/Constants.js +2 -2
  48. package/Common/DataModel/Line.js +82 -105
  49. package/Common/DataModel/Locator.js +17 -10
  50. package/Common/DataModel/Molecule.js +26 -17
  51. package/Common/DataModel/PiecewiseFunction.js +218 -239
  52. package/Common/DataModel/Plane.js +90 -113
  53. package/Common/DataModel/PointSet.js +30 -26
  54. package/Common/DataModel/PolyData/Constants.js +2 -2
  55. package/Common/DataModel/PolyData.js +95 -120
  56. package/Common/DataModel/PolyLine.js +44 -61
  57. package/Common/DataModel/Polygon/Constants.js +4 -4
  58. package/Common/DataModel/Polygon.js +128 -169
  59. package/Common/DataModel/Quad/Constants.js +2 -2
  60. package/Common/DataModel/Quad.js +61 -100
  61. package/Common/DataModel/SelectionNode/Constants.js +5 -4
  62. package/Common/DataModel/SelectionNode.js +25 -21
  63. package/Common/DataModel/Sphere.js +40 -35
  64. package/Common/DataModel/Spline1D/Constants.js +3 -2
  65. package/Common/DataModel/Spline1D.js +34 -18
  66. package/Common/DataModel/Spline3D/Constants.js +2 -2
  67. package/Common/DataModel/Spline3D.js +46 -41
  68. package/Common/DataModel/StructuredData/Constants.js +2 -2
  69. package/Common/DataModel/StructuredData.js +9 -20
  70. package/Common/DataModel/Triangle.js +207 -250
  71. package/Common/DataModel.js +19 -19
  72. package/Common/System/MobileVR.js +56 -61
  73. package/Common/System/TimerLog.js +1 -1
  74. package/Common/System.js +2 -2
  75. package/Common/Transform/LandmarkTransform/Constants.js +2 -2
  76. package/Common/Transform/LandmarkTransform.js +133 -117
  77. package/Common/Transform/Transform.js +42 -57
  78. package/Common/Transform.js +2 -2
  79. package/Common/index.js +4 -4
  80. package/Filters/Core/Cutter.js +134 -146
  81. package/Filters/Core/PolyDataNormals.js +44 -50
  82. package/Filters/Core.js +2 -2
  83. package/Filters/Cornerstone/ImageDataToCornerstoneImage.js +45 -33
  84. package/Filters/Cornerstone.js +1 -1
  85. package/Filters/General/AppendPolyData.js +84 -100
  86. package/Filters/General/Calculator.js +95 -163
  87. package/Filters/General/ClipClosedSurface/Constants.js +2 -2
  88. package/Filters/General/ClipClosedSurface.js +341 -416
  89. package/Filters/General/ClosedPolyLineToSurfaceFilter.js +141 -156
  90. package/Filters/General/ContourTriangulator/Constants.js +2 -2
  91. package/Filters/General/ContourTriangulator/helper.js +684 -812
  92. package/Filters/General/ContourTriangulator.js +92 -89
  93. package/Filters/General/ImageCropFilter.js +77 -78
  94. package/Filters/General/ImageDataOutlineFilter.js +42 -36
  95. package/Filters/General/ImageMarchingCubes/caseTable.js +9 -521
  96. package/Filters/General/ImageMarchingCubes.js +99 -112
  97. package/Filters/General/ImageMarchingSquares/caseTable.js +9 -41
  98. package/Filters/General/ImageMarchingSquares.js +93 -118
  99. package/Filters/General/ImageOutlineFilter.js +53 -54
  100. package/Filters/General/ImageSliceFilter.js +39 -30
  101. package/Filters/General/ImageStreamline.js +107 -124
  102. package/Filters/General/LineFilter.js +26 -15
  103. package/Filters/General/MoleculeToRepresentation.js +136 -149
  104. package/Filters/General/OBBTree/OBBNode.js +36 -34
  105. package/Filters/General/OBBTree/helper.js +19 -24
  106. package/Filters/General/OBBTree.js +396 -488
  107. package/Filters/General/OutlineFilter.js +52 -34
  108. package/Filters/General/PaintFilter/PaintFilter.worker.js +93 -130
  109. package/Filters/General/PaintFilter.js +150 -162
  110. package/Filters/General/ScalarToRGBA.js +38 -33
  111. package/Filters/General/TriangleFilter.js +65 -62
  112. package/Filters/General/TubeFilter/Constants.js +4 -4
  113. package/Filters/General/TubeFilter.js +376 -496
  114. package/Filters/General/WarpScalar.js +58 -60
  115. package/Filters/General/WindowedSincPolyDataFilter.js +258 -330
  116. package/Filters/General.js +21 -21
  117. package/Filters/Sources/Arrow2DSource/Constants.js +2 -2
  118. package/Filters/Sources/Arrow2DSource.js +56 -56
  119. package/Filters/Sources/ArrowSource.js +39 -29
  120. package/Filters/Sources/CircleSource.js +43 -43
  121. package/Filters/Sources/ConcentricCylinderSource.js +151 -174
  122. package/Filters/Sources/ConeSource.js +51 -42
  123. package/Filters/Sources/CubeSource.js +75 -96
  124. package/Filters/Sources/Cursor3D.js +94 -109
  125. package/Filters/Sources/CylinderSource.js +90 -90
  126. package/Filters/Sources/ImageGridSource.js +43 -43
  127. package/Filters/Sources/LineSource.js +49 -39
  128. package/Filters/Sources/PlaneSource.js +97 -104
  129. package/Filters/Sources/PointSource.js +46 -37
  130. package/Filters/Sources/RTAnalyticSource.js +50 -48
  131. package/Filters/Sources/SLICSource.js +63 -73
  132. package/Filters/Sources/SphereSource.js +88 -78
  133. package/Filters/Sources/ViewFinderSource.js +26 -23
  134. package/Filters/Sources.js +14 -14
  135. package/Filters/Texture/TextureMapToPlane.js +95 -97
  136. package/Filters/Texture/TextureMapToSphere.js +46 -54
  137. package/Filters/Texture.js +2 -2
  138. package/Filters/index.js +5 -5
  139. package/IO/Core/BinaryHelper.js +12 -18
  140. package/IO/Core/DataAccessHelper/HtmlDataAccessHelper.js +43 -59
  141. package/IO/Core/DataAccessHelper/HttpDataAccessHelper.js +76 -113
  142. package/IO/Core/DataAccessHelper/JSZipDataAccessHelper.js +62 -112
  143. package/IO/Core/DataAccessHelper/LiteHttpDataAccessHelper.js +76 -113
  144. package/IO/Core/DataAccessHelper.js +6 -6
  145. package/IO/Core/HttpDataSetReader.js +136 -139
  146. package/IO/Core/HttpDataSetSeriesReader.js +64 -75
  147. package/IO/Core/HttpSceneLoader.js +130 -179
  148. package/IO/Core/ImageStream/DefaultProtocol.js +29 -43
  149. package/IO/Core/ImageStream/ViewStream.js +100 -103
  150. package/IO/Core/ImageStream.js +62 -54
  151. package/IO/Core/ResourceLoader.js +10 -9
  152. package/IO/Core/Serializer/ArraySerializer.js +40 -40
  153. package/IO/Core/Serializer/FieldDataSerializer.js +18 -28
  154. package/IO/Core/Serializer/ImageDataSerializer.js +22 -23
  155. package/IO/Core/Serializer/PolyDataSerializer.js +17 -21
  156. package/IO/Core/Serializer.js +6 -13
  157. package/IO/Core/WSLinkClient.js +90 -76
  158. package/IO/Core/ZipMultiDataSetReader.js +46 -44
  159. package/IO/Core/ZipMultiDataSetWriter.js +43 -34
  160. package/IO/Core.js +7 -7
  161. package/IO/Geometry/DracoReader.js +118 -121
  162. package/IO/Geometry/PLYReader.js +163 -223
  163. package/IO/Geometry/PLYWriter/Constants.js +5 -5
  164. package/IO/Geometry/PLYWriter.js +139 -154
  165. package/IO/Geometry/STLReader.js +123 -146
  166. package/IO/Geometry/STLWriter/Constants.js +2 -2
  167. package/IO/Geometry/STLWriter.js +83 -82
  168. package/IO/Geometry.js +5 -5
  169. package/IO/Legacy/LegacyAsciiParser.js +78 -139
  170. package/IO/Legacy/PolyDataReader.js +48 -36
  171. package/IO/Legacy.js +2 -2
  172. package/IO/Misc/ElevationReader.js +67 -60
  173. package/IO/Misc/HttpDataSetLODsLoader.js +41 -38
  174. package/IO/Misc/ITKImageReader.js +58 -45
  175. package/IO/Misc/ITKPolyDataReader.js +50 -38
  176. package/IO/Misc/JSONNucleoReader.js +49 -42
  177. package/IO/Misc/JSONReader.js +38 -33
  178. package/IO/Misc/MTLReader.js +74 -119
  179. package/IO/Misc/OBJReader.js +153 -206
  180. package/IO/Misc/PDBReader.js +70 -68
  181. package/IO/Misc/SkyboxReader.js +77 -82
  182. package/IO/Misc.js +9 -9
  183. package/IO/XML/XMLImageDataReader.js +36 -38
  184. package/IO/XML/XMLImageDataWriter.js +28 -21
  185. package/IO/XML/XMLPolyDataReader.js +49 -46
  186. package/IO/XML/XMLPolyDataWriter.js +43 -42
  187. package/IO/XML/XMLReader.js +262 -304
  188. package/IO/XML/XMLWriter/Constants.js +3 -3
  189. package/IO/XML/XMLWriter.js +70 -84
  190. package/IO/XML.js +6 -6
  191. package/IO/index.js +5 -5
  192. package/Imaging/Core/AbstractImageInterpolator/Constants.js +4 -4
  193. package/Imaging/Core/AbstractImageInterpolator/InterpolationInfo.js +30 -27
  194. package/Imaging/Core/AbstractImageInterpolator.js +74 -87
  195. package/Imaging/Core/ImageInterpolator.js +201 -252
  196. package/Imaging/Core/ImagePointDataIterator.js +96 -122
  197. package/Imaging/Core/ImageReslice/Constants.js +2 -2
  198. package/Imaging/Core/ImageReslice.js +327 -464
  199. package/Imaging/Core.js +4 -4
  200. package/Imaging/Hybrid/SampleFunction.js +58 -51
  201. package/Imaging/Hybrid.js +1 -1
  202. package/Imaging/index.js +2 -2
  203. package/Interaction/Animations/TimeStepBasedAnimationHandler.js +39 -54
  204. package/Interaction/Manipulators/CompositeCameraManipulator.js +22 -13
  205. package/Interaction/Manipulators/CompositeGestureManipulator.js +31 -43
  206. package/Interaction/Manipulators/CompositeKeyboardManipulator.js +15 -11
  207. package/Interaction/Manipulators/CompositeMouseManipulator.js +27 -33
  208. package/Interaction/Manipulators/CompositeVRManipulator.js +22 -15
  209. package/Interaction/Manipulators/GestureCameraManipulator.js +54 -36
  210. package/Interaction/Manipulators/KeyboardCameraManipulator.js +95 -97
  211. package/Interaction/Manipulators/MouseBoxSelectorManipulator.js +70 -89
  212. package/Interaction/Manipulators/MouseCameraAxisRotateManipulator.js +67 -54
  213. package/Interaction/Manipulators/MouseCameraSliceManipulator.js +40 -38
  214. package/Interaction/Manipulators/MouseCameraTrackballFirstPersonManipulator.js +83 -68
  215. package/Interaction/Manipulators/MouseCameraTrackballMultiRotateManipulator.js +32 -28
  216. package/Interaction/Manipulators/MouseCameraTrackballPanManipulator.js +47 -40
  217. package/Interaction/Manipulators/MouseCameraTrackballRollManipulator.js +55 -43
  218. package/Interaction/Manipulators/MouseCameraTrackballRotateManipulator.js +56 -46
  219. package/Interaction/Manipulators/MouseCameraTrackballZoomManipulator.js +41 -46
  220. package/Interaction/Manipulators/MouseCameraTrackballZoomToMouseManipulator.js +29 -27
  221. package/Interaction/Manipulators/MouseCameraUnicamManipulator.js +123 -146
  222. package/Interaction/Manipulators/MouseCameraUnicamRotateManipulator.js +144 -166
  223. package/Interaction/Manipulators/MouseRangeManipulator.js +127 -132
  224. package/Interaction/Manipulators/VRButtonPanManipulator.js +33 -23
  225. package/Interaction/Manipulators.js +21 -21
  226. package/Interaction/Misc/DeviceOrientationToCamera.js +25 -47
  227. package/Interaction/Misc.js +1 -1
  228. package/Interaction/Style/InteractorStyleImage.js +101 -121
  229. package/Interaction/Style/InteractorStyleMPRSlice.js +111 -128
  230. package/Interaction/Style/InteractorStyleManipulator/Presets.js +9 -17
  231. package/Interaction/Style/InteractorStyleManipulator.js +254 -329
  232. package/Interaction/Style/InteractorStyleRemoteMouse.js +195 -180
  233. package/Interaction/Style/InteractorStyleTrackballCamera.js +154 -157
  234. package/Interaction/Style/InteractorStyleUnicam.js +30 -38
  235. package/Interaction/Style.js +5 -5
  236. package/Interaction/UI/CornerAnnotation/CornerAnnotation.module.css.js +1 -1
  237. package/Interaction/UI/CornerAnnotation.js +65 -48
  238. package/Interaction/UI/FPSMonitor.js +104 -105
  239. package/Interaction/UI/Icons.js +1 -1
  240. package/Interaction/UI/Slider/Constants.js +2 -2
  241. package/Interaction/UI/Slider.js +78 -95
  242. package/Interaction/UI/VolumeController.js +104 -97
  243. package/Interaction/UI.js +5 -5
  244. package/Interaction/Widgets/OrientationMarkerWidget/Constants.js +2 -2
  245. package/Interaction/Widgets/OrientationMarkerWidget.js +90 -135
  246. package/Interaction/Widgets/PiecewiseGaussianWidget/ComputeHistogram.worker.js +0 -3
  247. package/Interaction/Widgets/PiecewiseGaussianWidget.js +381 -498
  248. package/Interaction/Widgets.js +2 -2
  249. package/Interaction/index.js +5 -5
  250. package/Proxy/Animation/AbstractAnimationProxy.js +22 -15
  251. package/Proxy/Animation/AnimationProxyManager.js +43 -51
  252. package/Proxy/Animation/TimeStepBasedAnimationHandlerProxy.js +26 -19
  253. package/Proxy/Core/AbstractRepresentationProxy.js +97 -151
  254. package/Proxy/Core/LookupTableProxy/Constants.js +4 -4
  255. package/Proxy/Core/LookupTableProxy.js +49 -52
  256. package/Proxy/Core/PiecewiseFunctionProxy/Constants.js +4 -4
  257. package/Proxy/Core/PiecewiseFunctionProxy.js +63 -72
  258. package/Proxy/Core/ProxyManager/core.js +83 -106
  259. package/Proxy/Core/ProxyManager/properties.js +53 -76
  260. package/Proxy/Core/ProxyManager/state.js +100 -110
  261. package/Proxy/Core/ProxyManager/view.js +45 -55
  262. package/Proxy/Core/ProxyManager.js +16 -8
  263. package/Proxy/Core/SourceProxy.js +41 -38
  264. package/Proxy/Core/View2DProxy.js +143 -199
  265. package/Proxy/Core/ViewProxy.js +223 -269
  266. package/Proxy/Core.js +7 -7
  267. package/Proxy/Representations/GeometryRepresentationProxy.js +34 -20
  268. package/Proxy/Representations/GlyphRepresentationProxy.js +42 -41
  269. package/Proxy/Representations/MoleculeRepresentationProxy.js +32 -22
  270. package/Proxy/Representations/ResliceRepresentationProxy.js +48 -32
  271. package/Proxy/Representations/SkyboxRepresentationProxy.js +30 -29
  272. package/Proxy/Representations/SliceRepresentationProxy.js +93 -112
  273. package/Proxy/Representations/SlicedGeometryRepresentationProxy.js +46 -42
  274. package/Proxy/Representations/VolumeRepresentationProxy.js +108 -133
  275. package/Proxy/Representations.js +7 -7
  276. package/Proxy/index.js +2 -2
  277. package/Rendering/Core/AbstractImageMapper/helper.js +44 -49
  278. package/Rendering/Core/AbstractImageMapper.js +18 -19
  279. package/Rendering/Core/AbstractMapper.js +39 -55
  280. package/Rendering/Core/AbstractMapper3D.js +26 -31
  281. package/Rendering/Core/AbstractPicker.js +25 -21
  282. package/Rendering/Core/Actor.js +71 -93
  283. package/Rendering/Core/Actor2D.js +64 -78
  284. package/Rendering/Core/AnnotatedCubeActor/Presets.js +5 -11
  285. package/Rendering/Core/AnnotatedCubeActor.js +94 -79
  286. package/Rendering/Core/AxesActor.js +65 -87
  287. package/Rendering/Core/Camera.js +246 -271
  288. package/Rendering/Core/CellPicker.js +125 -148
  289. package/Rendering/Core/ColorTransferFunction/ColorMaps.js +20 -21
  290. package/Rendering/Core/ColorTransferFunction/ColorMapsLite.js +20 -21
  291. package/Rendering/Core/ColorTransferFunction/Constants.js +4 -4
  292. package/Rendering/Core/ColorTransferFunction.js +460 -546
  293. package/Rendering/Core/Coordinate/Constants.js +2 -2
  294. package/Rendering/Core/Coordinate.js +119 -198
  295. package/Rendering/Core/CubeAxesActor.js +294 -320
  296. package/Rendering/Core/Follower.js +46 -45
  297. package/Rendering/Core/Glyph3DMapper/Constants.js +4 -4
  298. package/Rendering/Core/Glyph3DMapper.js +96 -148
  299. package/Rendering/Core/HardwareSelector.js +36 -69
  300. package/Rendering/Core/ImageArrayMapper.js +87 -126
  301. package/Rendering/Core/ImageCPRMapper.js +134 -209
  302. package/Rendering/Core/ImageMapper/Constants.js +2 -2
  303. package/Rendering/Core/ImageMapper.js +85 -144
  304. package/Rendering/Core/ImageProperty/Constants.js +2 -2
  305. package/Rendering/Core/ImageProperty.js +66 -81
  306. package/Rendering/Core/ImageResliceMapper/Constants.js +2 -2
  307. package/Rendering/Core/ImageResliceMapper.js +36 -29
  308. package/Rendering/Core/ImageSlice.js +85 -127
  309. package/Rendering/Core/InteractorObserver.js +82 -73
  310. package/Rendering/Core/InteractorStyle/Constants.js +2 -2
  311. package/Rendering/Core/InteractorStyle.js +56 -58
  312. package/Rendering/Core/Light.js +43 -49
  313. package/Rendering/Core/Mapper/CoincidentTopologyHelper.js +37 -48
  314. package/Rendering/Core/Mapper/Constants.js +6 -6
  315. package/Rendering/Core/Mapper/Static.js +15 -12
  316. package/Rendering/Core/Mapper.js +194 -259
  317. package/Rendering/Core/Mapper2D.js +61 -100
  318. package/Rendering/Core/Picker.js +124 -143
  319. package/Rendering/Core/PixelSpaceCallbackMapper.js +40 -37
  320. package/Rendering/Core/PointPicker.js +68 -79
  321. package/Rendering/Core/Prop/Constants.js +2 -2
  322. package/Rendering/Core/Prop.js +58 -106
  323. package/Rendering/Core/Prop3D.js +54 -83
  324. package/Rendering/Core/Property/Constants.js +6 -6
  325. package/Rendering/Core/Property.js +45 -74
  326. package/Rendering/Core/Property2D/Constants.js +2 -2
  327. package/Rendering/Core/Property2D.js +33 -42
  328. package/Rendering/Core/RenderWindow.js +70 -82
  329. package/Rendering/Core/RenderWindowInteractor/Constants.js +7 -7
  330. package/Rendering/Core/RenderWindowInteractor.js +324 -439
  331. package/Rendering/Core/Renderer.js +192 -256
  332. package/Rendering/Core/ScalarBarActor.js +267 -272
  333. package/Rendering/Core/Skybox.js +26 -24
  334. package/Rendering/Core/SphereMapper.js +22 -12
  335. package/Rendering/Core/StickMapper.js +22 -12
  336. package/Rendering/Core/SurfaceLICInterface/Constants.js +6 -6
  337. package/Rendering/Core/SurfaceLICInterface.js +13 -9
  338. package/Rendering/Core/SurfaceLICMapper.js +23 -15
  339. package/Rendering/Core/Texture.js +99 -141
  340. package/Rendering/Core/Viewport.js +60 -88
  341. package/Rendering/Core/Volume.js +55 -77
  342. package/Rendering/Core/VolumeMapper/Constants.js +4 -4
  343. package/Rendering/Core/VolumeMapper.js +59 -91
  344. package/Rendering/Core/VolumeProperty/Constants.js +4 -4
  345. package/Rendering/Core/VolumeProperty.js +78 -115
  346. package/Rendering/Core.js +47 -49
  347. package/Rendering/Misc/CanvasView.js +62 -61
  348. package/Rendering/Misc/FullScreenRenderWindow.js +60 -62
  349. package/Rendering/Misc/GenericRenderWindow.js +48 -37
  350. package/Rendering/Misc/RemoteView.js +86 -80
  351. package/Rendering/Misc/RenderWindowWithControlBar.js +54 -48
  352. package/Rendering/Misc/SynchronizableRenderWindow/BehaviorManager/CameraSynchronizer.js +43 -51
  353. package/Rendering/Misc/SynchronizableRenderWindow/BehaviorManager.js +52 -82
  354. package/Rendering/Misc/SynchronizableRenderWindow/ObjectManager.js +258 -308
  355. package/Rendering/Misc/SynchronizableRenderWindow.js +133 -163
  356. package/Rendering/Misc/TextureLODsDownloader.js +72 -74
  357. package/Rendering/Misc.js +7 -7
  358. package/Rendering/OpenGL/Actor.js +57 -68
  359. package/Rendering/OpenGL/Actor2D.js +56 -56
  360. package/Rendering/OpenGL/BufferObject/Constants.js +2 -2
  361. package/Rendering/OpenGL/BufferObject.js +50 -65
  362. package/Rendering/OpenGL/Camera.js +35 -29
  363. package/Rendering/OpenGL/CellArrayBufferObject.js +119 -149
  364. package/Rendering/OpenGL/Convolution2DPass.js +87 -81
  365. package/Rendering/OpenGL/CubeAxesActor.js +28 -21
  366. package/Rendering/OpenGL/ForwardPass.js +53 -64
  367. package/Rendering/OpenGL/Framebuffer.js +61 -101
  368. package/Rendering/OpenGL/Glyph3DMapper.js +165 -196
  369. package/Rendering/OpenGL/HardwareSelector/Constants.js +2 -2
  370. package/Rendering/OpenGL/HardwareSelector.js +272 -397
  371. package/Rendering/OpenGL/Helper.js +58 -73
  372. package/Rendering/OpenGL/ImageCPRMapper.js +339 -421
  373. package/Rendering/OpenGL/ImageMapper.js +268 -361
  374. package/Rendering/OpenGL/ImageResliceMapper.js +306 -438
  375. package/Rendering/OpenGL/ImageSlice.js +48 -54
  376. package/Rendering/OpenGL/OrderIndependentTranslucentPass.js +102 -84
  377. package/Rendering/OpenGL/PixelSpaceCallbackMapper.js +43 -42
  378. package/Rendering/OpenGL/PolyDataMapper.js +358 -492
  379. package/Rendering/OpenGL/PolyDataMapper2D.js +153 -205
  380. package/Rendering/OpenGL/RadialDistortionPass.js +86 -89
  381. package/Rendering/OpenGL/RenderWindow/Constants.js +2 -2
  382. package/Rendering/OpenGL/RenderWindow/ContextProxy.js +20 -29
  383. package/Rendering/OpenGL/RenderWindow.js +356 -510
  384. package/Rendering/OpenGL/Renderer.js +77 -89
  385. package/Rendering/OpenGL/ReplacementShaderMapper.js +28 -46
  386. package/Rendering/OpenGL/ScalarBarActor.js +28 -21
  387. package/Rendering/OpenGL/Shader.js +37 -31
  388. package/Rendering/OpenGL/ShaderCache.js +67 -74
  389. package/Rendering/OpenGL/ShaderProgram.js +136 -248
  390. package/Rendering/OpenGL/Skybox.js +99 -60
  391. package/Rendering/OpenGL/SphereMapper.js +94 -108
  392. package/Rendering/OpenGL/StickMapper.js +110 -114
  393. package/Rendering/OpenGL/SurfaceLIC/LineIntegralConvolution2D/pingpong.js +91 -157
  394. package/Rendering/OpenGL/SurfaceLIC/LineIntegralConvolution2D.js +142 -151
  395. package/Rendering/OpenGL/SurfaceLIC/SurfaceLICInterface.js +142 -216
  396. package/Rendering/OpenGL/SurfaceLIC/SurfaceLICMapper.js +79 -100
  397. package/Rendering/OpenGL/SurfaceLIC.js +2 -2
  398. package/Rendering/OpenGL/Texture/Constants.js +4 -4
  399. package/Rendering/OpenGL/Texture.js +443 -608
  400. package/Rendering/OpenGL/TextureUnitManager.js +47 -43
  401. package/Rendering/OpenGL/VertexArrayObject.js +92 -131
  402. package/Rendering/OpenGL/ViewNodeFactory.js +25 -13
  403. package/Rendering/OpenGL/Volume.js +38 -34
  404. package/Rendering/OpenGL/VolumeMapper.js +437 -547
  405. package/Rendering/OpenGL.js +28 -28
  406. package/Rendering/SceneGraph/RenderPass.js +34 -31
  407. package/Rendering/SceneGraph/RenderWindowViewNode.js +68 -94
  408. package/Rendering/SceneGraph/ViewNode.js +82 -111
  409. package/Rendering/SceneGraph/ViewNodeFactory.js +31 -26
  410. package/Rendering/SceneGraph.js +4 -4
  411. package/Rendering/WebGPU/Actor.js +49 -49
  412. package/Rendering/WebGPU/Actor2D.js +45 -44
  413. package/Rendering/WebGPU/BindGroup.js +43 -50
  414. package/Rendering/WebGPU/Buffer.js +41 -50
  415. package/Rendering/WebGPU/BufferManager/Constants.js +4 -4
  416. package/Rendering/WebGPU/BufferManager.js +111 -141
  417. package/Rendering/WebGPU/Camera.js +65 -67
  418. package/Rendering/WebGPU/CellArrayMapper.js +621 -388
  419. package/Rendering/WebGPU/CubeAxesActor.js +28 -19
  420. package/Rendering/WebGPU/Device.js +78 -133
  421. package/Rendering/WebGPU/ForwardPass.js +75 -72
  422. package/Rendering/WebGPU/FullScreenQuad.js +25 -18
  423. package/Rendering/WebGPU/Glyph3DMapper.js +62 -74
  424. package/Rendering/WebGPU/HardwareSelectionPass.js +45 -38
  425. package/Rendering/WebGPU/HardwareSelector.js +200 -276
  426. package/Rendering/WebGPU/ImageMapper.js +180 -171
  427. package/Rendering/WebGPU/ImageSlice.js +45 -44
  428. package/Rendering/WebGPU/IndexBuffer.js +166 -200
  429. package/Rendering/WebGPU/OpaquePass.js +37 -36
  430. package/Rendering/WebGPU/OrderIndependentTranslucentPass.js +72 -45
  431. package/Rendering/WebGPU/Pipeline.js +37 -51
  432. package/Rendering/WebGPU/PixelSpaceCallbackMapper.js +27 -19
  433. package/Rendering/WebGPU/PolyDataMapper.js +50 -53
  434. package/Rendering/WebGPU/PolyDataMapper2D.js +39 -39
  435. package/Rendering/WebGPU/RenderEncoder.js +68 -88
  436. package/Rendering/WebGPU/RenderWindow.js +262 -376
  437. package/Rendering/WebGPU/Renderer.js +224 -208
  438. package/Rendering/WebGPU/Sampler.js +27 -21
  439. package/Rendering/WebGPU/ScalarBarActor.js +28 -19
  440. package/Rendering/WebGPU/ShaderCache.js +43 -41
  441. package/Rendering/WebGPU/ShaderDescription.js +52 -59
  442. package/Rendering/WebGPU/ShaderModule.js +26 -17
  443. package/Rendering/WebGPU/SimpleMapper.js +185 -121
  444. package/Rendering/WebGPU/SphereMapper.js +200 -130
  445. package/Rendering/WebGPU/StickMapper.js +289 -152
  446. package/Rendering/WebGPU/StorageBuffer.js +100 -115
  447. package/Rendering/WebGPU/Texture.js +79 -99
  448. package/Rendering/WebGPU/TextureManager.js +52 -54
  449. package/Rendering/WebGPU/TextureView.js +40 -43
  450. package/Rendering/WebGPU/Types.js +53 -70
  451. package/Rendering/WebGPU/UniformBuffer.js +158 -184
  452. package/Rendering/WebGPU/VertexInput.js +64 -90
  453. package/Rendering/WebGPU/ViewNodeFactory.js +25 -13
  454. package/Rendering/WebGPU/Volume.js +52 -51
  455. package/Rendering/WebGPU/VolumePass.js +218 -239
  456. package/Rendering/WebGPU/VolumePassFSQ.js +625 -306
  457. package/Rendering/WebGPU.js +1 -1
  458. package/Rendering/index.js +5 -5
  459. package/Widgets/Core/AbstractWidget/Constants.js +2 -2
  460. package/Widgets/Core/AbstractWidget.js +49 -58
  461. package/Widgets/Core/AbstractWidgetFactory.js +101 -122
  462. package/Widgets/Core/StateBuilder/boundsMixin.js +23 -28
  463. package/Widgets/Core/StateBuilder/color3Mixin.js +10 -7
  464. package/Widgets/Core/StateBuilder/colorMixin.js +10 -6
  465. package/Widgets/Core/StateBuilder/cornerMixin.js +16 -15
  466. package/Widgets/Core/StateBuilder/directionMixin.js +20 -18
  467. package/Widgets/Core/StateBuilder/manipulatorMixin.js +26 -18
  468. package/Widgets/Core/StateBuilder/nameMixin.js +10 -6
  469. package/Widgets/Core/StateBuilder/orientationMixin.js +19 -16
  470. package/Widgets/Core/StateBuilder/originMixin.js +25 -32
  471. package/Widgets/Core/StateBuilder/scale1Mixin.js +10 -6
  472. package/Widgets/Core/StateBuilder/scale3Mixin.js +10 -6
  473. package/Widgets/Core/StateBuilder/shapeMixin.js +12 -6
  474. package/Widgets/Core/StateBuilder/textMixin.js +10 -6
  475. package/Widgets/Core/StateBuilder/visibleMixin.js +10 -6
  476. package/Widgets/Core/StateBuilder.js +120 -149
  477. package/Widgets/Core/WidgetManager/Constants.js +7 -7
  478. package/Widgets/Core/WidgetManager.js +249 -421
  479. package/Widgets/Core/WidgetState.js +48 -57
  480. package/Widgets/Core.js +5 -5
  481. package/Widgets/Manipulators/AbstractManipulator.js +20 -14
  482. package/Widgets/Manipulators/CPRManipulator.js +55 -71
  483. package/Widgets/Manipulators/LineManipulator.js +31 -28
  484. package/Widgets/Manipulators/PickerManipulator.d.ts +48 -0
  485. package/Widgets/Manipulators/PickerManipulator.js +65 -0
  486. package/Widgets/Manipulators/PlaneManipulator.js +26 -23
  487. package/Widgets/Manipulators/TrackballManipulator.js +39 -35
  488. package/Widgets/Manipulators.js +4 -2
  489. package/Widgets/Representations/ArrowHandleRepresentation.js +148 -162
  490. package/Widgets/Representations/CircleContextRepresentation.js +44 -38
  491. package/Widgets/Representations/ContextRepresentation.js +17 -14
  492. package/Widgets/Representations/ConvexFaceContextRepresentation.js +50 -47
  493. package/Widgets/Representations/CroppingOutlineRepresentation.js +38 -27
  494. package/Widgets/Representations/CubeHandleRepresentation.js +21 -18
  495. package/Widgets/Representations/GlyphRepresentation.js +107 -152
  496. package/Widgets/Representations/HandleRepresentation.js +17 -14
  497. package/Widgets/Representations/ImplicitPlaneRepresentation.js +97 -91
  498. package/Widgets/Representations/LineHandleRepresentation.js +44 -41
  499. package/Widgets/Representations/OutlineContextRepresentation.js +42 -36
  500. package/Widgets/Representations/PolyLineRepresentation.js +60 -75
  501. package/Widgets/Representations/RectangleContextRepresentation.js +42 -37
  502. package/Widgets/Representations/SphereContextRepresentation.js +19 -27
  503. package/Widgets/Representations/SphereHandleRepresentation.js +31 -27
  504. package/Widgets/Representations/SplineContextRepresentation.js +46 -70
  505. package/Widgets/Representations/WidgetRepresentation/Constants.js +2 -2
  506. package/Widgets/Representations/WidgetRepresentation.js +99 -134
  507. package/Widgets/Representations.js +13 -13
  508. package/Widgets/Widgets3D/AngleWidget/behavior.js +41 -63
  509. package/Widgets/Widgets3D/AngleWidget.js +40 -38
  510. package/Widgets/Widgets3D/DistanceWidget/behavior.js +40 -61
  511. package/Widgets/Widgets3D/DistanceWidget.js +38 -36
  512. package/Widgets/Widgets3D/EllipseWidget/behavior.js +14 -19
  513. package/Widgets/Widgets3D/EllipseWidget/state.js +4 -2
  514. package/Widgets/Widgets3D/EllipseWidget.js +37 -26
  515. package/Widgets/Widgets3D/ImageCroppingWidget/behavior.js +26 -56
  516. package/Widgets/Widgets3D/ImageCroppingWidget/helpers.js +14 -17
  517. package/Widgets/Widgets3D/ImageCroppingWidget/state.js +20 -16
  518. package/Widgets/Widgets3D/ImageCroppingWidget.js +80 -98
  519. package/Widgets/Widgets3D/ImplicitPlaneWidget.js +55 -77
  520. package/Widgets/Widgets3D/InteractiveOrientationWidget/behavior.js +17 -18
  521. package/Widgets/Widgets3D/InteractiveOrientationWidget/state.js +15 -7
  522. package/Widgets/Widgets3D/InteractiveOrientationWidget.js +30 -29
  523. package/Widgets/Widgets3D/LabelWidget/behavior.js +37 -62
  524. package/Widgets/Widgets3D/LabelWidget.js +31 -25
  525. package/Widgets/Widgets3D/LineWidget/Constants.js +8 -8
  526. package/Widgets/Widgets3D/LineWidget/behavior.js +77 -114
  527. package/Widgets/Widgets3D/LineWidget/helpers.js +13 -20
  528. package/Widgets/Widgets3D/LineWidget/state.js +2 -1
  529. package/Widgets/Widgets3D/LineWidget.js +39 -35
  530. package/Widgets/Widgets3D/PaintWidget/behavior.js +24 -59
  531. package/Widgets/Widgets3D/PaintWidget.js +39 -37
  532. package/Widgets/Widgets3D/PolyLineWidget/behavior.js +44 -68
  533. package/Widgets/Widgets3D/PolyLineWidget.js +36 -31
  534. package/Widgets/Widgets3D/RectangleWidget/behavior.js +6 -11
  535. package/Widgets/Widgets3D/RectangleWidget/state.js +4 -2
  536. package/Widgets/Widgets3D/RectangleWidget.js +37 -25
  537. package/Widgets/Widgets3D/ResliceCursorWidget/Constants.js +35 -21
  538. package/Widgets/Widgets3D/ResliceCursorWidget/behavior.js +133 -209
  539. package/Widgets/Widgets3D/ResliceCursorWidget/cprBehavior.js +26 -41
  540. package/Widgets/Widgets3D/ResliceCursorWidget/helpers.js +89 -116
  541. package/Widgets/Widgets3D/ResliceCursorWidget/state.js +33 -40
  542. package/Widgets/Widgets3D/ResliceCursorWidget.js +186 -227
  543. package/Widgets/Widgets3D/SeedWidget/behavior.js +82 -0
  544. package/Widgets/Widgets3D/SeedWidget/state.js +18 -0
  545. package/Widgets/Widgets3D/SeedWidget.d.ts +44 -0
  546. package/Widgets/Widgets3D/SeedWidget.js +43 -0
  547. package/Widgets/Widgets3D/ShapeWidget/Constants.js +19 -19
  548. package/Widgets/Widgets3D/ShapeWidget/behavior.js +150 -252
  549. package/Widgets/Widgets3D/ShapeWidget.js +24 -27
  550. package/Widgets/Widgets3D/SphereWidget/behavior.js +35 -69
  551. package/Widgets/Widgets3D/SphereWidget/state.js +9 -5
  552. package/Widgets/Widgets3D/SphereWidget.js +34 -44
  553. package/Widgets/Widgets3D/SplineWidget/behavior.js +85 -120
  554. package/Widgets/Widgets3D/SplineWidget.js +43 -39
  555. package/Widgets/Widgets3D.js +15 -15
  556. package/Widgets/index.js +4 -4
  557. package/_virtual/rollup-plugin-worker-loader__module_Sources/Filters/General/PaintFilter/PaintFilter.worker.js +95 -207
  558. package/_virtual/rollup-plugin-worker-loader__module_Sources/Interaction/Widgets/PiecewiseGaussianWidget/ComputeHistogram.worker.js +0 -3
  559. package/favicon.js +5 -6
  560. package/index.d.ts +4 -2
  561. package/index.js +4 -3
  562. package/macros.js +4 -1931
  563. package/macros2.js +1684 -0
  564. package/package.json +6 -6
  565. package/vtk.js +18 -31
@@ -1,5 +1,4 @@
1
- import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
2
- import macro from '../../macros.js';
1
+ import { m as macro } from '../../macros2.js';
3
2
  import vtkMolecule from '../../Common/DataModel/Molecule.js';
4
3
  import DataAccessHelper from '../Core/DataAccessHelper.js';
5
4
  import { A as ATOMS } from '../../Utilities/XMLConverter/chemistry-mapper/elements.json.js';
@@ -8,101 +7,101 @@ import '../Core/DataAccessHelper/LiteHttpDataAccessHelper.js';
8
7
  // import 'vtk.js/Sources/IO/Core/DataAccessHelper/HttpDataAccessHelper'; // HTTP + gz
9
8
  // import 'vtk.js/Sources/IO/Core/DataAccessHelper/HtmlDataAccessHelper'; // html + base64 + zip
10
9
  // import 'vtk.js/Sources/IO/Core/DataAccessHelper/JSZipDataAccessHelper'; // zip
10
+
11
11
  // ----------------------------------------------------------------------------
12
12
  // vtkPDBReader methods
13
13
  // ----------------------------------------------------------------------------
14
14
 
15
15
  function vtkPDBReader(publicAPI, model) {
16
16
  // Set our className
17
- model.classHierarchy.push('vtkPDBReader'); // Create default dataAccessHelper if not available
17
+ model.classHierarchy.push('vtkPDBReader');
18
18
 
19
+ // Create default dataAccessHelper if not available
19
20
  if (!model.dataAccessHelper) {
20
21
  model.dataAccessHelper = DataAccessHelper.get('http');
21
- } // Internal method to fetch Array
22
-
22
+ }
23
23
 
24
+ // Internal method to fetch Array
24
25
  function fetchPDB(url, option) {
25
26
  return model.dataAccessHelper.fetchText(publicAPI, url, option);
26
- } // Set DataSet url
27
+ }
27
28
 
28
-
29
- publicAPI.setUrl = function (url, option) {
29
+ // Set DataSet url
30
+ publicAPI.setUrl = (url, option) => {
30
31
  if (url.indexOf('.pdb') === -1) {
31
32
  model.baseURL = url;
32
- model.url = "".concat(url); // `${url}/index.pdb`;
33
+ model.url = `${url}`; // `${url}/index.pdb`;
33
34
  } else {
34
- model.url = url; // Remove the file in the URL
35
+ model.url = url;
35
36
 
36
- var path = url.split('/');
37
+ // Remove the file in the URL
38
+ const path = url.split('/');
37
39
  path.pop();
38
40
  model.baseURL = path.join('/');
39
- } // Fetch metadata
40
-
41
+ }
41
42
 
43
+ // Fetch metadata
42
44
  return publicAPI.loadData(option);
43
- }; // Fetch the actual data arrays
44
-
45
-
46
- publicAPI.loadData = function (option) {
47
- return fetchPDB(model.url, option).then(publicAPI.parseAsText);
48
45
  };
49
46
 
50
- publicAPI.parseAsText = function (txt) {
47
+ // Fetch the actual data arrays
48
+ publicAPI.loadData = option => fetchPDB(model.url, option).then(publicAPI.parseAsText);
49
+ publicAPI.parseAsText = txt => {
51
50
  model.pdb = txt;
52
51
  model.molecule = [];
53
52
  model.molecule = model.pdb.split('\n');
54
53
  publicAPI.modified();
55
54
  return true;
56
55
  };
57
-
58
- publicAPI.requestData = function (inData, outData) {
59
- var moleculedata = vtkMolecule.newInstance();
60
-
56
+ publicAPI.requestData = (inData, outData) => {
57
+ const moleculedata = vtkMolecule.newInstance();
61
58
  if (model.molecule) {
62
- var jSize = model.molecule.length; // atom position
59
+ const jSize = model.molecule.length;
63
60
 
64
- var pointValues = []; // atomicNumber
61
+ // atom position
62
+ const pointValues = [];
65
63
 
66
- var atomicNumber = [];
64
+ // atomicNumber
65
+ const atomicNumber = [];
67
66
  model.numberOfAtoms = 0;
68
- var j = 0;
69
-
67
+ let j = 0;
70
68
  while (j < jSize && model.molecule[j] !== 'END') {
71
- var iSize = model.molecule[j].length;
72
- var linebuf = model.molecule[j];
73
- var command = linebuf.substr(0, 6).replace(/\s+/g, '');
74
- command.toUpperCase(); // Parse lines
69
+ const iSize = model.molecule[j].length;
70
+ const linebuf = model.molecule[j];
71
+ const command = linebuf.substr(0, 6).replace(/\s+/g, '');
72
+ command.toUpperCase();
75
73
 
74
+ // Parse lines
76
75
  if (command === 'ATOM' || command === 'HETATM') {
77
- var dum1 = linebuf.substr(12, 4).replace(/\s+/g, ''); // const dum2 = (linebuf.substr(17, 3)).replace(/\s+/g, '');
76
+ const dum1 = linebuf.substr(12, 4).replace(/\s+/g, '');
77
+ // const dum2 = (linebuf.substr(17, 3)).replace(/\s+/g, '');
78
78
  // const chain = (linebuf.substr(21, 1)).replace(/\s+/g, '');
79
79
  // const resi = ((linebuf.substr(22, 8)).replace(/\s+/g, '')).replace(/\D/g, '');
80
-
81
- var x = linebuf.substr(30, 8).replace(/\s+/g, '');
82
- var y = linebuf.substr(38, 8).replace(/\s+/g, '');
83
- var z = linebuf.substr(46, 8).replace(/\s+/g, '');
84
- var elem = '';
85
-
80
+ const x = linebuf.substr(30, 8).replace(/\s+/g, '');
81
+ const y = linebuf.substr(38, 8).replace(/\s+/g, '');
82
+ const z = linebuf.substr(46, 8).replace(/\s+/g, '');
83
+ let elem = '';
86
84
  if (iSize >= 78) {
87
85
  elem = linebuf.substr(76, 2).replace(/\s+/g, '');
88
86
  }
89
-
90
87
  if (elem === '') {
91
88
  // if element symbol was not specified, just use the "Atom name".
92
89
  elem = dum1.substr(0, 2).replace(/\d/g, '');
93
- } // fill polydata
94
- // atoms position
95
-
90
+ }
96
91
 
92
+ // fill polydata
93
+ // atoms position
97
94
  pointValues.push(x);
98
95
  pointValues.push(y);
99
- pointValues.push(z); // fetch data from the element database elements.json
96
+ pointValues.push(z);
100
97
 
101
- var _ATOMS$elem = _slicedToArray(ATOMS[elem], 1),
102
- atomicNumberData = _ATOMS$elem[0]; // atoms atomicNumber
98
+ // fetch data from the element database elements.json
99
+ const [atomicNumberData] = ATOMS[elem];
103
100
 
101
+ // atoms atomicNumber
102
+ atomicNumber.push(atomicNumberData);
104
103
 
105
- atomicNumber.push(atomicNumberData); // residue.push(resi);
104
+ // residue.push(resi);
106
105
  // chain.push(chain);
107
106
  // atomType.push(elem);
108
107
  // atomTypeStrings.push(dum1);
@@ -129,58 +128,61 @@ function vtkPDBReader(publicAPI, model) {
129
128
  helix.push(tuple);
130
129
  }
131
130
  */
132
-
133
-
134
131
  j++;
135
132
  } // lines loop (j)
136
- // fill molecule class
137
-
138
133
 
134
+ // fill molecule class
139
135
  moleculedata.getAtoms().elements = {};
140
136
  moleculedata.getAtoms().elements.number = Int8Array.from(atomicNumber);
141
137
  moleculedata.getAtoms().coords = {};
142
138
  moleculedata.getAtoms().coords['3d'] = Float32Array.from(pointValues);
143
139
  } // if model.molecule
144
140
 
145
-
146
141
  model.output[0] = moleculedata;
147
- }; // return Busy state
142
+ };
148
143
 
144
+ // return Busy state
145
+ publicAPI.isBusy = () => !!model.requestCount;
146
+ }
149
147
 
150
- publicAPI.isBusy = function () {
151
- return !!model.requestCount;
152
- };
153
- } // ----------------------------------------------------------------------------
148
+ // ----------------------------------------------------------------------------
154
149
  // Object factory
155
150
  // ----------------------------------------------------------------------------
156
151
 
157
-
158
- var DEFAULT_VALUES = {
152
+ const DEFAULT_VALUES = {
159
153
  numberOfAtoms: 0,
160
- requestCount: 0 // baseURL: null,
154
+ requestCount: 0
155
+ // baseURL: null,
161
156
  // dataAccessHelper: null,
162
157
  // url: null,
158
+ };
163
159
 
164
- }; // ----------------------------------------------------------------------------
160
+ // ----------------------------------------------------------------------------
165
161
 
166
162
  function extend(publicAPI, model) {
167
- var initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
168
- Object.assign(model, DEFAULT_VALUES, initialValues); // Build VTK API
163
+ let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
164
+ Object.assign(model, DEFAULT_VALUES, initialValues);
169
165
 
166
+ // Build VTK API
170
167
  macro.obj(publicAPI, model);
171
168
  macro.get(publicAPI, model, ['url', 'baseURL', 'numberOfAtoms', 'requestCount']);
172
169
  macro.setGet(publicAPI, model, ['dataAccessHelper']);
173
170
  macro.algo(publicAPI, model, 0, 1);
174
- macro.event(publicAPI, model, 'busy'); // Object methods
171
+ macro.event(publicAPI, model, 'busy');
175
172
 
173
+ // Object methods
176
174
  vtkPDBReader(publicAPI, model);
177
- } // ----------------------------------------------------------------------------
175
+ }
178
176
 
179
- var newInstance = macro.newInstance(extend, 'vtkPDBReader'); // ----------------------------------------------------------------------------
177
+ // ----------------------------------------------------------------------------
178
+
179
+ const newInstance = macro.newInstance(extend, 'vtkPDBReader');
180
+
181
+ // ----------------------------------------------------------------------------
180
182
 
181
183
  var vtkPDBReader$1 = {
182
- newInstance: newInstance,
183
- extend: extend
184
+ newInstance,
185
+ extend
184
186
  };
185
187
 
186
188
  export { vtkPDBReader$1 as default, extend, newInstance };
@@ -1,122 +1,114 @@
1
- import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
2
- import macro from '../../macros.js';
1
+ import { m as macro } from '../../macros2.js';
3
2
  import ImageHelper from '../../Common/Core/ImageHelper.js';
4
3
  import vtkTexture from '../../Rendering/Core/Texture.js';
5
4
  import { unzipSync, strFromU8 } from 'fflate';
6
5
 
6
+ // ----------------------------------------------------------------------------
7
7
  // vtkSkyboxReader methods
8
8
  // ----------------------------------------------------------------------------
9
9
 
10
10
  function vtkSkyboxReader(publicAPI, model) {
11
11
  // Set our className
12
- model.classHierarchy.push('vtkSkyboxReader'); // Internal method to fetch Array
12
+ model.classHierarchy.push('vtkSkyboxReader');
13
13
 
14
+ // Internal method to fetch Array
14
15
  function fetchData(url) {
15
- var compression = model.compression,
16
- progressCallback = model.progressCallback;
16
+ const {
17
+ compression,
18
+ progressCallback
19
+ } = model;
17
20
  return model.dataAccessHelper.fetchBinary(url, {
18
- compression: compression,
19
- progressCallback: progressCallback
21
+ compression,
22
+ progressCallback
20
23
  });
21
- } // Set DataSet url
22
-
24
+ }
23
25
 
26
+ // Set DataSet url
24
27
  publicAPI.setUrl = function (url) {
25
- var option = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
26
- model.url = url; // Fetch metadata
28
+ let option = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
29
+ model.url = url;
27
30
 
31
+ // Fetch metadata
28
32
  return publicAPI.loadData(option);
29
- }; // Fetch the actual data arrays
30
-
33
+ };
31
34
 
35
+ // Fetch the actual data arrays
32
36
  publicAPI.loadData = function () {
33
37
  return fetchData(model.url).then(publicAPI.parseAsArrayBuffer);
34
38
  };
35
-
36
- publicAPI.parseAsArrayBuffer = function (content) {
39
+ publicAPI.parseAsArrayBuffer = content => {
37
40
  if (!content) {
38
41
  return false;
39
42
  }
40
-
41
43
  model.textures = {};
42
44
  model.busy = true;
43
45
  publicAPI.invokeBusy(model.busy);
44
46
  model.dataMapping = {};
45
- var imageReady = []; // Finish data processing
47
+ const imageReady = [];
46
48
 
49
+ // Finish data processing
47
50
  function workDone() {
48
- for (var i = 0; i < model.positions.length; i++) {
49
- var key = model.positions[i];
50
- var images = model.dataMapping[key];
51
-
51
+ for (let i = 0; i < model.positions.length; i++) {
52
+ const key = model.positions[i];
53
+ const images = model.dataMapping[key];
52
54
  if (!model.textures[key]) {
53
55
  model.textures[key] = vtkTexture.newInstance({
54
56
  interpolate: true
55
57
  });
56
58
  }
57
-
58
59
  if (images) {
59
- var texture = model.textures[key];
60
-
61
- for (var idx = 0; idx < 6; idx++) {
62
- var _model$faceMapping$id = model.faceMapping[idx],
63
- fileName = _model$faceMapping$id.fileName,
64
- transform = _model$faceMapping$id.transform;
65
- var readyIndex = imageReady.indexOf("".concat(key, "/").concat(fileName));
66
-
60
+ const texture = model.textures[key];
61
+ for (let idx = 0; idx < 6; idx++) {
62
+ const {
63
+ fileName,
64
+ transform
65
+ } = model.faceMapping[idx];
66
+ const readyIndex = imageReady.indexOf(`${key}/${fileName}`);
67
67
  if (readyIndex !== -1) {
68
- texture.setInputData(ImageHelper.imageToImageData(images[fileName], transform), idx); // Free image
68
+ texture.setInputData(ImageHelper.imageToImageData(images[fileName], transform), idx);
69
69
 
70
+ // Free image
70
71
  URL.revokeObjectURL(images[fileName].src);
71
- delete images[fileName]; // Don't process again
72
+ delete images[fileName];
72
73
 
74
+ // Don't process again
73
75
  imageReady.splice(readyIndex, 1);
74
76
  }
75
77
  }
76
78
  }
77
79
  }
78
-
79
80
  model.busy = false;
80
81
  publicAPI.modified();
81
82
  publicAPI.invokeBusy(model.busy);
82
83
  }
83
-
84
- var decompressedFiles = unzipSync(new Uint8Array(content));
85
- var pending = []; // Find root index.json
86
-
87
- Object.entries(decompressedFiles).forEach(function (_ref) {
88
- var _ref2 = _slicedToArray(_ref, 2),
89
- relativePath = _ref2[0],
90
- fileData = _ref2[1];
91
-
84
+ const decompressedFiles = unzipSync(new Uint8Array(content));
85
+ const pending = [];
86
+ // Find root index.json
87
+ Object.entries(decompressedFiles).forEach(_ref => {
88
+ let [relativePath, fileData] = _ref;
92
89
  if (relativePath.match(/index.json$/)) {
93
- var txt = strFromU8(fileData);
94
- var config = JSON.parse(txt);
95
-
90
+ const txt = strFromU8(fileData);
91
+ const config = JSON.parse(txt);
96
92
  if (config.skybox && config.skybox.faceMapping) {
97
93
  model.faceMapping = config.skybox.faceMapping;
98
94
  }
99
-
100
95
  if (config.metadata && config.metadata.skybox && config.metadata.skybox.faceMapping) {
101
96
  model.faceMapping = config.metadata.skybox.faceMapping;
102
97
  }
103
98
  }
104
-
105
99
  if (relativePath.match(/\.jpg$/)) {
106
- var pathTokens = relativePath.split('/');
107
- var fileName = pathTokens.pop();
108
- var key = pathTokens.pop();
109
-
100
+ const pathTokens = relativePath.split('/');
101
+ const fileName = pathTokens.pop();
102
+ const key = pathTokens.pop();
110
103
  if (!model.dataMapping[key]) {
111
104
  model.dataMapping[key] = {};
112
105
  }
113
-
114
- var blob = new Blob([fileData.buffer]);
115
- var img = new Image();
116
- var readyKey = "".concat(key, "/").concat(fileName);
106
+ const blob = new Blob([fileData.buffer]);
107
+ const img = new Image();
108
+ const readyKey = `${key}/${fileName}`;
117
109
  model.dataMapping[key][fileName] = img;
118
- pending.push(new Promise(function (resolve) {
119
- img.onload = function () {
110
+ pending.push(new Promise(resolve => {
111
+ img.onload = () => {
120
112
  imageReady.push(readyKey);
121
113
  resolve();
122
114
  };
@@ -126,48 +118,43 @@ function vtkSkyboxReader(publicAPI, model) {
126
118
  });
127
119
  model.positions = Object.keys(model.dataMapping);
128
120
  model.position = model.positions[0];
129
- Promise.all(pending).then(function () {
121
+ Promise.all(pending).then(() => {
130
122
  workDone();
131
123
  });
132
124
  return publicAPI.getReadyPromise();
133
125
  };
134
-
135
- publicAPI.requestData = function (inData, outData) {
126
+ publicAPI.requestData = (inData, outData) => {
136
127
  outData[0] = model.textures[model.position];
137
128
  };
138
-
139
- publicAPI.setPosition = function (name) {
129
+ publicAPI.setPosition = name => {
140
130
  if (model.positions.indexOf(name) !== -1 && name !== model.position) {
141
131
  model.position = name;
142
132
  publicAPI.modified();
143
133
  }
144
134
  };
145
-
146
- publicAPI.getReadyPromise = function () {
135
+ publicAPI.getReadyPromise = () => {
147
136
  if (!model.busy) {
148
137
  return Promise.resolve(publicAPI);
149
138
  }
150
-
151
- return new Promise(function (resolve, reject) {
152
- var subscription = publicAPI.onBusy(function (isBusy) {
139
+ return new Promise((resolve, reject) => {
140
+ const subscription = publicAPI.onBusy(isBusy => {
153
141
  if (!isBusy) {
154
142
  subscription.unsubscribe();
155
143
  resolve(publicAPI);
156
144
  }
157
145
  });
158
146
  });
159
- }; // return Busy state
147
+ };
160
148
 
149
+ // return Busy state
150
+ publicAPI.isBusy = () => model.busy;
151
+ }
161
152
 
162
- publicAPI.isBusy = function () {
163
- return model.busy;
164
- };
165
- } // ----------------------------------------------------------------------------
153
+ // ----------------------------------------------------------------------------
166
154
  // Object factory
167
155
  // ----------------------------------------------------------------------------
168
156
 
169
-
170
- var DEFAULT_VALUES = {
157
+ const DEFAULT_VALUES = {
171
158
  // url: null,
172
159
  busy: false,
173
160
  // everything must be flipped in Y due to canvas
@@ -203,26 +190,34 @@ var DEFAULT_VALUES = {
203
190
  flipY: true
204
191
  }
205
192
  }]
206
- }; // ----------------------------------------------------------------------------
193
+ };
194
+
195
+ // ----------------------------------------------------------------------------
207
196
 
208
197
  function extend(publicAPI, model) {
209
- var initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
210
- Object.assign(model, DEFAULT_VALUES, initialValues); // Build VTK API
198
+ let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
199
+ Object.assign(model, DEFAULT_VALUES, initialValues);
211
200
 
201
+ // Build VTK API
212
202
  macro.obj(publicAPI, model);
213
203
  macro.get(publicAPI, model, ['url', 'positions', 'position']);
214
204
  macro.setGet(publicAPI, model, ['faceMapping']);
215
205
  macro.event(publicAPI, model, 'busy');
216
- macro.algo(publicAPI, model, 0, 6); // Object methods
206
+ macro.algo(publicAPI, model, 0, 6);
217
207
 
208
+ // Object methods
218
209
  vtkSkyboxReader(publicAPI, model);
219
- } // ----------------------------------------------------------------------------
210
+ }
220
211
 
221
- var newInstance = macro.newInstance(extend, 'vtkSkyboxReader'); // ----------------------------------------------------------------------------
212
+ // ----------------------------------------------------------------------------
213
+
214
+ const newInstance = macro.newInstance(extend, 'vtkSkyboxReader');
215
+
216
+ // ----------------------------------------------------------------------------
222
217
 
223
218
  var vtkSkyboxReader$1 = {
224
- newInstance: newInstance,
225
- extend: extend
219
+ newInstance,
220
+ extend
226
221
  };
227
222
 
228
223
  export { vtkSkyboxReader$1 as default, extend, newInstance };
package/IO/Misc.js CHANGED
@@ -9,15 +9,15 @@ import vtkPDBReader from './Misc/PDBReader.js';
9
9
  import vtkSkyboxReader from './Misc/SkyboxReader.js';
10
10
 
11
11
  var Misc = {
12
- vtkElevationReader: vtkElevationReader,
13
- vtkITKImageReader: vtkITKImageReader,
14
- vtkITKPolyDataReader: vtkITKPolyDataReader,
15
- vtkJSONNucleoReader: vtkJSONNucleoReader,
16
- vtkJSONReader: vtkJSONReader,
17
- vtkMTLReader: vtkMTLReader,
18
- vtkOBJReader: vtkOBJReader,
19
- vtkPDBReader: vtkPDBReader,
20
- vtkSkyboxReader: vtkSkyboxReader
12
+ vtkElevationReader,
13
+ vtkITKImageReader,
14
+ vtkITKPolyDataReader,
15
+ vtkJSONNucleoReader,
16
+ vtkJSONReader,
17
+ vtkMTLReader,
18
+ vtkOBJReader,
19
+ vtkPDBReader,
20
+ vtkSkyboxReader
21
21
  };
22
22
 
23
23
  export { Misc as default };
@@ -1,70 +1,68 @@
1
1
  import vtkXMLReader from './XMLReader.js';
2
- import macro from '../../macros.js';
2
+ import { m as macro } from '../../macros2.js';
3
3
  import vtkImageData from '../../Common/DataModel/ImageData.js';
4
4
 
5
+ // ----------------------------------------------------------------------------
5
6
  // vtkXMLImageDataReader methods
6
7
  // ----------------------------------------------------------------------------
7
8
 
8
9
  function vtkXMLImageDataReader(publicAPI, model) {
9
10
  // Set our className
10
11
  model.classHierarchy.push('vtkXMLImageDataReader');
11
-
12
- publicAPI.parseXML = function (rootElem, type, compressor, byteOrder, headerType) {
13
- var _imageDataElem$getAtt;
14
-
15
- var imageDataElem = rootElem.getElementsByTagName(model.dataType)[0];
16
- var origin = imageDataElem.getAttribute('Origin').split(' ').map(function (t) {
17
- return Number(t);
18
- });
19
- var spacing = imageDataElem.getAttribute('Spacing').split(' ').map(function (t) {
20
- return Number(t);
21
- });
22
- var direction = (_imageDataElem$getAtt = imageDataElem.getAttribute('Direction')) === null || _imageDataElem$getAtt === void 0 ? void 0 : _imageDataElem$getAtt.split(' ').map(function (t) {
23
- return Number(t);
24
- });
25
- var pieces = imageDataElem.getElementsByTagName('Piece');
26
- var nbPieces = pieces.length;
27
-
28
- for (var outputIndex = 0; outputIndex < nbPieces; outputIndex++) {
12
+ publicAPI.parseXML = (rootElem, type, compressor, byteOrder, headerType) => {
13
+ const imageDataElem = rootElem.getElementsByTagName(model.dataType)[0];
14
+ const origin = imageDataElem.getAttribute('Origin').split(' ').map(t => Number(t));
15
+ const spacing = imageDataElem.getAttribute('Spacing').split(' ').map(t => Number(t));
16
+ const direction = imageDataElem.getAttribute('Direction')?.split(' ').map(t => Number(t));
17
+ const pieces = imageDataElem.getElementsByTagName('Piece');
18
+ const nbPieces = pieces.length;
19
+ for (let outputIndex = 0; outputIndex < nbPieces; outputIndex++) {
29
20
  // Create image data
30
- var piece = pieces[outputIndex];
31
- var extent = piece.getAttribute('Extent').split(' ').map(function (t) {
32
- return Number(t);
21
+ const piece = pieces[outputIndex];
22
+ const extent = piece.getAttribute('Extent').split(' ').map(t => Number(t));
23
+ const imageData = vtkImageData.newInstance({
24
+ origin,
25
+ spacing,
26
+ direction,
27
+ extent
33
28
  });
34
- var imageData = vtkImageData.newInstance({
35
- origin: origin,
36
- spacing: spacing,
37
- direction: direction,
38
- extent: extent
39
- }); // Fill data
40
29
 
30
+ // Fill data
41
31
  vtkXMLReader.processFieldData(imageData.getNumberOfPoints(), piece.getElementsByTagName('PointData')[0], imageData.getPointData(), compressor, byteOrder, headerType, model.binaryBuffer);
42
- vtkXMLReader.processFieldData(imageData.getNumberOfCells(), piece.getElementsByTagName('CellData')[0], imageData.getCellData(), compressor, byteOrder, headerType, model.binaryBuffer); // Add new output
32
+ vtkXMLReader.processFieldData(imageData.getNumberOfCells(), piece.getElementsByTagName('CellData')[0], imageData.getCellData(), compressor, byteOrder, headerType, model.binaryBuffer);
43
33
 
34
+ // Add new output
44
35
  model.output[outputIndex] = imageData;
45
36
  }
46
37
  };
47
- } // ----------------------------------------------------------------------------
38
+ }
39
+
40
+ // ----------------------------------------------------------------------------
48
41
  // Object factory
49
42
  // ----------------------------------------------------------------------------
50
43
 
51
-
52
- var DEFAULT_VALUES = {
44
+ const DEFAULT_VALUES = {
53
45
  dataType: 'ImageData'
54
- }; // ----------------------------------------------------------------------------
46
+ };
47
+
48
+ // ----------------------------------------------------------------------------
55
49
 
56
50
  function extend(publicAPI, model) {
57
- var initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
51
+ let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
58
52
  Object.assign(model, DEFAULT_VALUES, initialValues);
59
53
  vtkXMLReader.extend(publicAPI, model, initialValues);
60
54
  vtkXMLImageDataReader(publicAPI, model);
61
- } // ----------------------------------------------------------------------------
55
+ }
62
56
 
63
- var newInstance = macro.newInstance(extend, 'vtkXMLImageDataReader'); // ----------------------------------------------------------------------------
57
+ // ----------------------------------------------------------------------------
58
+
59
+ const newInstance = macro.newInstance(extend, 'vtkXMLImageDataReader');
60
+
61
+ // ----------------------------------------------------------------------------
64
62
 
65
63
  var vtkXMLImageDataReader$1 = {
66
- newInstance: newInstance,
67
- extend: extend
64
+ newInstance,
65
+ extend
68
66
  };
69
67
 
70
68
  export { vtkXMLImageDataReader$1 as default, extend, newInstance };