@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.
- package/Common/Core/Base64.js +53 -82
- package/Common/Core/CellArray.js +52 -60
- package/Common/Core/ClassHierarchy.js +8 -36
- package/Common/Core/DataArray/Constants.js +6 -6
- package/Common/Core/DataArray.js +193 -277
- package/Common/Core/Endian.js +14 -17
- package/Common/Core/HalfFloat.js +17 -34
- package/Common/Core/ImageHelper.js +17 -25
- package/Common/Core/LookupTable.js +131 -144
- package/Common/Core/Math/Constants.js +8 -8
- package/Common/Core/Math/index.js +754 -942
- package/Common/Core/Math.js +2 -4
- package/Common/Core/MatrixBuilder.js +99 -151
- package/Common/Core/Points.js +43 -43
- package/Common/Core/PriorityQueue.js +30 -28
- package/Common/Core/ProgressHandler.js +31 -32
- package/Common/Core/ScalarsToColors/Constants.js +4 -4
- package/Common/Core/ScalarsToColors.js +196 -253
- package/Common/Core/StringArray.js +48 -73
- package/Common/Core/URLExtract.js +10 -29
- package/Common/Core/VariantArray.js +48 -73
- package/Common/Core.js +11 -11
- package/Common/DataModel/AbstractPointLocator.js +19 -17
- package/Common/DataModel/BoundingBox.js +322 -490
- package/Common/DataModel/Box.js +46 -63
- package/Common/DataModel/CardinalSpline1D.js +92 -102
- package/Common/DataModel/Cell.js +41 -61
- package/Common/DataModel/CellLinks.js +91 -127
- package/Common/DataModel/CellTypes/Constants.js +7 -6
- package/Common/DataModel/CellTypes.js +55 -74
- package/Common/DataModel/Collection.js +45 -61
- package/Common/DataModel/Cone.js +28 -20
- package/Common/DataModel/Cylinder.js +41 -35
- package/Common/DataModel/DataSet/Constants.js +11 -5
- package/Common/DataModel/DataSet.js +37 -25
- package/Common/DataModel/DataSetAttributes/Constants.js +18 -18
- package/Common/DataModel/DataSetAttributes/FieldData.js +103 -194
- package/Common/DataModel/DataSetAttributes.js +96 -138
- package/Common/DataModel/EdgeLocator.js +45 -70
- package/Common/DataModel/ITKHelper.js +67 -137
- package/Common/DataModel/ImageData.js +115 -172
- package/Common/DataModel/ImplicitBoolean/Constants.js +2 -2
- package/Common/DataModel/ImplicitBoolean.js +66 -96
- package/Common/DataModel/IncrementalOctreeNode.js +201 -231
- package/Common/DataModel/IncrementalOctreePointLocator.js +160 -198
- package/Common/DataModel/KochanekSpline1D.js +78 -81
- package/Common/DataModel/Line/Constants.js +2 -2
- package/Common/DataModel/Line.js +82 -105
- package/Common/DataModel/Locator.js +17 -10
- package/Common/DataModel/Molecule.js +26 -17
- package/Common/DataModel/PiecewiseFunction.js +218 -239
- package/Common/DataModel/Plane.js +90 -113
- package/Common/DataModel/PointSet.js +30 -26
- package/Common/DataModel/PolyData/Constants.js +2 -2
- package/Common/DataModel/PolyData.js +95 -120
- package/Common/DataModel/PolyLine.js +44 -61
- package/Common/DataModel/Polygon/Constants.js +4 -4
- package/Common/DataModel/Polygon.js +128 -169
- package/Common/DataModel/Quad/Constants.js +2 -2
- package/Common/DataModel/Quad.js +61 -100
- package/Common/DataModel/SelectionNode/Constants.js +5 -4
- package/Common/DataModel/SelectionNode.js +25 -21
- package/Common/DataModel/Sphere.js +40 -35
- package/Common/DataModel/Spline1D/Constants.js +3 -2
- package/Common/DataModel/Spline1D.js +34 -18
- package/Common/DataModel/Spline3D/Constants.js +2 -2
- package/Common/DataModel/Spline3D.js +46 -41
- package/Common/DataModel/StructuredData/Constants.js +2 -2
- package/Common/DataModel/StructuredData.js +9 -20
- package/Common/DataModel/Triangle.js +207 -250
- package/Common/DataModel.js +19 -19
- package/Common/System/MobileVR.js +56 -61
- package/Common/System/TimerLog.js +1 -1
- package/Common/System.js +2 -2
- package/Common/Transform/LandmarkTransform/Constants.js +2 -2
- package/Common/Transform/LandmarkTransform.js +133 -117
- package/Common/Transform/Transform.js +42 -57
- package/Common/Transform.js +2 -2
- package/Common/index.js +4 -4
- package/Filters/Core/Cutter.js +134 -146
- package/Filters/Core/PolyDataNormals.js +44 -50
- package/Filters/Core.js +2 -2
- package/Filters/Cornerstone/ImageDataToCornerstoneImage.js +45 -33
- package/Filters/Cornerstone.js +1 -1
- package/Filters/General/AppendPolyData.js +84 -100
- package/Filters/General/Calculator.js +95 -163
- package/Filters/General/ClipClosedSurface/Constants.js +2 -2
- package/Filters/General/ClipClosedSurface.js +341 -416
- package/Filters/General/ClosedPolyLineToSurfaceFilter.js +141 -156
- package/Filters/General/ContourTriangulator/Constants.js +2 -2
- package/Filters/General/ContourTriangulator/helper.js +684 -812
- package/Filters/General/ContourTriangulator.js +92 -89
- package/Filters/General/ImageCropFilter.js +77 -78
- package/Filters/General/ImageDataOutlineFilter.js +42 -36
- package/Filters/General/ImageMarchingCubes/caseTable.js +9 -521
- package/Filters/General/ImageMarchingCubes.js +99 -112
- package/Filters/General/ImageMarchingSquares/caseTable.js +9 -41
- package/Filters/General/ImageMarchingSquares.js +93 -118
- package/Filters/General/ImageOutlineFilter.js +53 -54
- package/Filters/General/ImageSliceFilter.js +39 -30
- package/Filters/General/ImageStreamline.js +107 -124
- package/Filters/General/LineFilter.js +26 -15
- package/Filters/General/MoleculeToRepresentation.js +136 -149
- package/Filters/General/OBBTree/OBBNode.js +36 -34
- package/Filters/General/OBBTree/helper.js +19 -24
- package/Filters/General/OBBTree.js +396 -488
- package/Filters/General/OutlineFilter.js +52 -34
- package/Filters/General/PaintFilter/PaintFilter.worker.js +93 -130
- package/Filters/General/PaintFilter.js +150 -162
- package/Filters/General/ScalarToRGBA.js +38 -33
- package/Filters/General/TriangleFilter.js +65 -62
- package/Filters/General/TubeFilter/Constants.js +4 -4
- package/Filters/General/TubeFilter.js +376 -496
- package/Filters/General/WarpScalar.js +58 -60
- package/Filters/General/WindowedSincPolyDataFilter.js +258 -330
- package/Filters/General.js +21 -21
- package/Filters/Sources/Arrow2DSource/Constants.js +2 -2
- package/Filters/Sources/Arrow2DSource.js +56 -56
- package/Filters/Sources/ArrowSource.js +39 -29
- package/Filters/Sources/CircleSource.js +43 -43
- package/Filters/Sources/ConcentricCylinderSource.js +151 -174
- package/Filters/Sources/ConeSource.js +51 -42
- package/Filters/Sources/CubeSource.js +75 -96
- package/Filters/Sources/Cursor3D.js +94 -109
- package/Filters/Sources/CylinderSource.js +90 -90
- package/Filters/Sources/ImageGridSource.js +43 -43
- package/Filters/Sources/LineSource.js +49 -39
- package/Filters/Sources/PlaneSource.js +97 -104
- package/Filters/Sources/PointSource.js +46 -37
- package/Filters/Sources/RTAnalyticSource.js +50 -48
- package/Filters/Sources/SLICSource.js +63 -73
- package/Filters/Sources/SphereSource.js +88 -78
- package/Filters/Sources/ViewFinderSource.js +26 -23
- package/Filters/Sources.js +14 -14
- package/Filters/Texture/TextureMapToPlane.js +95 -97
- package/Filters/Texture/TextureMapToSphere.js +46 -54
- package/Filters/Texture.js +2 -2
- package/Filters/index.js +5 -5
- package/IO/Core/BinaryHelper.js +12 -18
- package/IO/Core/DataAccessHelper/HtmlDataAccessHelper.js +43 -59
- package/IO/Core/DataAccessHelper/HttpDataAccessHelper.js +76 -113
- package/IO/Core/DataAccessHelper/JSZipDataAccessHelper.js +62 -112
- package/IO/Core/DataAccessHelper/LiteHttpDataAccessHelper.js +76 -113
- package/IO/Core/DataAccessHelper.js +6 -6
- package/IO/Core/HttpDataSetReader.js +136 -139
- package/IO/Core/HttpDataSetSeriesReader.js +64 -75
- package/IO/Core/HttpSceneLoader.js +130 -179
- package/IO/Core/ImageStream/DefaultProtocol.js +29 -43
- package/IO/Core/ImageStream/ViewStream.js +100 -103
- package/IO/Core/ImageStream.js +62 -54
- package/IO/Core/ResourceLoader.js +10 -9
- package/IO/Core/Serializer/ArraySerializer.js +40 -40
- package/IO/Core/Serializer/FieldDataSerializer.js +18 -28
- package/IO/Core/Serializer/ImageDataSerializer.js +22 -23
- package/IO/Core/Serializer/PolyDataSerializer.js +17 -21
- package/IO/Core/Serializer.js +6 -13
- package/IO/Core/WSLinkClient.js +90 -76
- package/IO/Core/ZipMultiDataSetReader.js +46 -44
- package/IO/Core/ZipMultiDataSetWriter.js +43 -34
- package/IO/Core.js +7 -7
- package/IO/Geometry/DracoReader.js +118 -121
- package/IO/Geometry/PLYReader.js +163 -223
- package/IO/Geometry/PLYWriter/Constants.js +5 -5
- package/IO/Geometry/PLYWriter.js +139 -154
- package/IO/Geometry/STLReader.js +123 -146
- package/IO/Geometry/STLWriter/Constants.js +2 -2
- package/IO/Geometry/STLWriter.js +83 -82
- package/IO/Geometry.js +5 -5
- package/IO/Legacy/LegacyAsciiParser.js +78 -139
- package/IO/Legacy/PolyDataReader.js +48 -36
- package/IO/Legacy.js +2 -2
- package/IO/Misc/ElevationReader.js +67 -60
- package/IO/Misc/HttpDataSetLODsLoader.js +41 -38
- package/IO/Misc/ITKImageReader.js +58 -45
- package/IO/Misc/ITKPolyDataReader.js +50 -38
- package/IO/Misc/JSONNucleoReader.js +49 -42
- package/IO/Misc/JSONReader.js +38 -33
- package/IO/Misc/MTLReader.js +74 -119
- package/IO/Misc/OBJReader.js +153 -206
- package/IO/Misc/PDBReader.js +70 -68
- package/IO/Misc/SkyboxReader.js +77 -82
- package/IO/Misc.js +9 -9
- package/IO/XML/XMLImageDataReader.js +36 -38
- package/IO/XML/XMLImageDataWriter.js +28 -21
- package/IO/XML/XMLPolyDataReader.js +49 -46
- package/IO/XML/XMLPolyDataWriter.js +43 -42
- package/IO/XML/XMLReader.js +262 -304
- package/IO/XML/XMLWriter/Constants.js +3 -3
- package/IO/XML/XMLWriter.js +70 -84
- package/IO/XML.js +6 -6
- package/IO/index.js +5 -5
- package/Imaging/Core/AbstractImageInterpolator/Constants.js +4 -4
- package/Imaging/Core/AbstractImageInterpolator/InterpolationInfo.js +30 -27
- package/Imaging/Core/AbstractImageInterpolator.js +74 -87
- package/Imaging/Core/ImageInterpolator.js +201 -252
- package/Imaging/Core/ImagePointDataIterator.js +96 -122
- package/Imaging/Core/ImageReslice/Constants.js +2 -2
- package/Imaging/Core/ImageReslice.js +327 -464
- package/Imaging/Core.js +4 -4
- package/Imaging/Hybrid/SampleFunction.js +58 -51
- package/Imaging/Hybrid.js +1 -1
- package/Imaging/index.js +2 -2
- package/Interaction/Animations/TimeStepBasedAnimationHandler.js +39 -54
- package/Interaction/Manipulators/CompositeCameraManipulator.js +22 -13
- package/Interaction/Manipulators/CompositeGestureManipulator.js +31 -43
- package/Interaction/Manipulators/CompositeKeyboardManipulator.js +15 -11
- package/Interaction/Manipulators/CompositeMouseManipulator.js +27 -33
- package/Interaction/Manipulators/CompositeVRManipulator.js +22 -15
- package/Interaction/Manipulators/GestureCameraManipulator.js +54 -36
- package/Interaction/Manipulators/KeyboardCameraManipulator.js +95 -97
- package/Interaction/Manipulators/MouseBoxSelectorManipulator.js +70 -89
- package/Interaction/Manipulators/MouseCameraAxisRotateManipulator.js +67 -54
- package/Interaction/Manipulators/MouseCameraSliceManipulator.js +40 -38
- package/Interaction/Manipulators/MouseCameraTrackballFirstPersonManipulator.js +83 -68
- package/Interaction/Manipulators/MouseCameraTrackballMultiRotateManipulator.js +32 -28
- package/Interaction/Manipulators/MouseCameraTrackballPanManipulator.js +47 -40
- package/Interaction/Manipulators/MouseCameraTrackballRollManipulator.js +55 -43
- package/Interaction/Manipulators/MouseCameraTrackballRotateManipulator.js +56 -46
- package/Interaction/Manipulators/MouseCameraTrackballZoomManipulator.js +41 -46
- package/Interaction/Manipulators/MouseCameraTrackballZoomToMouseManipulator.js +29 -27
- package/Interaction/Manipulators/MouseCameraUnicamManipulator.js +123 -146
- package/Interaction/Manipulators/MouseCameraUnicamRotateManipulator.js +144 -166
- package/Interaction/Manipulators/MouseRangeManipulator.js +127 -132
- package/Interaction/Manipulators/VRButtonPanManipulator.js +33 -23
- package/Interaction/Manipulators.js +21 -21
- package/Interaction/Misc/DeviceOrientationToCamera.js +25 -47
- package/Interaction/Misc.js +1 -1
- package/Interaction/Style/InteractorStyleImage.js +101 -121
- package/Interaction/Style/InteractorStyleMPRSlice.js +111 -128
- package/Interaction/Style/InteractorStyleManipulator/Presets.js +9 -17
- package/Interaction/Style/InteractorStyleManipulator.js +254 -329
- package/Interaction/Style/InteractorStyleRemoteMouse.js +195 -180
- package/Interaction/Style/InteractorStyleTrackballCamera.js +154 -157
- package/Interaction/Style/InteractorStyleUnicam.js +30 -38
- package/Interaction/Style.js +5 -5
- package/Interaction/UI/CornerAnnotation/CornerAnnotation.module.css.js +1 -1
- package/Interaction/UI/CornerAnnotation.js +65 -48
- package/Interaction/UI/FPSMonitor.js +104 -105
- package/Interaction/UI/Icons.js +1 -1
- package/Interaction/UI/Slider/Constants.js +2 -2
- package/Interaction/UI/Slider.js +78 -95
- package/Interaction/UI/VolumeController.js +104 -97
- package/Interaction/UI.js +5 -5
- package/Interaction/Widgets/OrientationMarkerWidget/Constants.js +2 -2
- package/Interaction/Widgets/OrientationMarkerWidget.js +90 -135
- package/Interaction/Widgets/PiecewiseGaussianWidget/ComputeHistogram.worker.js +0 -3
- package/Interaction/Widgets/PiecewiseGaussianWidget.js +381 -498
- package/Interaction/Widgets.js +2 -2
- package/Interaction/index.js +5 -5
- package/Proxy/Animation/AbstractAnimationProxy.js +22 -15
- package/Proxy/Animation/AnimationProxyManager.js +43 -51
- package/Proxy/Animation/TimeStepBasedAnimationHandlerProxy.js +26 -19
- package/Proxy/Core/AbstractRepresentationProxy.js +97 -151
- package/Proxy/Core/LookupTableProxy/Constants.js +4 -4
- package/Proxy/Core/LookupTableProxy.js +49 -52
- package/Proxy/Core/PiecewiseFunctionProxy/Constants.js +4 -4
- package/Proxy/Core/PiecewiseFunctionProxy.js +63 -72
- package/Proxy/Core/ProxyManager/core.js +83 -106
- package/Proxy/Core/ProxyManager/properties.js +53 -76
- package/Proxy/Core/ProxyManager/state.js +100 -110
- package/Proxy/Core/ProxyManager/view.js +45 -55
- package/Proxy/Core/ProxyManager.js +16 -8
- package/Proxy/Core/SourceProxy.js +41 -38
- package/Proxy/Core/View2DProxy.js +143 -199
- package/Proxy/Core/ViewProxy.js +223 -269
- package/Proxy/Core.js +7 -7
- package/Proxy/Representations/GeometryRepresentationProxy.js +34 -20
- package/Proxy/Representations/GlyphRepresentationProxy.js +42 -41
- package/Proxy/Representations/MoleculeRepresentationProxy.js +32 -22
- package/Proxy/Representations/ResliceRepresentationProxy.js +48 -32
- package/Proxy/Representations/SkyboxRepresentationProxy.js +30 -29
- package/Proxy/Representations/SliceRepresentationProxy.js +93 -112
- package/Proxy/Representations/SlicedGeometryRepresentationProxy.js +46 -42
- package/Proxy/Representations/VolumeRepresentationProxy.js +108 -133
- package/Proxy/Representations.js +7 -7
- package/Proxy/index.js +2 -2
- package/README.md +1 -1
- package/Rendering/Core/AbstractImageMapper/helper.js +44 -49
- package/Rendering/Core/AbstractImageMapper.js +18 -19
- package/Rendering/Core/AbstractMapper.js +39 -55
- package/Rendering/Core/AbstractMapper3D.js +26 -31
- package/Rendering/Core/AbstractPicker.js +25 -21
- package/Rendering/Core/Actor.js +71 -93
- package/Rendering/Core/Actor2D.js +64 -78
- package/Rendering/Core/AnnotatedCubeActor/Presets.js +5 -11
- package/Rendering/Core/AnnotatedCubeActor.js +94 -79
- package/Rendering/Core/AxesActor.js +65 -87
- package/Rendering/Core/Camera.js +246 -271
- package/Rendering/Core/CellPicker.js +125 -148
- package/Rendering/Core/ColorTransferFunction/ColorMaps.js +20 -21
- package/Rendering/Core/ColorTransferFunction/ColorMapsLite.js +20 -21
- package/Rendering/Core/ColorTransferFunction/Constants.js +4 -4
- package/Rendering/Core/ColorTransferFunction.js +460 -546
- package/Rendering/Core/Coordinate/Constants.js +2 -2
- package/Rendering/Core/Coordinate.js +119 -198
- package/Rendering/Core/CubeAxesActor.js +294 -320
- package/Rendering/Core/Follower.js +46 -45
- package/Rendering/Core/Glyph3DMapper/Constants.js +4 -4
- package/Rendering/Core/Glyph3DMapper.js +96 -148
- package/Rendering/Core/HardwareSelector.js +36 -69
- package/Rendering/Core/ImageArrayMapper.js +87 -126
- package/Rendering/Core/ImageCPRMapper.js +134 -209
- package/Rendering/Core/ImageMapper/Constants.js +2 -2
- package/Rendering/Core/ImageMapper.js +85 -144
- package/Rendering/Core/ImageProperty/Constants.js +2 -2
- package/Rendering/Core/ImageProperty.js +66 -81
- package/Rendering/Core/ImageResliceMapper/Constants.js +2 -2
- package/Rendering/Core/ImageResliceMapper.js +36 -29
- package/Rendering/Core/ImageSlice.js +85 -127
- package/Rendering/Core/InteractorObserver.js +82 -73
- package/Rendering/Core/InteractorStyle/Constants.js +2 -2
- package/Rendering/Core/InteractorStyle.js +56 -58
- package/Rendering/Core/Light.js +43 -49
- package/Rendering/Core/Mapper/CoincidentTopologyHelper.js +37 -48
- package/Rendering/Core/Mapper/Constants.js +6 -6
- package/Rendering/Core/Mapper/Static.js +15 -12
- package/Rendering/Core/Mapper.js +194 -259
- package/Rendering/Core/Mapper2D.js +61 -100
- package/Rendering/Core/Picker.js +124 -143
- package/Rendering/Core/PixelSpaceCallbackMapper.js +40 -37
- package/Rendering/Core/PointPicker.js +68 -79
- package/Rendering/Core/Prop/Constants.js +2 -2
- package/Rendering/Core/Prop.js +58 -106
- package/Rendering/Core/Prop3D.js +54 -83
- package/Rendering/Core/Property/Constants.js +6 -6
- package/Rendering/Core/Property.js +45 -74
- package/Rendering/Core/Property2D/Constants.js +2 -2
- package/Rendering/Core/Property2D.js +33 -42
- package/Rendering/Core/RenderWindow.js +70 -82
- package/Rendering/Core/RenderWindowInteractor/Constants.js +7 -7
- package/Rendering/Core/RenderWindowInteractor.js +324 -439
- package/Rendering/Core/Renderer.js +192 -256
- package/Rendering/Core/ScalarBarActor.js +267 -272
- package/Rendering/Core/Skybox.js +26 -24
- package/Rendering/Core/SphereMapper.js +22 -12
- package/Rendering/Core/StickMapper.js +22 -12
- package/Rendering/Core/SurfaceLICInterface/Constants.js +6 -6
- package/Rendering/Core/SurfaceLICInterface.js +13 -9
- package/Rendering/Core/SurfaceLICMapper.js +23 -15
- package/Rendering/Core/Texture.js +99 -141
- package/Rendering/Core/Viewport.js +60 -88
- package/Rendering/Core/Volume.js +55 -77
- package/Rendering/Core/VolumeMapper/Constants.js +4 -4
- package/Rendering/Core/VolumeMapper.js +59 -91
- package/Rendering/Core/VolumeProperty/Constants.js +4 -4
- package/Rendering/Core/VolumeProperty.js +78 -115
- package/Rendering/Core.js +47 -49
- package/Rendering/Misc/CanvasView.js +62 -61
- package/Rendering/Misc/FullScreenRenderWindow.js +60 -62
- package/Rendering/Misc/GenericRenderWindow.js +48 -37
- package/Rendering/Misc/RemoteView.js +86 -80
- package/Rendering/Misc/RenderWindowWithControlBar.js +54 -48
- package/Rendering/Misc/SynchronizableRenderWindow/BehaviorManager/CameraSynchronizer.js +43 -51
- package/Rendering/Misc/SynchronizableRenderWindow/BehaviorManager.js +52 -82
- package/Rendering/Misc/SynchronizableRenderWindow/ObjectManager.js +258 -308
- package/Rendering/Misc/SynchronizableRenderWindow.js +133 -163
- package/Rendering/Misc/TextureLODsDownloader.js +72 -74
- package/Rendering/Misc.js +7 -7
- package/Rendering/OpenGL/Actor.js +57 -68
- package/Rendering/OpenGL/Actor2D.js +56 -56
- package/Rendering/OpenGL/BufferObject/Constants.js +2 -2
- package/Rendering/OpenGL/BufferObject.js +50 -65
- package/Rendering/OpenGL/Camera.js +35 -29
- package/Rendering/OpenGL/CellArrayBufferObject.js +119 -149
- package/Rendering/OpenGL/Convolution2DPass.js +87 -81
- package/Rendering/OpenGL/CubeAxesActor.js +28 -21
- package/Rendering/OpenGL/ForwardPass.js +53 -64
- package/Rendering/OpenGL/Framebuffer.js +61 -101
- package/Rendering/OpenGL/Glyph3DMapper.js +165 -196
- package/Rendering/OpenGL/HardwareSelector/Constants.js +2 -2
- package/Rendering/OpenGL/HardwareSelector.js +272 -397
- package/Rendering/OpenGL/Helper.js +58 -73
- package/Rendering/OpenGL/ImageCPRMapper.js +339 -421
- package/Rendering/OpenGL/ImageMapper.js +268 -361
- package/Rendering/OpenGL/ImageResliceMapper.js +306 -438
- package/Rendering/OpenGL/ImageSlice.js +48 -54
- package/Rendering/OpenGL/OrderIndependentTranslucentPass.js +102 -84
- package/Rendering/OpenGL/PixelSpaceCallbackMapper.js +43 -42
- package/Rendering/OpenGL/PolyDataMapper.js +358 -492
- package/Rendering/OpenGL/PolyDataMapper2D.js +153 -205
- package/Rendering/OpenGL/RadialDistortionPass.js +86 -89
- package/Rendering/OpenGL/RenderWindow/Constants.js +2 -2
- package/Rendering/OpenGL/RenderWindow/ContextProxy.js +20 -29
- package/Rendering/OpenGL/RenderWindow.js +356 -510
- package/Rendering/OpenGL/Renderer.js +77 -89
- package/Rendering/OpenGL/ReplacementShaderMapper.js +28 -46
- package/Rendering/OpenGL/ScalarBarActor.js +28 -21
- package/Rendering/OpenGL/Shader.js +37 -31
- package/Rendering/OpenGL/ShaderCache.js +67 -74
- package/Rendering/OpenGL/ShaderProgram.js +136 -248
- package/Rendering/OpenGL/Skybox.js +99 -60
- package/Rendering/OpenGL/SphereMapper.js +94 -108
- package/Rendering/OpenGL/StickMapper.js +110 -114
- package/Rendering/OpenGL/SurfaceLIC/LineIntegralConvolution2D/pingpong.js +91 -157
- package/Rendering/OpenGL/SurfaceLIC/LineIntegralConvolution2D.js +142 -151
- package/Rendering/OpenGL/SurfaceLIC/SurfaceLICInterface.js +142 -216
- package/Rendering/OpenGL/SurfaceLIC/SurfaceLICMapper.js +79 -100
- package/Rendering/OpenGL/SurfaceLIC.js +2 -2
- package/Rendering/OpenGL/Texture/Constants.js +4 -4
- package/Rendering/OpenGL/Texture.js +443 -608
- package/Rendering/OpenGL/TextureUnitManager.js +47 -43
- package/Rendering/OpenGL/VertexArrayObject.js +92 -131
- package/Rendering/OpenGL/ViewNodeFactory.js +25 -13
- package/Rendering/OpenGL/Volume.js +38 -34
- package/Rendering/OpenGL/VolumeMapper.js +437 -547
- package/Rendering/OpenGL.js +28 -28
- package/Rendering/SceneGraph/RenderPass.js +34 -31
- package/Rendering/SceneGraph/RenderWindowViewNode.js +68 -94
- package/Rendering/SceneGraph/ViewNode.js +82 -111
- package/Rendering/SceneGraph/ViewNodeFactory.js +31 -26
- package/Rendering/SceneGraph.js +4 -4
- package/Rendering/WebGPU/Actor.js +49 -49
- package/Rendering/WebGPU/Actor2D.js +45 -44
- package/Rendering/WebGPU/BindGroup.js +43 -50
- package/Rendering/WebGPU/Buffer.js +41 -50
- package/Rendering/WebGPU/BufferManager/Constants.js +4 -4
- package/Rendering/WebGPU/BufferManager.js +111 -141
- package/Rendering/WebGPU/Camera.js +65 -67
- package/Rendering/WebGPU/CellArrayMapper.js +621 -388
- package/Rendering/WebGPU/CubeAxesActor.js +28 -19
- package/Rendering/WebGPU/Device.js +78 -133
- package/Rendering/WebGPU/ForwardPass.js +75 -72
- package/Rendering/WebGPU/FullScreenQuad.js +25 -18
- package/Rendering/WebGPU/Glyph3DMapper.js +62 -74
- package/Rendering/WebGPU/HardwareSelectionPass.js +45 -38
- package/Rendering/WebGPU/HardwareSelector.js +200 -276
- package/Rendering/WebGPU/ImageMapper.js +180 -171
- package/Rendering/WebGPU/ImageSlice.js +45 -44
- package/Rendering/WebGPU/IndexBuffer.js +166 -200
- package/Rendering/WebGPU/OpaquePass.js +37 -36
- package/Rendering/WebGPU/OrderIndependentTranslucentPass.js +72 -45
- package/Rendering/WebGPU/Pipeline.js +37 -51
- package/Rendering/WebGPU/PixelSpaceCallbackMapper.js +27 -19
- package/Rendering/WebGPU/PolyDataMapper.js +50 -53
- package/Rendering/WebGPU/PolyDataMapper2D.js +39 -39
- package/Rendering/WebGPU/RenderEncoder.js +68 -88
- package/Rendering/WebGPU/RenderWindow.js +262 -376
- package/Rendering/WebGPU/Renderer.js +224 -208
- package/Rendering/WebGPU/Sampler.js +27 -21
- package/Rendering/WebGPU/ScalarBarActor.js +28 -19
- package/Rendering/WebGPU/ShaderCache.js +43 -41
- package/Rendering/WebGPU/ShaderDescription.js +52 -59
- package/Rendering/WebGPU/ShaderModule.js +26 -17
- package/Rendering/WebGPU/SimpleMapper.js +185 -121
- package/Rendering/WebGPU/SphereMapper.js +200 -130
- package/Rendering/WebGPU/StickMapper.js +289 -152
- package/Rendering/WebGPU/StorageBuffer.js +100 -115
- package/Rendering/WebGPU/Texture.js +79 -99
- package/Rendering/WebGPU/TextureManager.js +52 -54
- package/Rendering/WebGPU/TextureView.js +40 -43
- package/Rendering/WebGPU/Types.js +53 -70
- package/Rendering/WebGPU/UniformBuffer.js +158 -184
- package/Rendering/WebGPU/VertexInput.js +64 -90
- package/Rendering/WebGPU/ViewNodeFactory.js +25 -13
- package/Rendering/WebGPU/Volume.js +52 -51
- package/Rendering/WebGPU/VolumePass.js +218 -239
- package/Rendering/WebGPU/VolumePassFSQ.js +625 -306
- package/Rendering/WebGPU.js +1 -1
- package/Rendering/index.js +5 -5
- package/Widgets/Core/AbstractWidget/Constants.js +2 -2
- package/Widgets/Core/AbstractWidget.js +49 -58
- package/Widgets/Core/AbstractWidgetFactory.js +101 -122
- package/Widgets/Core/StateBuilder/boundsMixin.js +23 -28
- package/Widgets/Core/StateBuilder/color3Mixin.js +10 -7
- package/Widgets/Core/StateBuilder/colorMixin.js +10 -6
- package/Widgets/Core/StateBuilder/cornerMixin.js +16 -15
- package/Widgets/Core/StateBuilder/directionMixin.js +20 -18
- package/Widgets/Core/StateBuilder/manipulatorMixin.js +26 -18
- package/Widgets/Core/StateBuilder/nameMixin.js +10 -6
- package/Widgets/Core/StateBuilder/orientationMixin.js +19 -16
- package/Widgets/Core/StateBuilder/originMixin.js +25 -32
- package/Widgets/Core/StateBuilder/scale1Mixin.js +10 -6
- package/Widgets/Core/StateBuilder/scale3Mixin.js +10 -6
- package/Widgets/Core/StateBuilder/shapeMixin.js +12 -6
- package/Widgets/Core/StateBuilder/textMixin.js +10 -6
- package/Widgets/Core/StateBuilder/visibleMixin.js +10 -6
- package/Widgets/Core/StateBuilder.js +120 -149
- package/Widgets/Core/WidgetManager/Constants.js +7 -7
- package/Widgets/Core/WidgetManager.js +249 -421
- package/Widgets/Core/WidgetState.js +48 -57
- package/Widgets/Core.js +5 -5
- package/Widgets/Manipulators/AbstractManipulator.js +20 -14
- package/Widgets/Manipulators/CPRManipulator.js +55 -71
- package/Widgets/Manipulators/LineManipulator.js +31 -28
- package/Widgets/Manipulators/PickerManipulator.d.ts +48 -0
- package/Widgets/Manipulators/PickerManipulator.js +65 -0
- package/Widgets/Manipulators/PlaneManipulator.js +26 -23
- package/Widgets/Manipulators/TrackballManipulator.js +39 -35
- package/Widgets/Manipulators.js +4 -2
- package/Widgets/Representations/ArrowHandleRepresentation.js +148 -162
- package/Widgets/Representations/CircleContextRepresentation.js +44 -38
- package/Widgets/Representations/ContextRepresentation.js +17 -14
- package/Widgets/Representations/ConvexFaceContextRepresentation.js +50 -47
- package/Widgets/Representations/CroppingOutlineRepresentation.js +38 -27
- package/Widgets/Representations/CubeHandleRepresentation.js +21 -18
- package/Widgets/Representations/GlyphRepresentation.js +107 -152
- package/Widgets/Representations/HandleRepresentation.js +17 -14
- package/Widgets/Representations/ImplicitPlaneRepresentation.js +97 -91
- package/Widgets/Representations/LineHandleRepresentation.js +44 -41
- package/Widgets/Representations/OutlineContextRepresentation.js +42 -36
- package/Widgets/Representations/PolyLineRepresentation.js +60 -75
- package/Widgets/Representations/RectangleContextRepresentation.js +42 -37
- package/Widgets/Representations/SphereContextRepresentation.js +19 -27
- package/Widgets/Representations/SphereHandleRepresentation.js +31 -27
- package/Widgets/Representations/SplineContextRepresentation.js +46 -70
- package/Widgets/Representations/WidgetRepresentation/Constants.js +2 -2
- package/Widgets/Representations/WidgetRepresentation.js +99 -134
- package/Widgets/Representations.js +13 -13
- package/Widgets/Widgets3D/AngleWidget/behavior.js +41 -63
- package/Widgets/Widgets3D/AngleWidget.js +40 -38
- package/Widgets/Widgets3D/DistanceWidget/behavior.js +40 -61
- package/Widgets/Widgets3D/DistanceWidget.js +38 -36
- package/Widgets/Widgets3D/EllipseWidget/behavior.js +14 -19
- package/Widgets/Widgets3D/EllipseWidget/state.js +4 -2
- package/Widgets/Widgets3D/EllipseWidget.js +37 -26
- package/Widgets/Widgets3D/ImageCroppingWidget/behavior.js +26 -56
- package/Widgets/Widgets3D/ImageCroppingWidget/helpers.js +14 -17
- package/Widgets/Widgets3D/ImageCroppingWidget/state.js +20 -16
- package/Widgets/Widgets3D/ImageCroppingWidget.js +80 -98
- package/Widgets/Widgets3D/ImplicitPlaneWidget.js +55 -77
- package/Widgets/Widgets3D/InteractiveOrientationWidget/behavior.js +17 -18
- package/Widgets/Widgets3D/InteractiveOrientationWidget/state.js +15 -7
- package/Widgets/Widgets3D/InteractiveOrientationWidget.js +30 -29
- package/Widgets/Widgets3D/LabelWidget/behavior.js +37 -62
- package/Widgets/Widgets3D/LabelWidget.js +31 -25
- package/Widgets/Widgets3D/LineWidget/Constants.js +8 -8
- package/Widgets/Widgets3D/LineWidget/behavior.js +77 -114
- package/Widgets/Widgets3D/LineWidget/helpers.js +13 -20
- package/Widgets/Widgets3D/LineWidget/state.js +2 -1
- package/Widgets/Widgets3D/LineWidget.js +39 -35
- package/Widgets/Widgets3D/PaintWidget/behavior.js +24 -59
- package/Widgets/Widgets3D/PaintWidget.js +39 -37
- package/Widgets/Widgets3D/PolyLineWidget/behavior.js +44 -68
- package/Widgets/Widgets3D/PolyLineWidget.js +36 -31
- package/Widgets/Widgets3D/RectangleWidget/behavior.js +6 -11
- package/Widgets/Widgets3D/RectangleWidget/state.js +4 -2
- package/Widgets/Widgets3D/RectangleWidget.js +37 -25
- package/Widgets/Widgets3D/ResliceCursorWidget/Constants.js +35 -21
- package/Widgets/Widgets3D/ResliceCursorWidget/behavior.js +133 -209
- package/Widgets/Widgets3D/ResliceCursorWidget/cprBehavior.js +26 -41
- package/Widgets/Widgets3D/ResliceCursorWidget/helpers.js +89 -116
- package/Widgets/Widgets3D/ResliceCursorWidget/state.js +33 -40
- package/Widgets/Widgets3D/ResliceCursorWidget.js +186 -227
- package/Widgets/Widgets3D/SeedWidget/behavior.js +82 -0
- package/Widgets/Widgets3D/SeedWidget/state.js +18 -0
- package/Widgets/Widgets3D/SeedWidget.d.ts +44 -0
- package/Widgets/Widgets3D/SeedWidget.js +43 -0
- package/Widgets/Widgets3D/ShapeWidget/Constants.js +19 -19
- package/Widgets/Widgets3D/ShapeWidget/behavior.js +150 -252
- package/Widgets/Widgets3D/ShapeWidget.js +24 -27
- package/Widgets/Widgets3D/SphereWidget/behavior.js +35 -69
- package/Widgets/Widgets3D/SphereWidget/state.js +9 -5
- package/Widgets/Widgets3D/SphereWidget.js +34 -44
- package/Widgets/Widgets3D/SplineWidget/behavior.js +85 -120
- package/Widgets/Widgets3D/SplineWidget.js +43 -39
- package/Widgets/Widgets3D.js +15 -15
- package/Widgets/index.js +4 -4
- package/_virtual/rollup-plugin-worker-loader__module_Sources/Filters/General/PaintFilter/PaintFilter.worker.js +95 -207
- package/_virtual/rollup-plugin-worker-loader__module_Sources/Interaction/Widgets/PiecewiseGaussianWidget/ComputeHistogram.worker.js +0 -3
- package/favicon.js +5 -6
- package/index.d.ts +4 -2
- package/index.js +4 -3
- package/macros.js +4 -1931
- package/macros2.js +1684 -0
- package/package.json +6 -6
- package/vtk.js +18 -31
package/Common/Core/DataArray.js
CHANGED
|
@@ -1,305 +1,264 @@
|
|
|
1
|
-
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
2
1
|
import Constants from './DataArray/Constants.js';
|
|
3
|
-
import {
|
|
2
|
+
import { n as newInstance$1, a as newTypedArray, b as newTypedArrayFrom, o as obj, s as set, c as macro } from '../../macros2.js';
|
|
4
3
|
import { n as norm } from './Math/index.js';
|
|
5
4
|
|
|
6
|
-
|
|
5
|
+
const {
|
|
6
|
+
vtkErrorMacro
|
|
7
|
+
} = macro;
|
|
8
|
+
const {
|
|
9
|
+
DefaultDataType
|
|
10
|
+
} = Constants;
|
|
7
11
|
|
|
8
|
-
|
|
9
|
-
var vtkErrorMacro = vtkErrorMacro$1;
|
|
10
|
-
var DefaultDataType = Constants.DefaultDataType; // ----------------------------------------------------------------------------
|
|
12
|
+
// ----------------------------------------------------------------------------
|
|
11
13
|
// Global methods
|
|
12
14
|
// ----------------------------------------------------------------------------
|
|
15
|
+
|
|
13
16
|
// Original source from https://www.npmjs.com/package/compute-range
|
|
14
17
|
// Modified to accept type arrays
|
|
15
|
-
|
|
16
18
|
function fastComputeRange(arr, offset, numberOfComponents) {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
if (len === 0) {
|
|
24
|
-
return {
|
|
25
|
-
min: Number.MAX_VALUE,
|
|
26
|
-
max: -Number.MAX_VALUE
|
|
27
|
-
};
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
min = arr[offset];
|
|
31
|
-
max = min;
|
|
19
|
+
const len = arr.length;
|
|
20
|
+
let min = Number.MAX_VALUE;
|
|
21
|
+
let max = -Number.MAX_VALUE;
|
|
22
|
+
let x;
|
|
23
|
+
let i;
|
|
32
24
|
|
|
25
|
+
// find first non-NaN value
|
|
33
26
|
for (i = offset; i < len; i += numberOfComponents) {
|
|
27
|
+
if (!Number.isNaN(arr[i])) {
|
|
28
|
+
min = arr[i];
|
|
29
|
+
max = min;
|
|
30
|
+
break;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
for (; i < len; i += numberOfComponents) {
|
|
34
34
|
x = arr[i];
|
|
35
|
-
|
|
36
35
|
if (x < min) {
|
|
37
36
|
min = x;
|
|
38
37
|
} else if (x > max) {
|
|
39
38
|
max = x;
|
|
40
39
|
}
|
|
41
40
|
}
|
|
42
|
-
|
|
43
41
|
return {
|
|
44
|
-
min
|
|
45
|
-
max
|
|
42
|
+
min,
|
|
43
|
+
max
|
|
46
44
|
};
|
|
47
45
|
}
|
|
46
|
+
|
|
48
47
|
/**
|
|
49
48
|
* @deprecated please use fastComputeRange instead
|
|
50
49
|
*/
|
|
51
|
-
|
|
52
|
-
|
|
53
50
|
function createRangeHelper() {
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
51
|
+
let min = Number.MAX_VALUE;
|
|
52
|
+
let max = -Number.MAX_VALUE;
|
|
53
|
+
let count = 0;
|
|
54
|
+
let sum = 0;
|
|
58
55
|
return {
|
|
59
|
-
add
|
|
56
|
+
add(value) {
|
|
60
57
|
if (min > value) {
|
|
61
58
|
min = value;
|
|
62
59
|
}
|
|
63
|
-
|
|
64
60
|
if (max < value) {
|
|
65
61
|
max = value;
|
|
66
62
|
}
|
|
67
|
-
|
|
68
63
|
count++;
|
|
69
64
|
sum += value;
|
|
70
65
|
},
|
|
71
|
-
get
|
|
66
|
+
get() {
|
|
72
67
|
return {
|
|
73
|
-
min
|
|
74
|
-
max
|
|
75
|
-
count
|
|
76
|
-
sum
|
|
68
|
+
min,
|
|
69
|
+
max,
|
|
70
|
+
count,
|
|
71
|
+
sum,
|
|
77
72
|
mean: sum / count
|
|
78
73
|
};
|
|
79
74
|
},
|
|
80
|
-
getRange
|
|
75
|
+
getRange() {
|
|
81
76
|
return {
|
|
82
|
-
min
|
|
83
|
-
max
|
|
77
|
+
min,
|
|
78
|
+
max
|
|
84
79
|
};
|
|
85
80
|
}
|
|
86
81
|
};
|
|
87
82
|
}
|
|
88
|
-
|
|
89
83
|
function computeRange(values) {
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
84
|
+
let component = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
|
|
85
|
+
let numberOfComponents = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1;
|
|
93
86
|
if (component < 0 && numberOfComponents > 1) {
|
|
94
87
|
// Compute magnitude
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
var _i;
|
|
101
|
-
|
|
102
|
-
for (var nextJ = j + numberOfComponents; j < nextJ; ++j) {
|
|
88
|
+
const size = values.length;
|
|
89
|
+
const numberOfValues = size / numberOfComponents;
|
|
90
|
+
const data = new Float64Array(numberOfValues);
|
|
91
|
+
for (let i = 0, j = 0; i < numberOfValues; ++i) {
|
|
92
|
+
for (let nextJ = j + numberOfComponents; j < nextJ; ++j) {
|
|
103
93
|
data[i] += values[j] * values[j];
|
|
104
94
|
}
|
|
105
|
-
|
|
106
|
-
_i = i, data[_i] = Math.pow(data[_i], 0.5);
|
|
95
|
+
data[i] **= 0.5;
|
|
107
96
|
}
|
|
108
|
-
|
|
109
97
|
return fastComputeRange(data, 0, 1);
|
|
110
98
|
}
|
|
111
|
-
|
|
112
99
|
return fastComputeRange(values, component < 0 ? 0 : component, numberOfComponents);
|
|
113
100
|
}
|
|
114
|
-
|
|
115
101
|
function ensureRangeSize(rangeArray) {
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
102
|
+
let size = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
|
|
103
|
+
const ranges = rangeArray || [];
|
|
104
|
+
// Pad ranges with null value to get the
|
|
119
105
|
while (ranges.length <= size) {
|
|
120
106
|
ranges.push(null);
|
|
121
107
|
}
|
|
122
|
-
|
|
123
108
|
return ranges;
|
|
124
109
|
}
|
|
125
|
-
|
|
126
110
|
function getDataType(typedArray) {
|
|
127
111
|
// Expects toString() to return "[object ...Array]"
|
|
128
112
|
return Object.prototype.toString.call(typedArray).slice(8, -1);
|
|
129
113
|
}
|
|
130
|
-
|
|
131
114
|
function getMaxNorm(normArray) {
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
for (var i = 0; i < normArray.getNumberOfTuples(); ++i) {
|
|
115
|
+
const numComps = normArray.getNumberOfComponents();
|
|
116
|
+
let maxNorm = 0.0;
|
|
117
|
+
const tuple = new Array(numComps);
|
|
118
|
+
for (let i = 0; i < normArray.getNumberOfTuples(); ++i) {
|
|
137
119
|
normArray.getTuple(i, tuple);
|
|
138
|
-
|
|
139
|
-
|
|
120
|
+
const norm$1 = norm(tuple, numComps);
|
|
140
121
|
if (norm$1 > maxNorm) {
|
|
141
122
|
maxNorm = norm$1;
|
|
142
123
|
}
|
|
143
124
|
}
|
|
144
|
-
|
|
145
125
|
return maxNorm;
|
|
146
|
-
}
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
// ----------------------------------------------------------------------------
|
|
147
129
|
// Static API
|
|
148
130
|
// ----------------------------------------------------------------------------
|
|
149
131
|
|
|
132
|
+
const STATIC = {
|
|
133
|
+
computeRange,
|
|
134
|
+
createRangeHelper,
|
|
135
|
+
fastComputeRange,
|
|
136
|
+
getDataType,
|
|
137
|
+
getMaxNorm
|
|
138
|
+
};
|
|
150
139
|
|
|
151
|
-
|
|
152
|
-
computeRange: computeRange,
|
|
153
|
-
createRangeHelper: createRangeHelper,
|
|
154
|
-
fastComputeRange: fastComputeRange,
|
|
155
|
-
getDataType: getDataType,
|
|
156
|
-
getMaxNorm: getMaxNorm
|
|
157
|
-
}; // ----------------------------------------------------------------------------
|
|
140
|
+
// ----------------------------------------------------------------------------
|
|
158
141
|
// vtkDataArray methods
|
|
159
142
|
// ----------------------------------------------------------------------------
|
|
160
143
|
|
|
161
144
|
function vtkDataArray(publicAPI, model) {
|
|
162
145
|
// Set our className
|
|
163
146
|
model.classHierarchy.push('vtkDataArray');
|
|
147
|
+
|
|
164
148
|
/**
|
|
165
149
|
* Resize model.values and copy the old values to the new array.
|
|
166
150
|
* @param {Number} requestedNumTuples Final expected number of tuples; must be >= 0
|
|
167
151
|
* @returns {Boolean} True if a resize occured, false otherwise
|
|
168
152
|
*/
|
|
169
|
-
|
|
170
153
|
function resize(requestedNumTuples) {
|
|
171
154
|
if (requestedNumTuples < 0) {
|
|
172
155
|
return false;
|
|
173
156
|
}
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
var curNumTuples = model.values.length / (numComps > 0 ? numComps : 1);
|
|
177
|
-
|
|
157
|
+
const numComps = publicAPI.getNumberOfComponents();
|
|
158
|
+
const curNumTuples = model.values.length / (numComps > 0 ? numComps : 1);
|
|
178
159
|
if (requestedNumTuples === curNumTuples) {
|
|
179
160
|
return true;
|
|
180
161
|
}
|
|
181
|
-
|
|
182
162
|
if (requestedNumTuples > curNumTuples) {
|
|
183
163
|
// Requested size is bigger than current size. Allocate enough
|
|
184
164
|
// memory to fit the requested size and be more than double the
|
|
185
165
|
// currently allocated memory.
|
|
186
|
-
|
|
166
|
+
const oldValues = model.values;
|
|
187
167
|
model.values = newTypedArray(model.dataType, (requestedNumTuples + curNumTuples) * numComps);
|
|
188
168
|
model.values.set(oldValues);
|
|
189
169
|
return true;
|
|
190
|
-
}
|
|
191
|
-
|
|
170
|
+
}
|
|
192
171
|
|
|
172
|
+
// Requested size is smaller than currently allocated size
|
|
193
173
|
if (model.size > requestedNumTuples * numComps) {
|
|
194
174
|
model.size = requestedNumTuples * numComps;
|
|
195
175
|
publicAPI.dataChange();
|
|
196
176
|
}
|
|
197
|
-
|
|
198
177
|
return true;
|
|
199
178
|
}
|
|
200
|
-
|
|
201
|
-
publicAPI.dataChange = function () {
|
|
179
|
+
publicAPI.dataChange = () => {
|
|
202
180
|
model.ranges = null;
|
|
203
181
|
publicAPI.modified();
|
|
204
182
|
};
|
|
205
|
-
|
|
206
|
-
publicAPI.resize = function (requestedNumTuples) {
|
|
183
|
+
publicAPI.resize = requestedNumTuples => {
|
|
207
184
|
resize(requestedNumTuples);
|
|
208
|
-
|
|
209
|
-
|
|
185
|
+
const newSize = requestedNumTuples * publicAPI.getNumberOfComponents();
|
|
210
186
|
if (model.size !== newSize) {
|
|
211
187
|
model.size = newSize;
|
|
212
188
|
publicAPI.dataChange();
|
|
213
189
|
return true;
|
|
214
190
|
}
|
|
215
|
-
|
|
216
191
|
return false;
|
|
217
|
-
};
|
|
218
|
-
|
|
192
|
+
};
|
|
219
193
|
|
|
220
|
-
|
|
194
|
+
// FIXME, to rename into "clear()" or "reset()"
|
|
195
|
+
publicAPI.initialize = () => {
|
|
221
196
|
publicAPI.resize(0);
|
|
222
197
|
};
|
|
198
|
+
publicAPI.getElementComponentSize = () => model.values.BYTES_PER_ELEMENT;
|
|
223
199
|
|
|
224
|
-
|
|
225
|
-
return model.values.BYTES_PER_ELEMENT;
|
|
226
|
-
}; // Description:
|
|
200
|
+
// Description:
|
|
227
201
|
// Return the data component at the location specified by tupleIdx and
|
|
228
202
|
// compIdx.
|
|
229
|
-
|
|
230
|
-
|
|
231
203
|
publicAPI.getComponent = function (tupleIdx) {
|
|
232
|
-
|
|
204
|
+
let compIdx = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
|
|
233
205
|
return model.values[tupleIdx * model.numberOfComponents + compIdx];
|
|
234
|
-
};
|
|
206
|
+
};
|
|
207
|
+
|
|
208
|
+
// Description:
|
|
235
209
|
// Set the data component at the location specified by tupleIdx and compIdx
|
|
236
210
|
// to value.
|
|
237
211
|
// Note that i is less than NumberOfTuples and j is less than
|
|
238
212
|
// NumberOfComponents. Make sure enough memory has been allocated
|
|
239
213
|
// (use SetNumberOfTuples() and SetNumberOfComponents()).
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
publicAPI.setComponent = function (tupleIdx, compIdx, value) {
|
|
214
|
+
publicAPI.setComponent = (tupleIdx, compIdx, value) => {
|
|
243
215
|
if (value !== model.values[tupleIdx * model.numberOfComponents + compIdx]) {
|
|
244
216
|
model.values[tupleIdx * model.numberOfComponents + compIdx] = value;
|
|
245
217
|
publicAPI.dataChange();
|
|
246
218
|
}
|
|
247
219
|
};
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
var comp = valueIdx % model.numberOfComponents;
|
|
220
|
+
publicAPI.getValue = valueIdx => {
|
|
221
|
+
const idx = valueIdx / model.numberOfComponents;
|
|
222
|
+
const comp = valueIdx % model.numberOfComponents;
|
|
252
223
|
return publicAPI.getComponent(idx, comp);
|
|
253
224
|
};
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
var comp = valueIdx % model.numberOfComponents;
|
|
225
|
+
publicAPI.setValue = (valueIdx, value) => {
|
|
226
|
+
const idx = valueIdx / model.numberOfComponents;
|
|
227
|
+
const comp = valueIdx % model.numberOfComponents;
|
|
258
228
|
publicAPI.setComponent(idx, comp, value);
|
|
259
229
|
};
|
|
260
|
-
|
|
261
|
-
publicAPI.getData = function () {
|
|
262
|
-
return model.size === model.values.length ? model.values : model.values.subarray(0, model.size);
|
|
263
|
-
};
|
|
264
|
-
|
|
230
|
+
publicAPI.getData = () => model.size === model.values.length ? model.values : model.values.subarray(0, model.size);
|
|
265
231
|
publicAPI.getRange = function () {
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
232
|
+
let componentIndex = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : -1;
|
|
233
|
+
let rangeIdx = componentIndex;
|
|
269
234
|
if (rangeIdx < 0) {
|
|
270
235
|
// If scalar data, then store in slot 0 (same as componentIndex = 0).
|
|
271
236
|
// If vector data, then store in last slot.
|
|
272
237
|
rangeIdx = model.numberOfComponents === 1 ? 0 : model.numberOfComponents;
|
|
273
238
|
}
|
|
274
|
-
|
|
275
|
-
var range = null;
|
|
276
|
-
|
|
239
|
+
let range = null;
|
|
277
240
|
if (!model.ranges) {
|
|
278
241
|
model.ranges = ensureRangeSize(model.ranges, model.numberOfComponents);
|
|
279
242
|
}
|
|
280
|
-
|
|
281
243
|
range = model.ranges[rangeIdx];
|
|
282
|
-
|
|
283
244
|
if (range) {
|
|
284
245
|
model.rangeTuple[0] = range.min;
|
|
285
246
|
model.rangeTuple[1] = range.max;
|
|
286
247
|
return model.rangeTuple;
|
|
287
|
-
}
|
|
288
|
-
|
|
248
|
+
}
|
|
289
249
|
|
|
250
|
+
// Need to compute ranges...
|
|
290
251
|
range = computeRange(publicAPI.getData(), componentIndex, model.numberOfComponents);
|
|
291
252
|
model.ranges[rangeIdx] = range;
|
|
292
253
|
model.rangeTuple[0] = range.min;
|
|
293
254
|
model.rangeTuple[1] = range.max;
|
|
294
255
|
return model.rangeTuple;
|
|
295
256
|
};
|
|
296
|
-
|
|
297
|
-
publicAPI.setRange = function (rangeValue, componentIndex) {
|
|
257
|
+
publicAPI.setRange = (rangeValue, componentIndex) => {
|
|
298
258
|
if (!model.ranges) {
|
|
299
259
|
model.ranges = ensureRangeSize(model.ranges, model.numberOfComponents);
|
|
300
260
|
}
|
|
301
|
-
|
|
302
|
-
var range = {
|
|
261
|
+
const range = {
|
|
303
262
|
min: rangeValue.min,
|
|
304
263
|
max: rangeValue.max
|
|
305
264
|
};
|
|
@@ -308,195 +267,155 @@ function vtkDataArray(publicAPI, model) {
|
|
|
308
267
|
model.rangeTuple[1] = range.max;
|
|
309
268
|
return model.rangeTuple;
|
|
310
269
|
};
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
for (var i = 0; i < model.numberOfComponents; i++) {
|
|
270
|
+
publicAPI.setTuple = (idx, tuple) => {
|
|
271
|
+
const offset = idx * model.numberOfComponents;
|
|
272
|
+
for (let i = 0; i < model.numberOfComponents; i++) {
|
|
316
273
|
model.values[offset + i] = tuple[i];
|
|
317
274
|
}
|
|
318
275
|
};
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
for (var j = 0; j < last;) {
|
|
276
|
+
publicAPI.setTuples = (idx, tuples) => {
|
|
277
|
+
let i = idx * model.numberOfComponents;
|
|
278
|
+
const last = Math.min(tuples.length, model.size - i);
|
|
279
|
+
for (let j = 0; j < last;) {
|
|
325
280
|
model.values[i++] = tuples[j++];
|
|
326
281
|
}
|
|
327
282
|
};
|
|
328
|
-
|
|
329
|
-
publicAPI.insertTuple = function (idx, tuple) {
|
|
283
|
+
publicAPI.insertTuple = (idx, tuple) => {
|
|
330
284
|
if (model.size <= idx * model.numberOfComponents) {
|
|
331
285
|
model.size = (idx + 1) * model.numberOfComponents;
|
|
332
286
|
resize(idx + 1);
|
|
333
287
|
}
|
|
334
|
-
|
|
335
288
|
publicAPI.setTuple(idx, tuple);
|
|
336
289
|
return idx;
|
|
337
290
|
};
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
var end = idx + tuples.length / model.numberOfComponents;
|
|
341
|
-
|
|
291
|
+
publicAPI.insertTuples = (idx, tuples) => {
|
|
292
|
+
const end = idx + tuples.length / model.numberOfComponents;
|
|
342
293
|
if (model.size < end * model.numberOfComponents) {
|
|
343
294
|
model.size = end * model.numberOfComponents;
|
|
344
295
|
resize(end);
|
|
345
296
|
}
|
|
346
|
-
|
|
347
297
|
publicAPI.setTuples(idx, tuples);
|
|
348
298
|
return end;
|
|
349
299
|
};
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
var idx = model.size / model.numberOfComponents;
|
|
300
|
+
publicAPI.insertNextTuple = tuple => {
|
|
301
|
+
const idx = model.size / model.numberOfComponents;
|
|
353
302
|
return publicAPI.insertTuple(idx, tuple);
|
|
354
303
|
};
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
var idx = model.size / model.numberOfComponents;
|
|
304
|
+
publicAPI.insertNextTuples = tuples => {
|
|
305
|
+
const idx = model.size / model.numberOfComponents;
|
|
358
306
|
return publicAPI.insertTuples(idx, tuples);
|
|
359
307
|
};
|
|
360
|
-
|
|
361
308
|
publicAPI.getTuple = function (idx) {
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
309
|
+
let tupleToFill = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
|
|
310
|
+
const numberOfComponents = model.numberOfComponents || 1;
|
|
311
|
+
const offset = idx * numberOfComponents;
|
|
312
|
+
// Check most common component sizes first
|
|
365
313
|
// to avoid doing a for loop if possible
|
|
366
|
-
|
|
367
314
|
switch (numberOfComponents) {
|
|
368
315
|
case 4:
|
|
369
316
|
tupleToFill[3] = model.values[offset + 3];
|
|
370
317
|
// eslint-disable-next-line no-fallthrough
|
|
371
|
-
|
|
372
318
|
case 3:
|
|
373
319
|
tupleToFill[2] = model.values[offset + 2];
|
|
374
320
|
// eslint-disable-next-line no-fallthrough
|
|
375
|
-
|
|
376
321
|
case 2:
|
|
377
322
|
tupleToFill[1] = model.values[offset + 1];
|
|
378
323
|
// eslint-disable-next-line no-fallthrough
|
|
379
|
-
|
|
380
324
|
case 1:
|
|
381
325
|
tupleToFill[0] = model.values[offset];
|
|
382
326
|
break;
|
|
383
|
-
|
|
384
327
|
default:
|
|
385
|
-
for (
|
|
328
|
+
for (let i = numberOfComponents - 1; i >= 0; --i) {
|
|
386
329
|
tupleToFill[i] = model.values[offset + i];
|
|
387
330
|
}
|
|
388
|
-
|
|
389
331
|
}
|
|
390
|
-
|
|
391
332
|
return tupleToFill;
|
|
392
333
|
};
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
var arr = publicAPI.getData().subarray(from, to);
|
|
334
|
+
publicAPI.getTuples = (fromId, toId) => {
|
|
335
|
+
const from = (fromId ?? 0) * model.numberOfComponents;
|
|
336
|
+
const to = (toId ?? publicAPI.getNumberOfTuples()) * model.numberOfComponents;
|
|
337
|
+
const arr = publicAPI.getData().subarray(from, to);
|
|
398
338
|
return arr.length > 0 ? arr : null;
|
|
399
339
|
};
|
|
400
|
-
|
|
401
340
|
publicAPI.getTupleLocation = function () {
|
|
402
|
-
|
|
341
|
+
let idx = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1;
|
|
403
342
|
return idx * model.numberOfComponents;
|
|
404
343
|
};
|
|
405
|
-
|
|
406
|
-
publicAPI.
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
publicAPI.getNumberOfValues = function () {
|
|
411
|
-
return model.size;
|
|
412
|
-
};
|
|
413
|
-
|
|
414
|
-
publicAPI.getNumberOfTuples = function () {
|
|
415
|
-
return model.size / model.numberOfComponents;
|
|
416
|
-
};
|
|
417
|
-
|
|
418
|
-
publicAPI.getDataType = function () {
|
|
419
|
-
return model.dataType;
|
|
420
|
-
};
|
|
344
|
+
publicAPI.getNumberOfComponents = () => model.numberOfComponents;
|
|
345
|
+
publicAPI.getNumberOfValues = () => model.size;
|
|
346
|
+
publicAPI.getNumberOfTuples = () => model.size / model.numberOfComponents;
|
|
347
|
+
publicAPI.getDataType = () => model.dataType;
|
|
421
348
|
/* eslint-disable no-use-before-define */
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
dataType: model.dataType,
|
|
429
|
-
numberOfComponents: model.numberOfComponents
|
|
430
|
-
});
|
|
431
|
-
};
|
|
349
|
+
publicAPI.newClone = () => newInstance({
|
|
350
|
+
empty: true,
|
|
351
|
+
name: model.name,
|
|
352
|
+
dataType: model.dataType,
|
|
353
|
+
numberOfComponents: model.numberOfComponents
|
|
354
|
+
});
|
|
432
355
|
/* eslint-enable no-use-before-define */
|
|
433
356
|
|
|
434
|
-
|
|
435
|
-
publicAPI.getName = function () {
|
|
357
|
+
publicAPI.getName = () => {
|
|
436
358
|
if (!model.name) {
|
|
437
359
|
publicAPI.modified();
|
|
438
|
-
model.name =
|
|
360
|
+
model.name = `vtkDataArray${publicAPI.getMTime()}`;
|
|
439
361
|
}
|
|
440
|
-
|
|
441
362
|
return model.name;
|
|
442
363
|
};
|
|
443
|
-
|
|
444
|
-
publicAPI.setData = function (typedArray, numberOfComponents) {
|
|
364
|
+
publicAPI.setData = (typedArray, numberOfComponents) => {
|
|
445
365
|
model.values = typedArray;
|
|
446
366
|
model.size = typedArray.length;
|
|
447
367
|
model.dataType = getDataType(typedArray);
|
|
448
|
-
|
|
449
368
|
if (numberOfComponents) {
|
|
450
369
|
model.numberOfComponents = numberOfComponents;
|
|
451
370
|
}
|
|
452
|
-
|
|
453
371
|
if (model.size % model.numberOfComponents !== 0) {
|
|
454
372
|
model.numberOfComponents = 1;
|
|
455
373
|
}
|
|
456
|
-
|
|
457
374
|
publicAPI.dataChange();
|
|
458
|
-
};
|
|
459
|
-
|
|
375
|
+
};
|
|
460
376
|
|
|
461
|
-
|
|
377
|
+
// Override serialization support
|
|
378
|
+
publicAPI.getState = () => {
|
|
462
379
|
if (model.deleted) {
|
|
463
380
|
return null;
|
|
464
381
|
}
|
|
465
|
-
|
|
466
|
-
|
|
382
|
+
const jsonArchive = {
|
|
383
|
+
...model,
|
|
467
384
|
vtkClass: publicAPI.getClassName()
|
|
468
|
-
}
|
|
469
|
-
|
|
385
|
+
};
|
|
470
386
|
|
|
387
|
+
// Convert typed array to regular array
|
|
471
388
|
jsonArchive.values = Array.from(jsonArchive.values);
|
|
472
|
-
delete jsonArchive.buffer;
|
|
389
|
+
delete jsonArchive.buffer;
|
|
473
390
|
|
|
474
|
-
|
|
391
|
+
// Clean any empty data
|
|
392
|
+
Object.keys(jsonArchive).forEach(keyName => {
|
|
475
393
|
if (!jsonArchive[keyName]) {
|
|
476
394
|
delete jsonArchive[keyName];
|
|
477
395
|
}
|
|
478
|
-
});
|
|
396
|
+
});
|
|
479
397
|
|
|
480
|
-
|
|
481
|
-
|
|
398
|
+
// Sort resulting object by key name
|
|
399
|
+
const sortedObj = {};
|
|
400
|
+
Object.keys(jsonArchive).sort().forEach(name => {
|
|
482
401
|
sortedObj[name] = jsonArchive[name];
|
|
483
|
-
});
|
|
402
|
+
});
|
|
484
403
|
|
|
404
|
+
// Remove mtime
|
|
485
405
|
if (sortedObj.mtime) {
|
|
486
406
|
delete sortedObj.mtime;
|
|
487
407
|
}
|
|
488
|
-
|
|
489
408
|
return sortedObj;
|
|
490
409
|
};
|
|
491
|
-
|
|
492
|
-
publicAPI.deepCopy = function (other) {
|
|
410
|
+
publicAPI.deepCopy = other => {
|
|
493
411
|
// Retain current dataType and array reference before shallowCopy call.
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
publicAPI.shallowCopy(other);
|
|
497
|
-
// and dataTypes match.
|
|
412
|
+
const currentType = publicAPI.getDataType();
|
|
413
|
+
const currentArray = model.values;
|
|
414
|
+
publicAPI.shallowCopy(other);
|
|
498
415
|
|
|
499
|
-
|
|
416
|
+
// Avoid array reallocation if size already sufficient
|
|
417
|
+
// and dataTypes match.
|
|
418
|
+
if (currentArray?.length >= other.getNumberOfValues() && currentType === other.getDataType()) {
|
|
500
419
|
currentArray.set(other.getData());
|
|
501
420
|
model.values = currentArray;
|
|
502
421
|
publicAPI.dataChange();
|
|
@@ -504,97 +423,94 @@ function vtkDataArray(publicAPI, model) {
|
|
|
504
423
|
publicAPI.setData(other.getData().slice());
|
|
505
424
|
}
|
|
506
425
|
};
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
var numberOfComponents = model.numberOfComponents || 1;
|
|
510
|
-
|
|
426
|
+
publicAPI.interpolateTuple = (idx, source1, source1Idx, source2, source2Idx, t) => {
|
|
427
|
+
const numberOfComponents = model.numberOfComponents || 1;
|
|
511
428
|
if (numberOfComponents !== source1.getNumberOfComponents() || numberOfComponents !== source2.getNumberOfComponents()) {
|
|
512
429
|
vtkErrorMacro('numberOfComponents must match');
|
|
513
430
|
}
|
|
431
|
+
const tuple1 = source1.getTuple(source1Idx);
|
|
432
|
+
const tuple2 = source2.getTuple(source2Idx);
|
|
433
|
+
const out = [];
|
|
434
|
+
out.length = numberOfComponents;
|
|
514
435
|
|
|
515
|
-
|
|
516
|
-
var tuple2 = source2.getTuple(source2Idx);
|
|
517
|
-
var out = [];
|
|
518
|
-
out.length = numberOfComponents; // Check most common component sizes first
|
|
436
|
+
// Check most common component sizes first
|
|
519
437
|
// to avoid doing a for loop if possible
|
|
520
|
-
|
|
521
438
|
switch (numberOfComponents) {
|
|
522
439
|
case 4:
|
|
523
440
|
out[3] = tuple1[3] + (tuple2[3] - tuple1[3]) * t;
|
|
524
441
|
// eslint-disable-next-line no-fallthrough
|
|
525
|
-
|
|
526
442
|
case 3:
|
|
527
443
|
out[2] = tuple1[2] + (tuple2[2] - tuple1[2]) * t;
|
|
528
444
|
// eslint-disable-next-line no-fallthrough
|
|
529
|
-
|
|
530
445
|
case 2:
|
|
531
446
|
out[1] = tuple1[1] + (tuple2[1] - tuple1[1]) * t;
|
|
532
447
|
// eslint-disable-next-line no-fallthrough
|
|
533
|
-
|
|
534
448
|
case 1:
|
|
535
449
|
out[0] = tuple1[0] + (tuple2[0] - tuple1[0]) * t;
|
|
536
450
|
break;
|
|
537
|
-
|
|
538
451
|
default:
|
|
539
|
-
for (
|
|
452
|
+
for (let i = 0; i < numberOfComponents; i++) {
|
|
540
453
|
out[i] = tuple1[i] + (tuple2[i] - tuple1[i]) * t;
|
|
541
454
|
}
|
|
542
|
-
|
|
543
455
|
}
|
|
544
|
-
|
|
545
456
|
return publicAPI.insertTuple(idx, out);
|
|
546
457
|
};
|
|
547
|
-
}
|
|
458
|
+
}
|
|
459
|
+
|
|
460
|
+
// ----------------------------------------------------------------------------
|
|
548
461
|
// Object factory
|
|
549
462
|
// ----------------------------------------------------------------------------
|
|
463
|
+
|
|
550
464
|
// size: The current size of the dataArray.
|
|
551
465
|
// NOTE: The underlying typed array may be larger than 'size'.
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
var DEFAULT_VALUES = {
|
|
466
|
+
const DEFAULT_VALUES = {
|
|
555
467
|
name: '',
|
|
556
468
|
numberOfComponents: 1,
|
|
557
469
|
dataType: DefaultDataType,
|
|
558
|
-
rangeTuple: [0, 0]
|
|
470
|
+
rangeTuple: [0, 0]
|
|
471
|
+
// size: undefined,
|
|
559
472
|
// values: null,
|
|
560
473
|
// ranges: null,
|
|
474
|
+
};
|
|
561
475
|
|
|
562
|
-
|
|
476
|
+
// ----------------------------------------------------------------------------
|
|
563
477
|
|
|
564
478
|
function extend(publicAPI, model) {
|
|
565
|
-
|
|
479
|
+
let initialValues = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
566
480
|
Object.assign(model, DEFAULT_VALUES, initialValues);
|
|
567
|
-
|
|
568
481
|
if (!model.empty && !model.values && !model.size) {
|
|
569
482
|
throw new TypeError('Cannot create vtkDataArray object without: size > 0, values');
|
|
570
483
|
}
|
|
571
|
-
|
|
572
484
|
if (!model.values) {
|
|
573
485
|
model.values = newTypedArray(model.dataType, model.size);
|
|
574
486
|
} else if (Array.isArray(model.values)) {
|
|
575
487
|
model.values = newTypedArrayFrom(model.dataType, model.values);
|
|
576
488
|
}
|
|
577
|
-
|
|
578
489
|
if (model.values) {
|
|
579
|
-
var _model$size;
|
|
580
|
-
|
|
581
490
|
// Takes the size if provided (can be lower than `model.values`) otherwise the actual length of `values`.
|
|
582
|
-
model.size =
|
|
491
|
+
model.size = model.size ?? model.values.length;
|
|
583
492
|
model.dataType = getDataType(model.values);
|
|
584
|
-
}
|
|
585
|
-
|
|
493
|
+
}
|
|
586
494
|
|
|
495
|
+
// Object methods
|
|
587
496
|
obj(publicAPI, model);
|
|
588
|
-
set(publicAPI, model, ['name', 'numberOfComponents']);
|
|
497
|
+
set(publicAPI, model, ['name', 'numberOfComponents']);
|
|
589
498
|
|
|
499
|
+
// Object specific methods
|
|
590
500
|
vtkDataArray(publicAPI, model);
|
|
591
|
-
}
|
|
501
|
+
}
|
|
592
502
|
|
|
593
|
-
|
|
503
|
+
// ----------------------------------------------------------------------------
|
|
504
|
+
|
|
505
|
+
const newInstance = newInstance$1(extend, 'vtkDataArray');
|
|
506
|
+
|
|
507
|
+
// ----------------------------------------------------------------------------
|
|
594
508
|
|
|
595
|
-
var vtkDataArray$1 =
|
|
596
|
-
newInstance
|
|
597
|
-
extend
|
|
598
|
-
|
|
509
|
+
var vtkDataArray$1 = {
|
|
510
|
+
newInstance,
|
|
511
|
+
extend,
|
|
512
|
+
...STATIC,
|
|
513
|
+
...Constants
|
|
514
|
+
};
|
|
599
515
|
|
|
600
516
|
export { STATIC, vtkDataArray$1 as default, extend, newInstance };
|