@kitware/vtk.js 28.10.2 → 28.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (565) hide show
  1. package/Common/Core/Base64.js +53 -82
  2. package/Common/Core/CellArray.js +52 -60
  3. package/Common/Core/ClassHierarchy.js +8 -36
  4. package/Common/Core/DataArray/Constants.js +6 -6
  5. package/Common/Core/DataArray.js +185 -270
  6. package/Common/Core/Endian.js +14 -17
  7. package/Common/Core/HalfFloat.js +17 -34
  8. package/Common/Core/ImageHelper.js +17 -25
  9. package/Common/Core/LookupTable.js +131 -144
  10. package/Common/Core/Math/Constants.js +8 -8
  11. package/Common/Core/Math/index.js +754 -942
  12. package/Common/Core/Math.js +2 -4
  13. package/Common/Core/MatrixBuilder.js +99 -151
  14. package/Common/Core/Points.js +43 -43
  15. package/Common/Core/PriorityQueue.js +30 -28
  16. package/Common/Core/ProgressHandler.js +31 -32
  17. package/Common/Core/ScalarsToColors/Constants.js +4 -4
  18. package/Common/Core/ScalarsToColors.js +196 -253
  19. package/Common/Core/StringArray.js +48 -73
  20. package/Common/Core/URLExtract.js +10 -29
  21. package/Common/Core/VariantArray.js +48 -73
  22. package/Common/Core.js +11 -11
  23. package/Common/DataModel/AbstractPointLocator.js +19 -17
  24. package/Common/DataModel/BoundingBox.js +322 -490
  25. package/Common/DataModel/Box.js +46 -63
  26. package/Common/DataModel/CardinalSpline1D.js +92 -102
  27. package/Common/DataModel/Cell.js +41 -61
  28. package/Common/DataModel/CellLinks.js +91 -127
  29. package/Common/DataModel/CellTypes/Constants.js +7 -6
  30. package/Common/DataModel/CellTypes.js +55 -74
  31. package/Common/DataModel/Collection.js +45 -61
  32. package/Common/DataModel/Cone.js +28 -20
  33. package/Common/DataModel/Cylinder.js +41 -35
  34. package/Common/DataModel/DataSet/Constants.js +11 -5
  35. package/Common/DataModel/DataSet.js +37 -25
  36. package/Common/DataModel/DataSetAttributes/Constants.js +18 -18
  37. package/Common/DataModel/DataSetAttributes/FieldData.js +103 -194
  38. package/Common/DataModel/DataSetAttributes.js +96 -138
  39. package/Common/DataModel/EdgeLocator.js +45 -70
  40. package/Common/DataModel/ITKHelper.js +67 -137
  41. package/Common/DataModel/ImageData.js +115 -172
  42. package/Common/DataModel/ImplicitBoolean/Constants.js +2 -2
  43. package/Common/DataModel/ImplicitBoolean.js +66 -96
  44. package/Common/DataModel/IncrementalOctreeNode.js +201 -231
  45. package/Common/DataModel/IncrementalOctreePointLocator.js +160 -198
  46. package/Common/DataModel/KochanekSpline1D.js +78 -81
  47. package/Common/DataModel/Line/Constants.js +2 -2
  48. package/Common/DataModel/Line.js +82 -105
  49. package/Common/DataModel/Locator.js +17 -10
  50. package/Common/DataModel/Molecule.js +26 -17
  51. package/Common/DataModel/PiecewiseFunction.js +218 -239
  52. package/Common/DataModel/Plane.js +90 -113
  53. package/Common/DataModel/PointSet.js +30 -26
  54. package/Common/DataModel/PolyData/Constants.js +2 -2
  55. package/Common/DataModel/PolyData.js +95 -120
  56. package/Common/DataModel/PolyLine.js +44 -61
  57. package/Common/DataModel/Polygon/Constants.js +4 -4
  58. package/Common/DataModel/Polygon.js +128 -169
  59. package/Common/DataModel/Quad/Constants.js +2 -2
  60. package/Common/DataModel/Quad.js +61 -100
  61. package/Common/DataModel/SelectionNode/Constants.js +5 -4
  62. package/Common/DataModel/SelectionNode.js +25 -21
  63. package/Common/DataModel/Sphere.js +40 -35
  64. package/Common/DataModel/Spline1D/Constants.js +3 -2
  65. package/Common/DataModel/Spline1D.js +34 -18
  66. package/Common/DataModel/Spline3D/Constants.js +2 -2
  67. package/Common/DataModel/Spline3D.js +46 -41
  68. package/Common/DataModel/StructuredData/Constants.js +2 -2
  69. package/Common/DataModel/StructuredData.js +9 -20
  70. package/Common/DataModel/Triangle.js +207 -250
  71. package/Common/DataModel.js +19 -19
  72. package/Common/System/MobileVR.js +56 -61
  73. package/Common/System/TimerLog.js +1 -1
  74. package/Common/System.js +2 -2
  75. package/Common/Transform/LandmarkTransform/Constants.js +2 -2
  76. package/Common/Transform/LandmarkTransform.js +133 -117
  77. package/Common/Transform/Transform.js +42 -57
  78. package/Common/Transform.js +2 -2
  79. package/Common/index.js +4 -4
  80. package/Filters/Core/Cutter.js +134 -146
  81. package/Filters/Core/PolyDataNormals.js +44 -50
  82. package/Filters/Core.js +2 -2
  83. package/Filters/Cornerstone/ImageDataToCornerstoneImage.js +45 -33
  84. package/Filters/Cornerstone.js +1 -1
  85. package/Filters/General/AppendPolyData.js +84 -100
  86. package/Filters/General/Calculator.js +95 -163
  87. package/Filters/General/ClipClosedSurface/Constants.js +2 -2
  88. package/Filters/General/ClipClosedSurface.js +341 -416
  89. package/Filters/General/ClosedPolyLineToSurfaceFilter.js +141 -156
  90. package/Filters/General/ContourTriangulator/Constants.js +2 -2
  91. package/Filters/General/ContourTriangulator/helper.js +684 -812
  92. package/Filters/General/ContourTriangulator.js +92 -89
  93. package/Filters/General/ImageCropFilter.js +77 -78
  94. package/Filters/General/ImageDataOutlineFilter.js +42 -36
  95. package/Filters/General/ImageMarchingCubes/caseTable.js +9 -521
  96. package/Filters/General/ImageMarchingCubes.js +99 -112
  97. package/Filters/General/ImageMarchingSquares/caseTable.js +9 -41
  98. package/Filters/General/ImageMarchingSquares.js +93 -118
  99. package/Filters/General/ImageOutlineFilter.js +53 -54
  100. package/Filters/General/ImageSliceFilter.js +39 -30
  101. package/Filters/General/ImageStreamline.js +107 -124
  102. package/Filters/General/LineFilter.js +26 -15
  103. package/Filters/General/MoleculeToRepresentation.js +136 -149
  104. package/Filters/General/OBBTree/OBBNode.js +36 -34
  105. package/Filters/General/OBBTree/helper.js +19 -24
  106. package/Filters/General/OBBTree.js +396 -488
  107. package/Filters/General/OutlineFilter.js +52 -34
  108. package/Filters/General/PaintFilter/PaintFilter.worker.js +93 -130
  109. package/Filters/General/PaintFilter.js +150 -162
  110. package/Filters/General/ScalarToRGBA.js +38 -33
  111. package/Filters/General/TriangleFilter.js +65 -62
  112. package/Filters/General/TubeFilter/Constants.js +4 -4
  113. package/Filters/General/TubeFilter.js +376 -496
  114. package/Filters/General/WarpScalar.js +58 -60
  115. package/Filters/General/WindowedSincPolyDataFilter.js +258 -330
  116. package/Filters/General.js +21 -21
  117. package/Filters/Sources/Arrow2DSource/Constants.js +2 -2
  118. package/Filters/Sources/Arrow2DSource.js +56 -56
  119. package/Filters/Sources/ArrowSource.js +39 -29
  120. package/Filters/Sources/CircleSource.js +43 -43
  121. package/Filters/Sources/ConcentricCylinderSource.js +151 -174
  122. package/Filters/Sources/ConeSource.js +51 -42
  123. package/Filters/Sources/CubeSource.js +75 -96
  124. package/Filters/Sources/Cursor3D.js +94 -109
  125. package/Filters/Sources/CylinderSource.js +90 -90
  126. package/Filters/Sources/ImageGridSource.js +43 -43
  127. package/Filters/Sources/LineSource.js +49 -39
  128. package/Filters/Sources/PlaneSource.js +97 -104
  129. package/Filters/Sources/PointSource.js +46 -37
  130. package/Filters/Sources/RTAnalyticSource.js +50 -48
  131. package/Filters/Sources/SLICSource.js +63 -73
  132. package/Filters/Sources/SphereSource.js +88 -78
  133. package/Filters/Sources/ViewFinderSource.js +26 -23
  134. package/Filters/Sources.js +14 -14
  135. package/Filters/Texture/TextureMapToPlane.js +95 -97
  136. package/Filters/Texture/TextureMapToSphere.js +46 -54
  137. package/Filters/Texture.js +2 -2
  138. package/Filters/index.js +5 -5
  139. package/IO/Core/BinaryHelper.js +12 -18
  140. package/IO/Core/DataAccessHelper/HtmlDataAccessHelper.js +43 -59
  141. package/IO/Core/DataAccessHelper/HttpDataAccessHelper.js +76 -113
  142. package/IO/Core/DataAccessHelper/JSZipDataAccessHelper.js +62 -112
  143. package/IO/Core/DataAccessHelper/LiteHttpDataAccessHelper.js +76 -113
  144. package/IO/Core/DataAccessHelper.js +6 -6
  145. package/IO/Core/HttpDataSetReader.js +136 -139
  146. package/IO/Core/HttpDataSetSeriesReader.js +64 -75
  147. package/IO/Core/HttpSceneLoader.js +130 -179
  148. package/IO/Core/ImageStream/DefaultProtocol.js +29 -43
  149. package/IO/Core/ImageStream/ViewStream.js +100 -103
  150. package/IO/Core/ImageStream.js +62 -54
  151. package/IO/Core/ResourceLoader.js +10 -9
  152. package/IO/Core/Serializer/ArraySerializer.js +40 -40
  153. package/IO/Core/Serializer/FieldDataSerializer.js +18 -28
  154. package/IO/Core/Serializer/ImageDataSerializer.js +22 -23
  155. package/IO/Core/Serializer/PolyDataSerializer.js +17 -21
  156. package/IO/Core/Serializer.js +6 -13
  157. package/IO/Core/WSLinkClient.js +90 -76
  158. package/IO/Core/ZipMultiDataSetReader.js +46 -44
  159. package/IO/Core/ZipMultiDataSetWriter.js +43 -34
  160. package/IO/Core.js +7 -7
  161. package/IO/Geometry/DracoReader.js +118 -121
  162. package/IO/Geometry/PLYReader.js +163 -223
  163. package/IO/Geometry/PLYWriter/Constants.js +5 -5
  164. package/IO/Geometry/PLYWriter.js +139 -154
  165. package/IO/Geometry/STLReader.js +123 -146
  166. package/IO/Geometry/STLWriter/Constants.js +2 -2
  167. package/IO/Geometry/STLWriter.js +83 -82
  168. package/IO/Geometry.js +5 -5
  169. package/IO/Legacy/LegacyAsciiParser.js +78 -139
  170. package/IO/Legacy/PolyDataReader.js +48 -36
  171. package/IO/Legacy.js +2 -2
  172. package/IO/Misc/ElevationReader.js +67 -60
  173. package/IO/Misc/HttpDataSetLODsLoader.js +41 -38
  174. package/IO/Misc/ITKImageReader.js +58 -45
  175. package/IO/Misc/ITKPolyDataReader.js +50 -38
  176. package/IO/Misc/JSONNucleoReader.js +49 -42
  177. package/IO/Misc/JSONReader.js +38 -33
  178. package/IO/Misc/MTLReader.js +74 -119
  179. package/IO/Misc/OBJReader.js +153 -206
  180. package/IO/Misc/PDBReader.js +70 -68
  181. package/IO/Misc/SkyboxReader.js +77 -82
  182. package/IO/Misc.js +9 -9
  183. package/IO/XML/XMLImageDataReader.js +36 -38
  184. package/IO/XML/XMLImageDataWriter.js +28 -21
  185. package/IO/XML/XMLPolyDataReader.js +49 -46
  186. package/IO/XML/XMLPolyDataWriter.js +43 -42
  187. package/IO/XML/XMLReader.js +262 -304
  188. package/IO/XML/XMLWriter/Constants.js +3 -3
  189. package/IO/XML/XMLWriter.js +70 -84
  190. package/IO/XML.js +6 -6
  191. package/IO/index.js +5 -5
  192. package/Imaging/Core/AbstractImageInterpolator/Constants.js +4 -4
  193. package/Imaging/Core/AbstractImageInterpolator/InterpolationInfo.js +30 -27
  194. package/Imaging/Core/AbstractImageInterpolator.js +74 -87
  195. package/Imaging/Core/ImageInterpolator.js +201 -252
  196. package/Imaging/Core/ImagePointDataIterator.js +96 -122
  197. package/Imaging/Core/ImageReslice/Constants.js +2 -2
  198. package/Imaging/Core/ImageReslice.js +327 -464
  199. package/Imaging/Core.js +4 -4
  200. package/Imaging/Hybrid/SampleFunction.js +58 -51
  201. package/Imaging/Hybrid.js +1 -1
  202. package/Imaging/index.js +2 -2
  203. package/Interaction/Animations/TimeStepBasedAnimationHandler.js +39 -54
  204. package/Interaction/Manipulators/CompositeCameraManipulator.js +22 -13
  205. package/Interaction/Manipulators/CompositeGestureManipulator.js +31 -43
  206. package/Interaction/Manipulators/CompositeKeyboardManipulator.js +15 -11
  207. package/Interaction/Manipulators/CompositeMouseManipulator.js +27 -33
  208. package/Interaction/Manipulators/CompositeVRManipulator.js +22 -15
  209. package/Interaction/Manipulators/GestureCameraManipulator.js +54 -36
  210. package/Interaction/Manipulators/KeyboardCameraManipulator.js +95 -97
  211. package/Interaction/Manipulators/MouseBoxSelectorManipulator.js +70 -89
  212. package/Interaction/Manipulators/MouseCameraAxisRotateManipulator.js +67 -54
  213. package/Interaction/Manipulators/MouseCameraSliceManipulator.js +40 -38
  214. package/Interaction/Manipulators/MouseCameraTrackballFirstPersonManipulator.js +83 -68
  215. package/Interaction/Manipulators/MouseCameraTrackballMultiRotateManipulator.js +32 -28
  216. package/Interaction/Manipulators/MouseCameraTrackballPanManipulator.js +47 -40
  217. package/Interaction/Manipulators/MouseCameraTrackballRollManipulator.js +55 -43
  218. package/Interaction/Manipulators/MouseCameraTrackballRotateManipulator.js +56 -46
  219. package/Interaction/Manipulators/MouseCameraTrackballZoomManipulator.js +41 -46
  220. package/Interaction/Manipulators/MouseCameraTrackballZoomToMouseManipulator.js +29 -27
  221. package/Interaction/Manipulators/MouseCameraUnicamManipulator.js +123 -146
  222. package/Interaction/Manipulators/MouseCameraUnicamRotateManipulator.js +144 -166
  223. package/Interaction/Manipulators/MouseRangeManipulator.js +127 -132
  224. package/Interaction/Manipulators/VRButtonPanManipulator.js +33 -23
  225. package/Interaction/Manipulators.js +21 -21
  226. package/Interaction/Misc/DeviceOrientationToCamera.js +25 -47
  227. package/Interaction/Misc.js +1 -1
  228. package/Interaction/Style/InteractorStyleImage.js +101 -121
  229. package/Interaction/Style/InteractorStyleMPRSlice.js +111 -128
  230. package/Interaction/Style/InteractorStyleManipulator/Presets.js +9 -17
  231. package/Interaction/Style/InteractorStyleManipulator.js +254 -329
  232. package/Interaction/Style/InteractorStyleRemoteMouse.js +195 -180
  233. package/Interaction/Style/InteractorStyleTrackballCamera.js +154 -157
  234. package/Interaction/Style/InteractorStyleUnicam.js +30 -38
  235. package/Interaction/Style.js +5 -5
  236. package/Interaction/UI/CornerAnnotation/CornerAnnotation.module.css.js +1 -1
  237. package/Interaction/UI/CornerAnnotation.js +65 -48
  238. package/Interaction/UI/FPSMonitor.js +104 -105
  239. package/Interaction/UI/Icons.js +1 -1
  240. package/Interaction/UI/Slider/Constants.js +2 -2
  241. package/Interaction/UI/Slider.js +78 -95
  242. package/Interaction/UI/VolumeController.js +104 -97
  243. package/Interaction/UI.js +5 -5
  244. package/Interaction/Widgets/OrientationMarkerWidget/Constants.js +2 -2
  245. package/Interaction/Widgets/OrientationMarkerWidget.js +90 -135
  246. package/Interaction/Widgets/PiecewiseGaussianWidget/ComputeHistogram.worker.js +0 -3
  247. package/Interaction/Widgets/PiecewiseGaussianWidget.js +381 -498
  248. package/Interaction/Widgets.js +2 -2
  249. package/Interaction/index.js +5 -5
  250. package/Proxy/Animation/AbstractAnimationProxy.js +22 -15
  251. package/Proxy/Animation/AnimationProxyManager.js +43 -51
  252. package/Proxy/Animation/TimeStepBasedAnimationHandlerProxy.js +26 -19
  253. package/Proxy/Core/AbstractRepresentationProxy.js +97 -151
  254. package/Proxy/Core/LookupTableProxy/Constants.js +4 -4
  255. package/Proxy/Core/LookupTableProxy.js +49 -52
  256. package/Proxy/Core/PiecewiseFunctionProxy/Constants.js +4 -4
  257. package/Proxy/Core/PiecewiseFunctionProxy.js +63 -72
  258. package/Proxy/Core/ProxyManager/core.js +83 -106
  259. package/Proxy/Core/ProxyManager/properties.js +53 -76
  260. package/Proxy/Core/ProxyManager/state.js +100 -110
  261. package/Proxy/Core/ProxyManager/view.js +45 -55
  262. package/Proxy/Core/ProxyManager.js +16 -8
  263. package/Proxy/Core/SourceProxy.js +41 -38
  264. package/Proxy/Core/View2DProxy.js +143 -199
  265. package/Proxy/Core/ViewProxy.js +223 -269
  266. package/Proxy/Core.js +7 -7
  267. package/Proxy/Representations/GeometryRepresentationProxy.js +34 -20
  268. package/Proxy/Representations/GlyphRepresentationProxy.js +42 -41
  269. package/Proxy/Representations/MoleculeRepresentationProxy.js +32 -22
  270. package/Proxy/Representations/ResliceRepresentationProxy.js +48 -32
  271. package/Proxy/Representations/SkyboxRepresentationProxy.js +30 -29
  272. package/Proxy/Representations/SliceRepresentationProxy.js +93 -112
  273. package/Proxy/Representations/SlicedGeometryRepresentationProxy.js +46 -42
  274. package/Proxy/Representations/VolumeRepresentationProxy.js +108 -133
  275. package/Proxy/Representations.js +7 -7
  276. package/Proxy/index.js +2 -2
  277. package/Rendering/Core/AbstractImageMapper/helper.js +44 -49
  278. package/Rendering/Core/AbstractImageMapper.js +18 -19
  279. package/Rendering/Core/AbstractMapper.js +39 -55
  280. package/Rendering/Core/AbstractMapper3D.js +26 -31
  281. package/Rendering/Core/AbstractPicker.js +25 -21
  282. package/Rendering/Core/Actor.js +71 -93
  283. package/Rendering/Core/Actor2D.js +64 -78
  284. package/Rendering/Core/AnnotatedCubeActor/Presets.js +5 -11
  285. package/Rendering/Core/AnnotatedCubeActor.js +94 -79
  286. package/Rendering/Core/AxesActor.js +65 -87
  287. package/Rendering/Core/Camera.js +246 -271
  288. package/Rendering/Core/CellPicker.js +125 -148
  289. package/Rendering/Core/ColorTransferFunction/ColorMaps.js +20 -21
  290. package/Rendering/Core/ColorTransferFunction/ColorMapsLite.js +20 -21
  291. package/Rendering/Core/ColorTransferFunction/Constants.js +4 -4
  292. package/Rendering/Core/ColorTransferFunction.js +460 -546
  293. package/Rendering/Core/Coordinate/Constants.js +2 -2
  294. package/Rendering/Core/Coordinate.js +119 -198
  295. package/Rendering/Core/CubeAxesActor.js +294 -320
  296. package/Rendering/Core/Follower.js +46 -45
  297. package/Rendering/Core/Glyph3DMapper/Constants.js +4 -4
  298. package/Rendering/Core/Glyph3DMapper.js +96 -148
  299. package/Rendering/Core/HardwareSelector.js +36 -69
  300. package/Rendering/Core/ImageArrayMapper.js +87 -126
  301. package/Rendering/Core/ImageCPRMapper.js +134 -209
  302. package/Rendering/Core/ImageMapper/Constants.js +2 -2
  303. package/Rendering/Core/ImageMapper.js +85 -144
  304. package/Rendering/Core/ImageProperty/Constants.js +2 -2
  305. package/Rendering/Core/ImageProperty.js +66 -81
  306. package/Rendering/Core/ImageResliceMapper/Constants.js +2 -2
  307. package/Rendering/Core/ImageResliceMapper.js +36 -29
  308. package/Rendering/Core/ImageSlice.js +85 -127
  309. package/Rendering/Core/InteractorObserver.js +82 -73
  310. package/Rendering/Core/InteractorStyle/Constants.js +2 -2
  311. package/Rendering/Core/InteractorStyle.js +56 -58
  312. package/Rendering/Core/Light.js +43 -49
  313. package/Rendering/Core/Mapper/CoincidentTopologyHelper.js +37 -48
  314. package/Rendering/Core/Mapper/Constants.js +6 -6
  315. package/Rendering/Core/Mapper/Static.js +15 -12
  316. package/Rendering/Core/Mapper.js +194 -259
  317. package/Rendering/Core/Mapper2D.js +61 -100
  318. package/Rendering/Core/Picker.js +124 -143
  319. package/Rendering/Core/PixelSpaceCallbackMapper.js +40 -37
  320. package/Rendering/Core/PointPicker.js +68 -79
  321. package/Rendering/Core/Prop/Constants.js +2 -2
  322. package/Rendering/Core/Prop.js +58 -106
  323. package/Rendering/Core/Prop3D.js +54 -83
  324. package/Rendering/Core/Property/Constants.js +6 -6
  325. package/Rendering/Core/Property.js +45 -74
  326. package/Rendering/Core/Property2D/Constants.js +2 -2
  327. package/Rendering/Core/Property2D.js +33 -42
  328. package/Rendering/Core/RenderWindow.js +70 -82
  329. package/Rendering/Core/RenderWindowInteractor/Constants.js +7 -7
  330. package/Rendering/Core/RenderWindowInteractor.js +324 -439
  331. package/Rendering/Core/Renderer.js +192 -256
  332. package/Rendering/Core/ScalarBarActor.js +267 -272
  333. package/Rendering/Core/Skybox.js +26 -24
  334. package/Rendering/Core/SphereMapper.js +22 -12
  335. package/Rendering/Core/StickMapper.js +22 -12
  336. package/Rendering/Core/SurfaceLICInterface/Constants.js +6 -6
  337. package/Rendering/Core/SurfaceLICInterface.js +13 -9
  338. package/Rendering/Core/SurfaceLICMapper.js +23 -15
  339. package/Rendering/Core/Texture.js +99 -141
  340. package/Rendering/Core/Viewport.js +60 -88
  341. package/Rendering/Core/Volume.js +55 -77
  342. package/Rendering/Core/VolumeMapper/Constants.js +4 -4
  343. package/Rendering/Core/VolumeMapper.js +59 -91
  344. package/Rendering/Core/VolumeProperty/Constants.js +4 -4
  345. package/Rendering/Core/VolumeProperty.js +78 -115
  346. package/Rendering/Core.js +47 -49
  347. package/Rendering/Misc/CanvasView.js +62 -61
  348. package/Rendering/Misc/FullScreenRenderWindow.js +60 -62
  349. package/Rendering/Misc/GenericRenderWindow.js +48 -37
  350. package/Rendering/Misc/RemoteView.js +86 -80
  351. package/Rendering/Misc/RenderWindowWithControlBar.js +54 -48
  352. package/Rendering/Misc/SynchronizableRenderWindow/BehaviorManager/CameraSynchronizer.js +43 -51
  353. package/Rendering/Misc/SynchronizableRenderWindow/BehaviorManager.js +52 -82
  354. package/Rendering/Misc/SynchronizableRenderWindow/ObjectManager.js +258 -308
  355. package/Rendering/Misc/SynchronizableRenderWindow.js +133 -163
  356. package/Rendering/Misc/TextureLODsDownloader.js +72 -74
  357. package/Rendering/Misc.js +7 -7
  358. package/Rendering/OpenGL/Actor.js +57 -68
  359. package/Rendering/OpenGL/Actor2D.js +56 -56
  360. package/Rendering/OpenGL/BufferObject/Constants.js +2 -2
  361. package/Rendering/OpenGL/BufferObject.js +50 -65
  362. package/Rendering/OpenGL/Camera.js +35 -29
  363. package/Rendering/OpenGL/CellArrayBufferObject.js +119 -149
  364. package/Rendering/OpenGL/Convolution2DPass.js +87 -81
  365. package/Rendering/OpenGL/CubeAxesActor.js +28 -21
  366. package/Rendering/OpenGL/ForwardPass.js +53 -64
  367. package/Rendering/OpenGL/Framebuffer.js +61 -101
  368. package/Rendering/OpenGL/Glyph3DMapper.js +165 -196
  369. package/Rendering/OpenGL/HardwareSelector/Constants.js +2 -2
  370. package/Rendering/OpenGL/HardwareSelector.js +272 -397
  371. package/Rendering/OpenGL/Helper.js +58 -73
  372. package/Rendering/OpenGL/ImageCPRMapper.js +339 -421
  373. package/Rendering/OpenGL/ImageMapper.js +268 -361
  374. package/Rendering/OpenGL/ImageResliceMapper.js +306 -438
  375. package/Rendering/OpenGL/ImageSlice.js +48 -54
  376. package/Rendering/OpenGL/OrderIndependentTranslucentPass.js +102 -84
  377. package/Rendering/OpenGL/PixelSpaceCallbackMapper.js +43 -42
  378. package/Rendering/OpenGL/PolyDataMapper.js +358 -492
  379. package/Rendering/OpenGL/PolyDataMapper2D.js +153 -205
  380. package/Rendering/OpenGL/RadialDistortionPass.js +86 -89
  381. package/Rendering/OpenGL/RenderWindow/Constants.js +2 -2
  382. package/Rendering/OpenGL/RenderWindow/ContextProxy.js +20 -29
  383. package/Rendering/OpenGL/RenderWindow.js +356 -510
  384. package/Rendering/OpenGL/Renderer.js +77 -89
  385. package/Rendering/OpenGL/ReplacementShaderMapper.js +28 -46
  386. package/Rendering/OpenGL/ScalarBarActor.js +28 -21
  387. package/Rendering/OpenGL/Shader.js +37 -31
  388. package/Rendering/OpenGL/ShaderCache.js +67 -74
  389. package/Rendering/OpenGL/ShaderProgram.js +136 -248
  390. package/Rendering/OpenGL/Skybox.js +99 -60
  391. package/Rendering/OpenGL/SphereMapper.js +94 -108
  392. package/Rendering/OpenGL/StickMapper.js +110 -114
  393. package/Rendering/OpenGL/SurfaceLIC/LineIntegralConvolution2D/pingpong.js +91 -157
  394. package/Rendering/OpenGL/SurfaceLIC/LineIntegralConvolution2D.js +142 -151
  395. package/Rendering/OpenGL/SurfaceLIC/SurfaceLICInterface.js +142 -216
  396. package/Rendering/OpenGL/SurfaceLIC/SurfaceLICMapper.js +79 -100
  397. package/Rendering/OpenGL/SurfaceLIC.js +2 -2
  398. package/Rendering/OpenGL/Texture/Constants.js +4 -4
  399. package/Rendering/OpenGL/Texture.js +443 -608
  400. package/Rendering/OpenGL/TextureUnitManager.js +47 -43
  401. package/Rendering/OpenGL/VertexArrayObject.js +92 -131
  402. package/Rendering/OpenGL/ViewNodeFactory.js +25 -13
  403. package/Rendering/OpenGL/Volume.js +38 -34
  404. package/Rendering/OpenGL/VolumeMapper.js +437 -547
  405. package/Rendering/OpenGL.js +28 -28
  406. package/Rendering/SceneGraph/RenderPass.js +34 -31
  407. package/Rendering/SceneGraph/RenderWindowViewNode.js +68 -94
  408. package/Rendering/SceneGraph/ViewNode.js +82 -111
  409. package/Rendering/SceneGraph/ViewNodeFactory.js +31 -26
  410. package/Rendering/SceneGraph.js +4 -4
  411. package/Rendering/WebGPU/Actor.js +49 -49
  412. package/Rendering/WebGPU/Actor2D.js +45 -44
  413. package/Rendering/WebGPU/BindGroup.js +43 -50
  414. package/Rendering/WebGPU/Buffer.js +41 -50
  415. package/Rendering/WebGPU/BufferManager/Constants.js +4 -4
  416. package/Rendering/WebGPU/BufferManager.js +111 -141
  417. package/Rendering/WebGPU/Camera.js +65 -67
  418. package/Rendering/WebGPU/CellArrayMapper.js +621 -388
  419. package/Rendering/WebGPU/CubeAxesActor.js +28 -19
  420. package/Rendering/WebGPU/Device.js +78 -133
  421. package/Rendering/WebGPU/ForwardPass.js +75 -72
  422. package/Rendering/WebGPU/FullScreenQuad.js +25 -18
  423. package/Rendering/WebGPU/Glyph3DMapper.js +62 -74
  424. package/Rendering/WebGPU/HardwareSelectionPass.js +45 -38
  425. package/Rendering/WebGPU/HardwareSelector.js +200 -276
  426. package/Rendering/WebGPU/ImageMapper.js +180 -171
  427. package/Rendering/WebGPU/ImageSlice.js +45 -44
  428. package/Rendering/WebGPU/IndexBuffer.js +166 -200
  429. package/Rendering/WebGPU/OpaquePass.js +37 -36
  430. package/Rendering/WebGPU/OrderIndependentTranslucentPass.js +72 -45
  431. package/Rendering/WebGPU/Pipeline.js +37 -51
  432. package/Rendering/WebGPU/PixelSpaceCallbackMapper.js +27 -19
  433. package/Rendering/WebGPU/PolyDataMapper.js +50 -53
  434. package/Rendering/WebGPU/PolyDataMapper2D.js +39 -39
  435. package/Rendering/WebGPU/RenderEncoder.js +68 -88
  436. package/Rendering/WebGPU/RenderWindow.js +262 -376
  437. package/Rendering/WebGPU/Renderer.js +224 -208
  438. package/Rendering/WebGPU/Sampler.js +27 -21
  439. package/Rendering/WebGPU/ScalarBarActor.js +28 -19
  440. package/Rendering/WebGPU/ShaderCache.js +43 -41
  441. package/Rendering/WebGPU/ShaderDescription.js +52 -59
  442. package/Rendering/WebGPU/ShaderModule.js +26 -17
  443. package/Rendering/WebGPU/SimpleMapper.js +185 -121
  444. package/Rendering/WebGPU/SphereMapper.js +200 -130
  445. package/Rendering/WebGPU/StickMapper.js +289 -152
  446. package/Rendering/WebGPU/StorageBuffer.js +100 -115
  447. package/Rendering/WebGPU/Texture.js +79 -99
  448. package/Rendering/WebGPU/TextureManager.js +52 -54
  449. package/Rendering/WebGPU/TextureView.js +40 -43
  450. package/Rendering/WebGPU/Types.js +53 -70
  451. package/Rendering/WebGPU/UniformBuffer.js +158 -184
  452. package/Rendering/WebGPU/VertexInput.js +64 -90
  453. package/Rendering/WebGPU/ViewNodeFactory.js +25 -13
  454. package/Rendering/WebGPU/Volume.js +52 -51
  455. package/Rendering/WebGPU/VolumePass.js +218 -239
  456. package/Rendering/WebGPU/VolumePassFSQ.js +625 -306
  457. package/Rendering/WebGPU.js +1 -1
  458. package/Rendering/index.js +5 -5
  459. package/Widgets/Core/AbstractWidget/Constants.js +2 -2
  460. package/Widgets/Core/AbstractWidget.js +49 -58
  461. package/Widgets/Core/AbstractWidgetFactory.js +101 -122
  462. package/Widgets/Core/StateBuilder/boundsMixin.js +23 -28
  463. package/Widgets/Core/StateBuilder/color3Mixin.js +10 -7
  464. package/Widgets/Core/StateBuilder/colorMixin.js +10 -6
  465. package/Widgets/Core/StateBuilder/cornerMixin.js +16 -15
  466. package/Widgets/Core/StateBuilder/directionMixin.js +20 -18
  467. package/Widgets/Core/StateBuilder/manipulatorMixin.js +26 -18
  468. package/Widgets/Core/StateBuilder/nameMixin.js +10 -6
  469. package/Widgets/Core/StateBuilder/orientationMixin.js +19 -16
  470. package/Widgets/Core/StateBuilder/originMixin.js +25 -32
  471. package/Widgets/Core/StateBuilder/scale1Mixin.js +10 -6
  472. package/Widgets/Core/StateBuilder/scale3Mixin.js +10 -6
  473. package/Widgets/Core/StateBuilder/shapeMixin.js +12 -6
  474. package/Widgets/Core/StateBuilder/textMixin.js +10 -6
  475. package/Widgets/Core/StateBuilder/visibleMixin.js +10 -6
  476. package/Widgets/Core/StateBuilder.js +120 -149
  477. package/Widgets/Core/WidgetManager/Constants.js +7 -7
  478. package/Widgets/Core/WidgetManager.js +249 -421
  479. package/Widgets/Core/WidgetState.js +48 -57
  480. package/Widgets/Core.js +5 -5
  481. package/Widgets/Manipulators/AbstractManipulator.js +20 -14
  482. package/Widgets/Manipulators/CPRManipulator.js +55 -71
  483. package/Widgets/Manipulators/LineManipulator.js +31 -28
  484. package/Widgets/Manipulators/PickerManipulator.d.ts +48 -0
  485. package/Widgets/Manipulators/PickerManipulator.js +65 -0
  486. package/Widgets/Manipulators/PlaneManipulator.js +26 -23
  487. package/Widgets/Manipulators/TrackballManipulator.js +39 -35
  488. package/Widgets/Manipulators.js +4 -2
  489. package/Widgets/Representations/ArrowHandleRepresentation.js +148 -162
  490. package/Widgets/Representations/CircleContextRepresentation.js +44 -38
  491. package/Widgets/Representations/ContextRepresentation.js +17 -14
  492. package/Widgets/Representations/ConvexFaceContextRepresentation.js +50 -47
  493. package/Widgets/Representations/CroppingOutlineRepresentation.js +38 -27
  494. package/Widgets/Representations/CubeHandleRepresentation.js +21 -18
  495. package/Widgets/Representations/GlyphRepresentation.js +107 -152
  496. package/Widgets/Representations/HandleRepresentation.js +17 -14
  497. package/Widgets/Representations/ImplicitPlaneRepresentation.js +97 -91
  498. package/Widgets/Representations/LineHandleRepresentation.js +44 -41
  499. package/Widgets/Representations/OutlineContextRepresentation.js +42 -36
  500. package/Widgets/Representations/PolyLineRepresentation.js +60 -75
  501. package/Widgets/Representations/RectangleContextRepresentation.js +42 -37
  502. package/Widgets/Representations/SphereContextRepresentation.js +19 -27
  503. package/Widgets/Representations/SphereHandleRepresentation.js +31 -27
  504. package/Widgets/Representations/SplineContextRepresentation.js +46 -70
  505. package/Widgets/Representations/WidgetRepresentation/Constants.js +2 -2
  506. package/Widgets/Representations/WidgetRepresentation.js +99 -134
  507. package/Widgets/Representations.js +13 -13
  508. package/Widgets/Widgets3D/AngleWidget/behavior.js +41 -63
  509. package/Widgets/Widgets3D/AngleWidget.js +40 -38
  510. package/Widgets/Widgets3D/DistanceWidget/behavior.js +40 -61
  511. package/Widgets/Widgets3D/DistanceWidget.js +38 -36
  512. package/Widgets/Widgets3D/EllipseWidget/behavior.js +14 -19
  513. package/Widgets/Widgets3D/EllipseWidget/state.js +4 -2
  514. package/Widgets/Widgets3D/EllipseWidget.js +37 -26
  515. package/Widgets/Widgets3D/ImageCroppingWidget/behavior.js +26 -56
  516. package/Widgets/Widgets3D/ImageCroppingWidget/helpers.js +14 -17
  517. package/Widgets/Widgets3D/ImageCroppingWidget/state.js +20 -16
  518. package/Widgets/Widgets3D/ImageCroppingWidget.js +80 -98
  519. package/Widgets/Widgets3D/ImplicitPlaneWidget.js +55 -77
  520. package/Widgets/Widgets3D/InteractiveOrientationWidget/behavior.js +17 -18
  521. package/Widgets/Widgets3D/InteractiveOrientationWidget/state.js +15 -7
  522. package/Widgets/Widgets3D/InteractiveOrientationWidget.js +30 -29
  523. package/Widgets/Widgets3D/LabelWidget/behavior.js +37 -62
  524. package/Widgets/Widgets3D/LabelWidget.js +31 -25
  525. package/Widgets/Widgets3D/LineWidget/Constants.js +8 -8
  526. package/Widgets/Widgets3D/LineWidget/behavior.js +77 -114
  527. package/Widgets/Widgets3D/LineWidget/helpers.js +13 -20
  528. package/Widgets/Widgets3D/LineWidget/state.js +2 -1
  529. package/Widgets/Widgets3D/LineWidget.js +39 -35
  530. package/Widgets/Widgets3D/PaintWidget/behavior.js +24 -59
  531. package/Widgets/Widgets3D/PaintWidget.js +39 -37
  532. package/Widgets/Widgets3D/PolyLineWidget/behavior.js +44 -68
  533. package/Widgets/Widgets3D/PolyLineWidget.js +36 -31
  534. package/Widgets/Widgets3D/RectangleWidget/behavior.js +6 -11
  535. package/Widgets/Widgets3D/RectangleWidget/state.js +4 -2
  536. package/Widgets/Widgets3D/RectangleWidget.js +37 -25
  537. package/Widgets/Widgets3D/ResliceCursorWidget/Constants.js +35 -21
  538. package/Widgets/Widgets3D/ResliceCursorWidget/behavior.js +133 -209
  539. package/Widgets/Widgets3D/ResliceCursorWidget/cprBehavior.js +26 -41
  540. package/Widgets/Widgets3D/ResliceCursorWidget/helpers.js +89 -116
  541. package/Widgets/Widgets3D/ResliceCursorWidget/state.js +33 -40
  542. package/Widgets/Widgets3D/ResliceCursorWidget.js +186 -227
  543. package/Widgets/Widgets3D/SeedWidget/behavior.js +82 -0
  544. package/Widgets/Widgets3D/SeedWidget/state.js +18 -0
  545. package/Widgets/Widgets3D/SeedWidget.d.ts +44 -0
  546. package/Widgets/Widgets3D/SeedWidget.js +43 -0
  547. package/Widgets/Widgets3D/ShapeWidget/Constants.js +19 -19
  548. package/Widgets/Widgets3D/ShapeWidget/behavior.js +150 -252
  549. package/Widgets/Widgets3D/ShapeWidget.js +24 -27
  550. package/Widgets/Widgets3D/SphereWidget/behavior.js +35 -69
  551. package/Widgets/Widgets3D/SphereWidget/state.js +9 -5
  552. package/Widgets/Widgets3D/SphereWidget.js +34 -44
  553. package/Widgets/Widgets3D/SplineWidget/behavior.js +85 -120
  554. package/Widgets/Widgets3D/SplineWidget.js +43 -39
  555. package/Widgets/Widgets3D.js +15 -15
  556. package/Widgets/index.js +4 -4
  557. package/_virtual/rollup-plugin-worker-loader__module_Sources/Filters/General/PaintFilter/PaintFilter.worker.js +95 -207
  558. package/_virtual/rollup-plugin-worker-loader__module_Sources/Interaction/Widgets/PiecewiseGaussianWidget/ComputeHistogram.worker.js +0 -3
  559. package/favicon.js +5 -6
  560. package/index.d.ts +4 -2
  561. package/index.js +4 -3
  562. package/macros.js +4 -1931
  563. package/macros2.js +1684 -0
  564. package/package.json +6 -6
  565. package/vtk.js +18 -31
