[FEAT] Tuple: add operator + and -
This commit is contained in:
@@ -69,7 +69,7 @@ TEST_CASE("Point() creates tuples with w=1", "[Tuple][Point]")
|
||||
{
|
||||
Tuple p = Tuple::Point(4, -4, 3);
|
||||
|
||||
REQUIRE(p == Tuple(4, -4, 3, kRaytracerTuplePoint));
|
||||
REQUIRE(p == Tuple(4, -4, 3, 1));
|
||||
}
|
||||
|
||||
/* ------------------------------------------------------------------------- */
|
||||
@@ -78,5 +78,45 @@ TEST_CASE("Vector() creates tuples with w=0", "[Tuple][Vector]")
|
||||
{
|
||||
Tuple v = Tuple::Vector(4, -4, 3);
|
||||
|
||||
REQUIRE(v == Tuple(4, -4, 3, kRaytracerTupleVector));
|
||||
REQUIRE(v == Tuple(4, -4, 3, 0));
|
||||
}
|
||||
|
||||
/* ------------------------------------------------------------------------- */
|
||||
|
||||
TEST_CASE("Adding two tuples", "[Tuple][Operations]")
|
||||
{
|
||||
Tuple a1(3, -2, 5, 1);
|
||||
Tuple a2(-2, 3, 1, 0);
|
||||
|
||||
REQUIRE((a1 + a2) == Tuple(1, 1, 6, 1));
|
||||
}
|
||||
|
||||
/* ------------------------------------------------------------------------- */
|
||||
|
||||
TEST_CASE("Subtracting two points", "[Tuple][Operations]")
|
||||
{
|
||||
Tuple p1 = Tuple::Point(3, 2, 1);
|
||||
Tuple p2 = Tuple::Point(5, 6, 7);
|
||||
|
||||
REQUIRE((p1 - p2) == Tuple::Vector(-2, -4, -6));
|
||||
}
|
||||
|
||||
/* ------------------------------------------------------------------------- */
|
||||
|
||||
TEST_CASE("Subtracting a vector from a point", "[Tuple][Operations]")
|
||||
{
|
||||
Tuple p = Tuple::Point(3, 2, 1);
|
||||
Tuple v= Tuple::Vector(5, 6, 7);
|
||||
|
||||
REQUIRE((p - v) == Tuple::Point(-2, -4, -6));
|
||||
}
|
||||
|
||||
/* ------------------------------------------------------------------------- */
|
||||
|
||||
TEST_CASE("Subtracting two vectors", "[Tuple][Operations]")
|
||||
{
|
||||
Tuple v1 = Tuple::Vector(3, 2, 1);
|
||||
Tuple v2 = Tuple::Vector(5, 6, 7);
|
||||
|
||||
REQUIRE((v1 - v2) == Tuple::Vector(-2, -4, -6));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user