Itasca C++ Interface
|
Interface for IExtrudeEdge objects. More...
#include <iextrudeedge.h>
Public Member Functions | |
virtual const IThing * | getIThing () const =0 |
Return a const IThing interface for this object. | |
virtual IThing * | getIThing ()=0 |
Return an IThing interface for this object. | |
virtual const IGeomEdge * | getIGeomEdge () const =0 |
Return a const IGeomPoint interface for this object. | |
virtual IGeomEdge * | getIGeomEdge ()=0 |
Return a IGeomPoint interface for this object. | |
virtual bool | isBlocked () const =0 |
Are there any blocks attached? | |
virtual bool | isSimple () const =0 |
Is edge simple (linear, no control points)? | |
virtual bool | isPolyline () const =0 |
Is edge a polyline (linear and at least one control point)? | |
virtual bool | isCurved () const =0 |
Is edge a "curved" type (requiring sampling approximation)? | |
virtual void | setPointExtrude (IExtrudePoint *point, uint32 end)=0 |
Adds point at end. | |
virtual IExtrudePoint * | getIExtrudePoint (uint32 end)=0 |
Returns a pointer to IExtrudePoint at end. | |
virtual const IExtrudePoint * | getIExtrudePoint (uint32 end) const =0 |
Returns a const pointer to IExtrudePoint at end. | |
virtual CLinkType< IExtrudeEdge > | getNextExtrude (uint32 end) const =0 |
Returns a interface to a CLinkType<> object, a const pointer to the next object in the linked list. | |
virtual LinkType< IExtrudeEdge > | getNextExtrude (uint32 end)=0 |
Returns a interface to a CLinkType<> object, a pointer to the next object in the linked list. | |
virtual CLinkType< IExtrudeRegion > | getStartExtrude () const =0 |
Returns a interface to a CLinkType<> object, a const pointer to the first object in the linked list. | |
virtual LinkType< IExtrudeRegion > | getStartExtrude ()=0 |
Returns a interface to a CLinkType<> object, a pointer to the first object in the linked list. | |
virtual uint32 | getSize () const =0 |
Return (zone) size. | |
virtual double | getZoneLength () const =0 |
Return zone length. | |
virtual double | getRatio () const =0 |
Return zone ratio. | |
virtual bool | getRatioIsolate () const =0 |
Return zone ratio isolate flag (Stops propagating ratios by connected blocks) | |
virtual DVect | getDiscretizedLocation (uint32 index, uint32 multiplier) const =0 |
Return x,y gridpoint position along edge. | |
virtual DVect | getParametricLocation (const double &frac0) const =0 |
Return x,y parametric position, frac0=0 to 1. | |
virtual double | getFraction (uint32 i) const =0 |
Return fraction value. | |
virtual QList< uint64 > | getConnectedEdges () const =0 |
Return list of edges connected by block opposite sides, used for assigning zone sizes and ratios. | |
virtual uint32 | setSize (uint32 s)=0 |
Set (zone) size. | |
virtual uint32 | setRatio (const double &r)=0 |
Set zone ratio on edge. | |
virtual void | setRatioIsolate (bool b)=0 |
Set zone ratio isolate flag (Stops propagating ratios by connected blocks) | |
virtual int | getEdgeBlockCount () const =0 |
Return number of blocks connected to edge. | |
virtual DVect | computeBlockSplitPoint (double mu, int index) const =0 |
Return x,y split position of block opposite edge to this edge, by parametric position mu. | |
virtual uint32 | getEdgeType () const =0 |
Return EdgeType: 0=simple, 1=polyline, 2=ellipse arc. | |
virtual uint32 | getHybridType () const =0 |
Return EdgeType: 0=simple, 1=polyline, 2=arc, 3=spline, 4=ellipse arc. | |
virtual const IExtrudePoint * | getEllipseArcCenter () const =0 |
Return ellipse arc center point. | |
virtual const IExtrudePoint * | getEllipseArcWith () const =0 |
Return ellipse arc "with" point. | |
virtual double | getEdgePolylineLength () const =0 |
Return polyline length (linear segments only) | |
virtual double | computeEdgePolylineCurveLength () const =0 |
Return computed length of edge, including estimate for curved edges. | |
virtual uint32 | getEdgePolylineType () const =0 |
Return PolylineType: 0=linear segments, 1=circle arcs, 2=cubic splines. | |
virtual uint32 | getEdgePolylineSize () const =0 |
Return number of segments in polyline. | |
virtual DVect | getEdgePolylineControlPoint (int id) const =0 |
Return position of control points, 1..size-1, index 0,size return endpoint positions. | |
virtual double | getEdgePolylineControlU (int id) const =0 |
Return local U coordinate of controlpoint. | |
virtual double | getEdgePolylineControlV (int id) const =0 |
Return local V coordinate of controlpoint. | |
virtual void | setEdgePolylineControlPoint (int index, DVect p)=0 |
Set x,y position of controlpoint. | |
virtual void | setEdgePolylineControlLocal (int index, DVect p)=0 |
Set u,v local position of controlpoint. | |
virtual void | setEdgePolylineControlLocalU (int index, double u)=0 |
Set u local position of controlpoint. | |
virtual void | setEdgePolylineControlLocalV (int index, double v)=0 |
Set v local position of controlpoint. | |
virtual void | addEdgePolylineControlPoint (DVect p)=0 |
Add controlpoint by x,y position. | |
virtual void | addEdgePolylineControlLocal (DVect p)=0 |
Add controlpoint by u,v position. | |
virtual void | removeEdgePolylineControlPoint (int id)=0 |
Remove indexed control point. | |
virtual double | findParameterForPosition (DVect pos) const =0 |
Estimate parametric position (0,1) of position. | |
virtual void | setEdgeTypeSimple ()=0 |
Set edge type as simple. | |
virtual void | setEdgeType (int edgeType)=0 |
Set EdgeType. | |
virtual void | setEdgePolylineType (int curvetype=edgePolyTypeLinear)=0 |
Set EdgeType as polyline, and polyline type: 0=linear, 1=circle arcs, 2=cubic splines. | |
virtual IExtrudeRegion * | getOtherBlock (IExtrudeRegion *b)=0 |
Return block, besides given one, sharing this edge, 0 if none. | |
virtual bool | belongsToIrregBlock () const =0 |
virtual DVect | getTangent (double mu) const =0 |
virtual bool | getIntersectRay (DVect p, DVect t, std::vector< DVect > *point, bool both=true) const =0 |
Static Public Attributes | |
static const TType | type_ = 0x4cb610e6 |
The type identification number for this class, for use in convert_cast() and convert_getcast(). | |
Interface for IExtrudeEdge objects.