@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,24 +1,26 @@
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 vtkAbstractPicker from './AbstractPicker.js';
4
3
  import vtkBoundingBox from '../../Common/DataModel/BoundingBox.js';
5
4
  import { d as dot, l as normalize, n as norm, e as distance2BetweenPoints } from '../../Common/Core/Math/index.js';
6
5
  import { mat4, vec4 } from 'gl-matrix';
7
6
 
8
- 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; }
7
+ const {
8
+ vtkErrorMacro
9
+ } = macro;
10
+ const {
11
+ vtkWarningMacro
12
+ } = macro;
9
13
 
10
- 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; }
11
- var vtkErrorMacro = macro.vtkErrorMacro;
12
- var vtkWarningMacro = macro.vtkWarningMacro; // ----------------------------------------------------------------------------
14
+ // ----------------------------------------------------------------------------
13
15
  // vtkPicker methods
14
16
  // ----------------------------------------------------------------------------
15
17
 
16
18
  function vtkPicker(publicAPI, model) {
17
19
  // Set our className
18
20
  model.classHierarchy.push('vtkPicker');
19
-
20
- var superClass = _objectSpread({}, publicAPI);
21
-
21
+ const superClass = {
22
+ ...publicAPI
23
+ };
22
24
  function initialize() {
23
25
  superClass.initialize();
24
26
  model.actors = [];
@@ -29,189 +31,168 @@ function vtkPicker(publicAPI, model) {
29
31
  model.mapper = null;
30
32
  model.dataSet = null;
31
33
  model.globalTMin = Number.MAX_VALUE;
32
- } // Intersect data with specified ray.
33
- // Project the center point of the mapper onto the ray and determine its parametric value
34
-
34
+ }
35
35
 
36
- publicAPI.intersectWithLine = function (p1, p2, tol, mapper) {
36
+ // Intersect data with specified ray.
37
+ // Project the center point of the mapper onto the ray and determine its parametric value
38
+ publicAPI.intersectWithLine = (p1, p2, tol, mapper) => {
37
39
  if (!mapper) {
38
40
  return Number.MAX_VALUE;
39
41
  }
40
-
41
- var center = mapper.getCenter();
42
- var ray = [];
43
-
44
- for (var i = 0; i < 3; i++) {
42
+ const center = mapper.getCenter();
43
+ const ray = [];
44
+ for (let i = 0; i < 3; i++) {
45
45
  ray[i] = p2[i] - p1[i];
46
46
  }
47
-
48
- var rayFactor = dot(ray, ray);
49
-
47
+ const rayFactor = dot(ray, ray);
50
48
  if (rayFactor === 0.0) {
51
49
  return 2.0;
52
- } // Project the center point onto the ray and determine its parametric value
53
-
50
+ }
54
51
 
55
- var t = (ray[0] * (center[0] - p1[0]) + ray[1] * (center[1] - p1[1]) + ray[2] * (center[2] - p1[2])) / rayFactor;
52
+ // Project the center point onto the ray and determine its parametric value
53
+ const t = (ray[0] * (center[0] - p1[0]) + ray[1] * (center[1] - p1[1]) + ray[2] * (center[2] - p1[2])) / rayFactor;
56
54
  return t;
57
- }; // To be overridden in subclasses
58
-
55
+ };
59
56
 
60
- publicAPI.pick = function (selection, renderer) {
57
+ // To be overridden in subclasses
58
+ publicAPI.pick = (selection, renderer) => {
61
59
  if (selection.length !== 3) {
62
60
  vtkWarningMacro('vtkPicker::pick: selectionPt needs three components');
63
61
  }
64
-
65
- var selectionX = selection[0];
66
- var selectionY = selection[1];
67
- var selectionZ = selection[2];
68
- var cameraPos = [];
69
- var cameraFP = [];
70
- var displayCoords = [];
71
- var worldCoords = [];
72
- var ray = [];
73
- var cameraDOP = [];
74
- var clipRange = [];
75
- var tF;
76
- var tB;
77
- var p1World = [];
78
- var p2World = [];
79
- var viewport = [];
80
- var winSize = [];
81
- var x;
82
- var y;
83
- var windowLowerLeft = [];
84
- var windowUpperRight = [];
85
- var tol = 0.0;
86
- var props = [];
87
- var pickable = false;
88
- var p1Mapper = new Float64Array(4);
89
- var p2Mapper = new Float64Array(4);
90
- var bbox = vtkBoundingBox.newInstance();
91
- var t = [];
92
- var hitPosition = [];
93
- var view = renderer.getRenderWindow().getViews()[0];
62
+ const selectionX = selection[0];
63
+ const selectionY = selection[1];
64
+ let selectionZ = selection[2];
65
+ let cameraPos = [];
66
+ let cameraFP = [];
67
+ let displayCoords = [];
68
+ let worldCoords = [];
69
+ const ray = [];
70
+ const cameraDOP = [];
71
+ let clipRange = [];
72
+ let tF;
73
+ let tB;
74
+ const p1World = [];
75
+ const p2World = [];
76
+ let viewport = [];
77
+ let winSize = [];
78
+ let x;
79
+ let y;
80
+ let windowLowerLeft = [];
81
+ let windowUpperRight = [];
82
+ let tol = 0.0;
83
+ let props = [];
84
+ let pickable = false;
85
+ const p1Mapper = new Float64Array(4);
86
+ const p2Mapper = new Float64Array(4);
87
+ const bbox = vtkBoundingBox.newInstance();
88
+ const t = [];
89
+ const hitPosition = [];
90
+ const view = renderer.getRenderWindow().getViews()[0];
94
91
  initialize();
95
92
  model.renderer = renderer;
96
93
  model.selectionPoint[0] = selectionX;
97
94
  model.selectionPoint[1] = selectionY;
98
95
  model.selectionPoint[2] = selectionZ;
99
-
100
96
  if (!renderer) {
101
97
  vtkErrorMacro('Picker::Pick Must specify renderer');
102
98
  return;
103
- } // Get camera focal point and position. Convert to display (screen)
104
- // coordinates. We need a depth value for z-buffer.
105
-
99
+ }
106
100
 
107
- var camera = renderer.getActiveCamera();
101
+ // Get camera focal point and position. Convert to display (screen)
102
+ // coordinates. We need a depth value for z-buffer.
103
+ const camera = renderer.getActiveCamera();
108
104
  cameraPos = camera.getPosition();
109
105
  cameraFP = camera.getFocalPoint();
110
- var dims = view.getViewportSize(renderer);
111
- var aspect = dims[0] / dims[1];
106
+ const dims = view.getViewportSize(renderer);
107
+ const aspect = dims[0] / dims[1];
112
108
  displayCoords = renderer.worldToNormalizedDisplay(cameraFP[0], cameraFP[1], cameraFP[2], aspect);
113
109
  displayCoords = view.normalizedDisplayToDisplay(displayCoords[0], displayCoords[1], displayCoords[2]);
114
- selectionZ = displayCoords[2]; // Convert the selection point into world coordinates.
110
+ selectionZ = displayCoords[2];
115
111
 
116
- var normalizedDisplay = view.displayToNormalizedDisplay(selectionX, selectionY, selectionZ);
112
+ // Convert the selection point into world coordinates.
113
+ const normalizedDisplay = view.displayToNormalizedDisplay(selectionX, selectionY, selectionZ);
117
114
  worldCoords = renderer.normalizedDisplayToWorld(normalizedDisplay[0], normalizedDisplay[1], normalizedDisplay[2], aspect);
118
-
119
- for (var i = 0; i < 3; i++) {
115
+ for (let i = 0; i < 3; i++) {
120
116
  model.pickPosition[i] = worldCoords[i];
121
- } // Compute the ray endpoints. The ray is along the line running from
117
+ }
118
+
119
+ // Compute the ray endpoints. The ray is along the line running from
122
120
  // the camera position to the selection point, starting where this line
123
121
  // intersects the front clipping plane, and terminating where this
124
122
  // line intersects the back clipping plane.
125
-
126
-
127
- for (var _i = 0; _i < 3; _i++) {
128
- ray[_i] = model.pickPosition[_i] - cameraPos[_i];
123
+ for (let i = 0; i < 3; i++) {
124
+ ray[i] = model.pickPosition[i] - cameraPos[i];
129
125
  }
130
-
131
- for (var _i2 = 0; _i2 < 3; _i2++) {
132
- cameraDOP[_i2] = cameraFP[_i2] - cameraPos[_i2];
126
+ for (let i = 0; i < 3; i++) {
127
+ cameraDOP[i] = cameraFP[i] - cameraPos[i];
133
128
  }
134
-
135
129
  normalize(cameraDOP);
136
- var rayLength = dot(cameraDOP, ray);
137
-
130
+ const rayLength = dot(cameraDOP, ray);
138
131
  if (rayLength === 0.0) {
139
132
  vtkWarningMacro('Picker::Pick Cannot process points');
140
133
  return;
141
134
  }
142
-
143
135
  clipRange = camera.getClippingRange();
144
-
145
136
  if (camera.getParallelProjection()) {
146
137
  tF = clipRange[0] - rayLength;
147
138
  tB = clipRange[1] - rayLength;
148
-
149
- for (var _i3 = 0; _i3 < 3; _i3++) {
150
- p1World[_i3] = model.pickPosition[_i3] + tF * cameraDOP[_i3];
151
- p2World[_i3] = model.pickPosition[_i3] + tB * cameraDOP[_i3];
139
+ for (let i = 0; i < 3; i++) {
140
+ p1World[i] = model.pickPosition[i] + tF * cameraDOP[i];
141
+ p2World[i] = model.pickPosition[i] + tB * cameraDOP[i];
152
142
  }
153
143
  } else {
154
144
  tF = clipRange[0] / rayLength;
155
145
  tB = clipRange[1] / rayLength;
156
-
157
- for (var _i4 = 0; _i4 < 3; _i4++) {
158
- p1World[_i4] = cameraPos[_i4] + tF * ray[_i4];
159
- p2World[_i4] = cameraPos[_i4] + tB * ray[_i4];
146
+ for (let i = 0; i < 3; i++) {
147
+ p1World[i] = cameraPos[i] + tF * ray[i];
148
+ p2World[i] = cameraPos[i] + tB * ray[i];
160
149
  }
161
150
  }
162
-
163
151
  p1World[3] = 1.0;
164
- p2World[3] = 1.0; // Compute the tolerance in world coordinates. Do this by
152
+ p2World[3] = 1.0;
153
+
154
+ // Compute the tolerance in world coordinates. Do this by
165
155
  // determining the world coordinates of the diagonal points of the
166
156
  // window, computing the width of the window in world coordinates, and
167
157
  // multiplying by the tolerance.
168
-
169
158
  viewport = renderer.getViewport();
170
-
171
159
  if (renderer.getRenderWindow()) {
172
160
  winSize = renderer.getRenderWindow().getViews()[0].getSize();
173
161
  }
174
-
175
162
  x = winSize[0] * viewport[0];
176
163
  y = winSize[1] * viewport[1];
177
- var normalizedLeftDisplay = view.displayToNormalizedDisplay(x, y, selectionZ);
164
+ const normalizedLeftDisplay = view.displayToNormalizedDisplay(x, y, selectionZ);
178
165
  windowLowerLeft = renderer.normalizedDisplayToWorld(normalizedLeftDisplay[0], normalizedLeftDisplay[1], normalizedLeftDisplay[2], aspect);
179
166
  x = winSize[0] * viewport[2];
180
167
  y = winSize[1] * viewport[3];
181
- var normalizedRightDisplay = view.displayToNormalizedDisplay(x, y, selectionZ);
168
+ const normalizedRightDisplay = view.displayToNormalizedDisplay(x, y, selectionZ);
182
169
  windowUpperRight = renderer.normalizedDisplayToWorld(normalizedRightDisplay[0], normalizedRightDisplay[1], normalizedRightDisplay[2], aspect);
183
-
184
- for (var _i5 = 0; _i5 < 3; _i5++) {
185
- tol += (windowUpperRight[_i5] - windowLowerLeft[_i5]) * (windowUpperRight[_i5] - windowLowerLeft[_i5]);
170
+ for (let i = 0; i < 3; i++) {
171
+ tol += (windowUpperRight[i] - windowLowerLeft[i]) * (windowUpperRight[i] - windowLowerLeft[i]);
186
172
  }
187
-
188
173
  tol = Math.sqrt(tol) * model.tolerance;
189
-
190
174
  if (model.pickFromList) {
191
175
  props = model.pickList;
192
176
  } else {
193
177
  props = renderer.getActors();
194
178
  }
195
-
196
- var scale = [];
197
- props.forEach(function (prop) {
198
- var mapper = prop.getMapper();
179
+ const scale = [];
180
+ props.forEach(prop => {
181
+ const mapper = prop.getMapper();
199
182
  pickable = prop.getNestedPickable() && prop.getNestedVisibility();
200
-
201
183
  if (prop.getProperty().getOpacity() <= 0.0) {
202
184
  pickable = false;
203
185
  }
204
-
205
186
  if (pickable) {
206
- model.transformMatrix = prop.getMatrix().slice(0); // Webgl need a transpose matrix but we need the untransposed one to project world points
187
+ model.transformMatrix = prop.getMatrix().slice(0);
188
+ // Webgl need a transpose matrix but we need the untransposed one to project world points
207
189
  // into the right referential
208
-
209
190
  mat4.transpose(model.transformMatrix, model.transformMatrix);
210
- mat4.invert(model.transformMatrix, model.transformMatrix); // Extract scale
211
-
212
- var col1 = [model.transformMatrix[0], model.transformMatrix[1], model.transformMatrix[2]];
213
- var col2 = [model.transformMatrix[4], model.transformMatrix[5], model.transformMatrix[6]];
214
- var col3 = [model.transformMatrix[8], model.transformMatrix[9], model.transformMatrix[10]];
191
+ mat4.invert(model.transformMatrix, model.transformMatrix);
192
+ // Extract scale
193
+ const col1 = [model.transformMatrix[0], model.transformMatrix[1], model.transformMatrix[2]];
194
+ const col2 = [model.transformMatrix[4], model.transformMatrix[5], model.transformMatrix[6]];
195
+ const col3 = [model.transformMatrix[8], model.transformMatrix[9], model.transformMatrix[10]];
215
196
  scale[0] = norm(col1);
216
197
  scale[1] = norm(col2);
217
198
  scale[2] = norm(col3);
@@ -223,44 +204,38 @@ function vtkPicker(publicAPI, model) {
223
204
  p2Mapper[0] /= p2Mapper[3];
224
205
  p2Mapper[1] /= p2Mapper[3];
225
206
  p2Mapper[2] /= p2Mapper[3];
226
-
227
- for (var _i6 = 0; _i6 < 3; _i6++) {
228
- ray[_i6] = p2Mapper[_i6] - p1Mapper[_i6];
207
+ for (let i = 0; i < 3; i++) {
208
+ ray[i] = p2Mapper[i] - p1Mapper[i];
229
209
  }
230
-
231
210
  if (mapper) {
232
211
  bbox.setBounds(mapper.getBounds());
233
212
  bbox.inflate(tol);
234
213
  } else {
235
214
  bbox.reset();
236
215
  }
237
-
238
216
  if (bbox.intersectBox(p1Mapper, ray, hitPosition, t)) {
239
217
  t[0] = publicAPI.intersectWithLine(p1Mapper, p2Mapper, tol * 0.333 * (scale[0] + scale[1] + scale[2]), mapper);
240
-
241
218
  if (t[0] < Number.MAX_VALUE) {
242
- var p = [];
219
+ const p = [];
243
220
  p[0] = (1.0 - t[0]) * p1World[0] + t[0] * p2World[0];
244
221
  p[1] = (1.0 - t[0]) * p1World[1] + t[0] * p2World[1];
245
- p[2] = (1.0 - t[0]) * p1World[2] + t[0] * p2World[2]; // Check if the current actor is already in the list
222
+ p[2] = (1.0 - t[0]) * p1World[2] + t[0] * p2World[2];
246
223
 
247
- var actorID = -1;
248
-
249
- for (var _i7 = 0; _i7 < model.actors.length; _i7++) {
250
- if (model.actors[_i7] === prop) {
251
- actorID = _i7;
224
+ // Check if the current actor is already in the list
225
+ let actorID = -1;
226
+ for (let i = 0; i < model.actors.length; i++) {
227
+ if (model.actors[i] === prop) {
228
+ actorID = i;
252
229
  break;
253
230
  }
254
231
  }
255
-
256
232
  if (actorID === -1) {
257
233
  model.actors.push(prop);
258
234
  model.pickedPositions.push(p);
259
235
  } else {
260
- var oldPoint = model.pickedPositions[actorID];
261
- var distOld = distance2BetweenPoints(p1World, oldPoint);
262
- var distCurrent = distance2BetweenPoints(p1World, p);
263
-
236
+ const oldPoint = model.pickedPositions[actorID];
237
+ const distOld = distance2BetweenPoints(p1World, oldPoint);
238
+ const distCurrent = distance2BetweenPoints(p1World, p);
264
239
  if (distCurrent < distOld) {
265
240
  model.pickedPositions[actorID] = p;
266
241
  }
@@ -268,17 +243,17 @@ function vtkPicker(publicAPI, model) {
268
243
  }
269
244
  }
270
245
  }
271
-
272
246
  publicAPI.invokePickChange(model.pickedPositions);
273
247
  return 1;
274
248
  });
275
249
  };
276
- } // ----------------------------------------------------------------------------
250
+ }
251
+
252
+ // ----------------------------------------------------------------------------
277
253
  // Object factory
278
254
  // ----------------------------------------------------------------------------
279
255
 
280
-
281
- var DEFAULT_VALUES = {
256
+ const DEFAULT_VALUES = {
282
257
  tolerance: 0.025,
283
258
  mapperPosition: [0.0, 0.0, 0.0],
284
259
  mapper: null,
@@ -287,25 +262,31 @@ var DEFAULT_VALUES = {
287
262
  pickedPositions: [],
288
263
  transformMatrix: null,
289
264
  globalTMin: Number.MAX_VALUE
290
- }; // ----------------------------------------------------------------------------
265
+ };
291
266
 
267
+ // ----------------------------------------------------------------------------
292
268
  function extend(publicAPI, model) {
293
- var initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
294
- Object.assign(model, DEFAULT_VALUES, initialValues); // Inheritance
269
+ let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
270
+ Object.assign(model, DEFAULT_VALUES, initialValues);
295
271
 
272
+ // Inheritance
296
273
  vtkAbstractPicker.extend(publicAPI, model, initialValues);
297
274
  macro.setGet(publicAPI, model, ['tolerance']);
298
275
  macro.setGetArray(publicAPI, model, ['mapperPosition'], 3);
299
276
  macro.get(publicAPI, model, ['mapper', 'dataSet', 'actors', 'pickedPositions']);
300
277
  macro.event(publicAPI, model, 'pickChange');
301
278
  vtkPicker(publicAPI, model);
302
- } // ----------------------------------------------------------------------------
279
+ }
303
280
 
304
- var newInstance = macro.newInstance(extend, 'vtkPicker'); // ----------------------------------------------------------------------------
281
+ // ----------------------------------------------------------------------------
282
+
283
+ const newInstance = macro.newInstance(extend, 'vtkPicker');
284
+
285
+ // ----------------------------------------------------------------------------
305
286
 
306
287
  var vtkPicker$1 = {
307
- newInstance: newInstance,
308
- extend: extend
288
+ newInstance,
289
+ extend
309
290
  };
310
291
 
311
292
  export { vtkPicker$1 as default, extend, newInstance };
@@ -1,76 +1,79 @@
1
1
  import { mat4, vec3 } from 'gl-matrix';
2
- import macro from '../../macros.js';
2
+ import { m as macro } from '../../macros2.js';
3
3
  import vtkMapper from './Mapper.js';
4
4
 
5
+ // ----------------------------------------------------------------------------
5
6
  // vtkPixelSpaceCallbackMapper methods
6
7
  // ----------------------------------------------------------------------------
7
8
 
8
9
  function vtkPixelSpaceCallbackMapper(publicAPI, model) {
9
10
  model.classHierarchy.push('vtkPixelSpaceCallbackMapper');
10
-
11
11
  if (!model.callback) {
12
- model.callback = function () {};
12
+ model.callback = () => {};
13
13
  }
14
-
15
- publicAPI.invokeCallback = function (dataset, camera, aspect, windowSize, depthValues) {
14
+ publicAPI.invokeCallback = (dataset, camera, aspect, windowSize, depthValues) => {
16
15
  if (!model.callback) {
17
16
  return;
18
17
  }
19
-
20
- var matrix = camera.getCompositeProjectionMatrix(aspect, -1, 1);
18
+ const matrix = camera.getCompositeProjectionMatrix(aspect, -1, 1);
21
19
  mat4.transpose(matrix, matrix);
22
- var dataPoints = dataset.getPoints();
23
- var result = new Float64Array(3);
24
- var width = windowSize.usize;
25
- var height = windowSize.vsize;
26
- var hw = width / 2;
27
- var hh = height / 2;
28
- var coords = [];
29
-
30
- for (var pidx = 0; pidx < dataPoints.getNumberOfPoints(); pidx += 1) {
31
- var point = dataPoints.getPoint(pidx);
20
+ const dataPoints = dataset.getPoints();
21
+ const result = new Float64Array(3);
22
+ const width = windowSize.usize;
23
+ const height = windowSize.vsize;
24
+ const hw = width / 2;
25
+ const hh = height / 2;
26
+ const coords = [];
27
+ for (let pidx = 0; pidx < dataPoints.getNumberOfPoints(); pidx += 1) {
28
+ const point = dataPoints.getPoint(pidx);
32
29
  vec3.transformMat4(result, point, matrix);
33
- var coord = [result[0] * hw + hw, result[1] * hh + hh, result[2], 0];
34
-
30
+ const coord = [result[0] * hw + hw, result[1] * hh + hh, result[2], 0];
35
31
  if (depthValues) {
36
- var linIdx = Math.floor(coord[1]) * width + Math.floor(coord[0]);
37
- var idx = linIdx * 4;
38
- var r = depthValues[idx] / 255;
39
- var g = depthValues[idx + 1] / 255;
40
- var z = (r * 256 + g) / 257;
32
+ const linIdx = Math.floor(coord[1]) * width + Math.floor(coord[0]);
33
+ const idx = linIdx * 4;
34
+ const r = depthValues[idx] / 255;
35
+ const g = depthValues[idx + 1] / 255;
36
+ const z = (r * 256 + g) / 257;
41
37
  coord[3] = z * 2 - 1;
42
38
  }
43
-
44
39
  coords.push(coord);
45
40
  }
46
-
47
41
  model.callback(coords, camera, aspect, depthValues, [width, height]);
48
42
  };
49
- } // ----------------------------------------------------------------------------
43
+ }
44
+
45
+ // ----------------------------------------------------------------------------
50
46
  // Object factory
51
47
  // ----------------------------------------------------------------------------
52
48
 
53
-
54
- var DEFAULT_VALUES = {
49
+ const DEFAULT_VALUES = {
55
50
  callback: null,
56
51
  useZValues: false
57
- }; // ----------------------------------------------------------------------------
52
+ };
53
+
54
+ // ----------------------------------------------------------------------------
58
55
 
59
56
  function extend(publicAPI, model) {
60
- var initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
61
- Object.assign(model, DEFAULT_VALUES, initialValues); // Inheritance
57
+ let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
58
+ Object.assign(model, DEFAULT_VALUES, initialValues);
62
59
 
60
+ // Inheritance
63
61
  vtkMapper.extend(publicAPI, model, initialValues);
64
- macro.setGet(publicAPI, model, ['callback', 'useZValues']); // Object methods
62
+ macro.setGet(publicAPI, model, ['callback', 'useZValues']);
65
63
 
64
+ // Object methods
66
65
  vtkPixelSpaceCallbackMapper(publicAPI, model);
67
- } // ----------------------------------------------------------------------------
66
+ }
68
67
 
69
- var newInstance = macro.newInstance(extend, 'vtkPixelSpaceCallbackMapper'); // ----------------------------------------------------------------------------
68
+ // ----------------------------------------------------------------------------
69
+
70
+ const newInstance = macro.newInstance(extend, 'vtkPixelSpaceCallbackMapper');
71
+
72
+ // ----------------------------------------------------------------------------
70
73
 
71
74
  var vtkPixelSpaceCallbackMapper$1 = {
72
- newInstance: newInstance,
73
- extend: extend
75
+ newInstance,
76
+ extend
74
77
  };
75
78
 
76
79
  export { vtkPixelSpaceCallbackMapper$1 as default, extend, newInstance };