commit 622f0ad3fc9f6a12da81568d921c6053c76bc267
parent 2dafdf60dd23ac7abc962687eabc789fd7f5b5cc
Author: Yoann <yoann.b87@voila.fr>
Date: Fri, 6 Jan 2012 10:51:05 +0100
Ajout d'une fonction length dans quad qui permet d'avoir uniquement la
longeur du segment N, E, S, W.
Diffstat:
2 files changed, 14 insertions(+), 0 deletions(-)
diff --git a/geometry/quad.cpp b/geometry/quad.cpp
@@ -49,6 +49,19 @@ Quad Quad::makeParallelogram() {
return Quad(c[0],c[1],c[2],c[3]);
}
+float Quad::length(Cardinal cn) {
+ if(cn == N)
+ return Segment(c[NW],c[NE]).length();
+ else if(cn == S)
+ return Segment(c[SW],c[SE]).length();
+ else if(cn == E)
+ return Segment(c[NE],c[SE]).length();
+ else if(cn == W)
+ return Segment(c[SW],c[NW]).length();
+
+ return 0;
+}
+
float Quad::minLengthNS() {
return std::min(
Segment(c[NW],c[NE]).length(),
diff --git a/geometry/quad.hh b/geometry/quad.hh
@@ -26,6 +26,7 @@ class Quad {
friend Quad operator+(const Quad& t, const Vertex& v);
void offset(Cardinal side, int offset);
void offsetNESW(int offsetN, int offsetE, int offsetS, int offsetW);
+ float length(Cardinal c);
float minLengthNS();
float minLengthEW();
float maxLengthNS();