HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
GEO_AttributeCaptureRegion Class Reference

Interface class for tube capture attributes. More...

#include <GEO_AttributeCaptureRegion.h>

Static Public Member Functions

static void copyBoneCaptureRegion (const GA_RWAttributeRef &dh, int dindex, const GA_ROAttributeRef &sh, int sindex)
 Copy a bone capture region from one to another. More...
 
static void initBoneCapture (float *array, int array_size)
 Initialize bone capture region. More...
 
static void initTubeCapture (float *array, int array_size)
 Initialize tube capture region. More...
 
static bool addTubeCaptureRegionAttrib (GEO_Detail *gdp, GA_RWAttributeRef &h)
 
static void getMetaCaptureRegionInverted (const GA_ROAttributeRef &h, int index, int propid, int objset, UT_Matrix4 &xform)
 Get the inverted metaball capture region transform. More...
 
static void getBoneCaptureRegion (const GA_ROAttributeRef &h, int index, UT_Matrix4 &xform, float &tcap, float &bcap, float &taperx, float &taperz)
 
static void getBoneCaptureRegion (const GA_ROAttributeRef &h, int index, GEO_CaptureBoneStorage &s)
 
static void getBoneCaptureRegion (const GA_ROAttributeRef &h, int index, float *array, int array_size)
 
static void setBoneCaptureRegion (const GA_RWAttributeRef &h, int index, const UT_Matrix4 &xform, fpreal tcap, fpreal bcap, fpreal taperx, fpreal taperz)
 
static void setBoneCaptureRegion (const GA_RWAttributeRef &h, int index, const GEO_CaptureBoneStorage &s)
 
static void setBoneCaptureRegion (const GA_RWAttributeRef &h, int index, const float *array, int array_size)
 
static void setBoneCaptureRegion (GA_AIFIndexPairObjects *objects, int index, const UT_Matrix4 &xform, fpreal tcap, fpreal bcap, fpreal taperx, fpreal taperz)
 
static void setBoneCaptureRegion (GA_AIFIndexPairObjects *objects, int index, GEO_CaptureBoneStorage &s)
 
static void setBoneCaptureRegion (GA_AIFIndexPairObjects *objects, int index, const float *array, int array_size)
 
static GA_AIFIndexPairObjectsgetBoneCaptureRegionObjects (const GA_RWAttributeRef &h, int &property_i)
 
static const
GA_AIFIndexPairObjects
getBoneCaptureRegionObjects (const GA_ROAttributeRef &h, int &property_i)
 
static void getTubeCaptureRegion (GA_Offset prim_offset, const GA_ROAttributeRef &h, float &bcap, float &tcap, float &taperx, float &taperz, float &in_weight, float &out_weight)
 
static void setTubeCaptureRegion (GA_Offset prim_offset, const GA_RWAttributeRef &h, fpreal bcap, fpreal tcap, fpreal taperx=1.0, fpreal taperz=1.0, fpreal in_weight=1.0, fpreal out_weight=0.0)
 
static fpreal getTubeBCap (const GA_ROHandleR &h, GA_Offset primoff)
 
static fpreal getTubeTCap (const GA_ROHandleR &h, GA_Offset primoff)
 
static void setTubeBCap (const GA_RWHandleR &h, GA_Offset primoff, fpreal v)
 
static void setTubeTCap (const GA_RWHandleR &h, GA_Offset primoff, fpreal v)
 
static void getMetaCaptureRegion (const GA_ROAttributeRef &h, int index, int propid, int objset, UT_Matrix4 &xform)
 
static void setMetaCaptureRegion (const GA_RWAttributeRef &h, int index, int prop, int objset, const UT_Matrix4 &xform)
 
static void getMetaRestCaptureRegion (const GA_ROAttributeRef &h, int index, int prop, int objset, UT_Matrix4 &xform)
 
static void setMetaRestCaptureRegion (const GA_RWAttributeRef &h, int index, int prop, int objset, const UT_Matrix4 &xform)
 
static int getBoneSize ()
 
static int getTubeSize ()
 
static int getMetaSize ()
 
static int getMetaRestSize ()
 

Detailed Description

Interface class for tube capture attributes.

There are three types of capture regions used in Houdini

  • Bone:
    A transform, bottom/top caps and taperx/taperz
  • Metaball:
    A single transform
  • Tube:
    Bottom/Top caps, taperx/taperz and inside/outside weights (the transform is picked up from the tube primitive)
