@kitware/vtk.js 28.10.2 → 28.11.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (566) hide show
  1. package/Common/Core/Base64.js +53 -82
  2. package/Common/Core/CellArray.js +52 -60
  3. package/Common/Core/ClassHierarchy.js +8 -36
  4. package/Common/Core/DataArray/Constants.js +6 -6
  5. package/Common/Core/DataArray.js +193 -277
  6. package/Common/Core/Endian.js +14 -17
  7. package/Common/Core/HalfFloat.js +17 -34
  8. package/Common/Core/ImageHelper.js +17 -25
  9. package/Common/Core/LookupTable.js +131 -144
  10. package/Common/Core/Math/Constants.js +8 -8
  11. package/Common/Core/Math/index.js +754 -942
  12. package/Common/Core/Math.js +2 -4
  13. package/Common/Core/MatrixBuilder.js +99 -151
  14. package/Common/Core/Points.js +43 -43
  15. package/Common/Core/PriorityQueue.js +30 -28
  16. package/Common/Core/ProgressHandler.js +31 -32
  17. package/Common/Core/ScalarsToColors/Constants.js +4 -4
  18. package/Common/Core/ScalarsToColors.js +196 -253
  19. package/Common/Core/StringArray.js +48 -73
  20. package/Common/Core/URLExtract.js +10 -29
  21. package/Common/Core/VariantArray.js +48 -73
  22. package/Common/Core.js +11 -11
  23. package/Common/DataModel/AbstractPointLocator.js +19 -17
  24. package/Common/DataModel/BoundingBox.js +322 -490
  25. package/Common/DataModel/Box.js +46 -63
  26. package/Common/DataModel/CardinalSpline1D.js +92 -102
  27. package/Common/DataModel/Cell.js +41 -61
  28. package/Common/DataModel/CellLinks.js +91 -127
  29. package/Common/DataModel/CellTypes/Constants.js +7 -6
  30. package/Common/DataModel/CellTypes.js +55 -74
  31. package/Common/DataModel/Collection.js +45 -61
  32. package/Common/DataModel/Cone.js +28 -20
  33. package/Common/DataModel/Cylinder.js +41 -35
  34. package/Common/DataModel/DataSet/Constants.js +11 -5
  35. package/Common/DataModel/DataSet.js +37 -25
  36. package/Common/DataModel/DataSetAttributes/Constants.js +18 -18
  37. package/Common/DataModel/DataSetAttributes/FieldData.js +103 -194
  38. package/Common/DataModel/DataSetAttributes.js +96 -138
  39. package/Common/DataModel/EdgeLocator.js +45 -70
  40. package/Common/DataModel/ITKHelper.js +67 -137
  41. package/Common/DataModel/ImageData.js +115 -172
  42. package/Common/DataModel/ImplicitBoolean/Constants.js +2 -2
  43. package/Common/DataModel/ImplicitBoolean.js +66 -96
  44. package/Common/DataModel/IncrementalOctreeNode.js +201 -231
  45. package/Common/DataModel/IncrementalOctreePointLocator.js +160 -198
  46. package/Common/DataModel/KochanekSpline1D.js +78 -81
  47. package/Common/DataModel/Line/Constants.js +2 -2
  48. package/Common/DataModel/Line.js +82 -105
  49. package/Common/DataModel/Locator.js +17 -10
  50. package/Common/DataModel/Molecule.js +26 -17
  51. package/Common/DataModel/PiecewiseFunction.js +218 -239
  52. package/Common/DataModel/Plane.js +90 -113
  53. package/Common/DataModel/PointSet.js +30 -26
  54. package/Common/DataModel/PolyData/Constants.js +2 -2
  55. package/Common/DataModel/PolyData.js +95 -120
  56. package/Common/DataModel/PolyLine.js +44 -61
  57. package/Common/DataModel/Polygon/Constants.js +4 -4
  58. package/Common/DataModel/Polygon.js +128 -169
  59. package/Common/DataModel/Quad/Constants.js +2 -2
  60. package/Common/DataModel/Quad.js +61 -100
  61. package/Common/DataModel/SelectionNode/Constants.js +5 -4
  62. package/Common/DataModel/SelectionNode.js +25 -21
  63. package/Common/DataModel/Sphere.js +40 -35
  64. package/Common/DataModel/Spline1D/Constants.js +3 -2
  65. package/Common/DataModel/Spline1D.js +34 -18
  66. package/Common/DataModel/Spline3D/Constants.js +2 -2
  67. package/Common/DataModel/Spline3D.js +46 -41
  68. package/Common/DataModel/StructuredData/Constants.js +2 -2
  69. package/Common/DataModel/StructuredData.js +9 -20
  70. package/Common/DataModel/Triangle.js +207 -250
  71. package/Common/DataModel.js +19 -19
  72. package/Common/System/MobileVR.js +56 -61
  73. package/Common/System/TimerLog.js +1 -1
  74. package/Common/System.js +2 -2
  75. package/Common/Transform/LandmarkTransform/Constants.js +2 -2
  76. package/Common/Transform/LandmarkTransform.js +133 -117
  77. package/Common/Transform/Transform.js +42 -57
  78. package/Common/Transform.js +2 -2
  79. package/Common/index.js +4 -4
  80. package/Filters/Core/Cutter.js +134 -146
  81. package/Filters/Core/PolyDataNormals.js +44 -50
  82. package/Filters/Core.js +2 -2
  83. package/Filters/Cornerstone/ImageDataToCornerstoneImage.js +45 -33
  84. package/Filters/Cornerstone.js +1 -1
  85. package/Filters/General/AppendPolyData.js +84 -100
  86. package/Filters/General/Calculator.js +95 -163
  87. package/Filters/General/ClipClosedSurface/Constants.js +2 -2
  88. package/Filters/General/ClipClosedSurface.js +341 -416
  89. package/Filters/General/ClosedPolyLineToSurfaceFilter.js +141 -156
  90. package/Filters/General/ContourTriangulator/Constants.js +2 -2
  91. package/Filters/General/ContourTriangulator/helper.js +684 -812
  92. package/Filters/General/ContourTriangulator.js +92 -89
  93. package/Filters/General/ImageCropFilter.js +77 -78
  94. package/Filters/General/ImageDataOutlineFilter.js +42 -36
  95. package/Filters/General/ImageMarchingCubes/caseTable.js +9 -521
  96. package/Filters/General/ImageMarchingCubes.js +99 -112
  97. package/Filters/General/ImageMarchingSquares/caseTable.js +9 -41
  98. package/Filters/General/ImageMarchingSquares.js +93 -118
  99. package/Filters/General/ImageOutlineFilter.js +53 -54
  100. package/Filters/General/ImageSliceFilter.js +39 -30
  101. package/Filters/General/ImageStreamline.js +107 -124
  102. package/Filters/General/LineFilter.js +26 -15
  103. package/Filters/General/MoleculeToRepresentation.js +136 -149
  104. package/Filters/General/OBBTree/OBBNode.js +36 -34
  105. package/Filters/General/OBBTree/helper.js +19 -24
  106. package/Filters/General/OBBTree.js +396 -488
  107. package/Filters/General/OutlineFilter.js +52 -34
  108. package/Filters/General/PaintFilter/PaintFilter.worker.js +93 -130
  109. package/Filters/General/PaintFilter.js +150 -162
  110. package/Filters/General/ScalarToRGBA.js +38 -33
  111. package/Filters/General/TriangleFilter.js +65 -62
  112. package/Filters/General/TubeFilter/Constants.js +4 -4
  113. package/Filters/General/TubeFilter.js +376 -496
  114. package/Filters/General/WarpScalar.js +58 -60
  115. package/Filters/General/WindowedSincPolyDataFilter.js +258 -330
  116. package/Filters/General.js +21 -21
  117. package/Filters/Sources/Arrow2DSource/Constants.js +2 -2
  118. package/Filters/Sources/Arrow2DSource.js +56 -56
  119. package/Filters/Sources/ArrowSource.js +39 -29
  120. package/Filters/Sources/CircleSource.js +43 -43
  121. package/Filters/Sources/ConcentricCylinderSource.js +151 -174
  122. package/Filters/Sources/ConeSource.js +51 -42
  123. package/Filters/Sources/CubeSource.js +75 -96
  124. package/Filters/Sources/Cursor3D.js +94 -109
  125. package/Filters/Sources/CylinderSource.js +90 -90
  126. package/Filters/Sources/ImageGridSource.js +43 -43
  127. package/Filters/Sources/LineSource.js +49 -39
  128. package/Filters/Sources/PlaneSource.js +97 -104
  129. package/Filters/Sources/PointSource.js +46 -37
  130. package/Filters/Sources/RTAnalyticSource.js +50 -48
  131. package/Filters/Sources/SLICSource.js +63 -73
  132. package/Filters/Sources/SphereSource.js +88 -78
  133. package/Filters/Sources/ViewFinderSource.js +26 -23
  134. package/Filters/Sources.js +14 -14
  135. package/Filters/Texture/TextureMapToPlane.js +95 -97
  136. package/Filters/Texture/TextureMapToSphere.js +46 -54
  137. package/Filters/Texture.js +2 -2
  138. package/Filters/index.js +5 -5
  139. package/IO/Core/BinaryHelper.js +12 -18
  140. package/IO/Core/DataAccessHelper/HtmlDataAccessHelper.js +43 -59
  141. package/IO/Core/DataAccessHelper/HttpDataAccessHelper.js +76 -113
  142. package/IO/Core/DataAccessHelper/JSZipDataAccessHelper.js +62 -112
  143. package/IO/Core/DataAccessHelper/LiteHttpDataAccessHelper.js +76 -113
  144. package/IO/Core/DataAccessHelper.js +6 -6
  145. package/IO/Core/HttpDataSetReader.js +136 -139
  146. package/IO/Core/HttpDataSetSeriesReader.js +64 -75
  147. package/IO/Core/HttpSceneLoader.js +130 -179
  148. package/IO/Core/ImageStream/DefaultProtocol.js +29 -43
  149. package/IO/Core/ImageStream/ViewStream.js +100 -103
  150. package/IO/Core/ImageStream.js +62 -54
  151. package/IO/Core/ResourceLoader.js +10 -9
  152. package/IO/Core/Serializer/ArraySerializer.js +40 -40
  153. package/IO/Core/Serializer/FieldDataSerializer.js +18 -28
  154. package/IO/Core/Serializer/ImageDataSerializer.js +22 -23
  155. package/IO/Core/Serializer/PolyDataSerializer.js +17 -21
  156. package/IO/Core/Serializer.js +6 -13
  157. package/IO/Core/WSLinkClient.js +90 -76
  158. package/IO/Core/ZipMultiDataSetReader.js +46 -44
  159. package/IO/Core/ZipMultiDataSetWriter.js +43 -34
  160. package/IO/Core.js +7 -7
  161. package/IO/Geometry/DracoReader.js +118 -121
  162. package/IO/Geometry/PLYReader.js +163 -223
  163. package/IO/Geometry/PLYWriter/Constants.js +5 -5
  164. package/IO/Geometry/PLYWriter.js +139 -154
  165. package/IO/Geometry/STLReader.js +123 -146
  166. package/IO/Geometry/STLWriter/Constants.js +2 -2
  167. package/IO/Geometry/STLWriter.js +83 -82
  168. package/IO/Geometry.js +5 -5
  169. package/IO/Legacy/LegacyAsciiParser.js +78 -139
  170. package/IO/Legacy/PolyDataReader.js +48 -36
  171. package/IO/Legacy.js +2 -2
  172. package/IO/Misc/ElevationReader.js +67 -60
  173. package/IO/Misc/HttpDataSetLODsLoader.js +41 -38
  174. package/IO/Misc/ITKImageReader.js +58 -45
  175. package/IO/Misc/ITKPolyDataReader.js +50 -38
  176. package/IO/Misc/JSONNucleoReader.js +49 -42
  177. package/IO/Misc/JSONReader.js +38 -33
  178. package/IO/Misc/MTLReader.js +74 -119
  179. package/IO/Misc/OBJReader.js +153 -206
  180. package/IO/Misc/PDBReader.js +70 -68
  181. package/IO/Misc/SkyboxReader.js +77 -82
  182. package/IO/Misc.js +9 -9
  183. package/IO/XML/XMLImageDataReader.js +36 -38
  184. package/IO/XML/XMLImageDataWriter.js +28 -21
  185. package/IO/XML/XMLPolyDataReader.js +49 -46
  186. package/IO/XML/XMLPolyDataWriter.js +43 -42
  187. package/IO/XML/XMLReader.js +262 -304
  188. package/IO/XML/XMLWriter/Constants.js +3 -3
  189. package/IO/XML/XMLWriter.js +70 -84
  190. package/IO/XML.js +6 -6
  191. package/IO/index.js +5 -5
  192. package/Imaging/Core/AbstractImageInterpolator/Constants.js +4 -4
  193. package/Imaging/Core/AbstractImageInterpolator/InterpolationInfo.js +30 -27
  194. package/Imaging/Core/AbstractImageInterpolator.js +74 -87
  195. package/Imaging/Core/ImageInterpolator.js +201 -252
  196. package/Imaging/Core/ImagePointDataIterator.js +96 -122
  197. package/Imaging/Core/ImageReslice/Constants.js +2 -2
  198. package/Imaging/Core/ImageReslice.js +327 -464
  199. package/Imaging/Core.js +4 -4
  200. package/Imaging/Hybrid/SampleFunction.js +58 -51
  201. package/Imaging/Hybrid.js +1 -1
  202. package/Imaging/index.js +2 -2
  203. package/Interaction/Animations/TimeStepBasedAnimationHandler.js +39 -54
  204. package/Interaction/Manipulators/CompositeCameraManipulator.js +22 -13
  205. package/Interaction/Manipulators/CompositeGestureManipulator.js +31 -43
  206. package/Interaction/Manipulators/CompositeKeyboardManipulator.js +15 -11
  207. package/Interaction/Manipulators/CompositeMouseManipulator.js +27 -33
  208. package/Interaction/Manipulators/CompositeVRManipulator.js +22 -15
  209. package/Interaction/Manipulators/GestureCameraManipulator.js +54 -36
  210. package/Interaction/Manipulators/KeyboardCameraManipulator.js +95 -97
  211. package/Interaction/Manipulators/MouseBoxSelectorManipulator.js +70 -89
  212. package/Interaction/Manipulators/MouseCameraAxisRotateManipulator.js +67 -54
  213. package/Interaction/Manipulators/MouseCameraSliceManipulator.js +40 -38
  214. package/Interaction/Manipulators/MouseCameraTrackballFirstPersonManipulator.js +83 -68
  215. package/Interaction/Manipulators/MouseCameraTrackballMultiRotateManipulator.js +32 -28
  216. package/Interaction/Manipulators/MouseCameraTrackballPanManipulator.js +47 -40
  217. package/Interaction/Manipulators/MouseCameraTrackballRollManipulator.js +55 -43
  218. package/Interaction/Manipulators/MouseCameraTrackballRotateManipulator.js +56 -46
  219. package/Interaction/Manipulators/MouseCameraTrackballZoomManipulator.js +41 -46
  220. package/Interaction/Manipulators/MouseCameraTrackballZoomToMouseManipulator.js +29 -27
  221. package/Interaction/Manipulators/MouseCameraUnicamManipulator.js +123 -146
  222. package/Interaction/Manipulators/MouseCameraUnicamRotateManipulator.js +144 -166
  223. package/Interaction/Manipulators/MouseRangeManipulator.js +127 -132
  224. package/Interaction/Manipulators/VRButtonPanManipulator.js +33 -23
  225. package/Interaction/Manipulators.js +21 -21
  226. package/Interaction/Misc/DeviceOrientationToCamera.js +25 -47
  227. package/Interaction/Misc.js +1 -1
  228. package/Interaction/Style/InteractorStyleImage.js +101 -121
  229. package/Interaction/Style/InteractorStyleMPRSlice.js +111 -128
  230. package/Interaction/Style/InteractorStyleManipulator/Presets.js +9 -17
  231. package/Interaction/Style/InteractorStyleManipulator.js +254 -329
  232. package/Interaction/Style/InteractorStyleRemoteMouse.js +195 -180
  233. package/Interaction/Style/InteractorStyleTrackballCamera.js +154 -157
  234. package/Interaction/Style/InteractorStyleUnicam.js +30 -38
  235. package/Interaction/Style.js +5 -5
  236. package/Interaction/UI/CornerAnnotation/CornerAnnotation.module.css.js +1 -1
  237. package/Interaction/UI/CornerAnnotation.js +65 -48
  238. package/Interaction/UI/FPSMonitor.js +104 -105
  239. package/Interaction/UI/Icons.js +1 -1
  240. package/Interaction/UI/Slider/Constants.js +2 -2
  241. package/Interaction/UI/Slider.js +78 -95
  242. package/Interaction/UI/VolumeController.js +104 -97
  243. package/Interaction/UI.js +5 -5
  244. package/Interaction/Widgets/OrientationMarkerWidget/Constants.js +2 -2
  245. package/Interaction/Widgets/OrientationMarkerWidget.js +90 -135
  246. package/Interaction/Widgets/PiecewiseGaussianWidget/ComputeHistogram.worker.js +0 -3
  247. package/Interaction/Widgets/PiecewiseGaussianWidget.js +381 -498
  248. package/Interaction/Widgets.js +2 -2
  249. package/Interaction/index.js +5 -5
  250. package/Proxy/Animation/AbstractAnimationProxy.js +22 -15
  251. package/Proxy/Animation/AnimationProxyManager.js +43 -51
  252. package/Proxy/Animation/TimeStepBasedAnimationHandlerProxy.js +26 -19
  253. package/Proxy/Core/AbstractRepresentationProxy.js +97 -151
  254. package/Proxy/Core/LookupTableProxy/Constants.js +4 -4
  255. package/Proxy/Core/LookupTableProxy.js +49 -52
  256. package/Proxy/Core/PiecewiseFunctionProxy/Constants.js +4 -4
  257. package/Proxy/Core/PiecewiseFunctionProxy.js +63 -72
  258. package/Proxy/Core/ProxyManager/core.js +83 -106
  259. package/Proxy/Core/ProxyManager/properties.js +53 -76
  260. package/Proxy/Core/ProxyManager/state.js +100 -110
  261. package/Proxy/Core/ProxyManager/view.js +45 -55
  262. package/Proxy/Core/ProxyManager.js +16 -8
  263. package/Proxy/Core/SourceProxy.js +41 -38
  264. package/Proxy/Core/View2DProxy.js +143 -199
  265. package/Proxy/Core/ViewProxy.js +223 -269
  266. package/Proxy/Core.js +7 -7
  267. package/Proxy/Representations/GeometryRepresentationProxy.js +34 -20
  268. package/Proxy/Representations/GlyphRepresentationProxy.js +42 -41
  269. package/Proxy/Representations/MoleculeRepresentationProxy.js +32 -22
  270. package/Proxy/Representations/ResliceRepresentationProxy.js +48 -32
  271. package/Proxy/Representations/SkyboxRepresentationProxy.js +30 -29
  272. package/Proxy/Representations/SliceRepresentationProxy.js +93 -112
  273. package/Proxy/Representations/SlicedGeometryRepresentationProxy.js +46 -42
  274. package/Proxy/Representations/VolumeRepresentationProxy.js +108 -133
  275. package/Proxy/Representations.js +7 -7
  276. package/Proxy/index.js +2 -2
  277. package/README.md +1 -1
  278. package/Rendering/Core/AbstractImageMapper/helper.js +44 -49
  279. package/Rendering/Core/AbstractImageMapper.js +18 -19
  280. package/Rendering/Core/AbstractMapper.js +39 -55
  281. package/Rendering/Core/AbstractMapper3D.js +26 -31
  282. package/Rendering/Core/AbstractPicker.js +25 -21
  283. package/Rendering/Core/Actor.js +71 -93
  284. package/Rendering/Core/Actor2D.js +64 -78
  285. package/Rendering/Core/AnnotatedCubeActor/Presets.js +5 -11
  286. package/Rendering/Core/AnnotatedCubeActor.js +94 -79
  287. package/Rendering/Core/AxesActor.js +65 -87
  288. package/Rendering/Core/Camera.js +246 -271
  289. package/Rendering/Core/CellPicker.js +125 -148
  290. package/Rendering/Core/ColorTransferFunction/ColorMaps.js +20 -21
  291. package/Rendering/Core/ColorTransferFunction/ColorMapsLite.js +20 -21
  292. package/Rendering/Core/ColorTransferFunction/Constants.js +4 -4
  293. package/Rendering/Core/ColorTransferFunction.js +460 -546
  294. package/Rendering/Core/Coordinate/Constants.js +2 -2
  295. package/Rendering/Core/Coordinate.js +119 -198
  296. package/Rendering/Core/CubeAxesActor.js +294 -320
  297. package/Rendering/Core/Follower.js +46 -45
  298. package/Rendering/Core/Glyph3DMapper/Constants.js +4 -4
  299. package/Rendering/Core/Glyph3DMapper.js +96 -148
  300. package/Rendering/Core/HardwareSelector.js +36 -69
  301. package/Rendering/Core/ImageArrayMapper.js +87 -126
  302. package/Rendering/Core/ImageCPRMapper.js +134 -209
  303. package/Rendering/Core/ImageMapper/Constants.js +2 -2
  304. package/Rendering/Core/ImageMapper.js +85 -144
  305. package/Rendering/Core/ImageProperty/Constants.js +2 -2
  306. package/Rendering/Core/ImageProperty.js +66 -81
  307. package/Rendering/Core/ImageResliceMapper/Constants.js +2 -2
  308. package/Rendering/Core/ImageResliceMapper.js +36 -29
  309. package/Rendering/Core/ImageSlice.js +85 -127
  310. package/Rendering/Core/InteractorObserver.js +82 -73
  311. package/Rendering/Core/InteractorStyle/Constants.js +2 -2
  312. package/Rendering/Core/InteractorStyle.js +56 -58
  313. package/Rendering/Core/Light.js +43 -49
  314. package/Rendering/Core/Mapper/CoincidentTopologyHelper.js +37 -48
  315. package/Rendering/Core/Mapper/Constants.js +6 -6
  316. package/Rendering/Core/Mapper/Static.js +15 -12
  317. package/Rendering/Core/Mapper.js +194 -259
  318. package/Rendering/Core/Mapper2D.js +61 -100
  319. package/Rendering/Core/Picker.js +124 -143
  320. package/Rendering/Core/PixelSpaceCallbackMapper.js +40 -37
  321. package/Rendering/Core/PointPicker.js +68 -79
  322. package/Rendering/Core/Prop/Constants.js +2 -2
  323. package/Rendering/Core/Prop.js +58 -106
  324. package/Rendering/Core/Prop3D.js +54 -83
  325. package/Rendering/Core/Property/Constants.js +6 -6
  326. package/Rendering/Core/Property.js +45 -74
  327. package/Rendering/Core/Property2D/Constants.js +2 -2
  328. package/Rendering/Core/Property2D.js +33 -42
  329. package/Rendering/Core/RenderWindow.js +70 -82
  330. package/Rendering/Core/RenderWindowInteractor/Constants.js +7 -7
  331. package/Rendering/Core/RenderWindowInteractor.js +324 -439
  332. package/Rendering/Core/Renderer.js +192 -256
  333. package/Rendering/Core/ScalarBarActor.js +267 -272
  334. package/Rendering/Core/Skybox.js +26 -24
  335. package/Rendering/Core/SphereMapper.js +22 -12
  336. package/Rendering/Core/StickMapper.js +22 -12
  337. package/Rendering/Core/SurfaceLICInterface/Constants.js +6 -6
  338. package/Rendering/Core/SurfaceLICInterface.js +13 -9
  339. package/Rendering/Core/SurfaceLICMapper.js +23 -15
  340. package/Rendering/Core/Texture.js +99 -141
  341. package/Rendering/Core/Viewport.js +60 -88
  342. package/Rendering/Core/Volume.js +55 -77
  343. package/Rendering/Core/VolumeMapper/Constants.js +4 -4
  344. package/Rendering/Core/VolumeMapper.js +59 -91
  345. package/Rendering/Core/VolumeProperty/Constants.js +4 -4
  346. package/Rendering/Core/VolumeProperty.js +78 -115
  347. package/Rendering/Core.js +47 -49
  348. package/Rendering/Misc/CanvasView.js +62 -61
  349. package/Rendering/Misc/FullScreenRenderWindow.js +60 -62
  350. package/Rendering/Misc/GenericRenderWindow.js +48 -37
  351. package/Rendering/Misc/RemoteView.js +86 -80
  352. package/Rendering/Misc/RenderWindowWithControlBar.js +54 -48
  353. package/Rendering/Misc/SynchronizableRenderWindow/BehaviorManager/CameraSynchronizer.js +43 -51
  354. package/Rendering/Misc/SynchronizableRenderWindow/BehaviorManager.js +52 -82
  355. package/Rendering/Misc/SynchronizableRenderWindow/ObjectManager.js +258 -308
  356. package/Rendering/Misc/SynchronizableRenderWindow.js +133 -163
  357. package/Rendering/Misc/TextureLODsDownloader.js +72 -74
  358. package/Rendering/Misc.js +7 -7
  359. package/Rendering/OpenGL/Actor.js +57 -68
  360. package/Rendering/OpenGL/Actor2D.js +56 -56
  361. package/Rendering/OpenGL/BufferObject/Constants.js +2 -2
  362. package/Rendering/OpenGL/BufferObject.js +50 -65
  363. package/Rendering/OpenGL/Camera.js +35 -29
  364. package/Rendering/OpenGL/CellArrayBufferObject.js +119 -149
  365. package/Rendering/OpenGL/Convolution2DPass.js +87 -81
  366. package/Rendering/OpenGL/CubeAxesActor.js +28 -21
  367. package/Rendering/OpenGL/ForwardPass.js +53 -64
  368. package/Rendering/OpenGL/Framebuffer.js +61 -101
  369. package/Rendering/OpenGL/Glyph3DMapper.js +165 -196
  370. package/Rendering/OpenGL/HardwareSelector/Constants.js +2 -2
  371. package/Rendering/OpenGL/HardwareSelector.js +272 -397
  372. package/Rendering/OpenGL/Helper.js +58 -73
  373. package/Rendering/OpenGL/ImageCPRMapper.js +339 -421
  374. package/Rendering/OpenGL/ImageMapper.js +268 -361
  375. package/Rendering/OpenGL/ImageResliceMapper.js +306 -438
  376. package/Rendering/OpenGL/ImageSlice.js +48 -54
  377. package/Rendering/OpenGL/OrderIndependentTranslucentPass.js +102 -84
  378. package/Rendering/OpenGL/PixelSpaceCallbackMapper.js +43 -42
  379. package/Rendering/OpenGL/PolyDataMapper.js +358 -492
  380. package/Rendering/OpenGL/PolyDataMapper2D.js +153 -205
  381. package/Rendering/OpenGL/RadialDistortionPass.js +86 -89
  382. package/Rendering/OpenGL/RenderWindow/Constants.js +2 -2
  383. package/Rendering/OpenGL/RenderWindow/ContextProxy.js +20 -29
  384. package/Rendering/OpenGL/RenderWindow.js +356 -510
  385. package/Rendering/OpenGL/Renderer.js +77 -89
  386. package/Rendering/OpenGL/ReplacementShaderMapper.js +28 -46
  387. package/Rendering/OpenGL/ScalarBarActor.js +28 -21
  388. package/Rendering/OpenGL/Shader.js +37 -31
  389. package/Rendering/OpenGL/ShaderCache.js +67 -74
  390. package/Rendering/OpenGL/ShaderProgram.js +136 -248
  391. package/Rendering/OpenGL/Skybox.js +99 -60
  392. package/Rendering/OpenGL/SphereMapper.js +94 -108
  393. package/Rendering/OpenGL/StickMapper.js +110 -114
  394. package/Rendering/OpenGL/SurfaceLIC/LineIntegralConvolution2D/pingpong.js +91 -157
  395. package/Rendering/OpenGL/SurfaceLIC/LineIntegralConvolution2D.js +142 -151
  396. package/Rendering/OpenGL/SurfaceLIC/SurfaceLICInterface.js +142 -216
  397. package/Rendering/OpenGL/SurfaceLIC/SurfaceLICMapper.js +79 -100
  398. package/Rendering/OpenGL/SurfaceLIC.js +2 -2
  399. package/Rendering/OpenGL/Texture/Constants.js +4 -4
  400. package/Rendering/OpenGL/Texture.js +443 -608
  401. package/Rendering/OpenGL/TextureUnitManager.js +47 -43
  402. package/Rendering/OpenGL/VertexArrayObject.js +92 -131
  403. package/Rendering/OpenGL/ViewNodeFactory.js +25 -13
  404. package/Rendering/OpenGL/Volume.js +38 -34
  405. package/Rendering/OpenGL/VolumeMapper.js +437 -547
  406. package/Rendering/OpenGL.js +28 -28
  407. package/Rendering/SceneGraph/RenderPass.js +34 -31
  408. package/Rendering/SceneGraph/RenderWindowViewNode.js +68 -94
  409. package/Rendering/SceneGraph/ViewNode.js +82 -111
  410. package/Rendering/SceneGraph/ViewNodeFactory.js +31 -26
  411. package/Rendering/SceneGraph.js +4 -4
  412. package/Rendering/WebGPU/Actor.js +49 -49
  413. package/Rendering/WebGPU/Actor2D.js +45 -44
  414. package/Rendering/WebGPU/BindGroup.js +43 -50
  415. package/Rendering/WebGPU/Buffer.js +41 -50
  416. package/Rendering/WebGPU/BufferManager/Constants.js +4 -4
  417. package/Rendering/WebGPU/BufferManager.js +111 -141
  418. package/Rendering/WebGPU/Camera.js +65 -67
  419. package/Rendering/WebGPU/CellArrayMapper.js +621 -388
  420. package/Rendering/WebGPU/CubeAxesActor.js +28 -19
  421. package/Rendering/WebGPU/Device.js +78 -133
  422. package/Rendering/WebGPU/ForwardPass.js +75 -72
  423. package/Rendering/WebGPU/FullScreenQuad.js +25 -18
  424. package/Rendering/WebGPU/Glyph3DMapper.js +62 -74
  425. package/Rendering/WebGPU/HardwareSelectionPass.js +45 -38
  426. package/Rendering/WebGPU/HardwareSelector.js +200 -276
  427. package/Rendering/WebGPU/ImageMapper.js +180 -171
  428. package/Rendering/WebGPU/ImageSlice.js +45 -44
  429. package/Rendering/WebGPU/IndexBuffer.js +166 -200
  430. package/Rendering/WebGPU/OpaquePass.js +37 -36
  431. package/Rendering/WebGPU/OrderIndependentTranslucentPass.js +72 -45
  432. package/Rendering/WebGPU/Pipeline.js +37 -51
  433. package/Rendering/WebGPU/PixelSpaceCallbackMapper.js +27 -19
  434. package/Rendering/WebGPU/PolyDataMapper.js +50 -53
  435. package/Rendering/WebGPU/PolyDataMapper2D.js +39 -39
  436. package/Rendering/WebGPU/RenderEncoder.js +68 -88
  437. package/Rendering/WebGPU/RenderWindow.js +262 -376
  438. package/Rendering/WebGPU/Renderer.js +224 -208
  439. package/Rendering/WebGPU/Sampler.js +27 -21
  440. package/Rendering/WebGPU/ScalarBarActor.js +28 -19
  441. package/Rendering/WebGPU/ShaderCache.js +43 -41
  442. package/Rendering/WebGPU/ShaderDescription.js +52 -59
  443. package/Rendering/WebGPU/ShaderModule.js +26 -17
  444. package/Rendering/WebGPU/SimpleMapper.js +185 -121
  445. package/Rendering/WebGPU/SphereMapper.js +200 -130
  446. package/Rendering/WebGPU/StickMapper.js +289 -152
  447. package/Rendering/WebGPU/StorageBuffer.js +100 -115
  448. package/Rendering/WebGPU/Texture.js +79 -99
  449. package/Rendering/WebGPU/TextureManager.js +52 -54
  450. package/Rendering/WebGPU/TextureView.js +40 -43
  451. package/Rendering/WebGPU/Types.js +53 -70
  452. package/Rendering/WebGPU/UniformBuffer.js +158 -184
  453. package/Rendering/WebGPU/VertexInput.js +64 -90
  454. package/Rendering/WebGPU/ViewNodeFactory.js +25 -13
  455. package/Rendering/WebGPU/Volume.js +52 -51
  456. package/Rendering/WebGPU/VolumePass.js +218 -239
  457. package/Rendering/WebGPU/VolumePassFSQ.js +625 -306
  458. package/Rendering/WebGPU.js +1 -1
  459. package/Rendering/index.js +5 -5
  460. package/Widgets/Core/AbstractWidget/Constants.js +2 -2
  461. package/Widgets/Core/AbstractWidget.js +49 -58
  462. package/Widgets/Core/AbstractWidgetFactory.js +101 -122
  463. package/Widgets/Core/StateBuilder/boundsMixin.js +23 -28
  464. package/Widgets/Core/StateBuilder/color3Mixin.js +10 -7
  465. package/Widgets/Core/StateBuilder/colorMixin.js +10 -6
  466. package/Widgets/Core/StateBuilder/cornerMixin.js +16 -15
  467. package/Widgets/Core/StateBuilder/directionMixin.js +20 -18
  468. package/Widgets/Core/StateBuilder/manipulatorMixin.js +26 -18
  469. package/Widgets/Core/StateBuilder/nameMixin.js +10 -6
  470. package/Widgets/Core/StateBuilder/orientationMixin.js +19 -16
  471. package/Widgets/Core/StateBuilder/originMixin.js +25 -32
  472. package/Widgets/Core/StateBuilder/scale1Mixin.js +10 -6
  473. package/Widgets/Core/StateBuilder/scale3Mixin.js +10 -6
  474. package/Widgets/Core/StateBuilder/shapeMixin.js +12 -6
  475. package/Widgets/Core/StateBuilder/textMixin.js +10 -6
  476. package/Widgets/Core/StateBuilder/visibleMixin.js +10 -6
  477. package/Widgets/Core/StateBuilder.js +120 -149
  478. package/Widgets/Core/WidgetManager/Constants.js +7 -7
  479. package/Widgets/Core/WidgetManager.js +249 -421
  480. package/Widgets/Core/WidgetState.js +48 -57
  481. package/Widgets/Core.js +5 -5
  482. package/Widgets/Manipulators/AbstractManipulator.js +20 -14
  483. package/Widgets/Manipulators/CPRManipulator.js +55 -71
  484. package/Widgets/Manipulators/LineManipulator.js +31 -28
  485. package/Widgets/Manipulators/PickerManipulator.d.ts +48 -0
  486. package/Widgets/Manipulators/PickerManipulator.js +65 -0
  487. package/Widgets/Manipulators/PlaneManipulator.js +26 -23
  488. package/Widgets/Manipulators/TrackballManipulator.js +39 -35
  489. package/Widgets/Manipulators.js +4 -2
  490. package/Widgets/Representations/ArrowHandleRepresentation.js +148 -162
  491. package/Widgets/Representations/CircleContextRepresentation.js +44 -38
  492. package/Widgets/Representations/ContextRepresentation.js +17 -14
  493. package/Widgets/Representations/ConvexFaceContextRepresentation.js +50 -47
  494. package/Widgets/Representations/CroppingOutlineRepresentation.js +38 -27
  495. package/Widgets/Representations/CubeHandleRepresentation.js +21 -18
  496. package/Widgets/Representations/GlyphRepresentation.js +107 -152
  497. package/Widgets/Representations/HandleRepresentation.js +17 -14
  498. package/Widgets/Representations/ImplicitPlaneRepresentation.js +97 -91
  499. package/Widgets/Representations/LineHandleRepresentation.js +44 -41
  500. package/Widgets/Representations/OutlineContextRepresentation.js +42 -36
  501. package/Widgets/Representations/PolyLineRepresentation.js +60 -75
  502. package/Widgets/Representations/RectangleContextRepresentation.js +42 -37
  503. package/Widgets/Representations/SphereContextRepresentation.js +19 -27
  504. package/Widgets/Representations/SphereHandleRepresentation.js +31 -27
  505. package/Widgets/Representations/SplineContextRepresentation.js +46 -70
  506. package/Widgets/Representations/WidgetRepresentation/Constants.js +2 -2
  507. package/Widgets/Representations/WidgetRepresentation.js +99 -134
  508. package/Widgets/Representations.js +13 -13
  509. package/Widgets/Widgets3D/AngleWidget/behavior.js +41 -63
  510. package/Widgets/Widgets3D/AngleWidget.js +40 -38
  511. package/Widgets/Widgets3D/DistanceWidget/behavior.js +40 -61
  512. package/Widgets/Widgets3D/DistanceWidget.js +38 -36
  513. package/Widgets/Widgets3D/EllipseWidget/behavior.js +14 -19
  514. package/Widgets/Widgets3D/EllipseWidget/state.js +4 -2
  515. package/Widgets/Widgets3D/EllipseWidget.js +37 -26
  516. package/Widgets/Widgets3D/ImageCroppingWidget/behavior.js +26 -56
  517. package/Widgets/Widgets3D/ImageCroppingWidget/helpers.js +14 -17
  518. package/Widgets/Widgets3D/ImageCroppingWidget/state.js +20 -16
  519. package/Widgets/Widgets3D/ImageCroppingWidget.js +80 -98
  520. package/Widgets/Widgets3D/ImplicitPlaneWidget.js +55 -77
  521. package/Widgets/Widgets3D/InteractiveOrientationWidget/behavior.js +17 -18
  522. package/Widgets/Widgets3D/InteractiveOrientationWidget/state.js +15 -7
  523. package/Widgets/Widgets3D/InteractiveOrientationWidget.js +30 -29
  524. package/Widgets/Widgets3D/LabelWidget/behavior.js +37 -62
  525. package/Widgets/Widgets3D/LabelWidget.js +31 -25
  526. package/Widgets/Widgets3D/LineWidget/Constants.js +8 -8
  527. package/Widgets/Widgets3D/LineWidget/behavior.js +77 -114
  528. package/Widgets/Widgets3D/LineWidget/helpers.js +13 -20
  529. package/Widgets/Widgets3D/LineWidget/state.js +2 -1
  530. package/Widgets/Widgets3D/LineWidget.js +39 -35
  531. package/Widgets/Widgets3D/PaintWidget/behavior.js +24 -59
  532. package/Widgets/Widgets3D/PaintWidget.js +39 -37
  533. package/Widgets/Widgets3D/PolyLineWidget/behavior.js +44 -68
  534. package/Widgets/Widgets3D/PolyLineWidget.js +36 -31
  535. package/Widgets/Widgets3D/RectangleWidget/behavior.js +6 -11
  536. package/Widgets/Widgets3D/RectangleWidget/state.js +4 -2
  537. package/Widgets/Widgets3D/RectangleWidget.js +37 -25
  538. package/Widgets/Widgets3D/ResliceCursorWidget/Constants.js +35 -21
  539. package/Widgets/Widgets3D/ResliceCursorWidget/behavior.js +133 -209
  540. package/Widgets/Widgets3D/ResliceCursorWidget/cprBehavior.js +26 -41
  541. package/Widgets/Widgets3D/ResliceCursorWidget/helpers.js +89 -116
  542. package/Widgets/Widgets3D/ResliceCursorWidget/state.js +33 -40
  543. package/Widgets/Widgets3D/ResliceCursorWidget.js +186 -227
  544. package/Widgets/Widgets3D/SeedWidget/behavior.js +82 -0
  545. package/Widgets/Widgets3D/SeedWidget/state.js +18 -0
  546. package/Widgets/Widgets3D/SeedWidget.d.ts +44 -0
  547. package/Widgets/Widgets3D/SeedWidget.js +43 -0
  548. package/Widgets/Widgets3D/ShapeWidget/Constants.js +19 -19
  549. package/Widgets/Widgets3D/ShapeWidget/behavior.js +150 -252
  550. package/Widgets/Widgets3D/ShapeWidget.js +24 -27
  551. package/Widgets/Widgets3D/SphereWidget/behavior.js +35 -69
  552. package/Widgets/Widgets3D/SphereWidget/state.js +9 -5
  553. package/Widgets/Widgets3D/SphereWidget.js +34 -44
  554. package/Widgets/Widgets3D/SplineWidget/behavior.js +85 -120
  555. package/Widgets/Widgets3D/SplineWidget.js +43 -39
  556. package/Widgets/Widgets3D.js +15 -15
  557. package/Widgets/index.js +4 -4
  558. package/_virtual/rollup-plugin-worker-loader__module_Sources/Filters/General/PaintFilter/PaintFilter.worker.js +95 -207
  559. package/_virtual/rollup-plugin-worker-loader__module_Sources/Interaction/Widgets/PiecewiseGaussianWidget/ComputeHistogram.worker.js +0 -3
  560. package/favicon.js +5 -6
  561. package/index.d.ts +4 -2
  562. package/index.js +4 -3
  563. package/macros.js +4 -1931
  564. package/macros2.js +1684 -0
  565. package/package.json +6 -6
  566. package/vtk.js +18 -31
