17 #include <xmscore/misc/base_macros.h> 18 #include <xmscore/misc/boost_defines.h> 19 #include <xmscore/misc/DynBitset.h> 20 #include <xmscore/stl/vector.h> 41 static BSHP<XmUGridTriangles2d>
New();
47 virtual void BuildTriangles(
const XmUGrid& a_ugrid,
bool a_addTriangleCenters) = 0;
57 virtual const VecPt3d&
GetPoints()
const = 0;
78 virtual int GetIntersectedCell(
const Pt3d& a_point, VecInt& a_idxs, VecDbl& a_weights) = 0;
virtual const VecPt3d & GetPoints() const =0
Get the generated triangle points.
XmUGridTriangles2d()
Default contructor.
Class to store XmUGrid triangles. Tracks where midpoints and triangles came from. ...
virtual void BuildEarcutTriangles(const XmUGrid &a_ugrid)=0
Generate triangles for the UGrid using earcut algorithm.
virtual ~XmUGridTriangles2d()
Destructor.
static BSHP< XmUGridTriangles2d > New()
Build an instance of XmUGridTriangles2d.
virtual void SetCellActivity(const DynBitset &a_cellActivity)=0
Set triangle activity based on each triangles cell.
virtual int GetCellCentroid(int a_cellIdx) const =0
Get the centroid of a cell.
virtual BSHP< VecPt3d > GetPointsPtr()=0
Get the generated triangle points as a shared pointer.
virtual void BuildTriangles(const XmUGrid &a_ugrid, bool a_addTriangleCenters)=0
Generate triangles for the UGrid.
virtual BSHP< VecInt > GetTrianglesPtr()=0
Get the generated triangles as a shared pointer.
virtual const VecInt & GetTriangles() const =0
Get the generated triangles.
virtual int GetIntersectedCell(const Pt3d &a_point, VecInt &a_idxs, VecDbl &a_weights)=0
Get the cell index and interpolation values intersected by a point.