Click or drag to resize
DigitalRuneHermiteSegment3F Class
Defines a single segment of a 3-dimensional cubic Hermite spline (single-precision).
Inheritance Hierarchy
SystemObject
  DigitalRune.Mathematics.InterpolationHermiteSegment3F

Namespace: DigitalRune.Mathematics.Interpolation
Assembly: DigitalRune.Mathematics (in DigitalRune.Mathematics.dll) Version: 1.14.0.0 (1.14.0.14427)
Syntax
public class HermiteSegment3F : ICurve<float, Vector3F>, 
	IRecyclable

The HermiteSegment3F type exposes the following members.

Constructors
  NameDescription
Public methodHermiteSegment3F
Initializes a new instance of the HermiteSegment3F class
Top
Methods
  NameDescription
Public methodStatic memberCreate
Creates an instance of the HermiteSegment3F class. (This method reuses a previously recycled instance or allocates a new instance if necessary.)
Public methodEquals
Determines whether the specified Object is equal to the current Object.
(Inherited from Object.)
Protected methodFinalize
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object.)
Public methodFlatten
Computes the points of a sequence of line segments which approximate the curve.
Public methodGetHashCode
Serves as a hash function for a particular type.
(Inherited from Object.)
Public methodGetLength
Computes the approximated length of the curve for the parameter interval [start, end].
Public methodGetPoint
Computes a point on the curve.
Public methodGetTangent
Computes the tangent for a point on the curve.
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Protected methodMemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Public methodRecycle
Recycles this instance.
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Top
Properties
  NameDescription
Public propertyPoint1
Gets or sets the start point.
Public propertyPoint2
Gets or sets the end point.
Public propertyTangent1
Gets or sets the tangent at Point1.
Public propertyTangent2
Gets or sets the tangent at Point2.
Top
Remarks

A HermiteSegment3F can be used to smoothly interpolate between two points.

The curve runs through the points Point1 and Point2. The tangents at these points can be controlled with Tangent1 and Tangent2. The curve smoothly interpolates between Point1 and Point2.

Multiple splines can be patched together by matching the tangents at the control points.

The curve function point = C(parameter) takes a scalar parameter and returns a point on the curve (see GetPoint(Single)). The curve parameter lies in the interval [0,1]; it is also known as interpolation parameter, interpolation factor or weight of the target point. C(0) returns the start point Point1; C(1) returns the end point Point2.

The curve is defined as:

C(u) = (2u3 - 3u2 + 1) p1 + (u3 - 2u2 + u) t1 + (-2u3 + 3u2) p2 + (u3 - u2) t2,

where u is the interpolation parameter, p are the start/end points and t are the start/end tangents.

See Also