46 class gq_SubdivideAttribHandler;
 
   48 template<
typename T, 
bool B> 
class GA_EdgeT; 
 
   78                                            fpreal super_point_tolerance = 1E-6);
 
   81     void                         clearAndDestroy();
 
   98                                         int normalize, 
int outputGroups,
 
  108                                          bool fixsharededges = 
false);
 
  113     void                         createEdgeWeights();
 
  132     void                         setCreaseWeight(
const GA_Edge &edge,
 
  139     void                         setCreaseWeight(
const GA_Edge &gedge,
 
  147     bool                         setEdgeWeight(
exint edge_index,
 
  151     void                         dual(
const char *attribs_to_swap=NULL);
 
  159     void                         makeWire(
fpreal radius, 
 
  161                                           bool dospheres, 
bool docaps);
 
  164     void                         copyEdgeWeightToVertex();
 
  165     void                         unHole(
int maintain);
 
  167     void                         createCuspGroup(
GA_Group *group, 
 
  168                                                  bool doMinAngle, 
fpreal minAngle, 
 
  169                                                  bool doMaxAngle, 
fpreal maxAngle);
 
  170     void                         createBoundaryGroup(
GA_Group *grp);
 
  175     void                         createBoundaryGroup(
const GA_Edge  &edge,
 
  198     void                         deleteAllShareEdges();
 
  205         int idx = myEdges.append(Q);
 
  206         for (
int i = 0; i < 4; i++)
 
  207             Q[i].init(i + idx * 4);
 
  212     void                         removePoint(
int i);
 
  214     void                         removeEdge(
int i);
 
  220     void                         removeFace(
int i);
 
  240                                     if (myRay) 
delete myRay;
 
  249     void                         deleteShareEdge(
GQ_Edge *edge, 
 
  260     int                          nEdges()
 const    { 
return myEdges.entries();}
 
  261     int                          nFaces()
 const    { 
return myFaces.entries();}
 
  262     int                          nPoints()
 const   { 
return myPoints.entries();}
 
  265     int                          aboveOrBelow(
GQ_Face *face);
 
  268     void                         simpleDecimate(
int targetPolys);
 
  274     void                         save(std::ostream &os) 
const;
 
  276                                  { d.
save(os); 
return os; }
 
  283                                             { 
return findEdge(edge, myGdp); }
 
  300     void                         buildSuperPoints(
fpreal distance,
 
  316     void                         createCreaseFace(
GQ_Edge *edge,
 
  321     void                         addIntersectEdges(
GQ_Face *face,
 
  327     bool                         nonBridgeLoopHasFlag(
GQ_Edge *e, 
 
  336     void                         removeAllPossibleBridges(
GQ_Face *face,
 
  347                                        int outputGroups = 0,
 
  353     void                         unHole(
GQ_Face *face, 
int maintain);
 
  357     void                         uniqueEdge(
GQ_Edge *edge);
 
  360     int                          twoFacesShareAllEdges(
GQ_Edge *edge, 
 
  364     void                 calcFacePoints(
int numfaces);
 
  365     void                 calcEdgePoints(
int numedges, 
 
  368     void                 calcVertexPoints(
int numpoints,
 
  375     void                 copyVertexAttributeByPoint(
int numpoints,
 
  377                                         gq_SubdivideAttribHandler &ahandler);
 
  379     void                 copyEdgeVertexAttributes(
int numedge);
 
  382     void                 flagVertexBoundaries();
 
  383     void                 subdivideEdges(
int numedges, 
bool linear);
 
  384     void                 subdivideFaces(
int numfaces,
 
  385                                         gq_SubdivideAttribHandler &ahandler);
 
  388     void                 copyVertexAttributes(
int numedges,
 
  389                                               gq_SubdivideAttribHandler &);
 
  393                             gq_SubdivideAttribHandler &);
 
  405     void                 createVirtualEdgePoints(
const UT_Vector4 &,
 
  408     void                 createActualEdgePoints(
const UT_Vector4 &,
 
  414                             int, gq_SubdivideAttribHandler &);
 
  419                             gq_SubdivideAttribHandler &,
 
  428                             gq_SubdivideAttribHandler &);
 
GU_Detail * getDetail() const 
 
GA_API const UT_StringHolder dist
 
Definition of a geometry attribute. 
 
UT_ValArray< GQ_Face * > & getFaceList()
 
SIM_API const UT_StringHolder angle
 
TIL_API bool stitch(StitchWriter &w, const UT_Span< TileReader * > &tiles, bool top_down)
 
GLboolean GLboolean GLboolean GLboolean a
 
const UT_Array< GQ_Point * > & getEdgePoints() const 
 
const UT_ValArray< GQ_Edge * > & getEdgeList() const 
 
const UT_DoubleArray & getEdgeWeights() const 
 
const UT_ValArray< GQ_Face * > & getFaceList() const 
 
void save(std::ostream &os) const 
 
exint GA_Size
Defines the bit width for index and offset types in GA. 
 
SIM_API const UT_StringHolder all
 
const UT_Array< GQ_Point * > & getPointList() const 
 
UT_Array< GQ_Point * > & getEdgePoints()
 
GQ_Edge * findEdge(const GA_Edge *edge)
 
UT_Array< GA_RWAttributeRef > & getOffsets()
 
A handle to simplify manipulation of multiple attributes. 
 
GLboolean GLboolean GLboolean b
 
GLint GLint GLsizei GLsizei GLsizei depth
 
GA_API const UT_StringHolder parms
 
const GU_Detail * getGdp() const 
 
virtual bool smooth(GA_AttributeOperand &d, GA_AttributeOperand &min, GA_AttributeOperand &max, GA_AttributeOperand &t) const 
d = SYSsmooth(min, max, t); 
 
GU_RayIntersect * getRay()
 
UT_Array< GQ_Point * > & getPointList()
 
void OIIO_UTIL_API split(string_view str, std::vector< string_view > &result, string_view sep=string_view(), int maxsplit=-1)
 
SIM_API const UT_StringHolder distance
 
friend std::ostream & operator<<(std::ostream &os, const GQ_Detail &d)
 
IMATH_INTERNAL_NAMESPACE_HEADER_ENTER IMATH_HOSTDEVICE IMATH_CONSTEXPR14 T clip(const T &p, const Box< T > &box) IMATH_NOEXCEPT
 
UT_DoubleArray & getEdgeWeights()
 
UT_ValArray< GQ_Edge * > & getEdgeList()