@kitware/vtk.js 28.10.1 → 28.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (566) hide show
  1. package/Common/Core/Base64.js +53 -82
  2. package/Common/Core/CellArray.js +52 -60
  3. package/Common/Core/ClassHierarchy.js +8 -36
  4. package/Common/Core/DataArray/Constants.js +6 -6
  5. package/Common/Core/DataArray.js +185 -270
  6. package/Common/Core/Endian.js +14 -17
  7. package/Common/Core/HalfFloat.js +17 -34
  8. package/Common/Core/ImageHelper.js +17 -25
  9. package/Common/Core/LookupTable.js +131 -144
  10. package/Common/Core/Math/Constants.js +8 -8
  11. package/Common/Core/Math/index.js +778 -903
  12. package/Common/Core/Math.d.ts +14 -0
  13. package/Common/Core/Math.js +2 -4
  14. package/Common/Core/MatrixBuilder.js +99 -151
  15. package/Common/Core/Points.js +43 -43
  16. package/Common/Core/PriorityQueue.js +30 -28
  17. package/Common/Core/ProgressHandler.js +31 -32
  18. package/Common/Core/ScalarsToColors/Constants.js +4 -4
  19. package/Common/Core/ScalarsToColors.js +196 -253
  20. package/Common/Core/StringArray.js +48 -73
  21. package/Common/Core/URLExtract.js +10 -29
  22. package/Common/Core/VariantArray.js +48 -73
  23. package/Common/Core.js +11 -11
  24. package/Common/DataModel/AbstractPointLocator.js +19 -17
  25. package/Common/DataModel/BoundingBox.js +322 -490
  26. package/Common/DataModel/Box.js +46 -63
  27. package/Common/DataModel/CardinalSpline1D.js +92 -102
  28. package/Common/DataModel/Cell.js +41 -61
  29. package/Common/DataModel/CellLinks.js +91 -127
  30. package/Common/DataModel/CellTypes/Constants.js +7 -6
  31. package/Common/DataModel/CellTypes.js +55 -74
  32. package/Common/DataModel/Collection.js +45 -61
  33. package/Common/DataModel/Cone.js +28 -20
  34. package/Common/DataModel/Cylinder.js +41 -35
  35. package/Common/DataModel/DataSet/Constants.js +11 -5
  36. package/Common/DataModel/DataSet.js +37 -25
  37. package/Common/DataModel/DataSetAttributes/Constants.js +18 -18
  38. package/Common/DataModel/DataSetAttributes/FieldData.js +103 -194
  39. package/Common/DataModel/DataSetAttributes.js +96 -138
  40. package/Common/DataModel/EdgeLocator.js +45 -70
  41. package/Common/DataModel/ITKHelper.js +67 -137
  42. package/Common/DataModel/ImageData.js +115 -172
  43. package/Common/DataModel/ImplicitBoolean/Constants.js +2 -2
  44. package/Common/DataModel/ImplicitBoolean.js +66 -96
  45. package/Common/DataModel/IncrementalOctreeNode.js +201 -231
  46. package/Common/DataModel/IncrementalOctreePointLocator.js +160 -198
  47. package/Common/DataModel/KochanekSpline1D.js +78 -81
  48. package/Common/DataModel/Line/Constants.js +2 -2
  49. package/Common/DataModel/Line.js +82 -105
  50. package/Common/DataModel/Locator.js +17 -10
  51. package/Common/DataModel/Molecule.js +26 -17
  52. package/Common/DataModel/PiecewiseFunction.js +218 -239
  53. package/Common/DataModel/Plane.js +90 -113
  54. package/Common/DataModel/PointSet.js +30 -26
  55. package/Common/DataModel/PolyData/Constants.js +2 -2
  56. package/Common/DataModel/PolyData.js +95 -120
  57. package/Common/DataModel/PolyLine.js +44 -61
  58. package/Common/DataModel/Polygon/Constants.js +4 -4
  59. package/Common/DataModel/Polygon.js +128 -169
  60. package/Common/DataModel/Quad/Constants.js +2 -2
  61. package/Common/DataModel/Quad.js +61 -100
  62. package/Common/DataModel/SelectionNode/Constants.js +5 -4
  63. package/Common/DataModel/SelectionNode.js +25 -21
  64. package/Common/DataModel/Sphere.js +40 -35
  65. package/Common/DataModel/Spline1D/Constants.js +3 -2
  66. package/Common/DataModel/Spline1D.js +34 -18
  67. package/Common/DataModel/Spline3D/Constants.js +2 -2
  68. package/Common/DataModel/Spline3D.js +46 -41
  69. package/Common/DataModel/StructuredData/Constants.js +2 -2
  70. package/Common/DataModel/StructuredData.js +9 -20
  71. package/Common/DataModel/Triangle.js +207 -250
  72. package/Common/DataModel.js +19 -19
  73. package/Common/System/MobileVR.js +56 -61
  74. package/Common/System/TimerLog.js +1 -1
  75. package/Common/System.js +2 -2
  76. package/Common/Transform/LandmarkTransform/Constants.js +2 -2
  77. package/Common/Transform/LandmarkTransform.js +133 -117
  78. package/Common/Transform/Transform.js +42 -57
  79. package/Common/Transform.js +2 -2
  80. package/Common/index.js +4 -4
  81. package/Filters/Core/Cutter.js +134 -146
  82. package/Filters/Core/PolyDataNormals.js +44 -50
  83. package/Filters/Core.js +2 -2
  84. package/Filters/Cornerstone/ImageDataToCornerstoneImage.js +45 -33
  85. package/Filters/Cornerstone.js +1 -1
  86. package/Filters/General/AppendPolyData.js +84 -100
  87. package/Filters/General/Calculator.js +95 -163
  88. package/Filters/General/ClipClosedSurface/Constants.js +2 -2
  89. package/Filters/General/ClipClosedSurface.js +341 -416
  90. package/Filters/General/ClosedPolyLineToSurfaceFilter.js +141 -156
  91. package/Filters/General/ContourTriangulator/Constants.js +2 -2
  92. package/Filters/General/ContourTriangulator/helper.js +684 -812
  93. package/Filters/General/ContourTriangulator.js +92 -89
  94. package/Filters/General/ImageCropFilter.js +77 -78
  95. package/Filters/General/ImageDataOutlineFilter.js +42 -36
  96. package/Filters/General/ImageMarchingCubes/caseTable.js +9 -521
  97. package/Filters/General/ImageMarchingCubes.js +99 -112
  98. package/Filters/General/ImageMarchingSquares/caseTable.js +9 -41
  99. package/Filters/General/ImageMarchingSquares.js +93 -118
  100. package/Filters/General/ImageOutlineFilter.js +53 -54
  101. package/Filters/General/ImageSliceFilter.js +39 -30
  102. package/Filters/General/ImageStreamline.js +107 -124
  103. package/Filters/General/LineFilter.js +26 -15
  104. package/Filters/General/MoleculeToRepresentation.js +136 -149
  105. package/Filters/General/OBBTree/OBBNode.js +36 -34
  106. package/Filters/General/OBBTree/helper.js +19 -24
  107. package/Filters/General/OBBTree.js +396 -488
  108. package/Filters/General/OutlineFilter.js +52 -34
  109. package/Filters/General/PaintFilter/PaintFilter.worker.js +93 -130
  110. package/Filters/General/PaintFilter.js +150 -162
  111. package/Filters/General/ScalarToRGBA.js +38 -33
  112. package/Filters/General/TriangleFilter.js +65 -62
  113. package/Filters/General/TubeFilter/Constants.js +4 -4
  114. package/Filters/General/TubeFilter.js +376 -496
  115. package/Filters/General/WarpScalar.js +58 -60
  116. package/Filters/General/WindowedSincPolyDataFilter.js +258 -330
  117. package/Filters/General.js +21 -21
  118. package/Filters/Sources/Arrow2DSource/Constants.js +2 -2
  119. package/Filters/Sources/Arrow2DSource.js +56 -56
  120. package/Filters/Sources/ArrowSource.js +39 -29
  121. package/Filters/Sources/CircleSource.js +43 -43
  122. package/Filters/Sources/ConcentricCylinderSource.js +151 -174
  123. package/Filters/Sources/ConeSource.js +51 -42
  124. package/Filters/Sources/CubeSource.js +75 -96
  125. package/Filters/Sources/Cursor3D.js +94 -109
  126. package/Filters/Sources/CylinderSource.js +90 -90
  127. package/Filters/Sources/ImageGridSource.js +43 -43
  128. package/Filters/Sources/LineSource.js +49 -39
  129. package/Filters/Sources/PlaneSource.js +97 -104
  130. package/Filters/Sources/PointSource.js +46 -37
  131. package/Filters/Sources/RTAnalyticSource.js +50 -48
  132. package/Filters/Sources/SLICSource.js +63 -73
  133. package/Filters/Sources/SphereSource.js +88 -78
  134. package/Filters/Sources/ViewFinderSource.js +26 -23
  135. package/Filters/Sources.js +14 -14
  136. package/Filters/Texture/TextureMapToPlane.js +95 -97
  137. package/Filters/Texture/TextureMapToSphere.js +46 -54
  138. package/Filters/Texture.js +2 -2
  139. package/Filters/index.js +5 -5
  140. package/IO/Core/BinaryHelper.js +12 -18
  141. package/IO/Core/DataAccessHelper/HtmlDataAccessHelper.js +43 -59
  142. package/IO/Core/DataAccessHelper/HttpDataAccessHelper.js +76 -113
  143. package/IO/Core/DataAccessHelper/JSZipDataAccessHelper.js +62 -112
  144. package/IO/Core/DataAccessHelper/LiteHttpDataAccessHelper.js +76 -113
  145. package/IO/Core/DataAccessHelper.js +6 -6
  146. package/IO/Core/HttpDataSetReader.js +136 -139
  147. package/IO/Core/HttpDataSetSeriesReader.js +64 -75
  148. package/IO/Core/HttpSceneLoader.js +130 -179
  149. package/IO/Core/ImageStream/DefaultProtocol.js +29 -43
  150. package/IO/Core/ImageStream/ViewStream.js +100 -103
  151. package/IO/Core/ImageStream.js +62 -54
  152. package/IO/Core/ResourceLoader.js +10 -9
  153. package/IO/Core/Serializer/ArraySerializer.js +40 -40
  154. package/IO/Core/Serializer/FieldDataSerializer.js +18 -28
  155. package/IO/Core/Serializer/ImageDataSerializer.js +22 -23
  156. package/IO/Core/Serializer/PolyDataSerializer.js +17 -21
  157. package/IO/Core/Serializer.js +6 -13
  158. package/IO/Core/WSLinkClient.js +90 -76
  159. package/IO/Core/ZipMultiDataSetReader.js +46 -44
  160. package/IO/Core/ZipMultiDataSetWriter.js +43 -34
  161. package/IO/Core.js +7 -7
  162. package/IO/Geometry/DracoReader.js +118 -121
  163. package/IO/Geometry/PLYReader.js +163 -223
  164. package/IO/Geometry/PLYWriter/Constants.js +5 -5
  165. package/IO/Geometry/PLYWriter.js +139 -154
  166. package/IO/Geometry/STLReader.js +123 -146
  167. package/IO/Geometry/STLWriter/Constants.js +2 -2
  168. package/IO/Geometry/STLWriter.js +83 -82
  169. package/IO/Geometry.js +5 -5
  170. package/IO/Legacy/LegacyAsciiParser.js +78 -139
  171. package/IO/Legacy/PolyDataReader.js +48 -36
  172. package/IO/Legacy.js +2 -2
  173. package/IO/Misc/ElevationReader.js +67 -60
  174. package/IO/Misc/HttpDataSetLODsLoader.js +41 -38
  175. package/IO/Misc/ITKImageReader.js +58 -45
  176. package/IO/Misc/ITKPolyDataReader.js +50 -38
  177. package/IO/Misc/JSONNucleoReader.js +49 -42
  178. package/IO/Misc/JSONReader.js +38 -33
  179. package/IO/Misc/MTLReader.js +74 -119
  180. package/IO/Misc/OBJReader.js +153 -206
  181. package/IO/Misc/PDBReader.js +70 -68
  182. package/IO/Misc/SkyboxReader.js +77 -82
  183. package/IO/Misc.js +9 -9
  184. package/IO/XML/XMLImageDataReader.js +36 -38
  185. package/IO/XML/XMLImageDataWriter.js +28 -21
  186. package/IO/XML/XMLPolyDataReader.js +49 -46
  187. package/IO/XML/XMLPolyDataWriter.js +43 -42
  188. package/IO/XML/XMLReader.js +262 -304
  189. package/IO/XML/XMLWriter/Constants.js +3 -3
  190. package/IO/XML/XMLWriter.js +70 -84
  191. package/IO/XML.js +6 -6
  192. package/IO/index.js +5 -5
  193. package/Imaging/Core/AbstractImageInterpolator/Constants.js +4 -4
  194. package/Imaging/Core/AbstractImageInterpolator/InterpolationInfo.js +30 -27
  195. package/Imaging/Core/AbstractImageInterpolator.js +74 -87
  196. package/Imaging/Core/ImageInterpolator.js +201 -252
  197. package/Imaging/Core/ImagePointDataIterator.js +96 -122
  198. package/Imaging/Core/ImageReslice/Constants.js +2 -2
  199. package/Imaging/Core/ImageReslice.js +327 -464
  200. package/Imaging/Core.js +4 -4
  201. package/Imaging/Hybrid/SampleFunction.js +58 -51
  202. package/Imaging/Hybrid.js +1 -1
  203. package/Imaging/index.js +2 -2
  204. package/Interaction/Animations/TimeStepBasedAnimationHandler.js +39 -54
  205. package/Interaction/Manipulators/CompositeCameraManipulator.js +22 -13
  206. package/Interaction/Manipulators/CompositeGestureManipulator.js +31 -43
  207. package/Interaction/Manipulators/CompositeKeyboardManipulator.js +15 -11
  208. package/Interaction/Manipulators/CompositeMouseManipulator.js +27 -33
  209. package/Interaction/Manipulators/CompositeVRManipulator.js +22 -15
  210. package/Interaction/Manipulators/GestureCameraManipulator.js +54 -36
  211. package/Interaction/Manipulators/KeyboardCameraManipulator.js +95 -97
  212. package/Interaction/Manipulators/MouseBoxSelectorManipulator.js +70 -89
  213. package/Interaction/Manipulators/MouseCameraAxisRotateManipulator.js +67 -54
  214. package/Interaction/Manipulators/MouseCameraSliceManipulator.js +40 -38
  215. package/Interaction/Manipulators/MouseCameraTrackballFirstPersonManipulator.js +83 -68
  216. package/Interaction/Manipulators/MouseCameraTrackballMultiRotateManipulator.js +32 -28
  217. package/Interaction/Manipulators/MouseCameraTrackballPanManipulator.js +47 -40
  218. package/Interaction/Manipulators/MouseCameraTrackballRollManipulator.js +55 -43
  219. package/Interaction/Manipulators/MouseCameraTrackballRotateManipulator.js +56 -46
  220. package/Interaction/Manipulators/MouseCameraTrackballZoomManipulator.js +41 -46
  221. package/Interaction/Manipulators/MouseCameraTrackballZoomToMouseManipulator.js +29 -27
  222. package/Interaction/Manipulators/MouseCameraUnicamManipulator.js +123 -146
  223. package/Interaction/Manipulators/MouseCameraUnicamRotateManipulator.js +144 -166
  224. package/Interaction/Manipulators/MouseRangeManipulator.js +127 -132
  225. package/Interaction/Manipulators/VRButtonPanManipulator.js +33 -23
  226. package/Interaction/Manipulators.js +21 -21
  227. package/Interaction/Misc/DeviceOrientationToCamera.js +25 -47
  228. package/Interaction/Misc.js +1 -1
  229. package/Interaction/Style/InteractorStyleImage.js +101 -121
  230. package/Interaction/Style/InteractorStyleMPRSlice.js +111 -128
  231. package/Interaction/Style/InteractorStyleManipulator/Presets.js +9 -17
  232. package/Interaction/Style/InteractorStyleManipulator.js +254 -329
  233. package/Interaction/Style/InteractorStyleRemoteMouse.js +195 -180
  234. package/Interaction/Style/InteractorStyleTrackballCamera.js +154 -157
  235. package/Interaction/Style/InteractorStyleUnicam.js +30 -38
  236. package/Interaction/Style.js +5 -5
  237. package/Interaction/UI/CornerAnnotation/CornerAnnotation.module.css.js +1 -1
  238. package/Interaction/UI/CornerAnnotation.js +65 -48
  239. package/Interaction/UI/FPSMonitor.js +104 -105
  240. package/Interaction/UI/Icons.js +1 -1
  241. package/Interaction/UI/Slider/Constants.js +2 -2
  242. package/Interaction/UI/Slider.js +78 -95
  243. package/Interaction/UI/VolumeController.js +104 -97
  244. package/Interaction/UI.js +5 -5
  245. package/Interaction/Widgets/OrientationMarkerWidget/Constants.js +2 -2
  246. package/Interaction/Widgets/OrientationMarkerWidget.js +90 -135
  247. package/Interaction/Widgets/PiecewiseGaussianWidget/ComputeHistogram.worker.js +0 -3
  248. package/Interaction/Widgets/PiecewiseGaussianWidget.js +381 -498
  249. package/Interaction/Widgets.js +2 -2
  250. package/Interaction/index.js +5 -5
  251. package/Proxy/Animation/AbstractAnimationProxy.js +22 -15
  252. package/Proxy/Animation/AnimationProxyManager.js +43 -51
  253. package/Proxy/Animation/TimeStepBasedAnimationHandlerProxy.js +26 -19
  254. package/Proxy/Core/AbstractRepresentationProxy.js +97 -151
  255. package/Proxy/Core/LookupTableProxy/Constants.js +4 -4
  256. package/Proxy/Core/LookupTableProxy.js +49 -52
  257. package/Proxy/Core/PiecewiseFunctionProxy/Constants.js +4 -4
  258. package/Proxy/Core/PiecewiseFunctionProxy.js +63 -72
  259. package/Proxy/Core/ProxyManager/core.js +83 -106
  260. package/Proxy/Core/ProxyManager/properties.js +53 -76
  261. package/Proxy/Core/ProxyManager/state.js +100 -110
  262. package/Proxy/Core/ProxyManager/view.js +45 -55
  263. package/Proxy/Core/ProxyManager.js +16 -8
  264. package/Proxy/Core/SourceProxy.js +41 -38
  265. package/Proxy/Core/View2DProxy.js +143 -199
  266. package/Proxy/Core/ViewProxy.js +223 -269
  267. package/Proxy/Core.js +7 -7
  268. package/Proxy/Representations/GeometryRepresentationProxy.js +34 -20
  269. package/Proxy/Representations/GlyphRepresentationProxy.js +42 -41
  270. package/Proxy/Representations/MoleculeRepresentationProxy.js +32 -22
  271. package/Proxy/Representations/ResliceRepresentationProxy.js +48 -32
  272. package/Proxy/Representations/SkyboxRepresentationProxy.js +30 -29
  273. package/Proxy/Representations/SliceRepresentationProxy.js +93 -112
  274. package/Proxy/Representations/SlicedGeometryRepresentationProxy.js +46 -42
  275. package/Proxy/Representations/VolumeRepresentationProxy.js +108 -133
  276. package/Proxy/Representations.js +7 -7
  277. package/Proxy/index.js +2 -2
  278. package/Rendering/Core/AbstractImageMapper/helper.js +44 -49
  279. package/Rendering/Core/AbstractImageMapper.js +18 -19
  280. package/Rendering/Core/AbstractMapper.js +39 -55
  281. package/Rendering/Core/AbstractMapper3D.js +26 -31
  282. package/Rendering/Core/AbstractPicker.js +25 -21
  283. package/Rendering/Core/Actor.js +71 -93
  284. package/Rendering/Core/Actor2D.js +64 -78
  285. package/Rendering/Core/AnnotatedCubeActor/Presets.js +5 -11
  286. package/Rendering/Core/AnnotatedCubeActor.js +94 -79
  287. package/Rendering/Core/AxesActor.js +65 -87
  288. package/Rendering/Core/Camera.js +246 -271
  289. package/Rendering/Core/CellPicker.js +125 -148
  290. package/Rendering/Core/ColorTransferFunction/ColorMaps.js +20 -21
  291. package/Rendering/Core/ColorTransferFunction/ColorMapsLite.js +20 -21
  292. package/Rendering/Core/ColorTransferFunction/Constants.js +4 -4
  293. package/Rendering/Core/ColorTransferFunction.js +460 -546
  294. package/Rendering/Core/Coordinate/Constants.js +2 -2
  295. package/Rendering/Core/Coordinate.js +119 -198
  296. package/Rendering/Core/CubeAxesActor.js +294 -320
  297. package/Rendering/Core/Follower.js +46 -45
  298. package/Rendering/Core/Glyph3DMapper/Constants.js +4 -4
  299. package/Rendering/Core/Glyph3DMapper.js +96 -148
  300. package/Rendering/Core/HardwareSelector.js +36 -69
  301. package/Rendering/Core/ImageArrayMapper.js +87 -126
  302. package/Rendering/Core/ImageCPRMapper.js +134 -209
  303. package/Rendering/Core/ImageMapper/Constants.js +2 -2
  304. package/Rendering/Core/ImageMapper.js +92 -170
  305. package/Rendering/Core/ImageProperty/Constants.js +2 -2
  306. package/Rendering/Core/ImageProperty.js +66 -81
  307. package/Rendering/Core/ImageResliceMapper/Constants.js +2 -2
  308. package/Rendering/Core/ImageResliceMapper.js +36 -29
  309. package/Rendering/Core/ImageSlice.js +85 -127
  310. package/Rendering/Core/InteractorObserver.js +82 -73
  311. package/Rendering/Core/InteractorStyle/Constants.js +2 -2
  312. package/Rendering/Core/InteractorStyle.js +56 -58
  313. package/Rendering/Core/Light.js +43 -49
  314. package/Rendering/Core/Mapper/CoincidentTopologyHelper.js +37 -48
  315. package/Rendering/Core/Mapper/Constants.js +6 -6
  316. package/Rendering/Core/Mapper/Static.js +15 -12
  317. package/Rendering/Core/Mapper.js +194 -259
  318. package/Rendering/Core/Mapper2D.js +61 -100
  319. package/Rendering/Core/Picker.js +124 -143
  320. package/Rendering/Core/PixelSpaceCallbackMapper.js +40 -37
  321. package/Rendering/Core/PointPicker.js +68 -79
  322. package/Rendering/Core/Prop/Constants.js +2 -2
  323. package/Rendering/Core/Prop.js +58 -106
  324. package/Rendering/Core/Prop3D.js +54 -83
  325. package/Rendering/Core/Property/Constants.js +6 -6
  326. package/Rendering/Core/Property.js +45 -74
  327. package/Rendering/Core/Property2D/Constants.js +2 -2
  328. package/Rendering/Core/Property2D.js +33 -42
  329. package/Rendering/Core/RenderWindow.js +70 -82
  330. package/Rendering/Core/RenderWindowInteractor/Constants.js +7 -7
  331. package/Rendering/Core/RenderWindowInteractor.js +324 -439
  332. package/Rendering/Core/Renderer.js +193 -257
  333. package/Rendering/Core/ScalarBarActor.js +267 -272
  334. package/Rendering/Core/Skybox.js +26 -24
  335. package/Rendering/Core/SphereMapper.js +22 -12
  336. package/Rendering/Core/StickMapper.js +22 -12
  337. package/Rendering/Core/SurfaceLICInterface/Constants.js +6 -6
  338. package/Rendering/Core/SurfaceLICInterface.js +13 -9
  339. package/Rendering/Core/SurfaceLICMapper.js +23 -15
  340. package/Rendering/Core/Texture.js +99 -141
  341. package/Rendering/Core/Viewport.js +60 -88
  342. package/Rendering/Core/Volume.js +55 -77
  343. package/Rendering/Core/VolumeMapper/Constants.js +4 -4
  344. package/Rendering/Core/VolumeMapper.js +59 -91
  345. package/Rendering/Core/VolumeProperty/Constants.js +4 -4
  346. package/Rendering/Core/VolumeProperty.js +78 -115
  347. package/Rendering/Core.js +47 -49
  348. package/Rendering/Misc/CanvasView.js +62 -61
  349. package/Rendering/Misc/FullScreenRenderWindow.js +60 -62
  350. package/Rendering/Misc/GenericRenderWindow.js +48 -37
  351. package/Rendering/Misc/RemoteView.js +86 -80
  352. package/Rendering/Misc/RenderWindowWithControlBar.js +54 -48
  353. package/Rendering/Misc/SynchronizableRenderWindow/BehaviorManager/CameraSynchronizer.js +43 -51
  354. package/Rendering/Misc/SynchronizableRenderWindow/BehaviorManager.js +52 -82
  355. package/Rendering/Misc/SynchronizableRenderWindow/ObjectManager.js +258 -308
  356. package/Rendering/Misc/SynchronizableRenderWindow.js +133 -163
  357. package/Rendering/Misc/TextureLODsDownloader.js +72 -74
  358. package/Rendering/Misc.js +7 -7
  359. package/Rendering/OpenGL/Actor.js +57 -68
  360. package/Rendering/OpenGL/Actor2D.js +56 -56
  361. package/Rendering/OpenGL/BufferObject/Constants.js +2 -2
  362. package/Rendering/OpenGL/BufferObject.js +50 -65
  363. package/Rendering/OpenGL/Camera.js +35 -29
  364. package/Rendering/OpenGL/CellArrayBufferObject.js +119 -149
  365. package/Rendering/OpenGL/Convolution2DPass.js +87 -81
  366. package/Rendering/OpenGL/CubeAxesActor.js +28 -21
  367. package/Rendering/OpenGL/ForwardPass.js +53 -64
  368. package/Rendering/OpenGL/Framebuffer.js +61 -101
  369. package/Rendering/OpenGL/Glyph3DMapper.js +165 -196
  370. package/Rendering/OpenGL/HardwareSelector/Constants.js +2 -2
  371. package/Rendering/OpenGL/HardwareSelector.js +272 -397
  372. package/Rendering/OpenGL/Helper.js +58 -73
  373. package/Rendering/OpenGL/ImageCPRMapper.js +339 -421
  374. package/Rendering/OpenGL/ImageMapper.js +268 -361
  375. package/Rendering/OpenGL/ImageResliceMapper.js +306 -438
  376. package/Rendering/OpenGL/ImageSlice.js +48 -54
  377. package/Rendering/OpenGL/OrderIndependentTranslucentPass.js +102 -84
  378. package/Rendering/OpenGL/PixelSpaceCallbackMapper.js +43 -42
  379. package/Rendering/OpenGL/PolyDataMapper.js +358 -492
  380. package/Rendering/OpenGL/PolyDataMapper2D.js +153 -205
  381. package/Rendering/OpenGL/RadialDistortionPass.js +86 -89
  382. package/Rendering/OpenGL/RenderWindow/Constants.js +2 -2
  383. package/Rendering/OpenGL/RenderWindow/ContextProxy.js +20 -29
  384. package/Rendering/OpenGL/RenderWindow.js +356 -510
  385. package/Rendering/OpenGL/Renderer.js +77 -89
  386. package/Rendering/OpenGL/ReplacementShaderMapper.js +28 -46
  387. package/Rendering/OpenGL/ScalarBarActor.js +28 -21
  388. package/Rendering/OpenGL/Shader.js +37 -31
  389. package/Rendering/OpenGL/ShaderCache.js +67 -74
  390. package/Rendering/OpenGL/ShaderProgram.js +136 -248
  391. package/Rendering/OpenGL/Skybox.js +99 -60
  392. package/Rendering/OpenGL/SphereMapper.js +94 -108
  393. package/Rendering/OpenGL/StickMapper.js +110 -114
  394. package/Rendering/OpenGL/SurfaceLIC/LineIntegralConvolution2D/pingpong.js +91 -157
  395. package/Rendering/OpenGL/SurfaceLIC/LineIntegralConvolution2D.js +142 -151
  396. package/Rendering/OpenGL/SurfaceLIC/SurfaceLICInterface.js +142 -216
  397. package/Rendering/OpenGL/SurfaceLIC/SurfaceLICMapper.js +79 -100
  398. package/Rendering/OpenGL/SurfaceLIC.js +2 -2
  399. package/Rendering/OpenGL/Texture/Constants.js +4 -4
  400. package/Rendering/OpenGL/Texture.js +444 -609
  401. package/Rendering/OpenGL/TextureUnitManager.js +47 -43
  402. package/Rendering/OpenGL/VertexArrayObject.js +92 -131
  403. package/Rendering/OpenGL/ViewNodeFactory.js +25 -13
  404. package/Rendering/OpenGL/Volume.js +38 -34
  405. package/Rendering/OpenGL/VolumeMapper.js +437 -547
  406. package/Rendering/OpenGL.js +28 -28
  407. package/Rendering/SceneGraph/RenderPass.js +34 -31
  408. package/Rendering/SceneGraph/RenderWindowViewNode.js +68 -94
  409. package/Rendering/SceneGraph/ViewNode.js +82 -111
  410. package/Rendering/SceneGraph/ViewNodeFactory.js +31 -26
  411. package/Rendering/SceneGraph.js +4 -4
  412. package/Rendering/WebGPU/Actor.js +49 -49
  413. package/Rendering/WebGPU/Actor2D.js +45 -44
  414. package/Rendering/WebGPU/BindGroup.js +43 -50
  415. package/Rendering/WebGPU/Buffer.js +41 -50
  416. package/Rendering/WebGPU/BufferManager/Constants.js +4 -4
  417. package/Rendering/WebGPU/BufferManager.js +111 -141
  418. package/Rendering/WebGPU/Camera.js +65 -67
  419. package/Rendering/WebGPU/CellArrayMapper.js +621 -388
  420. package/Rendering/WebGPU/CubeAxesActor.js +28 -19
  421. package/Rendering/WebGPU/Device.js +78 -133
  422. package/Rendering/WebGPU/ForwardPass.js +75 -72
  423. package/Rendering/WebGPU/FullScreenQuad.js +25 -18
  424. package/Rendering/WebGPU/Glyph3DMapper.js +62 -74
  425. package/Rendering/WebGPU/HardwareSelectionPass.js +45 -38
  426. package/Rendering/WebGPU/HardwareSelector.js +200 -276
  427. package/Rendering/WebGPU/ImageMapper.js +180 -171
  428. package/Rendering/WebGPU/ImageSlice.js +45 -44
  429. package/Rendering/WebGPU/IndexBuffer.js +166 -200
  430. package/Rendering/WebGPU/OpaquePass.js +37 -36
  431. package/Rendering/WebGPU/OrderIndependentTranslucentPass.js +72 -45
  432. package/Rendering/WebGPU/Pipeline.js +37 -51
  433. package/Rendering/WebGPU/PixelSpaceCallbackMapper.js +27 -19
  434. package/Rendering/WebGPU/PolyDataMapper.js +50 -53
  435. package/Rendering/WebGPU/PolyDataMapper2D.js +39 -39
  436. package/Rendering/WebGPU/RenderEncoder.js +68 -88
  437. package/Rendering/WebGPU/RenderWindow.js +262 -376
  438. package/Rendering/WebGPU/Renderer.js +224 -208
  439. package/Rendering/WebGPU/Sampler.js +27 -21
  440. package/Rendering/WebGPU/ScalarBarActor.js +28 -19
  441. package/Rendering/WebGPU/ShaderCache.js +43 -41
  442. package/Rendering/WebGPU/ShaderDescription.js +52 -59
  443. package/Rendering/WebGPU/ShaderModule.js +26 -17
  444. package/Rendering/WebGPU/SimpleMapper.js +185 -121
  445. package/Rendering/WebGPU/SphereMapper.js +200 -130
  446. package/Rendering/WebGPU/StickMapper.js +289 -152
  447. package/Rendering/WebGPU/StorageBuffer.js +100 -115
  448. package/Rendering/WebGPU/Texture.js +79 -99
  449. package/Rendering/WebGPU/TextureManager.js +52 -54
  450. package/Rendering/WebGPU/TextureView.js +40 -43
  451. package/Rendering/WebGPU/Types.js +53 -70
  452. package/Rendering/WebGPU/UniformBuffer.js +158 -184
  453. package/Rendering/WebGPU/VertexInput.js +64 -90
  454. package/Rendering/WebGPU/ViewNodeFactory.js +25 -13
  455. package/Rendering/WebGPU/Volume.js +52 -51
  456. package/Rendering/WebGPU/VolumePass.js +218 -239
  457. package/Rendering/WebGPU/VolumePassFSQ.js +625 -306
  458. package/Rendering/WebGPU.js +1 -1
  459. package/Rendering/index.js +5 -5
  460. package/Widgets/Core/AbstractWidget/Constants.js +2 -2
  461. package/Widgets/Core/AbstractWidget.js +49 -58
  462. package/Widgets/Core/AbstractWidgetFactory.js +101 -122
  463. package/Widgets/Core/StateBuilder/boundsMixin.js +23 -28
  464. package/Widgets/Core/StateBuilder/color3Mixin.js +10 -7
  465. package/Widgets/Core/StateBuilder/colorMixin.js +10 -6
  466. package/Widgets/Core/StateBuilder/cornerMixin.js +16 -15
  467. package/Widgets/Core/StateBuilder/directionMixin.js +20 -18
  468. package/Widgets/Core/StateBuilder/manipulatorMixin.js +26 -18
  469. package/Widgets/Core/StateBuilder/nameMixin.js +10 -6
  470. package/Widgets/Core/StateBuilder/orientationMixin.js +19 -16
  471. package/Widgets/Core/StateBuilder/originMixin.js +25 -32
  472. package/Widgets/Core/StateBuilder/scale1Mixin.js +10 -6
  473. package/Widgets/Core/StateBuilder/scale3Mixin.js +10 -6
  474. package/Widgets/Core/StateBuilder/shapeMixin.js +12 -6
  475. package/Widgets/Core/StateBuilder/textMixin.js +10 -6
  476. package/Widgets/Core/StateBuilder/visibleMixin.js +10 -6
  477. package/Widgets/Core/StateBuilder.js +120 -149
  478. package/Widgets/Core/WidgetManager/Constants.js +7 -7
  479. package/Widgets/Core/WidgetManager.js +249 -421
  480. package/Widgets/Core/WidgetState.js +48 -57
  481. package/Widgets/Core.js +5 -5
  482. package/Widgets/Manipulators/AbstractManipulator.js +20 -14
  483. package/Widgets/Manipulators/CPRManipulator.js +55 -71
  484. package/Widgets/Manipulators/LineManipulator.js +31 -28
  485. package/Widgets/Manipulators/PickerManipulator.d.ts +48 -0
  486. package/Widgets/Manipulators/PickerManipulator.js +65 -0
  487. package/Widgets/Manipulators/PlaneManipulator.js +26 -23
  488. package/Widgets/Manipulators/TrackballManipulator.js +39 -35
  489. package/Widgets/Manipulators.js +4 -2
  490. package/Widgets/Representations/ArrowHandleRepresentation.js +148 -162
  491. package/Widgets/Representations/CircleContextRepresentation.js +44 -38
  492. package/Widgets/Representations/ContextRepresentation.js +17 -14
  493. package/Widgets/Representations/ConvexFaceContextRepresentation.js +50 -47
  494. package/Widgets/Representations/CroppingOutlineRepresentation.js +38 -27
  495. package/Widgets/Representations/CubeHandleRepresentation.js +21 -18
  496. package/Widgets/Representations/GlyphRepresentation.js +107 -152
  497. package/Widgets/Representations/HandleRepresentation.js +17 -14
  498. package/Widgets/Representations/ImplicitPlaneRepresentation.js +97 -91
  499. package/Widgets/Representations/LineHandleRepresentation.js +44 -41
  500. package/Widgets/Representations/OutlineContextRepresentation.js +42 -36
  501. package/Widgets/Representations/PolyLineRepresentation.js +60 -75
  502. package/Widgets/Representations/RectangleContextRepresentation.js +42 -37
  503. package/Widgets/Representations/SphereContextRepresentation.js +19 -27
  504. package/Widgets/Representations/SphereHandleRepresentation.js +31 -27
  505. package/Widgets/Representations/SplineContextRepresentation.js +46 -70
  506. package/Widgets/Representations/WidgetRepresentation/Constants.js +2 -2
  507. package/Widgets/Representations/WidgetRepresentation.js +99 -134
  508. package/Widgets/Representations.js +13 -13
  509. package/Widgets/Widgets3D/AngleWidget/behavior.js +41 -63
  510. package/Widgets/Widgets3D/AngleWidget.js +41 -39
  511. package/Widgets/Widgets3D/DistanceWidget/behavior.js +40 -61
  512. package/Widgets/Widgets3D/DistanceWidget.js +38 -36
  513. package/Widgets/Widgets3D/EllipseWidget/behavior.js +14 -19
  514. package/Widgets/Widgets3D/EllipseWidget/state.js +4 -2
  515. package/Widgets/Widgets3D/EllipseWidget.js +37 -26
  516. package/Widgets/Widgets3D/ImageCroppingWidget/behavior.js +26 -56
  517. package/Widgets/Widgets3D/ImageCroppingWidget/helpers.js +14 -17
  518. package/Widgets/Widgets3D/ImageCroppingWidget/state.js +20 -16
  519. package/Widgets/Widgets3D/ImageCroppingWidget.js +80 -98
  520. package/Widgets/Widgets3D/ImplicitPlaneWidget.js +55 -77
  521. package/Widgets/Widgets3D/InteractiveOrientationWidget/behavior.js +17 -18
  522. package/Widgets/Widgets3D/InteractiveOrientationWidget/state.js +15 -7
  523. package/Widgets/Widgets3D/InteractiveOrientationWidget.js +30 -29
  524. package/Widgets/Widgets3D/LabelWidget/behavior.js +37 -62
  525. package/Widgets/Widgets3D/LabelWidget.js +31 -25
  526. package/Widgets/Widgets3D/LineWidget/Constants.js +8 -8
  527. package/Widgets/Widgets3D/LineWidget/behavior.js +77 -114
  528. package/Widgets/Widgets3D/LineWidget/helpers.js +13 -20
  529. package/Widgets/Widgets3D/LineWidget/state.js +2 -1
  530. package/Widgets/Widgets3D/LineWidget.js +39 -35
  531. package/Widgets/Widgets3D/PaintWidget/behavior.js +24 -59
  532. package/Widgets/Widgets3D/PaintWidget.js +39 -37
  533. package/Widgets/Widgets3D/PolyLineWidget/behavior.js +44 -68
  534. package/Widgets/Widgets3D/PolyLineWidget.js +36 -31
  535. package/Widgets/Widgets3D/RectangleWidget/behavior.js +6 -11
  536. package/Widgets/Widgets3D/RectangleWidget/state.js +4 -2
  537. package/Widgets/Widgets3D/RectangleWidget.js +37 -25
  538. package/Widgets/Widgets3D/ResliceCursorWidget/Constants.js +35 -21
  539. package/Widgets/Widgets3D/ResliceCursorWidget/behavior.js +134 -210
  540. package/Widgets/Widgets3D/ResliceCursorWidget/cprBehavior.js +26 -41
  541. package/Widgets/Widgets3D/ResliceCursorWidget/helpers.js +90 -117
  542. package/Widgets/Widgets3D/ResliceCursorWidget/state.js +33 -40
  543. package/Widgets/Widgets3D/ResliceCursorWidget.js +186 -227
  544. package/Widgets/Widgets3D/SeedWidget/behavior.js +82 -0
  545. package/Widgets/Widgets3D/SeedWidget/state.js +18 -0
  546. package/Widgets/Widgets3D/SeedWidget.d.ts +44 -0
  547. package/Widgets/Widgets3D/SeedWidget.js +43 -0
  548. package/Widgets/Widgets3D/ShapeWidget/Constants.js +19 -19
  549. package/Widgets/Widgets3D/ShapeWidget/behavior.js +150 -252
  550. package/Widgets/Widgets3D/ShapeWidget.js +24 -27
  551. package/Widgets/Widgets3D/SphereWidget/behavior.js +35 -69
  552. package/Widgets/Widgets3D/SphereWidget/state.js +9 -5
  553. package/Widgets/Widgets3D/SphereWidget.js +34 -44
  554. package/Widgets/Widgets3D/SplineWidget/behavior.js +85 -120
  555. package/Widgets/Widgets3D/SplineWidget.js +43 -39
  556. package/Widgets/Widgets3D.js +15 -15
  557. package/Widgets/index.js +4 -4
  558. package/_virtual/rollup-plugin-worker-loader__module_Sources/Filters/General/PaintFilter/PaintFilter.worker.js +95 -207
  559. package/_virtual/rollup-plugin-worker-loader__module_Sources/Interaction/Widgets/PiecewiseGaussianWidget/ComputeHistogram.worker.js +0 -3
  560. package/favicon.js +5 -6
  561. package/index.d.ts +4 -2
  562. package/index.js +4 -3
  563. package/macros.js +4 -1931
  564. package/macros2.js +1684 -0
  565. package/package.json +6 -6
  566. package/vtk.js +18 -31
