diff options
author | Adam NAILI | 2017-12-28 16:23:17 +0100 |
---|---|---|
committer | Adam NAILI | 2017-12-28 16:23:17 +0100 |
commit | 9e4eb30f33867bcb37d5accfb5588cfb3b450f90 (patch) | |
tree | 57cc389a1c302d8278246fb8334ada216be82a01 /test/common | |
parent | aaf57e5ee1e0cf74afdbdf56293f1afd7e79e6b0 (diff) | |
parent | 426ddbdd27d21383a3870980f9b787a8c58237aa (diff) | |
download | morpher-9e4eb30f33867bcb37d5accfb5588cfb3b450f90.tar.gz |
Merge remote-tracking branch 'origin/master' into gui
Diffstat (limited to 'test/common')
-rw-r--r-- | test/common/geom.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/test/common/geom.c b/test/common/geom.c new file mode 100644 index 0000000..f05e0a1 --- /dev/null +++ b/test/common/geom.c | |||
@@ -0,0 +1,21 @@ | |||
1 | #include "common/geom.h" | ||
2 | #include <assert.h> | ||
3 | |||
4 | static void test_square_area() { | ||
5 | assert(square_area(v(0, 0), v(10, 0), v(10, 10)) == 100); | ||
6 | assert(square_area(v(0, 0), v(0, 10), v(10, 10)) == -100); | ||
7 | } | ||
8 | |||
9 | static void test_cartesian_barycentric_vectors() { | ||
10 | Triangle t = {{v(0, 0), v(10, 0), v(10, 10)}}; | ||
11 | CartesianVector c = v(3, 2); | ||
12 | BarycentricVector bv = cartesian_to_barycentric(t, c); | ||
13 | assert(barycentric_vector_equals(bv, b(0.7, 0.1))); | ||
14 | assert(vector_equals(barycentric_to_cartesian(t, bv), c)); | ||
15 | } | ||
16 | |||
17 | int main(int argc, char **argv) { | ||
18 | test_square_area(); | ||
19 | test_cartesian_barycentric_vectors(); | ||
20 | return 0; | ||
21 | } | ||