indexedVertex< Gt, Vb > Class Template Reference

An indexed form of CGAL::Triangulation_vertex_base_3<K> used to keep track of the Delaunay vertices in the tessellation. More...

Inheritance diagram for indexedVertex< Gt, Vb >:
Collaboration diagram for indexedVertex< Gt, Vb >:

Classes

struct  Rebind_TDS
 

Public Types

enum  pointTypes { NEAR_BOUNDARY_POINT = -4, INTERNAL_POINT = -3, MIRROR_POINT = -2, FAR_POINT = -1 }
 
typedef Vb::Triangulation_data_structure Tds
 
typedef Vb::Point Point
 
typedef Tds::Vertex_handle Vertex_handle
 
typedef Tds::Cell_handle Cell_handle
 
typedef Vb::Vertex_handle Vertex_handle
 
typedef Vb::Face_handle Face_handle
 
typedef Vb::Point Point
 
- Public Types inherited from indexedVertexEnum
enum  vertexType {
  vtUnassigned = 0, vtInternal = 1, vtInternalNearBoundary = 2, vtInternalSurface = 3,
  vtInternalSurfaceBaffle = 4, vtExternalSurfaceBaffle = 5, vtInternalFeatureEdge = 6, vtInternalFeatureEdgeBaffle = 7,
  vtExternalFeatureEdgeBaffle = 8, vtInternalFeaturePoint = 9, vtExternalSurface = 10, vtExternalFeatureEdge = 11,
  vtExternalFeaturePoint = 12, vtFar = 13, vtConstrained = 14
}
 
enum  vertexMotion { fixed = 0, movable = 1 }
 

Public Member Functions

 indexedVertex ()
 
 indexedVertex (const Point &p)
 
 indexedVertex (const Point &p, vertexType type)
 
 indexedVertex (const Foam::point &p, vertexType type)
 
 indexedVertex (const Point &p, Foam::label index, vertexType type, int processor)
 
 indexedVertex (const Foam::point &p, Foam::label index, vertexType type, int processor)
 
 indexedVertex (const Point &p, Cell_handle f)
 
 indexedVertex (Cell_handle f)
 
 indexedVertex (const indexedVertex &p)=default
 
Foam::labelindex ()
 
Foam::label index () const
 
vertexTypetype ()
 
vertexType type () const
 
Foam::tensoralignment ()
 
const Foam::tensoralignment () const
 
Foam::scalar & targetCellSize ()
 
Foam::scalar targetCellSize () const
 
bool farPoint () const
 Is point a far-point. More...
 
bool internalPoint () const
 Is point internal, i.e. not on boundary. More...
 
bool referred () const
 Is this a referred vertex. More...
 
bool real () const
 Is this a "real" point on this processor, i.e. is internal or part. More...
 
int procIndex () const
 
int & procIndex ()
 
void setInternal ()
 Set the point to be internal. More...
 
bool nearBoundary () const
 Is point internal and near the boundary. More...
 
void setNearBoundary ()
 Set the point to be near the boundary. More...
 
bool nearProcBoundary () const
 Is point internal and near a proc boundary. More...
 
void setNearProcBoundary ()
 Set the point to be near a proc boundary. More...
 
bool boundaryPoint () const
 Either master or slave of pointPair. More...
 
bool internalOrBoundaryPoint () const
 Either original internal point or master of pointPair. More...
 
bool nearOrOnBoundary () const
 Is point near the boundary or part of the boundary definition. More...
 
bool featurePoint () const
 Part of a feature point. More...
 
bool featureEdgePoint () const
 Part of a feature edge. More...
 
bool surfacePoint () const
 Part of a surface point pair. More...
 
bool internalBoundaryPoint () const
 
bool internalBaffleSurfacePoint () const
 
bool internalBaffleEdgePoint () const
 
bool externalBoundaryPoint () const
 
bool externalBaffleSurfacePoint () const
 
bool externalBaffleEdgePoint () const
 
bool constrained () const
 
bool fixed () const
 Is the vertex fixed or movable. More...
 
bool & fixed ()
 Fix the vertex so that it can't be moved. More...
 
void operator= (const indexedVertex &rhs)
 
bool operator== (const indexedVertex &rhs) const
 
bool operator!= (const indexedVertex &rhs) const
 
Foam::InfoProxy< indexedVertex< Gt, Vb > > info () const
 Return info proxy. More...
 
 indexedVertex ()
 
 indexedVertex (const Point &p)
 
 indexedVertex (const Point &p, const int index, const int &type)
 
 indexedVertex (const Point &p, Face_handle f)
 
 indexedVertex (Face_handle f)
 
