EgtCAM5 1.6v7 :
- aggiornamento lista lavorazioni alla chiusura finestra DB lavorazioni - corretta visualizzazione utensile di lavorazione in finestra DB lavorazioni - aggiunta icona per Region - disabilitato doppio click su barra di scorrimento verticale di lista lavorazioni - gestione visualizzazione più fasi di lavorazione - corretta gestione geometria modificata per lavorazione - corretta gestione overlap in operazione fresatura.
This commit is contained in:
+22
-17
@@ -198,12 +198,15 @@ Namespace EgtCAM5
|
||||
EgtResetMark(m_LastMarkedOperationId)
|
||||
' Ne deseleziono la geometria
|
||||
EgtDeselectAll()
|
||||
EgtDraw()
|
||||
End If
|
||||
' Imposto la fase di lavorazione corrente
|
||||
Dim nPhase As Integer = EgtGetOperationPhase(value.Id)
|
||||
If nPhase <> 0 Then
|
||||
EgtSetCurrPhase(nPhase)
|
||||
End If
|
||||
' Verifico se l'operazione è una disposizione
|
||||
If EgtGetOperationType(value.Id) = MCH_OY.DISP Then
|
||||
|
||||
' L'operazione è una lavorazione
|
||||
' L'operazione è una lavorazione
|
||||
Else
|
||||
' Imposto come corrente la lavorazione(operazione) selezionata
|
||||
EgtSetCurrMachining(value.Id)
|
||||
@@ -219,12 +222,13 @@ Namespace EgtCAM5
|
||||
End If
|
||||
CountIndex += 1
|
||||
End While
|
||||
EgtDraw()
|
||||
' La salvo come ultima operazione selezionata
|
||||
m_LastMarkedOperationId = value.Id
|
||||
' Notifico l'operazione selezionata all'expander dei parametri operazione
|
||||
Application.Msn.NotifyColleagues(Application.SELECTEDOPERATION, value)
|
||||
End If
|
||||
' Aggiorno visualizzazione
|
||||
EgtDraw()
|
||||
End If
|
||||
m_SelectedOperation = value
|
||||
End If
|
||||
@@ -691,6 +695,8 @@ Namespace EgtCAM5
|
||||
ListIsExpanded = True
|
||||
Else
|
||||
If Not IsNothing(SelectedOperation) Then
|
||||
' Salvo indice operazione selezionata
|
||||
Dim nPrevOperId As Integer = EgtGetPrevOperation(SelectedOperation.Id)
|
||||
' Smarco e deseleziono la geometria selezionata
|
||||
EgtResetMark(m_LastMarkedOperationId)
|
||||
EgtDeselectAll()
|
||||
@@ -698,7 +704,7 @@ Namespace EgtCAM5
|
||||
' Rimuovo l'operazione selezionata
|
||||
EgtRemoveOperation(SelectedOperation.Id)
|
||||
' Ricarico la lista delle operazioni
|
||||
Application.Msn.NotifyColleagues(Application.LOADOPERATIONLIST, -1)
|
||||
Application.Msn.NotifyColleagues(Application.LOADOPERATIONLIST, nPrevOperId)
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
@@ -871,7 +877,7 @@ Namespace EgtCAM5
|
||||
#Region "ReloadMachiningCommand"
|
||||
|
||||
''' <summary>
|
||||
''' Returns a command that do Point.
|
||||
''' Restituisce funzione per ricalcolo lavorazione.
|
||||
''' </summary>
|
||||
Public ReadOnly Property ReloadMachiningCommand As ICommand
|
||||
Get
|
||||
@@ -883,14 +889,11 @@ Namespace EgtCAM5
|
||||
End Property
|
||||
|
||||
''' <summary>
|
||||
''' Execute the Point. This method is invoked by the PointCommand.
|
||||
''' Ricalcola una lavorazione.
|
||||
''' </summary>
|
||||
Public Sub ReloadMachining(ByVal param As Object)
|
||||
' Aggiorno valore depth
|
||||
SelectedOperation.NotifyPropertyChanged("Depth")
|
||||
' Verifico se la geometria è cambiata
|
||||
' Parametro che indica se ci sono state modifiche
|
||||
Dim ModifiedGeometry As Boolean = False
|
||||
' Carico tutta la geometria selezionata in una lista
|
||||
Dim SelectedGeometry As New List(Of Integer)
|
||||
Dim EntityIndex As Integer = EgtGetFirstSelectedObj()
|
||||
@@ -898,16 +901,20 @@ Namespace EgtCAM5
|
||||
SelectedGeometry.Add(EntityIndex)
|
||||
EntityIndex = EgtGetNextSelectedObj()
|
||||
End While
|
||||
' Carico un elemento della geometria di lavorazione
|
||||
Dim CountIndex = 0
|
||||
' Verifico se la geometria è cambiata, confrontando selezione attuale con geometria di lavorazione
|
||||
Dim ModifiedGeometry As Boolean = False
|
||||
Dim CountIndex As Integer = 0
|
||||
EntityIndex = 0
|
||||
Dim SubEntityIndex As Integer = 0 ' Nell'interfaccia non si usa ma devo comunque definirla perchè la funzione la restituisce obbligatoriamente
|
||||
Dim SubEntityIndex As Integer = 0 ' Sottocomponente, per ora non usato ma necessario
|
||||
While EgtGetMachiningGeometry(CountIndex, EntityIndex, SubEntityIndex)
|
||||
If SubEntityIndex = GDB_ID.NULL Then
|
||||
If SelectedGeometry.IndexOf(EntityIndex) < 0 Then
|
||||
If SubEntityIndex = GDB_ID.NULL And CountIndex < SelectedGeometry.Count() Then
|
||||
If SelectedGeometry(CountIndex) <> EntityIndex Then
|
||||
ModifiedGeometry = True
|
||||
Exit While
|
||||
End If
|
||||
Else
|
||||
ModifiedGeometry = True
|
||||
Exit While
|
||||
End If
|
||||
CountIndex += 1
|
||||
End While
|
||||
@@ -916,8 +923,6 @@ Namespace EgtCAM5
|
||||
End If
|
||||
' Imposto geometria selezionata come geometria di lavorazione
|
||||
If ModifiedGeometry Then EgtSetMachiningGeometry(SelectedGeometry.ToArray)
|
||||
' Verifico se i parametri sono cambiati
|
||||
|
||||
' Se necessario ricalcolo la lavorazione
|
||||
EgtApplyMachining(ModifiedGeometry)
|
||||
EgtDraw()
|
||||
|
||||
Reference in New Issue
Block a user