Browse Source

MeshTools: fix the generateQuadIndices() test to be more stable.

pull/650/head
Vladimír Vondruš 2 years ago
parent
commit
134c625f48
  1. 44
      src/Magnum/MeshTools/Test/GenerateIndicesTest.cpp

44
src/Magnum/MeshTools/Test/GenerateIndicesTest.cpp

@ -923,50 +923,54 @@ constexpr Vector3 QuadPositions[] {
-> ABC ACD (trivial case) -> ABC ACD (trivial case)
A B A B
*/ */
{0.0f, 0.0f, 0.0f}, {}, // 0 {0.0f, 0.0f, 0.0f}, {}, // A 0
{1.0f, 0.0f, 0.0f}, // 2 {1.0f, 0.0f, 0.0f}, // B 2
{1.0f, 1.0f, 0.0f}, // 3 {1.0f, 1.0f, 0.0f}, // C 3
{0.0f, 1.0f, 0.0f}, // 4 {0.0f, 1.0f, 0.0f}, // D 4
/* /*
D D
A C -> DAB DBC (shorter diagonal) A C -> DAB DBC (shorter diagonal)
B B
*/ */
{ 0.0f, 0.0f, 1.0f}, // 5 { 0.0f, 0.0f, 1.0f}, // A 5
{ 5.0f, 0.0f, 0.0f}, // 6 { 5.0f, 0.0f, 0.0f}, // B 6
{10.0f, 0.0f, 1.0f}, {}, // 7 {10.0f, 0.0f, 1.0f}, {}, // C 7
{ 5.0f, 0.0f, 2.0f}, // 9 { 5.0f, 0.0f, 2.0f}, // D 9
/* /*
D D
A C -> ABC ACD (concave) A C -> ABC ACD (concave)
B B
*/ */
{0.0f, 0.5f, 0.0f}, // 10 {0.0f, 0.5f, 0.0f}, // A 10
{5.0f, 0.0f, 0.0f}, {}, {}, // 11 {5.0f, 0.0f, 0.0f}, {}, {}, // B 11
{4.0f, 0.5f, 0.0f}, // 14 {4.0f, 0.5f, 0.0f}, // C 14
{5.0f, 1.0f, 0.0f}, // 15 {5.0f, 1.0f, 0.0f}, // D 15
/* /*
C C
D B -> DAB DBC (concave, non-planar) D B -> DAB DBC (concave, non-planar)
A A
*/ */
{5.0f, 0.0f, 0.5f}, // 16 {5.0f, 0.0f, 0.5f}, // A 16
{4.0f, 0.5f, 1.0f}, // 17 /* This used to be 1.0 in Z, which resulted in the dabDbcOppositeDirection
{5.0f, 1.0f, 0.5f}, // 18 dot product being very close to zero due to the cross products being
{0.0f, 0.5f, 1.0f}, // 19 perpendicular, which caused the test to fail depending on a target
architecture. */
{4.0f, 0.5f, 0.9f}, // B 17
{5.0f, 1.0f, 0.5f}, // C 18
{0.0f, 0.5f, 1.0f}, // D 19
/* /*
C C
D B -> ABC ACD (concave, non-planar, ambiguous -> picking D B -> ABC ACD (concave, non-planar, ambiguous -> picking
A shorter diagonal) A shorter diagonal)
*/ */
{5.0f, 0.0f, 0.5f}, // 20 {5.0f, 0.0f, 0.5f}, // A 20
{4.0f, 0.5f, 2.0f}, // 21 {4.0f, 0.5f, 2.0f}, // B 21
{5.0f, 1.0f, 0.5f}, // 22 {5.0f, 1.0f, 0.5f}, // C 22
{0.0f, 0.5f, 1.0f}, // 23 {0.0f, 0.5f, 1.0f}, // D 23
}; };
constexpr UnsignedInt QuadIndices[] { constexpr UnsignedInt QuadIndices[] {

Loading…
Cancel
Save