int & index ()
 
int index () const
 
int & type ()
 
int type () const
 
bool farPoint () const
 Is point a far-point. More...
 
bool internalPoint () const
 Is point internal, i.e. not on boundary. More...
 
bool nearBoundary () const
 Is point internal and near the boundary. More...
 
void setNearBoundary ()
 Set the point to be near the boundary. More...
 
bool mirrorPoint () const
 Is point a mirror point. More...
 
bool pairPoint () const
 Either master or slave of pointPair. More...
 
bool ppMaster () const
 Master of a pointPair is the lowest numbered one. More...
 
bool ppSlave () const
 Slave of a pointPair is the highest numbered one. More...
 
bool internalOrBoundaryPoint () const
 Either original internal point or master of pointPair. More...
 
bool nearOrOnBoundary () const
 Is point near the boundary or part of the boundary definition. More...
 

Friends

Foam::OstreamFoam::operator (Foam::Ostream &, const Foam::InfoProxy< indexedVertex< Gt, Vb >> &)
 
Foam::OstreamFoam::operator (Foam::Ostream &, const indexedVertex< Gt, Vb > &)
 
Foam::IstreamFoam::operator>> (Foam::Istream &, indexedVertex< Gt, Vb > &)
 
bool pointPair (const indexedVertex< Gt, Vb > &v0, const indexedVertex< Gt, Vb > &v1)
 Do the two given vertices constitute a boundary point-pair. More...
 
bool boundaryTriangle (const indexedVertex< Gt, Vb > &v0, const indexedVertex< Gt, Vb > &v1, const indexedVertex< Gt, Vb > &v2)
 Do the three given vertices constitute a boundary triangle. More...
 
bool outsideTriangle (const indexedVertex< Gt, Vb > &v0, const indexedVertex< Gt, Vb > &v1, const indexedVertex< Gt, Vb > &v2)
 Do the three given vertices constitute an outside triangle. More...
 

Additional Inherited Members

- Static Public Attributes inherited from indexedVertexEnum
static const Foam::NamedEnum< vertexType, 15 > vertexTypeNames_
 
static const Foam::NamedEnum< vertexMotion, 2 > vertexMotionNames_
 

Detailed Description

template<class Gt, class Vb = CGAL::Triangulation_vertex_base_2<Gt>>
class CGAL::indexedVertex< Gt, Vb >

An indexed form of CGAL::Triangulation_vertex_base_3<K> used to keep track of the Delaunay vertices in the tessellation.

An indexed form of CGAL::Triangulation_vertex_base_2<K> used to keep track of the vertices in the triangulation.

Source files

Definition at line 51 of file indexedVertex.H.

Member Typedef Documentation

◆ Tds

typedef Vb::Triangulation_data_structure Tds

Definition at line 131 of file indexedVertex.H.

◆ Point [1/2]

typedef Vb::Point Point

Definition at line 132 of file indexedVertex.H.

◆ Vertex_handle [1/2]

typedef Tds::Vertex_handle Vertex_handle

Definition at line 133 of file indexedVertex.H.

◆ Cell_handle

typedef Tds::Cell_handle Cell_handle

Definition at line 134 of file indexedVertex.H.

◆ Vertex_handle [2/2]

Definition at line 103 of file indexedVertex.H.

◆ Face_handle

Definition at line 104 of file indexedVertex.H.

◆ Point [2/2]

typedef Vb::Point Point

Definition at line 105 of file indexedVertex.H.

Member Enumeration Documentation

◆ pointTypes

enum pointTypes
Enumerator
NEAR_BOUNDARY_POINT 
INTERNAL_POINT 
MIRROR_POINT 
FAR_POINT 

Definition at line 95 of file indexedVertex.H.

Constructor & Destructor Documentation

◆ indexedVertex() [1/14]

indexedVertex ( )
inline

Definition at line 31 of file indexedVertexI.H.

Referenced by indexedVertex< Gt, Vb >::indexedVertex().

Here is the caller graph for this function:

◆ indexedVertex() [2/14]

indexedVertex ( const Point p)
inline

Definition at line 44 of file indexedVertexI.H.

References indexedVertex< Gt, Vb >::indexedVertex().

Here is the call graph for this function:

◆ indexedVertex() [3/14]

indexedVertex ( const Point p,
vertexType  type 
)
inline

Definition at line 58 of file indexedVertexI.H.

References indexedVertex< Gt, Vb >::indexedVertex().

Here is the call graph for this function:

◆ indexedVertex() [4/14]

indexedVertex ( const Foam::point p,
vertexType  type 
)
inline

