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

#include <GT_RefineParms.h>

Public Types

enum  { FACESET_NONE = 0, FACESET_NON_EMPTY, FACESET_ALL_GROUPS }
 

Public Member Functions

 GT_RefineParms ()
 
 GT_RefineParms (const GT_RefineParms &ref)
 
virtual ~GT_RefineParms ()
 
virtual unsigned hash () const
 Hash function. More...
 
virtual bool isEqual (const GT_RefineParms &src) const
 Comparison test. More...
 
 GT_GETSET (CoalesceFragments,"coalescefragments", bool, true)
 The maximum number of LOD levels for agents. More...
 
 GT_GETSET (CoalesceVolumes,"coalescevolumes", bool, true)
 
 GT_GETSET (FastPolyCompacting,"fastpolycompacting", bool, true)
 
 GT_GETSET (AddVertexNormals,"addvertexnormals", bool, false)
 
 GT_GETSET (CuspAngle,"cuspangle", float, GEO_DEFAULT_ADJUSTED_CUSP_ANGLE)
 
 GT_GETSET (FullBezierSupport,"fullBezierSupport", bool, true)
 
 GT_GETSET (CubicBezierSupport,"cubicBezierSupport", bool, true)
 
GT_DataArrayHandle getViewportMaterialAttrib () const
 Prune geometry that is hidden. More...
 
GT_DataArrayHandle getViewportMaterialRemapAttrib () const
 
void setViewportMaterialAttrib (const GT_DataArrayHandle &mh, const GT_DataArrayHandle &rh)
 
bool load (const UT_Options &opts)
 Load from UT_Options. More...
 
bool operator== (const GT_RefineParms &src) const
 
bool operator!= (const GT_RefineParms &src) const
 
void set (const char *name, bool v)
 
void set (const char *name, exint v)
 
void set (const char *name, fpreal v)
 
void set (const char *name, const char *v)
 
void set (const char *name, UT_Int64Array &v)
 
void set (const char *name, UT_Fpreal64Array &v)
 
bool import (const char *name, bool &v) const
 
bool import (const char *name, int32 &v) const
 
bool import (const char *name, int64 &v) const
 
bool import (const char *name, fpreal32 &v) const
 
bool import (const char *name, fpreal64 &v) const
 
bool import (const char *name, UT_String &v) const
 
bool import (const char *name, UT_Int64Array &v) const
 
bool import (const char *name, UT_Fpreal64Array &v) const
 
bool get (const char *name, bool def) const
 
exint get (const char *name, exint def) const
 
fpreal get (const char *name, fpreal def) const
 
const char * get (const char *name, const char *def, UT_String &storage) const
 
 GT_GETSET_INT (OverridePackedViewportLOD, myOverridePackedLOD,-1)
 Render a geometry as a point mesh. More...
 
void dump () const
 
bool dump (UT_WorkBuffer &buf) const
 

Static Public Member Functions

static bool getBool (const GT_RefineParms *parms, const char *name, bool def)
 
static exint getInt (const GT_RefineParms *parms, const char *name, exint def)
 
static fpreal getFloat (const GT_RefineParms *parms, const char *name, fpreal def)
 
static const char * getString (const GT_RefineParms *parms, const char *name, const char *def, UT_String &storage)
 
static voidoperator new (size_t size)
 
static voidoperator new (size_t size, void *p)
 
static void operator delete (void *p, size_t size)
 

Protected Member Functions

template<typename T >
bool importOption (const char *name, T &value) const
 

Detailed Description

Member Enumeration Documentation

anonymous enum
Enumerator
FACESET_NONE 
FACESET_NON_EMPTY 
FACESET_ALL_GROUPS 

Definition at line 262 of file GT_RefineParms.h.

Constructor & Destructor Documentation

GT_RefineParms::GT_RefineParms ( )
GT_RefineParms::GT_RefineParms ( const GT_RefineParms ref)
virtual GT_RefineParms::~GT_RefineParms ( )
virtual

Member Function Documentation

void GT_RefineParms::dump ( ) const

Debugging methods to dump the non-default parameters. Dump to either stdout or a string buffer.

bool GT_RefineParms::dump ( UT_WorkBuffer buf) const

Debugging methods to dump the non-default parameters. Dump to either stdout or a string buffer.

bool GT_RefineParms::get ( const char *  name,
bool  def 
) const
inline

Get a defaulted value

Definition at line 82 of file GT_RefineParms.h.

exint GT_RefineParms::get ( const char *  name,
exint  def 
) const
inline

Get a defaulted value

Definition at line 87 of file GT_RefineParms.h.

fpreal GT_RefineParms::get ( const char *  name,
fpreal  def 
) const
inline

Get a defaulted value

Definition at line 92 of file GT_RefineParms.h.

const char* GT_RefineParms::get ( const char *  name,
const char *  def,
UT_String storage 
) const
inline

Get a defaulted value

Definition at line 97 of file GT_RefineParms.h.

