66#ifndef Foam_isoSurfacePoint_H
67#define Foam_isoSurfacePoint_H
99 const scalar mergeDistance_;
131 void syncUnseparatedPoints
134 const point& nullValue
192 void calcSnappedPoint
194 const bitSet& isBoundaryPoint,
228 void generateTriPoints
254 label generateFaceTriPoints
269 const bool hasNeiSnap,
270 const Type& neiSnapPt,
277 void generateTriPoints
306 const bool checkDuplicates,
313 static void trimToPlanes
321 static void trimToBox
330 static void trimToBox
Info<< nl;Info<< "Write faMesh in vtk format:"<< nl;{ vtk::uindirectPatchWriter writer(aMesh.patch(), fileName(aMesh.time().globalPath()/vtkBaseFileName));writer.writeGeometry();globalIndex procAddr(aMesh.nFaces());labelList cellIDs;if(UPstream::master()) { cellIDs.resize(procAddr.totalSize());for(const labelRange &range :procAddr.ranges()) { auto slice=cellIDs.slice(range);slice=identity(range);} } writer.beginCellData(4);writer.writeProcIDs();writer.write("cellID", cellIDs);writer.write("area", aMesh.S().field());writer.write("normal", aMesh.faceAreaNormals());writer.beginPointData(1);writer.write("normal", aMesh.pointAreaNormals());Info<< " "<< writer.output().name()<< nl;}{ vtk::lineWriter writer(aMesh.points(), aMesh.edges(), fileName(aMesh.time().globalPath()/(vtkBaseFileName+"-edges")));writer.writeGeometry();writer.beginCellData(4);writer.writeProcIDs();{ Field< scalar > fld(faMeshTools::flattenEdgeField(aMesh.magLe(), true))
A 1D vector of objects of type <T> that resizes itself as necessary to accept the new objects.
Generic templated field type that is much like a Foam::List except that it is expected to hold numeri...
A 1D vector of objects of type <T> with a fixed length <N>.
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
A list of pointers to objects of type <T>, with allocation/deallocation management of the pointers....
A 1D vector of objects of type <T>, where the size of the vector is known and can be used for subscri...
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
A bitSet stores bits (elements with only two states) in packed internal format and supports a variety...
The boundaryRegion persistent data saved as a Map<dictionary>.
The coupledPolyPatch is an abstract base class for patches that couple regions of the computational d...
A face is a list of labels corresponding to mesh vertices.
Abstract base class for interpolating in 1D.
isoSurfaceBase(const isoSurfaceBase &)=delete
No copy construct.
const scalarField & cellValues() const noexcept
The mesh cell values used for creating the iso-surface.
const scalarField & pointValues() const noexcept
The mesh point values used for creating the iso-surface.
Preferences for controlling iso-surface algorithms.
isoSurfaceParams(const algorithmType algo=algorithmType::ALGO_DEFAULT, const filterType filter=filterType::DIAGCELL) noexcept
Default construct, or with specified algorithm.
isoSurfacePoint(const volScalarField &cellValues, const scalarField &pointValues, const scalar iso, const isoSurfaceParams ¶ms=isoSurfaceParams(), const bitSet &ignoreCells=bitSet())
Construct from cell values and point values.
friend class isoSurfaceCell
Declare friendship to share some functionality.
TypeName("isoSurfacePoint")
Runtime type information.
virtual ~isoSurfacePoint()=default
Destructor.
friend class isoSurfaceTopo
Geometric class that creates a 3D plane and can return the intersection point between a line and the ...
A class for managing temporary objects.
Standard boundBox with extra functionality for use in octree.
Triangle point storage. Default constructable (triangle is not).
Triangulated surface description with patch information.
const volScalarField & p0
#define declareIsoSurfaceInterpolateMethod(Type)
GeometricField< vector, fvPatchField, volMesh > volVectorField
GeometricField< Type, fvPatchField, volMesh > VolumeField
A volume field for a given type.
List< label > labelList
A List of labels.
GeometricField< scalar, fvPatchField, volMesh > volScalarField
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
vector point
Point is a vector.
triangle< point, const point & > triPointRef
A triangle using referred points.
vectorField pointField
pointField is a vectorField.
SphericalTensor< scalar > sphericalTensor
SphericalTensor of scalars, i.e. SphericalTensor<scalar>.
SymmTensor< scalar > symmTensor
SymmTensor of scalars, i.e. SymmTensor<scalar>.
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.