Definition at line 75 of file indexedVertexI.H.

References indexedVertex< Gt, Vb >::indexedVertex().

Here is the call graph for this function:

◆ indexedVertex() [5/14]

indexedVertex ( const Point p,
Foam::label  index,
vertexType  type,
int  processor 
)
inline

Definition at line 92 of file indexedVertexI.H.

References indexedVertex< Gt, Vb >::indexedVertex().

Here is the call graph for this function:

◆ indexedVertex() [6/14]

indexedVertex ( const Foam::point p,
Foam::label  index,
vertexType  type,
int  processor 
)
inline

Definition at line 111 of file indexedVertexI.H.

◆ indexedVertex() [7/14]

indexedVertex ( const Point p,
Cell_handle  f 
)
inline

Definition at line 129 of file indexedVertexI.H.

◆ indexedVertex() [8/14]

indexedVertex ( Cell_handle  f)
inline

Definition at line 142 of file indexedVertexI.H.

◆ indexedVertex() [9/14]

indexedVertex ( const indexedVertex< Gt, Vb > &  p)
default

◆ indexedVertex() [10/14]

indexedVertex ( )
inline

◆ indexedVertex() [11/14]

indexedVertex ( const Point p)
inline

◆ indexedVertex() [12/14]

indexedVertex ( const Point p,
const int  index,
const int &  type 
)
inline

Definition at line 48 of file indexedVertexI.H.

◆ indexedVertex() [13/14]

indexedVertex ( const Point p,
Face_handle  f 
)
inline

Definition at line 61 of file indexedVertexI.H.

◆ indexedVertex() [14/14]

Member Function Documentation

◆ index() [1/4]

int & index ( )
inline

Definition at line 157 of file indexedVertexI.H.

Referenced by indexedVertex< Gt, Vb >::indexedVertex(), indexedVertex< Gt, Vb >::operator=(), and indexedVertex< Gt, Vb >::operator==().

Here is the caller graph for this function:

◆ index() [2/4]

int index ( ) const
inline

Definition at line 164 of file indexedVertexI.H.

◆ type() [1/4]

int & type ( )
inline

Definition at line 172 of file indexedVertexI.H.

Referenced by indexedVertex< Gt, Vb >::indexedVertex(), indexedVertex< Gt, Vb >::operator=(), and indexedVertex< Gt, Vb >::operator==().

Here is the caller graph for this function:

◆ type() [2/4]

int type ( ) const
inline

Definition at line 180 of file indexedVertexI.H.

◆ alignment() [1/2]

Foam::tensor & alignment ( )
inline

Definition at line 187 of file indexedVertexI.H.

Referenced by indexedVertex< Gt, Vb >::operator=().

Here is the caller graph for this function:

◆ alignment() [2/2]

const Foam::tensor & alignment ( ) const
inline

Definition at line 194 of file indexedVertexI.H.

◆ targetCellSize() [1/2]

Foam::scalar & targetCellSize ( )
inline

Definition at line 201 of file indexedVertexI.H.

Referenced by indexedVertex< Gt, Vb >::operator=().

Here is the caller graph for this function:

◆ targetCellSize() [2/2]

Foam::scalar targetCellSize ( ) const
inline

Definition at line 208 of file indexedVertexI.H.

◆ farPoint() [1/2]

bool farPoint ( ) const
inline

Is point a far-point.

Definition at line 215 of file indexedVertexI.H.

References indexedVertexEnum::vtFar.

Referenced by indexedVertex< Gt, Vb >::boundaryPoint(), indexedVertex< Gt, Vb >::indexedVertex(), and CGAL::outsideTriangle().

Here is the caller graph for this function:

◆ internalPoint() [1/2]

bool internalPoint ( ) const
inline

◆ referred()

bool referred ( ) const
inline

Is this a referred vertex.

Definition at line 229 of file indexedVertexI.H.

References UPstream::myProcNo().

Referenced by indexedVertex< Gt, Vb >::real().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ real()

bool real ( ) const
inline

Is this a "real" point on this processor, i.e. is internal or part.

of the boundary description, and not a "far" or "referred" point

Definition at line 242 of file indexedVertexI.H.

References indexedVertex< Gt, Vb >::boundaryPoint(), indexedVertex< Gt, Vb >::internalPoint(), and indexedVertex< Gt, Vb >::referred().

Here is the call graph for this function:

◆ procIndex() [1/2]

int procIndex ( ) const
inline

Definition at line 249 of file indexedVertexI.H.

Referenced by indexedVertex< Gt, Vb >::operator=(), and indexedVertex< Gt, Vb >::operator==().

Here is the caller graph for this function:

