gmsh-TingyuanDoc  0.1
An Open-Source Timing-driven Analytical Mixed-size FPGA Placer
partitionEdge Class Reference

#include <partitionEdge.h>

Inheritance diagram for partitionEdge:
Collaboration diagram for partitionEdge:

Public Member Functions

 partitionEdge (GModel *model, int num, GVertex *_v0, GVertex *_v1, const std::vector< int > &partitions)
 
 partitionEdge (GModel *model, int num, const std::vector< int > &partitions)
 
 partitionEdge (GModel *model, const std::vector< int > &partitions)
 
virtual ~partitionEdge ()
 
virtual GeomType geomType () const
 
virtual bool haveParametrization ()
 
virtual void setParentEntity (GEntity *e)
 
virtual GEntitygetParentEntity ()
 
virtual void setPartitions (std::vector< int > &partitions)
 
virtual const std::vector< int > & getPartitions () const
 
virtual int getPartition (std::size_t index) const
 
virtual std::size_t numPartitions () const
 
- Public Member Functions inherited from discreteEdge
 discreteEdge (GModel *model, int num, GVertex *_v0, GVertex *_v1)
 
 discreteEdge (GModel *model, int num)
 
 discreteEdge (GModel *model)
 
virtual ~discreteEdge ()
 
virtual GPoint point (double p) const
 
virtual SVector3 firstDer (double par) const
 
virtual double curvature (double par) const
 
virtual Range< double > parBounds (int) const
 
int createGeometry ()
 
virtual void mesh (bool verbose)
 
int minimumDrawSegments () const
 
virtual int minimumMeshSegments () const
 
virtual SPoint2 reparamOnFace (const GFace *face, double epar, int dir) const
 
bool writeParametrization (FILE *fp, bool binary)
 
bool readParametrization (FILE *fp, bool binary)
 
- Public Member Functions inherited from GEdge
 GEdge (GModel *model, int tag, GVertex *v0, GVertex *v1)
 
 GEdge (GModel *model, int tag)
 
virtual ~GEdge ()
 
virtual void deleteMesh ()
 
void setBeginVertex (GVertex *gv)
 
void setEndVertex (GVertex *gv)
 
virtual GVertexgetBeginVertex () const
 
virtual GVertexgetEndVertex () const
 
void setVertex (GVertex *const f, const int orientation)
 
void setMeshMaster (GEdge *master, const std::vector< double > &)
 
void setMeshMaster (GEdge *master, int sign)
 
void reverse ()
 
void addFace (GFace *f)
 
virtual void delFace (GFace *f)
 
virtual int dim () const
 
virtual std::vector< GVertex * > vertices () const
 
virtual void setVisibility (char val, bool recursive=false)
 
virtual void setColor (unsigned int val, bool recursive=false)
 
virtual bool isSeam (const GFace *face) const
 
virtual SBoundingBox3d bounds (bool fast=false)
 
virtual SOrientedBoundingBox getOBB ()
 
virtual std::list< GRegion * > regions () const
 
virtual std::vector< GFace * > faces () const
 
virtual std::size_t numFaces () const
 
virtual bool isOrphan ()
 
virtual bool containsParam (double pt) const
 
virtual SVector3 position (double p) const
 
virtual SVector3 secondDer (double par) const
 
virtual std::string getAdditionalInfoString (bool multline=false)
 
virtual void writeGEO (FILE *fp)
 
virtual void writePY (FILE *fp)
 
bool storeSTLAsMesh ()
 
virtual bool is3D () const
 
double length () const
 
void setLength (const double l)
 
double length (const double &u0, const double &u1, const int nbQuadPoints=4)
 
double prescribedMeshSizeAtVertex () const
 
double prescribedMeshSizeAtParam (double u)
 
void setMeshSizeParametric (const std::vector< double > u, const std::vector< double > lc)
 
void setTooSmall (bool const b)
 
virtual bool isMeshDegenerated () const
 
virtual void getElementTypes (std::vector< int > &types) const
 
std::size_t getNumMeshElements () const
 
std::size_t getNumMeshElementsByType (const int familyType) const
 
std::size_t getNumMeshParentElements ()
 
void getNumMeshElements (unsigned *const c) const
 
MElement *const * getStartElementType (int type) const
 
MElementgetMeshElement (std::size_t index) const
 
MElementgetMeshElementByType (const int familyType, const std::size_t index) const
 
virtual void resetMeshAttributes ()
 
virtual bool periodic (int dim) const
 
