Public Member Functions | Private Member Functions | Private Attributes | List of all members
Opcode::HybridModel Class Reference

#include <Opcode.h>

Inheritance diagram for Opcode::HybridModel:
Inheritance graph
[legend]

Public Member Functions

inline_ const udwordGetIndices () const
 
inline_ const LeafTrianglesGetLeafTriangles () const
 
 HybridModel ()
 
 override (BaseModel) bool Build(const OPCODECREATE &create)
 
 override (BaseModel) udword GetUsedBytes() const
 
 override (BaseModel) bool Refit()
 
virtual ~HybridModel ()
 
- Public Member Functions inherited from Opcode::BaseModel
 BaseModel ()
 
virtual bool Build (const OPCODECREATE &create)=0
 
inline_ const MeshInterfaceGetMeshInterface () const
 
inline_ udword GetModelCode () const
 
inline_ udword GetNbNodes () const
 
inline_ const AABBTreeGetSourceTree () const
 
inline_ const AABBOptimizedTreeGetTree () const
 
inline_ AABBOptimizedTreeGetTree ()
 
virtual udword GetUsedBytes () const =0
 
inline_ BOOL HasLeafNodes () const
 
inline_ BOOL HasSingleNode () const
 
inline_ BOOL IsQuantized () const
 
virtual bool Refit ()
 
inline_ void SetMeshInterface (const MeshInterface *imesh)
 
virtual ~BaseModel ()
 

Private Member Functions

void Release ()
 

Private Attributes

udwordmIndices
 Array of primitive indices. More...
 
udword mNbLeaves
 Number of leaf nodes in the model. More...
 
udword mNbPrimitives
 Number of primitives in the model. More...
 
LeafTrianglesmTriangles
 Array of mNbLeaves leaf descriptors. More...
 

Additional Inherited Members

- Protected Member Functions inherited from Opcode::BaseModel
bool CreateTree (bool no_leaf, bool quantized)
 
void ReleaseBase ()
 
- Protected Attributes inherited from Opcode::BaseModel
const MeshInterfacemIMesh
 User-defined mesh interface. More...
 
udword mModelCode
 Model code = combination of ModelFlag(s) More...
 
AABBTreemSource
 Original source tree. More...
 
AABBOptimizedTreemTree
 Optimized tree owned by the model. More...
 

Detailed Description

Definition at line 47 of file Opcode.h.

Constructor & Destructor Documentation

◆ HybridModel()

HybridModel::HybridModel ( )

Constructor.

Definition at line 94 of file OPC_HybridModel.cpp.

◆ ~HybridModel()

HybridModel::~HybridModel ( )
virtual

Destructor.

Definition at line 107 of file OPC_HybridModel.cpp.

Member Function Documentation

◆ GetIndices()

inline_ const udword* Opcode::HybridModel::GetIndices ( ) const
inline

Gets array of indices.

Returns
array of indices

Definition at line 95 of file Opcode.h.

◆ GetLeafTriangles()

inline_ const LeafTriangles* Opcode::HybridModel::GetLeafTriangles ( ) const
inline

Gets array of triangles.

Returns
array of triangles

Definition at line 87 of file Opcode.h.

◆ override() [1/3]

Opcode::HybridModel::override ( BaseModel  ) const &

Builds a collision model.

Parameters
create[in] model creation structure
Returns
true if success

◆ override() [2/3]

Opcode::HybridModel::override ( BaseModel  ) const

Gets the number of bytes used by the tree.

Returns
amount of bytes used

◆ override() [3/3]

Opcode::HybridModel::override ( BaseModel  )

Refits the collision model. This can be used to handle dynamic meshes. Usage is:

  1. modify your mesh vertices (keep the topology constant!)
  2. refit the tree (call this method)
    Returns
    true if success

◆ Release()

void HybridModel::Release ( )
private

Releases everything.

Definition at line 117 of file OPC_HybridModel.cpp.

Member Data Documentation

◆ mIndices

udword* Opcode::HybridModel::mIndices
private

Array of primitive indices.

Definition at line 101 of file Opcode.h.

◆ mNbLeaves

udword Opcode::HybridModel::mNbLeaves
private

Number of leaf nodes in the model.

Definition at line 98 of file Opcode.h.

◆ mNbPrimitives

udword Opcode::HybridModel::mNbPrimitives
private

Number of primitives in the model.

Definition at line 100 of file Opcode.h.

◆ mTriangles

LeafTriangles* Opcode::HybridModel::mTriangles
private

Array of mNbLeaves leaf descriptors.

Definition at line 99 of file Opcode.h.


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


openhrp3
Author(s): AIST, General Robotix Inc., Nakamura Lab of Dept. of Mechano Informatics at University of Tokyo
autogenerated on Thu Sep 8 2022 02:24:09