@@ -108,60 +108,6 @@ TEST(GetBarycentricCoordinatesTest, DegenerateTriangle) {
108108 Eq (std::nullopt ));
109109}
110110
111- TEST (SpiralLerpTest, NonZeroInputVectorsWithDifferentDirections) {
112- EXPECT_THAT (SpiralLerp ({4 , 0 }, {0 , 5 }, -5 ), VecNear ({0 , 1 }, 0.001 ));
113- EXPECT_THAT (SpiralLerp ({4 , 0 }, {0 , 5 }, -4 ), VecNear ({0 , 0 }, 0.001 ));
114- EXPECT_THAT (SpiralLerp ({4 , 0 }, {0 , 5 }, -1 ), VecNear ({0 , -3 }, 0.001 ));
115- EXPECT_THAT (SpiralLerp ({4 , 0 }, {0 , 5 }, 0 ), VecEq ({4 , 0 }));
116- EXPECT_THAT (
117- SpiralLerp ({4 , 0 }, {0 , 5 }, 0.5 ),
118- VecNear (Vec::FromDirectionAndMagnitude (kFullTurn / 8 , 4.5 ), 0.001 ));
119- EXPECT_THAT (SpiralLerp ({4 , 0 }, {0 , 5 }, 1 ), VecEq ({0 , 5 }));
120- EXPECT_THAT (SpiralLerp ({4 , 0 }, {0 , 5 }, 3 ), VecNear ({0 , -7 }, 0.001 ));
121-
122- EXPECT_THAT (SpiralLerp ({4 , 0 }, {0 , -3 }, -1 ), VecNear ({0 , 5 }, 0.001 ));
123- EXPECT_THAT (SpiralLerp ({4 , 0 }, {0 , -3 }, 0 ), VecEq ({4 , 0 }));
124- EXPECT_THAT (
125- SpiralLerp ({4 , 0 }, {0 , -3 }, 0.5 ),
126- VecNear (Vec::FromDirectionAndMagnitude (-kFullTurn / 8 , 3.5 ), 0.001 ));
127- EXPECT_THAT (SpiralLerp ({4 , 0 }, {0 , -3 }, 1 ), VecEq ({0 , -3 }));
128- EXPECT_THAT (SpiralLerp ({4 , 0 }, {0 , -3 }, 4 ), VecNear ({0 , 0 }, 0.001 ));
129- EXPECT_THAT (SpiralLerp ({4 , 0 }, {0 , -3 }, 5 ), VecNear ({0 , 1 }, 0.001 ));
130- }
131-
132- TEST (SpiralLerpTest, NonZeroInputVectorsWithSameDirection) {
133- EXPECT_THAT (SpiralLerp ({1 , 1 }, {3 , 3 }, -1 ), VecNear ({-1 , -1 }, 0.001 ));
134- EXPECT_THAT (SpiralLerp ({1 , 1 }, {3 , 3 }, 0 ), VecEq ({1 , 1 }));
135- EXPECT_THAT (SpiralLerp ({1 , 1 }, {3 , 3 }, 0.5 ), VecNear ({2 , 2 }, 0.001 ));
136- EXPECT_THAT (SpiralLerp ({1 , 1 }, {3 , 3 }, 1 ), VecEq ({3 , 3 }));
137- EXPECT_THAT (SpiralLerp ({1 , 1 }, {3 , 3 }, 2 ), VecNear ({5 , 5 }, 0.001 ));
138- }
139-
140- TEST (SpiralLerpTest, ZeroInputVectors) {
141- // Note that the "direction" of (0, 0) is toward the positive x-axis as given
142- // by IEEE atan2.
143-
144- EXPECT_THAT (SpiralLerp ({0 , 0 }, {0 , 2 }, -1 ), VecNear ({0 , 2 }, 0.001 ));
145- EXPECT_THAT (SpiralLerp ({0 , 0 }, {0 , 2 }, 0 ), VecEq ({0 , 0 }));
146- EXPECT_THAT (
147- SpiralLerp ({0 , 0 }, {0 , 2 }, 0.75 ),
148- VecNear (Vec::FromDirectionAndMagnitude (3 * kFullTurn / 16 , 1.5 ), 0.001 ));
149- EXPECT_THAT (SpiralLerp ({0 , 0 }, {0 , 2 }, 1 ), VecEq ({0 , 2 }));
150- EXPECT_THAT (SpiralLerp ({0 , 0 }, {0 , 2 }, 2 ), VecNear ({-4 , 0 }, 0.001 ));
151-
152- EXPECT_THAT (SpiralLerp ({-3 , 0 }, {0 , 0 }, -1 ), VecNear ({6 , 0 }, 0.001 ));
153- EXPECT_THAT (SpiralLerp ({-3 , 0 }, {0 , 0 }, 0 ), VecEq ({-3 , 0 }));
154- EXPECT_THAT (SpiralLerp ({-3 , 0 }, {0 , 0 }, 0.5 ), VecNear ({0 , -1.5 }, 0.001 ));
155- EXPECT_THAT (SpiralLerp ({-3 , 0 }, {0 , 0 }, 1 ), VecEq ({0 , 0 }));
156- EXPECT_THAT (SpiralLerp ({-3 , 0 }, {0 , 0 }, 2 ), VecNear ({3 , 0 }, 0.001 ));
157-
158- EXPECT_THAT (SpiralLerp ({0 , 0 }, {0 , 0 }, -1 ), VecEq ({0 , 0 }));
159- EXPECT_THAT (SpiralLerp ({0 , 0 }, {0 , 0 }, 0 ), VecEq ({0 , 0 }));
160- EXPECT_THAT (SpiralLerp ({0 , 0 }, {0 , 0 }, 0.2 ), VecEq ({0 , 0 }));
161- EXPECT_THAT (SpiralLerp ({0 , 0 }, {0 , 0 }, 1 ), VecEq ({0 , 0 }));
162- EXPECT_THAT (SpiralLerp ({0 , 0 }, {0 , 0 }, 2 ), VecEq ({0 , 0 }));
163- }
164-
165111TEST (CalculateEnvelopeTest, EmptyMesh) {
166112 MutableMesh mesh;
167113 EXPECT_TRUE (CalculateEnvelope (mesh).IsEmpty ());
0 commit comments