Struct BVNodeBase

Inheritance Relationships

Derived Type

Struct Documentation

struct BVNodeBase

BVNodeBase encodes the tree structure for BVH.

Subclassed by coal::BVNode< BV >

Public Functions

inline BVNodeBase()

Default constructor.

inline bool operator==(const BVNodeBase &other) const

Equality operator.

inline bool operator!=(const BVNodeBase &other) const

Difference operator.

inline bool isLeaf() const

Whether current node is a leaf node (i.e. contains a primitive index.

inline int primitiveId() const

Return the primitive index. The index is referred to the original data (i.e. vertices or tri_indices) in BVHModel.

inline int leftChild() const

Return the index of the first child. The index is referred to the bounding volume array (i.e. bvs) in BVHModel.

inline int rightChild() const

Return the index of the second child. The index is referred to the bounding volume array (i.e. bvs) in BVHModel.

Public Members

int first_child

An index for first child node or primitive If the value is positive, it is the index of the first child bv node If the value is negative, it is -(primitive index + 1) Zero is not used.

unsigned int first_primitive

The start id the primitive belonging to the current node. The index is referred to the primitive_indices in BVHModel and from that we can obtain the primitive’s index in original data indirectly.

unsigned int num_primitives

The number of primitives belonging to the current node.