diff options
author | Adam NAILI | 2017-12-27 17:19:23 +0100 |
---|---|---|
committer | Adam NAILI | 2017-12-27 17:19:23 +0100 |
commit | f39e6e3be66ff6077dd83094850232a46a21e624 (patch) | |
tree | b201d6718cd2c550b4ba5ff8e12b084a7171f0c5 /include/common/geom.h | |
parent | ee98053ef83869033713c8c7d6d487457d6443d8 (diff) | |
parent | f5ff85f3c7e7d6bf11a423c497d2b3ce76cfafd8 (diff) | |
download | morpher-f39e6e3be66ff6077dd83094850232a46a21e624.tar.gz |
Merge remote-tracking branch 'origin/master' into gui
Diffstat (limited to 'include/common/geom.h')
-rw-r--r-- | include/common/geom.h | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/include/common/geom.h b/include/common/geom.h index a843c76..b3564a5 100644 --- a/include/common/geom.h +++ b/include/common/geom.h | |||
@@ -38,6 +38,46 @@ typedef struct { | |||
38 | CartesianVector origin, target; | 38 | CartesianVector origin, target; |
39 | } CartesianMapping; | 39 | } CartesianMapping; |
40 | 40 | ||
41 | |||
42 | /** | ||
43 | * Function: m | ||
44 | * Shorthand for an identity mapping. | ||
45 | * | ||
46 | * Parameters: | ||
47 | * x - the x-coordinate | ||
48 | * y - the y-coordinate | ||
49 | * | ||
50 | * Returns: | ||
51 | * A cartesian identity mapping | ||
52 | */ | ||
53 | CartesianMapping m(int x, int y); | ||
54 | |||
55 | /** | ||
56 | * Function: v | ||
57 | * Shorthand for a vector. | ||
58 | * | ||
59 | * Parameters: | ||
60 | * x - the x-coordinate | ||
61 | * y - the y-coordinate | ||
62 | * | ||
63 | * Returns: | ||
64 | * An integer vector | ||
65 | */ | ||
66 | CartesianVector v(int x, int y); | ||
67 | |||
68 | /** | ||
69 | * Function: mappings_equals | ||
70 | * Compares two cartesian mappings. | ||
71 | * | ||
72 | * Parameters: | ||
73 | * m1 - the first mapping | ||
74 | * m2 - the second mapping | ||
75 | * | ||
76 | * Returns: | ||
77 | * T(m1 is equal to m2) | ||
78 | */ | ||
79 | bool mappings_equals(CartesianMapping m1, CartesianMapping m2); | ||
80 | |||
41 | /** | 81 | /** |
42 | * Function: vector_equals | 82 | * Function: vector_equals |
43 | * Compares two cartesian vectors. | 83 | * Compares two cartesian vectors. |
@@ -51,4 +91,18 @@ typedef struct { | |||
51 | */ | 91 | */ |
52 | bool vector_equals(CartesianVector v1, CartesianVector v2); | 92 | bool vector_equals(CartesianVector v1, CartesianVector v2); |
53 | 93 | ||
94 | /** | ||
95 | * Function: triangle_area | ||
96 | * Computes the area of a triangle. | ||
97 | * | ||
98 | * Parameters: | ||
99 | * v1 - first vertex | ||
100 | * v2 - second vertex | ||
101 | * v3 - third vertex | ||
102 | * | ||
103 | * Returns: | ||
104 | * The area of the triangle spawned by the three supplied vertices | ||
105 | */ | ||
106 | IntVector triangle_area(CartesianVector v1, CartesianVector v2, CartesianVector v3); | ||
107 | |||
54 | #endif | 108 | #endif |