misc.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002  *  misc.h
00003  *
00004  *  (C) 2006 AG Aktives Sehen <agas@uni-koblenz.de>
00005  *           Universitaet Koblenz-Landau
00006  *
00007  * Author: Frank Neuhaus
00008  *******************************************************************************/
00009 
00010 #ifndef MISC_H
00011 #define MISC_H
00012 
00013 template<class T>
00014 T sqr(T f)
00015 {
00016         return f*f;
00017 }
00018 
00019 bool intersectRayCircle(const CVec2& m, float r, const CVec2& x, const CVec2& t, float& f);
00020 bool intersectRayLineSegment(const CVec2& a, const CVec2& b, const CVec2& x, const CVec2& t, float&f);
00021 float shortestDistanceToLineSegment(const CVec2& a, const CVec2& b, const CVec2& x);
00022 bool intersectRayCapsule(const CVec2& x, const CVec2& t, const CVec2& a, const CVec2& b, float radius, float& f);
00023 
00024 bool intersectPathCircle(const CVec2& c, const CVec2& p, float r0, const CVec2& hd, const CVec2& m1, float r1, float& angle);
00025 bool intersectPathLine(const CVec2& c, const CVec2& p, float r0, const CVec2& hd, const CVec2& p1, const CVec2& p2, float& angle);
00026 
00027 bool intersectPathCapsule(const CVec2& c, const CVec2& p, float r0, const CVec2& hd, const CVec2& a, const CVec2& b, float radius, float& f);
00028 
00029 float computeOBBIntersection(const CVec2& a, const CVec2& b, const CVec2& c, const CVec2& d, float size);
00030 
00031 #endif
00032 


robbie_architecture
Author(s): Viktor Seib
autogenerated on Mon Oct 6 2014 02:53:09