All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Classes | Functions
Eegeo::Geometry Namespace Reference

Geometric primitives, intersection queries, containment queries. More...

Classes

class  AxisAlignedBox2
 
class  Bounds3D
 
class  DoubleBounds3D
 
struct  Bounds2D
 
struct  CatmullRomSplinePoint
 
class  CatmullRomSpline
 
class  DoublePlane
 
class  Frustum
 
class  IntersectionTests
 
class  ISpline
 
struct  Line2
 
class  OrientedBox
 
class  OrientedBox2
 
class  Plane
 
class  Point3Spline
 
struct  PolylineInterpolationParams
 
class  Ray
 
struct  SingleSphere
 
class  Sphere
 

Functions

Eegeo::v2 BezierCurveQuadraticSample2d (const v2 &p0, const v2 &p1, const v2 &p2, float t)
 
void CatmullRomInterpolationInPlace (const double t, const dv3 &p0, const dv3 &p1, const dv3 &p2, const dv3 &p3, dv3 &out_result)
 
void GenerateLatLongCircle (const dv3 &circleCentreEcef, float radiusInMetres, const int segments, std::vector< dv3 > &out_circleEcef)
 
void GenerateLatLongCircle (const Space::LatLongAltitude &circleCentre, float radiusInMetres, const int segments, std::vector< Space::LatLongAltitude > &out_circle)
 
void BuildFrustumPlanesFromViewProjection (std::vector< Geometry::Plane > &frustumPlanes, const Eegeo::m44 &viewProjection)
 
int Intersect2dLineSegments (const v2 &a, const v2 &b, const v2 &c, const v2 &d, float &outTIntersection, v2 &outPointIntersection)
 
int Intersect2dLines (const v2 &linePointA, const v2 &lineDirA, const v2 &linePointB, const v2 &lineDirB, v2 &outPointIntersection)
 
int Intersect2dLines (const Line2 &lineA, const Line2 &lineB, v2 &outPointIntersection)
 
bool Intersect (const AxisAlignedBox2 &boxA, const AxisAlignedBox2 &boxB)
 
bool Contains (const AxisAlignedBox2 &boxA, const v2 &p)
 
bool Intersect (const OrientedBox2 &boxA, const OrientedBox2 &boxB)
 
bool Intersect (const OrientedBox2 &boxA, const AxisAlignedBox2 &boxB)
 
bool Contains (const OrientedBox2 &boxA, const v2 &p)
 
void CreateOrientedBoxFromOutlinePointCloud (std::vector< Eegeo::dv3 > &outlinePoints, Eegeo::dv3 upDirection, OrientedBox &box)
 
Eegeo::dv3 CalculateMassCentre (std::vector< Eegeo::dv3 > &outlinePoints, int numOutlinePoints)
 
OrientedBox CreateFromPointCloudAndDirection (std::vector< Eegeo::dv3 > &outlinePoints, int numOutlinePoints, Eegeo::dv3 massCenter, Eegeo::dv3 direction, Eegeo::dv3 knownUpDirection)
 
void ExpandBoxToContainVertices (Eegeo::dv3 xDir, Eegeo::dv3 yDir, Eegeo::dv3 zDir, std::vector< Eegeo::dv3 > &verts, Eegeo::dv3 massCenter, DoubleBounds3D &bounds)
 
SingleSphere BoundingSphereFromCentreAndPoints (const v3 &centre, const std::vector< v3 > &points)
 
bool SphereContainsPoint (const SingleSphere &sphere, const v3 &point)
 
void CalculateSphereSuperset (SingleSphere &sphereA, SingleSphere &sphereB, SingleSphere &out_sphere)
 
float ClockwiseAngleInRadiansTo (Eegeo::v2 aDir, Eegeo::v2 bDir)
 
Eegeo::v2 PerpendicularRight (const Eegeo::v2 &v)
 

Detailed Description

Geometric primitives, intersection queries, containment queries.