@@ -1,5 +1,4 @@
1
- import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
- import macro from '../../macros.js';
1
+ import { m as macro } from '../../macros2.js';
3
2
  import vtkCellTypes from '../../Common/DataModel/CellTypes.js';
4
3
  import vtkLine from '../../Common/DataModel/Line.js';
5
4
  import vtkPicker from './Picker.js';
@@ -10,48 +9,48 @@ import { l as normalize } from '../../Common/Core/Math/index.js';
10
9
  import { CellType } from '../../Common/DataModel/CellTypes/Constants.js';
11
10
  import { vec3 } from 'gl-matrix';
12
11
 
13
- 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; }
14
-
15
- 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
+ // ----------------------------------------------------------------------------
16
13
  // Global methods
17
14
  // ----------------------------------------------------------------------------
18
15
 
19
16
  function createCellMap() {
20
- var _ref;
21
-
22
- return _ref = {}, _defineProperty(_ref, CellType.VTK_LINE, vtkLine.newInstance()), _defineProperty(_ref, CellType.VTK_POLY_LINE, vtkPolyLine.newInstance()), _defineProperty(_ref, CellType.VTK_TRIANGLE, vtkTriangle.newInstance()), _defineProperty(_ref, CellType.VTK_QUAD, vtkQuad.newInstance()), _ref;
17
+ return {
18
+ [CellType.VTK_LINE]: vtkLine.newInstance(),
19
+ [CellType.VTK_POLY_LINE]: vtkPolyLine.newInstance(),
20
+ [CellType.VTK_TRIANGLE]: vtkTriangle.newInstance(),
21
+ [CellType.VTK_QUAD]: vtkQuad.newInstance()
22
+ };
23
23
  }
