SEARCH
TOOLBOX
LANGUAGES
TutorialCollisionCubeObstacle

TutorialCollisionCubeObstacle

From SOFAWiki

Jump to: navigation, search
Tutorial : Collision Cube Obstacle

Contents

Example Scene using only Spheres

This example is distributed in
examples/Tutorials/Basic/TutorialCollisionCubeObstacleSphere.scn
within SofaSVN and SOFA distributions starting from 1.0 beta 4.

Graph

XML Description

<?xml version="1.0" ?>
<!-- See http://wiki.sofa-framework.org/mediawiki/index.php/TutorialCollisionCubeObstacle.scn -->
<Node name="root" dt="0.01" gravity="0 -9.81 0" showBehavior="1" showCollision="1">
  <!-- Basic Components to perform the collision detection -->
  <CollisionPipeline/>
  <BruteForceDetection/>
  <DefaultContactManager/>
  <MinProximityIntersection/>
 
  <Node name="Cube">
    <EulerImplicitSolver  name="EulerImplicit" />
    <CGLinearSolver       name="CG Solver" />
 
    <MechanicalObject     name="Particles" template="Vec3d"
                          position="0 0 1  1 0 1  0 1 1  1 1 1  0 0 2  1 0 2  0 1 2  1 1 2" />
    <MeshTopology         name="Topology" hexas="0 4 6 2 1 5 7 3" />
 
    <UniformMass          name="Mass" totalmass="1" />
    <MeshSpringForceField name="Springs" stiffness="100" damping="1" />
 
    <!-- Collision Model -->
    <SphereModel          name="Sphere For Collision"/>
  </Node>
 
  <Node name="Floor">       
    <MeshTopology         name="Topology Floor"  filename="mesh/floor.obj"/>
    <MechanicalObject     name="Particles Floor"/>                
    <Triangle             name="Triangle For Collision Floor" moving="0" simulated="0"/>            
  </Node>              
 
</Node>


Example Scene Using Triangles, Lines and Points

This example is distributed in
examples/Tutorials/Basic/TutorialCollisionCubeObstacle.scn
within SofaSVN and SOFA distributions starting from 1.0 beta 4.

Graph

XML Description

<?xml version="1.0" ?>
<!-- See http://wiki.sofa-framework.org/mediawiki/index.php/TutorialCollisionCubeObstacle.scn -->
<Node name="root" dt="0.01" gravity="0 -9.81 0" showBehavior="1" showCollision="1">
  <!-- Basic Components to perform the collision detection -->
  <CollisionPipeline/>
  <BruteForceDetection/>
  <DefaultContactManager/>
  <MinProximityIntersection/>
 
  <Node name="Cube">
    <EulerImplicitSolver  name="EulerImplicit" />
    <CGLinearSolver       name="CG Solver" />
 
    <MechanicalObject     name="Particles" template="Vec3d"
                          position="0 0 1  1 0 1  0 1 1  1 1 1  0 0 2  1 0 2  0 1 2  1 1 2" />
    <MeshTopology         name="Topology" hexas="0 4 6 2 1 5 7 3" />
 
    <UniformMass          name="Mass" totalmass="1" />
    <MeshSpringForceField name="Springs" stiffness="100" damping="1" />
 
    <!-- Collision Models -->
    <TriangleModel        name="Triangles For Collision"/>
    <LineModel            name="Lines For Collision"/>
    <PointModel           name="Points For Collision"/>
  </Node>
 
  <Node name="Floor">       
    <MeshTopology         name="Topology Floor"  filename="mesh/floor.obj"/>
    <MechanicalObject     name="Floor Particles"/>                
    <Triangle             name="Floor Triangle For Collision" moving="0" simulated="0"/>            
  </Node>              
 
</Node>