◆ procIndex() [2/2]

int & procIndex ( )
inline

Definition at line 256 of file indexedVertexI.H.

◆ setInternal()

void setInternal ( )
inline

Set the point to be internal.

Definition at line 263 of file indexedVertexI.H.

References indexedVertexEnum::vtInternal.

◆ nearBoundary() [1/2]

bool nearBoundary ( ) const
inline

Is point internal and near the boundary.

Definition at line 270 of file indexedVertexI.H.

References indexedVertexEnum::vtInternalNearBoundary.

Referenced by indexedVertex< Gt, Vb >::indexedVertex(), indexedVertex< Gt, Vb >::nearOrOnBoundary(), and indexedVertex< Gt, Vb >::ppSlave().

Here is the caller graph for this function:

◆ setNearBoundary() [1/2]

void setNearBoundary ( )
inline

Set the point to be near the boundary.

Definition at line 277 of file indexedVertexI.H.

References indexedVertexEnum::vtInternalNearBoundary.

Referenced by indexedVertex< Gt, Vb >::indexedVertex().

Here is the caller graph for this function:

◆ nearProcBoundary()

bool nearProcBoundary ( ) const
inline

Is point internal and near a proc boundary.

◆ setNearProcBoundary()

void setNearProcBoundary ( )
inline

Set the point to be near a proc boundary.

◆ boundaryPoint()

bool boundaryPoint ( ) const
inline

Either master or slave of pointPair.

Definition at line 284 of file indexedVertexI.H.

References indexedVertex< Gt, Vb >::farPoint(), and indexedVertexEnum::vtInternalSurface.

Referenced by indexedVertex< Gt, Vb >::nearOrOnBoundary(), and indexedVertex< Gt, Vb >::real().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ internalOrBoundaryPoint() [1/2]

bool internalOrBoundaryPoint ( ) const
inline

Either original internal point or master of pointPair.

Definition at line 291 of file indexedVertexI.H.

References indexedVertex< Gt, Vb >::internalBoundaryPoint(), and indexedVertex< Gt, Vb >::internalPoint().

Referenced by indexedVertex< Gt, Vb >::ppSlave().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ nearOrOnBoundary() [1/2]

bool nearOrOnBoundary ( ) const
inline

Is point near the boundary or part of the boundary definition.

Definition at line 298 of file indexedVertexI.H.

References indexedVertex< Gt, Vb >::boundaryPoint(), and indexedVertex< Gt, Vb >::nearBoundary().

Referenced by indexedVertex< Gt, Vb >::ppSlave().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ featurePoint()

bool featurePoint ( ) const
inline

Part of a feature point.

Definition at line 349 of file indexedVertexI.H.

References indexedVertexEnum::vtExternalFeaturePoint, and indexedVertexEnum::vtInternalFeaturePoint.

◆ featureEdgePoint()

bool featureEdgePoint ( ) const
inline

Part of a feature edge.

Definition at line 356 of file indexedVertexI.H.

References indexedVertexEnum::vtExternalFeatureEdge, and indexedVertexEnum::vtInternalFeatureEdge.

◆ surfacePoint()

bool surfacePoint ( ) const
inline

Part of a surface point pair.

Definition at line 363 of file indexedVertexI.H.

References indexedVertexEnum::vtExternalSurface, and indexedVertexEnum::vtInternalSurface.

◆ internalBoundaryPoint()

bool internalBoundaryPoint ( ) const
inline

Definition at line 305 of file indexedVertexI.H.

References indexedVertexEnum::vtInternalFeaturePoint, and indexedVertexEnum::vtInternalSurface.

Referenced by indexedVertex< Gt, Vb >::internalOrBoundaryPoint().

Here is the caller graph for this function:

◆ internalBaffleSurfacePoint()

bool internalBaffleSurfacePoint ( ) const
inline

Definition at line 311 of file indexedVertexI.H.

References indexedVertexEnum::vtInternalSurfaceBaffle.

◆ internalBaffleEdgePoint()

bool internalBaffleEdgePoint ( ) const
inline

Definition at line 317 of file indexedVertexI.H.

References indexedVertexEnum::vtInternalFeatureEdgeBaffle.

◆ externalBoundaryPoint()

bool externalBoundaryPoint ( ) const
inline

◆ externalBaffleSurfacePoint()

bool externalBaffleSurfacePoint ( ) const
inline

Definition at line 329 of file indexedVertexI.H.

References indexedVertexEnum::vtExternalSurfaceBaffle.

◆ externalBaffleEdgePoint()

bool externalBaffleEdgePoint ( ) const
inline

Definition at line 335 of file indexedVertexI.H.

