Evan Hemsley
3836e95184
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/tag Build is passing
Details
|
||
---|---|---|
Curve | ||
Test | ||
.drone.yml | ||
.gitignore | ||
LICENSE | ||
MoonTools.Core.Curve.sln | ||
README.md |
README.md
MoonTools.Curve
Efficiently implements quadratic and cubic Bezier curves in 2D and 3D using immutable structs.
Example
var myCurve = new CubicBezierCurve3D(
new Vector3(-4, -4, -3),
new Vector3(-2, 4, 0),
new Vector3(2, -4, 3),
new Vector3(4, 4, 0)
);
myCurve.Point(0.5f); // => Vector3(0, 0, 0.75f)
myCurve.Point(3, 2, 4); // => Vector3(0, 0, 0.75f)
myCurve.Velocity(0.5f); // => Vector3(9, 0, 4.5f)
myCurve.Velocity(3, 2, 4); // => Vector3(9, 0, 4.5f)
// curve values can be calculated statically as well
CubicBezierCurve3D.Point(
new Vector3(-4, -4, -3),
new Vector3(-2, 4, 0),
new Vector3(2, -4, 3),
new Vector3(4, 4, 0),
0.5f
); // => Vector3(0, 0, 0.75f)