HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
GU_CurveFrame.h File Reference
#include "GU_API.h"
#include <GEO/GEO_Detail.h>
#include <GA/GA_ElementGroup.h>
#include <GA/GA_Handle.h>
#include <GA/GA_Iterator.h>
#include <GA/GA_OffsetList.h>
#include <GA/GA_SplittableRange.h>
#include <GA/GA_Types.h>
#include <UT/UT_Interrupt.h>
#include <UT/UT_ParallelUtil.h>
#include <UT/UT_Matrix4.h>
#include <UT/UT_Vector3.h>
#include <UT/UT_Vector4.h>
#include <SYS/SYS_Inline.h>
#include <SYS/SYS_Types.h>
+ Include dependency graph for GU_CurveFrame.h:

Go to the source code of this file.

Classes

struct  GU_CurveFrame::CurveFrameParms< T >
 

Namespaces

 GU_CurveFrame
 

Enumerations

enum  GU_CurveFrame::TangentType {
  GU_CurveFrame::CIRCULAR, GU_CurveFrame::SUBD, GU_CurveFrame::PREV, GU_CurveFrame::NEXT,
  GU_CurveFrame::NONE
}
 
enum  GU_CurveFrame::RotationPer {
  GU_CurveFrame::EDGE, GU_CurveFrame::DISTANCE, GU_CurveFrame::ATTRIB, GU_CurveFrame::FULLEDGES,
  GU_CurveFrame::FULLDISTANCE
}
 

Functions

GU_API bool GU_CurveFrame::getPolyProperties (const GEO_Detail *geometry, const GA_OffsetListRef &vertices, exint &nedges, bool &closed, bool &unrolled)
 
SYS_FORCE_INLINE bool GU_CurveFrame::getPolyProperties (const GEO_Detail *geometry, const GA_Offset primoff, exint &nedges, bool &closed, bool &unrolled)
 
template<typename T >
GU_API void GU_CurveFrame::computeCurveTransforms (const GEO_Detail *const geo, const GA_PrimitiveGroup *curve_group, const GA_RWHandleT< UT_Matrix4T< T >> &transform_attrib, const CurveFrameParms< T > &parms)
 
template<typename T , typename OUTPUT_T , typename FUNCTOR >
void GU_CurveFrame::extractAttribFromTransform (GEO_Detail *geo, const GA_PrimitiveGroup *curve_group, const GA_ROHandleT< UT_Matrix4T< T >> &transform_attrib, const GA_RWHandleT< OUTPUT_T > &output_attrib, FUNCTOR &&extract_functor)
 
template<int AXIS, typename T , typename OUTPUT_T >
void GU_CurveFrame::extractAxisAttrib (GEO_Detail *geo, const GA_PrimitiveGroup *curve_group, const GA_ROHandleT< UT_Matrix4T< T >> &transform_attrib, const GA_RWHandleT< UT_Vector3T< OUTPUT_T >> &axis_attrib)
 This works for AXIS == 0 (x), 1 (y), 2 (z), and 3 (translation). More...