LIBRCSC Docs
Documentation for HELIOS's BASE LIBRCSC library for RoboCup 2D Simulation League.
All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros
Classes | Public Types | Public Member Functions | List of all members
rcsc::Triangulation Class Reference

(Constrained Delaunay) triangulation class More...

#include <triangulation.h>

Classes

struct  Triangle
 triangle object type for Triangulation. More...
 

Public Types

typedef std::vector< Vector2DPointCont
 point container type.
 
typedef std::vector< TriangleTriangleCont
 triangle container type.
 
typedef std::pair< size_t, size_t > Segment
 segment edge type.
 
typedef std::set< SegmentSegmentSet
 segment edge set type.
 
typedef std::vector< SegmentSegmentCont
 segment edge container type.
 

Public Member Functions

 Triangulation ()
 create null triangulation object.
 
void clear ()
 clear all data.
 
void clearResults ()
 clear result data.
 
const PointContpoints () const
 get input point container. More...
 
const SegmentSetconstraints () const
 get constrained edges. More...
 
const TriangleConttriangles () const
 get result triangle set. More...
 
const SegmentContedges () const
 get result triangle edges. More...
 
void setUseTriangles (const bool on)
 set use_triangles property. More...
 
void setUseEdges (const bool on)
 set use_triangles property. More...
 
bool addPoint (const Vector2D &p)
 add point to the input point container. More...
 
size_t addPoints (const PointCont &v)
 add points to the input point container. More...
 
bool addConstraint (const size_t &origin_index, const size_t &terminal_index)
 add constraint point indices for Constrained Delaunay triangulation. More...
 
void compute ()
 generates triangulation.
 
const TrianglefindTriangleContains (const Vector2D &point) const
 find the triangle contanes the input point. More...
 
int findNearestPoint (const Vector2D &point) const
 find the point nearest to the input point. More...
 

Detailed Description

(Constrained Delaunay) triangulation class

Member Function Documentation

◆ addConstraint()

bool rcsc::Triangulation::addConstraint ( const size_t &  origin_index,
const size_t &  terminal_index 
)

add constraint point indices for Constrained Delaunay triangulation.

Parameters
origin_indexindex of first point
terminal_indexindex of second point

◆ addPoint()

bool rcsc::Triangulation::addPoint ( const Vector2D p)

add point to the input point container.

Parameters
pnew point.
Returns
result of adding operation.

◆ addPoints()

size_t rcsc::Triangulation::addPoints ( const PointCont v)

add points to the input point container.

Parameters
vpoint container.
Returns
size of successfully added points.

◆ constraints()

const SegmentSet & rcsc::Triangulation::constraints ( ) const
inline

get constrained edges.

Returns
const reference to the segment container.

◆ edges()

const SegmentCont & rcsc::Triangulation::edges ( ) const
inline

get result triangle edges.

Returns
const reference to the segment container.

◆ findNearestPoint()

int rcsc::Triangulation::findNearestPoint ( const Vector2D point) const

find the point nearest to the input point.

Parameters
pointinput point
Returns
index of the nearest point. if not found, returns -1.

◆ findTriangleContains()

const Triangle * rcsc::Triangulation::findTriangleContains ( const Vector2D point) const

find the triangle contanes the input point.

Parameters
pointinput point
Returns
pointer to the triangle. if not found, returns NULL.

◆ points()

const PointCont & rcsc::Triangulation::points ( ) const
inline

get input point container.

Returns
const reference to the point container.

◆ setUseEdges()

void rcsc::Triangulation::setUseEdges ( const bool  on)
inline

set use_triangles property.

Parameters
onnew property value.

◆ setUseTriangles()

void rcsc::Triangulation::setUseTriangles ( const bool  on)
inline

set use_triangles property.

Parameters
onproperty value.

◆ triangles()

const TriangleCont & rcsc::Triangulation::triangles ( ) const
inline

get result triangle set.

Returns
const reference to the triangle container.

The documentation for this class was generated from the following file: