OOFEM
2.4
OOFEM.org - Object Oriented Finite Element Solver
|
Class for the boundary recognition method - alpha shape. More...
#include <edge2d.h>
Public Member Functions | |
AlphaEdge2D (int node1, int node2, double _length) | |
Constructor. More... | |
virtual | ~AlphaEdge2D () |
Destructor. More... | |
void | setOuterAlphaBound (double alphaMin) |
Sets the outer limit. More... | |
void | setInnerAlphaBound (double alphaMax) |
Sets the inner limit. More... | |
double | giveOuterAlphaBound () |
Returns the outer limit. More... | |
double | giveInnerAlphaBound () |
Returns the inner limit. More... | |
void | setHullFlag (bool flag) |
Sets the convex hull property. More... | |
bool | giveHullFlag () |
Returns true if the edge lies on convex hull, false otherwise. More... | |
void | setSharing (int n, DelaunayTriangle *pTE) |
Stores DelaunayTriangle sharing the receiver. More... | |
DelaunayTriangle * | giveShared (int n) |
Returns DelaunayTriangle sharing receiver. More... | |
double | giveLength () |
Returns length of the receiver. More... | |
Public Member Functions inherited from oofem::Edge2D | |
Edge2D (int node1, int node2) | |
Constructor. More... | |
virtual | ~Edge2D () |
Destructor. More... | |
int | giveFirstNodeNumber () |
Gives the number of the first node. More... | |
int | giveSecondNodeNumber () |
Gives the number of the second node. More... | |
virtual bool | operator== (const Edge2D &right) |
Compares receiver with passed Edge2D. Returns true if node numbers are equal, false otherwise. More... | |
Private Attributes | |
bool | isOnConvexHull |
Convex hull flag means edge is not shared by two triangle. More... | |
double | outerAlphaBound |
Bottom (outer) limit for alpha shape, for smaller values of alpha the edge lies outside. More... | |
double | innerAlphaBound |
Top (inner) limit for alpha shape, for greater values of alpha the edge lies inside of the shape. More... | |
DelaunayTriangle * | sharedByTriangles [2] |
Triangles which share the alphaEdge. More... | |
double | length |
Length of edge is stored in order to allow variable alpha value. More... | |
Class for the boundary recognition method - alpha shape.
Case 1 - convex hull edge: alpha greater than outerAlphaBound, edge is part of alpha shape. Case 2 - shared edge: alpha greater than innerAlphaBound, edge lies within alpha shape. Alpha between bounds, edge is exactly on alpha shape Alpha smaller than outerAlphaBound, edge lies outside of alpha shape
oofem::AlphaEdge2D::AlphaEdge2D | ( | int | node1, |
int | node2, | ||
double | _length | ||
) |
|
inline |
|
inline |
Returns the inner limit.
Definition at line 92 of file edge2d.h.
Referenced by oofem::DelaunayTriangulator::computeAlphaComplex().
|
inline |
|
inline |
Returns the outer limit.
Definition at line 90 of file edge2d.h.
Referenced by oofem::DelaunayTriangulator::computeAlphaComplex().
|
inline |
Returns DelaunayTriangle sharing receiver.
|
inline |
Sets the convex hull property.
Definition at line 94 of file edge2d.h.
Referenced by oofem::DelaunayTriangulator::computeAlphaComplex().
|
inline |
Sets the inner limit.
Definition at line 88 of file edge2d.h.
Referenced by oofem::DelaunayTriangulator::computeAlphaComplex().
|
inline |
Sets the outer limit.
Definition at line 86 of file edge2d.h.
Referenced by oofem::DelaunayTriangulator::computeAlphaComplex().
void oofem::AlphaEdge2D::setSharing | ( | int | n, |
DelaunayTriangle * | pTE | ||
) |
Stores DelaunayTriangle sharing the receiver.
Definition at line 70 of file edge2d.C.
References sharedByTriangles.
Referenced by oofem::DelaunayTriangulator::computeAlphaComplex().
|
private |
|
private |
|
private |
|
private |
|
private |
Triangles which share the alphaEdge.
Definition at line 112 of file edge2d.h.
Referenced by AlphaEdge2D(), and setSharing().