@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,36 +1,44 @@
1
- import macro from '../../macros.js';
1
+ import { m as macro } from '../../macros2.js';
2
2
  import vtkCompositeCameraManipulator from './CompositeCameraManipulator.js';
3
3
  import vtkCompositeMouseManipulator from './CompositeMouseManipulator.js';
4
4
 
5
- var ANIMATION_REQUESTER = 'vtkMouseCameraTrackballFirstPersonManipulator'; // ----------------------------------------------------------------------------
5
+ const ANIMATION_REQUESTER = 'vtkMouseCameraTrackballFirstPersonManipulator';
6
+
7
+ // ----------------------------------------------------------------------------
6
8
  // vtkMouseCameraTrackballFirstPersonManipulator methods
7
9
  // ----------------------------------------------------------------------------
8
10
 
9
11
  function vtkMouseCameraTrackballFirstPersonManipulator(publicAPI, model) {
10
12
  // Set our className
11
13
  model.classHierarchy.push('vtkMouseCameraTrackballFirstPersonManipulator');
12
- var internal = {
14
+ const internal = {
13
15
  interactor: null,
14
16
  renderer: null,
15
17
  previousPosition: null
16
- }; //--------------------------------------------------------------------------
18
+ };
17
19
 
18
- publicAPI.onButtonDown = function (interactor, renderer, position) {
19
- internal.previousPosition = position;
20
+ //--------------------------------------------------------------------------
20
21
 
22
+ publicAPI.onButtonDown = (interactor, renderer, position) => {
23
+ internal.previousPosition = position;
21
24
  if (model.usePointerLock && !interactor.isPointerLocked()) {
22
25
  Object.assign(internal, {
23
- interactor: interactor,
24
- renderer: renderer
26
+ interactor,
27
+ renderer
25
28
  });
26
29
  interactor.requestPointerLock();
27
30
  publicAPI.startPointerLockInteraction();
28
31
  }
29
- }; //--------------------------------------------------------------------------
32
+ };
33
+
34
+ //--------------------------------------------------------------------------
30
35
 
36
+ publicAPI.startPointerLockInteraction = () => {
37
+ const {
38
+ interactor
39
+ } = internal;
31
40
 
32
- publicAPI.startPointerLockInteraction = function () {
33
- var interactor = internal.interactor; // TODO: at some point, this should perhaps be done in
41
+ // TODO: at some point, this should perhaps be done in
34
42
  // RenderWindowInteractor instead of here.
35
43
  // We need to hook into mousemove directly for two reasons:
36
44
  // 1. We need to keep receiving mouse move events after the mouse button
@@ -39,121 +47,128 @@ function vtkMouseCameraTrackballFirstPersonManipulator(publicAPI, model) {
39
47
  // 2. Since the mouse is stationary in pointer lock mode, we need the
40
48
  // event.movementX and event.movementY info, which are not currently
41
49
  // passed via interactor.onMouseMove.
42
-
43
50
  document.addEventListener('mousemove', publicAPI.onPointerLockMove);
44
- var subscription = null;
45
-
46
- var endInteraction = function endInteraction() {
51
+ let subscription = null;
52
+ const endInteraction = () => {
47
53
  document.removeEventListener('mousemove', publicAPI.onPointerLockMove);
48
54
  subscription.unsubscribe();
49
55
  };
50
-
51
56
  subscription = interactor.onEndPointerLock(endInteraction);
52
- }; //--------------------------------------------------------------------------
57
+ };
53
58
 
59
+ //--------------------------------------------------------------------------
54
60
 
55
- publicAPI.onPointerLockMove = function (e) {
56
- var sensitivity = model.sensitivity;
57
- var yaw = -1 * e.movementX * sensitivity;
58
- var pitch = -1 * e.movementY * sensitivity;
61
+ publicAPI.onPointerLockMove = e => {
62
+ const sensitivity = model.sensitivity;
63
+ const yaw = -1 * e.movementX * sensitivity;
64
+ const pitch = -1 * e.movementY * sensitivity;
59
65
  publicAPI.moveCamera(yaw, pitch);
60
- }; //--------------------------------------------------------------------------
66
+ };
61
67
 
68
+ //--------------------------------------------------------------------------
62
69
 
63
- publicAPI.onMouseMove = function (interactor, renderer, position) {
70
+ publicAPI.onMouseMove = (interactor, renderer, position) => {
64
71
  // This is currently only being called for non pointer lock mode
65
72
  if (!position) {
66
73
  return;
67
74
  }
68
-
69
- var previousPosition = internal.previousPosition;
70
- var sensitivity = model.sensitivity;
71
- var yaw = (previousPosition.x - position.x) * sensitivity;
72
- var pitch = (position.y - previousPosition.y) * sensitivity;
75
+ const {
76
+ previousPosition
77
+ } = internal;
78
+ const sensitivity = model.sensitivity;
79
+ const yaw = (previousPosition.x - position.x) * sensitivity;
80
+ const pitch = (position.y - previousPosition.y) * sensitivity;
73
81
  Object.assign(internal, {
74
- interactor: interactor,
75
- renderer: renderer
82
+ interactor,
83
+ renderer
76
84
  });
77
85
  publicAPI.moveCamera(yaw, pitch);
78
86
  internal.previousPosition = position;
79
- }; //--------------------------------------------------------------------------
87
+ };
80
88
 
89
+ //--------------------------------------------------------------------------
81
90
 
82
- publicAPI.moveCamera = function (yaw, pitch) {
83
- var renderer = internal.renderer,
84
- interactor = internal.interactor;
85
- var camera = renderer.getActiveCamera(); // We need to pick a number of steps here that is not too few
91
+ publicAPI.moveCamera = (yaw, pitch) => {
92
+ const {
93
+ renderer,
94
+ interactor
95
+ } = internal;
96
+ const camera = renderer.getActiveCamera();
97
+
98
+ // We need to pick a number of steps here that is not too few
86
99
  // (or the camera will be jittery) and not too many (or the
87
100
  // animations will take too long).
88
101
  // Perhaps this should be calculated?
89
-
90
- var numSteps = model.numAnimationSteps;
91
- var yawStep = yaw / numSteps;
92
- var pitchStep = pitch / numSteps;
93
- var now = performance.now().toString();
94
- var animationRequester = "".concat(ANIMATION_REQUESTER, ".").concat(now);
95
- var curStep = 0;
96
- var animationSub = null;
97
-
98
- var performStep = function performStep() {
102
+ const numSteps = model.numAnimationSteps;
103
+ const yawStep = yaw / numSteps;
104
+ const pitchStep = pitch / numSteps;
105
+ const now = performance.now().toString();
106
+ const animationRequester = `${ANIMATION_REQUESTER}.${now}`;
107
+ let curStep = 0;
108
+ let animationSub = null;
109
+ const performStep = () => {
99
110
  camera.yaw(yawStep);
100
111
  camera.pitch(pitchStep);
101
112
  camera.orthogonalizeViewUp();
102
113
  curStep += 1;
103
-
104
114
  if (curStep === numSteps) {
105
115
  animationSub.unsubscribe();
106
116
  renderer.resetCameraClippingRange();
107
-
108
117
  if (interactor.getLightFollowCamera()) {
109
118
  renderer.updateLightsGeometryToFollowCamera();
110
- } // This needs to be posted to the event loop so it isn't called
119
+ }
120
+
121
+ // This needs to be posted to the event loop so it isn't called
111
122
  // in the `handleAnimation` stack, or else the animation will
112
123
  // not be canceled.
113
-
114
-
115
- var cancelRequest = function cancelRequest() {
124
+ const cancelRequest = () => {
116
125
  internal.interactor.cancelAnimation(animationRequester);
117
126
  };
118
-
119
127
  setTimeout(cancelRequest, 0);
120
128
  }
121
129
  };
122
-
123
130
  interactor.requestAnimation(animationRequester);
124
- animationSub = interactor.onAnimation(function () {
125
- return performStep();
126
- });
131
+ animationSub = interactor.onAnimation(() => performStep());
127
132
  };
128
- } // ----------------------------------------------------------------------------
133
+ }
134
+
135
+ // ----------------------------------------------------------------------------
129
136
  // Object factory
130
137
  // ----------------------------------------------------------------------------
131
138
 
132
-
133
- var DEFAULT_VALUES = {
139
+ const DEFAULT_VALUES = {
134
140
  numAnimationSteps: 5,
135
141
  sensitivity: 0.05,
136
142
  usePointerLock: true
137
- }; // ----------------------------------------------------------------------------
143
+ };
144
+
145
+ // ----------------------------------------------------------------------------
138
146
 
139
147
  function extend(publicAPI, model) {
140
- var initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
141
- Object.assign(model, DEFAULT_VALUES, initialValues); // Inheritance
148
+ let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
149
+ Object.assign(model, DEFAULT_VALUES, initialValues);
142
150
 
151
+ // Inheritance
143
152
  macro.obj(publicAPI, model);
144
153
  vtkCompositeCameraManipulator.extend(publicAPI, model, initialValues);
145
- vtkCompositeMouseManipulator.extend(publicAPI, model, initialValues); // Create get-set macros
154
+ vtkCompositeMouseManipulator.extend(publicAPI, model, initialValues);
146
155
 
147
- macro.setGet(publicAPI, model, ['numAnimationSteps', 'sensitivity', 'usePointerLock']); // Object specific methods
156
+ // Create get-set macros
157
+ macro.setGet(publicAPI, model, ['numAnimationSteps', 'sensitivity', 'usePointerLock']);
148
158
 
159
+ // Object specific methods
149
160
  vtkMouseCameraTrackballFirstPersonManipulator(publicAPI, model);
150
- } // ----------------------------------------------------------------------------
161
+ }
151
162
 
152
- var newInstance = macro.newInstance(extend, 'vtkMouseCameraTrackballFirstPersonManipulator'); // ----------------------------------------------------------------------------
163
+ // ----------------------------------------------------------------------------
164
+
165
+ const newInstance = macro.newInstance(extend, 'vtkMouseCameraTrackballFirstPersonManipulator');
166
+
167
+ // ----------------------------------------------------------------------------
153
168
 
154
169
  var vtkMouseCameraTrackballFirstPersonManipulator$1 = {
155
- newInstance: newInstance,
156
- extend: extend
170
+ newInstance,
171
+ extend
157
172
  };
158
173
 
159
174
  export { vtkMouseCameraTrackballFirstPersonManipulator$1 as default, extend, newInstance };
@@ -1,4 +1,4 @@
1
- import macro from '../../macros.js';
1
+ import { m as macro } from '../../macros2.js';
2
2
  import vtkCompositeCameraManipulator from './CompositeCameraManipulator.js';
3
3
  import vtkCompositeMouseManipulator from './CompositeMouseManipulator.js';
4
4
  import vtkMouseCameraTrackballRotateManipulator from './MouseCameraTrackballRotateManipulator.js';
@@ -7,74 +7,78 @@ import vtkMouseCameraTrackballRollManipulator from './MouseCameraTrackballRollMa
7
7
  function max(x, y) {
8
8
  return x < y ? y : x;
9
9
  }
10
-
11
10
  function sqr(x) {
12
11
  return x * x;
13
- } // ----------------------------------------------------------------------------
12
+ }
13
+
14
+ // ----------------------------------------------------------------------------
14
15
  // vtkMouseCameraTrackballMultiRotateManipulator methods
15
16
  // ----------------------------------------------------------------------------
16
17
 
17
-
18
18
  function vtkMouseCameraTrackballMultiRotateManipulator(publicAPI, model) {
19
19
  // Set our className
20
20
  model.classHierarchy.push('vtkMouseCameraTrackballMultiRotateManipulator');
21
- var rotateManipulator = vtkMouseCameraTrackballRotateManipulator.newInstance();
22
- var rollManipulator = vtkMouseCameraTrackballRollManipulator.newInstance();
23
- var currentManipulator = null;
24
-
25
- publicAPI.onButtonDown = function (interactor, renderer, position) {
26
- var viewSize = interactor.getView().getViewportSize(renderer);
27
- var viewCenter = [0.5 * viewSize[0], 0.5 * viewSize[1]];
28
- var rotateRadius = 0.9 * max(viewCenter[0], viewCenter[1]);
29
- var dist2 = sqr(viewCenter[0] - position.x) + sqr(viewCenter[1] - position.y);
30
-
21
+ const rotateManipulator = vtkMouseCameraTrackballRotateManipulator.newInstance();
22
+ const rollManipulator = vtkMouseCameraTrackballRollManipulator.newInstance();
23
+ let currentManipulator = null;
24
+ publicAPI.onButtonDown = (interactor, renderer, position) => {
25
+ const viewSize = interactor.getView().getViewportSize(renderer);
26
+ const viewCenter = [0.5 * viewSize[0], 0.5 * viewSize[1]];
27
+ const rotateRadius = 0.9 * max(viewCenter[0], viewCenter[1]);
28
+ const dist2 = sqr(viewCenter[0] - position.x) + sqr(viewCenter[1] - position.y);
31
29
  if (rotateRadius * rotateRadius > dist2) {
32
30
  currentManipulator = rotateManipulator;
33
31
  } else {
34
32
  currentManipulator = rollManipulator;
35
33
  }
36
-
37
34
  currentManipulator.setButton(publicAPI.getButton());
38
35
  currentManipulator.setShift(publicAPI.getShift());
39
36
  currentManipulator.setControl(publicAPI.getControl());
40
37
  currentManipulator.setCenter(publicAPI.getCenter());
41
38
  currentManipulator.onButtonDown(interactor, position);
42
39
  };
43
-
44
- publicAPI.onButtonUp = function (interactor) {
40
+ publicAPI.onButtonUp = interactor => {
45
41
  if (currentManipulator) {
46
42
  currentManipulator.onButtonUp(interactor);
47
43
  }
48
44
  };
49
-
50
- publicAPI.onMouseMove = function (interactor, renderer, position) {
45
+ publicAPI.onMouseMove = (interactor, renderer, position) => {
51
46
  if (currentManipulator) {
52
47
  currentManipulator.onMouseMove(interactor, renderer, position);
53
48
  }
54
49
  };
55
- } // ----------------------------------------------------------------------------
50
+ }
51
+
52
+ // ----------------------------------------------------------------------------
56
53
  // Object factory
57
54
  // ----------------------------------------------------------------------------
58
55
 
56
+ const DEFAULT_VALUES = {};
59
57
 
60
- var DEFAULT_VALUES = {}; // ----------------------------------------------------------------------------
58
+ // ----------------------------------------------------------------------------
61
59
 
62
60
  function extend(publicAPI, model) {
63
- var initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
64
- Object.assign(model, DEFAULT_VALUES, initialValues); // Inheritance
61
+ let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
62
+ Object.assign(model, DEFAULT_VALUES, initialValues);
65
63
 
64
+ // Inheritance
66
65
  macro.obj(publicAPI, model);
67
66
  vtkCompositeMouseManipulator.extend(publicAPI, model, initialValues);
68
- vtkCompositeCameraManipulator.extend(publicAPI, model, initialValues); // Object specific methods
67
+ vtkCompositeCameraManipulator.extend(publicAPI, model, initialValues);
69
68
 
69
+ // Object specific methods
70
70
  vtkMouseCameraTrackballMultiRotateManipulator(publicAPI, model);
71
- } // ----------------------------------------------------------------------------
71
+ }
72
72
 
73
- var newInstance = macro.newInstance(extend, 'vtkMouseCameraTrackballMultiRotateManipulator'); // ----------------------------------------------------------------------------
73
+ // ----------------------------------------------------------------------------
74
+
75
+ const newInstance = macro.newInstance(extend, 'vtkMouseCameraTrackballMultiRotateManipulator');
76
+
77
+ // ----------------------------------------------------------------------------
74
78
 
75
79
  var vtkMouseCameraTrackballMultiRotateManipulator$1 = {
76
- newInstance: newInstance,
77
- extend: extend
80
+ newInstance,
81
+ extend
78
82
  };
79
83
 
80
84
  export { vtkMouseCameraTrackballMultiRotateManipulator$1 as default, extend, newInstance };
@@ -1,45 +1,43 @@
1
- import macro from '../../macros.js';
1
+ import { m as macro } from '../../macros2.js';
2
2
  import vtkCompositeCameraManipulator from './CompositeCameraManipulator.js';
3
3
  import vtkCompositeMouseManipulator from './CompositeMouseManipulator.js';
4
4
  import { j as cross } from '../../Common/Core/Math/index.js';
5
5
 
6
+ // ----------------------------------------------------------------------------
6
7
  // vtkMouseCameraTrackballPanManipulator methods
7
8
  // ----------------------------------------------------------------------------
8
9
 
9
10
  function vtkMouseCameraTrackballPanManipulator(publicAPI, model) {
10
11
  // Set our className
11
12
  model.classHierarchy.push('vtkMouseCameraTrackballPanManipulator');
12
-
13
- publicAPI.onButtonDown = function (interactor, renderer, position) {
13
+ publicAPI.onButtonDown = (interactor, renderer, position) => {
14
14
  model.previousPosition = position;
15
15
  };
16
-
17
- publicAPI.onMouseMove = function (interactor, renderer, position) {
16
+ publicAPI.onMouseMove = (interactor, renderer, position) => {
18
17
  if (!position) {
19
18
  return;
20
19
  }
21
-
22
- var pos = position;
23
- var lastPos = model.previousPosition;
20
+ const pos = position;
21
+ const lastPos = model.previousPosition;
24
22
  model.previousPosition = position;
25
- var camera = renderer.getActiveCamera();
26
- var camPos = camera.getPosition();
27
- var fp = camera.getFocalPoint();
28
-
23
+ const camera = renderer.getActiveCamera();
24
+ const camPos = camera.getPosition();
25
+ const fp = camera.getFocalPoint();
29
26
  if (camera.getParallelProjection()) {
30
27
  camera.orthogonalizeViewUp();
31
- var up = camera.getViewUp();
32
- var vpn = camera.getViewPlaneNormal();
33
- var right = [0, 0, 0];
34
- cross(vpn, up, right); // These are different because y is flipped.
35
-
36
- var height = interactor.getView().getViewportSize(renderer)[1];
37
- var dx = (pos.x - lastPos.x) / height;
38
- var dy = (lastPos.y - pos.y) / height;
39
- var scale = camera.getParallelScale();
28
+ const up = camera.getViewUp();
29
+ const vpn = camera.getViewPlaneNormal();
30
+ const right = [0, 0, 0];
31
+ cross(vpn, up, right);
32
+
33
+ // These are different because y is flipped.
34
+ const height = interactor.getView().getViewportSize(renderer)[1];
35
+ let dx = (pos.x - lastPos.x) / height;
36
+ let dy = (lastPos.y - pos.y) / height;
37
+ const scale = camera.getParallelScale();
40
38
  dx *= scale * 2.0;
41
39
  dy *= scale * 2.0;
42
- var tmp = right[0] * dx + up[0] * dy;
40
+ let tmp = right[0] * dx + up[0] * dy;
43
41
  camPos[0] += tmp;
44
42
  fp[0] += tmp;
45
43
  tmp = right[1] * dx + up[1] * dy;
@@ -51,46 +49,55 @@ function vtkMouseCameraTrackballPanManipulator(publicAPI, model) {
51
49
  camera.setPosition(camPos[0], camPos[1], camPos[2]);
52
50
  camera.setFocalPoint(fp[0], fp[1], fp[2]);
53
51
  } else {
54
- var center = model.center;
55
- var style = interactor.getInteractorStyle();
56
- var focalDepth = style.computeWorldToDisplay(renderer, center[0], center[1], center[2])[2];
57
- var worldPoint = style.computeDisplayToWorld(renderer, pos.x, pos.y, focalDepth);
58
- var lastWorldPoint = style.computeDisplayToWorld(renderer, lastPos.x, lastPos.y, focalDepth);
59
- var newCamPos = [camPos[0] + (lastWorldPoint[0] - worldPoint[0]), camPos[1] + (lastWorldPoint[1] - worldPoint[1]), camPos[2] + (lastWorldPoint[2] - worldPoint[2])];
60
- var newFp = [fp[0] + (lastWorldPoint[0] - worldPoint[0]), fp[1] + (lastWorldPoint[1] - worldPoint[1]), fp[2] + (lastWorldPoint[2] - worldPoint[2])];
52
+ const {
53
+ center
54
+ } = model;
55
+ const style = interactor.getInteractorStyle();
56
+ const focalDepth = style.computeWorldToDisplay(renderer, center[0], center[1], center[2])[2];
57
+ const worldPoint = style.computeDisplayToWorld(renderer, pos.x, pos.y, focalDepth);
58
+ const lastWorldPoint = style.computeDisplayToWorld(renderer, lastPos.x, lastPos.y, focalDepth);
59
+ const newCamPos = [camPos[0] + (lastWorldPoint[0] - worldPoint[0]), camPos[1] + (lastWorldPoint[1] - worldPoint[1]), camPos[2] + (lastWorldPoint[2] - worldPoint[2])];
60
+ const newFp = [fp[0] + (lastWorldPoint[0] - worldPoint[0]), fp[1] + (lastWorldPoint[1] - worldPoint[1]), fp[2] + (lastWorldPoint[2] - worldPoint[2])];
61
61
  camera.setPosition(newCamPos[0], newCamPos[1], newCamPos[2]);
62
62
  camera.setFocalPoint(newFp[0], newFp[1], newFp[2]);
63
63
  }
64
-
65
64
  renderer.resetCameraClippingRange();
66
-
67
65
  if (interactor.getLightFollowCamera()) {
68
66
  renderer.updateLightsGeometryToFollowCamera();
69
67
  }
70
68
  };
71
- } // ----------------------------------------------------------------------------
69
+ }
70
+
71
+ // ----------------------------------------------------------------------------
72
72
  // Object factory
73
73
  // ----------------------------------------------------------------------------
74
74
 
75
+ const DEFAULT_VALUES = {};
75
76
 
76
- var DEFAULT_VALUES = {}; // ----------------------------------------------------------------------------
77
+ // ----------------------------------------------------------------------------
77
78
 
78
79
  function extend(publicAPI, model) {
79
- var initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
80
- Object.assign(model, DEFAULT_VALUES, initialValues); // Inheritance
80
+ let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
81
+ Object.assign(model, DEFAULT_VALUES, initialValues);
81
82
 
83
+ // Inheritance
82
84
  macro.obj(publicAPI, model);
83
85
  vtkCompositeCameraManipulator.extend(publicAPI, model, initialValues);
84
- vtkCompositeMouseManipulator.extend(publicAPI, model, initialValues); // Object specific methods
86
+ vtkCompositeMouseManipulator.extend(publicAPI, model, initialValues);
85
87
 
88
+ // Object specific methods
86
89
  vtkMouseCameraTrackballPanManipulator(publicAPI, model);
87
- } // ----------------------------------------------------------------------------
90
+ }
88
91
 
89
- var newInstance = macro.newInstance(extend, 'vtkMouseCameraTrackballPanManipulator'); // ----------------------------------------------------------------------------
92
+ // ----------------------------------------------------------------------------
93
+
94
+ const newInstance = macro.newInstance(extend, 'vtkMouseCameraTrackballPanManipulator');
95
+
96
+ // ----------------------------------------------------------------------------
90
97
 
91
98
  var vtkMouseCameraTrackballPanManipulator$1 = {
92
- newInstance: newInstance,
93
- extend: extend
99
+ newInstance,
100
+ extend
94
101
  };
95
102
 
96
103
  export { vtkMouseCameraTrackballPanManipulator$1 as default, extend, newInstance };
@@ -1,67 +1,72 @@
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 vtkCompositeCameraManipulator from './CompositeCameraManipulator.js';
4
4
  import vtkCompositeMouseManipulator from './CompositeMouseManipulator.js';
5
5
  import { r as radiansFromDegrees, A as degreesFromRadians } from '../../Common/Core/Math/index.js';
6
6
 
7
+ // ----------------------------------------------------------------------------
7
8
  // vtkMouseCameraTrackballRollManipulator methods
8
9
  // ----------------------------------------------------------------------------
9
10
 
10
11
  function vtkMouseCameraTrackballRollManipulator(publicAPI, model) {
11
12
  // Set our className
12
13
  model.classHierarchy.push('vtkMouseCameraTrackballRollManipulator');
13
- var axis = new Float64Array(3);
14
- var direction = new Float64Array(3);
15
- var centerNeg = new Float64Array(3);
16
- var transform = new Float64Array(16);
17
- var newCamPos = new Float64Array(3);
18
- var newFp = new Float64Array(3);
19
- var newViewUp = new Float64Array(3);
20
-
21
- publicAPI.onButtonDown = function (interactor, renderer, position) {
14
+ const axis = new Float64Array(3);
15
+ const direction = new Float64Array(3);
16
+ const centerNeg = new Float64Array(3);
17
+ const transform = new Float64Array(16);
18
+ const newCamPos = new Float64Array(3);
19
+ const newFp = new Float64Array(3);
20
+ const newViewUp = new Float64Array(3);
21
+ publicAPI.onButtonDown = (interactor, renderer, position) => {
22
22
  model.previousPosition = position;
23
23
  };
24
-
25
- publicAPI.onMouseMove = function (interactor, renderer, position) {
24
+ publicAPI.onMouseMove = (interactor, renderer, position) => {
26
25
  if (!position) {
27
26
  return;
28
27
  }
28
+ const camera = renderer.getActiveCamera();
29
29
 
30
- var camera = renderer.getActiveCamera(); // compute view vector (rotation axis)
31
-
32
- var cameraPos = camera.getPosition();
33
- var cameraFp = camera.getFocalPoint();
34
- var viewUp = camera.getViewUp();
30
+ // compute view vector (rotation axis)
31
+ const cameraPos = camera.getPosition();
32
+ const cameraFp = camera.getFocalPoint();
33
+ const viewUp = camera.getViewUp();
35
34
  axis[0] = cameraFp[0] - cameraPos[0];
36
35
  axis[1] = cameraFp[1] - cameraPos[1];
37
- axis[2] = cameraFp[2] - cameraPos[2]; // compute the angle of rotation
38
- // - first compute the two vectors (center to mouse)
36
+ axis[2] = cameraFp[2] - cameraPos[2];
39
37
 
38
+ // compute the angle of rotation
39
+ // - first compute the two vectors (center to mouse)
40
40
  publicAPI.computeDisplayCenter(interactor.getInteractorStyle(), renderer);
41
- var x1 = model.previousPosition.x - model.displayCenter[0];
42
- var x2 = position.x - model.displayCenter[0];
43
- var y1 = model.previousPosition.y - model.displayCenter[1];
44
- var y2 = position.y - model.displayCenter[1];
45
-
41
+ const x1 = model.previousPosition.x - model.displayCenter[0];
42
+ const x2 = position.x - model.displayCenter[0];
43
+ const y1 = model.previousPosition.y - model.displayCenter[1];
44
+ const y2 = position.y - model.displayCenter[1];
46
45
  if (x2 === 0 && y2 === 0 || x1 === 0 && y1 === 0) {
47
46
  // don't ever want to divide by zero
48
47
  return;
49
- } // - divide by magnitudes to get angle
50
-
48
+ }
51
49
 
52
- var angle = degreesFromRadians((x1 * y2 - y1 * x2) / (Math.sqrt(x1 * x1 + y1 * y1) * Math.sqrt(x2 * x2 + y2 * y2)));
53
- var center = model.center;
50
+ // - divide by magnitudes to get angle
51
+ const angle = degreesFromRadians((x1 * y2 - y1 * x2) / (Math.sqrt(x1 * x1 + y1 * y1) * Math.sqrt(x2 * x2 + y2 * y2)));
52
+ const {
53
+ center
54
+ } = model;
54
55
  mat4.identity(transform);
55
56
  centerNeg[0] = -center[0];
56
57
  centerNeg[1] = -center[1];
57
- centerNeg[2] = -center[2]; // Translate to center
58
+ centerNeg[2] = -center[2];
58
59
 
59
- mat4.translate(transform, transform, center); // roll
60
+ // Translate to center
61
+ mat4.translate(transform, transform, center);
60
62
 
61
- mat4.rotate(transform, transform, radiansFromDegrees(angle), axis); // Translate back
63
+ // roll
64
+ mat4.rotate(transform, transform, radiansFromDegrees(angle), axis);
62
65
 
63
- mat4.translate(transform, transform, centerNeg); // Apply transformation to camera position, focal point, and view up
66
+ // Translate back
67
+ mat4.translate(transform, transform, centerNeg);
64
68
 
69
+ // Apply transformation to camera position, focal point, and view up
65
70
  vec3.transformMat4(newCamPos, cameraPos, transform);
66
71
  vec3.transformMat4(newFp, cameraFp, transform);
67
72
  direction[0] = viewUp[0] + cameraPos[0];
@@ -73,36 +78,43 @@ function vtkMouseCameraTrackballRollManipulator(publicAPI, model) {
73
78
  camera.setViewUp(newViewUp[0] - newCamPos[0], newViewUp[1] - newCamPos[1], newViewUp[2] - newCamPos[2]);
74
79
  camera.orthogonalizeViewUp();
75
80
  renderer.resetCameraClippingRange();
76
-
77
81
  if (interactor.getLightFollowCamera()) {
78
82
  renderer.updateLightsGeometryToFollowCamera();
79
83
  }
80
-
81
84
  model.previousPosition = position;
82
85
  };
83
- } // ----------------------------------------------------------------------------
86
+ }
87
+
88
+ // ----------------------------------------------------------------------------
84
89
  // Object factory
85
90
  // ----------------------------------------------------------------------------
86
91
 
92
+ const DEFAULT_VALUES = {};
87
93
 
88
- var DEFAULT_VALUES = {}; // ----------------------------------------------------------------------------
94
+ // ----------------------------------------------------------------------------
89
95
 
90
96
  function extend(publicAPI, model) {
91
- var initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
92
- Object.assign(model, DEFAULT_VALUES, initialValues); // Inheritance
97
+ let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
98
+ Object.assign(model, DEFAULT_VALUES, initialValues);
93
99
 
100
+ // Inheritance
94
101
  macro.obj(publicAPI, model);
95
102
  vtkCompositeCameraManipulator.extend(publicAPI, model, initialValues);
96
- vtkCompositeMouseManipulator.extend(publicAPI, model, initialValues); // Object specific methods
103
+ vtkCompositeMouseManipulator.extend(publicAPI, model, initialValues);
97
104
 
105
+ // Object specific methods
98
106
  vtkMouseCameraTrackballRollManipulator(publicAPI, model);
99
- } // ----------------------------------------------------------------------------
107
+ }
100
108
 
101
- var newInstance = macro.newInstance(extend, 'vtkMouseCameraTrackballRollManipulator'); // ----------------------------------------------------------------------------
109
+ // ----------------------------------------------------------------------------
110
+
111
+ const newInstance = macro.newInstance(extend, 'vtkMouseCameraTrackballRollManipulator');
112
+
113
+ // ----------------------------------------------------------------------------
102
114
 
103
115
  var vtkMouseCameraTrackballRollManipulator$1 = {
104
- newInstance: newInstance,
105
- extend: extend
116
+ newInstance,
117
+ extend
106
118
  };
107
119
 
108
120
  export { vtkMouseCameraTrackballRollManipulator$1 as default, extend, newInstance };