@kitware/vtk.js 28.10.2 → 28.11.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (566) hide show
  1. package/Common/Core/Base64.js +53 -82
  2. package/Common/Core/CellArray.js +52 -60
  3. package/Common/Core/ClassHierarchy.js +8 -36
  4. package/Common/Core/DataArray/Constants.js +6 -6
  5. package/Common/Core/DataArray.js +193 -277
  6. package/Common/Core/Endian.js +14 -17
  7. package/Common/Core/HalfFloat.js +17 -34
  8. package/Common/Core/ImageHelper.js +17 -25
  9. package/Common/Core/LookupTable.js +131 -144
  10. package/Common/Core/Math/Constants.js +8 -8
  11. package/Common/Core/Math/index.js +754 -942
  12. package/Common/Core/Math.js +2 -4
  13. package/Common/Core/MatrixBuilder.js +99 -151
  14. package/Common/Core/Points.js +43 -43
  15. package/Common/Core/PriorityQueue.js +30 -28
  16. package/Common/Core/ProgressHandler.js +31 -32
  17. package/Common/Core/ScalarsToColors/Constants.js +4 -4
  18. package/Common/Core/ScalarsToColors.js +196 -253
  19. package/Common/Core/StringArray.js +48 -73
  20. package/Common/Core/URLExtract.js +10 -29
  21. package/Common/Core/VariantArray.js +48 -73
  22. package/Common/Core.js +11 -11
  23. package/Common/DataModel/AbstractPointLocator.js +19 -17
  24. package/Common/DataModel/BoundingBox.js +322 -490
  25. package/Common/DataModel/Box.js +46 -63
  26. package/Common/DataModel/CardinalSpline1D.js +92 -102
  27. package/Common/DataModel/Cell.js +41 -61
  28. package/Common/DataModel/CellLinks.js +91 -127
  29. package/Common/DataModel/CellTypes/Constants.js +7 -6
  30. package/Common/DataModel/CellTypes.js +55 -74
  31. package/Common/DataModel/Collection.js +45 -61
  32. package/Common/DataModel/Cone.js +28 -20
  33. package/Common/DataModel/Cylinder.js +41 -35
  34. package/Common/DataModel/DataSet/Constants.js +11 -5
  35. package/Common/DataModel/DataSet.js +37 -25
  36. package/Common/DataModel/DataSetAttributes/Constants.js +18 -18
  37. package/Common/DataModel/DataSetAttributes/FieldData.js +103 -194
  38. package/Common/DataModel/DataSetAttributes.js +96 -138
  39. package/Common/DataModel/EdgeLocator.js +45 -70
  40. package/Common/DataModel/ITKHelper.js +67 -137
  41. package/Common/DataModel/ImageData.js +115 -172
  42. package/Common/DataModel/ImplicitBoolean/Constants.js +2 -2
  43. package/Common/DataModel/ImplicitBoolean.js +66 -96
  44. package/Common/DataModel/IncrementalOctreeNode.js +201 -231
  45. package/Common/DataModel/IncrementalOctreePointLocator.js +160 -198
  46. package/Common/DataModel/KochanekSpline1D.js +78 -81
  47. package/Common/DataModel/Line/Constants.js +2 -2
  48. package/Common/DataModel/Line.js +82 -105
  49. package/Common/DataModel/Locator.js +17 -10
  50. package/Common/DataModel/Molecule.js +26 -17
  51. package/Common/DataModel/PiecewiseFunction.js +218 -239
  52. package/Common/DataModel/Plane.js +90 -113
  53. package/Common/DataModel/PointSet.js +30 -26
  54. package/Common/DataModel/PolyData/Constants.js +2 -2
  55. package/Common/DataModel/PolyData.js +95 -120
  56. package/Common/DataModel/PolyLine.js +44 -61
  57. package/Common/DataModel/Polygon/Constants.js +4 -4
  58. package/Common/DataModel/Polygon.js +128 -169
  59. package/Common/DataModel/Quad/Constants.js +2 -2
  60. package/Common/DataModel/Quad.js +61 -100
  61. package/Common/DataModel/SelectionNode/Constants.js +5 -4
  62. package/Common/DataModel/SelectionNode.js +25 -21
  63. package/Common/DataModel/Sphere.js +40 -35
  64. package/Common/DataModel/Spline1D/Constants.js +3 -2
  65. package/Common/DataModel/Spline1D.js +34 -18
  66. package/Common/DataModel/Spline3D/Constants.js +2 -2
  67. package/Common/DataModel/Spline3D.js +46 -41
  68. package/Common/DataModel/StructuredData/Constants.js +2 -2
  69. package/Common/DataModel/StructuredData.js +9 -20
  70. package/Common/DataModel/Triangle.js +207 -250
  71. package/Common/DataModel.js +19 -19
  72. package/Common/System/MobileVR.js +56 -61
  73. package/Common/System/TimerLog.js +1 -1
  74. package/Common/System.js +2 -2
  75. package/Common/Transform/LandmarkTransform/Constants.js +2 -2
  76. package/Common/Transform/LandmarkTransform.js +133 -117
  77. package/Common/Transform/Transform.js +42 -57
  78. package/Common/Transform.js +2 -2
  79. package/Common/index.js +4 -4
  80. package/Filters/Core/Cutter.js +134 -146
  81. package/Filters/Core/PolyDataNormals.js +44 -50
  82. package/Filters/Core.js +2 -2
  83. package/Filters/Cornerstone/ImageDataToCornerstoneImage.js +45 -33
  84. package/Filters/Cornerstone.js +1 -1
  85. package/Filters/General/AppendPolyData.js +84 -100
  86. package/Filters/General/Calculator.js +95 -163
  87. package/Filters/General/ClipClosedSurface/Constants.js +2 -2
  88. package/Filters/General/ClipClosedSurface.js +341 -416
  89. package/Filters/General/ClosedPolyLineToSurfaceFilter.js +141 -156
  90. package/Filters/General/ContourTriangulator/Constants.js +2 -2
  91. package/Filters/General/ContourTriangulator/helper.js +684 -812
  92. package/Filters/General/ContourTriangulator.js +92 -89
  93. package/Filters/General/ImageCropFilter.js +77 -78
  94. package/Filters/General/ImageDataOutlineFilter.js +42 -36
  95. package/Filters/General/ImageMarchingCubes/caseTable.js +9 -521
  96. package/Filters/General/ImageMarchingCubes.js +99 -112
  97. package/Filters/General/ImageMarchingSquares/caseTable.js +9 -41
  98. package/Filters/General/ImageMarchingSquares.js +93 -118
  99. package/Filters/General/ImageOutlineFilter.js +53 -54
  100. package/Filters/General/ImageSliceFilter.js +39 -30
  101. package/Filters/General/ImageStreamline.js +107 -124
  102. package/Filters/General/LineFilter.js +26 -15
  103. package/Filters/General/MoleculeToRepresentation.js +136 -149
  104. package/Filters/General/OBBTree/OBBNode.js +36 -34
  105. package/Filters/General/OBBTree/helper.js +19 -24
  106. package/Filters/General/OBBTree.js +396 -488
  107. package/Filters/General/OutlineFilter.js +52 -34
  108. package/Filters/General/PaintFilter/PaintFilter.worker.js +93 -130
  109. package/Filters/General/PaintFilter.js +150 -162
  110. package/Filters/General/ScalarToRGBA.js +38 -33
  111. package/Filters/General/TriangleFilter.js +65 -62
  112. package/Filters/General/TubeFilter/Constants.js +4 -4
  113. package/Filters/General/TubeFilter.js +376 -496
  114. package/Filters/General/WarpScalar.js +58 -60
  115. package/Filters/General/WindowedSincPolyDataFilter.js +258 -330
  116. package/Filters/General.js +21 -21
  117. package/Filters/Sources/Arrow2DSource/Constants.js +2 -2
  118. package/Filters/Sources/Arrow2DSource.js +56 -56
  119. package/Filters/Sources/ArrowSource.js +39 -29
  120. package/Filters/Sources/CircleSource.js +43 -43
  121. package/Filters/Sources/ConcentricCylinderSource.js +151 -174
  122. package/Filters/Sources/ConeSource.js +51 -42
  123. package/Filters/Sources/CubeSource.js +75 -96
  124. package/Filters/Sources/Cursor3D.js +94 -109
  125. package/Filters/Sources/CylinderSource.js +90 -90
  126. package/Filters/Sources/ImageGridSource.js +43 -43
  127. package/Filters/Sources/LineSource.js +49 -39
  128. package/Filters/Sources/PlaneSource.js +97 -104
  129. package/Filters/Sources/PointSource.js +46 -37
  130. package/Filters/Sources/RTAnalyticSource.js +50 -48
  131. package/Filters/Sources/SLICSource.js +63 -73
  132. package/Filters/Sources/SphereSource.js +88 -78
  133. package/Filters/Sources/ViewFinderSource.js +26 -23
  134. package/Filters/Sources.js +14 -14
  135. package/Filters/Texture/TextureMapToPlane.js +95 -97
  136. package/Filters/Texture/TextureMapToSphere.js +46 -54
  137. package/Filters/Texture.js +2 -2
  138. package/Filters/index.js +5 -5
  139. package/IO/Core/BinaryHelper.js +12 -18
  140. package/IO/Core/DataAccessHelper/HtmlDataAccessHelper.js +43 -59
  141. package/IO/Core/DataAccessHelper/HttpDataAccessHelper.js +76 -113
  142. package/IO/Core/DataAccessHelper/JSZipDataAccessHelper.js +62 -112
  143. package/IO/Core/DataAccessHelper/LiteHttpDataAccessHelper.js +76 -113
  144. package/IO/Core/DataAccessHelper.js +6 -6
  145. package/IO/Core/HttpDataSetReader.js +136 -139
  146. package/IO/Core/HttpDataSetSeriesReader.js +64 -75
  147. package/IO/Core/HttpSceneLoader.js +130 -179
  148. package/IO/Core/ImageStream/DefaultProtocol.js +29 -43
  149. package/IO/Core/ImageStream/ViewStream.js +100 -103
  150. package/IO/Core/ImageStream.js +62 -54
  151. package/IO/Core/ResourceLoader.js +10 -9
  152. package/IO/Core/Serializer/ArraySerializer.js +40 -40
  153. package/IO/Core/Serializer/FieldDataSerializer.js +18 -28
  154. package/IO/Core/Serializer/ImageDataSerializer.js +22 -23
  155. package/IO/Core/Serializer/PolyDataSerializer.js +17 -21
  156. package/IO/Core/Serializer.js +6 -13
  157. package/IO/Core/WSLinkClient.js +90 -76
  158. package/IO/Core/ZipMultiDataSetReader.js +46 -44
  159. package/IO/Core/ZipMultiDataSetWriter.js +43 -34
  160. package/IO/Core.js +7 -7
  161. package/IO/Geometry/DracoReader.js +118 -121
  162. package/IO/Geometry/PLYReader.js +163 -223
  163. package/IO/Geometry/PLYWriter/Constants.js +5 -5
  164. package/IO/Geometry/PLYWriter.js +139 -154
  165. package/IO/Geometry/STLReader.js +123 -146
  166. package/IO/Geometry/STLWriter/Constants.js +2 -2
  167. package/IO/Geometry/STLWriter.js +83 -82
  168. package/IO/Geometry.js +5 -5
  169. package/IO/Legacy/LegacyAsciiParser.js +78 -139
  170. package/IO/Legacy/PolyDataReader.js +48 -36
  171. package/IO/Legacy.js +2 -2
  172. package/IO/Misc/ElevationReader.js +67 -60
  173. package/IO/Misc/HttpDataSetLODsLoader.js +41 -38
  174. package/IO/Misc/ITKImageReader.js +58 -45
  175. package/IO/Misc/ITKPolyDataReader.js +50 -38
  176. package/IO/Misc/JSONNucleoReader.js +49 -42
  177. package/IO/Misc/JSONReader.js +38 -33
  178. package/IO/Misc/MTLReader.js +74 -119
  179. package/IO/Misc/OBJReader.js +153 -206
  180. package/IO/Misc/PDBReader.js +70 -68
  181. package/IO/Misc/SkyboxReader.js +77 -82
  182. package/IO/Misc.js +9 -9
  183. package/IO/XML/XMLImageDataReader.js +36 -38
  184. package/IO/XML/XMLImageDataWriter.js +28 -21
  185. package/IO/XML/XMLPolyDataReader.js +49 -46
  186. package/IO/XML/XMLPolyDataWriter.js +43 -42
  187. package/IO/XML/XMLReader.js +262 -304
  188. package/IO/XML/XMLWriter/Constants.js +3 -3
  189. package/IO/XML/XMLWriter.js +70 -84
  190. package/IO/XML.js +6 -6
  191. package/IO/index.js +5 -5
  192. package/Imaging/Core/AbstractImageInterpolator/Constants.js +4 -4
  193. package/Imaging/Core/AbstractImageInterpolator/InterpolationInfo.js +30 -27
  194. package/Imaging/Core/AbstractImageInterpolator.js +74 -87
  195. package/Imaging/Core/ImageInterpolator.js +201 -252
  196. package/Imaging/Core/ImagePointDataIterator.js +96 -122
  197. package/Imaging/Core/ImageReslice/Constants.js +2 -2
  198. package/Imaging/Core/ImageReslice.js +327 -464
  199. package/Imaging/Core.js +4 -4
  200. package/Imaging/Hybrid/SampleFunction.js +58 -51
  201. package/Imaging/Hybrid.js +1 -1
  202. package/Imaging/index.js +2 -2
  203. package/Interaction/Animations/TimeStepBasedAnimationHandler.js +39 -54
  204. package/Interaction/Manipulators/CompositeCameraManipulator.js +22 -13
  205. package/Interaction/Manipulators/CompositeGestureManipulator.js +31 -43
  206. package/Interaction/Manipulators/CompositeKeyboardManipulator.js +15 -11
  207. package/Interaction/Manipulators/CompositeMouseManipulator.js +27 -33
  208. package/Interaction/Manipulators/CompositeVRManipulator.js +22 -15
  209. package/Interaction/Manipulators/GestureCameraManipulator.js +54 -36
  210. package/Interaction/Manipulators/KeyboardCameraManipulator.js +95 -97
  211. package/Interaction/Manipulators/MouseBoxSelectorManipulator.js +70 -89
  212. package/Interaction/Manipulators/MouseCameraAxisRotateManipulator.js +67 -54
  213. package/Interaction/Manipulators/MouseCameraSliceManipulator.js +40 -38
  214. package/Interaction/Manipulators/MouseCameraTrackballFirstPersonManipulator.js +83 -68
  215. package/Interaction/Manipulators/MouseCameraTrackballMultiRotateManipulator.js +32 -28
  216. package/Interaction/Manipulators/MouseCameraTrackballPanManipulator.js +47 -40
  217. package/Interaction/Manipulators/MouseCameraTrackballRollManipulator.js +55 -43
  218. package/Interaction/Manipulators/MouseCameraTrackballRotateManipulator.js +56 -46
  219. package/Interaction/Manipulators/MouseCameraTrackballZoomManipulator.js +41 -46
  220. package/Interaction/Manipulators/MouseCameraTrackballZoomToMouseManipulator.js +29 -27
  221. package/Interaction/Manipulators/MouseCameraUnicamManipulator.js +123 -146
  222. package/Interaction/Manipulators/MouseCameraUnicamRotateManipulator.js +144 -166
  223. package/Interaction/Manipulators/MouseRangeManipulator.js +127 -132
  224. package/Interaction/Manipulators/VRButtonPanManipulator.js +33 -23
  225. package/Interaction/Manipulators.js +21 -21
  226. package/Interaction/Misc/DeviceOrientationToCamera.js +25 -47
  227. package/Interaction/Misc.js +1 -1
  228. package/Interaction/Style/InteractorStyleImage.js +101 -121
  229. package/Interaction/Style/InteractorStyleMPRSlice.js +111 -128
  230. package/Interaction/Style/InteractorStyleManipulator/Presets.js +9 -17
  231. package/Interaction/Style/InteractorStyleManipulator.js +254 -329
  232. package/Interaction/Style/InteractorStyleRemoteMouse.js +195 -180
  233. package/Interaction/Style/InteractorStyleTrackballCamera.js +154 -157
  234. package/Interaction/Style/InteractorStyleUnicam.js +30 -38
  235. package/Interaction/Style.js +5 -5
  236. package/Interaction/UI/CornerAnnotation/CornerAnnotation.module.css.js +1 -1
  237. package/Interaction/UI/CornerAnnotation.js +65 -48
  238. package/Interaction/UI/FPSMonitor.js +104 -105
  239. package/Interaction/UI/Icons.js +1 -1
  240. package/Interaction/UI/Slider/Constants.js +2 -2
  241. package/Interaction/UI/Slider.js +78 -95
  242. package/Interaction/UI/VolumeController.js +104 -97
  243. package/Interaction/UI.js +5 -5
  244. package/Interaction/Widgets/OrientationMarkerWidget/Constants.js +2 -2
  245. package/Interaction/Widgets/OrientationMarkerWidget.js +90 -135
  246. package/Interaction/Widgets/PiecewiseGaussianWidget/ComputeHistogram.worker.js +0 -3
  247. package/Interaction/Widgets/PiecewiseGaussianWidget.js +381 -498
  248. package/Interaction/Widgets.js +2 -2
  249. package/Interaction/index.js +5 -5
  250. package/Proxy/Animation/AbstractAnimationProxy.js +22 -15
  251. package/Proxy/Animation/AnimationProxyManager.js +43 -51
  252. package/Proxy/Animation/TimeStepBasedAnimationHandlerProxy.js +26 -19
  253. package/Proxy/Core/AbstractRepresentationProxy.js +97 -151
  254. package/Proxy/Core/LookupTableProxy/Constants.js +4 -4
  255. package/Proxy/Core/LookupTableProxy.js +49 -52
  256. package/Proxy/Core/PiecewiseFunctionProxy/Constants.js +4 -4
  257. package/Proxy/Core/PiecewiseFunctionProxy.js +63 -72
  258. package/Proxy/Core/ProxyManager/core.js +83 -106
  259. package/Proxy/Core/ProxyManager/properties.js +53 -76
  260. package/Proxy/Core/ProxyManager/state.js +100 -110
  261. package/Proxy/Core/ProxyManager/view.js +45 -55
  262. package/Proxy/Core/ProxyManager.js +16 -8
  263. package/Proxy/Core/SourceProxy.js +41 -38
  264. package/Proxy/Core/View2DProxy.js +143 -199
  265. package/Proxy/Core/ViewProxy.js +223 -269
  266. package/Proxy/Core.js +7 -7
  267. package/Proxy/Representations/GeometryRepresentationProxy.js +34 -20
  268. package/Proxy/Representations/GlyphRepresentationProxy.js +42 -41
  269. package/Proxy/Representations/MoleculeRepresentationProxy.js +32 -22
  270. package/Proxy/Representations/ResliceRepresentationProxy.js +48 -32
  271. package/Proxy/Representations/SkyboxRepresentationProxy.js +30 -29
  272. package/Proxy/Representations/SliceRepresentationProxy.js +93 -112
  273. package/Proxy/Representations/SlicedGeometryRepresentationProxy.js +46 -42
  274. package/Proxy/Representations/VolumeRepresentationProxy.js +108 -133
  275. package/Proxy/Representations.js +7 -7
  276. package/Proxy/index.js +2 -2
  277. package/README.md +1 -1
  278. package/Rendering/Core/AbstractImageMapper/helper.js +44 -49
  279. package/Rendering/Core/AbstractImageMapper.js +18 -19
  280. package/Rendering/Core/AbstractMapper.js +39 -55
  281. package/Rendering/Core/AbstractMapper3D.js +26 -31
  282. package/Rendering/Core/AbstractPicker.js +25 -21
  283. package/Rendering/Core/Actor.js +71 -93
  284. package/Rendering/Core/Actor2D.js +64 -78
  285. package/Rendering/Core/AnnotatedCubeActor/Presets.js +5 -11
  286. package/Rendering/Core/AnnotatedCubeActor.js +94 -79
  287. package/Rendering/Core/AxesActor.js +65 -87
  288. package/Rendering/Core/Camera.js +246 -271
  289. package/Rendering/Core/CellPicker.js +125 -148
  290. package/Rendering/Core/ColorTransferFunction/ColorMaps.js +20 -21
  291. package/Rendering/Core/ColorTransferFunction/ColorMapsLite.js +20 -21
  292. package/Rendering/Core/ColorTransferFunction/Constants.js +4 -4
  293. package/Rendering/Core/ColorTransferFunction.js +460 -546
  294. package/Rendering/Core/Coordinate/Constants.js +2 -2
  295. package/Rendering/Core/Coordinate.js +119 -198
  296. package/Rendering/Core/CubeAxesActor.js +294 -320
  297. package/Rendering/Core/Follower.js +46 -45
  298. package/Rendering/Core/Glyph3DMapper/Constants.js +4 -4
  299. package/Rendering/Core/Glyph3DMapper.js +96 -148
  300. package/Rendering/Core/HardwareSelector.js +36 -69
  301. package/Rendering/Core/ImageArrayMapper.js +87 -126
  302. package/Rendering/Core/ImageCPRMapper.js +134 -209
  303. package/Rendering/Core/ImageMapper/Constants.js +2 -2
  304. package/Rendering/Core/ImageMapper.js +85 -144
  305. package/Rendering/Core/ImageProperty/Constants.js +2 -2
  306. package/Rendering/Core/ImageProperty.js +66 -81
  307. package/Rendering/Core/ImageResliceMapper/Constants.js +2 -2
  308. package/Rendering/Core/ImageResliceMapper.js +36 -29
  309. package/Rendering/Core/ImageSlice.js +85 -127
  310. package/Rendering/Core/InteractorObserver.js +82 -73
  311. package/Rendering/Core/InteractorStyle/Constants.js +2 -2
  312. package/Rendering/Core/InteractorStyle.js +56 -58
  313. package/Rendering/Core/Light.js +43 -49
  314. package/Rendering/Core/Mapper/CoincidentTopologyHelper.js +37 -48
  315. package/Rendering/Core/Mapper/Constants.js +6 -6
  316. package/Rendering/Core/Mapper/Static.js +15 -12
  317. package/Rendering/Core/Mapper.js +194 -259
  318. package/Rendering/Core/Mapper2D.js +61 -100
  319. package/Rendering/Core/Picker.js +124 -143
  320. package/Rendering/Core/PixelSpaceCallbackMapper.js +40 -37
  321. package/Rendering/Core/PointPicker.js +68 -79
  322. package/Rendering/Core/Prop/Constants.js +2 -2
  323. package/Rendering/Core/Prop.js +58 -106
  324. package/Rendering/Core/Prop3D.js +54 -83
  325. package/Rendering/Core/Property/Constants.js +6 -6
  326. package/Rendering/Core/Property.js +45 -74
  327. package/Rendering/Core/Property2D/Constants.js +2 -2
  328. package/Rendering/Core/Property2D.js +33 -42
  329. package/Rendering/Core/RenderWindow.js +70 -82
  330. package/Rendering/Core/RenderWindowInteractor/Constants.js +7 -7
  331. package/Rendering/Core/RenderWindowInteractor.js +324 -439
  332. package/Rendering/Core/Renderer.js +192 -256
  333. package/Rendering/Core/ScalarBarActor.js +267 -272
  334. package/Rendering/Core/Skybox.js +26 -24
  335. package/Rendering/Core/SphereMapper.js +22 -12
  336. package/Rendering/Core/StickMapper.js +22 -12
  337. package/Rendering/Core/SurfaceLICInterface/Constants.js +6 -6
  338. package/Rendering/Core/SurfaceLICInterface.js +13 -9
  339. package/Rendering/Core/SurfaceLICMapper.js +23 -15
  340. package/Rendering/Core/Texture.js +99 -141
  341. package/Rendering/Core/Viewport.js +60 -88
  342. package/Rendering/Core/Volume.js +55 -77
  343. package/Rendering/Core/VolumeMapper/Constants.js +4 -4
  344. package/Rendering/Core/VolumeMapper.js +59 -91
  345. package/Rendering/Core/VolumeProperty/Constants.js +4 -4
  346. package/Rendering/Core/VolumeProperty.js +78 -115
  347. package/Rendering/Core.js +47 -49
  348. package/Rendering/Misc/CanvasView.js +62 -61
  349. package/Rendering/Misc/FullScreenRenderWindow.js +60 -62
  350. package/Rendering/Misc/GenericRenderWindow.js +48 -37
  351. package/Rendering/Misc/RemoteView.js +86 -80
  352. package/Rendering/Misc/RenderWindowWithControlBar.js +54 -48
  353. package/Rendering/Misc/SynchronizableRenderWindow/BehaviorManager/CameraSynchronizer.js +43 -51
  354. package/Rendering/Misc/SynchronizableRenderWindow/BehaviorManager.js +52 -82
  355. package/Rendering/Misc/SynchronizableRenderWindow/ObjectManager.js +258 -308
  356. package/Rendering/Misc/SynchronizableRenderWindow.js +133 -163
  357. package/Rendering/Misc/TextureLODsDownloader.js +72 -74
  358. package/Rendering/Misc.js +7 -7
  359. package/Rendering/OpenGL/Actor.js +57 -68
  360. package/Rendering/OpenGL/Actor2D.js +56 -56
  361. package/Rendering/OpenGL/BufferObject/Constants.js +2 -2
  362. package/Rendering/OpenGL/BufferObject.js +50 -65
  363. package/Rendering/OpenGL/Camera.js +35 -29
  364. package/Rendering/OpenGL/CellArrayBufferObject.js +119 -149
  365. package/Rendering/OpenGL/Convolution2DPass.js +87 -81
  366. package/Rendering/OpenGL/CubeAxesActor.js +28 -21
  367. package/Rendering/OpenGL/ForwardPass.js +53 -64
  368. package/Rendering/OpenGL/Framebuffer.js +61 -101
  369. package/Rendering/OpenGL/Glyph3DMapper.js +165 -196
  370. package/Rendering/OpenGL/HardwareSelector/Constants.js +2 -2
  371. package/Rendering/OpenGL/HardwareSelector.js +272 -397
  372. package/Rendering/OpenGL/Helper.js +58 -73
  373. package/Rendering/OpenGL/ImageCPRMapper.js +339 -421
  374. package/Rendering/OpenGL/ImageMapper.js +268 -361
  375. package/Rendering/OpenGL/ImageResliceMapper.js +306 -438
  376. package/Rendering/OpenGL/ImageSlice.js +48 -54
  377. package/Rendering/OpenGL/OrderIndependentTranslucentPass.js +102 -84
  378. package/Rendering/OpenGL/PixelSpaceCallbackMapper.js +43 -42
  379. package/Rendering/OpenGL/PolyDataMapper.js +358 -492
  380. package/Rendering/OpenGL/PolyDataMapper2D.js +153 -205
  381. package/Rendering/OpenGL/RadialDistortionPass.js +86 -89
  382. package/Rendering/OpenGL/RenderWindow/Constants.js +2 -2
  383. package/Rendering/OpenGL/RenderWindow/ContextProxy.js +20 -29
  384. package/Rendering/OpenGL/RenderWindow.js +356 -510
  385. package/Rendering/OpenGL/Renderer.js +77 -89
  386. package/Rendering/OpenGL/ReplacementShaderMapper.js +28 -46
  387. package/Rendering/OpenGL/ScalarBarActor.js +28 -21
  388. package/Rendering/OpenGL/Shader.js +37 -31
  389. package/Rendering/OpenGL/ShaderCache.js +67 -74
  390. package/Rendering/OpenGL/ShaderProgram.js +136 -248
  391. package/Rendering/OpenGL/Skybox.js +99 -60
  392. package/Rendering/OpenGL/SphereMapper.js +94 -108
  393. package/Rendering/OpenGL/StickMapper.js +110 -114
  394. package/Rendering/OpenGL/SurfaceLIC/LineIntegralConvolution2D/pingpong.js +91 -157
  395. package/Rendering/OpenGL/SurfaceLIC/LineIntegralConvolution2D.js +142 -151
  396. package/Rendering/OpenGL/SurfaceLIC/SurfaceLICInterface.js +142 -216
  397. package/Rendering/OpenGL/SurfaceLIC/SurfaceLICMapper.js +79 -100
  398. package/Rendering/OpenGL/SurfaceLIC.js +2 -2
  399. package/Rendering/OpenGL/Texture/Constants.js +4 -4
  400. package/Rendering/OpenGL/Texture.js +443 -608
  401. package/Rendering/OpenGL/TextureUnitManager.js +47 -43
  402. package/Rendering/OpenGL/VertexArrayObject.js +92 -131
  403. package/Rendering/OpenGL/ViewNodeFactory.js +25 -13
  404. package/Rendering/OpenGL/Volume.js +38 -34
  405. package/Rendering/OpenGL/VolumeMapper.js +437 -547
  406. package/Rendering/OpenGL.js +28 -28
  407. package/Rendering/SceneGraph/RenderPass.js +34 -31
  408. package/Rendering/SceneGraph/RenderWindowViewNode.js +68 -94
  409. package/Rendering/SceneGraph/ViewNode.js +82 -111
  410. package/Rendering/SceneGraph/ViewNodeFactory.js +31 -26
  411. package/Rendering/SceneGraph.js +4 -4
  412. package/Rendering/WebGPU/Actor.js +49 -49
  413. package/Rendering/WebGPU/Actor2D.js +45 -44
  414. package/Rendering/WebGPU/BindGroup.js +43 -50
  415. package/Rendering/WebGPU/Buffer.js +41 -50
  416. package/Rendering/WebGPU/BufferManager/Constants.js +4 -4
  417. package/Rendering/WebGPU/BufferManager.js +111 -141
  418. package/Rendering/WebGPU/Camera.js +65 -67
  419. package/Rendering/WebGPU/CellArrayMapper.js +621 -388
  420. package/Rendering/WebGPU/CubeAxesActor.js +28 -19
  421. package/Rendering/WebGPU/Device.js +78 -133
  422. package/Rendering/WebGPU/ForwardPass.js +75 -72
  423. package/Rendering/WebGPU/FullScreenQuad.js +25 -18
  424. package/Rendering/WebGPU/Glyph3DMapper.js +62 -74
  425. package/Rendering/WebGPU/HardwareSelectionPass.js +45 -38
  426. package/Rendering/WebGPU/HardwareSelector.js +200 -276
  427. package/Rendering/WebGPU/ImageMapper.js +180 -171
  428. package/Rendering/WebGPU/ImageSlice.js +45 -44
  429. package/Rendering/WebGPU/IndexBuffer.js +166 -200
  430. package/Rendering/WebGPU/OpaquePass.js +37 -36
  431. package/Rendering/WebGPU/OrderIndependentTranslucentPass.js +72 -45
  432. package/Rendering/WebGPU/Pipeline.js +37 -51
  433. package/Rendering/WebGPU/PixelSpaceCallbackMapper.js +27 -19
  434. package/Rendering/WebGPU/PolyDataMapper.js +50 -53
  435. package/Rendering/WebGPU/PolyDataMapper2D.js +39 -39
  436. package/Rendering/WebGPU/RenderEncoder.js +68 -88
  437. package/Rendering/WebGPU/RenderWindow.js +262 -376
  438. package/Rendering/WebGPU/Renderer.js +224 -208
  439. package/Rendering/WebGPU/Sampler.js +27 -21
  440. package/Rendering/WebGPU/ScalarBarActor.js +28 -19
  441. package/Rendering/WebGPU/ShaderCache.js +43 -41
  442. package/Rendering/WebGPU/ShaderDescription.js +52 -59
  443. package/Rendering/WebGPU/ShaderModule.js +26 -17
  444. package/Rendering/WebGPU/SimpleMapper.js +185 -121
  445. package/Rendering/WebGPU/SphereMapper.js +200 -130
  446. package/Rendering/WebGPU/StickMapper.js +289 -152
  447. package/Rendering/WebGPU/StorageBuffer.js +100 -115
  448. package/Rendering/WebGPU/Texture.js +79 -99
  449. package/Rendering/WebGPU/TextureManager.js +52 -54
  450. package/Rendering/WebGPU/TextureView.js +40 -43
  451. package/Rendering/WebGPU/Types.js +53 -70
  452. package/Rendering/WebGPU/UniformBuffer.js +158 -184
  453. package/Rendering/WebGPU/VertexInput.js +64 -90
  454. package/Rendering/WebGPU/ViewNodeFactory.js +25 -13
  455. package/Rendering/WebGPU/Volume.js +52 -51
  456. package/Rendering/WebGPU/VolumePass.js +218 -239
  457. package/Rendering/WebGPU/VolumePassFSQ.js +625 -306
  458. package/Rendering/WebGPU.js +1 -1
  459. package/Rendering/index.js +5 -5
  460. package/Widgets/Core/AbstractWidget/Constants.js +2 -2
  461. package/Widgets/Core/AbstractWidget.js +49 -58
  462. package/Widgets/Core/AbstractWidgetFactory.js +101 -122
  463. package/Widgets/Core/StateBuilder/boundsMixin.js +23 -28
  464. package/Widgets/Core/StateBuilder/color3Mixin.js +10 -7
  465. package/Widgets/Core/StateBuilder/colorMixin.js +10 -6
  466. package/Widgets/Core/StateBuilder/cornerMixin.js +16 -15
  467. package/Widgets/Core/StateBuilder/directionMixin.js +20 -18
  468. package/Widgets/Core/StateBuilder/manipulatorMixin.js +26 -18
  469. package/Widgets/Core/StateBuilder/nameMixin.js +10 -6
  470. package/Widgets/Core/StateBuilder/orientationMixin.js +19 -16
  471. package/Widgets/Core/StateBuilder/originMixin.js +25 -32
  472. package/Widgets/Core/StateBuilder/scale1Mixin.js +10 -6
  473. package/Widgets/Core/StateBuilder/scale3Mixin.js +10 -6
  474. package/Widgets/Core/StateBuilder/shapeMixin.js +12 -6
  475. package/Widgets/Core/StateBuilder/textMixin.js +10 -6
  476. package/Widgets/Core/StateBuilder/visibleMixin.js +10 -6
  477. package/Widgets/Core/StateBuilder.js +120 -149
  478. package/Widgets/Core/WidgetManager/Constants.js +7 -7
  479. package/Widgets/Core/WidgetManager.js +249 -421
  480. package/Widgets/Core/WidgetState.js +48 -57
  481. package/Widgets/Core.js +5 -5
  482. package/Widgets/Manipulators/AbstractManipulator.js +20 -14
  483. package/Widgets/Manipulators/CPRManipulator.js +55 -71
  484. package/Widgets/Manipulators/LineManipulator.js +31 -28
  485. package/Widgets/Manipulators/PickerManipulator.d.ts +48 -0
  486. package/Widgets/Manipulators/PickerManipulator.js +65 -0
  487. package/Widgets/Manipulators/PlaneManipulator.js +26 -23
  488. package/Widgets/Manipulators/TrackballManipulator.js +39 -35
  489. package/Widgets/Manipulators.js +4 -2
  490. package/Widgets/Representations/ArrowHandleRepresentation.js +148 -162
  491. package/Widgets/Representations/CircleContextRepresentation.js +44 -38
  492. package/Widgets/Representations/ContextRepresentation.js +17 -14
  493. package/Widgets/Representations/ConvexFaceContextRepresentation.js +50 -47
  494. package/Widgets/Representations/CroppingOutlineRepresentation.js +38 -27
  495. package/Widgets/Representations/CubeHandleRepresentation.js +21 -18
  496. package/Widgets/Representations/GlyphRepresentation.js +107 -152
  497. package/Widgets/Representations/HandleRepresentation.js +17 -14
  498. package/Widgets/Representations/ImplicitPlaneRepresentation.js +97 -91
  499. package/Widgets/Representations/LineHandleRepresentation.js +44 -41
  500. package/Widgets/Representations/OutlineContextRepresentation.js +42 -36
  501. package/Widgets/Representations/PolyLineRepresentation.js +60 -75
  502. package/Widgets/Representations/RectangleContextRepresentation.js +42 -37
  503. package/Widgets/Representations/SphereContextRepresentation.js +19 -27
  504. package/Widgets/Representations/SphereHandleRepresentation.js +31 -27
  505. package/Widgets/Representations/SplineContextRepresentation.js +46 -70
  506. package/Widgets/Representations/WidgetRepresentation/Constants.js +2 -2
  507. package/Widgets/Representations/WidgetRepresentation.js +99 -134
  508. package/Widgets/Representations.js +13 -13
  509. package/Widgets/Widgets3D/AngleWidget/behavior.js +41 -63
  510. package/Widgets/Widgets3D/AngleWidget.js +40 -38
  511. package/Widgets/Widgets3D/DistanceWidget/behavior.js +40 -61
  512. package/Widgets/Widgets3D/DistanceWidget.js +38 -36
  513. package/Widgets/Widgets3D/EllipseWidget/behavior.js +14 -19
  514. package/Widgets/Widgets3D/EllipseWidget/state.js +4 -2
  515. package/Widgets/Widgets3D/EllipseWidget.js +37 -26
  516. package/Widgets/Widgets3D/ImageCroppingWidget/behavior.js +26 -56
  517. package/Widgets/Widgets3D/ImageCroppingWidget/helpers.js +14 -17
  518. package/Widgets/Widgets3D/ImageCroppingWidget/state.js +20 -16
  519. package/Widgets/Widgets3D/ImageCroppingWidget.js +80 -98
  520. package/Widgets/Widgets3D/ImplicitPlaneWidget.js +55 -77
  521. package/Widgets/Widgets3D/InteractiveOrientationWidget/behavior.js +17 -18
  522. package/Widgets/Widgets3D/InteractiveOrientationWidget/state.js +15 -7
  523. package/Widgets/Widgets3D/InteractiveOrientationWidget.js +30 -29
  524. package/Widgets/Widgets3D/LabelWidget/behavior.js +37 -62
  525. package/Widgets/Widgets3D/LabelWidget.js +31 -25
  526. package/Widgets/Widgets3D/LineWidget/Constants.js +8 -8
  527. package/Widgets/Widgets3D/LineWidget/behavior.js +77 -114
  528. package/Widgets/Widgets3D/LineWidget/helpers.js +13 -20
  529. package/Widgets/Widgets3D/LineWidget/state.js +2 -1
  530. package/Widgets/Widgets3D/LineWidget.js +39 -35
  531. package/Widgets/Widgets3D/PaintWidget/behavior.js +24 -59
  532. package/Widgets/Widgets3D/PaintWidget.js +39 -37
  533. package/Widgets/Widgets3D/PolyLineWidget/behavior.js +44 -68
  534. package/Widgets/Widgets3D/PolyLineWidget.js +36 -31
  535. package/Widgets/Widgets3D/RectangleWidget/behavior.js +6 -11
  536. package/Widgets/Widgets3D/RectangleWidget/state.js +4 -2
  537. package/Widgets/Widgets3D/RectangleWidget.js +37 -25
  538. package/Widgets/Widgets3D/ResliceCursorWidget/Constants.js +35 -21
  539. package/Widgets/Widgets3D/ResliceCursorWidget/behavior.js +133 -209
  540. package/Widgets/Widgets3D/ResliceCursorWidget/cprBehavior.js +26 -41
  541. package/Widgets/Widgets3D/ResliceCursorWidget/helpers.js +89 -116
  542. package/Widgets/Widgets3D/ResliceCursorWidget/state.js +33 -40
  543. package/Widgets/Widgets3D/ResliceCursorWidget.js +186 -227
  544. package/Widgets/Widgets3D/SeedWidget/behavior.js +82 -0
  545. package/Widgets/Widgets3D/SeedWidget/state.js +18 -0
  546. package/Widgets/Widgets3D/SeedWidget.d.ts +44 -0
  547. package/Widgets/Widgets3D/SeedWidget.js +43 -0
  548. package/Widgets/Widgets3D/ShapeWidget/Constants.js +19 -19
  549. package/Widgets/Widgets3D/ShapeWidget/behavior.js +150 -252
  550. package/Widgets/Widgets3D/ShapeWidget.js +24 -27
  551. package/Widgets/Widgets3D/SphereWidget/behavior.js +35 -69
  552. package/Widgets/Widgets3D/SphereWidget/state.js +9 -5
  553. package/Widgets/Widgets3D/SphereWidget.js +34 -44
  554. package/Widgets/Widgets3D/SplineWidget/behavior.js +85 -120
  555. package/Widgets/Widgets3D/SplineWidget.js +43 -39
  556. package/Widgets/Widgets3D.js +15 -15
  557. package/Widgets/index.js +4 -4
  558. package/_virtual/rollup-plugin-worker-loader__module_Sources/Filters/General/PaintFilter/PaintFilter.worker.js +95 -207
  559. package/_virtual/rollup-plugin-worker-loader__module_Sources/Interaction/Widgets/PiecewiseGaussianWidget/ComputeHistogram.worker.js +0 -3
  560. package/favicon.js +5 -6
  561. package/index.d.ts +4 -2
  562. package/index.js +4 -3
  563. package/macros.js +4 -1931
  564. package/macros2.js +1684 -0
  565. package/package.json +6 -6
  566. package/vtk.js +18 -31