@@ -1,5 +1,3 @@
1
- import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
2
- import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
3
1
  import vtkActor from '../../Rendering/Core/Actor.js';
4
2
  import vtkCompositeCameraManipulator from './CompositeCameraManipulator.js';
5
3
  import vtkCompositeMouseManipulator from './CompositeMouseManipulator.js';
@@ -9,141 +7,138 @@ import vtkPointPicker from '../../Rendering/Core/PointPicker.js';
9
7
  import vtkSphereSource from '../../Filters/Sources/SphereSource.js';
10
8
  import { FieldAssociations } from '../../Common/DataModel/DataSet/Constants.js';
11
9
  import { mat4, vec3 } from 'gl-matrix';
12
- import macro from '../../macros.js';
10
+ import { m as macro } from '../../macros2.js';
13
11
  import { B as areEquals, l as normalize, d as dot, C as clampValue, s as subtract, j as cross, w as multiplyScalar, e as distance2BetweenPoints } from '../../Common/Core/Math/index.js';
14
12
 
15
- var States = vtkInteractorStyleConstants.States; // ----------------------------------------------------------------------------
13
+ const {
14
+ States
15
+ } = vtkInteractorStyleConstants;
16
+
17
+ // ----------------------------------------------------------------------------
16
18
  // vtkMouseCameraUnicamRotateManipulator methods