@@ -1,62 +1,63 @@
1
- import macro from '../../macros.js';
1
+ import { m as macro } from '../../macros2.js';
2
2
  import vtkDataArray from '../../Common/Core/DataArray.js';
3
3
  import { l as normalize, d as dot, j as cross, e as distance2BetweenPoints, y as determinant3x3, z as rowsToMat3 } from '../../Common/Core/Math/index.js';
4
4
  import vtkPolyData from '../../Common/DataModel/PolyData.js';
5
5
 
6
- var vtkErrorMacro = macro.vtkErrorMacro; // ----------------------------------------------------------------------------
6
+ const {
7
+ vtkErrorMacro
8
+ } = macro;
9
+
10
+ // ----------------------------------------------------------------------------
7
11
  // vtkTextureMapToPlane methods
8
12
  // ----------------------------------------------------------------------------
9
13
 
10
14
  function vtkTextureMapToPlane(publicAPI, model) {
11
15
  // Set our className
12
16
  model.classHierarchy.push('vtkTextureMapToPlane');
13
-
14
17
  function computeNormal(output) {
15
- var VTK_TOLERANCE = 0.001; // First thing to do is to get an initial normal and point to define
18
+ const VTK_TOLERANCE = 0.001;
19
+ // First thing to do is to get an initial normal and point to define
16
20
  // the plane. Then, use this information to construct better
17
21
  // matrices. If problem occurs, then the point and plane becomes the
18
22
  // fallback value
19
23
 
20
- var nbPoints = output.getPoints().getNumberOfPoints();
21
- var dir = 0;
22
- var m = [0, 0, 0, 0, 0, 0, 0, 0, 0];
23
- var x = [0, 0, 0];
24
- var v = [0, 0, 0]; // Get minimum width of bounding box.
25
-
26
- var bounds = output.getBounds();
27
- var minBounds = [bounds[0], bounds[2], bounds[4]];
28
- var maxBounds = [bounds[1], bounds[3], bounds[5]];
29
- var length = Math.sqrt(distance2BetweenPoints(minBounds, maxBounds));
30
- var w = length;
31
- var i = 0;
32
-
24
+ const nbPoints = output.getPoints().getNumberOfPoints();
25
+ let dir = 0;
26
+ let m = [0, 0, 0, 0, 0, 0, 0, 0, 0];
27
+ const x = [0, 0, 0];
28
+ const v = [0, 0, 0];
29
+
30
+ // Get minimum width of bounding box.
31
+ const bounds = output.getBounds();
32
+ const minBounds = [bounds[0], bounds[2], bounds[4]];
33
+ const maxBounds = [bounds[1], bounds[3], bounds[5]];
34
+ const length = Math.sqrt(distance2BetweenPoints(minBounds, maxBounds));
35
+ let w = length;
36
+ let i = 0;
33
37
  for (; i < 3; i++) {
34
38
  model.normal[i] = 0.0;
35
-
36
39
  if (bounds[2 * i + 1] - bounds[2 * i] < w) {
37
40
  dir = i;
38
41
  w = bounds[2 * i + 1] - bounds[2 * i];
39
42
  }
40
- } // If the bounds is perpendicular to one of the axes, then can
43
+ }
44
+
45
+ // If the bounds is perpendicular to one of the axes, then can
41
46
  // quickly compute normal.
42
47
  //
43
-
44
-
45
48
  model.normal[dir] = 1.0;
46
-
47
49
  if (w <= length * VTK_TOLERANCE) {
48
50
  return;
49
- } // Need to compute least squares approximation. Depending on major
51
+ }
52
+
53
+ // Need to compute least squares approximation. Depending on major
50
54
  // normal direction (dir), construct matrices appropriately.
