12 #ifndef __GU_TrimPatch_h__
13 #define __GU_TrimPatch_h__
34 return (myP[0] == tri.
myP[0] &&
35 myP[1] == tri.
myP[1] &&
36 myP[2] == tri.
myP[2]);
46 return (myP == strip.
myP);
64 void reset()
override;
80 void getPoint(
int num,
float &
x,
float &
y)
const override;
88 void resetRetrieval();
93 int getTriangle(
int &p1,
int &p2,
int &p3);
97 int getStripPointCount();
98 int getStripPoints(
int &p1,
int &p2);
99 void getStripPoint(
int idx,
int &p1,
int &p2);
128 int64 mem = inclusive ?
sizeof(*this) : 0;
138 int vmin,
int vmax)
override;
141 void startUIsoWalk(
int uiso);
142 int getUIsoSpan(
int &trimtype);
143 int getUIsoSpanPoint(
int &point);
145 void startVIsoWalk(
int viso);
146 int getVIsoSpan(
int &trimtype);
147 int getVIsoSpanPoint(
int &point);
149 void startTrimCurveWalk();
150 int getTrimCurveSpan();
151 int getTrimCurveSpanPoint(
int &point);
virtual void fillCornerPoints()=0
UT_ValArray< GU_TrimBasePoint * > myPolyPoints
virtual void addTStripPoints(GU_TrimBasePoint *p1, GU_TrimBasePoint *p2)=0
int64 getMemoryUsage(bool inclusive) const override
GU_TrimPatchPoint * myCurTrimCurveStart
virtual void endTStrip()=0
virtual void polyVertex(int num)=0
virtual void beginPolygon(int npoints, bool lastone)=0
beginPolygon will be told when the last polygon is being added
virtual int64 getMemoryUsage(bool inclusive) const
int operator==(const GU_TrimTriangle &tri)
virtual void fillPoint(GU_TrimPatchPoint *p)=0
virtual void refreshCells(GEO_AttributeHandleList *hlist, const GEO_TPSurf *surf, int umin, int umax, int vmin, int vmax)=0
virtual void getPoint(int num, float &x, float &y) const =0
virtual void startPoly()=0
UT_Array< GU_TrimStrip > myStrips
GU_TrimPatchPoint * myCurIsoPoint
int operator==(const GU_TrimStrip &strip)
virtual void cancelPoly()=0
virtual void endPolygon()=0
GU_TrimBasePoint * myLastPolyPoint
UT_Array< GU_TrimTriangle > myTriangles
virtual void startTStrip()=0
GU_TrimPatchPoint * myTrimCurvePoint
virtual int64 getMemoryUsage(bool inclusive) const
const GEO_TPSurf * mySurf
string_view OIIO_UTIL_API strip(string_view str, string_view chars=string_view())
GU_TPSurfCache * myParent
virtual void addPolyPoint(GU_TrimBasePoint *point)=0
virtual int getPointCount() const =0
It's the sub-class responsibility to fill these out...