24
-
25
24
  function clipLineWithPlane(mapper, matrix, p1, p2) {
26
- var outObj = {
25
+ const outObj = {
27
26
  planeId: -1,
28
27
  t1: 0.0,
29
28
  t2: 1.0,
30
29
  intersect: 0
31
30
  };
32
- var nbClippingPlanes = mapper.getNumberOfClippingPlanes();
33
- var plane = [];
34
-
35
- for (var i = 0; i < nbClippingPlanes; i++) {
31
+ const nbClippingPlanes = mapper.getNumberOfClippingPlanes();
32
+ const plane = [];
33
+ for (let i = 0; i < nbClippingPlanes; i++) {
36
34
  mapper.getClippingPlaneInDataCoords(matrix, i, plane);
37
- var d1 = plane[0] * p1[0] + plane[1] * p1[1] + plane[2] * p1[2] + plane[3];
38
- var d2 = plane[0] * p2[0] + plane[1] * p2[1] + plane[2] * p2[2] + plane[3]; // If both distances are negative, both points are outside
35
+ const d1 = plane[0] * p1[0] + plane[1] * p1[1] + plane[2] * p1[2] + plane[3];
36
+ const d2 = plane[0] * p2[0] + plane[1] * p2[1] + plane[2] * p2[2] + plane[3];
39
37
 
38
+ // If both distances are negative, both points are outside
40
39
  if (d1 < 0 && d2 < 0) {
41
40
  return 0;
42
41
  }
43
-
44
42
  if (d1 < 0 || d2 < 0) {
45
43
  // If only one of the distances is negative, the line crosses the plane
46
44
  // Compute fractional distance "t" of the crossing between p1 & p2
47
- var t = 0.0; // The "if" here just avoids an expensive division when possible
45
+ let t = 0.0;
48
46
 
47
+ // The "if" here just avoids an expensive division when possible
49
48
  if (d1 !== 0) {
50
49
  // We will never have d1==d2 since they have different signs
51
50
  t = d1 / (d1 - d2);
52
- } // If point p1 was clipped, adjust t1
53
-
51
+ }
54
52
 
53
+ // If point p1 was clipped, adjust t1
55
54
  if (d1 < 0) {
56
55
  if (t >= outObj.t1) {
57
56
  outObj.t1 = t;
@@ -60,35 +59,36 @@ function clipLineWithPlane(mapper, matrix, p1, p2) {
60
59
  } else if (t <= outObj.t2) {
61
60
  // else point p2 was clipped, so adjust t2
62
61
  outObj.t2 = t;
63
- } // If this happens, there's no line left
64
-
65
-
62
+ }
63
+ // If this happens, there's no line left
66
64
  if (outObj.t1 > outObj.t2) {
67
65
  outObj.intersect = 0;
68
66
  return outObj;
69
67
  }
70
68
  }
71
69
  }
72
-
73
70
  outObj.intersect = 1;
74
71
  return outObj;
75
- } // ----------------------------------------------------------------------------
72
+ }
73
+
74
+ // ----------------------------------------------------------------------------
76
75
  // Static API
77
76
  // ----------------------------------------------------------------------------
78
77
 
78
+ const STATIC = {
79
+ clipLineWithPlane
80
+ };
79
81
 
80
- var STATIC = {
81
- clipLineWithPlane: clipLineWithPlane
82
- }; // ----------------------------------------------------------------------------
82
+ // ----------------------------------------------------------------------------
83
83
  // vtkCellPicker methods
84
84
  // ----------------------------------------------------------------------------
85
85
 
86
86
  function vtkCellPicker(publicAPI, model) {
87
87
  // Set our className
88
88
  model.classHierarchy.push('vtkCellPicker');
89
-
90
- var superClass = _objectSpread({}, publicAPI);
91
-
89
+ const superClass = {
90
+ ...publicAPI
91
+ };
92
92
  function resetCellPickerInfo() {
93
93
  model.cellId = -1;
94
94
  model.pCoords[0] = 0.0;
@@ -104,54 +104,44 @@ function vtkCellPicker(publicAPI, model) {
104
104
  model.pickNormal[1] = 0.0;
105
105
  model.pickNormal[2] = 1.0;
106
106
  }
107
-
108
107
  function resetPickInfo() {
109
108
  model.dataSet = null;
110
109
  model.mapper = null;
111
110
  resetCellPickerInfo();
112
111
  }
113
-
114
- publicAPI.initialize = function () {
112
+ publicAPI.initialize = () => {
115
113
  resetPickInfo();
116
114
  superClass.initialize();
117
115
  };
118
-
119
- publicAPI.computeSurfaceNormal = function (data, cell, weights, normal) {
120
- var normals = data.getPointData().getNormals(); // TODO add getCellDimension on vtkCell
121
-
116
+ publicAPI.computeSurfaceNormal = (data, cell, weights, normal) => {
117
+ const normals = data.getPointData().getNormals();
122
118
  if (normals) {
123
119
  normal[0] = 0.0;
124
120
  normal[1] = 0.0;
125
121
  normal[2] = 0.0;
126
- var pointNormal = [];
127
-
128
- for (var i = 0; i < 3; i++) {
122
+ const pointNormal = [];
123
+ for (let i = 0; i < 3; i++) {
129
124
  normals.getTuple(cell.getPointsIds()[i], pointNormal);
130
125
  normal[0] += pointNormal[0] * weights[i];
131
126
  normal[1] += pointNormal[1] * weights[i];
132
127
  normal[2] += pointNormal[2] * weights[i];
133
128
  }
134
-
135
129
  normalize(normal);
136
130
  } else {
137
131
  return 0;
138
132
  }
139
-
140
133
  return 1;
141
134
  };
142
-
143
- publicAPI.pick = function (selection, renderer) {
135
+ publicAPI.pick = (selection, renderer) => {
144
136
  publicAPI.initialize();
145
- var pickResult = superClass.pick(selection, renderer);
146
-
137
+ const pickResult = superClass.pick(selection, renderer);
147
138
  if (pickResult) {
148
- var camera = renderer.getActiveCamera();
149
- var cameraPos = [];
139
+ const camera = renderer.getActiveCamera();
140
+ const cameraPos = [];
150
141
  camera.getPosition(cameraPos);
151
-
152
142
  if (camera.getParallelProjection()) {
153
143
  // For parallel projection, use -ve direction of projection
154
- var cameraFocus = [];
144
+ const cameraFocus = [];
155
145
  camera.getFocalPoint(cameraFocus);
156
146
  model.pickNormal[0] = cameraPos[0] - cameraFocus[0];
157
147
  model.pickNormal[1] = cameraPos[1] - cameraFocus[1];
@@ -162,27 +152,21 @@ function vtkCellPicker(publicAPI, model) {
162
152
  model.pickNormal[1] = cameraPos[1] - model.pickPosition[1];
163
153
  model.pickNormal[2] = cameraPos[2] - model.pickPosition[2];
164
154
  }
165
-
166
155
  normalize(model.pickNormal);
167
156
  }
168
-
169
157
  return pickResult;
170
158
  };
171
-
172
- publicAPI.intersectWithLine = function (p1, p2, tol, mapper) {
173
- var tMin = Number.MAX_VALUE;
174
- var t1 = 0.0;
175
- var t2 = 1.0;
176
- var vtkCellPickerPlaneTol = 1e-14;
177
- var clipLine = clipLineWithPlane(mapper, model.transformMatrix, p1, p2);
178
-
159
+ publicAPI.intersectWithLine = (p1, p2, tol, mapper) => {
160
+ let tMin = Number.MAX_VALUE;
161
+ const t1 = 0.0;
162
+ const t2 = 1.0;
163
+ const vtkCellPickerPlaneTol = 1e-14;
164
+ const clipLine = clipLineWithPlane(mapper, model.transformMatrix, p1, p2);
179
165
  if (mapper && !clipLine.intersect) {
180
166
  return Number.MAX_VALUE;
181
167
  }
182
-
183
168
  if (mapper.isA('vtkImageMapper') || mapper.isA('vtkImageArrayMapper')) {
184
- var pickData = mapper.intersectWithLineForCellPicking(p1, p2);
185
-
169
+ const pickData = mapper.intersectWithLineForCellPicking(p1, p2);
186
170
  if (pickData) {
187
171
  tMin = pickData.t;
188
172
  model.cellIJK = pickData.ijk;
@@ -191,90 +175,80 @@ function vtkCellPicker(publicAPI, model) {
191
175
  } else if (mapper.isA('vtkMapper')) {
192
176
  tMin = publicAPI.intersectActorWithLine(p1, p2, t1, t2, tol, mapper);
193
177
  }
194
-
195
178
  if (tMin < model.globalTMin) {
196
179
  model.globalTMin = tMin;
197
-
198
180
  if (Math.abs(tMin - t1) < vtkCellPickerPlaneTol && clipLine.clippingPlaneId >= 0) {
199
181
  model.mapperPosition[0] = p1[0] * (1 - t1) + p2[0] * t1;
200
182
  model.mapperPosition[1] = p1[1] * (1 - t1) + p2[1] * t1;
201
183
  model.mapperPosition[2] = p1[2] * (1 - t1) + p2[2] * t1;
202
- var plane = [];
184
+ const plane = [];
203
185
  mapper.getClippingPlaneInDataCoords(model.transformMatrix, clipLine.clippingPlaneId, plane);
204
- normalize(plane); // Want normal outward from the planes, not inward
205
-
186
+ normalize(plane);
187
+ // Want normal outward from the planes, not inward
206
188
  model.mapperNormal[0] = -plane[0];
207
189
  model.mapperNormal[1] = -plane[1];
208
190
  model.mapperNormal[2] = -plane[2];
209
191
  }
210
-
211
- vec3.transformMat4(model.pickPosition, model.mapperPosition, model.transformMatrix); // Transform vector
212
-
213
- var mat = model.transformMatrix;
192
+ vec3.transformMat4(model.pickPosition, model.mapperPosition, model.transformMatrix);
193
+ // Transform vector
194
+ const mat = model.transformMatrix;
214
195
  model.mapperNormal[0] = mat[0] * model.pickNormal[0] + mat[4] * model.pickNormal[1] + mat[8] * model.pickNormal[2];
215
196
  model.mapperNormal[1] = mat[1] * model.pickNormal[0] + mat[5] * model.pickNormal[1] + mat[9] * model.pickNormal[2];
216
197
  model.mapperNormal[2] = mat[2] * model.pickNormal[0] + mat[6] * model.pickNormal[1] + mat[10] * model.pickNormal[2];
217
198
  }
218
-
219
199
  return tMin;
220
200
  };
221
-
222
- publicAPI.intersectActorWithLine = function (p1, p2, t1, t2, tol, mapper) {
223
- var tMin = Number.MAX_VALUE;
224
- var minXYZ = [0, 0, 0];
225
- var pDistMin = Number.MAX_VALUE;
226
- var minPCoords = [0, 0, 0];
227
- var minCellId = null;
228
- var minCell = null;
229
- var minCellType = null;
230
- var subId = null;
231
- var x = [];
232
- var data = mapper.getInputData();
233
-
234
- var q1 = [0, 0, 0];
235
- var q2 = [0, 0, 0];
201
+ publicAPI.intersectActorWithLine = (p1, p2, t1, t2, tol, mapper) => {
202
+ let tMin = Number.MAX_VALUE;
203
+ const minXYZ = [0, 0, 0];
204
+ let pDistMin = Number.MAX_VALUE;
205
+ const minPCoords = [0, 0, 0];
206
+ let minCellId = null;
207
+ let minCell = null;
208
+ let minCellType = null;
209
+ let subId = null;
210
+ const x = [];
211
+ const data = mapper.getInputData();
212
+
213
+ // Make a new p1 and p2 using the clipped t1 and t2
214
+ const q1 = [0, 0, 0];
215
+ const q2 = [0, 0, 0];
236
216
  q1[0] = p1[0];
237
217
  q1[1] = p1[1];
238
218
  q1[2] = p1[2];
239
219
  q2[0] = p2[0];
240
220
  q2[1] = p2[1];
241
221
  q2[2] = p2[2];
242
-
243
222
  if (t1 !== 0.0 || t2 !== 1.0) {
244
- for (var j = 0; j < 3; j++) {
223
+ for (let j = 0; j < 3; j++) {
245
224
  q1[j] = p1[j] * (1.0 - t1) + p2[j] * t1;
246
225
  q2[j] = p1[j] * (1.0 - t2) + p2[j] * t2;
247
226
  }
248
227
  }
249
-
250
228
  if (data.getCells) {
251
229
  if (!data.getCells()) {
252
230
  data.buildLinks();
253
231
  }
232
+ const tempCellMap = createCellMap();
233
+ const minCellMap = createCellMap();
234
+ const numberOfCells = data.getNumberOfCells();
254
235
 
255
- var tempCellMap = createCellMap();
256
- var minCellMap = createCellMap();
257
- var numberOfCells = data.getNumberOfCells();
258
236
  /* eslint-disable no-continue */
237
+ for (let cellId = 0; cellId < numberOfCells; cellId++) {
238
+ const pCoords = [0, 0, 0];
239
+ minCellType = data.getCellType(cellId);
259
240
 
260
- for (var cellId = 0; cellId < numberOfCells; cellId++) {
261
- var pCoords = [0, 0, 0];
262
- minCellType = data.getCellType(cellId); // Skip cells that are marked as empty
263
-
241
+ // Skip cells that are marked as empty
264
242
  if (minCellType === CellType.VTK_EMPTY_CELL) {
265
243
  continue;
266
244
  }
267
-
268
- var cell = tempCellMap[minCellType];
269
-
245
+ const cell = tempCellMap[minCellType];
270
246
  if (cell == null) {
271
247
  continue;
272
248
  }
273
-
274
249
  minCell = minCellMap[minCellType];
275
250
  data.getCell(cellId, cell);
276
- var cellPicked = void 0;
277
-
251
+ let cellPicked;
278
252
  {
279
253
  if (vtkCellTypes.hasSubCells(minCellType)) {
280
254
  cellPicked = cell.intersectWithLine(t1, t2, p1, p2, tol, x, pCoords);
@@ -282,18 +256,15 @@ function vtkCellPicker(publicAPI, model) {
282
256
  cellPicked = cell.intersectWithLine(p1, p2, tol, x, pCoords);
283
257
  }
284
258
  }
285
-
286
259
  if (cellPicked.intersect === 1 && cellPicked.t <= tMin + model.tolerance && cellPicked.t >= t1 && cellPicked.t <= t2) {
287
- var pDist = cell.getParametricDistance(pCoords);
288
-
260
+ const pDist = cell.getParametricDistance(pCoords);
289
261
  if (pDist < pDistMin || pDist === pDistMin && cellPicked.t < tMin) {
290
262
  tMin = cellPicked.t;
291
263
  pDistMin = pDist;
292
264
  subId = cellPicked.subId;
293
265
  minCellId = cellId;
294
266
  cell.deepCopy(minCell);
295
-
296
- for (var k = 0; k < 3; k++) {
267
+ for (let k = 0; k < 3; k++) {
297
268
  minXYZ[k] = x[k];
298
269
  minPCoords[k] = pCoords[k];
299
270
  }
@@ -301,53 +272,50 @@ function vtkCellPicker(publicAPI, model) {
301
272
  }
302
273
  }
303
274
  /* eslint-enable no-continue */
304
-
305
275
  }
306
276
 
307
277
  if (minCellId >= 0 && tMin < model.globalTMin) {
308
278
  resetPickInfo();
309
- var nbPointsInCell = minCell.getNumberOfPoints();
310
- var weights = new Array(nbPointsInCell);
311
-
312
- for (var i = 0; i < nbPointsInCell; i++) {
279
+ const nbPointsInCell = minCell.getNumberOfPoints();
280
+ const weights = new Array(nbPointsInCell);
281
+ for (let i = 0; i < nbPointsInCell; i++) {
313
282
  weights[i] = 0.0;
314
283
  }
315
-
316
- var point = [];
317
-
284
+ const point = [];
318
285
  if (vtkCellTypes.hasSubCells(minCellType)) {
319
286
  minCell.evaluateLocation(subId, minPCoords, point, weights);
320
287
  } else {
321
288
  minCell.evaluateLocation(minPCoords, point, weights);
322
- } // Return the polydata to the user
323
-
289
+ }
324
290
 
291
+ // Return the polydata to the user
325
292
  model.dataSet = data;
326
293
  model.cellId = minCellId;
327
294
  model.pCoords[0] = minPCoords[0];
328
295
  model.pCoords[1] = minPCoords[1];
329
- model.pCoords[2] = minPCoords[2]; // Find the point with the maximum weight
330
-
331
- var maxWeight = 0;
332
- var iMaxWeight = -1;
333
-
334
- for (var _i = 0; _i < nbPointsInCell; _i++) {
335
- if (weights[_i] > maxWeight) {
336
- iMaxWeight = _i;
337
- maxWeight = weights[_i];
296
+ model.pCoords[2] = minPCoords[2];
297
+
298
+ // Find the point with the maximum weight
299
+ let maxWeight = 0;
300
+ let iMaxWeight = -1;
301
+ for (let i = 0; i < nbPointsInCell; i++) {
302
+ if (weights[i] > maxWeight) {
303
+ iMaxWeight = i;
304
+ maxWeight = weights[i];
338
305
  }
339
- } // If maximum weight is found, use it to get the PointId
340
-
306
+ }
341
307
 
308
+ // If maximum weight is found, use it to get the PointId
342
309
  if (iMaxWeight !== -1) {
343
310
  model.pointId = minCell.getPointsIds()[iMaxWeight];
344
- } // Set the mapper position
345
-
311
+ }
346
312
 
313
+ // Set the mapper position
347
314
  model.mapperPosition[0] = minXYZ[0];
348
315
  model.mapperPosition[1] = minXYZ[1];
349
- model.mapperPosition[2] = minXYZ[2]; // Compute the normal
316
+ model.mapperPosition[2] = minXYZ[2];
350
317
 
318
+ // Compute the normal
351
319
  if (!publicAPI.computeSurfaceNormal(data, minCell, weights, model.mapperNormal)) {
352
320
  // By default, the normal points back along view ray
353
321
  model.mapperNormal[0] = p1[0] - p2[0];
@@ -356,38 +324,47 @@ function vtkCellPicker(publicAPI, model) {
356
324
  normalize(model.mapperNormal);
357
325
  }
358
326
  }
359
-
360
327
  return tMin;
361
328
  };
362
- } // ----------------------------------------------------------------------------
329
+ }
330
+
331
+ // ----------------------------------------------------------------------------
363
332
  // Object factory
364
333
  // ----------------------------------------------------------------------------
365
334
 
366
-
367
- var DEFAULT_VALUES = {
335
+ const DEFAULT_VALUES = {
368
336
  cellId: -1,
369
337
  pCoords: [],
370
338
  cellIJK: [],
371
339
  pickNormal: [],
372
340
  mapperNormal: []
373
- }; // ----------------------------------------------------------------------------
341
+ };
342
+
343
+ // ----------------------------------------------------------------------------
374
344
 
375
345
  function extend(publicAPI, model) {
376
- var initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
377
- Object.assign(model, DEFAULT_VALUES, initialValues); // Inheritance
346
+ let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
347
+ Object.assign(model, DEFAULT_VALUES, initialValues);
378
348
 
349
+ // Inheritance
379
350
  vtkPicker.extend(publicAPI, model, initialValues);
380
351
  macro.getArray(publicAPI, model, ['pickNormal', 'mapperNormal', 'pCoords', 'cellIJK']);
381
- macro.get(publicAPI, model, ['cellId']); // Object methods
352
+ macro.get(publicAPI, model, ['cellId']);
382
353
 
354
+ // Object methods
383
355
  vtkCellPicker(publicAPI, model);
384
- } // ----------------------------------------------------------------------------
356
+ }
385
357
 
386
- var newInstance = macro.newInstance(extend, 'vtkCellPicker'); // ----------------------------------------------------------------------------
358
+ // ----------------------------------------------------------------------------
359
+
360
+ const newInstance = macro.newInstance(extend, 'vtkCellPicker');
361
+
362
+ // ----------------------------------------------------------------------------
387
363
 
388
- var vtkCellPicker$1 = _objectSpread({
389
- newInstance: newInstance,
390
- extend: extend
391
- }, STATIC);
364
+ var vtkCellPicker$1 = {
365
+ newInstance,
366
+ extend,
367
+ ...STATIC
368
+ };
392
369
 
393
370
  export { STATIC, vtkCellPicker$1 as default, extend, newInstance };
@@ -1,52 +1,51 @@
1
1
  import { v as vtkColorMaps$1 } from './ColorMaps.json.js';
2
2
 
3
- var presetMap = Object.create(null);
4
- vtkColorMaps$1.filter(function (p) {
5
- return p.RGBPoints;
6
- }).filter(function (p) {
7
- return p.ColorSpace !== 'CIELAB';
8
- }).forEach(function (p) {
3
+ const presetMap = Object.create(null);
4
+ vtkColorMaps$1.filter(p => p.RGBPoints).filter(p => p.ColorSpace !== 'CIELAB').forEach(p => {
9
5
  presetMap[p.Name] = p;
10
- }); // ----------------------------------------------------------------------------
6
+ });
11
7
 
12
- var rgbPresetNames = Object.keys(presetMap);
13
- rgbPresetNames.sort(); // ----------------------------------------------------------------------------
8
+ // ----------------------------------------------------------------------------
9
+
10
+ const rgbPresetNames = Object.keys(presetMap);
11
+ rgbPresetNames.sort();
12
+
13
+ // ----------------------------------------------------------------------------
14
14
 
15
15
  function getPresetByName(name) {
16
16
  return presetMap[name];
17
- } // ----------------------------------------------------------------------------
17
+ }
18
18
 
19
+ // ----------------------------------------------------------------------------
19
20
 
20
21
  function addPreset(preset) {
21
22
  if (!preset.RGBPoints || preset.ColorSpace === 'CIELAB') {
22
23
  return;
23
24
  }
24
-
25
25
  if (!presetMap[preset.Name]) {
26
26
  rgbPresetNames.push(preset.Name);
27
27
  rgbPresetNames.sort();
28
28
  }
29
-
30
29
  presetMap[preset.Name] = preset;
31
- } // ----------------------------------------------------------------------------
30
+ }
32
31
 
32
+ // ----------------------------------------------------------------------------
33
33
 
34
34
  function removePresetByName(name) {
35
- var index = rgbPresetNames.indexOf(name);
36
-
35
+ const index = rgbPresetNames.indexOf(name);
37
36
  if (index > -1) {
38
37
  rgbPresetNames.splice(index, 1);
39
38
  }
40
-
41
39
  delete presetMap[name];
42
- } // ----------------------------------------------------------------------------
40
+ }
43
41
 
42
+ // ----------------------------------------------------------------------------
44
43
 
45
44
  var vtkColorMaps = {
46
- addPreset: addPreset,
47
- removePresetByName: removePresetByName,
48
- getPresetByName: getPresetByName,
49
- rgbPresetNames: rgbPresetNames
45
+ addPreset,
46
+ removePresetByName,
47
+ getPresetByName,
48
+ rgbPresetNames
50
49
  };
51
50
 
52
51
  export { vtkColorMaps as default };
@@ -1,52 +1,51 @@
1
1
  import { v as vtkColorMaps$1 } from './LiteColorMaps.json.js';
2
2
 
3
- var presetMap = Object.create(null);
4
- vtkColorMaps$1.filter(function (p) {
5
- return p.RGBPoints;
6
- }).filter(function (p) {
7
- return p.ColorSpace !== 'CIELAB';
8
- }).forEach(function (p) {
3
+ const presetMap = Object.create(null);
4
+ vtkColorMaps$1.filter(p => p.RGBPoints).filter(p => p.ColorSpace !== 'CIELAB').forEach(p => {
9
5
  presetMap[p.Name] = p;
10
- }); // ----------------------------------------------------------------------------
6
+ });
11
7
 
12
- var rgbPresetNames = Object.keys(presetMap);
13
- rgbPresetNames.sort(); // ----------------------------------------------------------------------------
8
+ // ----------------------------------------------------------------------------
9
+
10
+ const rgbPresetNames = Object.keys(presetMap);
11
+ rgbPresetNames.sort();
12
+
13
+ // ----------------------------------------------------------------------------
14
14
 
15
15
  function getPresetByName(name) {
16
16
  return presetMap[name];
17
- } // ----------------------------------------------------------------------------
17
+ }
18
18
 
19
+ // ----------------------------------------------------------------------------
19
20
 
20
21
  function addPreset(preset) {
21
22
  if (!preset.RGBPoints || preset.ColorSpace === 'CIELAB') {
22
23
  return;
23
24
  }
24
-
25
25
  if (!presetMap[preset.Name]) {
26
26
  rgbPresetNames.push(preset.Name);
27
27
  rgbPresetNames.sort();
28
28
  }
29
-
30
29
  presetMap[preset.Name] = preset;
31
- } // ----------------------------------------------------------------------------
30
+ }
32
31
 
32
+ // ----------------------------------------------------------------------------
33
33
 
34
34
  function removePresetByName(name) {
35
- var index = rgbPresetNames.indexOf(name);
36
-
35
+ const index = rgbPresetNames.indexOf(name);
37
36
  if (index > -1) {
38
37
  rgbPresetNames.splice(index, 1);
39
38
  }
40
-
41
39
  delete presetMap[name];
42
- } // ----------------------------------------------------------------------------
40
+ }
43
41
 
42
+ // ----------------------------------------------------------------------------
44
43
 
45
44
  var vtkColorMaps = {
46
- addPreset: addPreset,
47
- removePresetByName: removePresetByName,
48
- getPresetByName: getPresetByName,
49
- rgbPresetNames: rgbPresetNames
45
+ addPreset,
46
+ removePresetByName,
47
+ getPresetByName,
48
+ rgbPresetNames
50
49
  };
51
50
 
52
51
  export { vtkColorMaps as default };
@@ -1,16 +1,16 @@
1
- var ColorSpace = {
1
+ const ColorSpace = {
2
2
  RGB: 0,
3
3
  HSV: 1,
4
4
  LAB: 2,
5
5
  DIVERGING: 3
6
6
  };
7
- var Scale = {
7
+ const Scale = {
8
8
  LINEAR: 0,
9
9
  LOG10: 1
10
10
  };
11
11
  var Constants = {
12
- ColorSpace: ColorSpace,
13
- Scale: Scale
12
+ ColorSpace,
13
+ Scale
14
14
  };
15
15
 
16
16
  export { ColorSpace, Scale, Constants as default };