Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
d1b0952
fix warnings
fredroy Mar 31, 2025
e83775b
Merge pull request #174 from fredroy/fix_warnings_2506
hugtalbot Apr 1, 2025
50b5c39
clean methods, types, etc
fredroy Apr 16, 2025
2e7e9ec
same with shape
fredroy Apr 16, 2025
cf46ccd
Merge pull request #175 from fredroy/cleanup_interpol
bakpaul Apr 24, 2025
d019b69
[InterventionalRadiologyController] Remove remnant of the "broken" fe…
fredroy Apr 24, 2025
efacdc8
[Wire Shape] Fix the confusion between the nbEdgesCollision and the n…
fredroy Apr 25, 2025
a3ad75d
[IRC] Add checks/warnings at init stage (#178)
fredroy Apr 25, 2025
ca9d181
wip
fredroy Apr 28, 2025
2555718
fix different xtip
fredroy Apr 28, 2025
978b4bf
fix warnings
fredroy Apr 29, 2025
029a09b
[Scenes] Fix runtime warnings, and consistent behavior between python…
fredroy May 2, 2025
099f0f8
Merge branch 'master' into check_x_tip_rot
fredroy May 2, 2025
c1e1464
Add more regression tests (#180)
fredroy May 2, 2025
de5263e
Merge pull request #181 from fredroy/check_x_tip_rot
bakpaul May 6, 2025
968e244
fix compilation for clang (#183)
fredroy May 6, 2025
1b8dcaf
[Interpolations] Fix init stage (#184)
fredroy May 7, 2025
2897605
[Interpolations] Remove raw ptr for mstate and topology (#185)
fredroy May 14, 2025
b23acc4
Add 'notify dashboard' step to CI
bakpaul May 16, 2025
563532e
Update ci.yml
bakpaul May 16, 2025
3c5b334
Fix typo
bakpaul May 16, 2025
548581e
Merge pull request #191 from bakpaul/25_05_add_dashboard_notify
hugtalbot May 16, 2025
3dfbe3a
Fix introduced typo in ci file
bakpaul May 16, 2025
491e858
Remove quote to send real boolean
bakpaul May 16, 2025
aba5969
Merge pull request #192 from bakpaul/25_05_fix_dashboard
hugtalbot May 16, 2025
f38462b
Cleaning of AdaptiveBeamForceFieldAndMass (#187)
fredroy May 19, 2025
1376054
fix for refactored SofaCUDA, add registrations, consistency
fredroy May 16, 2025
8dd52e1
set cuda setting for the actual cuda project
fredroy May 19, 2025
74a7e78
Merge pull request #190 from fredroy/fix_refresh_cuda
hugtalbot Jun 4, 2025
298c3a5
Fix compilation with gcc
fredroy Jun 23, 2025
e897daa
Merge pull request #196 from fredroy/fix_cuda_gcc_namespace
hugtalbot Jun 23, 2025
659d5f0
Change data name (#195)
bakpaul Jul 3, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
37 changes: 37 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ jobs:
path: ${{ env.WORKSPACE_SRC_PATH }}

- name: Build and install
id: build-install
shell: bash
run: |
if [[ "$RUNNER_OS" == "Windows" ]]; then
Expand Down Expand Up @@ -70,12 +71,14 @@ jobs:
echo "artifact_name=$artifact_name" >> $env:GITHUB_OUTPUT

- name: Create artifact
id: create-artifact
uses: actions/upload-artifact@v4.4.0
with:
name: ${{ steps.sanitize.outputs.artifact_name }}
path: ${{ env.WORKSPACE_INSTALL_PATH }}

- name: Install artifact
id: install-artifact
uses: actions/download-artifact@v4.1.7
with:
name: ${{ steps.sanitize.outputs.artifact_name }}
Expand Down Expand Up @@ -116,7 +119,9 @@ jobs:
# echo '----------------------'
# echo "SOFA_ROOT = $SOFA_ROOT"


- name: Run BeamAdapter_test
id: unit-test
if: always()
shell: bash
run: |
Expand All @@ -125,6 +130,7 @@ jobs:
./bin/BeamAdapter_test${{ steps.sofa.outputs.exe }}

- name: Fetch, install and run Regression_test
id: regression-test
if: always()
shell: bash
run: |
Expand All @@ -139,12 +145,43 @@ jobs:
# Setup mandatory env vars
export REGRESSION_SCENES_DIR="${WORKSPACE_SRC_PATH}/examples"
export REGRESSION_REFERENCES_DIR="${WORKSPACE_SRC_PATH}/regression/references"
export PYTHONPATH=$SOFA_ROOT/plugins/SofaPython3/lib/python3/site-packages
# Run regression test bench
${SOFA_ROOT}/bin/Regression_test${{ steps.sofa.outputs.exe }}
else
echo "Regression tests are not supported on the CI for macOS yet (TODO)"
fi

- name: Notify dashboard
if: always() && startsWith(github.repository, 'sofa-framework') && startsWith(github.ref, 'refs/heads/master') # we are not on a fork and on master
env:
DASH_AUTH: ${{ secrets.PLUGIN_DASH }}
shell: bash
run: |

test_status=$([ '${{ steps.unit-test.outcome }}' == 'success' ] && \
[ '${{ steps.regression-test.outcome }}' == 'success' ] && \
echo 'true' || echo 'false')

build_status=$([ '${{ steps.build-install.outcome }}' == 'success' ] && \
echo 'true' || echo 'false')

binary_status=$([ '${{ steps.sanitize.outcome }}' == 'success' ] && \
[ '${{ steps.create-artifact.outcome }}' == 'success' ] && \
[ '${{ steps.install-artifact.outcome }}' == 'success' ] && \
echo 'true' || echo 'false')


curl -X POST -H "X-API-KEY: $DASH_AUTH" -H "Content-Type: application/json" -d \
"{\"id\":\"$(echo "${{ github.repository }}" | awk -F/ '{ print $2 }')\",\
\"github_ref\":\"${{ github.sha }}\",\
\"url\":\"https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}\",\
\"build\":$build_status,\
\"tests\":$test_status,\
\"binary\":$binary_status}"\
https://sofa-framework.org:5000/api/v1/plugins


deploy:
name: Deploy artifacts
if: always() && startsWith(github.repository, 'sofa-framework') && (startsWith(github.ref, 'refs/heads/') || startsWith(github.ref, 'refs/tags/')) # we are not on a fork and on a branch or a tag (not a PR) needs: [build-and-test]
Expand Down
6 changes: 3 additions & 3 deletions BeamAdapter_test/component/model/WireRestShape_test.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -163,10 +163,10 @@ void WireRestShape_test::testParameterInit()
Real straightLength = 95.0;
EXPECT_EQ(fullLength, 100.0);

int nbrE0 = 50;
int nbrE1 = 10;
sofa::Size nbrE0 = 50;
sofa::Size nbrE1 = 10;
vector<Real> keysPoints, keysPoints_ref = { 0, straightLength, fullLength };
vector<int> nbP_density, nbP_density_ref = { nbrE0, nbrE1 };
vector<sofa::Size> nbP_density, nbP_density_ref = { nbrE0, nbrE1 };

wire->getSamplingParameters(keysPoints, nbP_density);
EXPECT_EQ(keysPoints.size(), 3);
Expand Down
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
cmake_minimum_required(VERSION 3.12)
project(BeamAdapter VERSION 1.0)
project(BeamAdapter VERSION 1.0 LANGUAGES CXX)

include(cmake/environment.cmake)

Expand Down
16 changes: 8 additions & 8 deletions examples/3instruments.scn
Original file line number Diff line number Diff line change
Expand Up @@ -19,11 +19,11 @@
<DefaultVisualManagerLoop/>


<!-- ------------------------- INTERVENTIONAL RADIOLOGY INSTRUMENTS (catheter, guidewire, coil) ------------------------------ -->
<!-- INTERVENTIONAL RADIOLOGY INSTRUMENTS (catheter, guidewire, coil) -->

<Node name='topoLines_cath'>
<RodStraightSection name="StraightSection" youngModulus="10000" massDensity='0.00000155' nbEdgesCollis="40" nbEdgesVisu="120" length="600.0" radius='1'/> <!--stiff silicone E = 10000 MPa // 1550 Kg/m3-->
<RodSpireSection name="SpireSection" youngModulus="10000" massDensity='0.00000155' nbEdgesCollis="20" nbEdgesVisu="80" length="400.0" spireDiameter="4000.0" spireHeight="0.0" radius='1'/>
<RodStraightSection name="StraightSection" youngModulus="10000" massDensity='0.00000155' nbBeams="40" nbEdgesCollis="40" nbEdgesVisu="120" length="600.0" radius='1'/> <!--stiff silicone E = 10000 MPa // 1550 Kg/m3-->
<RodSpireSection name="SpireSection" youngModulus="10000" massDensity='0.00000155' nbBeams="20" nbEdgesCollis="20" nbEdgesVisu="80" length="400.0" spireDiameter="4000.0" spireHeight="0.0" radius='1'/>

<WireRestShape template="Rigid3d" name="catheterRestShape" wireMaterials="@StraightSection @SpireSection"/>

Expand All @@ -33,8 +33,8 @@
<MechanicalObject template='Rigid3d' name='dofTopo1' />
</Node>
<Node name='topoLines_guide'>
<RodStraightSection name="StraightSection" youngModulus="10000" massDensity='0.00000155' nbEdgesCollis="50" nbEdgesVisu="196" length="980.0" radius='0.9'/> <!--stiff silicone E = 10000 MPa // 1550 Kg/m3-->
<RodSpireSection name="SpireSection" youngModulus="10000" massDensity='0.00000155' nbEdgesCollis="10" nbEdgesVisu="4" length="20.0" spireDiameter="25" spireHeight="0.0" radius='0.9'/>
<RodStraightSection name="StraightSection" youngModulus="10000" massDensity='0.00000155' nbBeams="50" nbEdgesCollis="50" nbEdgesVisu="196" length="980.0" radius='0.9'/> <!--stiff silicone E = 10000 MPa // 1550 Kg/m3-->
<RodSpireSection name="SpireSection" youngModulus="10000" massDensity='0.00000155' nbBeams="10" nbEdgesCollis="10" nbEdgesVisu="4" length="20.0" spireDiameter="25" spireHeight="0.0" radius='0.9'/>

<WireRestShape template="Rigid3d" name="GuideRestShape" wireMaterials="@StraightSection @SpireSection"/>

Expand All @@ -44,8 +44,8 @@
<MechanicalObject template='Rigid3d' name='dofTopo2' />
</Node>
<Node name='topoLines_coils'>
<RodStraightSection name="StraightSection" youngModulus="168000" massDensity='0.000021' nbEdgesCollis="30" nbEdgesVisu="360" length="540.0" radius='0.1'/> <!-- platine E = 168000 MPa // 21000 Kg/m3-->
<RodSpireSection name="SpireSection" youngModulus="168000" massDensity='0.000021' nbEdgesCollis="30" nbEdgesVisu="40" length="60.0" spireDiameter="7" spireHeight="5.0" radius='0.1'/>
<RodStraightSection name="StraightSection" youngModulus="168000" massDensity='0.000021' nbBeams="30" nbEdgesCollis="30" nbEdgesVisu="360" length="540.0" radius='0.1'/> <!-- platine E = 168000 MPa // 21000 Kg/m3-->
<RodSpireSection name="SpireSection" youngModulus="168000" massDensity='0.000021' nbBeams="30" nbEdgesCollis="30" nbEdgesVisu="40" length="60.0" spireDiameter="7" spireHeight="5.0" radius='0.1'/>

<WireRestShape template="Rigid3d" name="CoilRestShape" wireMaterials="@StraightSection @SpireSection"/>

Expand All @@ -60,7 +60,7 @@
<EulerImplicitSolver rayleighStiffness='0.2' rayleighMass='0.1' printLog='false' />
<BTDLinearSolver subpartSolve='0' verification='0' verbose='0'/>
<RegularGridTopology name='meshLinesCombined'
nx='180' ny='1' nz='1'
nx='181' ny='1' nz='1'
xmin='0.0' xmax='1.0'
ymin='0' ymax='0'
zmin='1' zmax='1'
Expand Down
43 changes: 25 additions & 18 deletions examples/3instruments_collis.scn
Original file line number Diff line number Diff line change
Expand Up @@ -35,11 +35,11 @@
<LocalMinDistance name="localmindistance" alarmDistance="2" contactDistance="1" angleCone="0.5" coneFactor="0.5" />
<CollisionResponse name="Response" response="FrictionContactConstraint" />

<!-- ------------------------- INTERVENTIONAL RADIOLOGY INSTRUMENTS (catheter, guidewire, coil) ------------------------------ -->
<!-- INTERVENTIONAL RADIOLOGY INSTRUMENTS (catheter, guidewire, coil) -->

<Node name="topoLines_cath">
<RodStraightSection name="StraightSection" youngModulus="10000" massDensity="0.00000155" radius="1" nbEdgesCollis="40" nbEdgesVisu="220" length="600.0"/><!--stiff silicone E = 10000 MPa // 1550 Kg/m3-->
<RodSpireSection name="SpireSection" youngModulus="10000" massDensity="0.00000155" radius="1" nbEdgesCollis="10" nbEdgesVisu="80" length="400.0" spireDiameter="4000.0" spireHeight="0.0"/>
<RodStraightSection name="StraightSection" youngModulus="10000" massDensity="0.00000155" radius="1" nbBeams="40" nbEdgesCollis="40" nbEdgesVisu="220" length="600.0"/><!--stiff silicone E = 10000 MPa // 1550 Kg/m3-->
<RodSpireSection name="SpireSection" youngModulus="10000" massDensity="0.00000155" radius="1" nbBeams="10" nbEdgesCollis="10" nbEdgesVisu="80" length="400.0" spireDiameter="4000.0" spireHeight="0.0"/>

<WireRestShape template="Rigid3d" name="catheterRestShape" wireMaterials="@StraightSection @SpireSection"/> <!-- silicone -->

Expand All @@ -49,8 +49,8 @@
<MechanicalObject template="Rigid3d" name="dofTopo1" />
</Node>
<Node name="topoLines_guide">
<RodStraightSection name="StraightSection" youngModulus="10000" massDensity="0.00000155" radius="0.9" nbEdgesCollis="50" nbEdgesVisu="196" length="980.0"/> <!--stiff silicone E = 10000 MPa // 1550 Kg/m3-->
<RodSpireSection name="SpireSection" youngModulus="10000" massDensity="0.00000155" radius="0.9" nbEdgesCollis="10" nbEdgesVisu="4" length="20.0" spireDiameter="25" spireHeight="0.0"/>
<RodStraightSection name="StraightSection" youngModulus="10000" massDensity="0.00000155" radius="0.9" nbBeams="50" nbEdgesCollis="50" nbEdgesVisu="196" length="980.0"/> <!--stiff silicone E = 10000 MPa // 1550 Kg/m3-->
<RodSpireSection name="SpireSection" youngModulus="10000" massDensity="0.00000155" radius="0.9" nbBeams="10" nbEdgesCollis="10" nbEdgesVisu="4" length="20.0" spireDiameter="25" spireHeight="0.0"/>

<WireRestShape template="Rigid3d" name="GuideRestShape" wireMaterials="@StraightSection @SpireSection"/>

Expand All @@ -60,8 +60,8 @@
<MechanicalObject template="Rigid3d" name="dofTopo2" />
</Node>
<Node name="topoLines_coils">
<RodStraightSection name="StraightSection" youngModulus="168000" massDensity="0.000021" radius="0.1" nbEdgesCollis="30" nbEdgesVisu="360" length="540.0"/> <!-- platine E = 168000 MPa // 21000 Kg/m3-->
<RodSpireSection name="SpireSection" youngModulus="168000" massDensity="0.000021" radius="0.1" nbEdgesCollis="30" nbEdgesVisu="40" length="60.0" spireDiameter="7" spireHeight="5.0"/>
<RodStraightSection name="StraightSection" youngModulus="168000" massDensity="0.000021" radius="0.1" nbBeams="30" nbEdgesCollis="30" nbEdgesVisu="360" length="540.0"/> <!-- platine E = 168000 MPa // 21000 Kg/m3-->
<RodSpireSection name="SpireSection" youngModulus="168000" massDensity="0.000021" radius="0.1" nbBeams="30" nbEdgesCollis="30" nbEdgesVisu="40" length="60.0" spireDiameter="7" spireHeight="5.0"/>

<WireRestShape template="Rigid3d" name="CoilRestShape" wireMaterials="@StraightSection @SpireSection"/>

Expand All @@ -76,7 +76,7 @@
<EulerImplicitSolver rayleighStiffness="0.2" rayleighMass="0.1" printLog="false" />
<BTDLinearSolver subpartSolve="0" verification="0" verbose="0"/>
<RegularGridTopology name="meshLinesCombined"
nx="180" ny="1" nz="1"
nx="181" ny="1" nz="1"
xmin="0.0" xmax="1.0"
ymin="0" ymax="0"
zmin="1" zmax="1"
Expand Down Expand Up @@ -109,8 +109,8 @@
<EdgeSetTopologyModifier name="colliseEdgeModifier" />
<MechanicalObject name="CollisionDOFs"/>
<MultiAdaptiveBeamMapping name="collisMap" controller="../IRController" useCurvAbs="1" printLog="0"/>
<LineCollisionModel proximity="0.0" group="1"/>
<PointCollisionModel proximity="0.0" group="1"/>
<LineCollisionModel contactDistance="0.0" group="1"/>
<PointCollisionModel contactDistance="0.0" group="1"/>
</Node>

<Node name="VisuCatheter" activated="true">
Expand Down Expand Up @@ -142,14 +142,21 @@
</Node>
</Node>

<Node name="CollisionModel">
<MeshOBJLoader name="meshLoader" filename="mesh/phantom.obj" triangulate="true" flipNormals="1"/>
<MeshTopology position="@meshLoader.position" triangles="@meshLoader.triangles"/>
<MechanicalObject name="DOFs1" position="0 0 400" scale="3" ry="90"/>
<TriangleCollisionModel simulated="0" moving="0"/>
<LineCollisionModel simulated="0" moving="0"/>
<PointCollisionModel simulated="0" moving="0"/>
<OglModel name="Visual" src="@meshLoader" color="1 0 0 0.3" scale="3" ry="90"/>
<Node name="VesselsPhantom">
<MeshOBJLoader name="meshLoader" filename="mesh/phantom.obj" triangulate="true" flipNormals="1" scale="3" rotation="0 90 0"/>

<Node name="Collision">
<MeshTopology position="@../meshLoader.position" triangles="@meshLoader.triangles"/>
<MechanicalObject name="DOFs1"/>
<TriangleCollisionModel simulated="0" moving="0"/>
<LineCollisionModel simulated="0" moving="0"/>
<PointCollisionModel simulated="0" moving="0"/>
</Node>

<Node name="Visual">
<OglModel name="Visual" src="@../meshLoader" color="1 0 0 0.3" />
</Node>

</Node>

</Node>
8 changes: 5 additions & 3 deletions examples/RegressionStateScenes.regression-tests
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@

### Demo scenes ###
SingleBeam.scn 1000 1e-4 1 1
SingleBeamDeployment.scn 1000 1e-4 1 1
SingleBeamDeploymentCollision.scn 1000 1e-4 1 1
3instruments_collis.scn 2000 1e-4 1 1
SingleBeamDeployment.scn 10000 1e-4 1 1
SingleBeamDeploymentCollision.scn 7000 1e-4 1 1
3instruments.scn 2000 1e-4 1 1
3instruments_collis.scn 3000 1e-4 1 1
Tool_from_loader.scn 1000 1e-4 1 1
10 changes: 5 additions & 5 deletions examples/SingleBeamDeployment.scn
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,8 @@
<DefaultVisualManagerLoop />

<Node name="EdgeTopology">
<RodStraightSection name="StraightSection" youngModulus="20000" radius="0.9" massDensity="0.00000155" nbEdgesCollis="30" nbEdgesVisu="196" length="980.0"/>
<RodSpireSection name="SpireSection" youngModulus="20000" radius="0.9" massDensity="0.00000155" nbEdgesCollis="5" nbEdgesVisu="4" length="20.0" spireDiameter="25" spireHeight="0.0"/>
<RodStraightSection name="StraightSection" youngModulus="20000" radius="0.9" massDensity="0.00000155" nbBeams="30" nbEdgesCollis="30" nbEdgesVisu="196" length="980.0"/>
<RodSpireSection name="SpireSection" youngModulus="20000" radius="0.9" massDensity="0.00000155" nbBeams="5" nbEdgesCollis="5" nbEdgesVisu="4" length="20.0" spireDiameter="25" spireHeight="0.0"/>

<WireRestShape template="Rigid3d" name="BeamRestShape" printLog="1" wireMaterials="@StraightSection @SpireSection"/>
<EdgeSetTopologyContainer name="meshLinesBeam"/>
Expand All @@ -28,16 +28,16 @@
<Node name="BeamModel">
<EulerImplicitSolver rayleighStiffness="0.2" rayleighMass="0.1" printLog="false" />
<BTDLinearSolver verbose="0"/>
<RegularGridTopology name="MeshLines" nx="60" ny="1" nz="1"
<RegularGridTopology name="MeshLines" nx="36" ny="1" nz="1"
xmax="0.0" xmin="0.0" ymin="0" ymax="0" zmax="0" zmin="0"
p0="0 0 0" drawEdges="1"/>
<MechanicalObject template="Rigid3d" name="DOFs Container" ry="-90" />

<WireBeamInterpolation name="BeamInterpolation" WireRestShape="@../EdgeTopology/BeamRestShape" />
<AdaptiveBeamForceFieldAndMass name="BeamForceField" interpolation="@BeamInterpolation"/>
<InterventionalRadiologyController name="DeployController" template="Rigid3d" instruments="BeamInterpolation"
startingPos="0 0 0 0 0 0 1" xtip="0 0 0" printLog="1"
rotationInstrument="0 0 0" step="0.5" speed="0.5"
topology="@MeshLines" startingPos="0 0 0 0 0 0 1" xtip="0" printLog="1"
rotationInstrument="0" step="0.5" speed="0.5"
listening="1" controlledInstrument="0"/>
<FixedProjectiveConstraint name="FixedConstraint" indices="0" />
<RestShapeSpringsForceField name="RestSPForceField" points="@DeployController.indexFirstNode" angularStiffness="1e8" stiffness="1e8"/>
Expand Down
14 changes: 7 additions & 7 deletions examples/SingleBeamDeploymentCollision.scn
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,8 @@


<Node name="EdgeTopology">
<RodStraightSection name="StraightSection" youngModulus="20000" radius="0.9" massDensity="0.00000155" poissonRatio="0.3" nbEdgesCollis="50" nbEdgesVisu="200" length="980.0"/>
<RodSpireSection name="SpireSection" youngModulus="20000" radius="0.9" massDensity="0.00000155" poissonRatio="0.3" nbEdgesCollis="10" nbEdgesVisu="200" length="20.0" spireDiameter="25" spireHeight="0.0"/>
<RodStraightSection name="StraightSection" youngModulus="20000" radius="0.9" massDensity="0.00000155" poissonRatio="0.3" nbBeams="50" nbEdgesCollis="50" nbEdgesVisu="200" length="980.0"/>
<RodSpireSection name="SpireSection" youngModulus="20000" radius="0.9" massDensity="0.00000155" poissonRatio="0.3" nbBeams="10" nbEdgesCollis="10" nbEdgesVisu="200" length="20.0" spireDiameter="25" spireHeight="0.0"/>

<WireRestShape template="Rigid3d" name="BeamRestShape" wireMaterials="@StraightSection @SpireSection"/>

Expand All @@ -46,16 +46,16 @@
<Node name="BeamModel">
<EulerImplicitSolver rayleighStiffness="0.2" rayleighMass="0.1" printLog="false" />
<BTDLinearSolver verbose="0"/>
<RegularGridTopology name="MeshLines" nx="60" ny="1" nz="1"
<RegularGridTopology name="MeshLines" nx="61" ny="1" nz="1"
xmax="0.0" xmin="0.0" ymin="0" ymax="0" zmax="0" zmin="0"
p0="0 0 0" drawEdges="1"/>
<MechanicalObject template="Rigid3d" name="DOFs Container" ry="-90" />

<WireBeamInterpolation name="BeamInterpolation" WireRestShape="@../EdgeTopology/BeamRestShape"/>
<AdaptiveBeamForceFieldAndMass name="BeamForceField" interpolation="@BeamInterpolation"/>
<InterventionalRadiologyController name="DeployController" template="Rigid3d" instruments="BeamInterpolation"
startingPos="0 0 0 0 0 0 1" xtip="0 0 0" printLog="1"
rotationInstrument="0 0 0" step="5" speed="5"
topology="@MeshLines" startingPos="0 0 0 0 0 0 1" xtip="0" printLog="1"
rotationInstrument="0" step="5" speed="5"
listening="1" controlledInstrument="0"/>
<LinearSolverConstraintCorrection wire_optimization="true" printLog="0" />
<FixedProjectiveConstraint name="FixedConstraint" indices="0" />
Expand All @@ -66,8 +66,8 @@
<EdgeSetTopologyModifier name="colliseEdgeModifier" />
<MechanicalObject name="CollisionDOFs" />
<MultiAdaptiveBeamMapping controller="../DeployController" useCurvAbs="1" printLog="0" name="collisMap" />
<LineCollisionModel proximity="0.0" />
<PointCollisionModel proximity="0.0" />
<LineCollisionModel contactDistance="0.0" />
<PointCollisionModel contactDistance="0.0" />
</Node>
</Node>

Expand Down
Loading
Loading