Table of Contents

Interface ICurve3

Namespace
Xui.Core.Curves3D
Assembly
Xui.Core.dll

Defines a parametric curve in 3D space.

public interface ICurve3

Remarks

The parameter t ranges from 0 to 1, where 0 is the start and 1 is the end of the curve.

Properties

this[float]

Evaluates the curve at the given parameter t. Alias for Lerp(float).

Point3 this[float t] { get; }

Parameters

t float

Property Value

Point3

Methods

Length()

Approximates the arc length of the curve using 16 uniform samples.

float Length()

Returns

float

Length(float)

Approximates the arc length of the curve using adaptive subdivision until the error is within precision.

float Length(float precision)

Parameters

precision float

The maximum allowed error per segment.

Returns

float

Lerp(float)

Evaluates the curve at the given parameter t and returns the corresponding point in 3D space.

Point3 Lerp(float t)

Parameters

t float

A normalized parameter in the range [0, 1].

Returns

Point3

Tangent(float)

Returns the tangent (first derivative) vector of the curve at parameter t.

Vector3 Tangent(float t)

Parameters

t float

A normalized parameter in the range [0, 1].

Returns

Vector3