17
19
  // ----------------------------------------------------------------------------
18
20
 
19
21
  function vtkMouseCameraUnicamRotateManipulator(publicAPI, model) {
20
22
  // Set our className
21
- model.classHierarchy.push('vtkMouseCameraUnicamRotateManipulator'); // Setup Picker to pick points
23
+ model.classHierarchy.push('vtkMouseCameraUnicamRotateManipulator');
22
24
 
25
+ // Setup Picker to pick points
23
26
  model.picker = vtkPointPicker.newInstance();
24
27
  model.downPoint = [0, 0, 0];
25
28
  model.isDot = false;
26
- model.state = States.IS_NONE; // Setup focus dot
29
+ model.state = States.IS_NONE;
27
30
 
28
- var sphereSource = vtkSphereSource.newInstance();
31
+ // Setup focus dot
32
+ const sphereSource = vtkSphereSource.newInstance();
29
33
  sphereSource.setThetaResolution(6);
30
34
  sphereSource.setPhiResolution(6);
31
- var sphereMapper = vtkMapper.newInstance();
35
+ const sphereMapper = vtkMapper.newInstance();
32
36
  sphereMapper.setInputConnection(sphereSource.getOutputPort());
33
37
  model.focusSphere = vtkActor.newInstance();
34
38
  model.focusSphere.setMapper(sphereMapper);
35
39
  model.focusSphere.getProperty().setColor(0.89, 0.66, 0.41);
36
40
  model.focusSphere.getProperty().setAmbient(1);
37
41
  model.focusSphere.getProperty().setDiffuse(0);
38
- model.focusSphere.getProperty().setRepresentationToWireframe(); //----------------------------------------------------------------------------
42
+ model.focusSphere.getProperty().setRepresentationToWireframe();
39
43
 
40
- var updateAndRender = function updateAndRender(interactor) {
44
+ //----------------------------------------------------------------------------
45
+ const updateAndRender = interactor => {
41
46
  if (!interactor) {
42
47
  return;
43
48
  }
44
-
45
49
  if (model.useWorldUpVec) {
46
- var camera = interactor.findPokedRenderer().getActiveCamera();
47
-
50
+ const camera = interactor.findPokedRenderer().getActiveCamera();
48
51
  if (!areEquals(model.worldUpVec, camera.getViewPlaneNormal())) {
49
52
  camera.setViewUp(model.worldUpVec);
50
53
  }
51
54
  }
52
-
53
55
  interactor.render();
54
- }; //----------------------------------------------------------------------------
55
-
56
-
57
- var normalize$1 = function normalize(position, interactor) {
58
- var renderer = interactor.findPokedRenderer();
59
-
60
- var _interactor$getView$g = interactor.getView().getViewportSize(renderer),
61
- _interactor$getView$g2 = _slicedToArray(_interactor$getView$g, 2),
62
- width = _interactor$getView$g2[0],
63
- height = _interactor$getView$g2[1];
56
+ };
64
57
 
65
- var nx = -1.0 + 2.0 * position.x / width;
66
- var ny = -1.0 + 2.0 * position.y / height;
58
+ //----------------------------------------------------------------------------
59
+ const normalize$1 = (position, interactor) => {
60
+ const renderer = interactor.findPokedRenderer();
61
+ const [width, height] = interactor.getView().getViewportSize(renderer);
62
+ const nx = -1.0 + 2.0 * position.x / width;
63
+ const ny = -1.0 + 2.0 * position.y / height;
67
64
  return {
68
65
  x: nx,
69
66
  y: ny
70
67
  };
71
- }; //----------------------------------------------------------------------------
68
+ };
69
+
70
+ //----------------------------------------------------------------------------
72
71
  // Rotate the camera by 'angle' degrees about the point <cx, cy, cz>
73
72
  // and around the vector/axis <ax, ay, az>.
74
-
75
-
76
- var rotateCamera = function rotateCamera(camera, cx, cy, cz, ax, ay, az, angle) {
77
- var cameraPosition = camera.getPosition();
78
- var cameraFocalPoint = camera.getFocalPoint();
79
- var cameraViewUp = camera.getViewUp();
73
+ const rotateCamera = (camera, cx, cy, cz, ax, ay, az, angle) => {
74
+ const cameraPosition = camera.getPosition();
75
+ const cameraFocalPoint = camera.getFocalPoint();
76
+ const cameraViewUp = camera.getViewUp();
80
77
  cameraPosition[3] = 1.0;
81
78
  cameraFocalPoint[3] = 1.0;
82
79
  cameraViewUp[3] = 0.0;
83
- var transform = mat4.identity(new Float64Array(16));
80
+ const transform = mat4.identity(new Float64Array(16));
84
81
  mat4.translate(transform, transform, [cx, cy, cz]);
85
82
  mat4.rotate(transform, transform, angle, [ax, ay, az]);
86
83
  mat4.translate(transform, transform, [-cx, -cy, -cz]);
87
- var newCameraPosition = [];
88
- var newCameraFocalPoint = [];
84
+ const newCameraPosition = [];
85
+ const newCameraFocalPoint = [];
89
86
  vec3.transformMat4(newCameraPosition, cameraPosition, transform);
90
87
  vec3.transformMat4(newCameraFocalPoint, cameraFocalPoint, transform);
91
88
  mat4.identity(transform);
92
89
  mat4.rotate(transform, transform, angle, [ax, ay, az]);
93
- var newCameraViewUp = [];
90
+ const newCameraViewUp = [];
94
91
  vec3.transformMat4(newCameraViewUp, cameraViewUp, transform);
95
- camera.setPosition.apply(camera, newCameraPosition);
96
- camera.setFocalPoint.apply(camera, newCameraFocalPoint);
97
- camera.setViewUp.apply(camera, newCameraViewUp);
98
- }; //----------------------------------------------------------------------------
99
-
100
-
101
- var rotate = function rotate(interactor, position) {
102
- var _interactor$getView;
103
-
104
- var renderer = interactor.findPokedRenderer();
105
- var normalizedPosition = normalize$1(position, interactor);
106
- var normalizedPreviousPosition = normalize$1(model.previousPosition, interactor);
107
- var center = model.focusSphere.getPosition();
108
-
109
- var normalizedCenter = (_interactor$getView = interactor.getView()).worldToDisplay.apply(_interactor$getView, _toConsumableArray(center).concat([renderer])); // let normalizedCenter = publicAPI.computeWorldToDisplay(renderer, ...center);
110
-
92
+ camera.setPosition(...newCameraPosition);
93
+ camera.setFocalPoint(...newCameraFocalPoint);
94
+ camera.setViewUp(...newCameraViewUp);
95
+ };
111
96
 
97
+ //----------------------------------------------------------------------------
98
+ const rotate = (interactor, position) => {
99
+ const renderer = interactor.findPokedRenderer();
100
+ const normalizedPosition = normalize$1(position, interactor);
101
+ const normalizedPreviousPosition = normalize$1(model.previousPosition, interactor);
102
+ const center = model.focusSphere.getPosition();
103
+ let normalizedCenter = interactor.getView().worldToDisplay(...center, renderer);
104
+ // let normalizedCenter = publicAPI.computeWorldToDisplay(renderer, ...center);
112
105
  normalizedCenter = normalize$1({
113
106
  x: center[0],
114
107
  y: center[1]
115
108
  }, interactor);
116
- normalizedCenter = [normalizedCenter.x, normalizedCenter.y, center[2]]; // Squared rad of virtual cylinder
117
-
118
- var radsq = Math.pow(1.0 + Math.abs(normalizedCenter[0]), 2.0);
119
- var op = [normalizedPreviousPosition.x, 0, 0];
120
- var oe = [normalizedPosition.x, 0, 0];
121
- var opsq = Math.pow(op[0], 2);
122
- var oesq = Math.pow(oe[0], 2);
123
- var lop = opsq > radsq ? 0 : Math.sqrt(radsq - opsq);
124
- var loe = oesq > radsq ? 0 : Math.sqrt(radsq - oesq);
125
- var nop = [op[0], 0, lop];
109
+ normalizedCenter = [normalizedCenter.x, normalizedCenter.y, center[2]];
110
+
111
+ // Squared rad of virtual cylinder
112
+ const radsq = (1.0 + Math.abs(normalizedCenter[0])) ** 2.0;
113
+ const op = [normalizedPreviousPosition.x, 0, 0];
114
+ const oe = [normalizedPosition.x, 0, 0];
115
+ const opsq = op[0] ** 2;
116
+ const oesq = oe[0] ** 2;
117
+ const lop = opsq > radsq ? 0 : Math.sqrt(radsq - opsq);
118
+ const loe = oesq > radsq ? 0 : Math.sqrt(radsq - oesq);
119
+ const nop = [op[0], 0, lop];
126
120
  normalize(nop);
127
- var noe = [oe[0], 0, loe];
121
+ const noe = [oe[0], 0, loe];
128
122
  normalize(noe);
129
- var dot$1 = dot(nop, noe);
130
-
123
+ const dot$1 = dot(nop, noe);
131
124
  if (Math.abs(dot$1) > 0.0001) {
132
- var angle = -2 * Math.acos(clampValue(dot$1, -1.0, 1.0)) * Math.sign(normalizedPosition.x - normalizedPreviousPosition.x) * publicAPI.getRotationFactor();
133
- var camera = renderer.getActiveCamera();
134
- var upVec = model.useWorldUpVec ? model.worldUpVec : camera.getViewUp();
125
+ const angle = -2 * Math.acos(clampValue(dot$1, -1.0, 1.0)) * Math.sign(normalizedPosition.x - normalizedPreviousPosition.x) * publicAPI.getRotationFactor();
126
+ const camera = renderer.getActiveCamera();
127
+ const upVec = model.useWorldUpVec ? model.worldUpVec : camera.getViewUp();
135
128
  normalize(upVec);
136
- rotateCamera.apply(void 0, [camera].concat(_toConsumableArray(center), _toConsumableArray(upVec), [angle]));
137
- var dVec = [];
138
- var cameraPosition = camera.getPosition();
129
+ rotateCamera(camera, ...center, ...upVec, angle);
130
+ const dVec = [];
131
+ const cameraPosition = camera.getPosition();
139
132
  subtract(cameraPosition, position, dVec);
140
- var rDist = (normalizedPosition.y - normalizedPreviousPosition.y) * publicAPI.getRotationFactor();
133
+ let rDist = (normalizedPosition.y - normalizedPreviousPosition.y) * publicAPI.getRotationFactor();
141
134
  normalize(dVec);
142
- var atV = camera.getViewPlaneNormal();
143
- var upV = camera.getViewUp();
144
- var rightV = [];
135
+ const atV = camera.getViewPlaneNormal();
136
+ const upV = camera.getViewUp();
137
+ const rightV = [];
145
138
  cross(upV, atV, rightV);
146
- normalize(rightV); //
139
+ normalize(rightV);
140
+
141
+ //
147
142
  // The following two tests try to prevent chaotic camera movement
148
143
  // that results from rotating over the poles defined by the
149
144
  // "WorldUpVector". The problem is the constraint to keep the
@@ -158,214 +153,197 @@ function vtkMouseCameraUnicamRotateManipulator(publicAPI, model) {
158
153
  // function could probably be used rather than a hard cutoff, but
159
154
  // time constraints prevent figuring that out right now.)
160
155
  //
161
-
162
156
  if (model.useWorldUpVec) {
163
- var OVER_THE_TOP_THRESHOLD = 0.99;
164
-
157
+ const OVER_THE_TOP_THRESHOLD = 0.99;
165
158
  if (dot(upVec, atV) > OVER_THE_TOP_THRESHOLD && rDist < 0) {
166
159
  rDist = 0;
167
160
  }
168
-
169
161
  if (dot(upVec, atV) < -OVER_THE_TOP_THRESHOLD && rDist > 0) {
170
162
  rDist = 0;
171
163
  }
172
164
  }
173
-
174
- rotateCamera.apply(void 0, [camera].concat(_toConsumableArray(center), rightV, [rDist]));
175
-
165
+ rotateCamera(camera, ...center, ...rightV, rDist);
176
166
  if (model.useWorldUpVec && !areEquals(upVec, camera.getViewPlaneNormal())) {
177
- camera.setViewUp.apply(camera, _toConsumableArray(upVec));
167
+ camera.setViewUp(...upVec);
178
168
  }
179
-
180
169
  model.previousPosition = position;
181
170
  renderer.resetCameraClippingRange();
182
171
  updateAndRender(interactor);
183
172
  }
184
- }; //----------------------------------------------------------------------------
185
-
186
-
187
- var placeFocusSphere = function placeFocusSphere(interactor) {
188
- var _model$focusSphere;
189
-
190
- var renderer = interactor.findPokedRenderer();
191
-
192
- (_model$focusSphere = model.focusSphere).setPosition.apply(_model$focusSphere, _toConsumableArray(model.downPoint));
173
+ };
193
174
 
194
- var camera = renderer.getActiveCamera();
195
- var cameraPosition = camera.getPosition();
196
- var cameraToPointVec = [];
175
+ //----------------------------------------------------------------------------
176
+ const placeFocusSphere = interactor => {
177
+ const renderer = interactor.findPokedRenderer();
178
+ model.focusSphere.setPosition(...model.downPoint);
179
+ const camera = renderer.getActiveCamera();
180
+ const cameraPosition = camera.getPosition();
181
+ const cameraToPointVec = [];
197
182
  subtract(model.downPoint, cameraPosition, cameraToPointVec);
198
-
199
183
  if (camera.getParallelProjection()) {
200
184
  multiplyScalar(cameraToPointVec, camera.getParallelScale());
201
185
  }
186
+ const atV = camera.getDirectionOfProjection();
187
+ normalize(atV);
202
188
 
203
- var atV = camera.getDirectionOfProjection();
204
- normalize(atV); // Scales the focus dot so it always appears the same size
205
-
206
- var scale = 0.02 * dot(atV, cameraToPointVec) * model.focusSphereRadiusFactor;
189
+ // Scales the focus dot so it always appears the same size
190
+ const scale = 0.02 * dot(atV, cameraToPointVec) * model.focusSphereRadiusFactor;
207
191
  model.focusSphere.setScale(scale, scale, scale);
208
192
  };
209
-
210
- var placeAndDisplayFocusSphere = function placeAndDisplayFocusSphere(interactor) {
193
+ const placeAndDisplayFocusSphere = interactor => {
211
194
  placeFocusSphere(interactor);
212
195
  interactor.findPokedRenderer().addActor(model.focusSphere);
213
196
  model.isDot = true;
214
197
  };
215
-
216
- var hideFocusSphere = function hideFocusSphere(interactor) {
198
+ const hideFocusSphere = interactor => {
217
199
  interactor.findPokedRenderer().removeActor(model.focusSphere);
218
200
  model.isDot = false;
219
- }; //----------------------------------------------------------------------------
220
-
201
+ };
221
202
 
222
- var pickWithPointPicker = function pickWithPointPicker(interactor, position) {
223
- var renderer = interactor.findPokedRenderer();
203
+ //----------------------------------------------------------------------------
204
+ const pickWithPointPicker = (interactor, position) => {
205
+ const renderer = interactor.findPokedRenderer();
224
206
  model.picker.pick([position.x, position.y, position.z], renderer);
225
- var pickedPositions = model.picker.getPickedPositions();
226
-
207
+ const pickedPositions = model.picker.getPickedPositions();
227
208
  if (pickedPositions.length === 0) {
228
209
  return model.picker.getPickPosition();
229
210
  }
230
-
231
- var cameraPosition = renderer.getActiveCamera().getPosition();
232
- pickedPositions.sort(function (pointA, pointB) {
233
- return distance2BetweenPoints(pointA, cameraPosition) - distance2BetweenPoints(pointB, cameraPosition);
234
- });
211
+ const cameraPosition = renderer.getActiveCamera().getPosition();
212
+ pickedPositions.sort((pointA, pointB) => distance2BetweenPoints(pointA, cameraPosition) - distance2BetweenPoints(pointB, cameraPosition));
235
213
  return pickedPositions[0];
236
- }; //----------------------------------------------------------------------------
237
-
214
+ };
238
215
 
239
- var pickPoint = function pickPoint(interactor, position) {
240
- var renderer = interactor.findPokedRenderer(); // Finds the point under the cursor.
216
+ //----------------------------------------------------------------------------
217
+ const pickPoint = (interactor, position) => {
218
+ const renderer = interactor.findPokedRenderer();
219
+ // Finds the point under the cursor.
241
220
  // Note: If no object has been rendered to the pixel (X, Y), then
242
221
  // vtkPicker will return a z-value with depth equal
243
222
  // to the distance from the camera's position to the focal point.
244
223
  // This seems like an arbitrary, but perhaps reasonable, default value.
245
-
246
- var selections = null;
247
-
224
+ let selections = null;
248
225
  if (model.useHardwareSelector) {
249
- var selector = interactor.getView().getSelector();
226
+ const selector = interactor.getView().getSelector();
250
227
  selector.setCaptureZValues(true);
251
228
  selector.setFieldAssociation(FieldAssociations.FIELD_ASSOCIATION_POINTS);
252
229
  selector.attach(interactor.getView(), renderer);
253
230
  selector.setArea(position.x, position.y, position.x, position.y);
254
231
  selections = selector.select();
255
232
  }
256
-
257
233
  if (selections && selections.length !== 0) {
258
234
  // convert Float64Array to regular array
259
235
  return Array.from(selections[0].getProperties().worldPosition);
260
236
  }
261
-
262
237
  return pickWithPointPicker(interactor, position);
263
- }; //----------------------------------------------------------------------------
238
+ };
239
+
240
+ //----------------------------------------------------------------------------
264
241
  // Public API methods
265
242
  //----------------------------------------------------------------------------
266
-
267
-
268
- publicAPI.onButtonDown = function (interactor, renderer, position) {
243
+ publicAPI.onButtonDown = (interactor, renderer, position) => {
269
244
  model.buttonPressed = true;
270
245
  model.startPosition = position;
271
246
  model.previousPosition = position;
272
- var normalizedPosition = normalize$1(position, interactor); // borderRatio defines the percentage of the screen size that is considered to be
247
+ const normalizedPosition = normalize$1(position, interactor);
248
+ // borderRatio defines the percentage of the screen size that is considered to be
273
249
  // the border of the screen on each side
274
-
275
- var borderRatio = 0.1; // If the user is clicking on the perimeter of the screen,
250
+ const borderRatio = 0.1;
251
+ // If the user is clicking on the perimeter of the screen,
276
252
  // then we want to go into rotation mode, and there is no need to determine the downPoint
277
-
278
253
  if (Math.abs(normalizedPosition.x) > 1 - borderRatio || Math.abs(normalizedPosition.y) > 1 - borderRatio) {
279
254
  model.state = States.IS_ROTATE;
280
255
  placeAndDisplayFocusSphere(interactor);
281
256
  return;
282
257
  }
283
-
284
258
  model.downPoint = pickPoint(interactor, position);
285
-
286
259
  if (model.isDot) {
287
260
  model.state = States.IS_ROTATE;
288
261
  } else {
289
262
  model.state = States.IS_NONE;
290
-
291
263
  if (model.displayFocusSphereOnButtonDown) {
292
264
  placeAndDisplayFocusSphere(interactor);
293
265
  }
294
266
  }
295
- }; //----------------------------------------------------------------------------
296
-
267
+ };
297
268
 
298
- publicAPI.onMouseMove = function (interactor, renderer, position) {
269
+ //----------------------------------------------------------------------------
270
+ publicAPI.onMouseMove = (interactor, renderer, position) => {
299
271
  if (!model.buttonPressed) {
300
272
  return;
301
273
  }
302
-
303
274
  model.state = States.IS_ROTATE;
304
275
  rotate(interactor, position);
305
276
  model.previousPosition = position;
306
- }; //--------------------------------------------------------------------------
307
-
277
+ };
308
278
 
309
- publicAPI.onButtonUp = function (interactor) {
310
- var renderer = interactor.findPokedRenderer();
311
- model.buttonPressed = false; // If rotation without a focus sphere, nothing to do
279
+ //--------------------------------------------------------------------------
280
+ publicAPI.onButtonUp = interactor => {
281
+ const renderer = interactor.findPokedRenderer();
282
+ model.buttonPressed = false;
312
283
 
284
+ // If rotation without a focus sphere, nothing to do
313
285
  if (model.state === States.IS_ROTATE && !model.isDot) {
314
286
  return;
315
287
  }
316
-
317
288
  if (model.state === States.IS_ROTATE) {
318
289
  hideFocusSphere(interactor);
319
290
  } else if (model.state === States.IS_NONE) {
320
291
  placeAndDisplayFocusSphere(interactor);
321
292
  }
322
-
323
293
  renderer.resetCameraClippingRange();
324
294
  updateAndRender(interactor);
325
295
  };
326
-
327
- publicAPI.getFocusSphereColor = function () {
296
+ publicAPI.getFocusSphereColor = () => {
328
297
  model.focusSphere.getProperty().getColor();
329
298
  };
330
-
331
- publicAPI.setFocusSphereColor = function (r, g, b) {
299
+ publicAPI.setFocusSphereColor = (r, g, b) => {
332
300
  model.focusSphere.getProperty().setColor(r, g, b);
333
301
  };
334
- } // ----------------------------------------------------------------------------
302
+ }
303
+
304
+ // ----------------------------------------------------------------------------
335
305
  // Object factory
336
306
  // ----------------------------------------------------------------------------
337
307
 
338
-
339
- var DEFAULT_VALUES = {
308
+ const DEFAULT_VALUES = {
340
309
  focusSphereRadiusFactor: 1,
341
310
  displayFocusSphereOnButtonDown: true,
342
311
  useHardwareSelector: true,
343
312
  useWorldUpVec: true,
344
313
  // set WorldUpVector to be z-axis by default
345
314
  worldUpVec: [0, 0, 1]
346
- }; // ----------------------------------------------------------------------------
315
+ };
316
+
317
+ // ----------------------------------------------------------------------------
347
318
 
348
319
  function extend(publicAPI, model) {
349
- var initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
350
- Object.assign(model, DEFAULT_VALUES, initialValues); // Inheritance
320
+ let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
321
+ Object.assign(model, DEFAULT_VALUES, initialValues);
351
322
 
323
+ // Inheritance
352
324
  macro.obj(publicAPI, model);
353
325
  vtkCompositeCameraManipulator.extend(publicAPI, model, initialValues);
354
- vtkCompositeMouseManipulator.extend(publicAPI, model, initialValues); // Create get-set macros
326
+ vtkCompositeMouseManipulator.extend(publicAPI, model, initialValues);
355
327
 
328
+ // Create get-set macros
356
329
  macro.setGet(publicAPI, model, ['focusSphereRadiusFactor', 'displayFocusSphereOnButtonDown', 'useHardwareSelector', 'useWorldUpVec']);
357
330
  macro.get(publicAPI, model, ['state']);
358
331
  macro.getArray(publicAPI, model, ['downPoint'], 3);
359
- macro.setGetArray(publicAPI, model, ['worldUpVec'], 3); // Object specific methods
332
+ macro.setGetArray(publicAPI, model, ['worldUpVec'], 3);
360
333
 
334
+ // Object specific methods
361
335
  vtkMouseCameraUnicamRotateManipulator(publicAPI, model);
362
- } // ----------------------------------------------------------------------------
336
+ }
337
+
338
+ // ----------------------------------------------------------------------------
363
339
 
364
- var newInstance = macro.newInstance(extend, 'vtkMouseCameraUnicamRotateManipulator'); // ----------------------------------------------------------------------------
340
+ const newInstance = macro.newInstance(extend, 'vtkMouseCameraUnicamRotateManipulator');
341
+
342
+ // ----------------------------------------------------------------------------
365
343
 
366
344
  var vtkMouseCameraUnicamRotateManipulator$1 = {
367
- newInstance: newInstance,
368
- extend: extend
345
+ newInstance,
346
+ extend
369
347
  };
370
348
 
371
349
  export { vtkMouseCameraUnicamRotateManipulator$1 as default, extend, newInstance };