static bool GT_RefineParms::getBool ( const GT_RefineParms parms,
const char *  name,
bool  def 
)
inlinestatic

Static methods to get a defaulted parameter, with possibly a NULL parameter pointer.

Definition at line 107 of file GT_RefineParms.h.

static fpreal GT_RefineParms::getFloat ( const GT_RefineParms parms,
const char *  name,
fpreal  def 
)
inlinestatic

Static methods to get a defaulted parameter, with possibly a NULL parameter pointer.

Definition at line 117 of file GT_RefineParms.h.

static exint GT_RefineParms::getInt ( const GT_RefineParms parms,
const char *  name,
exint  def 
)
inlinestatic

Static methods to get a defaulted parameter, with possibly a NULL parameter pointer.

Definition at line 112 of file GT_RefineParms.h.

static const char* GT_RefineParms::getString ( const GT_RefineParms parms,
const char *  name,
const char *  def,
UT_String storage 
)
inlinestatic

Static methods to get a defaulted parameter, with possibly a NULL parameter pointer.

Definition at line 122 of file GT_RefineParms.h.

GT_DataArrayHandle GT_RefineParms::getViewportMaterialAttrib ( ) const
inline

Prune geometry that is hidden.

Whether to refine capture regions to curves (e.g. as required by the viewport) or to polygons.

Definition at line 326 of file GT_RefineParms.h.

GT_DataArrayHandle GT_RefineParms::getViewportMaterialRemapAttrib ( ) const
inline

Definition at line 328 of file GT_RefineParms.h.

GT_RefineParms::GT_GETSET ( CoalesceFragments  ,
"coalescefragments"  ,
bool  ,
true   
)

The maximum number of LOD levels for agents.

The minimum number of polygons for an LOD level; will halt the LOD. Whether to enable the viewport specific code when refining agents. Whether to refine the collision layer (if available) for agents instead of their current layer. When loading Alembic for the viewport, (i.e. when PackedViewportLOD is true), we check the following settings to determine whether to load face sets and arbitrary attributes. When unpacking Alembic, prune geometry that isn't visible. If this is false, empty geometry will be created. Whether to include primtive/vertex id's when converting to geo Convert point clouds into a particle primitive (instead of unconnected points). When converting from GT to GU, create packed geometry containing the converted GU details. Convert to Polygon Soup primitives if possible When converting from GU_Detail to GT primitives, create a subdivivision surface for polygons (instead of a GT_PrimPolygonMesh). Whether to coalesce fragments into a single mesh. In most cases, the fragment geometry is constant over time, while only the transform changes. Some applications prefer getting a large chunk of geometry rather than lots of little pieces. Others prefer to use the fact that only the transform is animated.

GT_RefineParms::GT_GETSET ( CoalesceVolumes  ,
"coalescevolumes"  ,
bool  ,
true   
)

Whether to coalesce volumes into a single GT_Primitive. Mantra and probably most uses of GT require this to be true but at least HAPI likes to have volumes be kept as separate GT_Primitives.

GT_RefineParms::GT_GETSET ( FastPolyCompacting  ,
"fastpolycompacting"  ,
bool  ,
true   
)

When building polygon/curve meshes from geometry, optionally build a "face set" to store group information in the meshes. When collecting polygons, there are some simple/fast heuristics to check whether point attributes need to be compacted. However, this doesn't always catch cases if there are stray points (unconnected points) in the geometry. If you want precise polygonal meshes, you can disable fast detection.

GT_RefineParms::GT_GETSET ( AddVertexNormals  ,
"addvertexnormals"  ,
bool  ,
false   
)

When collecting polygons, if there are no point or vertex normals on the incoming geometry, this indicates whether to compute and add vertex normals to the GT_PrimPolygonMesh.

GT_RefineParms::GT_GETSET ( CuspAngle  ,
"cuspangle"  ,
float  ,
GEO_DEFAULT_ADJUSTED_CUSP_ANGLE   
)

When adding vertex normals, this is the cusp angle to use. If the dihedral angle of an edge is larger than this, it will be cusped.

GT_RefineParms::GT_GETSET ( FullBezierSupport  ,
"fullBezierSupport"  ,
bool  ,
true   
)

Maximum number of points in a point mesh. This is used when refining a GEO_Detail. Maximum number of points in a point mesh. This is used when refining a GEO_Detail. Number of sub-frame timesteps used when unpacking sequence packed primitives. Each sub-step requires a blended detail. A value of -1 indicated no quantization, 0 will use only keyframe values, 1 will have one sub-frame (i.e. 0.5), etc. When creating instances during refining, rather than creating an instance with multiple transforms for the geometry, create separate instances, but still with a single shared GT_Primitive. This helps create aligned instances when trying to match segments for motion blur. When refining Houdini curves (NURBs/Bezier), generate Bezier curve meshes along with NURBS curve meshes where appropriate. Otherwise, only NURBS curves will be generated.