51
55
  //
52
56
  // Compute 3x3 least squares matrix
53
-
54
-
55
57
  v[0] = 0.0;
56
58
  v[1] = 0.0;
57
59
  v[2] = 0.0;
58
-
59
- for (var ptId = 0; ptId < nbPoints; ptId++) {
60
+ for (let ptId = 0; ptId < nbPoints; ptId++) {
60
61
  output.getPoints().getPoint(ptId, x);
61
62
  v[0] += x[0] * x[2];
62
63
  v[1] += x[1] * x[2];
@@ -70,169 +71,159 @@ function vtkTextureMapToPlane(publicAPI, model) {
70
71
  m[6] += x[0];
71
72
  m[7] += x[1];
72
73
  }
74
+ m[8] = nbPoints;
73
75
 
74
- m[8] = nbPoints; // Solve linear system using Kramers rule
75
-
76
- var c1 = [m[0], m[1], m[2]];
77
- var c2 = [m[3], m[4], m[5]];
78
- var c3 = [m[6], m[7], m[8]];
79
- var det = determinant3x3(m);
76
+ // Solve linear system using Kramers rule
80
77
 
78
+ const c1 = [m[0], m[1], m[2]];
79
+ const c2 = [m[3], m[4], m[5]];
80
+ const c3 = [m[6], m[7], m[8]];
81
+ const det = determinant3x3(m);
81
82
  if (det <= VTK_TOLERANCE) {
82
83
  return;
83
84
  }
84
-
85
85
  m = rowsToMat3(v, c2, c3, []);
86
86
  model.normal[0] = determinant3x3(m) / det;
87
87
  m = rowsToMat3(c1, v, c3, []);
88
- model.normal[1] = determinant3x3(m) / det; // because of the formulation
89
-
88
+ model.normal[1] = determinant3x3(m) / det;
89
+ // because of the formulation
90
90
  model.normal[2] = -1.0;
91
91
  }
92
-
93
- publicAPI.requestData = function (inData, outData) {
92
+ publicAPI.requestData = (inData, outData) => {
94
93
  if (model.deleted) {
95
94
  return;
96
95
  }
97
-
98
- var input = inData[0];
99
- var nbPoints = input.getPoints().getNumberOfPoints();
100
-
96
+ const input = inData[0];
97
+ const nbPoints = input.getPoints().getNumberOfPoints();
101
98
  if (nbPoints < 3 && model.automaticPlaneGeneration) {
102
99
  vtkErrorMacro("Can't generate texture coordinates without points");
103
100
  return;
104
101
  }
105
-
106
- var output = vtkPolyData.newInstance();
102
+ const output = vtkPolyData.newInstance();
107
103
  output.getPoints().setData(new Float32Array(input.getPoints().getData()), 3);
108
104
  output.getPolys().setData(new Uint32Array(input.getPolys().getData()));
109
- var tcoordsData = [];
110
- var minProj = 0;
111
- var i = 0;
112
- var j = 0;
113
- var proj = 0;
114
- var axis = [0, 0, 0];
115
- var dir = 0;
116
- var tAxis = [0, 0, 0];
117
- var sAxis = [0, 0, 0];
118
- var s = 0;
119
- var t = 0;
120
- var sSf = 0;
121
- var tSf = 0;
122
- var p = [0, 0, 0]; // Compute least squares plane if on automatic mode; otherwise use
105
+ const tcoordsData = [];
106
+ let minProj = 0;
107
+ let i = 0;
108
+ let j = 0;
109
+ let proj = 0;
110
+ const axis = [0, 0, 0];
111
+ let dir = 0;
112
+ const tAxis = [0, 0, 0];
113
+ const sAxis = [0, 0, 0];
114
+ let s = 0;
115
+ let t = 0;
116
+ let sSf = 0;
117
+ let tSf = 0;
118
+ const p = [0, 0, 0];
119
+
120
+ // Compute least squares plane if on automatic mode; otherwise use
123
121
  // normal specified or plane specified
124
-
125
122
  if (model.automaticPlaneGeneration && model.origin[0] === 0 && model.origin[1] === 0 && model.origin[2] === 0 && model.point1[0] === 0 && model.point1[1] === 0 && model.point2[0] === 0 && model.point2[1] === 0) {
126
123
  if (model.automaticPlaneGeneration) {
127
124
  computeNormal(output);
128
125
  }
126
+ normalize(model.normal);
129
127
 
130
- normalize(model.normal); // Now project each point onto plane generating s,t texture coordinates
128
+ // Now project each point onto plane generating s,t texture coordinates
131
129
  //
132
130
  // Create local s-t coordinate system. Need to find the two axes on
133
131
  // the plane and encompassing all the points. Hence use the bounding
134
132
  // box as a reference.
135
-
136
133
  minProj = 1.0;
137
134
  i = 0;
138
-
139
135
  for (; i < 3; i++) {
140
136
  axis[0] = 0.0;
141
137
  axis[1] = 0.0;
142
138
  axis[2] = 0.0;
143
139
  axis[i] = 1.0;
144
140
  proj = Math.abs(dot(model.normal, axis));
145
-
146
141
  if (proj < minProj) {
147
142
  minProj = proj;
148
143
  dir = i;
149
144
  }
150
145
  }
151
-
152
146
  axis[0] = 0.0;
153
147
  axis[1] = 0.0;
154
148
  axis[2] = 0.0;
155
149
  axis[dir] = 1.0;
156
150
  cross(model.normal, axis, tAxis);
157
151
  normalize(tAxis);
158
- cross(tAxis, model.normal, sAxis); // Construct projection matrices
152
+ cross(tAxis, model.normal, sAxis);
153
+
154
+ // Construct projection matrices
159
155
  //
160
156
  // Arrange s-t axes so that parametric location of points will fall
161
157
  // between s_range and t_range. Simplest to do by projecting maximum
162
158
  // corner of bounding box unto plane and backing out scale factors.
163
159
  //
164
-
165
- var bounds = output.getBounds();
166
-
160
+ const bounds = output.getBounds();
167
161
  for (i = 0; i < 3; i++) {
168
162
  axis[i] = bounds[2 * i + 1] - bounds[2 * i];
169
163
  }
170
-
171
164
  s = dot(sAxis, axis);
172
165
  t = dot(tAxis, axis);
173
166
  sSf = (model.sRange[1] - model.sRange[0]) / s;
174
- tSf = (model.tRange[1] - model.tRange[0]) / t; // Now can loop over all points, computing parametric coordinates.
175
-
167
+ tSf = (model.tRange[1] - model.tRange[0]) / t;
168
+ // Now can loop over all points, computing parametric coordinates.
176
169
  for (i = 0; i < nbPoints; i++) {
177
170
  output.getPoints().getPoint(i, p);
178
-
179
171
  for (j = 0; j < 3; j++) {
180
172
  axis[j] = p[j] - bounds[2 * j];
181
173
  }
182
-
183
174
  tcoordsData.push(model.sRange[0] + dot(sAxis, axis) * sSf);
184
175
  tcoordsData.push(model.tRange[0] + dot(tAxis, axis) * tSf);
185
176
  }
186
177
  } else {
187
- var num = 0; // compute axes
178
+ let num = 0;
188
179
 
180
+ // compute axes
189
181
  for (i = 0; i < 3; i++) {
190
182
  sAxis[i] = model.point1[i] - model.origin[i];
191
183
  tAxis[i] = model.point2[i] - model.origin[i];
192
184
  }
193
-
194
- var sDenom = dot(sAxis, sAxis);
195
- var tDenom = dot(tAxis, tAxis);
196
-
185
+ let sDenom = dot(sAxis, sAxis);
186
+ let tDenom = dot(tAxis, tAxis);
197
187
  if (sDenom === 0.0 || tDenom === 0.0) {
198
188
  vtkErrorMacro('Bad plane definition');
199
189
  sDenom = 1.0;
200
190
  tDenom = 1.0;
201
- } // compute s-t coordinates
202
-
191
+ }
203
192
 
193
+ // compute s-t coordinates
204
194
  for (i = 0; i < nbPoints; i++) {
205
195
  output.getPoints().getPoint(i, p);
206
-
207
196
  for (j = 0; j < 3; j++) {
208
197
  axis[j] = p[j] - model.origin[j];
209
- } // s-coordinate
210
-
198
+ }
211
199
 
200
+ // s-coordinate
212
201
  num = sAxis[0] * axis[0] + sAxis[1] * axis[1] + sAxis[2] * axis[2];
213
- tcoordsData.push(num / sDenom); // t-coordinate
202
+ tcoordsData.push(num / sDenom);
214
203
 
204
+ // t-coordinate
215
205
  num = tAxis[0] * axis[0] + tAxis[1] * axis[1] + tAxis[2] * axis[2];
216
206
  tcoordsData.push(num / tDenom);
217
207
  }
218
208
  }
219
-
220
- var tCoords = vtkDataArray.newInstance({
209
+ const tCoords = vtkDataArray.newInstance({
221
210
  name: 'Texture Coordinates',
222
211
  numberOfComponents: 2,
223
212
  size: nbPoints,
224
213
  values: tcoordsData
225
214
  });
226
- output.getPointData().setTCoords(tCoords); // Update output
215
+ output.getPointData().setTCoords(tCoords);
227
216
 
217
+ // Update output
228
218
  outData[0] = output;
229
219
  };
230
- } // ----------------------------------------------------------------------------
220
+ }
221
+
222
+ // ----------------------------------------------------------------------------
231
223
  // Object factory
