Files
ViewDesignEngine/tests/curves/test_bezier.cpp
T

19 lines
588 B
C++

#include <gtest/gtest.h>
#include "vde/curves/bezier_curve.h"
using namespace vde::curves;
TEST(BezierTest, Linear_EvaluateAtMidpoint) {
BezierCurve curve({Point3D(0,0,0), Point3D(2,0,0)});
Point3D p = curve.evaluate(0.5);
EXPECT_NEAR(p.x(), 1.0, 1e-6);
}
TEST(BezierTest, Quadratic_EvaluateAtEndpoints) {
BezierCurve curve({Point3D(0,0,0), Point3D(1,1,0), Point3D(2,0,0)});
Point3D p0 = curve.evaluate(0.0);
Point3D p1 = curve.evaluate(1.0);
EXPECT_NEAR((p0 - Point3D(0,0,0)).norm(), 0.0, 1e-6);
EXPECT_NEAR((p1 - Point3D(2,0,0)).norm(), 0.0, 1e-6);
}