Pathfinder
Namespaces | Functions
Flat.h File Reference

This file declares all functionality related to basic operations for flattened Polygons. More...

#include "Line2.h"
Include dependency graph for Flat.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 Pathfinder
 

Functions

short Pathfinder::coordToDrop (const Polygon *tri)
 Decide which coordinate shall be dropped for flattening this polygon. More...
 
std::tuple< Geometry::Vec2, Geometry::Vec2, Geometry::Vec2 > Pathfinder::flattenTri (const Polygon *tri, const short &coord)
 Flatten the given polygon onto the xy/xz/yz plane. More...
 
Geometry::Vec2 Pathfinder::flattenVec3 (const Geometry::Vec3 &a, const short &coord)
 Flatten the given vector onto the xy/xz/yz plane. More...
 
std::tuple< short, short, short > Pathfinder::determineRelativePos (Geometry::Vec2 point, const std::tuple< Line2, Line2, Line2 > &tri)
 Determine the relative position of a point to three lines. More...
 
std::vector< bool > Pathfinder::pointVecInsideTri (const std::vector< Geometry::Vec3 > &pointVec, const std::tuple< Line2, Line2, Line2 > &tri, const short &droppedCoord, const std::tuple< short, short, short > &relPosCenter)
 For a vector of points in three-dimensional space, determine if the inidividual points lie inside or outside a polygon. More...
 
std::vector< bool > Pathfinder::pointVecInsideTri (const std::vector< Geometry::Vec2 > &pointVec, const std::tuple< Line2, Line2, Line2 > &tri, const std::tuple< short, short, short > &relPosCenter)
 For a vector of points in two-dimensional space, determine if the individual points lie inside or outside a polygon. More...
 
bool Pathfinder::pointInsideTri (const Geometry::Vec3 &point, const std::tuple< Line2, Line2, Line2 > &tri, const short &droppedCoord, const std::tuple< short, short, short > &relPosCenter)
 For a point in three-dimensional space, determine if it lies inside or outside a given polygon. More...
 
bool Pathfinder::pointInsideTri (const Geometry::Vec2 &point, const std::tuple< Line2, Line2, Line2 > &tri, const std::tuple< short, short, short > &relPosCenter)
 For a point in two-dimensional space, determine if it lies inside or outside a given polygon. More...
 
bool Pathfinder::pointInRectangle (Geometry::Vec2 &p, Geometry::Vec2 &lowerLeft, Geometry::Vec2 &upperRight)
 Given a rectangle defined by two points, check if p lies inside it. More...
 
std::tuple< Geometry::Vec2, Geometry::Vec2 > Pathfinder::buildRectangle (Geometry::Vec2 &pi, Geometry::Vec2 &pj)
 Given two points, construct a tuple of points that describe the lower left and upper right corner of the rectangle defined by the two points. More...
 

Detailed Description

This file declares all functionality related to basic operations for flattened Polygons.

Author
Jan-Luca Hansel