A Bezier curve library for .NET Standard
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Evan Hemsley 3836e95184 switch to DroneCI 1 year ago
Curve remove Core namespace 1 year ago
Test remove Core namespace 1 year ago
.drone.yml switch to DroneCI 1 year ago
.gitignore initial commit 2 years ago
LICENSE include license in repo 2 years ago
MoonTools.Core.Curve.sln initial commit 2 years ago
README.md update README 1 year ago

README.md

MoonTools.Curve

NuGet Badge Build Status

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)