11 #ifndef __GT_PrimFragments__
12 #define __GT_PrimFragments__
50 int nsegs)
const override
51 { doEnlargeBounds(boxes, nsegs,
false); }
53 int nsegs)
const override
54 { doEnlargeBounds(boxes, nsegs,
true); }
67 int seg=0)
const override;
72 {
return myAttributes; }
88 {
return myCentroids ? myCentroids->entries():0; }
92 {
return myGeometry; }
96 {
return myCentroids; }
102 {
return mySourceGeometry; }
104 { mySourceGeometry =
g; }
115 bool forrender)
const;
virtual int getMotionSegments() const =0
virtual bool refine(GT_Refine &refiner, const GT_RefineParms *parms=NULL) const
GLdouble GLdouble GLint GLint const GLdouble * points
virtual const GT_ViewportRefineOptions & viewportRefineOptions() const
virtual int getPrimitiveType() const
virtual fpreal computePerimeter(int seg=0) const
const GT_AttributeListHandle & getUniformAttributes() const override
virtual fpreal computeVolume(const UT_Vector3 &ref_P, int seg=0) const
const GT_GEODetailListHandle & sourceGeometry() const
Class which writes ASCII or binary JSON streams.
GT_AttributeListHandle myAttributes
virtual GT_PrimitiveHandle doSoftCopy() const =0
GT_GEODetailListHandle mySourceGeometry
virtual fpreal computeSurfaceArea(int seg=0) const
virtual void getVelocityRange(UT_Vector3 &min, UT_Vector3 &max, const UT_StringRef &attribute_name=GA_Names::v) const
GLsizei GLsizei GLchar * source
The base class for all GT primitive types.
virtual GT_PrimitiveHandle doHarden() const
virtual int64 getMemoryUsage() const =0
void enlargeBounds(UT_BoundingBox boxes[], int nsegs) const override
Processes primitives generated by refinement process.
const GT_PrimitiveHandle & geometry() const
Return combined geometry.
const GT_DataArrayHandle & centroids() const
Return fragment centroids (where to render decorations)
GT_Size entries() const
Return number of fragments.
GT_PrimitiveHandle myGeometry
virtual bool save(UT_JSONWriter &w) const
void enlargeRenderBounds(UT_BoundingBox boxes[], int nsegs) const override
GLubyte GLubyte GLubyte GLubyte w
GT_DataArrayHandle myCentroids
UT_SharedPtr< GT_GEODetailList > GT_GEODetailListHandle
virtual const char * className() const =0
void setSourceGeometry(const GT_GEODetailListHandle &g)