@nativescript/canvas-three 2.0.0-webgpu.27 → 2.0.0-webgpu.29
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/package.json +1 -1
- package/three/src/Three.Legacy.d.ts +13 -13
- package/three/src/Three.WebGPU.d.ts +172 -187
- package/three/src/Three.d.ts +189 -213
- package/three/src/animation/AnimationAction.d.ts +70 -70
- package/three/src/animation/AnimationClip.d.ts +41 -50
- package/three/src/animation/AnimationMixer.d.ts +26 -30
- package/three/src/animation/AnimationObjectGroup.d.ts +13 -13
- package/three/src/animation/AnimationUtils.d.ts +11 -31
- package/three/src/animation/KeyframeTrack.d.ts +49 -49
- package/three/src/animation/PropertyBinding.d.ts +27 -27
- package/three/src/animation/PropertyMixer.d.ts +13 -13
- package/three/src/animation/tracks/BooleanKeyframeTrack.d.ts +6 -6
- package/three/src/animation/tracks/ColorKeyframeTrack.d.ts +7 -7
- package/three/src/animation/tracks/NumberKeyframeTrack.d.ts +7 -7
- package/three/src/animation/tracks/QuaternionKeyframeTrack.d.ts +7 -7
- package/three/src/animation/tracks/StringKeyframeTrack.d.ts +6 -6
- package/three/src/animation/tracks/VectorKeyframeTrack.d.ts +7 -7
- package/three/src/audio/Audio.d.ts +241 -241
- package/three/src/audio/AudioAnalyser.d.ts +23 -23
- package/three/src/audio/AudioContext.d.ts +9 -9
- package/three/src/audio/AudioListener.d.ts +56 -56
- package/three/src/audio/PositionalAudio.d.ts +58 -58
- package/three/src/cameras/ArrayCamera.d.ts +17 -17
- package/three/src/cameras/Camera.d.ts +55 -55
- package/three/src/cameras/CubeCamera.d.ts +29 -29
- package/three/src/cameras/OrthographicCamera.d.ts +137 -144
- package/three/src/cameras/PerspectiveCamera.d.ts +227 -227
- package/three/src/cameras/StereoCamera.d.ts +31 -31
- package/three/src/constants.d.ts +134 -258
- package/three/src/core/BufferAttribute.d.ts +481 -526
- package/three/src/core/BufferGeometry.d.ts +342 -347
- package/three/src/core/Clock.d.ts +53 -53
- package/three/src/core/EventDispatcher.d.ts +34 -45
- package/three/src/core/GLBufferAttribute.d.ts +94 -94
- package/three/src/core/InstancedBufferAttribute.d.ts +22 -22
- package/three/src/core/InstancedBufferGeometry.d.ts +25 -25
- package/three/src/core/InstancedInterleavedBuffer.d.ts +13 -13
- package/three/src/core/InterleavedBuffer.d.ts +152 -152
- package/three/src/core/InterleavedBufferAttribute.d.ts +194 -194
- package/three/src/core/Layers.d.ts +48 -48
- package/three/src/core/Object3D.d.ts +616 -644
- package/three/src/core/Raycaster.d.ts +136 -144
- package/three/src/core/RenderTarget.d.ts +72 -79
- package/three/src/core/Uniform.d.ts +16 -16
- package/three/src/core/UniformsGroup.d.ts +15 -15
- package/three/src/extras/DataUtils.d.ts +2 -2
- package/three/src/extras/Earcut.d.ts +6 -6
- package/three/src/extras/ImageUtils.d.ts +19 -21
- package/three/src/extras/PMREMGenerator.d.ts +49 -49
- package/three/src/extras/ShapeUtils.d.ts +14 -14
- package/three/src/extras/TextureUtils.d.ts +7 -12
- package/three/src/extras/core/Curve.d.ts +132 -132
- package/three/src/extras/core/CurvePath.d.ts +55 -55
- package/three/src/extras/core/Path.d.ts +108 -126
- package/three/src/extras/core/Shape.d.ts +43 -43
- package/three/src/extras/core/ShapePath.d.ts +79 -79
- package/three/src/extras/curves/ArcCurve.d.ts +24 -31
- package/three/src/extras/curves/CatmullRomCurve3.d.ts +44 -44
- package/three/src/extras/curves/CubicBezierCurve.d.ts +42 -42
- package/three/src/extras/curves/CubicBezierCurve3.d.ts +42 -42
- package/three/src/extras/curves/Curves.d.ts +10 -10
- package/three/src/extras/curves/EllipseCurve.d.ts +71 -80
- package/three/src/extras/curves/LineCurve.d.ts +30 -30
- package/three/src/extras/curves/LineCurve3.d.ts +30 -30
- package/three/src/extras/curves/QuadraticBezierCurve.d.ts +36 -36
- package/three/src/extras/curves/QuadraticBezierCurve3.d.ts +36 -36
- package/three/src/extras/curves/SplineCurve.d.ts +24 -24
- package/three/src/geometries/BoxGeometry.d.ts +31 -38
- package/three/src/geometries/CapsuleGeometry.d.ts +27 -27
- package/three/src/geometries/CircleGeometry.d.ts +27 -27
- package/three/src/geometries/ConeGeometry.d.ts +36 -44
- package/three/src/geometries/CylinderGeometry.d.ts +35 -44
- package/three/src/geometries/DodecahedronGeometry.d.ts +15 -15
- package/three/src/geometries/EdgesGeometry.d.ts +21 -21
- package/three/src/geometries/ExtrudeGeometry.d.ts +97 -110
- package/three/src/geometries/Geometries.d.ts +21 -21
- package/three/src/geometries/IcosahedronGeometry.d.ts +16 -16
- package/three/src/geometries/LatheGeometry.d.ts +29 -29
- package/three/src/geometries/OctahedronGeometry.d.ts +15 -15
- package/three/src/geometries/PlaneGeometry.d.ts +27 -27
- package/three/src/geometries/PolyhedronGeometry.d.ts +27 -27
- package/three/src/geometries/RingGeometry.d.ts +31 -38
- package/three/src/geometries/ShapeGeometry.d.ts +24 -24
- package/three/src/geometries/SphereGeometry.d.ts +39 -47
- package/three/src/geometries/TetrahedronGeometry.d.ts +15 -15
- package/three/src/geometries/TorusGeometry.d.ts +29 -29
- package/three/src/geometries/TorusKnotGeometry.d.ts +31 -38
- package/three/src/geometries/TubeGeometry.d.ts +44 -50
- package/three/src/geometries/WireframeGeometry.d.ts +19 -19
- package/three/src/helpers/ArrowHelper.d.ts +58 -65
- package/three/src/helpers/AxesHelper.d.ts +27 -27
- package/three/src/helpers/Box3Helper.d.ts +26 -26
- package/three/src/helpers/BoxHelper.d.ts +38 -38
- package/three/src/helpers/CameraHelper.d.ts +53 -53
- package/three/src/helpers/DirectionalLightHelper.d.ts +54 -54
- package/three/src/helpers/GridHelper.d.ts +27 -27
- package/three/src/helpers/HemisphereLightHelper.d.ts +50 -50
- package/three/src/helpers/PlaneHelper.d.ts +32 -32
- package/three/src/helpers/PointLightHelper.d.ts +48 -48
- package/three/src/helpers/PolarGridHelper.d.ts +26 -33
- package/three/src/helpers/SkeletonHelper.d.ts +52 -52
- package/three/src/helpers/SpotLightHelper.d.ts +52 -52
- package/three/src/lights/AmbientLight.d.ts +20 -20
- package/three/src/lights/DirectionalLight.d.ts +68 -68
- package/three/src/lights/DirectionalLightShadow.d.ts +22 -22
- package/three/src/lights/HemisphereLight.d.ts +37 -37
- package/three/src/lights/Light.d.ts +61 -61
- package/three/src/lights/LightProbe.d.ts +21 -21
- package/three/src/lights/LightShadow.d.ts +157 -157
- package/three/src/lights/PointLight.d.ts +74 -74
- package/three/src/lights/PointLightShadow.d.ts +14 -14
- package/three/src/lights/RectAreaLight.d.ts +49 -49
- package/three/src/lights/SpotLight.d.ts +120 -127
- package/three/src/lights/SpotLightShadow.d.ts +25 -25
- package/three/src/lights/webgpu/IESSpotLight.d.ts +3 -3
- package/three/src/loaders/AnimationLoader.d.ts +5 -5
- package/three/src/loaders/AudioLoader.d.ts +3 -3
- package/three/src/loaders/BufferGeometryLoader.d.ts +6 -6
- package/three/src/loaders/Cache.d.ts +12 -12
- package/three/src/loaders/CompressedTextureLoader.d.ts +5 -10
- package/three/src/loaders/CubeTextureLoader.d.ts +5 -10
- package/three/src/loaders/DataTextureLoader.d.ts +5 -10
- package/three/src/loaders/FileLoader.d.ts +8 -13
- package/three/src/loaders/ImageBitmapLoader.d.ts +10 -15
- package/three/src/loaders/ImageLoader.d.ts +4 -9
- package/three/src/loaders/Loader.d.ts +39 -44
- package/three/src/loaders/LoaderUtils.d.ts +6 -6
- package/three/src/loaders/LoadingManager.d.ts +48 -52
- package/three/src/loaders/MaterialLoader.d.ts +12 -12
- package/three/src/loaders/ObjectLoader.d.ts +20 -30
- package/three/src/loaders/TextureLoader.d.ts +5 -10
- package/three/src/materials/LineBasicMaterial.d.ts +54 -54
- package/three/src/materials/LineDashedMaterial.d.ts +34 -34
- package/three/src/materials/Material.d.ts +585 -604
- package/three/src/materials/Materials.d.ts +18 -18
- package/three/src/materials/MeshBasicMaterial.d.ts +130 -130
- package/three/src/materials/MeshDepthMaterial.d.ts +59 -59
- package/three/src/materials/MeshDistanceMaterial.d.ts +56 -56
- package/three/src/materials/MeshLambertMaterial.d.ts +198 -198
- package/three/src/materials/MeshMatcapMaterial.d.ts +111 -111
- package/three/src/materials/MeshNormalMaterial.d.ts +87 -87
- package/three/src/materials/MeshPhongMaterial.d.ts +222 -222
- package/three/src/materials/MeshPhysicalMaterial.d.ts +230 -230
- package/three/src/materials/MeshStandardMaterial.d.ts +212 -212
- package/three/src/materials/MeshToonMaterial.d.ts +172 -172
- package/three/src/materials/PointsMaterial.d.ts +55 -55
- package/three/src/materials/RawShaderMaterial.d.ts +9 -9
- package/three/src/materials/ShaderMaterial.d.ts +161 -153
- package/three/src/materials/ShadowMaterial.d.ts +28 -28
- package/three/src/materials/SpriteMaterial.d.ts +51 -51
- package/three/src/math/Box2.d.ts +40 -40
- package/three/src/math/Box3.d.ts +60 -60
- package/three/src/math/Color.d.ts +334 -334
- package/three/src/math/ColorManagement.d.ts +19 -31
- package/three/src/math/Cylindrical.d.ts +19 -19
- package/three/src/math/Euler.d.ts +44 -44
- package/three/src/math/Frustum.d.ts +22 -22
- package/three/src/math/Interpolant.d.ts +6 -6
- package/three/src/math/Line3.d.ts +23 -23
- package/three/src/math/MathUtils.d.ts +27 -33
- package/three/src/math/Matrix2.d.ts +33 -38
- package/three/src/math/Matrix3.d.ts +149 -179
- package/three/src/math/Matrix4.d.ts +196 -263
- package/three/src/math/Plane.d.ts +39 -39
- package/three/src/math/Quaternion.d.ts +156 -171
- package/three/src/math/Ray.d.ts +46 -51
- package/three/src/math/Sphere.d.ts +39 -39
- package/three/src/math/Spherical.d.ts +20 -20
- package/three/src/math/SphericalHarmonics3.d.ts +47 -47
- package/three/src/math/Triangle.d.ts +45 -77
- package/three/src/math/Vector2.d.ts +310 -310
- package/three/src/math/Vector3.d.ts +229 -229
- package/three/src/math/Vector4.d.ts +228 -228
- package/three/src/math/interpolants/CubicInterpolant.d.ts +3 -3
- package/three/src/math/interpolants/DiscreteInterpolant.d.ts +3 -3
- package/three/src/math/interpolants/LinearInterpolant.d.ts +3 -3
- package/three/src/math/interpolants/QuaternionLinearInterpolant.d.ts +3 -3
- package/three/src/nodes/Nodes.d.ts +188 -378
- package/three/src/nodes/accessors/AccessorsUtils.d.ts +2 -2
- package/three/src/nodes/accessors/BatchNode.d.ts +7 -7
- package/three/src/nodes/accessors/BitangentNode.d.ts +2 -2
- package/three/src/nodes/accessors/BufferAttributeNode.d.ts +25 -50
- package/three/src/nodes/accessors/BufferNode.d.ts +7 -11
- package/three/src/nodes/accessors/CameraNode.d.ts +5 -5
- package/three/src/nodes/accessors/ClippingNode.d.ts +6 -6
- package/three/src/nodes/accessors/CubeTextureNode.d.ts +14 -24
- package/three/src/nodes/accessors/InstanceNode.d.ts +7 -7
- package/three/src/nodes/accessors/MaterialNode.d.ts +82 -82
- package/three/src/nodes/accessors/MaterialReferenceNode.d.ts +5 -9
- package/three/src/nodes/accessors/ModelNode.d.ts +5 -5
- package/three/src/nodes/accessors/ModelViewProjectionNode.d.ts +3 -3
- package/three/src/nodes/accessors/NormalNode.d.ts +4 -4
- package/three/src/nodes/accessors/Object3DNode.d.ts +13 -13
- package/three/src/nodes/accessors/PointUVNode.d.ts +4 -4
- package/three/src/nodes/accessors/PositionNode.d.ts +2 -2
- package/three/src/nodes/accessors/ReferenceNode.d.ts +12 -17
- package/three/src/nodes/accessors/ReflectVectorNode.d.ts +3 -3
- package/three/src/nodes/accessors/RendererReferenceNode.d.ts +6 -10
- package/three/src/nodes/accessors/SkinningNode.d.ts +11 -11
- package/three/src/nodes/accessors/StorageBufferNode.d.ts +16 -28
- package/three/src/nodes/accessors/StorageTextureNode.d.ts +17 -29
- package/three/src/nodes/accessors/TangentNode.d.ts +5 -5
- package/three/src/nodes/accessors/Texture3DNode.d.ts +8 -12
- package/three/src/nodes/accessors/TextureBicubicNode.d.ts +10 -10
- package/three/src/nodes/accessors/TextureNode.d.ts +23 -33
- package/three/src/nodes/accessors/UVNode.d.ts +2 -2
- package/three/src/nodes/accessors/UniformsNode.d.ts +11 -11
- package/three/src/nodes/accessors/UserDataNode.d.ts +5 -9
- package/three/src/nodes/accessors/VertexColorNode.d.ts +5 -5
- package/three/src/nodes/code/CodeNode.d.ts +10 -10
- package/three/src/nodes/code/ExpressionNode.d.ts +4 -4
- package/three/src/nodes/code/FunctionCallNode.d.ts +14 -17
- package/three/src/nodes/code/FunctionNode.d.ts +23 -24
- package/three/src/nodes/core/AssignNode.d.ts +10 -10
- package/three/src/nodes/core/AttributeNode.d.ts +8 -12
- package/three/src/nodes/core/BypassNode.d.ts +10 -10
- package/three/src/nodes/core/CacheNode.d.ts +11 -11
- package/three/src/nodes/core/ConstNode.d.ts +5 -5
- package/three/src/nodes/core/ContextNode.d.ts +12 -12
- package/three/src/nodes/core/IndexNode.d.ts +8 -8
- package/three/src/nodes/core/InputNode.d.ts +9 -9
- package/three/src/nodes/core/LightingModel.d.ts +31 -31
- package/three/src/nodes/core/MRTNode.d.ts +8 -8
- package/three/src/nodes/core/Node.d.ts +100 -97
- package/three/src/nodes/core/NodeAttribute.d.ts +6 -6
- package/three/src/nodes/core/NodeBuilder.d.ts +122 -132
- package/three/src/nodes/core/NodeCache.d.ts +40 -43
- package/three/src/nodes/core/NodeCode.d.ts +2 -2
- package/three/src/nodes/core/NodeFrame.d.ts +24 -24
- package/three/src/nodes/core/NodeFunction.d.ts +8 -8
- package/three/src/nodes/core/NodeFunctionInput.d.ts +5 -5
- package/three/src/nodes/core/NodeKeywords.d.ts +14 -14
- package/three/src/nodes/core/NodeParser.d.ts +2 -2
- package/three/src/nodes/core/NodeUniform.d.ts +11 -11
- package/three/src/nodes/core/NodeUtils.d.ts +11 -14
- package/three/src/nodes/core/NodeVar.d.ts +4 -4
- package/three/src/nodes/core/NodeVarying.d.ts +4 -4
- package/three/src/nodes/core/OutputStructNode.d.ts +5 -5
- package/three/src/nodes/core/PropertyNode.d.ts +6 -6
- package/three/src/nodes/core/StackNode.d.ts +9 -9
- package/three/src/nodes/core/StructTypeNode.d.ts +5 -5
- package/three/src/nodes/core/TempNode.d.ts +5 -5
- package/three/src/nodes/core/UniformGroup.d.ts +3 -3
- package/three/src/nodes/core/UniformGroupNode.d.ts +7 -7
- package/three/src/nodes/core/UniformNode.d.ts +17 -20
- package/three/src/nodes/core/VarNode.d.ts +18 -18
- package/three/src/nodes/core/VaryingNode.d.ts +12 -12
- package/three/src/nodes/core/constants.d.ts +17 -17
- package/three/src/nodes/display/AfterImageNode.d.ts +15 -15
- package/three/src/nodes/display/AnamorphicNode.d.ts +17 -22
- package/three/src/nodes/display/BlendModeNode.d.ts +21 -25
- package/three/src/nodes/display/BloomNode.d.ts +19 -24
- package/three/src/nodes/display/ColorAdjustmentNode.d.ts +21 -33
- package/three/src/nodes/display/ColorSpaceNode.d.ts +18 -21
- package/three/src/nodes/display/DenoiseNode.d.ts +22 -28
- package/three/src/nodes/display/DepthOfFieldNode.d.ts +16 -22
- package/three/src/nodes/display/DotScreenNode.d.ts +15 -20
- package/three/src/nodes/display/FXAANode.d.ts +9 -9
- package/three/src/nodes/display/FilmNode.d.ts +12 -16
- package/three/src/nodes/display/FrontFacingNode.d.ts +4 -4
- package/three/src/nodes/display/GTAONode.d.ts +28 -32
- package/three/src/nodes/display/GaussianBlurNode.d.ts +17 -21
- package/three/src/nodes/display/Lut3DNode.d.ts +16 -21
- package/three/src/nodes/display/NormalMapNode.d.ts +12 -12
- package/three/src/nodes/display/PassNode.d.ts +30 -30
- package/three/src/nodes/display/PixelationPassNode.d.ts +25 -51
- package/three/src/nodes/display/PosterizeNode.d.ts +10 -13
- package/three/src/nodes/display/RGBShiftNode.d.ts +14 -14
- package/three/src/nodes/display/RenderOutputNode.d.ts +14 -18
- package/three/src/nodes/display/SobelOperatorNode.d.ts +9 -9
- package/three/src/nodes/display/ToneMappingNode.d.ts +14 -22
- package/three/src/nodes/display/TransitionNode.d.ts +17 -31
- package/three/src/nodes/display/ViewportDepthNode.d.ts +9 -11
- package/three/src/nodes/display/ViewportDepthTextureNode.d.ts +5 -8
- package/three/src/nodes/display/ViewportNode.d.ts +12 -18
- package/three/src/nodes/display/ViewportSharedTextureNode.d.ts +9 -12
- package/three/src/nodes/display/ViewportTextureNode.d.ts +16 -24
- package/three/src/nodes/fog/FogExp2Node.d.ts +10 -10
- package/three/src/nodes/fog/FogNode.d.ts +13 -16
- package/three/src/nodes/fog/FogRangeNode.d.ts +12 -16
- package/three/src/nodes/functions/BSDF/BRDF_GGX.d.ts +4 -12
- package/three/src/nodes/functions/BSDF/BRDF_Lambert.d.ts +3 -3
- package/three/src/nodes/functions/BSDF/BRDF_Sheen.d.ts +3 -3
- package/three/src/nodes/functions/BSDF/DFGApprox.d.ts +3 -3
- package/three/src/nodes/functions/BSDF/D_GGX.d.ts +3 -3
- package/three/src/nodes/functions/BSDF/D_GGX_Anisotropic.d.ts +4 -6
- package/three/src/nodes/functions/BSDF/F_Schlick.d.ts +3 -3
- package/three/src/nodes/functions/BSDF/LTC.d.ts +2 -4
- package/three/src/nodes/functions/BSDF/V_GGX_SmithCorrelated.d.ts +4 -8
- package/three/src/nodes/functions/BSDF/V_GGX_SmithCorrelated_Anisotropic.d.ts +4 -13
- package/three/src/nodes/functions/BasicLightingModel.d.ts +2 -2
- package/three/src/nodes/functions/PhongLightingModel.d.ts +3 -3
- package/three/src/nodes/functions/PhysicalLightingModel.d.ts +17 -24
- package/three/src/nodes/functions/ShadowMaskModel.d.ts +5 -5
- package/three/src/nodes/functions/ToonLightingModel.d.ts +2 -3
- package/three/src/nodes/functions/material/getGeometryRoughness.d.ts +2 -2
- package/three/src/nodes/functions/material/getRoughness.d.ts +3 -3
- package/three/src/nodes/geometry/RangeNode.d.ts +11 -11
- package/three/src/nodes/gpgpu/ComputeNode.d.ts +12 -16
- package/three/src/nodes/lighting/AONode.d.ts +4 -4
- package/three/src/nodes/lighting/AnalyticLightNode.d.ts +4 -4
- package/three/src/nodes/lighting/BasicEnvironmentNode.d.ts +4 -4
- package/three/src/nodes/lighting/BasicLightMapNode.d.ts +3 -3
- package/three/src/nodes/lighting/EnvironmentNode.d.ts +4 -4
- package/three/src/nodes/lighting/HemisphereLightNode.d.ts +8 -8
- package/three/src/nodes/lighting/IrradianceNode.d.ts +4 -4
- package/three/src/nodes/lighting/LightUtils.d.ts +4 -8
- package/three/src/nodes/lighting/LightingContextNode.d.ts +13 -18
- package/three/src/nodes/lighting/LightingNode.d.ts +3 -3
- package/three/src/nodes/lighting/LightsNode.d.ts +10 -13
- package/three/src/nodes/lighting/PointLightNode.d.ts +6 -6
- package/three/src/nodes/lighting/RectAreaLightNode.d.ts +12 -12
- package/three/src/nodes/lighting/SpotLightNode.d.ts +9 -9
- package/three/src/nodes/loaders/NodeLoader.d.ts +9 -9
- package/three/src/nodes/loaders/NodeMaterialLoader.d.ts +4 -4
- package/three/src/nodes/loaders/NodeObjectLoader.d.ts +6 -6
- package/three/src/nodes/materials/Line2NodeMaterial.d.ts +37 -37
- package/three/src/nodes/materials/LineBasicNodeMaterial.d.ts +15 -16
- package/three/src/nodes/materials/Materials.d.ts +15 -15
- package/three/src/nodes/materials/MeshBasicNodeMaterial.d.ts +29 -30
- package/three/src/nodes/materials/MeshMatcapNodeMaterial.d.ts +25 -26
- package/three/src/nodes/materials/MeshNormalNodeMaterial.d.ts +21 -22
- package/three/src/nodes/materials/MeshPhongNodeMaterial.d.ts +48 -49
- package/three/src/nodes/materials/MeshPhysicalNodeMaterial.d.ts +73 -76
- package/three/src/nodes/materials/MeshSSSNodeMaterial.d.ts +11 -11
- package/three/src/nodes/materials/MeshStandardNodeMaterial.d.ts +47 -48
- package/three/src/nodes/materials/MeshToonNodeMaterial.d.ts +35 -36
- package/three/src/nodes/materials/NodeMaterial.d.ts +108 -108
- package/three/src/nodes/materials/PointsNodeMaterial.d.ts +15 -16
- package/three/src/nodes/materials/ShadowNodeMaterial.d.ts +10 -11
- package/three/src/nodes/materials/SpriteNodeMaterial.d.ts +18 -19
- package/three/src/nodes/materials/VolumeNodeMaterial.d.ts +6 -6
- package/three/src/nodes/materialx/MaterialXNodes.d.ts +21 -92
- package/three/src/nodes/materialx/lib/mx_hsv.d.ts +2 -2
- package/three/src/nodes/materialx/lib/mx_noise.d.ts +76 -296
- package/three/src/nodes/materialx/lib/mx_transform_color.d.ts +2 -2
- package/three/src/nodes/math/CondNode.d.ts +11 -15
- package/three/src/nodes/math/HashNode.d.ts +8 -8
- package/three/src/nodes/math/MathNode.d.ts +168 -188
- package/three/src/nodes/math/MathUtils.d.ts +8 -8
- package/three/src/nodes/math/OperatorNode.d.ts +32 -54
- package/three/src/nodes/math/TriNoise3D.d.ts +3 -7
- package/three/src/nodes/pmrem/PMREMNode.d.ts +10 -14
- package/three/src/nodes/procedural/CheckerNode.d.ts +8 -8
- package/three/src/nodes/shadernode/ShaderNode.d.ts +94 -141
- package/three/src/nodes/utils/ArrayElementNode.d.ts +5 -5
- package/three/src/nodes/utils/ConvertNode.d.ts +4 -4
- package/three/src/nodes/utils/DiscardNode.d.ts +8 -8
- package/three/src/nodes/utils/EquirectUVNode.d.ts +3 -3
- package/three/src/nodes/utils/JoinNode.d.ts +4 -4
- package/three/src/nodes/utils/MatcapUVNode.d.ts +3 -3
- package/three/src/nodes/utils/MaxMipLevelNode.d.ts +7 -7
- package/three/src/nodes/utils/OscNode.d.ts +10 -14
- package/three/src/nodes/utils/PackingNode.d.ts +11 -11
- package/three/src/nodes/utils/RTTNode.d.ts +23 -28
- package/three/src/nodes/utils/ReflectorNode.d.ts +19 -19
- package/three/src/nodes/utils/RemapNode.d.ts +16 -28
- package/three/src/nodes/utils/RotateNode.d.ts +11 -14
- package/three/src/nodes/utils/RotateUVNode.d.ts +11 -11
- package/three/src/nodes/utils/SplitNode.d.ts +10 -10
- package/three/src/nodes/utils/SpriteSheetUVNode.d.ts +7 -11
- package/three/src/nodes/utils/StoargeArrayElementNode.d.ts +13 -16
- package/three/src/nodes/utils/TimerNode.d.ts +10 -14
- package/three/src/nodes/utils/TriplanarTexturesNode.d.ts +16 -33
- package/three/src/objects/BatchedMesh.d.ts +151 -155
- package/three/src/objects/Bone.d.ts +16 -16
- package/three/src/objects/Group.d.ts +16 -16
- package/three/src/objects/InstancedMesh.d.ts +151 -155
- package/three/src/objects/LOD.d.ts +66 -66
- package/three/src/objects/Line.d.ts +51 -55
- package/three/src/objects/LineLoop.d.ts +22 -26
- package/three/src/objects/LineSegments.d.ts +24 -28
- package/three/src/objects/Mesh.d.ts +57 -61
- package/three/src/objects/Points.d.ts +53 -57
- package/three/src/objects/Skeleton.d.ts +90 -90
- package/three/src/objects/SkinnedMesh.d.ts +111 -115
- package/three/src/objects/Sprite.d.ts +41 -41
- package/three/src/renderers/WebGL3DRenderTarget.d.ts +20 -20
- package/three/src/renderers/WebGLArrayRenderTarget.d.ts +20 -20
- package/three/src/renderers/WebGLCubeRenderTarget.d.ts +11 -11
- package/three/src/renderers/WebGLRenderTarget.d.ts +4 -4
- package/three/src/renderers/WebGLRenderer.d.ts +497 -543
- package/three/src/renderers/common/Animation.d.ts +10 -10
- package/three/src/renderers/common/Attributes.d.ts +16 -16
- package/three/src/renderers/common/Backend.d.ts +9 -9
- package/three/src/renderers/common/Background.d.ts +17 -17
- package/three/src/renderers/common/BindGroup.d.ts +6 -6
- package/three/src/renderers/common/Binding.d.ts +5 -5
- package/three/src/renderers/common/Bindings.d.ts +29 -36
- package/three/src/renderers/common/Buffer.d.ts +8 -8
- package/three/src/renderers/common/ChainMap.d.ts +5 -5
- package/three/src/renderers/common/ClippingContext.d.ts +20 -20
- package/three/src/renderers/common/Color4.d.ts +7 -7
- package/three/src/renderers/common/ComputePipeline.d.ts +5 -5
- package/three/src/renderers/common/Constants.d.ts +3 -3
- package/three/src/renderers/common/CubeRenderTarget.d.ts +7 -7
- package/three/src/renderers/common/DataMap.d.ts +26 -16
- package/three/src/renderers/common/Geometries.d.ts +25 -25
- package/three/src/renderers/common/Info.d.ts +31 -31
- package/three/src/renderers/common/Pipeline.d.ts +3 -3
- package/three/src/renderers/common/Pipelines.d.ts +45 -60
- package/three/src/renderers/common/PostProcessing.d.ts +10 -10
- package/three/src/renderers/common/ProgrammableStage.d.ts +7 -12
- package/three/src/renderers/common/QuadMesh.d.ts +8 -8
- package/three/src/renderers/common/RenderBundle.d.ts +6 -6
- package/three/src/renderers/common/RenderBundles.d.ts +8 -8
- package/three/src/renderers/common/RenderContext.d.ts +38 -38
- package/three/src/renderers/common/RenderContexts.d.ts +12 -12
- package/three/src/renderers/common/RenderList.d.ts +35 -59
- package/three/src/renderers/common/RenderLists.d.ts +8 -8
- package/three/src/renderers/common/RenderObject.d.ts +59 -74
- package/three/src/renderers/common/RenderObjects.d.ts +28 -59
- package/three/src/renderers/common/RenderPipeline.d.ts +5 -5
- package/three/src/renderers/common/Renderer.d.ts +178 -272
- package/three/src/renderers/common/SampledTexture.d.ts +13 -13
- package/three/src/renderers/common/Sampler.d.ts +6 -6
- package/three/src/renderers/common/StorageBufferAttribute.d.ts +3 -3
- package/three/src/renderers/common/StorageInstancedBufferAttribute.d.ts +4 -4
- package/three/src/renderers/common/StorageTexture.d.ts +2 -2
- package/three/src/renderers/common/Textures.d.ts +53 -53
- package/three/src/renderers/common/Uniform.d.ts +28 -28
- package/three/src/renderers/common/UniformBuffer.d.ts +3 -3
- package/three/src/renderers/common/UniformsGroup.d.ts +20 -29
- package/three/src/renderers/common/extras/PMREMGenerator.d.ts +5 -5
- package/three/src/renderers/common/nodes/NodeBuilderState.d.ts +16 -27
- package/three/src/renderers/common/nodes/NodeSampledTexture.d.ts +12 -17
- package/three/src/renderers/common/nodes/NodeSampler.d.ts +7 -7
- package/three/src/renderers/common/nodes/NodeUniform.d.ts +31 -54
- package/three/src/renderers/common/nodes/NodeUniformsGroup.d.ts +7 -7
- package/three/src/renderers/common/nodes/Nodes.d.ts +86 -96
- package/three/src/renderers/shaders/ShaderChunk.d.ts +139 -139
- package/three/src/renderers/shaders/ShaderLib.d.ts +21 -21
- package/three/src/renderers/shaders/UniformsLib.d.ts +182 -182
- package/three/src/renderers/shaders/UniformsUtils.d.ts +4 -4
- package/three/src/renderers/webgl/WebGLAttributes.d.ts +15 -15
- package/three/src/renderers/webgl/WebGLBindingStates.d.ts +16 -22
- package/three/src/renderers/webgl/WebGLBufferRenderer.d.ts +8 -17
- package/three/src/renderers/webgl/WebGLCapabilities.d.ts +21 -21
- package/three/src/renderers/webgl/WebGLClipping.d.ts +19 -19
- package/three/src/renderers/webgl/WebGLCubeMaps.d.ts +4 -4
- package/three/src/renderers/webgl/WebGLCubeUVMaps.d.ts +5 -5
- package/three/src/renderers/webgl/WebGLExtensions.d.ts +4 -4
- package/three/src/renderers/webgl/WebGLGeometries.d.ts +9 -9
- package/three/src/renderers/webgl/WebGLIndexedBufferRenderer.d.ts +7 -12
- package/three/src/renderers/webgl/WebGLInfo.d.ts +29 -29
- package/three/src/renderers/webgl/WebGLLights.d.ts +41 -41
- package/three/src/renderers/webgl/WebGLObjects.d.ts +3 -3
- package/three/src/renderers/webgl/WebGLProgram.d.ts +24 -24
- package/three/src/renderers/webgl/WebGLPrograms.d.ts +156 -177
- package/three/src/renderers/webgl/WebGLProperties.d.ts +5 -5
- package/three/src/renderers/webgl/WebGLRenderLists.d.ts +42 -56
- package/three/src/renderers/webgl/WebGLShadowMap.d.ts +29 -29
- package/three/src/renderers/webgl/WebGLState.d.ts +54 -99
- package/three/src/renderers/webgl/WebGLTextures.d.ts +18 -26
- package/three/src/renderers/webgl/WebGLUniforms.d.ts +7 -7
- package/three/src/renderers/webgl/WebGLUniformsGroups.d.ts +12 -12
- package/three/src/renderers/webgl/WebGLUtils.d.ts +4 -7
- package/three/src/renderers/webgl-fallback/WebGLBackend.d.ts +6 -6
- package/three/src/renderers/webgpu/WebGPUBackend.d.ts +11 -11
- package/three/src/renderers/webgpu/WebGPURenderer.d.ts +4 -4
- package/three/src/renderers/webgpu/nodes/WGSLNodeBuilder.d.ts +57 -107
- package/three/src/renderers/webgpu/nodes/WGSLNodeFunction.d.ts +3 -3
- package/three/src/renderers/webgpu/nodes/WGSLNodeParser.d.ts +3 -3
- package/three/src/renderers/webgpu/utils/WebGPUConstants.d.ts +257 -257
- package/three/src/renderers/webxr/WebXRController.d.ts +36 -36
- package/three/src/renderers/webxr/WebXRDepthSensing.d.ts +13 -13
- package/three/src/renderers/webxr/WebXRManager.d.ts +50 -50
- package/three/src/scenes/Fog.d.ts +54 -54
- package/three/src/scenes/FogExp2.d.ts +43 -43
- package/three/src/scenes/Scene.d.ts +98 -98
- package/three/src/textures/CanvasTexture.d.ts +21 -38
- package/three/src/textures/CompressedArrayTexture.d.ts +45 -52
- package/three/src/textures/CompressedCubeTexture.d.ts +5 -9
- package/three/src/textures/CompressedTexture.d.ts +56 -77
- package/three/src/textures/CubeTexture.d.ts +55 -63
- package/three/src/textures/Data3DTexture.d.ts +53 -53
- package/three/src/textures/DataArrayTexture.d.ts +76 -76
- package/three/src/textures/DataTexture.d.ts +55 -76
- package/three/src/textures/DepthTexture.d.ts +67 -86
- package/three/src/textures/FramebufferTexture.d.ts +29 -29
- package/three/src/textures/Source.d.ts +55 -55
- package/three/src/textures/Texture.d.ts +407 -439
- package/three/src/textures/VideoTexture.d.ts +45 -62
- package/three/src/textures/types.d.ts +4 -4
- package/three/three.webgpu.d.ts +1 -1
- package/three.webgpu.d.ts +1 -1
|
@@ -4,29 +4,27 @@
|
|
|
4
4
|
* @see {@link https://github.com/mrdoob/three.js/blob/master/src/extras/ImageUtils.js | Source}
|
|
5
5
|
*/
|
|
6
6
|
declare class ImageUtils {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
image: HTMLImageElement | HTMLCanvasElement | CanvasImageSource | ImageBitmap | ImageData,
|
|
13
|
-
): string;
|
|
7
|
+
/**
|
|
8
|
+
* Returns a data URI containing a representation of the given image.
|
|
9
|
+
* @param image The image object.
|
|
10
|
+
*/
|
|
11
|
+
static getDataURL(image: HTMLImageElement | HTMLCanvasElement | CanvasImageSource | ImageBitmap | ImageData): string;
|
|
14
12
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
13
|
+
/**
|
|
14
|
+
* Converts the given sRGB image data to linear color space.
|
|
15
|
+
* @param image
|
|
16
|
+
*/
|
|
17
|
+
static sRGBToLinear(image: HTMLImageElement | HTMLCanvasElement | ImageBitmap): HTMLCanvasElement;
|
|
20
18
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
19
|
+
/**
|
|
20
|
+
* Converts the given sRGB image data to linear color space.
|
|
21
|
+
* @param image
|
|
22
|
+
*/
|
|
23
|
+
static sRGBToLinear(image: ImageData): {
|
|
24
|
+
data: ImageData['data'];
|
|
25
|
+
width: ImageData['width'];
|
|
26
|
+
height: ImageData['height'];
|
|
27
|
+
};
|
|
30
28
|
}
|
|
31
29
|
|
|
32
30
|
export { ImageUtils };
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { WebGLRenderer } from
|
|
2
|
-
import { WebGLRenderTarget } from
|
|
3
|
-
import { Scene } from
|
|
4
|
-
import { CubeTexture } from
|
|
5
|
-
import { Texture } from
|
|
1
|
+
import { WebGLRenderer } from '../renderers/WebGLRenderer.js';
|
|
2
|
+
import { WebGLRenderTarget } from '../renderers/WebGLRenderTarget.js';
|
|
3
|
+
import { Scene } from '../scenes/Scene.js';
|
|
4
|
+
import { CubeTexture } from '../textures/CubeTexture.js';
|
|
5
|
+
import { Texture } from '../textures/Texture.js';
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* This class generates a Prefiltered, Mipmapped Radiance Environment Map (PMREM) from a cubeMap environment texture.
|
|
@@ -29,54 +29,54 @@ import { Texture } from "../textures/Texture.js";
|
|
|
29
29
|
* @see {@link https://github.com/mrdoob/three.js/blob/master/src/extras/PMREMGenerator.js | Source}
|
|
30
30
|
*/
|
|
31
31
|
export class PMREMGenerator {
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
32
|
+
/**
|
|
33
|
+
* This constructor creates a new PMREMGenerator.
|
|
34
|
+
* @param renderer
|
|
35
|
+
*/
|
|
36
|
+
constructor(renderer: WebGLRenderer);
|
|
37
37
|
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
38
|
+
/**
|
|
39
|
+
* Generates a PMREM from a supplied Scene, which can be faster than using an image if networking bandwidth is low
|
|
40
|
+
* @remarks
|
|
41
|
+
* Optional near and far planes ensure the scene is rendered in its entirety (the cubeCamera is placed at the origin).
|
|
42
|
+
* @param scene The given scene.
|
|
43
|
+
* @param sigma Specifies a blur radius in radians to be applied to the scene before PMREM generation. Default `0`.
|
|
44
|
+
* @param near The near plane value. Default `0.1`.
|
|
45
|
+
* @param far The far plane value. Default `100`.
|
|
46
|
+
*/
|
|
47
|
+
fromScene(scene: Scene, sigma?: number, near?: number, far?: number): WebGLRenderTarget;
|
|
48
48
|
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
49
|
+
/**
|
|
50
|
+
* Generates a PMREM from an equirectangular texture, which can be either LDR or HDR. The ideal input image size is
|
|
51
|
+
* 1k (1024 x 512), as this matches best with the 256 x 256 cubemap output. The smallest supported equirectangular
|
|
52
|
+
* image size is 64 x 32.
|
|
53
|
+
*/
|
|
54
|
+
fromEquirectangular(equirectangular: Texture, renderTarget?: WebGLRenderTarget | null): WebGLRenderTarget;
|
|
55
55
|
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
56
|
+
/**
|
|
57
|
+
* Generates a PMREM from an cubemap texture, which can be either LDR or HDR. The ideal input cube size is
|
|
58
|
+
* 256 x 256, as this matches best with the 256 x 256 cubemap output. The smallest supported cube size is 16 x 16.
|
|
59
|
+
*/
|
|
60
|
+
fromCubemap(cubemap: CubeTexture, renderTarget?: WebGLRenderTarget | null): WebGLRenderTarget;
|
|
61
61
|
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
62
|
+
/**
|
|
63
|
+
* Pre-compiles the cubemap shader
|
|
64
|
+
* @remarks
|
|
65
|
+
* You can get faster start-up by invoking this method during your texture's network fetch for increased concurrency.
|
|
66
|
+
*/
|
|
67
|
+
compileCubemapShader(): void;
|
|
68
68
|
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
69
|
+
/**
|
|
70
|
+
* Pre-compiles the equirectangular shader
|
|
71
|
+
* @remarks
|
|
72
|
+
* You can get faster start-up by invoking this method during your texture's network fetch for increased concurrency.
|
|
73
|
+
*/
|
|
74
|
+
compileEquirectangularShader(): void;
|
|
75
75
|
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
76
|
+
/**
|
|
77
|
+
* Frees the GPU-related resources allocated by this instance
|
|
78
|
+
* @remarks
|
|
79
|
+
* Call this method whenever this instance is no longer used in your app.
|
|
80
|
+
*/
|
|
81
|
+
dispose(): void;
|
|
82
82
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Vector2Like } from
|
|
1
|
+
import { Vector2Like } from '../math/Vector2.js';
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
4
|
* A class containing utility functions for shapes.
|
|
@@ -7,19 +7,19 @@ import { Vector2Like } from "../math/Vector2.js";
|
|
|
7
7
|
* @see {@link https://github.com/mrdoob/three.js/blob/master/src/extras/ShapeUtils.js | Source}
|
|
8
8
|
*/
|
|
9
9
|
export class ShapeUtils {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
10
|
+
/**
|
|
11
|
+
* Calculate area of a ( 2D ) contour polygon.
|
|
12
|
+
*/
|
|
13
|
+
static area(contour: readonly Vector2Like[]): number;
|
|
14
14
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
15
|
+
/**
|
|
16
|
+
* Note that this is a linear function so it is necessary to calculate separately for x, y components of a polygon.
|
|
17
|
+
* @remarks Used internally by {@link THREE.Path | Path}, {@link THREE.ExtrudeGeometry | ExtrudeGeometry} and {@link THREE.ShapeGeometry | ShapeGeometry}.
|
|
18
|
+
*/
|
|
19
|
+
static isClockWise(pts: readonly Vector2Like[]): boolean;
|
|
20
20
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
21
|
+
/**
|
|
22
|
+
* Used internally by {@link THREE.ExtrudeGeometry | ExtrudeGeometry} and {@link THREE.ShapeGeometry | ShapeGeometry} to calculate faces in shapes with holes.
|
|
23
|
+
*/
|
|
24
|
+
static triangulateShape(contour: Vector2Like[], holes: Vector2Like[][]): number[][];
|
|
25
25
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { CompressedPixelFormat, PixelFormat, TextureDataType } from
|
|
2
|
-
import { Texture } from
|
|
1
|
+
import { CompressedPixelFormat, PixelFormat, TextureDataType } from '../constants.js';
|
|
2
|
+
import { Texture } from '../textures/Texture.js';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* Scales the texture as large as possible within its surface without cropping or stretching the texture. The method
|
|
@@ -22,21 +22,16 @@ declare function fill(texture: Texture): Texture;
|
|
|
22
22
|
* Given the width, height, format, and type of a texture. Determines how many bytes must be used to represent the
|
|
23
23
|
* texture.
|
|
24
24
|
*/
|
|
25
|
-
declare function getByteLength(
|
|
26
|
-
width: number,
|
|
27
|
-
height: number,
|
|
28
|
-
format: PixelFormat | CompressedPixelFormat,
|
|
29
|
-
type: TextureDataType,
|
|
30
|
-
): number;
|
|
25
|
+
declare function getByteLength(width: number, height: number, format: PixelFormat | CompressedPixelFormat, type: TextureDataType): number;
|
|
31
26
|
|
|
32
27
|
/**
|
|
33
28
|
* A class containing utility functions for textures.
|
|
34
29
|
*/
|
|
35
30
|
declare const TextureUtils: {
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
31
|
+
contain: typeof contain;
|
|
32
|
+
cover: typeof cover;
|
|
33
|
+
fill: typeof fill;
|
|
34
|
+
getByteLength: typeof getByteLength;
|
|
40
35
|
};
|
|
41
36
|
|
|
42
37
|
export { contain, cover, fill, getByteLength, TextureUtils };
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { Vector2 } from
|
|
2
|
-
import { Vector3 } from
|
|
1
|
+
import { Vector2 } from '../../math/Vector2.js';
|
|
2
|
+
import { Vector3 } from '../../math/Vector3.js';
|
|
3
3
|
|
|
4
4
|
export interface CurveJSON {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
metadata: { version: number; type: string; generator: string };
|
|
6
|
+
arcLengthDivisions: number;
|
|
7
|
+
type: string;
|
|
8
8
|
}
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -32,131 +32,131 @@ export interface CurveJSON {
|
|
|
32
32
|
* @see {@link https://github.com/mrdoob/three.js/blob/master/src/extras/core/Curve.js | Source}
|
|
33
33
|
*/
|
|
34
34
|
export abstract class Curve<TVector extends Vector2 | Vector3> {
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
35
|
+
protected constructor();
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* A Read-only _string_ to check if `this` object type.
|
|
39
|
+
* @remarks Sub-classes will update this value.
|
|
40
|
+
* @defaultValue `Curve`
|
|
41
|
+
*/
|
|
42
|
+
readonly type: string | 'Curve';
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* This value determines the amount of divisions when calculating the cumulative segment lengths of a {@link Curve}
|
|
46
|
+
* via {@link .getLengths}.
|
|
47
|
+
* To ensure precision when using methods like {@link .getSpacedPoints}, it is recommended to increase {@link .arcLengthDivisions} if the {@link Curve} is very large.
|
|
48
|
+
* @defaultValue `200`
|
|
49
|
+
* @remarks Expects a `Integer`
|
|
50
|
+
*/
|
|
51
|
+
arcLengthDivisions: number;
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* Returns a vector for a given position on the curve.
|
|
55
|
+
* @param t A position on the curve. Must be in the range `[ 0, 1 ]`. Expects a `Float`
|
|
56
|
+
* @param optionalTarget If specified, the result will be copied into this Vector, otherwise a new Vector will be created. Default `new T`.
|
|
57
|
+
*/
|
|
58
|
+
getPoint(t: number, optionalTarget?: TVector): TVector;
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* Returns a vector for a given position on the {@link Curve} according to the arc length.
|
|
62
|
+
* @param u A position on the {@link Curve} according to the arc length. Must be in the range `[ 0, 1 ]`. Expects a `Float`
|
|
63
|
+
* @param optionalTarget If specified, the result will be copied into this Vector, otherwise a new Vector will be created. Default `new T`.
|
|
64
|
+
*/
|
|
65
|
+
getPointAt(u: number, optionalTarget?: TVector): TVector;
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* Returns a set of divisions `+1` points using {@link .getPoint | getPoint(t)}.
|
|
69
|
+
* @param divisions Number of pieces to divide the {@link Curve} into. Expects a `Integer`. Default `5`
|
|
70
|
+
*/
|
|
71
|
+
getPoints(divisions?: number): TVector[];
|
|
72
|
+
|
|
73
|
+
/**
|
|
74
|
+
* Returns a set of divisions `+1` equi-spaced points using {@link .getPointAt | getPointAt(u)}.
|
|
75
|
+
* @param divisions Number of pieces to divide the {@link Curve} into. Expects a `Integer`. Default `5`
|
|
76
|
+
*/
|
|
77
|
+
getSpacedPoints(divisions?: number): TVector[];
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* Get total {@link Curve} arc length.
|
|
81
|
+
*/
|
|
82
|
+
getLength(): number;
|
|
83
|
+
|
|
84
|
+
/**
|
|
85
|
+
* Get list of cumulative segment lengths.
|
|
86
|
+
* @param divisions Expects a `Integer`
|
|
87
|
+
*/
|
|
88
|
+
getLengths(divisions?: number): number[];
|
|
89
|
+
|
|
90
|
+
/**
|
|
91
|
+
* Update the cumulative segment distance cache
|
|
92
|
+
* @remarks
|
|
93
|
+
* The method must be called every time {@link Curve} parameters are changed
|
|
94
|
+
* If an updated {@link Curve} is part of a composed {@link Curve} like {@link THREE.CurvePath | CurvePath},
|
|
95
|
+
* {@link .updateArcLengths}() must be called on the composed curve, too.
|
|
96
|
+
*/
|
|
97
|
+
updateArcLengths(): void;
|
|
98
|
+
|
|
99
|
+
/**
|
|
100
|
+
* Given u in the range `[ 0, 1 ]`,
|
|
101
|
+
* @remarks
|
|
102
|
+
* `u` and `t` can then be used to give you points which are equidistant from the ends of the curve, using {@link .getPoint}.
|
|
103
|
+
* @param u Expects a `Float`
|
|
104
|
+
* @param distance Expects a `Float`
|
|
105
|
+
* @returns `t` also in the range `[ 0, 1 ]`. Expects a `Float`.
|
|
106
|
+
*/
|
|
107
|
+
getUtoTmapping(u: number, distance: number): number;
|
|
108
|
+
|
|
109
|
+
/**
|
|
110
|
+
* Returns a unit vector tangent at t
|
|
111
|
+
* @remarks
|
|
112
|
+
* If the derived {@link Curve} does not implement its tangent derivation, two points a small delta apart will be used to find its gradient which seems to give a reasonable approximation.
|
|
113
|
+
* @param t A position on the curve. Must be in the range `[ 0, 1 ]`. Expects a `Float`
|
|
114
|
+
* @param optionalTarget If specified, the result will be copied into this Vector, otherwise a new Vector will be created.
|
|
115
|
+
*/
|
|
116
|
+
getTangent(t: number, optionalTarget?: TVector): TVector;
|
|
117
|
+
|
|
118
|
+
/**
|
|
119
|
+
* Returns tangent at a point which is equidistant to the ends of the {@link Curve} from the point given in {@link .getTangent}.
|
|
120
|
+
* @param u A position on the {@link Curve} according to the arc length. Must be in the range `[ 0, 1 ]`. Expects a `Float`
|
|
121
|
+
* @param optionalTarget If specified, the result will be copied into this Vector, otherwise a new Vector will be created.
|
|
122
|
+
*/
|
|
123
|
+
getTangentAt(u: number, optionalTarget?: TVector): TVector;
|
|
124
|
+
|
|
125
|
+
/**
|
|
126
|
+
* Generates the Frenet Frames
|
|
127
|
+
* @remarks
|
|
128
|
+
* Requires a {@link Curve} definition in 3D space
|
|
129
|
+
* Used in geometries like {@link THREE.TubeGeometry | TubeGeometry} or {@link THREE.ExtrudeGeometry | ExtrudeGeometry}.
|
|
130
|
+
* @param segments Expects a `Integer`
|
|
131
|
+
* @param closed
|
|
132
|
+
*/
|
|
133
|
+
computeFrenetFrames(
|
|
134
|
+
segments: number,
|
|
135
|
+
closed?: boolean
|
|
136
|
+
): {
|
|
137
|
+
tangents: Vector3[];
|
|
138
|
+
normals: Vector3[];
|
|
139
|
+
binormals: Vector3[];
|
|
140
|
+
};
|
|
141
|
+
|
|
142
|
+
/**
|
|
143
|
+
* Creates a clone of this instance.
|
|
144
|
+
*/
|
|
145
|
+
clone(): this;
|
|
146
|
+
/**
|
|
147
|
+
* Copies another {@link Curve} object to this instance.
|
|
148
|
+
* @param source
|
|
149
|
+
*/
|
|
150
|
+
copy(source: Curve<TVector>): this;
|
|
151
|
+
|
|
152
|
+
/**
|
|
153
|
+
* Returns a JSON object representation of this instance.
|
|
154
|
+
*/
|
|
155
|
+
toJSON(): CurveJSON;
|
|
156
|
+
|
|
157
|
+
/**
|
|
158
|
+
* Copies the data from the given JSON object to this instance.
|
|
159
|
+
* @param json
|
|
160
|
+
*/
|
|
161
|
+
fromJSON(json: CurveJSON): this;
|
|
162
162
|
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { Vector2 } from
|
|
2
|
-
import { Vector3 } from
|
|
3
|
-
import { Curve, CurveJSON } from
|
|
1
|
+
import { Vector2 } from '../../math/Vector2.js';
|
|
2
|
+
import { Vector3 } from '../../math/Vector3.js';
|
|
3
|
+
import { Curve, CurveJSON } from './Curve.js';
|
|
4
4
|
|
|
5
5
|
export interface CurvePathJSON extends CurveJSON {
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
autoClose: boolean;
|
|
7
|
+
curves: CurveJSON[];
|
|
8
8
|
}
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -15,63 +15,63 @@ export interface CurvePathJSON extends CurveJSON {
|
|
|
15
15
|
* @see {@link https://github.com/mrdoob/three.js/blob/master/src/extras/core/CurvePath.js | Source}
|
|
16
16
|
*/
|
|
17
17
|
export class CurvePath<TVector extends Vector2 | Vector3> extends Curve<TVector> {
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
18
|
+
/**
|
|
19
|
+
* The constructor take no parameters.
|
|
20
|
+
*/
|
|
21
|
+
constructor();
|
|
22
22
|
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
23
|
+
/**
|
|
24
|
+
* A Read-only _string_ to check if `this` object type.
|
|
25
|
+
* @remarks Sub-classes will update this value.
|
|
26
|
+
* @defaultValue `CurvePath`
|
|
27
|
+
*/
|
|
28
|
+
override readonly type: string | 'CurvePath';
|
|
29
29
|
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
30
|
+
/**
|
|
31
|
+
* The array of {@link Curve | Curves}.
|
|
32
|
+
* @defaultValue `[]`
|
|
33
|
+
*/
|
|
34
|
+
curves: Array<Curve<TVector>>;
|
|
35
35
|
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
36
|
+
/**
|
|
37
|
+
* Whether or not to automatically close the path.
|
|
38
|
+
* @defaultValue false
|
|
39
|
+
*/
|
|
40
|
+
autoClose: boolean;
|
|
41
41
|
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
42
|
+
/**
|
|
43
|
+
* Add a curve to the {@link .curves} array.
|
|
44
|
+
* @param curve
|
|
45
|
+
*/
|
|
46
|
+
add(curve: Curve<TVector>): void;
|
|
47
|
+
/**
|
|
48
|
+
* Adds a {@link LineCurve | lineCurve} to close the path.
|
|
49
|
+
*/
|
|
50
|
+
closePath(): this;
|
|
51
51
|
|
|
52
|
-
|
|
52
|
+
getPoint(t: number, optionalTarget?: TVector): TVector;
|
|
53
53
|
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
54
|
+
/**
|
|
55
|
+
* Get list of cumulative curve lengths of the curves in the {@link .curves} array.
|
|
56
|
+
*/
|
|
57
|
+
getCurveLengths(): number[];
|
|
58
58
|
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
59
|
+
/**
|
|
60
|
+
* Returns an array of points representing a sequence of curves
|
|
61
|
+
* @remarks
|
|
62
|
+
* The `division` parameter defines the number of pieces each curve is divided into
|
|
63
|
+
* However, for optimization and quality purposes, the actual sampling resolution for each curve depends on its type
|
|
64
|
+
* For example, for a {@link THREE.LineCurve | LineCurve}, the returned number of points is always just 2.
|
|
65
|
+
* @param divisions Number of pieces to divide the curve into. Expects a `Integer`. Default `12`
|
|
66
|
+
*/
|
|
67
|
+
override getPoints(divisions?: number): TVector[];
|
|
68
68
|
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
69
|
+
/**
|
|
70
|
+
* Returns a set of divisions `+1` equi-spaced points using {@link .getPointAt | getPointAt(u)}.
|
|
71
|
+
* @param divisions Number of pieces to divide the curve into. Expects a `Integer`. Default `40`
|
|
72
|
+
*/
|
|
73
|
+
override getSpacedPoints(divisions?: number): TVector[];
|
|
74
74
|
|
|
75
|
-
|
|
76
|
-
|
|
75
|
+
toJSON(): CurvePathJSON;
|
|
76
|
+
fromJSON(json: CurvePathJSON): this;
|
|
77
77
|
}
|