virtual Range< double > parBoundsOnFace (GFace *face=nullptr) const
 
double getLowerBound () const
 
double getUpperBound () const
 
virtual bool containsPoint (const SPoint3 &pt) const
 
virtual GPoint closestPoint (const SPoint3 &queryPoint, double &param) const
 
virtual double parFromPoint (const SPoint3 &P) const
 
virtual bool refineProjection (const SVector3 &Q, double &u, int MaxIter, double relax, double tol, double &err) const
 
virtual bool XYZToU (const double X, const double Y, const double Z, double &U, const double relax=1, bool first=true) const
 
void relocateMeshVertices ()
 
void addLine (MLine *line)
 
void addElement (int type, MElement *e)
 
void removeElement (int type, MElement *e)
 
void removeElements (int type)
 
virtual void discretize (double tol, std::vector< SPoint3 > &dpts, std::vector< double > &ts)
 
SPoint3 closestPointWithTol (SPoint3 &p, double tolerance)
 
virtual bool reorder (const int elementType, const std::vector< std::size_t > &ordering)
 
- Public Member Functions inherited from GEntity
void addVerticesInSet (std::set< MVertex * > &, bool closure) const
 
virtual std::string getTypeString ()
 
 GEntity (GModel *m, int t)
 
virtual ~GEntity ()
 
void deleteVertexArrays ()
 
virtual std::vector< GEdge * > const & edges () const
 
std::vector< GRegion * > bindingsGetRegions ()
 
std::vector< GFace * > bindingsGetFaces ()
 
std::vector< GEdge * > bindingsGetEdges () const
 
std::vector< GVertex * > bindingsGetVertices ()
 
virtual bool continuous (int dim) const
 
virtual double period (int dim) const
 
virtual bool degenerate (int dim) const
 
virtual bool isFullyDiscrete ()
 
virtual double tolerance () const
 
virtual ModelType getNativeType () const
 
virtual void * getNativePtr () const
 
virtual int getNativeInt () const
 
GModelmodel () const
 
int tag () const
 
void setTag (int tag)
 
virtual void addPhysicalEntity (int physicalTag)
 
virtual std::vector< int > getPhysicalEntities ()
 
GEntitygetMeshMaster () const
 
void setMeshMaster (GEntity *)
 
void setMeshMaster (GEntity *, const std::vector< double > &, bool updateCorrespondingVertices=true)
 
void updateCorrespondingVertices ()
 
void copyMasterCoordinates ()
 
virtual void alignElementsWithMaster ()
 
virtual char getVisibility ()
 
virtual char getSelection ()
 
virtual void setSelection (char val)
 
virtual unsigned int getColor ()
 
virtual void setColor (unsigned color, bool recursive=false)
 
virtual bool useColor ()
 
virtual std::string getInfoString (bool additional=true, bool multiline=false)
 
virtual double getMeshSize () const
 
virtual double getMeshSizeFactor () const
 
bool getAllElementsVisible ()
 
void setAllElementsVisible (bool val)
 
std::size_t getNumMeshVertices ()
 
MVertexgetMeshVertex (std::size_t index)
 
void addMeshVertex (MVertex *v)
 
void removeMeshVertex (MVertex *v)
 
GVertexcast2Vertex ()
 
GEdgecast2Edge ()
 
GFacecast2Face ()
 
GRegioncast2Region ()
 

Private Attributes

std::vector< int > _partitions
 
GEntity_parentEntity
 

Additional Inherited Members

- Public Types inherited from GEntity
enum  ModelType {
  UnknownModel, GmshModel, OpenCascadeModel, AcisModel,
  ParasolidModel
}
 
enum  GeomType {
  Unknown, Point, BoundaryLayerPoint, Line,
  Circle, Ellipse, Conic, Parabola,
  Hyperbola, TrimmedCurve, OffsetCurve, BSpline,
  Bezier, ParametricCurve, BoundaryLayerCurve, DiscreteCurve,
  Plane, Nurb, Cylinder, Sphere,
  Cone, Torus, RuledSurface, ParametricSurface,
  BSplineSurface, BezierSurface, SurfaceOfRevolution, BoundaryLayerSurface,
  DiscreteSurface, DiscreteDiskSurface, Volume, DiscreteVolume,
  PartitionPoint, PartitionCurve, PartitionSurface, PartitionVolume,
  GhostCurve, GhostSurface, GhostVolume
}
 
enum  MeshGenerationStatus { PENDING, DONE, FAILED }
 
- Public Attributes inherited from GEdge
int masterOrientation
 