232
224
  // ----------------------------------------------------------------------------
233
225
 
234
-
235
- var DEFAULT_VALUES = {
226
+ const DEFAULT_VALUES = {
236
227
  origin: [0, 0, 0],
237
228
  point1: [0, 0, 0],
238
229
  point2: [0, 0, 0],
@@ -240,25 +231,32 @@ var DEFAULT_VALUES = {
240
231
  sRange: [0, 1],
241
232
  tRange: [0, 1],
242
233
  automaticPlaneGeneration: 1
243
- }; // ----------------------------------------------------------------------------
234
+ };
235
+
236
+ // ----------------------------------------------------------------------------
244
237
 
245
238
  function extend(publicAPI, model) {
246
- var initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
247
- Object.assign(model, DEFAULT_VALUES, initialValues); // Build VTK API
239
+ let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
240
+ Object.assign(model, DEFAULT_VALUES, initialValues);
248
241
 
242
+ // Build VTK API
249
243
  macro.obj(publicAPI, model);
250
244
  macro.setGetArray(publicAPI, model, ['origin', 'point1', 'point2', 'normal'], 3);
251
245
  macro.setGetArray(publicAPI, model, ['sRange', 'tRange'], 2);
252
246
  macro.setGet(publicAPI, model, ['automaticPlaneGeneration']);
253
247
  macro.algo(publicAPI, model, 1, 1);
254
248
  vtkTextureMapToPlane(publicAPI, model);
255
- } // ----------------------------------------------------------------------------
249
+ }
250
+
251
+ // ----------------------------------------------------------------------------
252
+
253
+ const newInstance = macro.newInstance(extend, 'vtkTextureMapToPlane');
256
254
 