Warning
This is being used internally by Side Effects to simplify forward compatibility issues. The lifetime of this class is not well known and code should not rely on any methods herein.

Definition at line 85 of file GEO_AttributeCaptureRegion.h.

Member Function Documentation

static bool GEO_AttributeCaptureRegion::addTubeCaptureRegionAttrib ( GEO_Detail gdp,
GA_RWAttributeRef h 
)
static

All in one method that creates a tube capture attribute with appropriate defaults.

static void GEO_AttributeCaptureRegion::copyBoneCaptureRegion ( const GA_RWAttributeRef dh,
int  dindex,
const GA_ROAttributeRef sh,
int  sindex 
)
static

Copy a bone capture region from one to another.

static void GEO_AttributeCaptureRegion::getBoneCaptureRegion ( const GA_ROAttributeRef h,
int  index,
UT_Matrix4 xform,
float &  tcap,
float &  bcap,
float &  taperx,
float &  taperz 
)
static

Get/Set bone capture region attribute data values The object should usually be gdp.attribs().getElement()

static void GEO_AttributeCaptureRegion::getBoneCaptureRegion ( const GA_ROAttributeRef h,
int  index,
GEO_CaptureBoneStorage s 
)
inlinestatic

Get/Set bone capture region attribute data values The object should usually be gdp.attribs().getElement()

Definition at line 98 of file GEO_AttributeCaptureRegion.h.

static void GEO_AttributeCaptureRegion::getBoneCaptureRegion ( const GA_ROAttributeRef h,
int  index,
float *  array,
int  array_size 
)
static

Get/Set bone capture region attribute data values The object should usually be gdp.attribs().getElement()

static GA_AIFIndexPairObjects* GEO_AttributeCaptureRegion::getBoneCaptureRegionObjects ( const GA_RWAttributeRef h,
int property_i 
)
static

Given an bone point capture attribute, retrieve the index pair object and index for the capture region property. Returns NULL if the attribute isn't of the right type.

Examples:
SOP/SOP_BouncyAgent.C.
static const GA_AIFIndexPairObjects* GEO_AttributeCaptureRegion::getBoneCaptureRegionObjects ( const GA_ROAttributeRef h,
int property_i 
)
static

Given an bone point capture attribute, retrieve the index pair object and index for the capture region property. Returns NULL if the attribute isn't of the right type.

static int GEO_AttributeCaptureRegion::getBoneSize ( )
inlinestatic

Return the number of floats in each type of capture region

Definition at line 246 of file GEO_AttributeCaptureRegion.h.

static void GEO_AttributeCaptureRegion::getMetaCaptureRegion ( const GA_ROAttributeRef h,
int  index,
int  propid,
int  objset,
UT_Matrix4 xform 
)
static

Get/Set metaball capture region attribute values The object should usually be gdp.attribs().getElement()

static void GEO_AttributeCaptureRegion::getMetaCaptureRegionInverted ( const GA_ROAttributeRef h,
int  index,
int  propid,
int  objset,
UT_Matrix4 xform 
)
static

Get the inverted metaball capture region transform.

static void GEO_AttributeCaptureRegion::getMetaRestCaptureRegion ( const GA_ROAttributeRef h,
int  index,
int  prop,
int  objset,
UT_Matrix4 xform 
)
inlinestatic

Get/Set the anchor/rest metaball attribute

Definition at line 230 of file GEO_AttributeCaptureRegion.h.

static int GEO_AttributeCaptureRegion::getMetaRestSize ( )
inlinestatic

Return the number of floats in each type of capture region

Definition at line 249 of file GEO_AttributeCaptureRegion.h.

static int GEO_AttributeCaptureRegion::getMetaSize ( )
inlinestatic

Return the number of floats in each type of capture region

Definition at line 248 of file GEO_AttributeCaptureRegion.h.

static fpreal GEO_AttributeCaptureRegion::getTubeBCap ( const GA_ROHandleR h,
GA_Offset  primoff 
)
static

Access specific tube attributes through an attribute handle

static void GEO_AttributeCaptureRegion::getTubeCaptureRegion ( GA_Offset  prim_offset,
const GA_ROAttributeRef h,
float &  bcap,
float &  tcap,
float &  taperx,
float &  taperz,
float &  in_weight,
float &  out_weight 
)
static