@@ -1,16 +1,16 @@
1
- import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
- import _classCallCheck from '@babel/runtime/helpers/classCallCheck';
3
- import _createClass from '@babel/runtime/helpers/createClass';
4
- import macro from '../../macros.js';
1
+ import { m as macro } from '../../macros2.js';
5
2
  import Constants from './BufferManager/Constants.js';
6
3
  import vtkProperty from '../Core/Property.js';
7
4
  import vtkWebGPUBuffer from './Buffer.js';
8
5
 
9
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
6
+ const {
7
+ Representation
8
+ } = vtkProperty;
9
+ const {
10
+ PrimitiveTypes
11
+ } = Constants;
10
12
 
11
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
12
- var Representation = vtkProperty.Representation;
13
- var PrimitiveTypes = Constants.PrimitiveTypes; // Simulate a small map of pointId to flatId for a cell. The original code
13
+ // Simulate a small map of pointId to flatId for a cell. The original code
14
14
  // used a map and was 2.6x slower (4.7 to 1.9 seconds). Using two fixed
15
15
  // length arrays with a count is so much faster even with the required for
16
16
  // loops and if statements. This only works as we know the usage is
@@ -21,80 +21,56 @@ var PrimitiveTypes = Constants.PrimitiveTypes; // Simulate a small map of pointI
21
21
  // make sure there is room. Switching to test against vec.length -1 results
