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

#include <gmshEdge.h>

Inheritance diagram for gmshEdge:
Collaboration diagram for gmshEdge:

Public Member Functions

 gmshEdge (GModel *model, Curve *c, GVertex *v1, GVertex *v2)
 
virtual ~gmshEdge ()
 
virtual Range< double > parBounds (int i) const
 
virtual GeomType geomType () const
 
virtual bool haveParametrization ()
 
virtual GPoint point (double p) const
 
virtual SVector3 firstDer (double par) const
 
virtual SVector3 secondDer (double par) const
 
virtual ModelType getNativeType () const
 
virtual void * getNativePtr () const
 
virtual std::string getAdditionalInfoString (bool multline=false)
 
virtual int minimumMeshSegments () const
 
virtual int minimumDrawSegments () const
 
virtual void resetMeshAttributes ()
 
virtual SPoint2 reparamOnFace (const GFace *face, double epar, int dir) const
 
virtual void writeGEO (FILE *fp)
 
virtual void discretize (double tol, std::vector< SPoint3 > &dpts, std::vector< double > &ts)
 
virtual bool degenerate (int dim) const
 
void resetNativePtr (Curve *edge, GVertex *v1, GVertex *v2)
 
- 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 GEntitygetParentEntity ()
 
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 double curvature (double par) const
 
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 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)
 
SPoint3 closestPointWithTol (SPoint3 &p, double tolerance)
 
virtual void mesh (bool verbose)
 
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 isFullyDiscrete ()
 
virtual double tolerance () 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

Curve_c
 

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 13 of file gmshEdge.h.

Constructor & Destructor Documentation

◆ gmshEdge()

gmshEdge::gmshEdge ( GModel model,
Curve c,
GVertex v1,
GVertex v2 
)

Definition at line 45 of file gmshEdge.cpp.

Here is the call graph for this function:

◆ ~gmshEdge()

virtual gmshEdge::~gmshEdge ( )
inlinevirtual

Definition at line 19 of file gmshEdge.h.

Member Function Documentation

◆ degenerate()

bool gmshEdge::degenerate ( int  dim) const
virtual

Reimplemented from GEntity.

Definition at line 63 of file gmshEdge.cpp.

Here is the call graph for this function:

◆ discretize()

void gmshEdge::discretize ( double  tol,
std::vector< SPoint3 > &  dpts,
std::vector< double > &  ts 
)
virtual

Reimplemented from GEdge.

Definition at line 539 of file gmshEdge.cpp.

Here is the call graph for this function:

◆ firstDer()

SVector3 gmshEdge::firstDer ( double  par) const
virtual

Implements GEdge.

Definition at line 89 of file gmshEdge.cpp.

Here is the call graph for this function:

◆ geomType()

GEntity::GeomType gmshEdge::geomType ( ) const
virtual

Reimplemented from GEntity.

Definition at line 101 of file gmshEdge.cpp.

Referenced by haveParametrization(), minimumDrawSegments(), and minimumMeshSegments().

Here is the caller graph for this function:

◆ getAdditionalInfoString()

std::string gmshEdge::getAdditionalInfoString ( bool  multline = false)
virtual

Reimplemented from GEdge.

Definition at line 132 of file gmshEdge.cpp.

Here is the call graph for this function:

◆ getNativePtr()

virtual void* gmshEdge::getNativePtr ( ) const
inlinevirtual

Reimplemented from GEntity.

Definition at line 27 of file gmshEdge.h.

◆ getNativeType()

virtual ModelType gmshEdge::getNativeType ( ) const
inlinevirtual

Reimplemented from GEntity.

Definition at line 26 of file gmshEdge.h.

◆ haveParametrization()

bool gmshEdge::haveParametrization ( )
virtual

Reimplemented from GEntity.

Definition at line 127 of file gmshEdge.cpp.

Here is the call graph for this function:

◆ minimumDrawSegments()

int gmshEdge::minimumDrawSegments ( ) const
virtual

Reimplemented from GEdge.

Definition at line 181 of file gmshEdge.cpp.

Here is the call graph for this function:

◆ minimumMeshSegments()

int gmshEdge::minimumMeshSegments ( ) const
virtual

Reimplemented from GEdge.

Definition at line 158 of file gmshEdge.cpp.

Here is the call graph for this function:

◆ parBounds()

Range< double > gmshEdge::parBounds ( int  i) const
virtual

Implements GEdge.

Definition at line 78 of file gmshEdge.cpp.

◆ point()

GPoint gmshEdge::point ( double  p) const
virtual

Implements GEdge.

Definition at line 83 of file gmshEdge.cpp.

Here is the call graph for this function:

◆ reparamOnFace()

SPoint2 gmshEdge::reparamOnFace ( const GFace face,
double  epar,
int  dir 
) const
virtual

Reimplemented from GEdge.

Definition at line 193 of file gmshEdge.cpp.

Here is the call graph for this function:

◆ resetMeshAttributes()

void gmshEdge::resetMeshAttributes ( )
virtual

Reimplemented from GEdge.

Definition at line 68 of file gmshEdge.cpp.

Referenced by gmshEdge().

Here is the caller graph for this function:

◆ resetNativePtr()

void gmshEdge::resetNativePtr ( Curve edge,
GVertex v1,
GVertex v2 
)

Definition at line 51 of file gmshEdge.cpp.

Here is the call graph for this function:

◆ secondDer()

SVector3 gmshEdge::secondDer ( double  par) const
virtual

Reimplemented from GEdge.

Definition at line 95 of file gmshEdge.cpp.

Here is the call graph for this function:

◆ writeGEO()

void gmshEdge::writeGEO ( FILE *  fp)
virtual

Reimplemented from GEdge.

Definition at line 439 of file gmshEdge.cpp.

Here is the call graph for this function:

Member Data Documentation

◆ _c


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