GT_RefineParms::GT_GETSET ( CubicBezierSupport  ,
"cubicBezierSupport"  ,
bool  ,
true   
)

If full Beziers aren't supported, still refine cubic Bezier curves to a pure Bezier curve mesh.

GT_RefineParms::GT_GETSET_INT ( OverridePackedViewportLOD  ,
myOverridePackedLOD  ,
1 
)

Render a geometry as a point mesh.

Render dangling (unreferenced) points as a point mesh Render all points, even if not dangled. Requires unusedpoints already be set! Use polygon mesh primitives Refine only a specific group of primitives Global level of detail Parametric u level of detail Quadric parameters Metaball parameters Parametric u/v range Whether to respect the packed primitive viewport LOD. This is set for viewport rendering, but not for mantra. Override the viewport LOD for packed primitives. The value should be set to one of the enum values in $GEO/GEO_PackedTypes.h

virtual unsigned GT_RefineParms::hash ( ) const
virtual

Hash function.

bool GT_RefineParms::import ( const char *  name,
bool &  v 
) const
inline

Import parameters/options. It might be useful for these to be virtual

Definition at line 62 of file GT_RefineParms.h.

bool GT_RefineParms::import ( const char *  name,
int32 v 
) const
inline

Import parameters/options. It might be useful for these to be virtual

Definition at line 64 of file GT_RefineParms.h.

bool GT_RefineParms::import ( const char *  name,
int64 v 
) const
inline

Import parameters/options. It might be useful for these to be virtual

Definition at line 66 of file GT_RefineParms.h.

bool GT_RefineParms::import ( const char *  name,
fpreal32 v 
) const
inline

Import parameters/options. It might be useful for these to be virtual

Definition at line 68 of file GT_RefineParms.h.

bool GT_RefineParms::import ( const char *  name,
fpreal64 v 
) const
inline

Import parameters/options. It might be useful for these to be virtual

Definition at line 70 of file GT_RefineParms.h.

bool GT_RefineParms::import ( const char *  name,
UT_String v 
) const
inline

Import parameters/options. It might be useful for these to be virtual

Definition at line 72 of file GT_RefineParms.h.

bool GT_RefineParms::import ( const char *  name,
UT_Int64Array v 
) const
inline

Import parameters/options. It might be useful for these to be virtual

Definition at line 74 of file GT_RefineParms.h.

bool GT_RefineParms::import ( const char *  name,
UT_Fpreal64Array v 
) const
inline

Import parameters/options. It might be useful for these to be virtual

Definition at line 76 of file GT_RefineParms.h.

template<typename T >
bool GT_RefineParms::importOption ( const char *  name,
T value 
) const
inlineprotected

Definition at line 355 of file GT_RefineParms.h.

virtual bool GT_RefineParms::isEqual ( const GT_RefineParms src) const
virtual

Comparison test.

bool GT_RefineParms::load ( const UT_Options opts)

Load from UT_Options.

static void GT_RefineParms::operator delete ( void p,
size_t  size 
)
static

For memory tracking, we override the new/delete operators

static void* GT_RefineParms::operator new ( size_t  size)
static

For memory tracking, we override the new/delete operators

static void* GT_RefineParms::operator new ( size_t  size,
void p 
)
static

For memory tracking, we override the new/delete operators

bool GT_RefineParms::operator!= ( const GT_RefineParms src) const
inline

Equivalence operators

Definition at line 39 of file GT_RefineParms.h.

bool GT_RefineParms::operator== ( const GT_RefineParms src) const
inline

Equivalence operators

Definition at line 37 of file GT_RefineParms.h.

void GT_RefineParms::set ( const char *  name,
bool  v 
)
inline

Import parameters/options. It might be useful for these to be virtual

Definition at line 45 of file GT_RefineParms.h.

void GT_RefineParms::set ( const char *  name,
exint  v 
)
inline

Import parameters/options. It might be useful for these to be virtual

Definition at line 47 of file GT_RefineParms.h.

void GT_RefineParms::set ( const char *  name,
fpreal  v 
)
inline

Import parameters/options. It might be useful for these to be virtual

Definition at line 49 of file GT_RefineParms.h.

void GT_RefineParms::set ( const char *  name,
const char *  v 
)
inline

Import parameters/options. It might be useful for these to be virtual

Definition at line 51 of file GT_RefineParms.h.

void GT_RefineParms::set ( const char *  name,
UT_Int64Array v 
)
inline

Import parameters/options. It might be useful for these to be virtual

Definition at line 53 of file GT_RefineParms.h.

void GT_RefineParms::set ( const char *  name,
UT_Fpreal64Array v 
)
inline

Import parameters/options. It might be useful for these to be virtual

Definition at line 55 of file GT_RefineParms.h.

void GT_RefineParms::setViewportMaterialAttrib ( const GT_DataArrayHandle mh,
const GT_DataArrayHandle rh 
)
inline

Definition at line 330 of file GT_RefineParms.h.


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