/usr/share/sofa/examples/Tutorials/Dentistry_Haptics/dentalSurgery_04.scn is in sofa-data 1.0~beta4-11.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 | <!--
+ Added a collision pipeline using hierarchical bounding boxes and a proximity detection algorithm
+ Added collision model (Triangle, Line, Point) for the tooth
+ Added collision model (Line, Point) for the instrument
++ NOTE: The collision model mesh is charged using the objects MeshLoader and Mesh
+ Added a mapping (RigidMapping) to "connect" the Mechanical Model and the Collision Model
-->
<Node name="root" dt="0.01" showBehaviorModels="0" showCollisionModels="0" showMappings="0" showForceFields="0" >
<Object type="Gravity" name="G" gravity="0.0 -9.81 0" />
<Object type="CollisionPipeline" name="pipeline" depth="6" verbose="0"/>
<Object type="BruteForceDetection" name="detection" />
<Object type="CollisionResponse" name="response" response="default" />
<Object type="MinProximityIntersection" name="proximity" alarmDistance="0.05" contactDistance="0.05" />
<Node name="Tooth" >
<Node name="VisualModel" >
<Object type="OglModel" name="ToothVisualModel" fileMesh="data/mesh/tooth_closed.obj" color="white" />
</Node>
<Node name="CollisionModel" >
<Object type="MeshLoader" filename="data/mesh/tooth_closed.obj" />
<Object type="Mesh" name="ToothCollisionModel" />
<Object type="MechanicalObject" name="toothState" />
<Object type="Triangle" name="tooth" contactStiffness="5" simulated="0" moving="0"/>
<Object type="Line" name="tooth" contactStiffness="5" simulated="0" moving="0"/>
<Object type="Point" name="tooth" contactStiffness="5" simulated="0" moving="0"/>
</Node>
</Node>
<Node name="Instrument" >
<Object type="EulerImplicitSolver" name="ODE solver" rayleighStiffness="0.01" rayleighMass="1.0" />
<Object type="CGLinearSolver" name="linear solver" iterations="25" tolerance="1e-10" threshold="10e-10" />
<Object type="MechanicalObject" name="instrumentState" template="Rigid" />
<Object type="UniformMass" name="mass" totalmass="0.05" filename="BehaviorModels/dental_instrument.rigid" />
<Node name="VisualModel" >
<Object type="OglModel" name="InstrumentVisualModel" fileMesh="data/mesh/dental_instrument.obj" color="1.0 0.2 0.2 1.0" />
<Object type="RigidMapping" name="MM->VM mapping" object1="instrumentState" object2="InstrumentVisualModel" />
</Node>
<Node name="CollisionModel" >
<Object type="MeshLoader" filename="data/mesh/dental_instrument_centerline.obj" />
<Object type="Mesh" name="InstrumentCollisionModel" />
<Object type="MechanicalObject" name="instrumentCollisionState" />
<Object type="Line" name="instrument" contactStiffness="5" />
<Object type="Point" name="instrument" contactStiffness="5" />
<Object type="RigidMapping" name="MM->CM mapping" object1="instrumentState" object2="instrumentCollisionState" />
</Node>
</Node>
</Node>
|