Skip to content

Commit 4fa8496

Browse files
committed
Fix footer
1 parent f09df01 commit 4fa8496

1 file changed

Lines changed: 41 additions & 37 deletions

File tree

stlib/node_modifiers/footers.py

Lines changed: 41 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,11 @@
77
from Sofa.Core import Node
88
from typing import override
99

10-
import splib
11-
10+
from splib.simulation.ode_solvers import addImplicitODE
11+
from splib.simulation.linear_solvers import addLinearSolver
12+
from splib.simulation.headers import setupLagrangianCollision
13+
from splib.simulation.headers import setupPenalityCollisionHeader
14+
from splib.simulation.headers import setupDefaultHeader
1215

1316
@dataclasses.dataclass
1417
class SimulationSolversParameters(BaseNodeModifierParameters):
@@ -24,15 +27,16 @@ class SimulationSolversParameters(BaseNodeModifierParameters):
2427
@override
2528
@AffectedNodes(1)
2629
def modify(self, owner, node : list[Node]) -> list[Node]:
27-
splib.simulation.ode_solvers.addImplicitODE(node[0], static=self.staticODE, **self.kwargs)
28-
splib.simulation.linear_solvers.addLinearSolver(node[0], iterative=self.iterative,
29-
iterations=self.iterations,
30-
tolerance=self.tolerance,
31-
threshold=self.threshold,
32-
template=self.template,
33-
constantSparsity=self.constantSparsity,
34-
parallelInverseProduct= self.parallelInverseProduct,
35-
**self.kwargs)
30+
addImplicitODE(node[0], static=self.staticODE, **self.kwargs)
31+
addLinearSolver(node[0],
32+
iterative=self.iterative,
33+
iterations=self.iterations,
34+
tolerance=self.tolerance,
35+
threshold=self.threshold,
36+
template=self.template,
37+
constantSparsity=self.constantSparsity,
38+
parallelInverseProduct= self.parallelInverseProduct,
39+
**self.kwargs)
3640
return [owner]
3741

3842

@@ -41,7 +45,7 @@ def modify(self, owner, node : list[Node]) -> list[Node]:
4145
class SimulationSettingsParameters(BaseNodeModifierParameters):
4246
enableCollisionDetection : bool = False
4347
useLagrangian : bool = False
44-
displayFlags : list[str] = dataclasses.field(default_factory=lambda: ["showVisualModels"])
48+
displayFlags : list[str] = dataclasses.field(default_factory=lambda: ["showBehavior"])
4549
backgroundColor : list[float] = dataclasses.field(default_factory=lambda: [0.8,0.8,0.8,1])
4650

4751
#Collision detection specific
@@ -85,18 +89,18 @@ def _addConstraintCorrectionToMechanicalNodes(node, constraintCorrectionType : s
8589
@AffectedNodes(1)
8690
def modify(self, owner, node : list[Node]) -> list[Node]:
8791
if(self.useLagrangian):
88-
splib.simulation.headers.setupLagrangianCollision(node[0],
89-
enableCollision=self.enableCollisionDetection,
90-
displayFlags = self.displayFlags,
91-
backgroundColor = self.backgroundColor,
92-
parallelComputing = self.parallelComputing,
93-
alarmDistance=self.alarmDistance,
94-
contactDistance=self.contactDistance,
95-
frictionCoef=self.frictionCoef,
96-
tolerance=self.tolerance,
97-
maxIterations=self.maxIterations,
98-
stick = self.stick,
99-
**self.kwargs)
92+
setupLagrangianCollision(node[0],
93+
enableCollision=self.enableCollisionDetection,
94+
displayFlags = self.displayFlags,
95+
backgroundColor = self.backgroundColor,
96+
parallelComputing = self.parallelComputing,
97+
alarmDistance=self.alarmDistance,
98+
contactDistance=self.contactDistance,
99+
frictionCoef=self.frictionCoef,
100+
tolerance=self.tolerance,
101+
maxIterations=self.maxIterations,
102+
stick = self.stick,
103+
**self.kwargs)
100104

101105

102106
nodeLinearSolver = node[0].getLinearSolver(0)
@@ -109,20 +113,20 @@ def modify(self, owner, node : list[Node]) -> list[Node]:
109113
return [owner] + touchedNodes
110114

111115
elif self.enableCollisionDetection:
112-
splib.simulation.headers.setupPenalityCollisionHeader(node[0],
113-
displayFlags = self.displayFlags,
114-
backgroundColor = self.backgroundColor,
115-
parallelComputing = self.parallelComputing,
116-
alarmDistance=self.alarmDistance,
117-
contactDistance=self.contactDistance,
118-
stick = self.stick,
119-
**self.kwargs)
116+
setupPenalityCollisionHeader(node[0],
117+
displayFlags = self.displayFlags,
118+
backgroundColor = self.backgroundColor,
119+
parallelComputing = self.parallelComputing,
120+
alarmDistance=self.alarmDistance,
121+
contactDistance=self.contactDistance,
122+
stick = self.stick,
123+
**self.kwargs)
120124
return [owner]
121125

122126
else:
123-
splib.simulation.headers.setupDefaultHeader(node[0],
124-
displayFlags = self.displayFlags,
125-
backgroundColor = self.backgroundColor,
126-
parallelComputing = self.parallelComputing,
127-
**self.kwargs)
127+
setupDefaultHeader(node[0],
128+
displayFlags = self.displayFlags,
129+
backgroundColor = self.backgroundColor,
130+
parallelComputing = self.parallelComputing,
131+
**self.kwargs)
128132
return [owner]

0 commit comments

Comments
 (0)