References indexedVertexEnum::vtExternalFeatureEdgeBaffle.

◆ constrained()

bool constrained ( ) const
inline

Definition at line 342 of file indexedVertexI.H.

References indexedVertexEnum::vtConstrained.

◆ fixed() [1/2]

bool fixed ( ) const
inline

Is the vertex fixed or movable.

Definition at line 370 of file indexedVertexI.H.

Referenced by indexedVertex< Gt, Vb >::operator=(), and indexedVertex< Gt, Vb >::operator==().

Here is the caller graph for this function:

◆ fixed() [2/2]

bool & fixed ( )
inline

Fix the vertex so that it can't be moved.

Definition at line 377 of file indexedVertexI.H.

◆ operator=()

◆ operator==()

bool operator== ( const indexedVertex< Gt, Vb > &  rhs) const
inline

◆ operator!=()

bool operator!= ( const indexedVertex< Gt, Vb > &  rhs) const
inline

Definition at line 286 of file indexedVertex.H.

References Foam::contiguous().

Here is the call graph for this function:

◆ info()

Foam::InfoProxy<indexedVertex<Gt, Vb> > info ( ) const
inline

Return info proxy.

Used to print indexedVertex information to a stream

Definition at line 296 of file indexedVertex.H.

◆ index() [3/4]

int& index ( )
inline

◆ index() [4/4]

int index ( ) const
inline

◆ type() [3/4]

int& type ( )
inline

◆ type() [4/4]

int type ( ) const
inline

◆ farPoint() [2/2]

bool farPoint ( ) const
inline

Is point a far-point.

◆ internalPoint() [2/2]

bool internalPoint ( ) const
inline

Is point internal, i.e. not on boundary.

◆ nearBoundary() [2/2]

bool nearBoundary ( ) const
inline

Is point internal and near the boundary.

◆ setNearBoundary() [2/2]

void setNearBoundary ( )
inline

Set the point to be near the boundary.

◆ mirrorPoint()

bool mirrorPoint ( ) const
inline

Is point a mirror point.

Definition at line 137 of file indexedVertexI.H.

References indexedVertex< Gt, Vb >::MIRROR_POINT.

Referenced by indexedVertex< Gt, Vb >::ppSlave().

Here is the caller graph for this function:

◆ pairPoint()

bool pairPoint ( ) const
inline

Either master or slave of pointPair.

Definition at line 144 of file indexedVertexI.H.

Referenced by CGAL::boundaryTriangle(), and indexedVertex< Gt, Vb >::ppSlave().

Here is the caller graph for this function:

◆ ppMaster()

bool ppMaster ( ) const
inline

Master of a pointPair is the lowest numbered one.

Definition at line 151 of file indexedVertexI.H.

Referenced by indexedVertex< Gt, Vb >::ppSlave().

Here is the caller graph for this function:

◆ ppSlave()

bool ppSlave ( ) const
inline

◆ internalOrBoundaryPoint() [2/2]

bool internalOrBoundaryPoint ( ) const
inline

Either original internal point or master of pointPair.

◆ nearOrOnBoundary() [2/2]

bool nearOrOnBoundary ( ) const
inline

Is point near the boundary or part of the boundary definition.

Friends And Related Function Documentation

◆ Foam::operator [1/2]

Foam::Ostream& Foam::operator ( Foam::Ostream ,
const Foam::InfoProxy< indexedVertex< Gt, Vb >> &   
)
friend

◆ Foam::operator [2/2]

Foam::Ostream& Foam::operator ( Foam::Ostream ,
const indexedVertex< Gt, Vb > &   
)
friend

◆ Foam::operator>>

Foam::Istream& Foam::operator>> ( Foam::Istream ,
indexedVertex< Gt, Vb > &   
)
friend

◆ pointPair

bool pointPair ( const indexedVertex< Gt, Vb > &  v0,
const indexedVertex< Gt, Vb > &  v1 
)
friend

Do the two given vertices constitute a boundary point-pair.

Referenced by CGAL::boundaryTriangle().

◆ boundaryTriangle

bool boundaryTriangle ( const indexedVertex< Gt, Vb > &  v0,
const indexedVertex< Gt, Vb > &  v1,
const indexedVertex< Gt, Vb > &  v2 
)
friend

Do the three given vertices constitute a boundary triangle.

◆ outsideTriangle

bool outsideTriangle ( const indexedVertex< Gt, Vb > &  v0,
const indexedVertex< Gt, Vb > &  v1,
const indexedVertex< Gt, Vb > &  v2 
)
friend

Do the three given vertices constitute an outside triangle.


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