#include <GridModel.h>


Data Structures | |
| class | GridSortPredicate |
Public Types | |
| typedef core::CollisionElementIterator | ChildIterator |
| typedef Vec3Types | DataTypes |
| typedef GridCell | Element |
Public Member Functions | |
| GridModel () | |
| virtual void | resize (int size) |
| Set the number of elements. | |
| virtual void | computeBoundingTree (int maxDepth=0) |
| Create or update the bounding volume hierarchy. | |
| virtual std::pair < core::CollisionElementIterator, core::CollisionElementIterator > | getInternalChildren (int index) const |
| Return the list (as a pair of iterators) of internal children of an element. | |
| virtual std::pair < core::CollisionElementIterator, core::CollisionElementIterator > | getExternalChildren (int index) const |
| Return the list (as a pair of iterators) of external children of an element. | |
| virtual bool | isLeaf (int index) const |
| Checks if the element(index) is a leaf and a primitive of the collision model. | |
| void | draw (int index) |
| Render an collision element. | |
| void | draw () |
| Render the whole collision model. | |
Friends | |
| class | GridCell |
Definition at line 59 of file GridModel.h.
Definition at line 64 of file GridModel.h.
Definition at line 65 of file GridModel.h.
Definition at line 66 of file GridModel.h.
| sofa::component::collision::GridModel::GridModel | ( | ) |
Definition at line 49 of file GridModel.cpp.
| void sofa::component::collision::GridModel::computeBoundingTree | ( | int | maxDepth = 0 |
) | [virtual] |
Create or update the bounding volume hierarchy.
Implements sofa::core::CollisionModel.
Definition at line 263 of file GridModel.cpp.
References sofa::core::CollisionModel::begin(), sofa::core::CollisionModel::empty(), sofa::core::CollisionModel::end(), sofa::core::CollisionModel::getPrevious(), sofa::core::CollisionModel::resize(), sofa::core::CollisionModel::setPrevious(), and sofa::core::CollisionModel::size.
| void sofa::component::collision::GridModel::draw | ( | ) | [virtual] |
Render the whole collision model.
Reimplemented from sofa::core::CollisionModel.
Definition at line 172 of file GridModel.cpp.
References sofa::core::CollisionModel::color, sofa::core::CollisionModel::draw(), sofa::core::objectmodel::BaseObject::getContext(), sofa::core::CollisionModel::getNext(), sofa::core::CollisionModel::getPrevious(), sofa::core::CollisionModel::isActive(), and sofa::core::CollisionModel::isSimulated().
| void sofa::component::collision::GridModel::draw | ( | int | ) | [virtual] |
Render an collision element.
Reimplemented from sofa::core::CollisionModel.
Definition at line 135 of file GridModel.cpp.
| std::pair< core::CollisionElementIterator, core::CollisionElementIterator > sofa::component::collision::GridModel::getExternalChildren | ( | int | ) | const [virtual] |
Return the list (as a pair of iterators) of external children of an element.
External children are child elements of a different type than their parent (often corresponding to the final elements).
Default to empty (i.e. two identical iterators)
Reimplemented from sofa::core::CollisionModel.
Definition at line 213 of file GridModel.cpp.
| std::pair< core::CollisionElementIterator, core::CollisionElementIterator > sofa::component::collision::GridModel::getInternalChildren | ( | int | ) | const [virtual] |
Return the list (as a pair of iterators) of internal children of an element.
Internal children are child elements of the same type as their parent (often corresponding to non-final elements). This distinction is used to optimize the intersection tests inside the hierarchy, as internal children can be processed without dynamically retrieving a new intersection method.
Default to empty (i.e. two identical iterators)
Reimplemented from sofa::core::CollisionModel.
Definition at line 208 of file GridModel.cpp.
Checks if the element(index) is a leaf and a primitive of the collision model.
Default to true since triangle model, line model, etc. does not have this method implemented and they are themselves (normally) leaves and primitives
Reimplemented from sofa::core::CollisionModel.
Definition at line 230 of file GridModel.cpp.
| void sofa::component::collision::GridModel::resize | ( | int | s | ) | [virtual] |
Set the number of elements.
Reimplemented from sofa::core::CollisionModel.
Definition at line 53 of file GridModel.cpp.
References sofa::core::CollisionModel::getNext(), sofa::core::CollisionModel::getPrevious(), and sofa::core::CollisionModel::resize().
friend class GridCell [friend] |
Definition at line 67 of file GridModel.h.
1.5.7.1