Itasca C++ Interface
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Modules Pages
iextruderegion.h
1 #pragma once
2 // iextruderegion.h
3 
5 
6 namespace itasca {
7  class IThing;
8 }
9 namespace itascaxd {
10  class IGeomPoly;
11 }
12 
13 namespace extruder {
14  using namespace itasca;
15  using namespace itascaxd;
16 
17  class IExtrudeEdge;
18 
22  public:
24  inline static const TType type_ = 0x4cb610e7;
25 
27  virtual const IThing * getIThing() const=0;
29  virtual IThing * getIThing()=0;
31  virtual const IGeomPoly *getIGeomPoly() const=0;
33  virtual IGeomPoly * getIGeomPoly()=0;
34 
36  virtual bool getIsIrregBlock() const = 0;
38  virtual quint32 getMultiplier() const=0;
40  virtual void setMultiplier(quint32 m)=0;
42  virtual UVect2 getZones() const=0;
44  virtual quint64 numZones() const=0;
46  virtual DVect getDiscretizedLocation(const IVect2 &index) const=0;
48  virtual DVect getParametricLocation(const double &mu1, const double &mu2) const=0;
50  virtual DVect getCentroid() const=0;
52  virtual DVect2 computeGridParameter(DVect p) const=0;
54  virtual DVect computeSplitEdgePosition(DVect2 f, int side) const=0;
56  virtual bool isPointInside(DVect pos)=0;
58  virtual IExtrudeRegion* getNeighborRegion(int index)=0;
60  virtual QList<QPair<DVect2,DVect2>> getMeshLineSegments() const = 0;
61 
62  // Iterate list of bad zones
64  virtual void resetSearchBadZones(int *i, int *j) const = 0;
66  // engine bool specifies if the call is originating from the engine, and polling should happen - otherwise polling is suppressed.
67  virtual bool nextSearchBadZone(int *i, int *j, int *ty, DVect *p1 ,DVect *p2, DVect *p3, DVect *p4,bool engine) const = 0; // false=search completed, return bad zone ccw points p1..p4
68  };
69 } // namespace f3
70 // EoF
namespace Itasca
Definition: basememory.cpp:9
Base class for items that will be stored in containers.
Definition: ithing.h:31
Interface for LinkType<> objects, POD that contain both the pointer to the next object and an index f...
A class representing a single closed polygon made up of a list of edges.
Definition: igeompoly.h:23
unsigned int TType
class type indicator
Definition: basedef.h:41
Itasca Library standard namespace, specific to 2D or 3D.
Definition: icontactmodule.h:4
Interface for IExtrudeEdge objects.
Definition: iextruderegion.h:21
DVect3 DVect
Vector of doubles, either 2D or 3D.
Definition: dim.h:145