Conformal-Voronoi 2D automatic mesher with grid or read initial points and point position relaxation with optional "squarification".
More...
|
| ClassName ("CV2D") |
| Runtime type information. More...
|
|
| CV2D (const Time &runTime, const dictionary &controlDict) |
| Construct for given surface. More...
|
|
| ~CV2D () |
| Destructor. More...
|
|
const cv2DControls & | meshControls () const |
|
const point2D & | toPoint2D (const point &) const |
|
const point2DField | toPoint2D (const pointField &) const |
|
point | toPoint3D (const point2D &) const |
|
point2DFromPoint | toPoint2D (const Point &) const |
|
PointFromPoint2D | toPoint (const point2D &) const |
|
point | toPoint3D (const Point &) const |
|
void | insertPoints (const point2DField &points, const scalar nearness) |
| Create the initial mesh from the given internal points. More...
|
|
void | insertPoints (const fileName &pointFileName) |
| Create the initial mesh from the internal points in the given. More...
|
|
void | insertGrid () |
| Create the initial mesh as a regular grid of points. More...
|
|
void | insertSurfacePointPairs () |
| Insert all surface point-pairs from. More...
|
|
void | boundaryConform () |
| Insert point-pairs where there are protrusions into. More...
|
|
void | removeSurfacePointPairs () |
| Remove the point-pairs introduced by insertSurfacePointPairs. More...
|
|
void | movePoint (const Vertex_handle &vh, const Point &P) |
|
void | newPoints () |
| Move the internal points to the given new locations and update. More...
|
|
void | extractPatches (wordList &patchNames, labelList &patchSizes, EdgeMap< label > &mapEdgesRegion, EdgeMap< label > &indirectPatchEdge) const |
| Extract patch names and sizes. More...
|
|
void | writePoints (const fileName &fName, bool internalOnly) const |
| Write internal points to .obj file. More...
|
|
void | writeTriangles (const fileName &fName, bool internalOnly) const |
| Write triangles as .obj file. More...
|
|
void | writeFaces (const fileName &fName, bool internalOnly) const |
| Write dual faces as .obj file. More...
|
|
void | calcDual (point2DField &dualPoints, faceList &dualFaces, wordList &patchNames, labelList &patchSizes, EdgeMap< label > &mapEdgesRegion, EdgeMap< label > &indirectPatchEdge) const |
| Calculates dual points (circumcentres of tets) and faces. More...
|
|
void | writePatch (const fileName &fName) const |
| Write patch. More...
|
|
void | write () const |
|
|
| CV2D (const CV2D &) |
| Disallow default bitwise copy construct. More...
|
|
void | operator= (const CV2D &) |
| Disallow default bitwise assignment. More...
|
|
label | insertPoint (const point2D &pt, const label type) |
| Insert point and return it's index. More...
|
|
label | insertPoint (const point2D &pt, const label index, const label type) |
| Insert point and return it's index. More...
|
|
label | insertPoint (const Point &p, const label index, const label type) |
|
bool | insertMirrorPoint (const point2D &nearSurfPt, const point2D &surfPt) |
|
void | insertPointPair (const scalar mirrorDist, const point2D &surfPt, const vector2D &n) |
| Insert a point-pair at a distance ppDist either side of. More...
|
|
void | insertBoundingBox () |
| Create the initial mesh from the bounding-box. More...
|
|
bool | on2DLine (const point2D &p, const linePointRef &line) |
| Check if a point is within a line. More...
|
|
void | insertFeaturePoints () |
| Insert point groups at the feature points. More...
|
|
void | reinsertFeaturePoints () |
| Re-insert point groups at the feature points. More...
|
|
void | insertPointPairs (const DynamicList< point2D > &nearSurfacePoints, const DynamicList< point2D > &surfacePoints, const DynamicList< label > &surfaceTris, const DynamicList< label > &surfaceHits, const fileName fName) |
| Insert point-pairs at the given set of points using the surface. More...
|
|
bool | dualCellSurfaceIntersection (const Triangulation::Finite_vertices_iterator &vit) const |
| Check to see if dual cell specified by given vertex iterator. More...
|
|
void | insertSurfaceNearestPointPairs () |
| Insert point-pairs at the nearest points on the surface to the. More...
|
|
void | insertSurfaceNearPointPairs () |
| Insert point-pairs at small dual-cell edges on the surface in order. More...
|
|
void | insertPointPair (Triangulation::Finite_vertices_iterator &vit, const point2D &p, const label trii, const label hitSurface) |
| Insert point-pair and correcting the Finite_vertices_iterator. More...
|
|
bool | insertPointPairAtIntersection (Triangulation::Finite_vertices_iterator &vit, const point2D &defVert, const point2D vertices[], const scalar maxProtSize) |
| Insert point-pair at the best intersection point between the lines. More...
|
|
label | insertBoundaryConformPointPairs (const fileName &fName) |
| Insert point-pairs corresponding to dual-cells which intersect. More...
|
|
void | markNearBoundaryPoints () |
|
void | fast_restore_Delaunay (Vertex_handle vh) |
| Restore the Delaunay contraint. More...
|
|
void | external_flip (Face_handle &f, int i) |
|
bool | internal_flip (Face_handle &f, int i) |
|
void | write (const word &stage) const |
| Write all the faces and all the triangles at a particular stage. More...
|
|
Conformal-Voronoi 2D automatic mesher with grid or read initial points and point position relaxation with optional "squarification".
There are a substantial number of options to this mesher read from CV2DMesherDict file e.g.:
Min cell size used in tolerances when inserting points for boundary conforming. Also used to as the grid spacing usind in insertGrid. minCellSize 0.05;
Feature angle used to inser feature points 0 = all features, 180 = no features featureAngle 45;
Maximum quadrant angle allowed at a concave corner before additional "mitering" lines are added maxQuadAngle 110;
Should the mesh be square-dominated or of unbiased hexagons squares yes;
Near-wall region where cells are aligned with the wall specified as a number of cell layers nearWallAlignedDist 3;
Chose if the cell orientation should relax during the iterations or remain fixed to the x-y directions relaxOrientation no;
Insert near-boundary point mirror or point-pairs insertSurfaceNearestPointPairs yes;
Mirror near-boundary points rather than insert point-pairs mirrorPoints no;
Insert point-pairs vor dual-cell vertices very near the surface insertSurfaceNearPointPairs yes;
Choose if to randomise the initial grid created by insertGrid. randomiseInitialGrid yes;
Perturbation fraction, 1 = cell-size. randomPurturbation 0.1;
Number of relaxation iterations. nIterations 5;
Relaxation factor at the start of the iteration sequence. 0.5 is a sensible maximum and < 0.2 converges better. relaxationFactorStart 0.8;
Relaxation factor at the end of the iteration sequence. Should be <= relaxationFactorStart relaxationFactorEnd 0;
writeInitialTriangulation no; writeFeatureTriangulation no; writeNearestTriangulation no; writeInsertedPointPairs no; writeFinalTriangulation yes;
Maximum number of iterations used in boundaryConform. maxBoundaryConformingIter 5;
minEdgeLenCoeff 0.5; maxNotchLenCoeff 0.3; minNearPointDistCoeff 0.25; ppDistCoeff 0.05;
- Source files
-
Definition at line 146 of file CV2D.H.