std::vector< MLine * > lines
 
GEdgecompoundCurve
 
std::vector< SPoint3stl_vertices_xyz
 
struct {
   char   method
 
   double   coeffTransfinite
 
   double   meshSize
 
   double   meshSizeFactor
 
   int   nbPointsTransfinite
 
   int   typeTransfinite
 
   int   minimumMeshSegments
 
   ExtrudeParams *   extrude
 
   bool   reverseMesh
 
meshAttributes
 
struct {
   GEntity::MeshGenerationStatus   status
 
meshStatistics
 
- Public Attributes inherited from GEntity
std::vector< MVertex * > mesh_vertices
 
std::vector< GEntity * > compound
 
std::map< GVertex *, GVertex * > vertexCounterparts
 
std::vector< int > physicals
 
VertexArrayva_lines
 
VertexArrayva_triangles
 
std::set< MElement * > curvedBLElements
 
std::vector< double > affineTransform
 
std::map< MVertex *, MVertex * > correspondingVertices
 
std::map< MVertex *, MVertex * > correspondingHighOrderVertices
 
- Protected Attributes inherited from GEdge
GVertex_v0
 
GVertex_v1
 
std::vector< GFace * > _faces
 
- Protected Attributes inherited from GEntity
SOrientedBoundingBox_obb
 

Detailed Description

Definition at line 12 of file partitionEdge.h.

Constructor & Destructor Documentation

◆ partitionEdge() [1/3]

partitionEdge::partitionEdge ( GModel model,
int  num,
GVertex _v0,
GVertex _v1,
const std::vector< int > &  partitions 
)
inline

Definition at line 18 of file partitionEdge.h.

◆ partitionEdge() [2/3]

partitionEdge::partitionEdge ( GModel model,
int  num,
const std::vector< int > &  partitions 
)
inline

Definition at line 24 of file partitionEdge.h.

◆ partitionEdge() [3/3]

partitionEdge::partitionEdge ( GModel model,
const std::vector< int > &  partitions 
)
inline

Definition at line 28 of file partitionEdge.h.

◆ ~partitionEdge()

virtual partitionEdge::~partitionEdge ( )
inlinevirtual

Definition at line 32 of file partitionEdge.h.

Member Function Documentation

◆ geomType()

virtual GeomType partitionEdge::geomType ( ) const
inlinevirtual

Reimplemented from discreteEdge.

Definition at line 33 of file partitionEdge.h.

◆ getParentEntity()

virtual GEntity* partitionEdge::getParentEntity ( )
inlinevirtual

Reimplemented from GEdge.

Definition at line 36 of file partitionEdge.h.

Referenced by writeMSH4Entities().

Here is the caller graph for this function:

◆ getPartition()

virtual int partitionEdge::getPartition ( std::size_t  index) const
inlinevirtual

Definition at line 42 of file partitionEdge.h.

Referenced by GModel::_readMSH4(), and partitionEdgePtrLessThan::operator()().

Here is the caller graph for this function:

◆ getPartitions()

virtual const std::vector<int>& partitionEdge::getPartitions ( ) const
inlinevirtual

Definition at line 41 of file partitionEdge.h.

Referenced by getEntitiesToSave(), and writeMSH4Entities().

Here is the caller graph for this function:

◆ haveParametrization()

virtual bool partitionEdge::haveParametrization ( )
inlinevirtual

Reimplemented from discreteEdge.

Definition at line 34 of file partitionEdge.h.

◆ numPartitions()

virtual std::size_t partitionEdge::numPartitions ( ) const
inlinevirtual

Definition at line 46 of file partitionEdge.h.

Referenced by GModel::_readMSH4(), and partitionEdgePtrLessThan::operator()().

Here is the caller graph for this function:

◆ setParentEntity()

virtual void partitionEdge::setParentEntity ( GEntity e)
inlinevirtual

Definition at line 35 of file partitionEdge.h.

◆ setPartitions()

virtual void partitionEdge::setPartitions ( std::vector< int > &  partitions)
inlinevirtual

Definition at line 37 of file partitionEdge.h.

Member Data Documentation

◆ _parentEntity

GEntity* partitionEdge::_parentEntity
private

Definition at line 15 of file partitionEdge.h.

Referenced by getParentEntity(), and setParentEntity().

◆ _partitions

std::vector<int> partitionEdge::_partitions
private

Definition at line 14 of file partitionEdge.h.

Referenced by getPartition(), getPartitions(), numPartitions(), and setPartitions().


The documentation for this class was generated from the following file: