Nuke binary plugins 15.0.5
 
Loading...
Searching...
No Matches
DD::Image::GeometryList Class Reference

#include <GeometryList.h>

Public Member Functions

 GeometryList ()
 
unsigned objects () const
 
unsigned offset () const
 
GeoOpgeo () const
 
unsigned size () const
 
void add_object (int obj)
 
void delete_objects ()
 
void synchronize_objects ()
 
int add_primitive (int obj, Primitive *p=nullptr)
 
Primitivewritable_primitive (int obj, int prim)
 
PointListwritable_points (int obj)
 
Attributewritable_attribute (int obj, GroupType group, const char *name, AttribType type)
 
Attributewritable_attribute (int obj, const AttribContext *attrib)
 
AttribContextwritable_attribcontext (int obj, GroupType group, const char *name, AttribType type)
 
AttribContextwritable_attribcontext (int obj, const AttribContext *attrib)
 
void delete_attribcontext (int obj, GroupType group, const char *name, AttribType type)
 
void set_recursion_mask (int obj, unsigned mask)
 
void clear_recursion_mask (int obj, unsigned mask)
 
const GeoInfooperator[] (const size_t i) const
 
GeoInfooperator[] (const size_t i)
 
GeoInfoobject (unsigned i)
 
GeoInfoobject0 ()
 
const GeometryMaskrebuild_mask () const
 
bool rebuild (const GeometryMask &m=GeometryMask(Mask_All_Geometry)) const
 
void set_rebuild (const GeometryMask &m)
 
const Hashhash (int i) const
 
void compact (int obj)
 
void push_range ()
 
void set_range (unsigned offset, unsigned objects)
 
bool pop_range ()
 

Friends

class Scene
 
class GeoOp
 

Detailed Description

A list of GeoInfos with state flags and out-of-dateness hashes.

Constructor & Destructor Documentation

◆ GeometryList()

GeometryList::GeometryList ( )

Constructor. Initializes the geometry hashes.

Member Function Documentation

◆ objects()

unsigned DD::Image::GeometryList::objects ( ) const
inline

Current object count.

◆ offset()

unsigned DD::Image::GeometryList::offset ( ) const
inline

Absolute starting index in output list.

◆ geo()

GeoOp * DD::Image::GeometryList::geo ( ) const
inline

The GeoOp that is currently manipulating this cache.

Referenced by DD::Image::GeoOp::get_geometry().

◆ size()

◆ add_object()

◆ delete_objects()

void GeometryList::delete_objects ( )

Delete all allocated geometry and clear the cache and output list of objects.

References DD::Image::GeoOp::delete_cache(), and DD::Image::end().

Referenced by DD::Image::ReadGeo::create_geometry().

◆ synchronize_objects()

◆ add_primitive()

◆ writable_primitive()

Primitive * GeometryList::writable_primitive ( int  obj,
int  prim 
)

Return a local writable primitive by index.

References DD::Image::GeoOp::cache_list.

Referenced by compact().

◆ operator[]() [1/2]

const GeoInfo & DD::Image::GeometryList::operator[] ( const size_t  i) const
inline

Returns GeoInfo n offset into the current stream.

◆ operator[]() [2/2]

GeoInfo & DD::Image::GeometryList::operator[] ( const size_t  i)
inline

Returns GeoInfo n offset into the current stream.

◆ object()

GeoInfo & DD::Image::GeometryList::object ( unsigned  i)
inline

Returns GeoInfo n offset into the current stream.

Referenced by add_object(), add_primitive(), compact(), DD::Image::GeoOp::print_info(), and synchronize_objects().

◆ object0()

GeoInfo & DD::Image::GeometryList::object0 ( )
inline

Returns the first GeoInfo in the current stream.

◆ rebuild_mask()

const GeometryMask & DD::Image::GeometryList::rebuild_mask ( ) const
inline

What groups need updating.

◆ hash()

const Hash & DD::Image::GeometryList::hash ( int  i) const
inline

Geometry group out-of-dateness hashes.

Referenced by DD::Image::GeoOp::print_info().

◆ compact()

void GeometryList::compact ( int  obj)

Compact the geometry data removing unused vertices and remapping all face indices

References DD::Image::AttribContext::group, DD::Image::AttribContext::name, object(), DD::Image::AttribContext::type, and writable_primitive().



©2024 The Foundry Visionmongers, Ltd. All Rights Reserved.
www.foundry.com