| 
    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 std::vector< 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.