00001
00008 #ifndef P_GEOMETRY_HH
00009 #define P_GEOMETRY_HH
00010
00011 #include <blort/Recognizer3D/PNamespace.hh>
00012 #include <blort/Recognizer3D/Except.hh>
00013 #include <blort/Recognizer3D/Array.hh>
00014 #include <blort/Recognizer3D/Vector2.hh>
00015 #include <opencv/cv.h>
00016 #include <opencv/highgui.h>
00017 #include <opencv/cxcore.h>
00018
00019
00020 namespace P
00021 {
00022
00023 double IsLeft( Vector2 p0, Vector2 p1, Vector2 p2 );
00024 void ChainHull2D( Array<Vector2> &p, Array<Vector2> &h);
00025 void ConvexHull( Array<Vector2> &p, Array<Vector2> &h);
00026 int IWrap ( int ival, int ilo, int ihi );
00027 int IMax ( int i1, int i2 );
00028 int IMin ( int i1, int i2 );
00029 int IModp ( int i, int j );
00030 void AngleHalf(const Vector2 &p1, const Vector2 &p2, const Vector2 &p3, Vector2 &p4);
00031 double AngleRAD(const Vector2 &p1, const Vector2 &p2, const Vector2 &p3);
00032 }
00033
00034 #include <blort/Recognizer3D/Geometry.ic>
00035
00036 #endif
00037