@kitware/vtk.js 28.10.1 → 28.11.0

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