Parameters for the mesh generator.
More...
#include <MeshGenParams.h>
This class serves as container for mesh generator parameters. Client code can provide a class which derives from MeshGenParams and which provides custom implementations of the getMaxTriangleArea(Triangle* pT) method or the getMaxEdgeLength(Triangle* pT) method in order to gain control over the local density of the generated mesh. The meshing algorithm calls these functions to decide if a certain triangle must be refined.
- See also
- http://www.geom.at/advanced-mesh-generation/
◆ addLockedConstraint()
void GEOM_FADE25D::MeshGenParams::addLockedConstraint |
( |
ConstraintSegment2 * |
pConstraintSegment | ) |
|
In case that some ConstraintSegment2 can be splitted and others must not be splitted use bAllowConstraintSplitting=true
and add the ones that must not be splitted.
◆ getMaxEdgeLength()
virtual double GEOM_FADE25D::MeshGenParams::getMaxEdgeLength |
( |
Triangle2 * |
pT | ) |
|
|
inlinevirtual |
- Parameters
-
pT | is a triangle for which the meshing algorithm checks if it must be refined. |
The default implementation of the present class returns the value maxEdgeLength (which is DBL_MAX if not changed by the user). This method can be overridden by the client software in order to control the local mesh density.
User Controlled Mesh Density, Edge Length
◆ getMaxTriangleArea()
virtual double GEOM_FADE25D::MeshGenParams::getMaxTriangleArea |
( |
Triangle2 * |
pT | ) |
|
|
inlinevirtual |
- Parameters
-
pT | is a triangle for which the meshing algorithm checks if it must be refined. |
The default implementation of the present class returns the value maxTriangleArea (which is the default value DBL_MAX if not changed by the user). This method can be overridden by the client software in order to control the local mesh density.
User Controlled Mesh Density, Area
◆ bAllowConstraintSplitting
bool GEOM_FADE25D::MeshGenParams::bAllowConstraintSplitting |
Defines if constraint segments can be splitted. Default: yes
◆ bGridMeshingLQ
bool GEOM_FADE25D::MeshGenParams::bGridMeshingLQ |
By default bGridMeshingLQ=false in order to create high quality triangles everywhere. By using bGridMeshingLQ=true
you can save time but a few bad shaped triangles may remain. This option works only together with grid-meshing.
◆ bKeepExistingSteinerPoints
bool GEOM_FADE25D::MeshGenParams::bKeepExistingSteinerPoints |
A previous call to refine() or refineAdvanced() may have created Steiner points. These may be partially or entirely removed during a later refinement call, even (!) if this later refinement takes place in a different zone. It depends on your application if this behavior is desired or not. Usually you want to preserve the points, thus the default value of /p bKeepExistingSteinerPoints is true.
◆ bReproducibleResults
bool GEOM_FADE25D::MeshGenParams::bReproducibleResults |
By default the algorithm generates reproducible triangulations. If not required you can disable that with bReproducibleResults=false
to save time.
- Note
- Reproducible results are created inside
pZone
. If you need reproducable results outside also then create a global zone and call unifyGrid(0) once.
◆ capAspectLimit
double GEOM_FADE25D::MeshGenParams::capAspectLimit |
Limits the quotient edgeLength / height. Default value: 10.0
◆ command
int GEOM_FADE25D::MeshGenParams::command |
A command for development, not for public use. Will vanish soon.
◆ gridLength
double GEOM_FADE25D::MeshGenParams::gridLength |
Set gridLength > 0 to mesh large enough areas with grid points. Border areas and narrow stripes where a grid does not fit are automatically meshed using classic Delaunay methods. By default gridLength=0 (off).
- Note
- The length of the diagonals in the grid is sqrt(2)*gridLength and the algorithm may automatically adapt the gridLength a bit such that the grid fits better into the shape.
Grid Meshing axis aligned
◆ gridPoint
Point2 GEOM_FADE25D::MeshGenParams::gridPoint |
An optional point through which the grid-mesh must pass
◆ gridVector
Vector2 GEOM_FADE25D::MeshGenParams::gridVector |
When grid-meshing is used the grid is aligned to the gridVector
. By default gridVector
is axis aligned.
Grid Meshing along Vector2(1.0,0.3,0.0)
◆ growFactor
double GEOM_FADE25D::MeshGenParams::growFactor |
Limits the growth of adjacent triangles. The mesh is constructed such that for any two adjacent triangles t0 and t1 (where t0 is the larger one) area(t0)/area(t1) < growFactor. Recommendation: growFactor>5.0, Default: growFactor=DBL_MAX
◆ growFactorMinArea
double GEOM_FADE25D::MeshGenParams::growFactorMinArea |
The growFactor value is ignored for triangles with a smaller area than growFactorMinArea. This value prevents generation of hundreds of tiny triangles around one that is unusually small. Default: 0.001
◆ maxEdgeLength
double GEOM_FADE25D::MeshGenParams::maxEdgeLength |
This value is returned by the default implementation of getMaxEdgeLength(Triangle* pT). Larger edges are automatically subdivided. If a custom implementation of getMaxEdgeLength(Triangle* pT) is provided then this value is ignored. Default value: DBL_MAX.
◆ maxHeightError
double GEOM_FADE25D::MeshGenParams::maxHeightError |
If pHeightGuideTriangulation is set and the height error exceeds locally maxHeightError then the triangulation is further refined.
◆ maxTriangleArea
double GEOM_FADE25D::MeshGenParams::maxTriangleArea |
This value is returned by the default implementation of getMaxTriangleArea(Triangle* pT). Larger triangles are automatically subdivided. If a custom implementation of getMaxTriangleArea(Triangle* pT) is provided then this value is ignored. Default value: DBL_MAX.
◆ minAngleDegree
double GEOM_FADE25D::MeshGenParams::minAngleDegree |
Minimum interior angle: Default: 20.0, maximum: 30.0
◆ minEdgeLength
double GEOM_FADE25D::MeshGenParams::minEdgeLength |
Edges below the minimum length are not subdivided. This parameter is useful to avoid tiny triangles. Default: 0.001
◆ pHeightGuideTriangulation
Fade_2D* GEOM_FADE25D::MeshGenParams::pHeightGuideTriangulation |
When new vertices are created then their height (z-coordinate) is usually computed from the existing triangles. In a situation where an extra triangulation with more accurate heights exists this extra triangulation cn be set als height guide triangulation. In this case the z-coordinates are computed from the triangles of the height guide triangulation.
The documentation for this class was generated from the following file: