The MeshObject class provides an interface for the underlying MeshKernel class and most of its algorithm on it. More...
#include <Mesh.h>
Classes | |
class | const_facet_iterator |
class | const_point_iterator |
Public Types | |
enum | CutType { INNER, OUTER } |
enum | GeometryType { PLANE, CYLINDER, SPHERE } |
typedef std::pair< Base::Vector3f, Base::Vector3f > | TPlane |
typedef std::list< std::vector< Base::Vector3f > > | TPolylines |
Public Member Functions | |
MeshObject () | |
MeshObject (const MeshCore::MeshKernel &Kernel) | |
MeshObject (const MeshCore::MeshKernel &Kernel, const Base::Matrix4D &Mtrx) | |
MeshObject (const MeshObject &) | |
void | operator= (const MeshObject &) |
virtual | ~MeshObject () |
Subelement management | |
virtual std::vector< const char * > | getElementTypes (void) const |
Sub type list List of different subelement types its NOT a list of the subelements itself. More... | |
virtual unsigned long | countSubElements (const char *Type) const |
virtual Data::Segment * | getSubElement (const char *Type, unsigned long) const |
get the subelement by type and number More... | |
virtual void | getFacesFromSubelement (const Data::Segment *, std::vector< Base::Vector3d > &Points, std::vector< Base::Vector3d > &PointNormals, std::vector< Facet > &faces) const |
Get faces from segment. More... | |
void | setTransform (const Base::Matrix4D &rclTrf) |
Override the current transformation with the new one. More... | |
Base::Matrix4D | getTransform (void) const |
Return the current matrix This method has to be handled by the child classes. More... | |
void | transformGeometry (const Base::Matrix4D &rclMat) |
Applies a transformation on the real geometric data type. More... | |
void | swap (MeshCore::MeshKernel &Kernel) |
Swaps the content of Kernel and the internal mesh kernel. More... | |
void | swap (MeshObject &mesh) |
Querying | |
std::string | representation () const |
std::string | topologyInfo () const |
unsigned long | countPoints () const |
unsigned long | countFacets () const |
unsigned long | countEdges () const |
unsigned long | countSegments () const |
bool | isSolid () const |
MeshPoint | getPoint (unsigned long) const |
Mesh::Facet | getFacet (unsigned long) const |
double | getSurface () const |
double | getVolume () const |
virtual void | getPoints (std::vector< Base::Vector3d > &Points, std::vector< Base::Vector3d > &Normals, float Accuracy, uint16_t flags=0) const |
Get points from object with given accuracy. More... | |
virtual void | getFaces (std::vector< Base::Vector3d > &Points, std::vector< Facet > &Topo, float Accuracy, uint16_t flags=0) const |
Get faces from object with given accuracy. More... | |
std::vector< unsigned long > | getPointsFromFacets (const std::vector< unsigned long > &facets) const |
void | setKernel (const MeshCore::MeshKernel &m) |
MeshCore::MeshKernel & | getKernel (void) |
const MeshCore::MeshKernel & | getKernel (void) const |
virtual Base::BoundBox3d | getBoundBox (void) const |
Get the bound box. More... | |
I/O | |
unsigned int | getMemSize (void) const |
This method is used to get the size of objects It is not meant to have the exact size, it is more or less an estimation which runs fast! Is it two bytes or a GB? More... | |
void | Save (Base::Writer &writer) const |
This method is used to save properties to an XML document. More... | |
void | SaveDocFile (Base::Writer &writer) const |
This method is used to save large amounts of data to a binary file. More... | |
void | Restore (Base::XMLReader &reader) |
This method is used to restore properties from an XML document. More... | |
void | RestoreDocFile (Base::Reader &reader) |
This method is used to restore large amounts of data from a file In this method you simply stream in your SaveDocFile() saved data. More... | |
void | save (const char *file, MeshCore::MeshIO::Format f=MeshCore::MeshIO::Undefined, const MeshCore::Material *mat=0, const char *objectname=0) const |
void | save (std::ostream &, MeshCore::MeshIO::Format f, const MeshCore::Material *mat=0, const char *objectname=0) const |
bool | load (const char *file, MeshCore::Material *mat=0) |
bool | load (std::istream &, MeshCore::MeshIO::Format f, MeshCore::Material *mat=0) |
void | save (std::ostream &) const |
void | load (std::istream &) |
Manipulation | |
void | addFacet (const MeshCore::MeshGeomFacet &facet) |
void | addFacets (const std::vector< MeshCore::MeshGeomFacet > &facets) |
void | addFacets (const std::vector< MeshCore::MeshFacet > &facets, bool checkManifolds) |
void | addFacets (const std::vector< MeshCore::MeshFacet > &facets, const std::vector< Base::Vector3f > &points, bool checkManifolds) |
void | addFacets (const std::vector< Data::ComplexGeoData::Facet > &facets, const std::vector< Base::Vector3d > &points, bool checkManifolds) |
void | setFacets (const std::vector< MeshCore::MeshGeomFacet > &facets) |
void | setFacets (const std::vector< Data::ComplexGeoData::Facet > &facets, const std::vector< Base::Vector3d > &points) |
void | addMesh (const MeshObject &) |
Combines two independent mesh objects. More... | |
void | addMesh (const MeshCore::MeshKernel &) |
Combines two independent mesh objects. More... | |
void | deleteFacets (const std::vector< unsigned long > &removeIndices) |
void | deletePoints (const std::vector< unsigned long > &removeIndices) |
std::vector< std::vector< unsigned long > > | getComponents () const |
unsigned long | countComponents () const |
void | removeComponents (unsigned long) |
unsigned long | getPointDegree (const std::vector< unsigned long > &facets, std::vector< unsigned long > &point_degree) const |
Checks for the given facet indices what will be the degree for each point when these facets are removed from the mesh kernel. More... | |
void | fillupHoles (unsigned long, int, MeshCore::AbstractPolygonTriangulator &) |
void | offset (float fSize) |
void | offsetSpecial2 (float fSize) |
void | offsetSpecial (float fSize, float zmax, float zmin) |
void | clear (void) |
clears the Mesh More... | |
void | transformToEigenSystem () |
Base::Matrix4D | getEigenSystem (Base::Vector3d &v) const |
void | movePoint (unsigned long, const Base::Vector3d &v) |
void | setPoint (unsigned long, const Base::Vector3d &v) |
void | smooth (int iterations, float d_max) |
void | decimate (float fTolerance, float fReduction) |
void | decimate (int targetSize) |
Base::Vector3d | getPointNormal (unsigned long) const |
std::vector< Base::Vector3d > | getPointNormals () const |
void | crossSections (const std::vector< TPlane > &, std::vector< TPolylines > §ions, float fMinEps=1.0e-2f, bool bConnectPolygons=false) const |
void | cut (const Base::Polygon2d &polygon, const Base::ViewProjMethod &proj, CutType) |
void | trim (const Base::Polygon2d &polygon, const Base::ViewProjMethod &proj, CutType) |
void | trim (const Base::Vector3f &base, const Base::Vector3f &normal) |
Selection | |
void | deleteSelectedFacets () |
void | deleteSelectedPoints () |
void | addFacetsToSelection (const std::vector< unsigned long > &) const |
void | addPointsToSelection (const std::vector< unsigned long > &) const |
void | removeFacetsFromSelection (const std::vector< unsigned long > &) const |
void | removePointsFromSelection (const std::vector< unsigned long > &) const |
unsigned long | countSelectedFacets () const |
bool | hasSelectedFacets () const |
unsigned long | countSelectedPoints () const |
bool | hasSelectedPoints () const |
void | getFacetsFromSelection (std::vector< unsigned long > &) const |
void | getPointsFromSelection (std::vector< unsigned long > &) const |
void | clearFacetSelection () const |
void | clearPointSelection () const |
Boolean operations | |
MeshObject * | unite (const MeshObject &) const |
MeshObject * | intersect (const MeshObject &) const |
MeshObject * | subtract (const MeshObject &) const |
MeshObject * | inner (const MeshObject &) const |
MeshObject * | outer (const MeshObject &) const |
Topological operations | |
void | refine () |
void | removeNeedles (float) |
void | optimizeTopology (float) |
void | optimizeEdges () |
void | splitEdges () |
void | splitEdge (unsigned long, unsigned long, const Base::Vector3f &) |
void | splitFacet (unsigned long, const Base::Vector3f &, const Base::Vector3f &) |
void | swapEdge (unsigned long, unsigned long) |
void | collapseEdge (unsigned long, unsigned long) |
void | collapseFacet (unsigned long) |
void | collapseFacets (const std::vector< unsigned long > &) |
void | insertVertex (unsigned long, const Base::Vector3f &v) |
void | snapVertex (unsigned long, const Base::Vector3f &v) |
Mesh validation | |
unsigned long | countNonUniformOrientedFacets () const |
void | flipNormals () |
void | harmonizeNormals () |
void | validateIndices () |
void | validateCaps (float fMaxAngle, float fSplitFactor) |
void | validateDeformations (float fMaxAngle, float fEps) |
void | validateDegenerations (float fEps) |
void | removeDuplicatedPoints () |
void | removeDuplicatedFacets () |
bool | hasNonManifolds () const |
void | removeNonManifolds () |
void | removeNonManifoldPoints () |
bool | hasSelfIntersections () const |
void | removeSelfIntersections () |
void | removeSelfIntersections (const std::vector< unsigned long > &) |
void | removeFoldsOnSurface () |
void | removeFullBoundaryFacets () |
bool | hasInvalidPoints () const |
void | removeInvalidPoints () |
void | mergeFacets () |
Mesh segments | |
void | addSegment (const Segment &) |
void | addSegment (const std::vector< unsigned long > &) |
const Segment & | getSegment (unsigned long) const |
Segment & | getSegment (unsigned long) |
MeshObject * | meshFromSegment (const std::vector< unsigned long > &) const |
std::vector< Segment > | getSegmentsOfType (GeometryType, float dev, unsigned long minFacets) const |
Public Member Functions inherited from Data::ComplexGeoData | |
ComplexGeoData (void) | |
Constructor. More... | |
virtual | ~ComplexGeoData () |
Destructor. More... | |
virtual Segment * | getSubElementByName (const char *Name) const |
get subelement by combined name More... | |
virtual void | getLinesFromSubelement (const Segment *, std::vector< Base::Vector3d > &Points, std::vector< Line > &lines) const |
Get lines from segment. More... | |
void | applyTransform (const Base::Matrix4D &rclTrf) |
Applies an additional transformation to the current transformation. More... | |
void | applyTranslation (const Base::Vector3d &) |
Applies an additional translation to the current transformation. More... | |
void | applyRotation (const Base::Rotation &) |
Applies an additional rotation to the current transformation. More... | |
void | setPlacement (const Base::Placement &rclPlacement) |
Override the current transformation with a placement using the setTransform() method. More... | |
Base::Placement | getPlacement () const |
Return the current transformation as placement using getTransform(). More... | |
virtual Base::Vector3d | getPointFromLineIntersection (const Base::Vector3f &base, const Base::Vector3f &dir) const |
Get point from line object intersection More... | |
virtual void | getLines (std::vector< Base::Vector3d > &Points, std::vector< Line > &lines, float Accuracy, uint16_t flags=0) const |
Get lines from object with given accuracy. More... | |
virtual bool | getCenterOfGravity (Base::Vector3d ¢er) const |
Get the center of gravity If this method is implemented then true is returned and the center of gravity. More... | |
Public Member Functions inherited from Base::Persistence | |
void | dumpToStream (std::ostream &stream, int compression) |
virtual Base::Type | getTypeId (void) const |
void | restoreFromStream (std::istream &stream) |
Public Member Functions inherited from Base::BaseClass | |
BaseClass () | |
Construction. More... | |
virtual PyObject * | getPyObject (void) |
This method returns the Python wrapper for a C++ object. More... | |
bool | isDerivedFrom (const Type type) const |
virtual void | setPyObject (PyObject *) |
virtual | ~BaseClass () |
Destruction. More... | |
Public Member Functions inherited from Base::Handled | |
int | getRefCount (void) const |
Handled () | |
const Handled & | operator= (const Handled &) |
void | ref () const |
void | unref () const |
virtual | ~Handled () |
Static Public Member Functions | |
Primitives | |
static MeshObject * | createMeshFromList (Py::List &list) |
static MeshObject * | createSphere (float, int) |
static MeshObject * | createEllipsoid (float, float, int) |
static MeshObject * | createCylinder (float, float, int, float, int) |
static MeshObject * | createCone (float, float, float, int, float, int) |
static MeshObject * | createTorus (float, float, int) |
static MeshObject * | createCube (float, float, float) |
static MeshObject * | createCube (float, float, float, float) |
Static Public Member Functions inherited from Data::ComplexGeoData | |
static const std::string & | elementMapPrefix () |
Special prefix to mark the beginning of a mapped sub-element name. More... | |
static const std::string & | tagPostfix () |
Special postfix to mark the following tag. More... | |
static const std::string & | indexPostfix () |
Special postfix to mark the index of an array element. More... | |
static const std::string & | missingPrefix () |
Special prefix to mark a missing element. More... | |
static bool | hasMissingElement (const char *subname) |
Check if a subname contains missing element. More... | |
static const char * | isMappedElement (const char *name) |
Check if the name starts with elementMapPrefix() More... | |
static std::string | newElementName (const char *name) |
Strip out the trailing element name if there is mapped element name precedes it. More... | |
static std::string | oldElementName (const char *name) |
Strip out the mapped element name if there is one. More... | |
static std::string | noElementName (const char *name) |
Strip out the old and new element name if there is one. More... | |
static const char * | findElementName (const char *subname) |
Find the start of an element name in a subname. More... | |
static const char * | hasMappedElementName (const char *subname) |
Static Public Member Functions inherited from Base::Persistence | |
static void * | create (void) |
static std::string | encodeAttribute (const std::string &) |
Encodes an attribute upon saving. More... | |
static Base::Type | getClassTypeId (void) |
static void | init (void) |
Static Public Member Functions inherited from Base::BaseClass | |
static void * | create (void) |
static Type | getClassTypeId (void) |
static void | init (void) |
Iterator | |
typedef std::vector< Segment >::const_iterator | const_segment_iterator |
class | Segment |
const_point_iterator | points_begin () const |
const_point_iterator | points_end () const |
const_facet_iterator | facets_begin () const |
const_facet_iterator | facets_end () const |
const_segment_iterator | segments_begin () const |
const_segment_iterator | segments_end () const |
Additional Inherited Members | |
Public Attributes inherited from Data::ComplexGeoData | |
long | Tag |
Protected Member Functions inherited from Data::ComplexGeoData | |
Base::Vector3d | transformToOutside (const Base::Vector3f &vec) const |
from local to outside More... | |
Base::Vector3f | transformToInside (const Base::Vector3d &vec) const |
from local to inside More... | |
Static Protected Member Functions inherited from Base::BaseClass | |
static void | initSubclass (Base::Type &toInit, const char *ClassName, const char *ParentName, Type::instantiationMethod method=nullptr) |
Detailed Description
The MeshObject class provides an interface for the underlying MeshKernel class and most of its algorithm on it.
- Note
- Each instance of MeshObject has its own instance of a MeshKernel so it's not possible that several instances of MeshObject manage one instance of MeshKernel.
Member Typedef Documentation
◆ const_segment_iterator
typedef std::vector<Segment>::const_iterator Mesh::MeshObject::const_segment_iterator |
◆ TPlane
typedef std::pair<Base::Vector3f, Base::Vector3f> Mesh::MeshObject::TPlane |
◆ TPolylines
typedef std::list<std::vector<Base::Vector3f> > Mesh::MeshObject::TPolylines |
Member Enumeration Documentation
◆ CutType
◆ GeometryType
Constructor & Destructor Documentation
◆ MeshObject() [1/4]
MeshObject::MeshObject | ( | ) |
Referenced by inner(), intersect(), meshFromSegment(), outer(), subtract(), and unite().
◆ MeshObject() [2/4]
|
explicit |
◆ MeshObject() [3/4]
|
explicit |
◆ MeshObject() [4/4]
MeshObject::MeshObject | ( | const MeshObject & | mesh | ) |
◆ ~MeshObject()
|
virtual |
Member Function Documentation
◆ addFacet()
void MeshObject::addFacet | ( | const MeshCore::MeshGeomFacet & | facet | ) |
Referenced by Mesh::MeshPy::addFacet().
◆ addFacets() [1/4]
void MeshObject::addFacets | ( | const std::vector< Data::ComplexGeoData::Facet > & | facets, |
const std::vector< Base::Vector3d > & | points, | ||
bool | checkManifolds | ||
) |
◆ addFacets() [2/4]
void MeshObject::addFacets | ( | const std::vector< MeshCore::MeshFacet > & | facets, |
bool | checkManifolds | ||
) |
◆ addFacets() [3/4]
void MeshObject::addFacets | ( | const std::vector< MeshCore::MeshFacet > & | facets, |
const std::vector< Base::Vector3f > & | points, | ||
bool | checkManifolds | ||
) |
◆ addFacets() [4/4]
void MeshObject::addFacets | ( | const std::vector< MeshCore::MeshGeomFacet > & | facets | ) |
◆ addFacetsToSelection()
void MeshObject::addFacetsToSelection | ( | const std::vector< unsigned long > & | inds | ) | const |
References MeshCore::MeshFacet::SELECTED, and MeshCore::MeshAlgorithm::SetFacetsFlag().
Referenced by MeshGui::ViewProviderMesh::addSelection(), MeshGui::ViewProviderMesh::selectArea(), MeshGui::ViewProviderMesh::selectComponent(), MeshGui::ViewProviderMesh::selectFacet(), and MeshGui::ViewProviderMesh::setSelection().
◆ addMesh() [1/2]
void MeshObject::addMesh | ( | const MeshCore::MeshKernel & | kernel | ) |
Combines two independent mesh objects.
- Note
- The mesh object we want to add must not overlap or intersect with this mesh object.
◆ addMesh() [2/2]
void MeshObject::addMesh | ( | const MeshObject & | mesh | ) |
Combines two independent mesh objects.
- Note
- The mesh object we want to add must not overlap or intersect with this mesh object.
Referenced by Mesh::MeshPy::addMesh(), Mesh::MergeExporter::addMeshFeat(), and Mesh::MergeExporter::addPartFeat().
◆ addPointsToSelection()
void MeshObject::addPointsToSelection | ( | const std::vector< unsigned long > & | inds | ) | const |
References MeshCore::MeshPoint::SELECTED, and MeshCore::MeshAlgorithm::SetPointsFlag().
◆ addSegment() [1/2]
void MeshObject::addSegment | ( | const Segment & | s | ) |
◆ addSegment() [2/2]
void MeshObject::addSegment | ( | const std::vector< unsigned long > & | inds | ) |
◆ clear()
void MeshObject::clear | ( | void | ) |
◆ clearFacetSelection()
void MeshObject::clearFacetSelection | ( | ) | const |
References MeshCore::MeshAlgorithm::ResetFacetFlag(), and MeshCore::MeshFacet::SELECTED.
Referenced by MeshGui::ViewProviderMesh::clearSelection(), ReverseEngineeringGui::SegmentationManual::createSegment(), MeshGui::ViewProviderMesh::deleteSelection(), and MeshGui::ViewProviderMesh::setSelection().
◆ clearPointSelection()
void MeshObject::clearPointSelection | ( | ) | const |
References MeshCore::MeshAlgorithm::ResetPointFlag(), and MeshCore::MeshPoint::SELECTED.
◆ collapseEdge()
void MeshObject::collapseEdge | ( | unsigned long | facet, |
unsigned long | neighbour | ||
) |
References MeshCore::MeshTopoAlgorithm::CollapseEdge().
Referenced by Mesh::MeshPy::collapseEdge().
◆ collapseFacet()
void MeshObject::collapseFacet | ( | unsigned long | facet | ) |
References MeshCore::MeshTopoAlgorithm::CollapseFacet().
Referenced by Mesh::MeshPy::collapseFacet().
◆ collapseFacets()
void MeshObject::collapseFacets | ( | const std::vector< unsigned long > & | facets | ) |
References MeshCore::MeshTopoAlgorithm::CollapseFacet().
Referenced by Mesh::MeshPy::collapseFacets().
◆ countComponents()
unsigned long MeshObject::countComponents | ( | ) | const |
References MeshCore::MeshComponents::OverEdge, and MeshCore::MeshComponents::SearchForComponents().
Referenced by Mesh::MeshPy::countComponents().
◆ countEdges()
unsigned long MeshObject::countEdges | ( | ) | const |
◆ countFacets()
unsigned long MeshObject::countFacets | ( | ) | const |
Referenced by Mesh::MergeExporter::addMeshFeat(), Mesh::MergeExporter::addPartFeat(), MeshGui::ViewProviderMesh::deselectFacet(), MeshGui::MeshSelection::fullSelection(), MeshGui::ViewProviderMesh::getFacetsFromPolygon(), MeshGui::ViewProviderMesh::highlightComponents(), MeshGui::ViewProviderMesh::highlightSegments(), MeshGui::ViewProviderMesh::highlightSelection(), MeshGui::ViewProviderMesh::removeFacets(), MeshGui::ViewProviderMesh::selectFacet(), and Mesh::MeshPy::write().
◆ countNonUniformOrientedFacets()
unsigned long MeshObject::countNonUniformOrientedFacets | ( | ) | const |
References MeshCore::MeshEvalOrientation::GetIndices().
Referenced by Mesh::MeshPy::countNonUniformOrientedFacets(), and Mesh::MeshPy::hasNonUniformOrientedFacets().
◆ countPoints()
unsigned long MeshObject::countPoints | ( | ) | const |
◆ countSegments()
unsigned long MeshObject::countSegments | ( | ) | const |
◆ countSelectedFacets()
unsigned long MeshObject::countSelectedFacets | ( | ) | const |
References MeshCore::MeshAlgorithm::CountFacetFlag(), and MeshCore::MeshFacet::SELECTED.
Referenced by hasSelectedFacets().
◆ countSelectedPoints()
unsigned long MeshObject::countSelectedPoints | ( | ) | const |
References MeshCore::MeshAlgorithm::CountPointFlag(), and MeshCore::MeshPoint::SELECTED.
Referenced by hasSelectedPoints().
◆ countSubElements()
|
virtual |
Implements Data::ComplexGeoData.
References countSegments().
◆ createCone()
|
static |
References createMeshFromList().
Referenced by Mesh::Cone::execute().
◆ createCube() [1/2]
|
static |
References createMeshFromList().
Referenced by Mesh::Cube::execute().
◆ createCube() [2/2]
|
static |
References createMeshFromList().
◆ createCylinder()
|
static |
References createMeshFromList().
Referenced by Mesh::Cylinder::execute().
◆ createEllipsoid()
|
static |
References createMeshFromList().
Referenced by Mesh::Ellipsoid::execute().
◆ createMeshFromList()
|
static |
References MeshCore::MeshGeomFacet::CalcNormal().
Referenced by createCone(), createCube(), createCylinder(), createEllipsoid(), createSphere(), createTorus(), and Mesh::PropertyMeshKernel::setPyObject().
◆ createSphere()
|
static |
References createMeshFromList().
Referenced by Mesh::Sphere::execute().
◆ createTorus()
|
static |
References createMeshFromList().
Referenced by Mesh::Torus::execute().
◆ crossSections()
void MeshObject::crossSections | ( | const std::vector< TPlane > & | planes, |
std::vector< TPolylines > & | sections, | ||
float | fMinEps = 1.0e-2f , |
||
bool | bConnectPolygons = false |
||
) | const |
References MeshCore::MeshAlgorithm::CutWithPlane(), and MeshCore::MeshKernel::Transform().
Referenced by Mesh::MeshPy::crossSections().
◆ cut()
void MeshObject::cut | ( | const Base::Polygon2d & | polygon, |
const Base::ViewProjMethod & | proj, | ||
MeshObject::CutType | type | ||
) |
References MeshCore::MeshAlgorithm::CheckFacets(), deleteFacets(), INNER, inner(), and OUTER.
Referenced by Mesh::MeshPy::cut().
◆ decimate() [1/2]
void MeshObject::decimate | ( | float | fTolerance, |
float | fReduction | ||
) |
References MeshCore::MeshSimplify::simplify().
Referenced by Mesh::MeshPy::decimate().
◆ decimate() [2/2]
void MeshObject::decimate | ( | int | targetSize | ) |
References MeshCore::MeshSimplify::simplify().
◆ deleteFacets()
void MeshObject::deleteFacets | ( | const std::vector< unsigned long > & | removeIndices | ) |
◆ deletePoints()
void MeshObject::deletePoints | ( | const std::vector< unsigned long > & | removeIndices | ) |
Referenced by deleteSelectedPoints(), and removeInvalidPoints().
◆ deleteSelectedFacets()
void MeshObject::deleteSelectedFacets | ( | ) |
◆ deleteSelectedPoints()
void MeshObject::deleteSelectedPoints | ( | ) |
◆ facets_begin()
const_facet_iterator Mesh::MeshObject::facets_begin | ( | ) | const |
◆ facets_end()
const_facet_iterator Mesh::MeshObject::facets_end | ( | ) | const |
◆ fillupHoles()
void MeshObject::fillupHoles | ( | unsigned long | length, |
int | level, | ||
MeshCore::AbstractPolygonTriangulator & | cTria | ||
) |
References MeshCore::MeshTopoAlgorithm::FillupHoles().
Referenced by Mesh::MeshPy::fillupHoles().
◆ flipNormals()
void MeshObject::flipNormals | ( | ) |
References MeshCore::MeshTopoAlgorithm::FlipNormals().
Referenced by Mesh::MeshPy::flipNormals().
◆ getBoundBox()
|
virtual |
Get the bound box.
Implements Data::ComplexGeoData.
References Base::BoundBox3< _Precision >::Add(), Base::BoundBox3< _Precision >::CalcPoint(), Base::BoundBox3< _Precision >::IsValid(), and Data::ComplexGeoData::transformToOutside().
◆ getComponents()
std::vector< std::vector< unsigned long > > MeshObject::getComponents | ( | ) | const |
◆ getEigenSystem()
Base::Matrix4D MeshObject::getEigenSystem | ( | Base::Vector3d & | v | ) | const |
References MeshCore::MeshEigensystem::Evaluate(), MeshCore::MeshEigensystem::GetBoundings(), Base::Vector3< _Precision >::Set(), MeshCore::MeshEigensystem::Transform(), Base::Vector3< _Precision >::x, Base::Vector3< _Precision >::y, and Base::Vector3< _Precision >::z.
Referenced by Mesh::MeshPy::getEigenSystem().
◆ getElementTypes()
|
virtual |
Sub type list List of different subelement types its NOT a list of the subelements itself.
Implements Data::ComplexGeoData.
◆ getFaces()
|
virtual |
Get faces from object with given accuracy.
Reimplemented from Data::ComplexGeoData.
References getPoint(), and Data::ComplexGeoData::Facet::I1.
Referenced by getFacesFromSubelement(), and Mesh::MeshPy::getTopology().
◆ getFacesFromSubelement()
|
virtual |
◆ getFacet()
Mesh::Facet MeshObject::getFacet | ( | unsigned long | index | ) | const |
◆ getFacetsFromSelection()
void MeshObject::getFacetsFromSelection | ( | std::vector< unsigned long > & | inds | ) | const |
◆ getKernel() [1/2]
MeshCore::MeshKernel& Mesh::MeshObject::getKernel | ( | void | ) |
Referenced by Mesh::MeshPy::collapseEdge(), MeshPartGui::CurveOnMeshHandler::Private::createGrid(), MeshGui::MeshSelection::deleteSelection(), MeshGui::MeshSelection::deleteSelectionBorder(), MeshGui::MeshSelection::deselectComponent(), MeshGui::ViewProviderMesh::deselectComponent(), Mesh::Curvature::execute(), Mesh::SetOperations::execute(), Mesh::SegmentByMesh::execute(), MeshGui::ViewProviderMesh::faceInfo(), MeshGui::ViewProviderMesh::fillHole(), MeshGui::ViewProviderMesh::getFacetsFromPolygon(), Mesh::MeshPy::getInternalFacets(), Mesh::MeshPy::getNonUniformOrientedFacets(), Mesh::MeshPy::getSegmentsByCurvature(), MeshGui::ViewProviderMeshNode::handleEvent(), Inspection::InspectNominalFastMesh::InspectNominalFastMesh(), MeshGui::ViewProviderMesh::invertSelection(), MeshGui::ViewProviderMesh::isFacetSelected(), MeshPartGui::Mesh2ShapeGmsh::loadOutput(), MeshGui::RemeshGmsh::loadOutput(), MeshGui::SoFCMeshPickNode::notify(), MeshGui::DlgEvaluateMeshImp::on_analyzeDegeneratedButton_clicked(), MeshGui::DlgEvaluateMeshImp::on_analyzeDuplicatedFacesButton_clicked(), MeshGui::DlgEvaluateMeshImp::on_analyzeDuplicatedPointsButton_clicked(), MeshGui::DlgEvaluateMeshImp::on_analyzeFoldsButton_clicked(), MeshGui::DlgEvaluateMeshImp::on_analyzeIndicesButton_clicked(), MeshGui::DlgEvaluateMeshImp::on_analyzeNonmanifoldsButton_clicked(), MeshGui::DlgEvaluateMeshImp::on_analyzeOrientationButton_clicked(), MeshGui::DlgEvaluateMeshImp::on_analyzeSelfIntersectionButton_clicked(), MeshGui::DlgEvaluateMeshImp::on_repairAllTogether_clicked(), MeshGui::SoFCMeshPickNode::pick(), Mesh::MeshPy::rebuildNeighbourHood(), Mesh::MeshPy::rotate(), MeshGui::ViewProviderMesh::segmentMesh(), MeshGui::MeshSelection::selectComponent(), MeshGui::ViewProviderMesh::selectComponent(), MeshGui::DlgEvaluateMeshImp::showInformation(), Mesh::MeshPy::smooth(), Mesh::MeshPy::splitEdge(), Mesh::MeshPy::splitFacet(), MeshGui::ViewProviderMesh::splitMesh(), Mesh::MeshPy::swapEdge(), Mesh::MeshPy::transform(), Mesh::MeshPy::translate(), and MeshGui::PropertyMeshKernelItem::value().
◆ getKernel() [2/2]
const MeshCore::MeshKernel& Mesh::MeshObject::getKernel | ( | void | ) | const |
◆ getMemSize()
|
virtual |
This method is used to get the size of objects It is not meant to have the exact size, it is more or less an estimation which runs fast! Is it two bytes or a GB?
Implements Base::Persistence.
◆ getPoint()
MeshPoint MeshObject::getPoint | ( | unsigned long | index | ) | const |
References Base::Vector3< _Precision >::x, Base::Vector3< _Precision >::y, and Base::Vector3< _Precision >::z.
Referenced by getFaces().
◆ getPointDegree()
unsigned long MeshObject::getPointDegree | ( | const std::vector< unsigned long > & | facets, |
std::vector< unsigned long > & | point_degree | ||
) | const |
Checks for the given facet indices what will be the degree for each point when these facets are removed from the mesh kernel.
The point degree information is stored in point_degree. The return value gives the number of points which will have a degree of zero.
Referenced by MeshGui::ViewProviderMesh::removeFacets().
◆ getPointNormal()
Base::Vector3d MeshObject::getPointNormal | ( | unsigned long | index | ) | const |
◆ getPointNormals()
std::vector< Base::Vector3d > MeshObject::getPointNormals | ( | ) | const |
◆ getPoints()
|
virtual |
Get points from object with given accuracy.
Reimplemented from Data::ComplexGeoData.
References Base::Vector3< _Precision >::x, Base::Vector3< _Precision >::y, and Base::Vector3< _Precision >::z.
◆ getPointsFromFacets()
std::vector< unsigned long > MeshObject::getPointsFromFacets | ( | const std::vector< unsigned long > & | facets | ) | const |
◆ getPointsFromSelection()
void MeshObject::getPointsFromSelection | ( | std::vector< unsigned long > & | inds | ) | const |
References MeshCore::MeshAlgorithm::GetPointsFlag(), and MeshCore::MeshPoint::SELECTED.
Referenced by Mesh::MeshPy::getPointSelection().
◆ getSegment() [1/2]
Segment & MeshObject::getSegment | ( | unsigned long | index | ) |
◆ getSegment() [2/2]
const Segment & MeshObject::getSegment | ( | unsigned long | index | ) | const |
◆ getSegmentsOfType()
std::vector< Segment > MeshObject::getSegmentsOfType | ( | MeshObject::GeometryType | type, |
float | dev, | ||
unsigned long | minFacets | ||
) | const |
◆ getSubElement()
|
virtual |
get the subelement by type and number
Implements Data::ComplexGeoData.
◆ getSurface()
double MeshObject::getSurface | ( | ) | const |
◆ getTransform()
|
virtual |
Return the current matrix This method has to be handled by the child classes.
the actual placement and matrix is not part of this class.
Implements Data::ComplexGeoData.
Referenced by MeshPartGui::CurveOnMeshHandler::Private::createGrid(), Inspection::InspectActualMesh::InspectActualMesh(), Inspection::InspectNominalFastMesh::InspectNominalFastMesh(), and Inspection::InspectNominalMesh::InspectNominalMesh().
◆ getVolume()
double MeshObject::getVolume | ( | ) | const |
Referenced by TankInstance.Tank::getCoG().
◆ harmonizeNormals()
void MeshObject::harmonizeNormals | ( | ) |
◆ hasInvalidPoints()
bool MeshObject::hasInvalidPoints | ( | ) | const |
References MeshCore::MeshEvalNaNPoints::GetIndices().
Referenced by Mesh::MeshPy::hasInvalidPoints().
◆ hasNonManifolds()
bool MeshObject::hasNonManifolds | ( | ) | const |
References MeshCore::MeshEvalTopology::Evaluate().
Referenced by Mesh::MeshPy::hasNonManifolds().
◆ hasSelectedFacets()
bool MeshObject::hasSelectedFacets | ( | ) | const |
◆ hasSelectedPoints()
bool MeshObject::hasSelectedPoints | ( | ) | const |
References countSelectedPoints().
◆ hasSelfIntersections()
bool MeshObject::hasSelfIntersections | ( | ) | const |
References MeshCore::MeshEvalSelfIntersection::Evaluate().
Referenced by Mesh::MeshPy::hasSelfIntersections().
◆ inner()
MeshObject * MeshObject::inner | ( | const MeshObject & | mesh | ) | const |
References MeshCore::SetOperations::Do(), MeshCore::SetOperations::Inner, MeshObject(), and MeshCore::MeshKernel::Transform().
Referenced by cut(), and Mesh::MeshPy::inner().
◆ insertVertex()
void MeshObject::insertVertex | ( | unsigned long | facet, |
const Base::Vector3f & | v | ||
) |
References MeshCore::MeshTopoAlgorithm::InsertVertex().
Referenced by Mesh::MeshPy::insertVertex().
◆ intersect()
MeshObject * MeshObject::intersect | ( | const MeshObject & | mesh | ) | const |
References MeshCore::SetOperations::Do(), MeshCore::SetOperations::Intersect, MeshObject(), and MeshCore::MeshKernel::Transform().
Referenced by Mesh::MeshPy::intersect().
◆ isSolid()
bool MeshObject::isSolid | ( | ) | const |
References MeshCore::MeshEvalSolid::Evaluate().
Referenced by Mesh::MeshPy::isSolid().
◆ load() [1/3]
bool MeshObject::load | ( | const char * | file, |
MeshCore::Material * | mat = 0 |
||
) |
References MeshCore::Material::binding, Base::FileInfo::dirPath(), MeshCore::MeshOutput::GetFormat(), MeshCore::MeshInput::GetGroupNames(), MeshCore::Material::library, MeshCore::MeshInput::LoadAny(), MeshCore::MeshInput::LoadMTL(), MeshCore::MeshIO::OBJ, MeshCore::MeshIO::PER_FACE, and Base::FileInfo::setFile().
Referenced by Mesh::Import::execute(), Mesh::MeshPy::PyInit(), Mesh::MeshPy::read(), RestoreDocFile(), and Sandbox::MeshLoaderThread::run().
◆ load() [2/3]
void MeshObject::load | ( | std::istream & | in | ) |
◆ load() [3/3]
bool MeshObject::load | ( | std::istream & | str, |
MeshCore::MeshIO::Format | f, | ||
MeshCore::Material * | mat = 0 |
||
) |
References MeshCore::MeshInput::GetGroupNames(), and MeshCore::MeshInput::LoadFormat().
◆ mergeFacets()
void MeshObject::mergeFacets | ( | ) |
References MeshCore::MeshFixMergeFacets::Fixup().
Referenced by Mesh::MeshPy::mergeFacets().
◆ meshFromSegment()
MeshObject * MeshObject::meshFromSegment | ( | const std::vector< unsigned long > & | indices | ) | const |
References MeshCore::MeshKernel::Merge(), and MeshObject().
Referenced by Mesh::MeshPy::getSeparateComponents(), Mesh::MeshPy::meshFromSegment(), and MeshGui::ViewProviderMesh::splitMesh().
◆ movePoint()
void MeshObject::movePoint | ( | unsigned long | index, |
const Base::Vector3d & | v | ||
) |
References Data::ComplexGeoData::transformToInside().
◆ offset()
void MeshObject::offset | ( | float | fSize | ) |
◆ offsetSpecial()
void MeshObject::offsetSpecial | ( | float | fSize, |
float | zmax, | ||
float | zmin | ||
) |
References Base::Vector3< _Precision >::Normalize(), and Base::Vector3< _Precision >::z.
Referenced by Mesh::MeshPy::offsetSpecial().
◆ offsetSpecial2()
void MeshObject::offsetSpecial2 | ( | float | fSize | ) |
References Base::Builder3D::addSingleLine(), Base::Builder3D::addSinglePoint(), MeshCore::MeshTopoAlgorithm::Cleanup(), MeshCore::MeshTopoAlgorithm::CollapseFacet(), MeshCore::MeshGeomFacet::GetGravityPoint(), MeshCore::MeshEvalSelfIntersection::GetIntersections(), MeshCore::MeshGeomFacet::GetNormal(), MeshCore::MeshFacetIterator::Init(), MeshCore::MeshFacet::INVALID, MeshCore::MeshGeomFacet::IsFlag(), Base::Vector3< _Precision >::Length(), MeshCore::MeshFacetIterator::More(), MeshCore::MeshFacetIterator::Next(), Base::Vector3< _Precision >::Normalize(), MeshCore::MeshFacetIterator::Position(), and Base::Builder3D::saveToLog().
Referenced by Mesh::MeshPy::offset().
◆ operator=()
void MeshObject::operator= | ( | const MeshObject & | mesh | ) |
References setTransform().
◆ optimizeEdges()
void MeshObject::optimizeEdges | ( | ) |
References MeshCore::MeshTopoAlgorithm::AdjustEdgesToCurvatureDirection().
Referenced by Mesh::MeshPy::optimizeEdges().
◆ optimizeTopology()
void MeshObject::optimizeTopology | ( | float | fMaxAngle | ) |
References MeshCore::MeshTopoAlgorithm::OptimizeTopology().
Referenced by Mesh::MeshPy::optimizeTopology().
◆ outer()
MeshObject * MeshObject::outer | ( | const MeshObject & | mesh | ) | const |
References MeshCore::SetOperations::Do(), MeshObject(), MeshCore::SetOperations::Outer, and MeshCore::MeshKernel::Transform().
Referenced by Mesh::MeshPy::outer().
◆ points_begin()
const_point_iterator Mesh::MeshObject::points_begin | ( | ) | const |
◆ points_end()
const_point_iterator Mesh::MeshObject::points_end | ( | ) | const |
◆ refine()
void MeshObject::refine | ( | ) |
◆ removeComponents()
void MeshObject::removeComponents | ( | unsigned long | count | ) |
References MeshCore::MeshTopoAlgorithm::FindComponents().
Referenced by Mesh::MeshPy::removeComponents().
◆ removeDuplicatedFacets()
void MeshObject::removeDuplicatedFacets | ( | ) |
References MeshCore::MeshFixDuplicateFacets::Fixup().
Referenced by Mesh::MeshFeaturePy::removeDuplicatedFacets(), and Mesh::MeshPy::removeDuplicatedFacets().
◆ removeDuplicatedPoints()
void MeshObject::removeDuplicatedPoints | ( | ) |
References MeshCore::MeshFixDuplicatePoints::Fixup().
Referenced by Mesh::MeshFeaturePy::removeDuplicatedPoints(), and Mesh::MeshPy::removeDuplicatedPoints().
◆ removeFacetsFromSelection()
void MeshObject::removeFacetsFromSelection | ( | const std::vector< unsigned long > & | inds | ) | const |
◆ removeFoldsOnSurface()
void MeshObject::removeFoldsOnSurface | ( | ) |
References deleteFacets(), MeshCore::MeshEvalFoldsOnSurface::Evaluate(), MeshCore::MeshEvalFoldsOnBoundary::Evaluate(), MeshCore::MeshEvalFoldOversOnSurface::Evaluate(), MeshCore::MeshEvalFoldsOnSurface::GetIndices(), MeshCore::MeshEvalFoldsOnBoundary::GetIndices(), and MeshCore::MeshEvalFoldOversOnSurface::GetIndices().
Referenced by Mesh::MeshFeaturePy::removeFoldsOnSurface(), and Mesh::MeshPy::removeFoldsOnSurface().
◆ removeFullBoundaryFacets()
void MeshObject::removeFullBoundaryFacets | ( | ) |
References deleteFacets().
Referenced by Mesh::MeshPy::removeFullBoundaryFacets().
◆ removeInvalidPoints()
void MeshObject::removeInvalidPoints | ( | ) |
References deletePoints(), and MeshCore::MeshEvalNaNPoints::GetIndices().
Referenced by Mesh::MeshFeaturePy::removeInvalidPoints(), and Mesh::MeshPy::removeInvalidPoints().
◆ removeNeedles()
void MeshObject::removeNeedles | ( | float | length | ) |
References MeshCore::MeshRemoveNeedles::Fixup().
Referenced by Mesh::MeshPy::removeNeedles().
◆ removeNonManifoldPoints()
void MeshObject::removeNonManifoldPoints | ( | ) |
◆ removeNonManifolds()
void MeshObject::removeNonManifolds | ( | ) |
◆ removePointsFromSelection()
void MeshObject::removePointsFromSelection | ( | const std::vector< unsigned long > & | inds | ) | const |
References MeshCore::MeshAlgorithm::ResetPointsFlag(), and MeshCore::MeshPoint::SELECTED.
◆ removeSelfIntersections() [1/2]
void MeshObject::removeSelfIntersections | ( | ) |
◆ removeSelfIntersections() [2/2]
void MeshObject::removeSelfIntersections | ( | const std::vector< unsigned long > & | indices | ) |
References MeshCore::MeshFixSelfIntersection::Fixup().
◆ representation()
std::string MeshObject::representation | ( | ) | const |
Referenced by Mesh::MeshPy::representation(), config_control_design.pcurve::wr1(), config_control_design.degenerate_pcurve::wr1(), automotive_design.motion_link_relationship::wr1(), automotive_design.pcurve::wr1(), automotive_design.degenerate_pcurve::wr1(), config_control_design.pcurve::wr2(), config_control_design.degenerate_pcurve::wr2(), automotive_design.pcurve::wr2(), and automotive_design.degenerate_pcurve::wr2().
◆ Restore()
|
virtual |
This method is used to restore properties from an XML document.
It uses the XMLReader class, which bases on SAX, to read the in Save() written information. Again the Vector as an example:
Implements Base::Persistence.
◆ RestoreDocFile()
|
virtual |
This method is used to restore large amounts of data from a file In this method you simply stream in your SaveDocFile() saved data.
Again you have to apply for the call of this method in the Restore() call:
After you issued the reader.addFile() your RestoreDocFile() is called:
- See also
- Base::Reader,Base::XMLReader
Reimplemented from Base::Persistence.
References load().
◆ Save()
|
virtual |
This method is used to save properties to an XML document.
A good example you'll find in PropertyStandard.cpp, e.g. the vector:
The writer.ind() expression writes the indentation, just for pretty printing of the XML. As you see, the writing of the XML document is not done with a DOM implementation because of performance reasons. Therefore the programmer has to take care that a valid XML document is written. This means closing tags and writing UTF-8.
- See also
- Base::Writer
Implements Base::Persistence.
◆ save() [1/3]
void MeshObject::save | ( | const char * | file, |
MeshCore::MeshIO::Format | f = MeshCore::MeshIO::Undefined , |
||
const MeshCore::Material * | mat = 0 , |
||
const char * | objectname = 0 |
||
) | const |
References MeshCore::Material::binding, Base::FileInfo::dirPath(), Base::FileInfo::fileNamePure(), MeshCore::MeshOutput::GetFormat(), MeshCore::Group::indices, MeshCore::Material::library, MeshCore::MeshIO::OBJ, MeshCore::MeshIO::PER_FACE, MeshCore::MeshOutput::SaveAny(), MeshCore::MeshOutput::SaveMTL(), Base::FileInfo::setFile(), MeshCore::MeshOutput::SetGroups(), MeshCore::MeshOutput::SetObjectName(), MeshCore::MeshOutput::Transform(), and MeshCore::MeshIO::Undefined.
Referenced by shipGZ.TaskPanel.TaskPanel::accept(), shipAreasCurve.TaskPanel.TaskPanel::accept(), shipHydrostatics.TaskPanel.TaskPanel::accept(), Mesh::Export::execute(), Mod.Show.mTempoVis.TempoVis::modify(), Mod.Show.mTempoVis.TempoVis::modifyVPProperty(), Mod.Show.mTempoVis.TempoVis::saveCamera(), Mesh::MeshPy::write(), and Mesh::MergeExporter::~MergeExporter().
◆ save() [2/3]
void MeshObject::save | ( | std::ostream & | out | ) | const |
◆ save() [3/3]
void MeshObject::save | ( | std::ostream & | str, |
MeshCore::MeshIO::Format | f, | ||
const MeshCore::Material * | mat = 0 , |
||
const char * | objectname = 0 |
||
) | const |
References MeshCore::Group::indices, MeshCore::MeshOutput::SaveFormat(), MeshCore::MeshOutput::SetGroups(), MeshCore::MeshOutput::SetObjectName(), and MeshCore::MeshOutput::Transform().
Referenced by shipGZ.TaskPanel.TaskPanel::accept(), shipAreasCurve.TaskPanel.TaskPanel::accept(), shipHydrostatics.TaskPanel.TaskPanel::accept(), Mod.Show.mTempoVis.TempoVis::modify(), Mod.Show.mTempoVis.TempoVis::modifyVPProperty(), and Mod.Show.mTempoVis.TempoVis::saveCamera().
◆ SaveDocFile()
|
virtual |
This method is used to save large amounts of data to a binary file.
Sometimes it makes no sense to write property data as XML. In case the amount of data is too big or the data type has a more effective way to save itself. In this cases it is possible to write the data in a separate file inside the document archive. In case you want do so you have to re-implement SaveDocFile(). First, you have to inform the framework in Save() that you want do so. Here an example from the Mesh module which can save a (pontetionaly big) triangle mesh:
The writer.isForceXML() is an indication to force you to write XML. Regardless of size and effectiveness. The second part informs the Base::writer through writer.addFile("MeshKernel.bms", this) that this object wants to write a file with the given name. The method addFile() returns a unique name that then is written in the XML stream. This allows your RestoreDocFile() method to identify and read the file again. Later your SaveDocFile() method is called as many times as you issued the addFile() call:
In this method you can simply stream your content to the file (Base::Writer inheriting from ostream).
Reimplemented from Base::Persistence.
References Base::Writer::Stream().
◆ segments_begin()
const_segment_iterator Mesh::MeshObject::segments_begin | ( | ) | const |
◆ segments_end()
const_segment_iterator Mesh::MeshObject::segments_end | ( | ) | const |
◆ setFacets() [1/2]
void MeshObject::setFacets | ( | const std::vector< Data::ComplexGeoData::Facet > & | facets, |
const std::vector< Base::Vector3d > & | points | ||
) |
◆ setFacets() [2/2]
void MeshObject::setFacets | ( | const std::vector< MeshCore::MeshGeomFacet > & | facets | ) |
◆ setKernel()
void MeshObject::setKernel | ( | const MeshCore::MeshKernel & | m | ) |
Referenced by Mesh::MergeExporter::addMeshFeat().
◆ setPoint()
void MeshObject::setPoint | ( | unsigned long | index, |
const Base::Vector3d & | v | ||
) |
References Data::ComplexGeoData::transformToInside().
Referenced by Mesh::MeshPy::setPoint().
◆ setTransform()
|
virtual |
Override the current transformation with the new one.
This method has to be handled by the child classes. the actual placement and matrix is not part of this class.
Implements Data::ComplexGeoData.
Referenced by clear(), Mesh::Feature::onChanged(), operator=(), and transformToEigenSystem().
◆ smooth()
void MeshObject::smooth | ( | int | iterations, |
float | d_max | ||
) |
Referenced by Mesh::MeshFeaturePy::smooth().
◆ snapVertex()
void MeshObject::snapVertex | ( | unsigned long | facet, |
const Base::Vector3f & | v | ||
) |
References MeshCore::MeshTopoAlgorithm::SnapVertex().
Referenced by Mesh::MeshPy::snapVertex().
◆ splitEdge()
void MeshObject::splitEdge | ( | unsigned long | facet, |
unsigned long | neighbour, | ||
const Base::Vector3f & | v | ||
) |
References MeshCore::MeshTopoAlgorithm::SplitEdge().
Referenced by Mesh::MeshPy::splitEdge().
◆ splitEdges()
void MeshObject::splitEdges | ( | ) |
References MeshCore::MeshFacet::IsFlag(), MeshCore::MeshAlgorithm::ResetFacetFlag(), MeshCore::MeshFacetIterator::Set(), MeshCore::MeshFacet::SetFlag(), MeshCore::MeshFacetArray::SetFlag(), MeshCore::MeshTopoAlgorithm::SplitEdge(), and MeshCore::MeshFacet::VISIT.
Referenced by Mesh::MeshPy::splitEdges().
◆ splitFacet()
void MeshObject::splitFacet | ( | unsigned long | facet, |
const Base::Vector3f & | v1, | ||
const Base::Vector3f & | v2 | ||
) |
References MeshCore::MeshTopoAlgorithm::SplitFacet().
Referenced by Mesh::MeshPy::splitFacet().
◆ subtract()
MeshObject * MeshObject::subtract | ( | const MeshObject & | mesh | ) | const |
References MeshCore::SetOperations::Difference, MeshCore::SetOperations::Do(), MeshObject(), and MeshCore::MeshKernel::Transform().
Referenced by Mesh::MeshPy::difference().
◆ swap() [1/2]
void MeshObject::swap | ( | MeshCore::MeshKernel & | Kernel | ) |
Swaps the content of Kernel and the internal mesh kernel.
Referenced by MeshGui::Segmentation::accept(), ReverseEngineeringGui::Segmentation::accept(), MeshGui::SegmentationBestFit::accept(), MeshPart::Mesher::createMesh(), ReverseEngineeringGui::SegmentationManual::createSegment(), and transformGeometry().
◆ swap() [2/2]
void MeshObject::swap | ( | MeshObject & | mesh | ) |
◆ swapEdge()
void MeshObject::swapEdge | ( | unsigned long | facet, |
unsigned long | neighbour | ||
) |
References MeshCore::MeshTopoAlgorithm::SwapEdge().
Referenced by Mesh::MeshPy::swapEdge().
◆ topologyInfo()
std::string MeshObject::topologyInfo | ( | ) | const |
◆ transformGeometry()
|
virtual |
Applies a transformation on the real geometric data type.
Implements Data::ComplexGeoData.
References swap(), and MeshCore::MeshKernel::Transform().
◆ transformToEigenSystem()
void MeshObject::transformToEigenSystem | ( | ) |
References MeshCore::MeshEigensystem::Evaluate(), setTransform(), and MeshCore::MeshEigensystem::Transform().
Referenced by Mesh::MeshPy::transformToEigen().
◆ trim() [1/2]
void MeshObject::trim | ( | const Base::Polygon2d & | polygon, |
const Base::ViewProjMethod & | proj, | ||
MeshObject::CutType | type | ||
) |
References deleteFacets(), INNER, MeshCore::MeshTrimming::INNER, OUTER, and MeshCore::MeshTrimming::OUTER.
Referenced by trim(), and Mesh::MeshPy::trim().
◆ trim() [2/2]
void MeshObject::trim | ( | const Base::Vector3f & | base, |
const Base::Vector3f & | normal | ||
) |
References deleteFacets(), and trim().
◆ unite()
MeshObject * MeshObject::unite | ( | const MeshObject & | mesh | ) | const |
References MeshCore::SetOperations::Do(), MeshObject(), MeshCore::MeshKernel::Transform(), and MeshCore::SetOperations::Union.
Referenced by Mesh::MeshPy::unite().
◆ validateCaps()
void MeshObject::validateCaps | ( | float | fMaxAngle, |
float | fSplitFactor | ||
) |
References MeshCore::MeshFixCaps::Fixup().
Referenced by Mesh::MeshPy::fixCaps().
◆ validateDeformations()
void MeshObject::validateDeformations | ( | float | fMaxAngle, |
float | fEps | ||
) |
References MeshCore::MeshFixDeformedFacets::Fixup(), and Base::toRadians().
Referenced by Mesh::MeshPy::fixDeformations().
◆ validateDegenerations()
void MeshObject::validateDegenerations | ( | float | fEps | ) |
References MeshCore::MeshFixDegeneratedFacets::Fixup().
Referenced by Mesh::MeshFeaturePy::fixDegenerations(), and Mesh::MeshPy::fixDegenerations().
◆ validateIndices()
void MeshObject::validateIndices | ( | ) |
References MeshCore::MeshEvalRangePoint::Evaluate(), MeshCore::MeshEvalCorruptedFacets::Evaluate(), MeshCore::MeshFixNeighbourhood::Fixup(), MeshCore::MeshFixRangeFacet::Fixup(), MeshCore::MeshFixRangePoint::Fixup(), and MeshCore::MeshFixCorruptedFacets::Fixup().
Referenced by Mesh::MeshFeaturePy::fixIndices(), and Mesh::MeshPy::fixIndices().
Friends And Related Function Documentation
◆ Segment
The documentation for this class was generated from the following files:
- src/Mod/Mesh/App/Mesh.h
- src/Mod/Mesh/App/Mesh.cpp