Geometry: Update RK refactoring and fix modified flag.

scenarios
Pierre-Antoine 2026-06-02 16:46:30 +02:00
parent d1c34fb437
commit 7b88d955e5
3 changed files with 18 additions and 8 deletions

View File

@ -365,3 +365,9 @@ class Friction(SQLSubModel):
# self.end_strickler.medium])
return minor, medium
def update_rks(self, begin_rk, end_rk):
self._begin_rk = begin_rk
self._end_rk = end_rk
self.modified()

View File

@ -967,3 +967,9 @@ class Reach(SQLSubModel):
break
return global_index
def update_rks(self, rks):
for rk, profile in zip(rks, self.profiles):
profile.rk = rk
self.modified()

View File

@ -247,14 +247,13 @@ class UpdateRKCommand(QUndoCommand):
self._new_end_rk = None
def undo(self):
for rk, profile in zip(self._rks, self._reach.profiles):
profile.rk = rk
self._reach.update_rks(self._rks)
for begin_rk, end_rk, friction in zip(self._begin_rk,
self._end_rk,
self._frictions):
friction.begin_rk = begin_rk
friction.end_rk = end_rk
friction.update_rks(begin_rk, end_rk)
def redo(self):
if self._new_rks is None:
@ -264,13 +263,12 @@ class UpdateRKCommand(QUndoCommand):
**self._data
)
for rk, profile in zip(self._new_rks, self._reach.profiles):
profile.rk = rk
self._reach.update_rks(self._new_rks)
for begin_rk, end_rk, friction in zip(self._new_begin_rk,
self._new_end_rk,
self._frictions):
friction.begin_rk = begin_rk
friction.end_rk = end_rk
friction.update_rks(begin_rk, end_rk)
class MeshingCommand(QUndoCommand):