#include <DistanceGridCollisionModel.h>


Definition at line 596 of file DistanceGridCollisionModel.h.
Definition at line 755 of file DistanceGridCollisionModel.h.
| typedef FFDDistanceGridCollisionElement sofa::component::collision::FFDDistanceGridCollisionModel::Element |
Definition at line 757 of file DistanceGridCollisionModel.h.
Definition at line 600 of file DistanceGridCollisionModel.h.
Definition at line 599 of file DistanceGridCollisionModel.h.
Definition at line 754 of file DistanceGridCollisionModel.h.
| typedef topology::RegularGridTopology sofa::component::collision::FFDDistanceGridCollisionModel::Topology |
Reimplemented from sofa::core::CollisionModel.
Definition at line 756 of file DistanceGridCollisionModel.h.
| sofa::component::collision::FFDDistanceGridCollisionModel::FFDDistanceGridCollisionModel | ( | ) |
| sofa::component::collision::FFDDistanceGridCollisionModel::~FFDDistanceGridCollisionModel | ( | ) |
| void sofa::component::collision::FFDDistanceGridCollisionModel::computeBoundingTree | ( | int | maxDepth = 0 |
) | [virtual] |
Create or update the bounding volume hierarchy.
Implements sofa::core::CollisionModel.
Definition at line 488 of file DistanceGridCollisionModel.cpp.
References sofa::component::collision::CubeModel::computeBoundingTree(), sofa::component::collision::FFDDistanceGridCollisionModel::DeformedCube::corners, sofa::core::CollisionModel::empty(), getDeformCube(), sofa::core::CollisionModel::isMoving(), sofa::component::collision::CubeModel::resize(), sofa::component::collision::CubeModel::setParentOf(), sofa::core::CollisionModel::size, and updateGrid().
| void sofa::component::collision::FFDDistanceGridCollisionModel::draw | ( | ) | [virtual] |
Render the whole collision model.
Reimplemented from sofa::core::CollisionModel.
Definition at line 598 of file DistanceGridCollisionModel.cpp.
References sofa::core::CollisionModel::draw(), elems, sofa::core::CollisionModel::getColor4f(), sofa::core::objectmodel::BaseObject::getContext(), sofa::core::CollisionModel::getPrevious(), and sofa::core::CollisionModel::isActive().
| void sofa::component::collision::FFDDistanceGridCollisionModel::draw | ( | int | ) | [virtual] |
Render an collision element.
Reimplemented from sofa::core::CollisionModel.
Definition at line 618 of file DistanceGridCollisionModel.cpp.
References sofa::component::collision::FFDDistanceGridCollisionModel::DeformedCube::center, sofa::component::collision::FFDDistanceGridCollisionModel::DeformedCube::corners, sofa::component::collision::FFDDistanceGridCollisionModel::DeformedCube::deformedPoints, sofa::component::collision::FFDDistanceGridCollisionModel::DeformedCube::facesUpdated, getDeformCube(), sofa::helper::gl::glVertexT(), sofa::core::CollisionModel::isSimulated(), sofa::component::collision::FFDDistanceGridCollisionModel::DeformedCube::pointsUpdated, and sofa::component::collision::FFDDistanceGridCollisionModel::DeformedCube::radius.
| DeformedCube& sofa::component::collision::FFDDistanceGridCollisionModel::getDeformCube | ( | int | index = 0 |
) | [inline] |
Definition at line 780 of file DistanceGridCollisionModel.h.
References elems.
Referenced by computeBoundingTree(), draw(), and updateGrid().
| topology::RegularGridTopology* sofa::component::collision::FFDDistanceGridCollisionModel::getDeformGrid | ( | ) | [inline] |
| core::componentmodel::behavior::MechanicalState<DataTypes>* sofa::component::collision::FFDDistanceGridCollisionModel::getDeformModel | ( | ) | [inline] |
| DistanceGrid* sofa::component::collision::FFDDistanceGridCollisionModel::getGrid | ( | int | index = 0 |
) | [inline] |
| core::componentmodel::behavior::MechanicalState<DataTypes>* sofa::component::collision::FFDDistanceGridCollisionModel::getMechanicalState | ( | ) | [inline] |
| topology::RegularGridTopology* sofa::component::collision::FFDDistanceGridCollisionModel::getMeshTopology | ( | ) | [inline, virtual] |
BaseMeshTopology associated to the collision model.
Reimplemented from sofa::core::CollisionModel.
Definition at line 771 of file DistanceGridCollisionModel.h.
References ffdGrid.
| void sofa::component::collision::FFDDistanceGridCollisionModel::init | ( | void | ) | [virtual] |
Initialization method called at graph modification, during bottom-up traversal.
Reimplemented from sofa::core::objectmodel::BaseObject.
Definition at line 385 of file DistanceGridCollisionModel.cpp.
References sofa::component::collision::FFDDistanceGridCollisionModel::DeformedCube::Point::bary, box, dumpfilename, elems, ffd, ffdGrid, filename, sofa::core::objectmodel::BaseObject::getContext(), sofa::core::objectmodel::BaseContext::getMechanicalState(), sofa::core::objectmodel::BaseContext::getMeshTopology(), sofa::core::objectmodel::Data< T >::getValue(), sofa::component::collision::FFDDistanceGridCollisionModel::DeformedCube::Point::index, sofa::component::collision::DistanceGrid::loadShared(), sofa::component::collision::DistanceGrid::meshPts, nx, ny, nz, resize(), sofa::component::collision::DistanceGrid::save(), and scale.
| void sofa::component::collision::FFDDistanceGridCollisionModel::resize | ( | int | s | ) | [virtual] |
Set the number of elements.
Reimplemented from sofa::core::CollisionModel.
Definition at line 476 of file DistanceGridCollisionModel.cpp.
References elems.
Referenced by init().
| void sofa::component::collision::FFDDistanceGridCollisionModel::setGrid | ( | DistanceGrid * | surf, | |
| int | index = 0 | |||
| ) |
| void sofa::component::collision::FFDDistanceGridCollisionModel::updateGrid | ( | ) | [protected] |
Definition at line 518 of file DistanceGridCollisionModel.cpp.
References sofa::component::collision::FFDDistanceGridCollisionModel::DeformedCube::center, sofa::component::collision::FFDDistanceGridCollisionModel::DeformedCube::corners, sofa::component::collision::FFDDistanceGridCollisionModel::DeformedCube::elem, sofa::component::collision::FFDDistanceGridCollisionModel::DeformedCube::facesUpdated, ffd, ffdGrid, getDeformCube(), sofa::component::topology::MeshTopology::getHexas(), norm2(), sofa::component::collision::FFDDistanceGridCollisionModel::DeformedCube::pointsUpdated, sofa::component::collision::FFDDistanceGridCollisionModel::DeformedCube::radius, sofa::helper::rsqrt(), sofa::core::CollisionModel::size, and sofa::component::collision::FFDDistanceGridCollisionModel::DeformedCube::updateDeform().
Referenced by computeBoundingTree().
Data< std::string > sofa::component::collision::FFDDistanceGridCollisionModel::dumpfilename [protected] |
sofa::helper::vector<DeformedCube> sofa::component::collision::FFDDistanceGridCollisionModel::elems [protected] |
Definition at line 738 of file DistanceGridCollisionModel.h.
Referenced by draw(), getDeformCube(), getGrid(), init(), resize(), setGrid(), and ~FFDDistanceGridCollisionModel().
core::componentmodel::behavior::MechanicalState<Vec3Types>* sofa::component::collision::FFDDistanceGridCollisionModel::ffd [protected] |
Definition at line 749 of file DistanceGridCollisionModel.h.
Referenced by FFDDistanceGridCollisionModel(), getDeformModel(), getMechanicalState(), init(), and updateGrid().
topology::RegularGridTopology* sofa::component::collision::FFDDistanceGridCollisionModel::ffdGrid [protected] |
Definition at line 750 of file DistanceGridCollisionModel.h.
Referenced by FFDDistanceGridCollisionModel(), getDeformGrid(), getMeshTopology(), init(), and updateGrid().
Data< std::string > sofa::component::collision::FFDDistanceGridCollisionModel::filename [protected] |
Data< int > sofa::component::collision::FFDDistanceGridCollisionModel::nx [protected] |
Data< int > sofa::component::collision::FFDDistanceGridCollisionModel::ny [protected] |
Data< int > sofa::component::collision::FFDDistanceGridCollisionModel::nz [protected] |
Data< double > sofa::component::collision::FFDDistanceGridCollisionModel::scale [protected] |
Definition at line 759 of file DistanceGridCollisionModel.h.
1.5.7.1