Get/Set tube capture region attribute data values The attribute element should be the primitive

static int GEO_AttributeCaptureRegion::getTubeSize ( )
inlinestatic

Return the number of floats in each type of capture region

Definition at line 247 of file GEO_AttributeCaptureRegion.h.

static fpreal GEO_AttributeCaptureRegion::getTubeTCap ( const GA_ROHandleR h,
GA_Offset  primoff 
)
static

Access specific tube attributes through an attribute handle

static void GEO_AttributeCaptureRegion::initBoneCapture ( float *  array,
int  array_size 
)
static

Initialize bone capture region.

static void GEO_AttributeCaptureRegion::initTubeCapture ( float *  array,
int  array_size 
)
static

Initialize tube capture region.

static void GEO_AttributeCaptureRegion::setBoneCaptureRegion ( const GA_RWAttributeRef h,
int  index,
const UT_Matrix4 xform,
fpreal  tcap,
fpreal  bcap,
fpreal  taperx,
fpreal  taperz 
)
static

Get/Set bone capture region attribute data values The object should usually be gdp.attribs().getElement()

static void GEO_AttributeCaptureRegion::setBoneCaptureRegion ( const GA_RWAttributeRef h,
int  index,
const GEO_CaptureBoneStorage s 
)
inlinestatic

Get/Set bone capture region attribute data values The object should usually be gdp.attribs().getElement()

Definition at line 117 of file GEO_AttributeCaptureRegion.h.

static void GEO_AttributeCaptureRegion::setBoneCaptureRegion ( const GA_RWAttributeRef h,
int  index,
const float *  array,
int  array_size 
)
static

Get/Set bone capture region attribute data values The object should usually be gdp.attribs().getElement()

static void GEO_AttributeCaptureRegion::setBoneCaptureRegion ( GA_AIFIndexPairObjects objects,
int  index,
const UT_Matrix4 xform,
fpreal  tcap,
fpreal  bcap,
fpreal  taperx,
fpreal  taperz 
)
static

Get/Set bone capture region attribute data values The object should usually be gdp.attribs().getElement()

static void GEO_AttributeCaptureRegion::setBoneCaptureRegion ( GA_AIFIndexPairObjects objects,
int  index,
GEO_CaptureBoneStorage s 
)
inlinestatic

Get/Set bone capture region attribute data values The object should usually be gdp.attribs().getElement()

Definition at line 135 of file GEO_AttributeCaptureRegion.h.

static void GEO_AttributeCaptureRegion::setBoneCaptureRegion ( GA_AIFIndexPairObjects objects,
int  index,
const float *  array,
int  array_size 
)
static

Get/Set bone capture region attribute data values The object should usually be gdp.attribs().getElement()

static void GEO_AttributeCaptureRegion::setMetaCaptureRegion ( const GA_RWAttributeRef h,
int  index,
int  prop,
int  objset,
const UT_Matrix4 xform 
)
static

Get/Set metaball capture region attribute values The object should usually be gdp.attribs().getElement()

static void GEO_AttributeCaptureRegion::setMetaRestCaptureRegion ( const GA_RWAttributeRef h,
int  index,
int  prop,
int  objset,
const UT_Matrix4 xform 
)
inlinestatic

Get/Set the anchor/rest metaball attribute

Definition at line 236 of file GEO_AttributeCaptureRegion.h.

static void GEO_AttributeCaptureRegion::setTubeBCap ( const GA_RWHandleR h,
GA_Offset  primoff,
fpreal  v 
)
static

Access specific tube attributes through an attribute handle

static void GEO_AttributeCaptureRegion::setTubeCaptureRegion ( GA_Offset  prim_offset,
const GA_RWAttributeRef h,
fpreal  bcap,
fpreal  tcap,
fpreal  taperx = 1.0,
fpreal  taperz = 1.0,
fpreal  in_weight = 1.0,
fpreal  out_weight = 0.0 
)
static

Get/Set tube capture region attribute data values The attribute element should be the primitive

static void GEO_AttributeCaptureRegion::setTubeTCap ( const GA_RWHandleR h,
GA_Offset  primoff,
fpreal  v 
)
static

Access specific tube attributes through an attribute handle


The documentation for this class was generated from the following file: