@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,69 +1,58 @@
1
- import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
- import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
3
- import macro from '../../macros.js';
1
+ import { m as macro } from '../../macros2.js';
4
2
  import vtkBoundingBox from './BoundingBox.js';
5
3
 
6
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
7
-
8
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
4
+ // ----------------------------------------------------------------------------
9
5
  // Global methods
10
6
  // ----------------------------------------------------------------------------
7
+
11
8
  // ----------------------------------------------------------------------------
12
9
  // Static API
13
10
  // ----------------------------------------------------------------------------
14
11
 
15
- var STATIC = {}; // ----------------------------------------------------------------------------
12
+ const STATIC = {};
13
+
14
+ // ----------------------------------------------------------------------------
16
15
  // vtkBox methods
17
16
  // ----------------------------------------------------------------------------
18
17
 
19
18
  function vtkBox(publicAPI, model) {
20
19
  // Set our className
21
- model.classHierarchy.push('vtkBox'); // TODO: replace with macro.setArray ?
20
+ model.classHierarchy.push('vtkBox');
22
21
 
22
+ // TODO: replace with macro.setArray ?
23
23
  publicAPI.setBounds = function () {
24
- var boundsArray = [];
25
-
24
+ let boundsArray = [];
26
25
  for (var _len = arguments.length, bounds = new Array(_len), _key = 0; _key < _len; _key++) {
27
26
  bounds[_key] = arguments[_key];
28
27
  }
29
-
30
28
  if (Array.isArray(bounds[0])) {
31
29
  boundsArray = bounds[0];
32
30
  } else {
33
- for (var i = 0; i < bounds.length; i++) {
31
+ for (let i = 0; i < bounds.length; i++) {
34
32
  boundsArray.push(bounds[i]);
35
33
  }
36
34
  }
37
-
38
35
  if (boundsArray.length !== 6) {
39
36
  console.log('vtkBox.setBounds', boundsArray, bounds);
40
37
  return;
41
38
  }
42
-
43
39
  vtkBoundingBox.setBounds(model.bbox, boundsArray);
44
40
  };
45
-
46
- publicAPI.getBounds = function () {
47
- return model.bbox;
48
- };
49
-
50
- publicAPI.evaluateFunction = function (x, y, z) {
51
- var point = Array.isArray(x) ? x : [x, y, z];
52
- var diff;
53
- var dist;
54
- var t;
55
- var minDistance = -Number.MAX_VALUE;
56
- var distance = 0;
57
- var minPoint = vtkBoundingBox.getMinPoint(model.bbox);
58
- var maxPoint = vtkBoundingBox.getMaxPoint(model.bbox);
59
- var inside = 1;
60
-
61
- for (var i = 0; i < 3; i++) {
41
+ publicAPI.getBounds = () => model.bbox;
42
+ publicAPI.evaluateFunction = (x, y, z) => {
43
+ const point = Array.isArray(x) ? x : [x, y, z];
44
+ let diff;
45
+ let dist;
46
+ let t;
47
+ let minDistance = -Number.MAX_VALUE;
48
+ let distance = 0;
49
+ const minPoint = vtkBoundingBox.getMinPoint(model.bbox);
50
+ const maxPoint = vtkBoundingBox.getMaxPoint(model.bbox);
51
+ let inside = 1;
52
+ for (let i = 0; i < 3; i++) {
62
53
  diff = vtkBoundingBox.getLength(model.bbox, i);
63
-
64
54
  if (diff !== 0.0) {
65
55
  t = (point[i] - minPoint[i]) / diff;
66
-
67
56
  if (t < 0.0) {
68
57
  inside = 0;
69
58
  dist = minPoint[i] - point[i];
@@ -77,80 +66,74 @@ function vtkBox(publicAPI, model) {
77
66
  } else {
78
67
  dist = point[i] - maxPoint[i];
79
68
  }
80
-
81
69
  if (dist > minDistance) {
82
70
  // remember, it's engative
83
71
  minDistance = dist;
84
72
  }
85
73
  } // end if inside
86
-
87
74
  } else {
88
75
  dist = Math.abs(point[i] - minPoint[i]);
89
-
90
76
  if (dist > 0.0) {
91
77
  inside = 0;
92
78
  }
93
79
  }
94
-
95
80
  if (dist > 0.0) {
96
81
  distance += dist * dist;
97
82
  }
98
83
  } // end for i
99
-
100
-
101
84
  distance = Math.sqrt(distance);
102
-
103
85
  if (inside) {
104
86
  return minDistance;
105
87
  }
106
-
107
88
  return distance;
108
89
  };
109
-
110
90
  publicAPI.addBounds = function () {
111
- var boundsArray = [];
112
-
91
+ let boundsArray = [];
113
92
  if (Array.isArray(arguments.length <= 0 ? undefined : arguments[0])) {
114
93
  boundsArray = arguments.length <= 0 ? undefined : arguments[0];
115
94
  } else {
116
- for (var i = 0; i < arguments.length; i++) {
95
+ for (let i = 0; i < arguments.length; i++) {
117
96
  boundsArray.push(i < 0 || arguments.length <= i ? undefined : arguments[i]);
118
97
  }
119
98
  }
120
-
121
99
  if (boundsArray.length !== 6) {
122
100
  return;
123
101
  }
124
-
125
- vtkBoundingBox.addBounds.apply(vtkBoundingBox, [model.bbox].concat(_toConsumableArray(boundsArray)));
102
+ vtkBoundingBox.addBounds(model.bbox, ...boundsArray);
126
103
  publicAPI.modified();
127
104
  };
105
+ publicAPI.addBox = other => publicAPI.addBounds(other.getBounds());
106
+ }
128
107
 
129
- publicAPI.addBox = function (other) {
130
- return publicAPI.addBounds(other.getBounds());
131
- };
132
- } // ----------------------------------------------------------------------------
108
+ // ----------------------------------------------------------------------------
133
109
  // Object factory
134
110
  // ----------------------------------------------------------------------------
135
111
 
112
+ const DEFAULT_VALUES = {
113
+ bbox: [...vtkBoundingBox.INIT_BOUNDS]
114
+ };
136
115
 
137
- var DEFAULT_VALUES = {
138
- bbox: _toConsumableArray(vtkBoundingBox.INIT_BOUNDS)
139
- }; // ----------------------------------------------------------------------------
116
+ // ----------------------------------------------------------------------------
140
117
 
141
118
  function extend(publicAPI, model) {
142
- var initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
143
- Object.assign(model, DEFAULT_VALUES, initialValues); // Object methods
119
+ let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
120
+ Object.assign(model, DEFAULT_VALUES, initialValues);
144
121
 
122
+ // Object methods
145
123
  macro.obj(publicAPI, model);
146
124
  vtkBox(publicAPI, model);
147
- } // ----------------------------------------------------------------------------
125
+ }
148
126
 
149
- var newInstance = macro.newInstance(extend, 'vtkBox'); // ----------------------------------------------------------------------------
127
+ // ----------------------------------------------------------------------------
128
+
129
+ const newInstance = macro.newInstance(extend, 'vtkBox');
130
+
131
+ // ----------------------------------------------------------------------------
150
132
 
151
- var vtkBox$1 = _objectSpread({
152
- newInstance: newInstance,
153
- extend: extend
154
- }, STATIC);
133
+ var vtkBox$1 = {
134
+ newInstance,
135
+ extend,
136
+ ...STATIC
137
+ };
155
138
 
156
139
  export { STATIC, vtkBox$1 as default, extend, newInstance };
@@ -1,100 +1,94 @@
1
- import macro from '../../macros.js';
1
+ import { m as macro } from '../../macros2.js';
2
2
  import vtkSpline1D from './Spline1D.js';
3
3
  import { BoundaryCondition } from './Spline1D/Constants.js';
4
4
 
5
- var VTK_EPSILON = 0.0001; // ----------------------------------------------------------------------------
5
+ const VTK_EPSILON = 0.0001;
6
+
7
+ // ----------------------------------------------------------------------------
6
8
  // vtkCardinalSpline1D methods
7
9
  // ----------------------------------------------------------------------------
8
10
 
9
11
  function vtkCardinalSpline1D(publicAPI, model) {
10
12
  // Set our classname
11
- model.classHierarchy.push('vtkCardinalSpline1D'); // --------------------------------------------------------------------------
13
+ model.classHierarchy.push('vtkCardinalSpline1D');
12
14
 
13
- publicAPI.computeCloseCoefficients = function (size, work, x, y) {
15
+ // --------------------------------------------------------------------------
16
+
17
+ publicAPI.computeCloseCoefficients = (size, work, x, y) => {
14
18
  if (!model.coefficients || model.coefficients.length !== 4 * size) {
15
19
  model.coefficients = new Float32Array(4 * size);
16
20
  }
17
-
18
- var N = size - 1;
19
-
20
- for (var k = 1; k < N; k++) {
21
- var _xlk = x[k] - x[k - 1];
22
-
23
- var _xlkp = x[k + 1] - x[k];
24
-
25
- model.coefficients[4 * k + 0] = _xlkp;
26
- model.coefficients[4 * k + 1] = 2 * (_xlkp + _xlk);
27
- model.coefficients[4 * k + 2] = _xlk;
28
- work[k] = 3.0 * (_xlkp * (y[k] - y[k - 1]) / _xlk + _xlk * (y[k + 1] - y[k]) / _xlkp);
21
+ const N = size - 1;
22
+ for (let k = 1; k < N; k++) {
23
+ const xlk = x[k] - x[k - 1];
24
+ const xlkp = x[k + 1] - x[k];
25
+ model.coefficients[4 * k + 0] = xlkp;
26
+ model.coefficients[4 * k + 1] = 2 * (xlkp + xlk);
27
+ model.coefficients[4 * k + 2] = xlk;
28
+ work[k] = 3.0 * (xlkp * (y[k] - y[k - 1]) / xlk + xlk * (y[k + 1] - y[k]) / xlkp);
29
29
  }
30
-
31
- var xlk = x[N] - x[N - 1];
32
- var xlkp = x[1] - x[0];
30
+ const xlk = x[N] - x[N - 1];
31
+ const xlkp = x[1] - x[0];
33
32
  model.coefficients[4 * N + 0] = xlkp;
34
33
  model.coefficients[4 * N + 1] = 2 * (xlkp + xlk);
35
34
  model.coefficients[4 * N + 2] = xlk;
36
35
  work[N] = 3 * (xlkp * (y[N] - y[N - 1]) / xlk + xlk * (y[1] - y[0]) / xlkp);
37
- var aN = model.coefficients[4 * N + 0];
38
- var bN = model.coefficients[4 * N + 1];
39
- var cN = model.coefficients[4 * N + 2];
40
- var dN = work[N]; // solve resulting set of equations.
36
+ const aN = model.coefficients[4 * N + 0];
37
+ const bN = model.coefficients[4 * N + 1];
38
+ const cN = model.coefficients[4 * N + 2];
39
+ const dN = work[N];
41
40
 
41
+ // solve resulting set of equations.
42
42
  model.coefficients[4 * 0 + 2] = 0;
43
43
  work[0] = 0;
44
44
  model.coefficients[4 * 0 + 3] = 1;
45
-
46
- for (var _k = 1; _k <= N; _k++) {
47
- model.coefficients[4 * _k + 1] -= model.coefficients[4 * _k + 0] * model.coefficients[4 * (_k - 1) + 2];
48
- model.coefficients[4 * _k + 2] = model.coefficients[4 * _k + 2] / model.coefficients[4 * _k + 1];
49
- work[_k] = (work[_k] - model.coefficients[4 * _k + 0] * work[_k - 1]) / model.coefficients[4 * _k + 1];
50
- model.coefficients[4 * _k + 3] = -model.coefficients[4 * _k + 0] * model.coefficients[4 * (_k - 1) + 3] / model.coefficients[4 * _k + 1];
45
+ for (let k = 1; k <= N; k++) {
46
+ model.coefficients[4 * k + 1] -= model.coefficients[4 * k + 0] * model.coefficients[4 * (k - 1) + 2];
47
+ model.coefficients[4 * k + 2] = model.coefficients[4 * k + 2] / model.coefficients[4 * k + 1];
48
+ work[k] = (work[k] - model.coefficients[4 * k + 0] * work[k - 1]) / model.coefficients[4 * k + 1];
49
+ model.coefficients[4 * k + 3] = -model.coefficients[4 * k + 0] * model.coefficients[4 * (k - 1) + 3] / model.coefficients[4 * k + 1];
51
50
  }
52
-
53
51
  model.coefficients[4 * N + 0] = 1;
54
52
  model.coefficients[4 * N + 1] = 0;
55
-
56
- for (var _k2 = N - 1; _k2 > 0; _k2--) {
57
- model.coefficients[4 * _k2 + 0] = model.coefficients[4 * _k2 + 3] - model.coefficients[4 * _k2 + 2] * model.coefficients[4 * (_k2 + 1) + 0];
58
- model.coefficients[4 * _k2 + 1] = work[_k2] - model.coefficients[4 * _k2 + 2] * model.coefficients[4 * (_k2 + 1) + 1];
53
+ for (let k = N - 1; k > 0; k--) {
54
+ model.coefficients[4 * k + 0] = model.coefficients[4 * k + 3] - model.coefficients[4 * k + 2] * model.coefficients[4 * (k + 1) + 0];
55
+ model.coefficients[4 * k + 1] = work[k] - model.coefficients[4 * k + 2] * model.coefficients[4 * (k + 1) + 1];
59
56
  }
60
-
61
57
  work[0] = (dN - cN * model.coefficients[4 * 1 + 1] - aN * model.coefficients[4 * (N - 1) + 1]) / (bN + cN * model.coefficients[4 * 1 + 0] + aN * model.coefficients[4 * (N - 1) + 0]);
62
58
  work[N] = work[0];
59
+ for (let k = 1; k < N; k++) {
60
+ work[k] = model.coefficients[4 * k + 0] * work[N] + model.coefficients[4 * k + 1];
61
+ }
63
62
 
64
- for (var _k3 = 1; _k3 < N; _k3++) {
65
- work[_k3] = model.coefficients[4 * _k3 + 0] * work[N] + model.coefficients[4 * _k3 + 1];
66
- } // the column vector work now contains the first
63
+ // the column vector work now contains the first
67
64
  // derivative of the spline function at each joint.
68
65
  // compute the coefficients of the cubic between
69
66
  // each pair of joints.
67
+ for (let k = 0; k < N; k++) {
68
+ const b = x[k + 1] - x[k];
69
+ model.coefficients[4 * k + 0] = y[k];
70
+ model.coefficients[4 * k + 1] = work[k];
71
+ model.coefficients[4 * k + 2] = 3 * (y[k + 1] - y[k]) / (b * b) - (work[k + 1] + 2 * work[k]) / b;
72
+ model.coefficients[4 * k + 3] = 2 * (y[k] - y[k + 1]) / (b * b * b) + (work[k + 1] + work[k]) / (b * b);
73
+ }
70
74
 
71
-
72
- for (var _k4 = 0; _k4 < N; _k4++) {
73
- var b = x[_k4 + 1] - x[_k4];
74
- model.coefficients[4 * _k4 + 0] = y[_k4];
75
- model.coefficients[4 * _k4 + 1] = work[_k4];
76
- model.coefficients[4 * _k4 + 2] = 3 * (y[_k4 + 1] - y[_k4]) / (b * b) - (work[_k4 + 1] + 2 * work[_k4]) / b;
77
- model.coefficients[4 * _k4 + 3] = 2 * (y[_k4] - y[_k4 + 1]) / (b * b * b) + (work[_k4 + 1] + work[_k4]) / (b * b);
78
- } // the coefficients of a fictitious nth cubic
75
+ // the coefficients of a fictitious nth cubic
79
76
  // are the same as the coefficients in the first interval
80
-
81
-
82
77
  model.coefficients[4 * N + 0] = y[N];
83
78
  model.coefficients[4 * N + 1] = work[N];
84
79
  model.coefficients[4 * N + 2] = model.coefficients[4 * 0 + 2];
85
80
  model.coefficients[4 * N + 3] = model.coefficients[4 * 0 + 3];
86
- }; // --------------------------------------------------------------------------
81
+ };
87
82
 
83
+ // --------------------------------------------------------------------------
88
84
 
89
85
  publicAPI.computeOpenCoefficients = function (size, work, x, y) {
90
- var options = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {};
91
-
86
+ let options = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {};
92
87
  if (!model.coefficients || model.coefficients.length !== 4 * size) {
93
88
  model.coefficients = new Float32Array(4 * size);
94
89
  }
95
-
96
- var N = size - 1; // develop constraint at leftmost point.
97
-
90
+ const N = size - 1;
91
+ // develop constraint at leftmost point.
98
92
  switch (options.leftConstraint) {
99
93
  case BoundaryCondition.DERIVATIVE:
100
94
  // desired slope at leftmost point is leftValue.
@@ -102,19 +96,16 @@ function vtkCardinalSpline1D(publicAPI, model) {
102
96
  model.coefficients[4 * 0 + 2] = 0.0;
103
97
  work[0] = options.leftValue;
104
98
  break;
105
-
106
99
  case BoundaryCondition.SECOND_DERIVATIVE:
107
100
  // desired second derivative at leftmost point is leftValue.
108
101
  model.coefficients[4 * 0 + 1] = 2.0;
109
102
  model.coefficients[4 * 0 + 2] = 1.0;
110
103
  work[0] = 3.0 * ((y[1] - y[0]) / (x[1] - x[0])) - 0.5 * (x[1] - x[0]) * options.leftValue;
111
104
  break;
112
-
113
105
  case BoundaryCondition.SECOND_DERIVATIVE_INTERIOR_POINT:
114
106
  // desired second derivative at leftmost point is
115
107
  // leftValue times second derivative at first interior point.
116
108
  model.coefficients[4 * 0 + 1] = 2.0;
117
-
118
109
  if (Math.abs(options.leftValue + 2) > VTK_EPSILON) {
119
110
  model.coefficients[4 * 0 + 2] = 4.0 * ((0.5 + options.leftValue) / (2.0 + options.leftValue));
120
111
  work[0] = 6.0 * ((1.0 + options.leftValue) / (2.0 + options.leftValue)) * ((y[1] - y[0]) / (x[1] - x[0]));
@@ -122,9 +113,7 @@ function vtkCardinalSpline1D(publicAPI, model) {
122
113
  model.coefficients[4 * 0 + 2] = 0;
123
114
  work[0] = 0;
124
115
  }
125
-
126
116
  break;
127
-
128
117
  case BoundaryCondition.DEFAULT:
129
118
  default:
130
119
  // desired slope at leftmost point is derivative from two points
@@ -133,17 +122,16 @@ function vtkCardinalSpline1D(publicAPI, model) {
133
122
  work[0] = y[2] - y[0];
134
123
  break;
135
124
  }
136
-
137
- for (var k = 1; k < N; k++) {
138
- var xlk = x[k] - x[k - 1];
139
- var xlkp = x[k + 1] - x[k];
125
+ for (let k = 1; k < N; k++) {
126
+ const xlk = x[k] - x[k - 1];
127
+ const xlkp = x[k + 1] - x[k];
140
128
  model.coefficients[4 * k + 0] = xlkp;
141
129
  model.coefficients[4 * k + 1] = 2 * (xlkp + xlk);
142
130
  model.coefficients[4 * k + 2] = xlk;
143
131
  work[k] = 3.0 * (xlkp * (y[k] - y[k - 1]) / xlk + xlk * (y[k + 1] - y[k]) / xlkp);
144
- } // develop constraint at rightmost point.
145
-
132
+ }
146
133
 
134
+ // develop constraint at rightmost point.
147
135
  switch (options.rightConstraint) {
148
136
  case BoundaryCondition.DERIVATIVE:
149
137
  // desired slope at rightmost point is rightValue
@@ -151,19 +139,16 @@ function vtkCardinalSpline1D(publicAPI, model) {
151
139
  model.coefficients[4 * N + 1] = 1.0;
152
140
  work[N] = options.rightValue;
153
141
  break;
154
-
155
142
  case BoundaryCondition.SECOND_DERIVATIVE:
156
143
  // desired second derivative at rightmost point is rightValue.
157
144
  model.coefficients[4 * N + 0] = 1.0;
158
145
  model.coefficients[4 * N + 1] = 2.0;
159
146
  work[N] = 3.0 * ((y[N] - y[N - 1]) / (x[N] - x[N - 1])) + 0.5 * (x[N] - x[N - 1]) * options.rightValue;
160
147
  break;
161
-
162
148
  case BoundaryCondition.SECOND_DERIVATIVE_INTERIOR_POINT:
163
149
  // desired second derivative at rightmost point is
164
150
  // rightValue times second derivative at last interior point.
165
151
  model.coefficients[4 * N + 1] = 2.0;
166
-
167
152
  if (Math.abs(options.rightValue + 2) > VTK_EPSILON) {
168
153
  model.coefficients[4 * N + 0] = 4.0 * ((0.5 + options.rightValue) / (2.0 + options.rightValue));
169
154
  work[N] = 6.0 * ((1.0 + options.rightValue) / (2.0 + options.rightValue)) * ((y[N] - y[size - 2]) / (x[N] - x[size - 2]));
@@ -171,9 +156,7 @@ function vtkCardinalSpline1D(publicAPI, model) {
171
156
  model.coefficients[4 * N + 0] = 0;
172
157
  work[N] = 0;
173
158
  }
174
-
175
159
  break;
176
-
177
160
  case BoundaryCondition.DEFAULT:
178
161
  default:
179
162
  // desired slope at rightmost point is derivative from two points
@@ -181,70 +164,77 @@ function vtkCardinalSpline1D(publicAPI, model) {
181
164
  model.coefficients[4 * N + 1] = 1.0;
182
165
  work[N] = y[N] - y[N - 2];
183
166
  break;
184
- } // solve resulting set of equations.
185
-
167
+ }
186
168
 
169
+ // solve resulting set of equations.
187
170
  model.coefficients[4 * 0 + 2] /= model.coefficients[4 * 0 + 1];
188
171
  work[0] /= model.coefficients[4 * N + 1];
189
172
  model.coefficients[4 * N + 3] = 1;
190
-
191
- for (var _k5 = 1; _k5 <= N; _k5++) {
192
- model.coefficients[4 * _k5 + 1] -= model.coefficients[4 * _k5 + 0] * model.coefficients[4 * (_k5 - 1) + 2];
193
- model.coefficients[4 * _k5 + 2] /= model.coefficients[4 * _k5 + 1];
194
- work[_k5] = (work[_k5] - model.coefficients[4 * _k5 + 0] * work[_k5 - 1]) / model.coefficients[4 * _k5 + 1];
173
+ for (let k = 1; k <= N; k++) {
174
+ model.coefficients[4 * k + 1] -= model.coefficients[4 * k + 0] * model.coefficients[4 * (k - 1) + 2];
175
+ model.coefficients[4 * k + 2] /= model.coefficients[4 * k + 1];
176
+ work[k] = (work[k] - model.coefficients[4 * k + 0] * work[k - 1]) / model.coefficients[4 * k + 1];
177
+ }
178
+ for (let k = N - 1; k >= 0; k--) {
179
+ work[k] -= model.coefficients[4 * k + 2] * work[k + 1];
195
180
  }
196
181
 
197
- for (var _k6 = N - 1; _k6 >= 0; _k6--) {
198
- work[_k6] -= model.coefficients[4 * _k6 + 2] * work[_k6 + 1];
199
- } // the column vector work now contains the first
182
+ // the column vector work now contains the first
200
183
  // derivative of the spline function at each joint.
201
184
  // compute the coefficients of the cubic between
202
185
  // each pair of joints.
186
+ for (let k = 0; k < N; k++) {
187
+ const b = x[k + 1] - x[k];
188
+ model.coefficients[4 * k + 0] = y[k];
189
+ model.coefficients[4 * k + 1] = work[k];
190
+ model.coefficients[4 * k + 2] = 3 * (y[k + 1] - y[k]) / (b * b) - (work[k + 1] + 2 * work[k]) / b;
191
+ model.coefficients[4 * k + 3] = 2 * (y[k] - y[k + 1]) / (b * b * b) + (work[k + 1] + work[k]) / (b * b);
192
+ }
203
193
 
204
-
205
- for (var _k7 = 0; _k7 < N; _k7++) {
206
- var b = x[_k7 + 1] - x[_k7];
207
- model.coefficients[4 * _k7 + 0] = y[_k7];
208
- model.coefficients[4 * _k7 + 1] = work[_k7];
209
- model.coefficients[4 * _k7 + 2] = 3 * (y[_k7 + 1] - y[_k7]) / (b * b) - (work[_k7 + 1] + 2 * work[_k7]) / b;
210
- model.coefficients[4 * _k7 + 3] = 2 * (y[_k7] - y[_k7 + 1]) / (b * b * b) + (work[_k7 + 1] + work[_k7]) / (b * b);
211
- } // the coefficients of a fictitious nth cubic
194
+ // the coefficients of a fictitious nth cubic
212
195
  // are the same as the coefficients in the first interval
213
-
214
-
215
196
  model.coefficients[4 * N + 0] = y[N];
216
197
  model.coefficients[4 * N + 1] = work[N];
217
198
  model.coefficients[4 * N + 2] = model.coefficients[4 * 0 + 2];
218
199
  model.coefficients[4 * N + 3] = model.coefficients[4 * 0 + 3];
219
- }; // --------------------------------------------------------------------------
200
+ };
220
201
 
202
+ // --------------------------------------------------------------------------
221
203
 
222
- publicAPI.getValue = function (intervalIndex, t) {
223
- var t2 = t * t;
224
- var t3 = t * t * t;
204
+ publicAPI.getValue = (intervalIndex, t) => {
205
+ const t2 = t * t;
206
+ const t3 = t * t * t;
225
207
  return model.coefficients[4 * intervalIndex + 3] * t3 + model.coefficients[4 * intervalIndex + 2] * t2 + model.coefficients[4 * intervalIndex + 1] * t + model.coefficients[4 * intervalIndex + 0];
226
208
  };
227
- } // ----------------------------------------------------------------------------
209
+ }
210
+
211
+ // ----------------------------------------------------------------------------
228
212
  // Object factory
229
213
  // ----------------------------------------------------------------------------
230
214
 
215
+ const DEFAULT_VALUES = {};
231
216
 
232
- var DEFAULT_VALUES = {}; // ----------------------------------------------------------------------------
217
+ // ----------------------------------------------------------------------------
233
218
 
234
219
  function extend(publicAPI, model) {
235
- var initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
220
+ let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
236
221
  Object.assign(model, DEFAULT_VALUES, initialValues);
237
- vtkSpline1D.extend(publicAPI, model, initialValues); // Build VTK API
222
+ vtkSpline1D.extend(publicAPI, model, initialValues);
238
223
 
224
+ // Build VTK API
239
225
  macro.obj(publicAPI, model);
240
226
  vtkCardinalSpline1D(publicAPI, model);
241
- } // ----------------------------------------------------------------------------
227
+ }
228
+
229
+ // ----------------------------------------------------------------------------
230
+
231
+ const newInstance = macro.newInstance(extend, 'vtkCardinalSpline1D');
242
232
 
243
- var newInstance = macro.newInstance(extend, 'vtkCardinalSpline1D'); // ----------------------------------------------------------------------------
233
+ // ----------------------------------------------------------------------------
244
234
 
245
235
  var vtkCardinalSpline1D$1 = {
246
- newInstance: newInstance,
247
- extend: extend
236
+ newInstance,
237
+ extend
248
238
  };
249
239
 
250
240
  export { vtkCardinalSpline1D$1 as default, extend, newInstance };