@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,110 +1,89 @@
1
- import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
2
- import macro from '../../macros.js';
1
+ import { m as macro } from '../../macros2.js';
3
2
  import vtkPolyData from '../../Common/DataModel/PolyData.js';
4
3
  import vtkMatrixBuilder from '../../Common/Core/MatrixBuilder.js';
5
4
  import vtkDataArray from '../../Common/Core/DataArray.js';
6
5
 
6
+ // ----------------------------------------------------------------------------
7
7
  // vtkConcentricCylinderSource methods
8
8
  // ----------------------------------------------------------------------------
9
9
 
10
10
  function vtkConcentricCylinderSource(publicAPI, model) {
11
11
  // Set our className
12
- model.classHierarchy.push('vtkConcentricCylinderSource'); // Internal private function
12
+ model.classHierarchy.push('vtkConcentricCylinderSource');
13
13
 
14
+ // Internal private function
14
15
  function validateCellFields() {
15
16
  while (model.cellFields.length < model.radius.length) {
16
17
  model.cellFields.push(model.cellFields.length);
17
18
  }
18
19
  }
19
-
20
- publicAPI.clearRadius = function () {
20
+ publicAPI.clearRadius = () => {
21
21
  model.radius = [];
22
22
  model.cellFields = [];
23
23
  publicAPI.modified();
24
24
  };
25
-
26
- publicAPI.addRadius = function (radius, cellField) {
25
+ publicAPI.addRadius = (radius, cellField) => {
27
26
  model.radius.push(radius);
28
-
29
27
  if (cellField !== undefined) {
30
28
  model.cellFields.push(cellField);
31
29
  }
32
-
33
30
  validateCellFields();
34
31
  publicAPI.modified();
35
32
  };
36
-
37
- publicAPI.getNumberOfRadius = function () {
38
- return model.radius.length;
39
- };
40
-
33
+ publicAPI.getNumberOfRadius = () => model.radius.length;
41
34
  publicAPI.getRadius = function () {
42
- var index = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
35
+ let index = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
43
36
  return model.radius[index];
44
37
  };
45
-
46
- publicAPI.setRadius = function (index, radius) {
38
+ publicAPI.setRadius = (index, radius) => {
47
39
  model.radius[index] = radius;
48
40
  publicAPI.modified();
49
41
  };
50
-
51
- publicAPI.setCellField = function (index, field) {
42
+ publicAPI.setCellField = (index, field) => {
52
43
  model.cellFields[index] = field;
53
44
  publicAPI.modified();
54
45
  };
55
-
56
- publicAPI.removeMask = function () {
46
+ publicAPI.removeMask = () => {
57
47
  model.mask = null;
58
48
  publicAPI.modified();
59
49
  };
60
-
61
- publicAPI.setMaskLayer = function (index, hidden) {
62
- var changeDetected = false;
63
-
50
+ publicAPI.setMaskLayer = (index, hidden) => {
51
+ let changeDetected = false;
64
52
  if (!model.mask && hidden) {
65
53
  changeDetected = true;
66
54
  model.mask = [];
67
55
  }
68
-
69
56
  if (model.mask) {
70
57
  if (!model.mask[index] !== !hidden) {
71
58
  changeDetected = true;
72
59
  }
73
-
74
60
  model.mask[index] = hidden;
75
61
  }
76
-
77
62
  if (changeDetected) {
78
63
  publicAPI.modified();
79
64
  }
80
65
  };
81
-
82
- publicAPI.getMaskLayer = function (index) {
83
- return index === undefined ? model.mask : model.mask[index];
84
- };
85
-
66
+ publicAPI.getMaskLayer = index => index === undefined ? model.mask : model.mask[index];
86
67
  function requestData(inData, outData) {
87
- var _vtkMatrixBuilder$bui;
88
-
89
68
  if (model.deleted || !model.radius.length) {
90
69
  return;
91
- } // Make sure we have consistency
92
-
70
+ }
93
71
 
72
+ // Make sure we have consistency
94
73
  validateCellFields();
95
- var dataset = outData[0];
96
- var numLayers = model.radius.length;
97
- var zRef = model.height / 2.0; // Compute cell count
98
-
99
- var cellArraySize = 0;
100
- var numCells = 0;
101
- var startTheta = model.startTheta < model.endTheta ? model.startTheta : model.endTheta;
74
+ let dataset = outData[0];
75
+ const numLayers = model.radius.length;
76
+ const zRef = model.height / 2.0;
77
+
78
+ // Compute cell count
79
+ let cellArraySize = 0;
80
+ let numCells = 0;
81
+ let startTheta = model.startTheta < model.endTheta ? model.startTheta : model.endTheta;
102
82
  startTheta *= Math.PI / 180.0;
103
- var endTheta = model.endTheta > model.startTheta ? model.endTheta : model.startTheta;
83
+ let endTheta = model.endTheta > model.startTheta ? model.endTheta : model.startTheta;
104
84
  endTheta *= Math.PI / 180.0;
105
- var thetaResolution = model.resolution;
106
- var partialDisk = false;
107
-
85
+ let thetaResolution = model.resolution;
86
+ let partialDisk = false;
108
87
  if (endTheta >= startTheta + 2 * Math.PI) {
109
88
  // complete, closed cylinder
110
89
  endTheta = startTheta + 2 * Math.PI;
@@ -114,10 +93,10 @@ function vtkConcentricCylinderSource(publicAPI, model) {
114
93
  ++thetaResolution;
115
94
  partialDisk = true;
116
95
  }
96
+ const deltaTheta = (endTheta - startTheta) / model.resolution;
97
+ const numberOfPoints = thetaResolution * numLayers * 2 + 2;
117
98
 
118
- var deltaTheta = (endTheta - startTheta) / model.resolution;
119
- var numberOfPoints = thetaResolution * numLayers * 2 + 2; // 5 entries per poly, 4 polys (top, bottom, in, out) per resolution
120
-
99
+ // 5 entries per poly, 4 polys (top, bottom, in, out) per resolution
121
100
  if (!model.skipInnerFaces && !model.mask) {
122
101
  // We keep everything
123
102
  cellArraySize = 2 * (thetaResolution + 1) + 5 * thetaResolution + (numLayers - 1) * thetaResolution * 20 + (partialDisk ? 10 * numLayers : 0);
@@ -128,10 +107,9 @@ function vtkConcentricCylinderSource(publicAPI, model) {
128
107
  if (!model.mask[0]) {
129
108
  cellArraySize += 2 * (thetaResolution + 1) + 5 * thetaResolution + (partialDisk ? 10 : 0);
130
109
  numCells += 2 + thetaResolution + (partialDisk ? 2 : 0);
131
- } // Handle inside cylinders
132
-
133
-
134
- for (var layer = 1; layer < numLayers; layer++) {
110
+ }
111
+ // Handle inside cylinders
112
+ for (let layer = 1; layer < numLayers; layer++) {
135
113
  if (!model.mask[layer]) {
136
114
  // Add inside cylinder count
137
115
  cellArraySize += thetaResolution * 20 + (partialDisk ? 10 : 0);
@@ -144,48 +122,51 @@ function vtkConcentricCylinderSource(publicAPI, model) {
144
122
  // core handling
145
123
  cellArraySize += 2 * (thetaResolution + 1) + (partialDisk ? 10 : 0);
146
124
  numCells += 2 + (partialDisk ? 2 : 0);
147
-
148
125
  if (model.radius.length === 1 || !model.skipInnerFaces || model.mask && model.mask[1]) {
149
126
  // add side faces
150
127
  cellArraySize += 5 * thetaResolution;
151
128
  numCells += thetaResolution;
152
129
  }
153
- } // Handle inside cylinders
154
-
130
+ }
155
131
 
156
- for (var _layer = 1; _layer < numLayers; _layer++) {
157
- if (!model.skipInnerFaces || !model.mask || !model.mask[_layer]) {
158
- var lastLayer = numLayers - 1 === _layer; // Add inside cylinder
132
+ // Handle inside cylinders
133
+ for (let layer = 1; layer < numLayers; layer++) {
134
+ if (!model.skipInnerFaces || !model.mask || !model.mask[layer]) {
135
+ const lastLayer = numLayers - 1 === layer;
159
136
 
137
+ // Add inside cylinder
160
138
  cellArraySize += thetaResolution * 10 + (partialDisk ? 10 : 0);
161
139
  numCells += thetaResolution * 2 + (partialDisk ? 2 : 0); // top + bottom + side caps
162
- // Do we add innerFaces
163
140
 
164
- if (!model.skipInnerFaces || model.mask && model.mask[_layer - 1]) {
141
+ // Do we add innerFaces
142
+ if (!model.skipInnerFaces || model.mask && model.mask[layer - 1]) {
165
143
  cellArraySize += thetaResolution * 5;
166
144
  numCells += thetaResolution;
167
- } // Do we add outerFaces
168
-
145
+ }
169
146
 
170
- if (lastLayer || !model.skipInnerFaces || model.mask && model.mask[_layer + 1]) {
147
+ // Do we add outerFaces
148
+ if (lastLayer || !model.skipInnerFaces || model.mask && model.mask[layer + 1]) {
171
149
  cellArraySize += thetaResolution * 5;
172
150
  numCells += thetaResolution;
173
151
  }
174
152
  }
175
153
  }
176
- } // Points
154
+ }
177
155
 
156
+ // Points
157
+ let pointIdx = 0;
158
+ const points = macro.newTypedArray(model.pointType, numberOfPoints * 3);
178
159
 
179
- var pointIdx = 0;
180
- var points = macro.newTypedArray(model.pointType, numberOfPoints * 3); // Cells
160
+ // Cells
161
+ let cellLocation = 0;
162
+ const polys = new Uint32Array(cellArraySize);
181
163
 
182
- var cellLocation = 0;
183
- var polys = new Uint32Array(cellArraySize); // CellFields
164
+ // CellFields
165
+ let fieldLocation = 0;
166
+ const field = new Float32Array(numCells);
184
167
 
185
- var fieldLocation = 0;
186
- var field = new Float32Array(numCells); // Create points
168
+ // Create points
187
169
  // First two are centered, top and bottom. Used only if partialDisk is true.
188
-
189
170
  points[pointIdx * 3 + 0] = 0;
190
171
  points[pointIdx * 3 + 1] = 0;
191
172
  points[pointIdx * 3 + 2] = zRef;
@@ -194,64 +175,60 @@ function vtkConcentricCylinderSource(publicAPI, model) {
194
175
  points[pointIdx * 3 + 1] = 0;
195
176
  points[pointIdx * 3 + 2] = -zRef;
196
177
  pointIdx++;
197
-
198
- for (var _layer2 = 0; _layer2 < numLayers; _layer2++) {
199
- var radius = model.radius[_layer2]; // Create top
200
-
201
- for (var i = 0; i < thetaResolution; i++) {
202
- var theta = startTheta + i * deltaTheta;
178
+ for (let layer = 0; layer < numLayers; layer++) {
179
+ const radius = model.radius[layer];
180
+ // Create top
181
+ for (let i = 0; i < thetaResolution; i++) {
182
+ const theta = startTheta + i * deltaTheta;
203
183
  points[pointIdx * 3 + 0] = radius * Math.cos(theta);
204
184
  points[pointIdx * 3 + 1] = radius * Math.sin(theta);
205
185
  points[pointIdx * 3 + 2] = zRef;
206
186
  pointIdx++;
207
- } // Create bottom
208
-
209
-
210
- for (var _i = 0; _i < thetaResolution; _i++) {
211
- var _theta = startTheta + _i * deltaTheta;
187
+ }
212
188
 
213
- points[pointIdx * 3 + 0] = radius * Math.cos(_theta);
214
- points[pointIdx * 3 + 1] = radius * Math.sin(_theta);
189
+ // Create bottom
190
+ for (let i = 0; i < thetaResolution; i++) {
191
+ const theta = startTheta + i * deltaTheta;
192
+ points[pointIdx * 3 + 0] = radius * Math.cos(theta);
193
+ points[pointIdx * 3 + 1] = radius * Math.sin(theta);
215
194
  points[pointIdx * 3 + 2] = -zRef;
216
195
  pointIdx++;
217
196
  }
218
- } // Create cells for the core
219
-
197
+ }
220
198
 
221
- var currentField = model.cellFields[0]; // Core: filtering
199
+ // Create cells for the core
200
+ let currentField = model.cellFields[0];
222
201
 
202
+ // Core: filtering
223
203
  if (!model.mask || !model.mask[0]) {
224
204
  // Core: Top disk
225
- field[fieldLocation++] = currentField; // partial adds the center point and the last point.
226
-
205
+ field[fieldLocation++] = currentField;
206
+ // partial adds the center point and the last point.
227
207
  polys[cellLocation++] = thetaResolution + (partialDisk ? 1 : 0);
228
208
  if (partialDisk) polys[cellLocation++] = 0;
209
+ for (let i = 0; i < thetaResolution; i++) {
210
+ polys[cellLocation++] = i + 2;
211
+ }
229
212
 
230
- for (var _i2 = 0; _i2 < thetaResolution; _i2++) {
231
- polys[cellLocation++] = _i2 + 2;
232
- } // Core: Bottom disk
233
-
234
-
213
+ // Core: Bottom disk
235
214
  field[fieldLocation++] = currentField;
236
215
  polys[cellLocation++] = thetaResolution + (partialDisk ? 1 : 0);
237
216
  if (partialDisk) polys[cellLocation++] = 1;
217
+ for (let i = 0; i < thetaResolution; i++) {
218
+ polys[cellLocation++] = 2 * thetaResolution - i - 1 + 2;
219
+ }
238
220
 
239
- for (var _i3 = 0; _i3 < thetaResolution; _i3++) {
240
- polys[cellLocation++] = 2 * thetaResolution - _i3 - 1 + 2;
241
- } // Core: sides
242
-
243
-
221
+ // Core: sides
244
222
  if (!model.skipInnerFaces || model.mask && model.mask[1] || numLayers === 1) {
245
- for (var _i4 = 0; _i4 < model.resolution; _i4++) {
223
+ for (let i = 0; i < model.resolution; i++) {
246
224
  polys[cellLocation++] = 4;
247
- polys[cellLocation++] = (_i4 + 1) % thetaResolution + 2;
248
- polys[cellLocation++] = _i4 + 2;
249
- polys[cellLocation++] = _i4 + thetaResolution + 2;
250
- polys[cellLocation++] = (_i4 + 1) % thetaResolution + thetaResolution + 2;
225
+ polys[cellLocation++] = (i + 1) % thetaResolution + 2;
226
+ polys[cellLocation++] = i + 2;
227
+ polys[cellLocation++] = i + thetaResolution + 2;
228
+ polys[cellLocation++] = (i + 1) % thetaResolution + thetaResolution + 2;
251
229
  field[fieldLocation++] = currentField;
252
230
  }
253
231
  }
254
-
255
232
  if (partialDisk) {
256
233
  polys[cellLocation++] = 4;
257
234
  polys[cellLocation++] = 2;
@@ -266,115 +243,108 @@ function vtkConcentricCylinderSource(publicAPI, model) {
266
243
  polys[cellLocation++] = 1;
267
244
  field[fieldLocation++] = currentField;
268
245
  }
269
- } // Create cells for the layers
270
-
246
+ }
271
247
 
272
- for (var _layer3 = 1; _layer3 < numLayers; _layer3++) {
248
+ // Create cells for the layers
249
+ for (let layer = 1; layer < numLayers; layer++) {
273
250
  // Skip layer if masked
274
- if (model.mask && model.mask[_layer3]) {
251
+ if (model.mask && model.mask[layer]) {
275
252
  /* eslint-disable no-continue */
276
253
  continue;
277
254
  /* eslint-enable no-continue */
278
- } // two for center points, then skip previous layer's points
279
-
280
-
281
- var offset = thetaResolution * 2 * (_layer3 - 1) + 2;
282
- var a = offset + 2 * thetaResolution; // next layer offset
283
-
284
- var _lastLayer = numLayers - 1 === _layer3;
255
+ }
285
256
 
286
- currentField = model.cellFields[_layer3]; // Create top
257
+ // two for center points, then skip previous layer's points
258
+ const offset = thetaResolution * 2 * (layer - 1) + 2;
259
+ const a = offset + 2 * thetaResolution; // next layer offset
260
+ const lastLayer = numLayers - 1 === layer;
261
+ currentField = model.cellFields[layer];
287
262
 
288
- for (var _i5 = 0; _i5 < model.resolution; _i5++) {
263
+ // Create top
264
+ for (let i = 0; i < model.resolution; i++) {
289
265
  polys[cellLocation++] = 4;
290
- polys[cellLocation++] = _i5 + offset;
291
- polys[cellLocation++] = (_i5 + 1) % thetaResolution + offset;
292
- polys[cellLocation++] = (_i5 + 1) % thetaResolution + a;
293
- polys[cellLocation++] = _i5 + a;
266
+ polys[cellLocation++] = i + offset;
267
+ polys[cellLocation++] = (i + 1) % thetaResolution + offset;
268
+ polys[cellLocation++] = (i + 1) % thetaResolution + a;
269
+ polys[cellLocation++] = i + a;
294
270
  field[fieldLocation++] = currentField;
295
- } // Create bottom
296
-
271
+ }
297
272
 
298
- for (var _i6 = 0; _i6 < model.resolution; _i6++) {
273
+ // Create bottom
274
+ for (let i = 0; i < model.resolution; i++) {
299
275
  polys[cellLocation++] = 4;
300
- polys[cellLocation++] = (_i6 + 1) % thetaResolution + offset + thetaResolution;
301
- polys[cellLocation++] = _i6 + offset + thetaResolution;
302
- polys[cellLocation++] = _i6 + a + thetaResolution;
303
- polys[cellLocation++] = (_i6 + 1) % thetaResolution + a + thetaResolution;
276
+ polys[cellLocation++] = (i + 1) % thetaResolution + offset + thetaResolution;
277
+ polys[cellLocation++] = i + offset + thetaResolution;
278
+ polys[cellLocation++] = i + a + thetaResolution;
279
+ polys[cellLocation++] = (i + 1) % thetaResolution + a + thetaResolution;
304
280
  field[fieldLocation++] = currentField;
305
- } // Create inner
306
-
281
+ }
307
282
 
308
- if (!model.skipInnerFaces || model.mask && model.mask[_layer3 - 1]) {
309
- for (var _i7 = 0; _i7 < model.resolution; _i7++) {
283
+ // Create inner
284
+ if (!model.skipInnerFaces || model.mask && model.mask[layer - 1]) {
285
+ for (let i = 0; i < model.resolution; i++) {
310
286
  polys[cellLocation++] = 4;
311
- polys[cellLocation++] = _i7 + offset;
312
- polys[cellLocation++] = (_i7 + 1) % thetaResolution + offset;
313
- polys[cellLocation++] = (_i7 + 1) % thetaResolution + thetaResolution + offset;
314
- polys[cellLocation++] = _i7 + thetaResolution + offset;
287
+ polys[cellLocation++] = i + offset;
288
+ polys[cellLocation++] = (i + 1) % thetaResolution + offset;
289
+ polys[cellLocation++] = (i + 1) % thetaResolution + thetaResolution + offset;
290
+ polys[cellLocation++] = i + thetaResolution + offset;
315
291
  field[fieldLocation++] = currentField;
316
292
  }
317
- } // Create outer
318
-
293
+ }
319
294
 
320
- if (!model.skipInnerFaces || _lastLayer || model.mask && (model.mask[_layer3 + 1] || _lastLayer)) {
321
- for (var _i8 = 0; _i8 < model.resolution; _i8++) {
295
+ // Create outer
296
+ if (!model.skipInnerFaces || lastLayer || model.mask && (model.mask[layer + 1] || lastLayer)) {
297
+ for (let i = 0; i < model.resolution; i++) {
322
298
  polys[cellLocation++] = 4;
323
- polys[cellLocation++] = (_i8 + 1) % thetaResolution + a;
324
- polys[cellLocation++] = _i8 + a;
325
- polys[cellLocation++] = _i8 + thetaResolution + a;
326
- polys[cellLocation++] = (_i8 + 1) % thetaResolution + thetaResolution + a;
299
+ polys[cellLocation++] = (i + 1) % thetaResolution + a;
300
+ polys[cellLocation++] = i + a;
301
+ polys[cellLocation++] = i + thetaResolution + a;
302
+ polys[cellLocation++] = (i + 1) % thetaResolution + thetaResolution + a;
327
303
  field[fieldLocation++] = currentField;
328
304
  }
329
- } // create caps
330
-
331
-
305
+ }
306
+ // create caps
332
307
  if (partialDisk) {
333
308
  polys[cellLocation++] = 4;
334
309
  polys[cellLocation++] = a; // from first outer
335
-
336
310
  polys[cellLocation++] = offset; // first inner
337
-
338
311
  polys[cellLocation++] = thetaResolution + offset; // first inner
339
-
340
312
  polys[cellLocation++] = thetaResolution + a; // first outer
341
313
 
342
314
  field[fieldLocation++] = currentField;
343
315
  polys[cellLocation++] = 4;
344
316
  polys[cellLocation++] = model.resolution + a; // last outer
345
-
346
317
  polys[cellLocation++] = model.resolution + offset; // last inner
347
-
348
318
  polys[cellLocation++] = model.resolution + thetaResolution + offset; // last inner
349
-
350
319
  polys[cellLocation++] = model.resolution + thetaResolution + a; // last outer
351
320
 
352
321
  field[fieldLocation++] = currentField;
353
322
  }
354
- } // Apply transformation to the point coordinates
355
-
356
-
357
- (_vtkMatrixBuilder$bui = vtkMatrixBuilder.buildFromRadian()).translate.apply(_vtkMatrixBuilder$bui, _toConsumableArray(model.center)).rotateFromDirections([0, 0, 1], model.direction).apply(points);
323
+ }
358
324
 
325
+ // Apply transformation to the point coordinates
326
+ vtkMatrixBuilder.buildFromRadian().translate(...model.center).rotateFromDirections([0, 0, 1], model.direction).apply(points);
359
327
  dataset = vtkPolyData.newInstance();
360
328
  dataset.getPoints().setData(points, 3);
361
329
  dataset.getPolys().setData(polys, 1);
362
330
  dataset.getCellData().setScalars(vtkDataArray.newInstance({
363
331
  name: 'layer',
364
332
  values: field
365
- })); // Update output
333
+ }));
366
334
 
335
+ // Update output
367
336
  outData[0] = dataset;
368
- } // Expose methods
369
-
337
+ }
370
338
 
339
+ // Expose methods
371
340
  publicAPI.requestData = requestData;
372
- } // ----------------------------------------------------------------------------
341
+ }
342
+
343
+ // ----------------------------------------------------------------------------
373
344
  // Object factory
374
345
  // ----------------------------------------------------------------------------
375
346
 
376
-
377
- var DEFAULT_VALUES = {
347
+ const DEFAULT_VALUES = {
378
348
  height: 1.0,
379
349
  radius: [0.5],
380
350
  cellFields: [1],
@@ -387,25 +357,32 @@ var DEFAULT_VALUES = {
387
357
  mask: null,
388
358
  // If present, array to know if a layer should be skipped(=true)
389
359
  pointType: 'Float64Array'
390
- }; // ----------------------------------------------------------------------------
360
+ };
361
+
362
+ // ----------------------------------------------------------------------------
391
363
 
392
364
  function extend(publicAPI, model) {
393
- var initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
394
- Object.assign(model, DEFAULT_VALUES, initialValues); // Build VTK API
365
+ let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
366
+ Object.assign(model, DEFAULT_VALUES, initialValues);
395
367
 
368
+ // Build VTK API
396
369
  macro.obj(publicAPI, model);
397
370
  macro.setGet(publicAPI, model, ['height', 'resolution', 'startTheta', 'endTheta', 'skipInnerFaces']);
398
371
  macro.setGetArray(publicAPI, model, ['center', 'direction'], 3);
399
372
  macro.getArray(publicAPI, model, ['cellFields']);
400
373
  macro.algo(publicAPI, model, 0, 1);
401
374
  vtkConcentricCylinderSource(publicAPI, model);
402
- } // ----------------------------------------------------------------------------
375
+ }
376
+
377
+ // ----------------------------------------------------------------------------
403
378
 
404
- var newInstance = macro.newInstance(extend, 'vtkConcentricCylinderSource'); // ----------------------------------------------------------------------------
379
+ const newInstance = macro.newInstance(extend, 'vtkConcentricCylinderSource');
380
+
381
+ // ----------------------------------------------------------------------------
405
382
 
406
383
  var vtkConcentricCylinderSource$1 = {
407
- newInstance: newInstance,
408
- extend: extend
384
+ newInstance,
385
+ extend
409
386
  };
410
387
 
411
388
  export { vtkConcentricCylinderSource$1 as default, extend, newInstance };