257
- var newInstance = macro.newInstance(extend, 'vtkTextureMapToPlane'); // ----------------------------------------------------------------------------
255
+ // ----------------------------------------------------------------------------
258
256
 
259
257
  var vtkTextureMapToPlane$1 = {
260
- newInstance: newInstance,
261
- extend: extend
258
+ newInstance,
259
+ extend
262
260
  };
263
261
 
264
262
  export { vtkTextureMapToPlane$1 as default, extend, newInstance };
@@ -1,67 +1,59 @@
1
- import macro from '../../macros.js';
1
+ import { m as macro } from '../../macros2.js';
2
2
  import vtkDataArray from '../../Common/Core/DataArray.js';
3
3
  import { e as distance2BetweenPoints } from '../../Common/Core/Math/index.js';
4
4
  import vtkPolyData from '../../Common/DataModel/PolyData.js';
5
5
 
6
- var vtkErrorMacro = macro.vtkErrorMacro; // ----------------------------------------------------------------------------
6
+ const {
7
+ vtkErrorMacro
8
+ } = macro;
9
+
10
+ // ----------------------------------------------------------------------------
7
11
  // vtkTextureMapToSphere methods
8
12
  // ----------------------------------------------------------------------------
9
13
 
10
14
  function vtkTextureMapToSphere(publicAPI, model) {
11
15
  // Set our className
12
16
  model.classHierarchy.push('vtkTextureMapToSphere');
13
-
14
- publicAPI.requestData = function (inData, outData) {
17
+ publicAPI.requestData = (inData, outData) => {
15
18
  if (model.deleted) {
16
19
  return;
17
20
  }
18
-
19
- var input = inData[0];
20
- var nbPoints = input.getPoints().getNumberOfPoints();
21
-
21
+ const input = inData[0];
22
+ const nbPoints = input.getPoints().getNumberOfPoints();
22
23
  if (nbPoints <= 1) {
23
24
  vtkErrorMacro("Can't generate texture coordinates without points");
24
25
  return;
25
26
  }
26
-
27
- var piOverTwo = Math.PI / 2;
28
- var x = [];
29
- var points = input.getPoints();
30
-
27
+ const piOverTwo = Math.PI / 2;
28
+ const x = [];
29
+ const points = input.getPoints();
31
30
  if (model.automaticSphereGeneration) {
32
31
  model.center = [0, 0, 0];
33
-
34
- for (var i = 0; i < nbPoints; i++) {
32
+ for (let i = 0; i < nbPoints; i++) {
35
33
  points.getPoint(i, x);
36
34
  model.center[0] += x[0];
37
35
  model.center[1] += x[1];
38
36
  model.center[2] += x[2];
39
37
  }
40
-
41
38
  model.center[0] /= nbPoints;
42
39
  model.center[1] /= nbPoints;
43
40
  model.center[2] /= nbPoints;
44
41
  }
45
-
46
- var rho = 0;
47
- var diff = 0;
48
- var phi = 0;
49
- var tc = [0, 0];
50
- var r = 0;
51
- var thetaX = 0;
52
- var thetaY = 0;
53
- var tcoordsData = [];
54
-
55
- for (var _i = 0; _i < nbPoints; _i++) {
56
- points.getPoint(_i, x);
42
+ let rho = 0;
43
+ let diff = 0;
44
+ let phi = 0;
45
+ const tc = [0, 0];
46
+ let r = 0;
47
+ let thetaX = 0;
48
+ let thetaY = 0;
49
+ const tcoordsData = [];
50
+ for (let i = 0; i < nbPoints; i++) {
51
+ points.getPoint(i, x);
57
52
  rho = Math.sqrt(distance2BetweenPoints(x, model.center));
58
-
59
53
  if (rho !== 0) {
60
54
  diff = x[2] - model.center[2];
61
-
62
55
  if (Math.abs(diff) > rho) {
63
56
  phi = 0;
64
-
65
57
  if (diff > 0) {
66
58
  tc[1] = 0;
67
59
  } else {
@@ -74,12 +66,9 @@ function vtkTextureMapToSphere(publicAPI, model) {
74
66
  } else {
75
67
  tc[1] = 0;
76
68
  }
77
-
78
69
  r = rho * Math.sin(phi);
79
-
80
70
  if (r !== 0) {
81
71
  diff = x[0] - model.center[0];
82
-
83
72
  if (Math.abs(diff) > r) {
84
73
  if (diff > 0) {
85
74
  thetaX = 0;
@@ -89,9 +78,7 @@ function vtkTextureMapToSphere(publicAPI, model) {
89
78
  } else {
90
79
  thetaX = Math.acos(diff / r);
91
80
  }
92
-
93
81
  diff = x[1] - model.center[1];
94
-
95
82
  if (Math.abs(diff) > r) {
96
83
  if (diff > 0) {
97
84
  thetaY = piOverTwo;
@@ -105,60 +92,65 @@ function vtkTextureMapToSphere(publicAPI, model) {
105
92
  thetaX = 0;
106
93
  thetaY = 0;
107
94
  }
108
-
109
95
  if (model.preventSeam) {
110
96
  tc[0] = thetaX / Math.PI;
111
97
  } else {
112
98
  tc[0] = thetaX / (2 * Math.PI);
113
-
114
99
  if (thetaY < 0) {
115
100
  tc[0] = 1 - tc[0];
116
101
  }
117
102
  }
118
-
119
- tcoordsData.push.apply(tcoordsData, tc);
103
+ tcoordsData.push(...tc);
120
104
  }
121
-
122
- var tCoords = vtkDataArray.newInstance({
105
+ const tCoords = vtkDataArray.newInstance({
123
106
  name: 'Texture Coordinates',
124
107
  numberOfComponents: 2,
125
108
  size: nbPoints,
126
109
  values: tcoordsData
127
110
  });
128
- var output = vtkPolyData.newInstance();
111
+ const output = vtkPolyData.newInstance();
129
112
  output.getPoints().setData(new Float32Array(input.getPoints().getData()), 3);
130
113
  output.getPolys().setData(new Uint32Array(input.getPolys().getData()));
131
- output.getPointData().setTCoords(tCoords); // Update output
114
+ output.getPointData().setTCoords(tCoords);
132
115
 
116
+ // Update output
133
117
  outData[0] = output;
134
118
  };
135
- } // ----------------------------------------------------------------------------
119
+ }
120
+
121
+ // ----------------------------------------------------------------------------
136
122
  // Object factory
137
123
  // ----------------------------------------------------------------------------
138
124
 
139
-
140
- var DEFAULT_VALUES = {
125
+ const DEFAULT_VALUES = {
141
126
  center: [0, 0, 0],
142
127
  automaticSphereGeneration: 1,
143
128
  preventSeam: 1
144
- }; // ----------------------------------------------------------------------------
129
+ };
130
+
131
+ // ----------------------------------------------------------------------------
145
132
 
146
133
  function extend(publicAPI, model) {
147
- var initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
148
- Object.assign(model, DEFAULT_VALUES, initialValues); // Build VTK API
134
+ let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
135
+ Object.assign(model, DEFAULT_VALUES, initialValues);
149
136
 
137
+ // Build VTK API
150
138
  macro.obj(publicAPI, model);
151
139
  macro.setGetArray(publicAPI, model, ['center'], 3);
152
140
  macro.setGet(publicAPI, model, ['automaticSphereGeneration', 'preventSeam']);
153
141
  macro.algo(publicAPI, model, 1, 1);
154
142
  vtkTextureMapToSphere(publicAPI, model);
155
- } // ----------------------------------------------------------------------------
143
+ }
156
144
 
157
- var newInstance = macro.newInstance(extend, 'vtkTextureMapToSphere'); // ----------------------------------------------------------------------------
145
+ // ----------------------------------------------------------------------------
146
+
147
+ const newInstance = macro.newInstance(extend, 'vtkTextureMapToSphere');
148
+
149
+ // ----------------------------------------------------------------------------
158
150
 
159
151
  var vtkTextureMapToSphere$1 = {
160
- newInstance: newInstance,
161
- extend: extend
152
+ newInstance,
153
+ extend
162
154
  };
163
155
 
164
156
  export { vtkTextureMapToSphere$1 as default, extend, newInstance };
@@ -2,8 +2,8 @@ import vtkTextureMapToSphere from './Texture/TextureMapToSphere.js';
2
2
  import vtkTextureMapToPlane from './Texture/TextureMapToPlane.js';
3
3
 
4
4
  var Texture = {
5
- vtkTextureMapToPlane: vtkTextureMapToPlane,
6
- vtkTextureMapToSphere: vtkTextureMapToSphere
5
+ vtkTextureMapToPlane,
6
+ vtkTextureMapToSphere
7
7
  };
8
8
 
9
9
  export { Texture as default };
package/Filters/index.js CHANGED
@@ -5,11 +5,11 @@ import Sources from './Sources.js';
5
5
  import Texture from './Texture.js';
6
6
 
7
7
  var Filters = {
8
- Cornerstone: Cornerstone,
9
- Core: Core,
10
- General: General,
11
- Sources: Sources,
12
- Texture: Texture
8
+ Cornerstone,
9
+ Core,
10
+ General,
11
+ Sources,
12
+ Texture
13
13
  };
14
14
 
15
15
  export { Filters as default };
@@ -5,32 +5,28 @@
5
5
  * expect proper Unicode or any other encoding.
6
6
  */
7
7
  function arrayBufferToString(arrayBuffer) {
8
- var decoder = new TextDecoder('latin1');
8
+ const decoder = new TextDecoder('latin1');
9
9
  return decoder.decode(arrayBuffer);
10
10
  }
11
+
11
12
  /**
12
13
  * Extracts binary data out of a file ArrayBuffer given a prefix/suffix.
13
14
  */
14
-
15
-
16
15
  function extractBinary(arrayBuffer, prefixRegex) {
17
- var suffixRegex = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
18
- var str = arrayBufferToString(arrayBuffer);
19
- var prefixMatch = prefixRegex.exec(str);
20
-
16
+ let suffixRegex = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
17
+ const str = arrayBufferToString(arrayBuffer);
18
+ const prefixMatch = prefixRegex.exec(str);
21
19
  if (!prefixMatch) {
22
20
  return {
23
21
  text: str
24
22
  };
25
23
  }
26
-
27
- var dataStartIndex = prefixMatch.index + prefixMatch[0].length;
28
- var strFirstHalf = str.substring(0, dataStartIndex);
29
- var retVal = null;
30
- var suffixMatch = suffixRegex ? suffixRegex.exec(str) : null;
31
-
24
+ const dataStartIndex = prefixMatch.index + prefixMatch[0].length;
25
+ const strFirstHalf = str.substring(0, dataStartIndex);
26
+ let retVal = null;
27
+ const suffixMatch = suffixRegex ? suffixRegex.exec(str) : null;
32
28
  if (suffixMatch) {
33
- var strSecondHalf = str.substr(suffixMatch.index);
29
+ const strSecondHalf = str.substr(suffixMatch.index);
34
30
  retVal = {
35
31
  text: strFirstHalf + strSecondHalf,
36
32
  binaryBuffer: arrayBuffer.slice(dataStartIndex, suffixMatch.index)
@@ -42,13 +38,11 @@ function extractBinary(arrayBuffer, prefixRegex) {
42
38
  binaryBuffer: arrayBuffer.slice(dataStartIndex)
43
39
  };
44
40
  }
45
-
46
41
  return retVal;
47
42
  }
48
-
49
43
  var BinaryHelper = {
50
- arrayBufferToString: arrayBufferToString,
51
- extractBinary: extractBinary
44
+ arrayBufferToString,
45
+ extractBinary
52
46
  };
53
47
 
54
48
  export { BinaryHelper as default };