From 2a86d67ca9d92a79038b09661ba5adde64c46b88 Mon Sep 17 00:00:00 2001 From: DarioS Date: Wed, 7 Dec 2022 17:37:36 +0100 Subject: [PATCH] Icarus 2.4l3 : - riportate su StartMach e ShellNumber le modifiche di selezione fatte sui Ribs. --- Icarus/My Project/AssemblyInfo.vb | 4 +- Icarus/SceneHost/MySceneHostVM.vb | 52 +++++++------------ Icarus/ShellNumberPanel/ShellNumberPanelVM.vb | 6 ++- Icarus/StartMachPanel/StartMachPanelVM.vb | 3 +- 4 files changed, 27 insertions(+), 38 deletions(-) diff --git a/Icarus/My Project/AssemblyInfo.vb b/Icarus/My Project/AssemblyInfo.vb index 45f523b..aef6a49 100644 --- a/Icarus/My Project/AssemblyInfo.vb +++ b/Icarus/My Project/AssemblyInfo.vb @@ -70,5 +70,5 @@ Imports System.Windows ' by using the '*' as shown below: ' - - + + diff --git a/Icarus/SceneHost/MySceneHostVM.vb b/Icarus/SceneHost/MySceneHostVM.vb index def4860..885f723 100644 --- a/Icarus/SceneHost/MySceneHostVM.vb +++ b/Icarus/SceneHost/MySceneHostVM.vb @@ -1202,20 +1202,6 @@ Public Class MySceneHostVM End While ' Memorizzo Id da selezionare m_nIdToSel = nCurrIdToSel - 'While nId <> GDB_ID.NULL - ' ' Recupero l'identificativo del pezzo cui appartiene - ' Dim nPartId As Integer = EgtGetParent(EgtGetParent(nId)) - ' Dim bFound As Boolean = False - ' If nPartId = Map.refImportPanelVM.nImportedPartId Then bFound = True - ' If Not bFound Then - ' nId = EgtGetNextObjInSelWin() - ' Continue While - ' End If - ' ' Memorizzo Id da selezionare - ' m_nIdToSel = nId - ' Exit While - ' nId = EgtGetNextObjInSelWin() - 'End While ' Dati per drag m_bDragToStart = True End Sub @@ -1265,17 +1251,15 @@ Public Class MySceneHostVM End If Else ' Recupero l'identificativo del pezzo cui appartiene - Dim nPartId As Integer = EgtGetParent(nId) - Dim bFound As Boolean = False - If nPartId = Map.refStartMachPanelVM.nStartMachLayerId Then bFound = True - If bFound Then + Dim nStartMachLayerId As Integer = EgtGetParent(nId) + If nStartMachLayerId = Map.refStartMachPanelVM.nStartMachLayerId Then m_nIdToSel = nId Exit While End If End If nId = EgtGetNextObjInSelWin() End While - If m_nIdToSel <> GDB_ID.NULL Then + If Map.refStartMachPanelVM.bCPlaneObj_IsActive And m_nIdToSel <> GDB_ID.NULL Then ' recupero dati punto di selezione Dim PtTemp As Point3d Dim nAux As Integer @@ -1348,11 +1332,8 @@ Public Class MySceneHostVM Exit While End If Else - ' Recupero l'identificativo del pezzo cui appartiene - Dim nPartId As Integer = EgtGetParent(nId) - Dim bFound As Boolean = False - If nPartId = Map.refRibPanelVM.nRibLayerId Then bFound = True - If bFound Then + Dim nRibLayerId As Integer = EgtGetParent(nId) + If nRibLayerId = Map.refRibPanelVM.nRibLayerId Then m_nIdToSel = nId Exit While End If @@ -1426,17 +1407,22 @@ Public Class MySceneHostVM EgtSelect(e.Location, Scene.DIM_SEL, Scene.DIM_SEL, nSel) Dim nId As Integer = EgtGetFirstObjInSelWin() While nId <> GDB_ID.NULL - ' Recupero l'identificativo del pezzo cui appartiene - Dim nPartId As Integer = EgtGetParent(nId) - Dim bFound As Boolean = False - If nPartId = Map.refShellNumberPanelVM.nShellNumberLayerId Then bFound = True - If bFound Then - m_nIdToSel = nId - Exit While + ' Se per Griglia da faccia di oggetto + If Map.refShellNumberPanelVM.bCPlaneObj_IsActive Then + If EgtGetType( nId) = GDB_TY.SRF_MESH Then + m_nIdToSel = nId + Exit While + End If + Else + Dim nShellNumberLayerId As Integer = EgtGetParent(nId) + If nShellNumberLayerId = Map.refShellNumberPanelVM.nShellNumberLayerId Then + m_nIdToSel = nId + Exit While + End If End If nId = EgtGetNextObjInSelWin() End While - If m_nIdToSel <> GDB_ID.NULL Then + If Map.refShellNumberPanelVM.bCPlaneObj_IsActive And m_nIdToSel <> GDB_ID.NULL Then ' recupero dati punto di selezione Dim PtTemp As Point3d Dim nAux As Integer @@ -1491,7 +1477,7 @@ Public Class MySceneHostVM EgtDraw() End Sub -#End Region ' Rib +#End Region ' ShellNumber #End Region ' VIEW EVENTS diff --git a/Icarus/ShellNumberPanel/ShellNumberPanelVM.vb b/Icarus/ShellNumberPanel/ShellNumberPanelVM.vb index df59d22..7a568f2 100644 --- a/Icarus/ShellNumberPanel/ShellNumberPanelVM.vb +++ b/Icarus/ShellNumberPanel/ShellNumberPanelVM.vb @@ -41,7 +41,7 @@ Public Class ShellNumberPanelVM End Get Set(value As ShellNumberEntity) m_SelShellNumber = value - EgtDeselectLayerObjs(m_nShellNumberLayerId) + EgtDeselectAll() If Not IsNothing(value) Then EgtSelectObj(value.nCurveId) EgtSelectObj(value.nExtrusionId) @@ -554,7 +554,8 @@ Public Class ShellNumberPanelVM EgtDraw() ' rimetto la selezione scena a null Map.refSceneHostVM.MainScene.SetStatusNull() - Case Controller.CMD.GRID_ELEVATION, Controller.CMD.GRID_3P, Controller.CMD.GRID_ORIGIN, Controller.CMD.GRID_PERPCURVE, Controller.CMD.GRID_ROTATE, Controller.CMD.GRID_ROTATE3D, Controller.CMD.GRID_OBJ + Case Controller.CMD.GRID_ELEVATION, Controller.CMD.GRID_3P, Controller.CMD.GRID_ORIGIN, Controller.CMD.GRID_PERPCURVE, + Controller.CMD.GRID_ROTATE, Controller.CMD.GRID_ROTATE3D, Controller.CMD.GRID_OBJ ' rimetto la selezione scena a null Map.refSceneHostVM.MainScene.SetStatusNull() End Select @@ -1195,6 +1196,7 @@ Public Class ShellNumberPanelVM Public Sub CPlaneObj(ByVal param As Object) If Map.refSceneHostVM.MainController.GetStep <> 0 Then Return ' salvo selezione precedente e deseleziono altri oggetti + m_PrevSelObjs.Clear() Dim nSelObjId As Integer = EgtGetFirstSelectedObj() While nSelObjId <> GDB_ID.NULL m_PrevSelObjs.Add(nSelObjId) diff --git a/Icarus/StartMachPanel/StartMachPanelVM.vb b/Icarus/StartMachPanel/StartMachPanelVM.vb index e6be08a..154264c 100644 --- a/Icarus/StartMachPanel/StartMachPanelVM.vb +++ b/Icarus/StartMachPanel/StartMachPanelVM.vb @@ -36,7 +36,7 @@ Public Class StartMachPanelVM End Get Set(value As StartEntity) m_SelStart = value - EgtDeselectLayerObjs(m_nStartMachLayerId) + EgtDeselectAll() If Not IsNothing(value) Then EgtSelectObj(value.nId) ' aggiorno visibilita' bottoni edit @@ -858,6 +858,7 @@ Public Class StartMachPanelVM Public Sub CPlaneObj(ByVal param As Object) If Map.refSceneHostVM.MainController.GetStep <> 0 Then Return ' salvo selezione precedente e deseleziono altri oggetti + m_PrevSelObjs.Clear() Dim nSelObjId As Integer = EgtGetFirstSelectedObj() While nSelObjId <> GDB_ID.NULL m_PrevSelObjs.Add(nSelObjId)