22
22
  // in a small performance hit, so if you change 10, search for 9 in this
23
23
  // small class and change those as well.
24
-
25
- var _LimitedMap = /*#__PURE__*/function () {
26
- function _LimitedMap() {
27
- _classCallCheck(this, _LimitedMap);
28
-
24
+ class _LimitedMap {
25
+ constructor() {
29
26
  this.keys = new Uint32Array(10);
30
27
  this.values = new Uint32Array(10);
31
28
  this.count = 0;
32
29
  }
33
-
34
- _createClass(_LimitedMap, [{
35
- key: "clear",
36
- value: function clear() {
37
- this.count = 0;
38
- }
39
- }, {
40
- key: "has",
41
- value: function has(key) {
42
- for (var i = 0; i < this.count; i++) {
43
- if (this.keys[i] === key) {
44
- return true;
45
- }
30
+ clear() {
31
+ this.count = 0;
32
+ }
33
+ has(key) {
34
+ for (let i = 0; i < this.count; i++) {
35
+ if (this.keys[i] === key) {
36
+ return true;
46
37
  }
47
-
48
- return undefined;
49
38
  }
50
- }, {
51
- key: "get",
52
- value: function get(key) {
53
- for (var i = 0; i < this.count; i++) {
54
- if (this.keys[i] === key) {
55
- return this.values[i];
56
- }
39
+ return undefined;
40
+ }
41
+ get(key) {
42
+ for (let i = 0; i < this.count; i++) {
43
+ if (this.keys[i] === key) {
44
+ return this.values[i];
57
45
  }
58
-
59
- return undefined;
60
46
  }
61
- }, {
62
- key: "set",
63
- value: function set(key, value) {
64
- if (this.count < 9) {
65
- this.keys[this.count] = key;
66
- this.values[this.count++] = value;
67
- }
47
+ return undefined;
48
+ }
49
+ set(key, value) {
50
+ if (this.count < 9) {
51
+ this.keys[this.count] = key;
52
+ this.values[this.count++] = value;
68
53
  }
69
- }]);
70
-
71
- return _LimitedMap;
72
- }();
73
-
54
+ }
55
+ }
74
56
  function getPrimitiveName(primType) {
75
57
  switch (primType) {
76
58
  case PrimitiveTypes.Points:
77
59
  return 'points';
78
-
79
60
  case PrimitiveTypes.Lines:
80
61
  return 'lines';
81
-
82
62
  case PrimitiveTypes.Triangles:
83
63
  case PrimitiveTypes.TriangleEdges:
84
64
  return 'polys';
85
-
86
65
  case PrimitiveTypes.TriangleStripEdges:
87
66
  case PrimitiveTypes.TriangleStrips:
88
67
  return 'strips';
89
-
90
68
  default:
91
69
  return '';
92
70
  }
93
71
  }
94
-
95
72
  function _getOrAddFlatId(state, ptId, cellId) {
96
- var flatId = state.pointIdToFlatId[ptId];
97
-
73
+ let flatId = state.pointIdToFlatId[ptId];
98
74
  if (flatId < 0) {
99
75
  flatId = state.flatId;
100
76
  state.pointIdToFlatId[ptId] = flatId;
@@ -102,191 +78,178 @@ function _getOrAddFlatId(state, ptId, cellId) {
102
78
  state.flatIdToCellId[state.flatId] = cellId;
103
79
  state.flatId++;
104
80
  }
105
-
106
81
  return flatId;
107
82
  }
108
-
109
83
  function fillCell(ptIds, cellId, state) {
110
- var numPtIds = ptIds.length; // are any points already marked for this cell? If so use that as the provoking point
111
-
112
- for (var ptIdx = 0; ptIdx < numPtIds; ptIdx++) {
113
- var _ptId = ptIds[ptIdx];
114
-
115
- if (state.cellProvokedMap.has(_ptId)) {
116
- state.ibo[state.iboId++] = state.cellProvokedMap.get(_ptId); // insert remaining ptIds (they do not need to provoke)
117
-
118
- for (var ptIdx2 = ptIdx + 1; ptIdx2 < ptIdx + numPtIds; ptIdx2++) {
119
- _ptId = ptIds[ptIdx2 % numPtIds];
120
-
121
- var _flatId = _getOrAddFlatId(state, _ptId, cellId); // add to ibo
122
-
123
-
124
- state.ibo[state.iboId++] = _flatId;
125
- } // all done now
126
-
127
-
84
+ const numPtIds = ptIds.length;
85
+ // are any points already marked for this cell? If so use that as the provoking point
86
+ for (let ptIdx = 0; ptIdx < numPtIds; ptIdx++) {
87
+ let ptId = ptIds[ptIdx];
88
+ if (state.cellProvokedMap.has(ptId)) {
89
+ state.ibo[state.iboId++] = state.cellProvokedMap.get(ptId);
90
+
91
+ // insert remaining ptIds (they do not need to provoke)
92
+ for (let ptIdx2 = ptIdx + 1; ptIdx2 < ptIdx + numPtIds; ptIdx2++) {
93
+ ptId = ptIds[ptIdx2 % numPtIds];
94
+ const flatId = _getOrAddFlatId(state, ptId, cellId);
95
+ // add to ibo
96
+ state.ibo[state.iboId++] = flatId;
97
+ }
98
+ // all done now
128
99
  return;
129
100
  }
130
- } // else have any of the points not been used yet? (not in provokedPointIds)
131
-
132
-
133
- for (var _ptIdx = 0; _ptIdx < numPtIds; _ptIdx++) {
134
- var _ptId2 = ptIds[_ptIdx];
135
-
136
- if (!state.provokedPointIds[_ptId2]) {
137
- var _flatId2 = _getOrAddFlatId(state, _ptId2, cellId); // mark provoking and add to ibo
138
-
101
+ }
139
102
 
140
- state.provokedPointIds[_ptId2] = 1;
141
- state.cellProvokedMap.set(_ptId2, _flatId2); // when provoking always set the cellId as an original non-provoking value
103
+ // else have any of the points not been used yet? (not in provokedPointIds)
104
+ for (let ptIdx = 0; ptIdx < numPtIds; ptIdx++) {
105
+ let ptId = ptIds[ptIdx];
106
+ if (!state.provokedPointIds[ptId]) {
107
+ let flatId = _getOrAddFlatId(state, ptId, cellId);
108
+ // mark provoking and add to ibo
109
+ state.provokedPointIds[ptId] = 1;
110
+ state.cellProvokedMap.set(ptId, flatId);
111
+ // when provoking always set the cellId as an original non-provoking value
142
112
  // will have been stored and we need to overwrite that
143
-
144
- state.flatIdToCellId[_flatId2] = cellId;
145
- state.ibo[state.iboId++] = _flatId2; // insert remaining ptIds (they do not need to provoke)
146
-
147
- for (var _ptIdx2 = _ptIdx + 1; _ptIdx2 < _ptIdx + numPtIds; _ptIdx2++) {
148
- _ptId2 = ptIds[_ptIdx2 % numPtIds];
149
- _flatId2 = _getOrAddFlatId(state, _ptId2, cellId); // add to ibo
150
-
151
- state.ibo[state.iboId++] = _flatId2;
152
- } // all done now
153
-
154
-
113
+ state.flatIdToCellId[flatId] = cellId;
114
+ state.ibo[state.iboId++] = flatId;
115
+
116
+ // insert remaining ptIds (they do not need to provoke)
117
+ for (let ptIdx2 = ptIdx + 1; ptIdx2 < ptIdx + numPtIds; ptIdx2++) {
118
+ ptId = ptIds[ptIdx2 % numPtIds];
119
+ flatId = _getOrAddFlatId(state, ptId, cellId);
120
+ // add to ibo
121
+ state.ibo[state.iboId++] = flatId;
122
+ }
123
+ // all done now
155
124
  return;
156
125
  }
157
- } // if we got here then none of the ptIds could be used to provoke
158
- // so just duplicate the first one
159
-
126
+ }
160
127
 
161
- var ptId = ptIds[0];
162
- var flatId = state.flatId;
128
+ // if we got here then none of the ptIds could be used to provoke
129
+ // so just duplicate the first one
130
+ let ptId = ptIds[0];
131
+ let flatId = state.flatId;
163
132
  state.cellProvokedMap.set(ptId, flatId);
164
133
  state.flatIdToPointId[state.flatId] = ptId;
165
134
  state.flatIdToCellId[state.flatId] = cellId;
166
- state.flatId++; // add to ibo
167
-
168
- state.ibo[state.iboId++] = flatId; // insert remaining ptIds (they do not need to provoke)
135
+ state.flatId++;
169
136
 
170
- for (var _ptIdx3 = 1; _ptIdx3 < numPtIds; _ptIdx3++) {
171
- ptId = ptIds[_ptIdx3];
172
- flatId = _getOrAddFlatId(state, ptId, cellId); // add to ibo
137
+ // add to ibo
138
+ state.ibo[state.iboId++] = flatId;
173
139
 
140
+ // insert remaining ptIds (they do not need to provoke)
141
+ for (let ptIdx2 = 1; ptIdx2 < numPtIds; ptIdx2++) {
142
+ ptId = ptIds[ptIdx2];
143
+ flatId = _getOrAddFlatId(state, ptId, cellId);
144
+ // add to ibo
174
145
  state.ibo[state.iboId++] = flatId;
175
146
  }
176
147
  }
177
-
178
148
  function countCell(ptIds, cellId, state) {
179
- var numPtIds = ptIds.length;
180
- state.iboSize += numPtIds; // are any points already marked for this cell? If so use that as the provoking point
181
-
182
- for (var ptIdx = 0; ptIdx < numPtIds; ptIdx++) {
183
- var ptId = ptIds[ptIdx];
149
+ const numPtIds = ptIds.length;
150
+ state.iboSize += numPtIds;
184
151
 
152
+ // are any points already marked for this cell? If so use that as the provoking point
153
+ for (let ptIdx = 0; ptIdx < numPtIds; ptIdx++) {
154
+ const ptId = ptIds[ptIdx];
185
155
  if (state.cellProvokedMap.has(ptId)) {
186
156
  return;
187
157
  }
188
- } // else have any of the points not been used yet? (not in provokedPointIds)
189
-
190
-
191
- for (var _ptIdx4 = 0; _ptIdx4 < numPtIds; _ptIdx4++) {
192
- var _ptId3 = ptIds[_ptIdx4];
158
+ }
193
159
 
194
- if (!state.provokedPointIds[_ptId3]) {
195
- state.provokedPointIds[_ptId3] = 1;
196
- state.cellProvokedMap.set(_ptId3, 1);
160
+ // else have any of the points not been used yet? (not in provokedPointIds)
161
+ for (let ptIdx = 0; ptIdx < numPtIds; ptIdx++) {
162
+ const ptId = ptIds[ptIdx];
163
+ if (!state.provokedPointIds[ptId]) {
164
+ state.provokedPointIds[ptId] = 1;
165
+ state.cellProvokedMap.set(ptId, 1);
197
166
  return;
198
167
  }
199
- } // if we got here then none of the ptIds could be used to provoke
200
-
201
-
168
+ }
169
+ // if we got here then none of the ptIds could be used to provoke
202
170
  state.cellProvokedMap.set(ptIds[0], 1);
203
171
  state.extraPoints++;
204
172
  }
205
-
206
- var processCell;
207
-
208
- var _single = new Uint32Array(1);
209
-
210
- var _double = new Uint32Array(2);
211
-
212
- var _triple = new Uint32Array(3);
213
-
214
- var _indexCellBuilders = {
173
+ let processCell;
174
+ const _single = new Uint32Array(1);
175
+ const _double = new Uint32Array(2);
176
+ const _triple = new Uint32Array(3);
177
+ const _indexCellBuilders = {
215
178
  // easy, every input point becomes an output point
216
- anythingToPoints: function anythingToPoints(numPoints, cellPts, offset, cellId, state) {
217
- for (var i = 0; i < numPoints; ++i) {
179
+ anythingToPoints(numPoints, cellPts, offset, cellId, state) {
180
+ for (let i = 0; i < numPoints; ++i) {
218
181
  _single[0] = cellPts[offset + i];
219
182
  processCell(_single, cellId, state);
220
183
  }
221
184
  },
222
- linesToWireframe: function linesToWireframe(numPoints, cellPts, offset, cellId, state) {
185
+ linesToWireframe(numPoints, cellPts, offset, cellId, state) {
223
186
  // for lines we add a bunch of segments
224
- for (var i = 0; i < numPoints - 1; ++i) {
187
+ for (let i = 0; i < numPoints - 1; ++i) {
225
188
  _double[0] = cellPts[offset + i];
226
189
  _double[1] = cellPts[offset + i + 1];
227
190
  processCell(_double, cellId, state);
228
191
  }
229
192
  },
230
- polysToWireframe: function polysToWireframe(numPoints, cellPts, offset, cellId, state) {
193
+ polysToWireframe(numPoints, cellPts, offset, cellId, state) {
231
194
  // for polys we add a bunch of segments and close it
232
195
  if (numPoints > 2) {
233
- for (var i = 0; i < numPoints; ++i) {
196
+ for (let i = 0; i < numPoints; ++i) {
234
197
  _double[0] = cellPts[offset + i];
235
198
  _double[1] = cellPts[offset + (i + 1) % numPoints];
236
199
  processCell(_double, cellId, state);
237
200
  }
238
201
  }
239
202
  },
240
- stripsToWireframe: function stripsToWireframe(numPoints, cellPts, offset, cellId, state) {
203
+ stripsToWireframe(numPoints, cellPts, offset, cellId, state) {
241
204
  if (numPoints > 2) {
242
205
  // for strips we add a bunch of segments and close it
243
- for (var i = 0; i < numPoints - 1; ++i) {
206
+ for (let i = 0; i < numPoints - 1; ++i) {
244
207
  _double[0] = cellPts[offset + i];
245
208
  _double[1] = cellPts[offset + i + 1];
246
209
  processCell(_double, cellId, state);
247
210
  }
248
-
249
- for (var _i = 0; _i < numPoints - 2; _i++) {
250
- _double[0] = cellPts[offset + _i];
251
- _double[1] = cellPts[offset + _i + 2];
211
+ for (let i = 0; i < numPoints - 2; i++) {
212
+ _double[0] = cellPts[offset + i];
213
+ _double[1] = cellPts[offset + i + 2];
252
214
  processCell(_double, cellId, state);
253
215
  }
254
216
  }
255
217
  },
256
- polysToSurface: function polysToSurface(npts, cellPts, offset, cellId, state) {
257
- for (var i = 0; i < npts - 2; i++) {
218
+ polysToSurface(npts, cellPts, offset, cellId, state) {
219
+ for (let i = 0; i < npts - 2; i++) {
258
220
  _triple[0] = cellPts[offset];
259
221
  _triple[1] = cellPts[offset + i + 1];
260
222
  _triple[2] = cellPts[offset + i + 2];
261
223
  processCell(_triple, cellId, state);
262
224
  }
263
225
  },
264
- stripsToSurface: function stripsToSurface(npts, cellPts, offset, cellId, state) {
265
- for (var i = 0; i < npts - 2; i++) {
226
+ stripsToSurface(npts, cellPts, offset, cellId, state) {
227
+ for (let i = 0; i < npts - 2; i++) {
266
228
  _triple[0] = cellPts[offset + i];
267
229
  _triple[1] = cellPts[offset + i + 1 + i % 2];
268
230
  _triple[2] = cellPts[offset + i + 1 + (i + 1) % 2];
269
231
  processCell(_triple, cellId, state);
270
232
  }
271
233
  }
272
- }; // ----------------------------------------------------------------------------
234
+ };
235
+
236
+ // ----------------------------------------------------------------------------
273
237
  // vtkWebGPUIndexBufferManager methods
274
238
  // ----------------------------------------------------------------------------
275
239
 
276
240
  function vtkWebGPUIndexBuffer(publicAPI, model) {
277
241
  // Set our className
278
242
  model.classHierarchy.push('vtkWebGPUIndexBuffer');
279
-
280
- publicAPI.buildIndexBuffer = function (req) {
281
- var cellArray = req.cells;
282
- var primitiveType = req.primitiveType;
283
- var representation = req.representation;
284
- var cellOffset = req.cellOffset;
285
- var array = cellArray.getData();
286
- var cellArraySize = array.length;
287
- var inRepName = getPrimitiveName(primitiveType);
288
- var numPts = req.numberOfPoints;
289
- var state = {
243
+ publicAPI.buildIndexBuffer = req => {
244
+ const cellArray = req.cells;
245
+ const primitiveType = req.primitiveType;
246
+ const representation = req.representation;
247
+ const cellOffset = req.cellOffset;
248
+ const array = cellArray.getData();
249
+ const cellArraySize = array.length;
250
+ const inRepName = getPrimitiveName(primitiveType);
251
+ const numPts = req.numberOfPoints;
252
+ const state = {
290
253
  provokedPointIds: new Uint8Array(numPts),
291
254
  // size is good
292
255
  extraPoints: 0,
@@ -295,41 +258,37 @@ function vtkWebGPUIndexBuffer(publicAPI, model) {
295
258
  iboId: 0,
296
259
  cellProvokedMap: new _LimitedMap()
297
260
  };
298
- var func = null;
299
-
261
+ let func = null;
300
262
  if (representation === Representation.POINTS || primitiveType === PrimitiveTypes.Points) {
301
263
  func = _indexCellBuilders.anythingToPoints;
302
264
  } else if (representation === Representation.WIREFRAME || primitiveType === PrimitiveTypes.Lines) {
303
- func = _indexCellBuilders["".concat(inRepName, "ToWireframe")];
265
+ func = _indexCellBuilders[`${inRepName}ToWireframe`];
304
266
  } else {
305
- func = _indexCellBuilders["".concat(inRepName, "ToSurface")];
306
- } // first we count how many extra provoking points we need
307
-
267
+ func = _indexCellBuilders[`${inRepName}ToSurface`];
268
+ }
308
269
 
270
+ // first we count how many extra provoking points we need
309
271
  processCell = countCell;
310
- var cellId = cellOffset || 0;
311
-
312
- for (var cellArrayIndex = 0; cellArrayIndex < cellArraySize;) {
272
+ let cellId = cellOffset || 0;
273
+ for (let cellArrayIndex = 0; cellArrayIndex < cellArraySize;) {
313
274
  state.cellProvokedMap.clear();
314
275
  func(array[cellArrayIndex], array, cellArrayIndex + 1, cellId, state);
315
276
  cellArrayIndex += array[cellArrayIndex] + 1;
316
277
  cellId++;
317
- } // then we allocate the remaining structures
318
- // (we pick the best size to save space and transfer costs)
319
-
278
+ }
320
279
 
280
+ // then we allocate the remaining structures
281
+ // (we pick the best size to save space and transfer costs)
321
282
  if (numPts <= 0xffff) {
322
283
  state.flatIdToPointId = new Uint16Array(numPts + state.extraPoints);
323
284
  } else {
324
285
  state.flatIdToPointId = new Uint32Array(numPts + state.extraPoints);
325
286
  }
326
-
327
287
  if (numPts + state.extraPoints < 0x8fff) {
328
288
  state.pointIdToFlatId = new Int16Array(numPts);
329
289
  } else {
330
290
  state.pointIdToFlatId = new Int32Array(numPts);
331
291
  }
332
-
333
292
  if (numPts + state.extraPoints <= 0xffff) {
334
293
  state.ibo = new Uint16Array(state.iboSize);
335
294
  req.format = 'uint16';
@@ -337,61 +296,68 @@ function vtkWebGPUIndexBuffer(publicAPI, model) {
337
296
  state.ibo = new Uint32Array(state.iboSize);
338
297
  req.format = 'uint32';
339
298
  }
340
-
341
299
  if (cellId <= 0xffff) {
342
300
  state.flatIdToCellId = new Uint16Array(numPts + state.extraPoints);
343
301
  } else {
344
302
  state.flatIdToCellId = new Uint32Array(numPts + state.extraPoints);
345
303
  }
346
-
347
304
  state.pointIdToFlatId.fill(-1);
348
- state.provokedPointIds.fill(0); // and fill them in
305
+ state.provokedPointIds.fill(0);
349
306
 
307
+ // and fill them in
350
308
  processCell = fillCell;
351
309
  cellId = cellOffset || 0;
352
-
353
- for (var _cellArrayIndex = 0; _cellArrayIndex < cellArraySize;) {
310
+ for (let cellArrayIndex = 0; cellArrayIndex < cellArraySize;) {
354
311
  state.cellProvokedMap.clear();
355
- func(array[_cellArrayIndex], array, _cellArrayIndex + 1, cellId, state);
356
- _cellArrayIndex += array[_cellArrayIndex] + 1;
312
+ func(array[cellArrayIndex], array, cellArrayIndex + 1, cellId, state);
313
+ cellArrayIndex += array[cellArrayIndex] + 1;
357
314
  cellId++;
358
315
  }
359
-
360
316
  delete state.provokedPointIds;
361
- delete state.pointIdToFlatId; // store the results we need
317
+ delete state.pointIdToFlatId;
362
318
 
319
+ // store the results we need
363
320
  req.nativeArray = state.ibo;
364
321
  model.flatIdToPointId = state.flatIdToPointId;
365
322
  model.flatIdToCellId = state.flatIdToCellId;
366
323
  model.flatSize = state.flatId;
367
324
  model.indexCount = state.iboId;
368
325
  };
369
- } // ----------------------------------------------------------------------------
326
+ }
327
+
328
+ // ----------------------------------------------------------------------------
370
329
  // Object factory
371
330
  // ----------------------------------------------------------------------------
372
331
 
373
-
374
- var DEFAULT_VALUES = {
332
+ const DEFAULT_VALUES = {
375
333
  flatIdToPointId: null,
376
334
  flatIdToCellId: null,
377
335
  flatSize: 0,
378
336
  indexCount: 0
379
- }; // ----------------------------------------------------------------------------
337
+ };
338
+
339
+ // ----------------------------------------------------------------------------
380
340
 
381
341
  function extend(publicAPI, model) {
382
- var initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
383
- Object.assign(model, DEFAULT_VALUES, initialValues); // Inheritance
342
+ let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
343
+ Object.assign(model, DEFAULT_VALUES, initialValues);
384
344
 
345
+ // Inheritance
385
346
  vtkWebGPUBuffer.extend(publicAPI, model, initialValues);
386
347
  macro.setGet(publicAPI, model, ['flatIdToPointId', 'flatIdToCellId', 'flatSize', 'indexCount']);
387
348
  vtkWebGPUIndexBuffer(publicAPI, model);
388
- } // ----------------------------------------------------------------------------
349
+ }
350
+
351
+ // ----------------------------------------------------------------------------
389
352
 
390
- var newInstance = macro.newInstance(extend); // ----------------------------------------------------------------------------
353
+ const newInstance = macro.newInstance(extend);
354
+
355
+ // ----------------------------------------------------------------------------
391
356
 
392
- var vtkWebGPUIndexBuffer$1 = _objectSpread({
393
- newInstance: newInstance,
394
- extend: extend
395
- }, Constants);
357
+ var vtkWebGPUIndexBuffer$1 = {
358
+ newInstance,
359
+ extend,
360
+ ...Constants
361
+ };
396
362
 
397
363
  export { vtkWebGPUIndexBuffer$1 as default, extend, newInstance };