Compare commits

...

24 Commits

Author SHA1 Message Date
NicolaP 28deac8501 Merge branch 'Features/Refactory_WaterJet_Lib' into develop 2022-07-05 17:14:14 +02:00
NicolaP 367a8c9fc3 Nuova gestione libreria EgtWPFLib5 2022-07-05 17:13:42 +02:00
NicolaP 94102172dd Merge branch 'Features/Manage_Filo_Top_Corner' into develop 2022-07-04 10:43:47 +02:00
NicolaP 82426db72a Correzione scrittura codice 2022-06-30 18:59:59 +02:00
NicolaP 20fd722dee Migliorata gestione filotop associata 2022-06-30 15:14:30 +02:00
NicolaP a45613ff39 Correzione spianatura con fresa 2022-06-29 15:36:52 +02:00
NicolaP 84690ddf32 Inizio gestione arrotondamento FiloTop 2022-06-29 15:08:28 +02:00
NicolaP 844cb3cfe6 Aggiunto commanto per uso Fresa nella lavorazione SPIANATURA 2022-06-28 19:15:59 +02:00
NicolaP ee84a57194 Merge branch 'master' into develop 2022-06-27 12:20:13 +02:00
NicolaP efa1cb1272 Cambio versione 2.4f1 2022-06-27 12:19:34 +02:00
NicolaP 1437d20353 Correzione inserimento in parcheggio pezzo rovinato (ProdLine) 2022-06-27 12:13:33 +02:00
NicolaP 3d4a921719 Correzione stampa numero settimana 2022-06-23 19:07:11 +02:00
NicolaP e26d68b0f3 Merge branch 'master' into develop 2022-06-23 12:37:23 +02:00
NicolaP 7815b7ec89 Cambio versione 2.4e5 2022-06-23 12:29:11 +02:00
NicolaP 66051943c7 Correzione deselezione lato TestTaglio 2022-06-23 12:25:43 +02:00
NicolaP 2e9071569a Merge branch 'master' into develop 2022-06-23 11:31:51 +02:00
NicolaP 813d224f50 Correzioen messaggi 2022-06-23 11:31:08 +02:00
NicolaP 5f03a36df2 Merge branch 'Features/Manage_Engrave' into develop 2022-06-20 17:21:40 +02:00
NicolaP ac9c347bc0 Merge branch 'Features/SHOTT_Over_Table' into develop 2022-06-20 17:21:29 +02:00
NicolaP 9784c75766 Merge branch 'Features/Manage_REDO' into develop 2022-06-20 17:21:10 +02:00
NicolaP 8af69e553d Eliminato file temporaneo di salvataggio per test 2022-06-13 12:50:40 +02:00
NicolaP 3128f89f63 Gestione affondamento incisioni successive alla prima 2022-06-09 18:24:27 +02:00
NicolaP 4aaf1d084e Merge branch 'develop' into Features/Manage_REDO 2022-06-01 10:19:56 +02:00
NicolaP 0107fc022b Miglioramento comando Modifica in pagina Split 2022-04-21 11:50:57 +02:00
19 changed files with 422 additions and 70 deletions
+29
View File
@@ -1467,8 +1467,37 @@ Public Class SplitPageUC
' assegno numerazione ' assegno numerazione
NumberDirectionMachining(nI) NumberDirectionMachining(nI)
Next Next
' -------------------- Recupero le lavorazioni indicate come attive --------------------
Dim ActiveMachLst As New List(Of Integer)
For Each ItemSplitMach As NameIdLsBxItem In m_ItemList
ActiveMachLst.Add(ItemSplitMach.Ind)
Next
' -------------------- Recupero le lavorazioni indicate come attive --------------------
' Preparo la lista degli Item ' Preparo la lista degli Item
ShowMachiningList() ShowMachiningList()
' -------------------- Riattivo le lavorazioni precedenti --------------------
For Each Item As SplitMach In m_MachiningList
EgtSetInfo(Item.m_nId, INFO_MCH_USER_OFF, True)
Next
For nIndex As Integer = 0 To ActiveMachLst.Count - 1
For Each ItemSplitMach As NameIdLsBxItem In m_ItemList
If ItemSplitMach.Ind = ActiveMachLst(nIndex) Then
EgtRemoveInfo(m_MachiningList(ItemSplitMach.Ind).m_nId, INFO_MCH_USER_OFF)
m_MachiningList(ItemSplitMach.Ind).m_bEnabled = True
ItemSplitMach.bIsActive = True
' sistemo colore
ColorMachining(m_MachiningList(ItemSplitMach.Ind))
Exit For
End If
Next
Next
' -------------------- Riattivo le lavorazioni precedenti --------------------
' Aggiorno visualizzazione ' Aggiorno visualizzazione
EgtDraw() EgtDraw()
' Aggiono abilitazione bottoni ' Aggiono abilitazione bottoni
+2 -1
View File
@@ -214,7 +214,8 @@ Module ConstGen
Public Const INFO_DEPTH As String = "Depth" Public Const INFO_DEPTH As String = "Depth"
Public Const INFO_WIDTH As String = "Width" Public Const INFO_WIDTH As String = "Width"
Public Const INFO_DEPTH2 As String = "Depth2" Public Const INFO_DEPTH2 As String = "Depth2"
Public CONST INFO_AGG2 As String = "Agg2" Public Const INFO_AGG2 As String = "Agg2"
Public Const INFO_ROUNDOFF As String = "RoundOff"
' Info in entità da tagliare per taglio ristretto ' Info in entità da tagliare per taglio ristretto
Public Const INFO_STRICT As String = "Strict" Public Const INFO_STRICT As String = "Strict"
' Info in entità da tagliare per angolo di lato e tallone ' Info in entità da tagliare per angolo di lato e tallone
+2
View File
@@ -133,6 +133,7 @@ Module ConstIni
Public Const K_ENGRAVENUMBER2 As String = "EngraveNumber2" Public Const K_ENGRAVENUMBER2 As String = "EngraveNumber2"
Public Const K_ENGRAVEOFFSET2 As String = "EngraveOffset2" Public Const K_ENGRAVEOFFSET2 As String = "EngraveOffset2"
Public Const K_ENGRAVEDEPTH As String = "EngraveDepth" Public Const K_ENGRAVEDEPTH As String = "EngraveDepth"
Public Const K_ENGRAVEDEPTH2 As String = "EngraveDepth2"
Public Const K_ENGRAVESHORT As String = "EngraveShort" Public Const K_ENGRAVESHORT As String = "EngraveShort"
Public Const K_DRIPOFFSET As String = "DripOffset" Public Const K_DRIPOFFSET As String = "DripOffset"
Public Const K_DRIPOFFSET2 As String = "DripOffset2" Public Const K_DRIPOFFSET2 As String = "DripOffset2"
@@ -141,6 +142,7 @@ Module ConstIni
Public Const K_UNDERDRILLDEPTH As String = "UnderDrillDepth" Public Const K_UNDERDRILLDEPTH As String = "UnderDrillDepth"
Public Const K_FILOTOPOFFSET As String = "FiloTopOffset" Public Const K_FILOTOPOFFSET As String = "FiloTopOffset"
Public Const K_FILOTOPDEPTH As String = "FiloTopDepth" Public Const K_FILOTOPDEPTH As String = "FiloTopDepth"
Public Const K_ROUNDOFF As String = "RoundOff"
Public Const S_NEST As String = "Nest" Public Const S_NEST As String = "Nest"
Public Const K_DIRECT As String = "Direct" Public Const K_DIRECT As String = "Direct"
+7 -1
View File
@@ -66,6 +66,7 @@ Public Class FlatteningCut
Right Right
End Enum End Enum
' Per abilitare la spianatura con la FRESA deve essere imposatato a TRUE il flag "Usa Fresa" nella pagina MACCHINA (campo INCISIONI)
Private Sub FlatteningCut_Initialized(sender As Object, e As EventArgs) Handles Me.Initialized Private Sub FlatteningCut_Initialized(sender As Object, e As EventArgs) Handles Me.Initialized
' Creo lista modalità di acquisizione punto ' Creo lista modalità di acquisizione punto
m_PointsModeArray(PT_MODE.SAW) = EgtMsg(MSG_DIRECTCUTPAGEUC + 24) m_PointsModeArray(PT_MODE.SAW) = EgtMsg(MSG_DIRECTCUTPAGEUC + 24)
@@ -614,9 +615,11 @@ Public Class FlatteningCut
' ricavo l'ingombro di lavorazione in funzione dell'utensile selezionato ' ricavo l'ingombro di lavorazione in funzione dell'utensile selezionato
Private Function GetFootPrintTool() As Double Private Function GetFootPrintTool() As Double
' vedere nella pagina Allarm il capito "Incisioni"
Dim bForceUseMill As Boolean = (GetPrivateProfileInt(S_MACH_NEST, K_MACH_ENGRAVING_WITHMILL, 1, m_MainWindow.GetMachIniFile()) <> 0)
Dim dFootPrint As Double = 0 Dim dFootPrint As Double = 0
' verifico quale lavorazione è attiva ' verifico quale lavorazione è attiva
If Not String.IsNullOrEmpty(m_MainWindow.m_CurrentMachine.sCurrSawing) Then If Not String.IsNullOrEmpty(m_MainWindow.m_CurrentMachine.sCurrSawing) AndAlso Not bForceUseMill Then
EgtTdbGetCurrToolParam(MCH_TP.THICK, dFootPrint) EgtTdbGetCurrToolParam(MCH_TP.THICK, dFootPrint)
ElseIf Not String.IsNullOrEmpty(m_MainWindow.m_CurrentMachine.sCurrMilling) Then ElseIf Not String.IsNullOrEmpty(m_MainWindow.m_CurrentMachine.sCurrMilling) Then
Dim sCurrMill = m_MainWindow.m_CurrentMachine.sCurrMill Dim sCurrMill = m_MainWindow.m_CurrentMachine.sCurrMill
@@ -652,6 +655,9 @@ Public Class FlatteningCut
Dim nCutId = EgtCreateLinePDL(nLayerId, ptStart, m_dAngO, m_dLen) Dim nCutId = EgtCreateLinePDL(nLayerId, ptStart, m_dAngO, m_dLen)
' Imposto affondamento e angolo di fianco sul taglio ' Imposto affondamento e angolo di fianco sul taglio
EgtSetInfo(nCutId, INFO_DEPTH, m_dDepth) EgtSetInfo(nCutId, INFO_DEPTH, m_dDepth)
If (GetPrivateProfileInt(S_MACH_NEST, K_MACH_ENGRAVING_WITHMILL, 1, m_MainWindow.GetMachIniFile()) <> 0) Then
EgtSetInfo(nCutId, INFO_WIDTH, GetFootPrintTool)
End If
EgtSetInfo(nCutId, INFO_SIDE_ANGLE, 0) EgtSetInfo(nCutId, INFO_SIDE_ANGLE, 0)
' Imposto prima direzione ' Imposto prima direzione
EgtSetInfo(nCutId, INFO_DIR, 1) EgtSetInfo(nCutId, INFO_DIR, 1)
+3 -3
View File
@@ -76,9 +76,9 @@ Public Class AlzFrontUC
m_MainWindow.m_DrawPageUC.DripCutBtn.IsEnabled = False m_MainWindow.m_DrawPageUC.DripCutBtn.IsEnabled = False
' nome dei parametri condivisi ' nome dei parametri condivisi
Parameter1TxBl.Text = "Altezza" Parameter1TxBl.Text = EgtMsg(91134)
Parameter2TxBl.Text = "Delta angolo" Parameter2TxBl.Text = EgtMsg(91135)
Parameter5TxBl.Text = "Spessore" Parameter5TxBl.Text = EgtMsg(91136)
EgtZoom(ZM.ALL) EgtZoom(ZM.ALL)
End Sub End Sub
+38
View File
@@ -336,6 +336,7 @@ Public Class CompoDimensionUC
Dim nCmpInfo As Integer = 0 Dim nCmpInfo As Integer = 0
If EgtGetInfo(nId, "ID", nCmpInfo) AndAlso nCmp = nCmpInfo Then If EgtGetInfo(nId, "ID", nCmpInfo) AndAlso nCmp = nCmpInfo Then
EgtSetStatus(nId, GDB_ST.OFF) EgtSetStatus(nId, GDB_ST.OFF)
UpdateInLoopReference(nCmp)
Exit While Exit While
End If End If
nId = EgtGetNextName(nId, "HoleLabels") nId = EgtGetNextName(nId, "HoleLabels")
@@ -379,5 +380,42 @@ Public Class CompoDimensionUC
EgtDraw() EgtDraw()
End Sub End Sub
Private Sub UpdateInLoopReference(nCmp As Integer)
' aggiorno il layer "FiloTop"
Dim nIdInLoop As Integer = EgtGetFirstNameInGroup(EgtGetFirstGroupInGroup(GDB_ID.ROOT), "InLoop")
While nIdInLoop <> GDB_ID.NULL
Dim nCmpInfoIL As Integer = 0
If EgtGetInfo(nIdInLoop, "ID", nCmpInfoIL) AndAlso nCmp = nCmpInfoIL Then
Dim nLayFiloTop As Integer = GDB_ID.NULL
EgtGetInfo(nIdInLoop, "FiloTopRef", nLayFiloTop)
If nLayFiloTop <> GDB_ID.NULL Then
Dim LocalList As New List(Of Integer) From {nIdInLoop}
m_DrawPage.m_FiloTopUC.CreateFiloTopPreView(LocalList)
EgtSetStatus(nLayFiloTop, GDB_ST.ON_)
Exit While
End If
End If
nIdInLoop = EgtGetNextName(nIdInLoop, "InLoop")
End While
End Sub
' riceve la info "ID" della componente
Public Sub SetStatusVisibilityInLoopReference(nCmp As Integer, Status As GDB_ST)
' aggiorno il layer "FiloTop"
Dim nIdInLoop As Integer = EgtGetFirstNameInGroup(EgtGetFirstGroupInGroup(GDB_ID.ROOT), "InLoop")
While nIdInLoop <> GDB_ID.NULL
Dim nCmpInfoIL As Integer = 0
If EgtGetInfo(nIdInLoop, "ID", nCmpInfoIL) AndAlso nCmp = nCmpInfoIL Then
Dim nLayFiloTop As Integer = GDB_ID.NULL
EgtGetInfo(nIdInLoop, "FiloTopRef", nLayFiloTop)
If nLayFiloTop <> GDB_ID.NULL Then
EgtSetStatus(nLayFiloTop, Status)
Exit While
End If
End If
nIdInLoop = EgtGetNextName(nIdInLoop, "InLoop")
End While
End Sub
#End Region ' METHODS for InternalCompo #End Region ' METHODS for InternalCompo
End Class End Class
+34 -21
View File
@@ -41,6 +41,9 @@ Public Class DrawPageUC
Friend m_bDrawOk As Boolean = False Friend m_bDrawOk As Boolean = False
Private m_bFirst As Boolean = True Private m_bFirst As Boolean = True
Private m_SelListHole As New List(Of Integer)
Private m_DeselectListHole As New List(Of Integer)
' questa variabile serve per risalire al nome della componente che ospita i componenti interni att ' questa variabile serve per risalire al nome della componente che ospita i componenti interni att
Friend m_sMainCompo As String = String.Empty Friend m_sMainCompo As String = String.Empty
@@ -360,6 +363,8 @@ Public Class DrawPageUC
Dim nCmpInfo As Integer = 0 Dim nCmpInfo As Integer = 0
If EgtGetInfo(nHLId, "ID", nCmpInfo) AndAlso nCmp = nCmpInfo Then If EgtGetInfo(nHLId, "ID", nCmpInfo) AndAlso nCmp = nCmpInfo Then
EgtSetStatus(nHLId, GDB_ST.ON_) EgtSetStatus(nHLId, GDB_ST.ON_)
' nascondo eventuali FiloTop
m_CompoDimension.SetStatusVisibilityInLoopReference(nCmp, GDB_ST.OFF)
Exit While Exit While
End If End If
nHLId = EgtGetNextName(nHLId, "HoleLabels") nHLId = EgtGetNextName(nHLId, "HoleLabels")
@@ -462,21 +467,25 @@ Public Class DrawPageUC
EgtDeselectObj(nId) EgtDeselectObj(nId)
EgtDeselectObj(nLayId) EgtDeselectObj(nLayId)
Dim sLayName As String = "" Dim sLayName As String = ""
If EgtGetName(nLayId, sLayName) AndAlso sLayName = NAME_INLOOP AndAlso EgtExistsInfo( nLayId, INFO_FILOTOP) Then If EgtGetName(nLayId, sLayName) AndAlso sLayName = NAME_INLOOP AndAlso EgtExistsInfo(nLayId, INFO_FILOTOP) Then
EgtRemoveInfo( nLayId, INFO_FILOTOP) EgtRemoveInfo(nLayId, INFO_FILOTOP)
EgtRemoveInfo( nLayId, INFO_OFFSET) EgtRemoveInfo(nLayId, INFO_OFFSET)
EgtRemoveInfo( nLayId, INFO_DEPTH) EgtRemoveInfo(nLayId, INFO_DEPTH)
EgtResetColor( nLayId) EgtResetColor(nLayId)
End If End If
m_DeselectListHole.Add(nLayId)
m_SelListHole.Remove(nLayId)
Else Else
Dim sLayName As String = "" Dim sLayName As String = ""
If EgtGetName( nLayId, sLayName) AndAlso sLayName = NAME_INLOOP Then If EgtGetName(nLayId, sLayName) AndAlso sLayName = NAME_INLOOP Then
EgtSelectObj( nId) EgtSelectObj(nId)
EgtSelectObj( nLayId) EgtSelectObj(nLayId)
EgtSetInfo( nLayId, INFO_FILOTOP, 1) EgtSetInfo(nLayId, INFO_FILOTOP, 1)
EgtSetInfo( nLayId, INFO_OFFSET, m_FiloTopUC.FiloTopOffset) EgtSetInfo(nLayId, INFO_OFFSET, m_FiloTopUC.FiloTopOffset)
EgtSetInfo( nLayId, INFO_DEPTH, m_FiloTopUC.FiloTopDepth) EgtSetInfo(nLayId, INFO_DEPTH, m_FiloTopUC.FiloTopDepth)
EgtSetColor( nLayId, New Color3d(255, 255, 255)) EgtSetColor(nLayId, New Color3d(255, 255, 255))
m_SelListHole.Add(nLayId)
m_DeselectListHole.Remove(nLayId)
End If End If
End If End If
EgtDraw() EgtDraw()
@@ -484,6 +493,8 @@ Public Class DrawPageUC
End If End If
nId = EgtGetNextObjInSelWin() nId = EgtGetNextObjInSelWin()
End While End While
m_FiloTopUC.CreateFiloTopPreView(m_SelListHole)
m_FiloTopUC.EraseFiloTopPreview(m_DeselectListHole)
End Sub End Sub
Private Sub OnShowDistanceVector(sender As Object, vtDist As Vector3d) Handles DrawScene.OnShowDistanceVector Private Sub OnShowDistanceVector(sender As Object, vtDist As Vector3d) Handles DrawScene.OnShowDistanceVector
@@ -1362,6 +1373,8 @@ Public Class DrawPageUC
End Sub End Sub
Private Sub FiloTopBtn_Click(sender As Object, e As RoutedEventArgs) Handles FiloTopBtn.Click Private Sub FiloTopBtn_Click(sender As Object, e As RoutedEventArgs) Handles FiloTopBtn.Click
m_SelListHole.Clear()
m_DeselectListHole.Clear()
m_SceneButtons.MeasureBtn.IsChecked = False m_SceneButtons.MeasureBtn.IsChecked = False
If FiloTopBtn.IsChecked Then If FiloTopBtn.IsChecked Then
' Imposto modalità ' Imposto modalità
@@ -1375,25 +1388,25 @@ Public Class DrawPageUC
m_PrevSideAnglePage = Pages.AlzFront m_PrevSideAnglePage = Pages.AlzFront
LeftButtonGrd.Children.Remove(m_CompoDimension.m_AlzFrontPage) LeftButtonGrd.Children.Remove(m_CompoDimension.m_AlzFrontPage)
End If End If
VariablesGrd.Children.Add( m_FiloTopUC) VariablesGrd.Children.Add(m_FiloTopUC)
SideAngleBtn.IsEnabled = False SideAngleBtn.IsEnabled = False
EngraveBtn.IsEnabled = False EngraveBtn.IsEnabled = False
DripCutBtn.IsEnabled = False DripCutBtn.IsEnabled = False
MessageGrid.Visibility = Windows.Visibility.Hidden MessageGrid.Visibility = Windows.Visibility.Hidden
BackBtn.Visibility = Windows.Visibility.Hidden BackBtn.Visibility = Windows.Visibility.Hidden
MessageTxBx.Text = EgtMsg( MSG_DRAWPAGEUC + 6) ' Selezionare un contorno MessageTxBx.Text = EgtMsg(MSG_DRAWPAGEUC + 6) ' Selezionare un contorno
MessageBrd.Background = Application.Current.FindResource("OmagCut_Green") MessageBrd.Background = Application.Current.FindResource("OmagCut_Green")
' In ogni caso, nascondo layer delle misure ' In ogni caso, nascondo layer delle misure
Dim PartId As Integer = EgtGetFirstInGroup( GDB_ID.ROOT) Dim PartId As Integer = EgtGetFirstInGroup(GDB_ID.ROOT)
EgtSetStatus(EgtGetFirstNameInGroup( PartId, COMPO_LAYER_AUX), GDB_ST.OFF) EgtSetStatus(EgtGetFirstNameInGroup(PartId, COMPO_LAYER_AUX), GDB_ST.OFF)
EgtSetStatus(EgtGetFirstNameInGroup( PartId, COMPO_LAYER_QUOTATURE), GDB_ST.OFF) EgtSetStatus(EgtGetFirstNameInGroup(PartId, COMPO_LAYER_QUOTATURE), GDB_ST.OFF)
EgtSetStatus(EgtGetFirstNameInGroup( PartId, COMPO_LAYER_ETICHETTE), GDB_ST.OFF) EgtSetStatus(EgtGetFirstNameInGroup(PartId, COMPO_LAYER_ETICHETTE), GDB_ST.OFF)
Else Else
VariablesGrd.Children.Remove( m_FiloTopUC) VariablesGrd.Children.Remove(m_FiloTopUC)
If m_PrevSideAnglePage = Pages.CompoDimension Then If m_PrevSideAnglePage = Pages.CompoDimension Then
VariablesGrd.Children.Add( m_CompoDimension) VariablesGrd.Children.Add(m_CompoDimension)
ElseIf m_PrevSideAnglePage = Pages.InternalComponent Then ElseIf m_PrevSideAnglePage = Pages.InternalComponent Then
LeftButtonGrd.Children.Add( m_CompoDimension.m_InternalCompoPage) LeftButtonGrd.Children.Add(m_CompoDimension.m_InternalCompoPage)
End If End If
SideAngleBtn.IsEnabled = m_bEnableSideAngle SideAngleBtn.IsEnabled = m_bEnableSideAngle
EngraveBtn.IsEnabled = True EngraveBtn.IsEnabled = True
+6 -2
View File
@@ -41,7 +41,11 @@
FontSize="{DynamicResource FontSize_LowerCaseCharacter}"/> FontSize="{DynamicResource FontSize_LowerCaseCharacter}"/>
<EgtWPFLib:EgtTextBox Name="Parameter2TxBx" Grid.Column="1" Grid.Row="11" Width="90" <EgtWPFLib:EgtTextBox Name="Parameter2TxBx" Grid.Column="1" Grid.Row="11" Width="90"
Style="{StaticResource OmagCut_CalculatorTextBox}"/> Style="{StaticResource OmagCut_CalculatorTextBox}"/>
<TextBlock Name="Parameter3TxBl" Grid.Row="12" Text="Arrotonda"
</Grid> Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"
FontSize="{DynamicResource FontSize_LowerCaseCharacter}"/>
<CheckBox Name="Parameter3ChBx" Grid.Row="12" Grid.Column="1" Style="{StaticResource OmagCut_CheckBox_Single}"
HorizontalAlignment="Center" Margin="0,0,6,0"/>
</Grid>
</UserControl> </UserControl>
+174 -2
View File
@@ -7,6 +7,8 @@ Public Class FiloTopUC
' Riferimento alla pagina che ha aperto SideAngleUC ' Riferimento alla pagina che ha aperto SideAngleUC
Private m_CallingPage As MainWindow.Pages Private m_CallingPage As MainWindow.Pages
Private m_SelList As New List(Of Integer)
' Offset della sfilettatura ' Offset della sfilettatura
Private m_dFiloTopOffset As Double = 0 Private m_dFiloTopOffset As Double = 0
Friend ReadOnly Property FiloTopOffset As Double Friend ReadOnly Property FiloTopOffset As Double
@@ -23,6 +25,13 @@ Public Class FiloTopUC
End Get End Get
End Property End Property
' esegue l'arrotindamento sugli angoli del percorso utensile
Private m_bCornerradius As Boolean = False
Friend ReadOnly Property bCornerRadius As Boolean
Get
Return m_bCornerradius
End Get
End Property
Private Sub FiloTopUC_Loaded(sender As Object, e As RoutedEventArgs) Handles Me.Loaded Private Sub FiloTopUC_Loaded(sender As Object, e As RoutedEventArgs) Handles Me.Loaded
' Imposto riferimenti ad altre pagine ' Imposto riferimenti ad altre pagine
@@ -43,14 +52,18 @@ Public Class FiloTopUC
End If End If
' Gestisco visualizzazione dei parametri ' Gestisco visualizzazione dei parametri
Parameter2TxBl.Visibility = Windows.Visibility.Visible ParameterTxBl.Visibility = Windows.Visibility.Visible
Parameter2TxBx.Visibility = Windows.Visibility.Visible Parameter2TxBx.Visibility = Windows.Visibility.Visible
Parameter3TxBl.Visibility = Windows.Visibility.Visible
' Aggiorno valori ' Aggiorno valori
m_dFiloTopOffset = GetPrivateProfileDouble( S_SIDES, K_FILOTOPOFFSET, 5, m_MainWindow.GetIniFile()) m_dFiloTopOffset = GetPrivateProfileDouble( S_SIDES, K_FILOTOPOFFSET, 5, m_MainWindow.GetIniFile())
ParameterTxBx.Text = LenToString( m_dFiloTopOffset, 3) ParameterTxBx.Text = LenToString( m_dFiloTopOffset, 3)
m_dFiloTopDepth = GetPrivateProfileDouble( S_SIDES, K_FILOTOPDEPTH, 5, m_MainWindow.GetIniFile()) m_dFiloTopDepth = GetPrivateProfileDouble( S_SIDES, K_FILOTOPDEPTH, 5, m_MainWindow.GetIniFile())
Parameter2TxBx.Text = LenToString( m_dFiloTopDepth, 3) Parameter2TxBx.Text = LenToString(m_dFiloTopDepth, 3)
m_bCornerradius = GetPrivateProfileInt(S_SIDES, K_ROUNDOFF, 0, m_MainWindow.GetIniFile()) <> 0
Parameter3ChBx.IsChecked = m_bCornerradius
m_SelList.Clear()
End Sub End Sub
Private Sub FiloTopUC_Unloaded(sender As Object, e As RoutedEventArgs) Handles Me.Unloaded Private Sub FiloTopUC_Unloaded(sender As Object, e As RoutedEventArgs) Handles Me.Unloaded
@@ -74,6 +87,8 @@ Public Class FiloTopUC
End While End While
nPartId = EgtGetNextPart(nPartId) nPartId = EgtGetNextPart(nPartId)
End While End While
' aggiorno la preview
CreateFiloTopPreView(m_SelList, False)
End Sub End Sub
Private Sub Parameter2TxBx_EgtClosed(sender As Object, e As EventArgs) Handles Parameter2TxBx.EgtClosed Private Sub Parameter2TxBx_EgtClosed(sender As Object, e As EventArgs) Handles Parameter2TxBx.EgtClosed
@@ -95,4 +110,161 @@ Public Class FiloTopUC
End While End While
End Sub End Sub
Private Sub Parameter3ChBx_Checked() Handles Parameter3ChBx.Click
' Assegno il valore
m_bCornerradius = Parameter3ChBx.IsChecked
WritePrivateProfileString(S_SIDES, K_ROUNDOFF, If(m_bCornerradius, "1", "0"), m_MainWindow.GetIniFile())
' Aggiorno le info del profilo
Dim nPartId As Integer = EgtGetFirstPart()
While nPartId <> GDB_ID.NULL
Dim nLayId As Integer = EgtGetFirstLayer(nPartId)
While nLayId <> GDB_ID.NULL
Dim sLayName As String = ""
If EgtGetName(nLayId, sLayName) AndAlso sLayName = NAME_INLOOP AndAlso EgtExistsInfo(nLayId, INFO_FILOTOP) Then
EgtSetInfo(nLayId, INFO_ROUNDOFF, If(m_bCornerradius, 1, 0))
End If
nLayId = EgtGetNextLayer(nLayId)
End While
nPartId = EgtGetNextPart(nPartId)
End While
' aggiorno la preview (False = blocco la lettura dei dati della componente)
CreateFiloTopPreView(m_SelList, False)
End Sub
Public Sub CreateFiloTopPreView(SelList As List(Of Integer), Optional bReadInfo As Boolean = True)
m_SelList = SelList
If m_SelList.Count < 1 Then Return
Dim nPartId As Integer = EgtGetFirstPart()
While nPartId <> GDB_ID.NULL
Dim nLayId As Integer = EgtGetFirstLayer(nPartId)
While nLayId <> GDB_ID.NULL
Dim sLayName As String = ""
' verifico che lemento corrente appartenga all'elenco degli elementi selezionati
Dim bIsSelected As Boolean = m_SelList.Find(Function(value As Integer)
Return value = nLayId
End Function) <> 0
If EgtGetName(nLayId, sLayName) AndAlso sLayName = NAME_INLOOP AndAlso EgtExistsInfo(nLayId, INFO_FILOTOP) AndAlso bIsSelected Then
' ---------------------- Inizio GESTIONE PREVIEW percorso -------------------------------
Dim nLayFiloTop As Integer = GDB_ID.NULL
Dim nInLoopRef As Integer = GDB_ID.NULL
nLayFiloTop = EgtGetFirstNameInGroup(nPartId, "FiloTop")
EgtGetInfo(nLayFiloTop, "InLoopRef", nInLoopRef)
' verifico il Layer "FiloTop" sia associato all'InLoop corrente
While (nLayFiloTop <> GDB_ID.NULL AndAlso nInLoopRef <> nLayId)
nLayFiloTop = EgtGetNextName(nLayFiloTop, "FiloTop")
EgtGetInfo(nLayFiloTop, "InLoopRef", nInLoopRef)
End While
' se non esiste il Layer "FiloTop"
If nLayFiloTop = GDB_ID.NULL Then
' lo creo
nLayFiloTop = EgtCreateGroup(nPartId)
EgtSetName(nLayFiloTop, "FiloTop")
EgtSetInfo(nLayFiloTop, "InLoopRef", nLayId)
EgtSetInfo(nLayId, "FiloTopRef", nLayFiloTop)
End If
' carico i dati del filo top selezionato
If bReadInfo Then
EgtGetInfo(nLayFiloTop, INFO_OFFSET, m_dFiloTopOffset)
ParameterTxBx.Text = LenToString(m_dFiloTopOffset, 3)
EgtGetInfo(nLayFiloTop, INFO_DEPTH, m_dFiloTopDepth)
Parameter2TxBx.Text = LenToString(m_dFiloTopDepth, 3)
Dim nVal As Integer = If(m_bCornerradius, 1, 0)
EgtGetInfo(nLayFiloTop, INFO_ROUNDOFF, nVal)
Parameter3ChBx.IsChecked = If(nVal = 1, True, False)
m_bCornerradius = Parameter3ChBx.IsChecked
End If
' procedo alla creazione della curva
Dim nIdCompoCurve As Integer = GDB_ID.NULL
' cancello un eventuale curva composita creata in precedenza
nIdCompoCurve = EgtGetFirstNameInGroup(nLayFiloTop, "OffsetPreView")
If nIdCompoCurve <> GDB_ID.NULL Then
EgtErase(nIdCompoCurve)
End If
Dim nCompoCurve As New List(Of Integer)
' costruisco il percorso chiuso dati i lati di contorno
Dim nLine As Integer = EgtGetFirstInGroup(nLayId)
While nLine <> GDB_ID.NULL
nCompoCurve.Add(nLine)
nLine = EgtGetNext(nLine)
End While
Dim PtNearStart As Point3d
Dim nInfoRoundOff As Integer = If(m_bCornerradius, 1, 0)
nIdCompoCurve = EgtCreateCurveCompoByChain(nLayFiloTop, nCompoCurve.ToArray, PtNearStart, False)
EgtSetName(nIdCompoCurve, "OffsetPreView")
' salvo i dati nel layer FiloTop
EgtSetInfo(nLayFiloTop, INFO_OFFSET, m_dFiloTopOffset)
EgtSetInfo(nLayFiloTop, INFO_DEPTH, m_dFiloTopDepth)
EgtSetInfo(nLayFiloTop, INFO_ROUNDOFF, nInfoRoundOff)
Dim bOk As Boolean = False
' leggo che tipo di offset applicare (Round, Extend)
If nInfoRoundOff <> 1 Then
bOk = EgtOffsetCurve(nIdCompoCurve, -m_dFiloTopOffset, OFF_TYPE.EXTEND)
Else
bOk = EgtOffsetCurve(nIdCompoCurve, -m_dFiloTopOffset, OFF_TYPE.FILLET)
End If
' se la generazione della curva non va a buon fine
If Not bOk Then
EgtErase(nLayFiloTop)
EgtRemoveInfo(nLayId, "FiloTopRef")
EgtOutLog("Error in generation OffsetPreView in TopEgde ")
End If
' ---------------------- Fine GESTIONE PREVIEW percorso -------------------------------
End If
nLayId = EgtGetNextLayer(nLayId)
End While
nPartId = EgtGetNextPart(nPartId)
End While
EgtDraw()
End Sub
' riceve la lista dei LayerFiloTop che devono essere eliminati
Public Sub EraseFiloTopPreview(EraseList As List(Of Integer))
Dim m_EraseList As List(Of Integer) = EraseList
If m_EraseList.Count < 1 Then Return
Dim nPartId As Integer = EgtGetFirstPart()
While nPartId <> GDB_ID.NULL
Dim nLayId As Integer = EgtGetFirstLayer(nPartId)
While nLayId <> GDB_ID.NULL
Dim sLayName As String = ""
Dim bIsSelected As Boolean = m_EraseList.Find(Function(value As Integer)
Return value = nLayId
End Function) <> 0
If EgtGetName(nLayId, sLayName) AndAlso sLayName = NAME_INLOOP AndAlso bIsSelected Then
' ---------------------- Inizio GESTIONE PREVIEW percorso -------------------------------
Dim nLayFiloTop As Integer = GDB_ID.NULL
Dim nInLoopRef As Integer = GDB_ID.NULL
nLayFiloTop = EgtGetFirstNameInGroup(nPartId, "FiloTop")
EgtGetInfo(nLayFiloTop, "InLoopRef", nInLoopRef)
' cerco il Layer associato all'InLoop corrente
While (nLayFiloTop <> GDB_ID.NULL AndAlso nInLoopRef <> nLayId)
nLayFiloTop = EgtGetNextName(nLayFiloTop, "FiloTop")
EgtGetInfo(nLayFiloTop, "InLoopRef", nInLoopRef)
End While
' se non esiste il Layer
If nLayFiloTop = GDB_ID.NULL Then
' esco
Return
Else
' lo elimino
EgtErase(nLayFiloTop)
EraseList.Remove(nLayId)
End If
' ---------------------- Fine GESTIONE PREVIEW percorso -------------------------------
End If
nLayId = EgtGetNextLayer(nLayId)
End While
nPartId = EgtGetNextPart(nPartId)
End While
EgtDraw()
End Sub
End Class End Class
+31 -7
View File
@@ -34,6 +34,7 @@ Public Class SideAngleUC
Friend m_dDripOffset2 As Double = 0 Friend m_dDripOffset2 As Double = 0
Friend m_nEngrNbr2 As Integer = 1 Friend m_nEngrNbr2 As Integer = 1
Friend m_dDripDepth As Double = 10 Friend m_dDripDepth As Double = 10
Friend m_dEngraveDepth2 As Double = 15
Friend m_dDripShort As Double = 0 Friend m_dDripShort As Double = 0
Private CurrEntityDrip As DripEntity Private CurrEntityDrip As DripEntity
@@ -133,9 +134,18 @@ Public Class SideAngleUC
' Affondamento ' Affondamento
Parameter3TxBl.Visibility = Windows.Visibility.Visible Parameter3TxBl.Visibility = Windows.Visibility.Visible
Parameter3TxBx.Visibility = Windows.Visibility.Visible Parameter3TxBx.Visibility = Windows.Visibility.Visible
' Accorciamento ' Accorciamento
Parameter4TxBl.Visibility = Windows.Visibility.Hidden If m_Mode = ModeOpt.ENGRAVE Then
Parameter4TxBx.Visibility = Windows.Visibility.Hidden ' modifico il nome del messaggio
Parameter4TxBl.Text = EgtMsg(MSG_IMPORTPAGEUC + 11) & "2" ' Affondamento2
Parameter4TxBl.Visibility = Windows.Visibility.Visible
Parameter4TxBx.Visibility = Windows.Visibility.Visible
Else
Parameter4TxBl.Visibility = Windows.Visibility.Hidden
Parameter4TxBx.Visibility = Windows.Visibility.Hidden
End If
End If End If
' Gestisco Checkbox e nomi in base al numero di lati inclinabili ' Gestisco Checkbox e nomi in base al numero di lati inclinabili
@@ -156,12 +166,12 @@ Public Class SideAngleUC
m_nEngrNbr2 = GetPrivateProfileInt( S_SIDES, K_ENGRAVENUMBER2, 1, m_MainWindow.GetIniFile()) m_nEngrNbr2 = GetPrivateProfileInt( S_SIDES, K_ENGRAVENUMBER2, 1, m_MainWindow.GetIniFile())
m_dDripOffset2 = GetPrivateProfileDouble( S_SIDES, K_ENGRAVEOFFSET2, 0, m_MainWindow.GetIniFile()) m_dDripOffset2 = GetPrivateProfileDouble( S_SIDES, K_ENGRAVEOFFSET2, 0, m_MainWindow.GetIniFile())
m_dDripDepth = GetPrivateProfileDouble( S_SIDES, K_ENGRAVEDEPTH, 10, m_MainWindow.GetIniFile()) m_dDripDepth = GetPrivateProfileDouble( S_SIDES, K_ENGRAVEDEPTH, 10, m_MainWindow.GetIniFile())
m_dDripShort = GetPrivateProfileDouble( S_SIDES, K_ENGRAVESHORT, 0, m_MainWindow.GetIniFile()) m_dEngraveDepth2 = GetPrivateProfileDouble(S_SIDES, K_ENGRAVEDEPTH2, 0, m_MainWindow.GetIniFile())
Parameter1TxBx.Text = LenToString( m_dDripOffset, 3) Parameter1TxBx.Text = LenToString( m_dDripOffset, 3)
Parameter2aTxBx.Text = m_nEngrNbr2.ToString() Parameter2aTxBx.Text = m_nEngrNbr2.ToString()
Parameter2bTxBx.Text = LenToString( m_dDripOffset2, 3) Parameter2bTxBx.Text = LenToString( m_dDripOffset2, 3)
Parameter3TxBx.Text = LenToString( m_dDripDepth, 3) Parameter3TxBx.Text = LenToString( m_dDripDepth, 3)
Parameter4TxBx.Text = LenToString( m_dDripShort, 3) Parameter4TxBx.Text = LenToString(m_dEngraveDepth2, 3)
End If End If
' Aggiorno visualizzazione ' Aggiorno visualizzazione
@@ -489,6 +499,7 @@ Public Class SideAngleUC
WritePrivateProfileString( S_SIDES, K_ENGRAVENUMBER2, m_nEngrNbr2.ToString(), m_MainWindow.GetIniFile()) WritePrivateProfileString( S_SIDES, K_ENGRAVENUMBER2, m_nEngrNbr2.ToString(), m_MainWindow.GetIniFile())
WritePrivateProfileString(S_SIDES, K_ENGRAVEOFFSET2, LenToString(m_dDripOffset2, 3), m_MainWindow.GetIniFile()) WritePrivateProfileString(S_SIDES, K_ENGRAVEOFFSET2, LenToString(m_dDripOffset2, 3), m_MainWindow.GetIniFile())
WritePrivateProfileString(S_SIDES, K_ENGRAVEDEPTH, LenToString(m_dDripDepth, 3), m_MainWindow.GetIniFile()) WritePrivateProfileString(S_SIDES, K_ENGRAVEDEPTH, LenToString(m_dDripDepth, 3), m_MainWindow.GetIniFile())
WritePrivateProfileString(S_SIDES, K_ENGRAVEDEPTH2, LenToString(m_dEngraveDepth2, 3), m_MainWindow.GetIniFile())
'WritePrivateProfileString( S_SIDES, K_ENGRAVESHORT, DoubleToString( m_dDripShort, 3), m_MainWindow.GetIniFile()) 'WritePrivateProfileString( S_SIDES, K_ENGRAVESHORT, DoubleToString( m_dDripShort, 3), m_MainWindow.GetIniFile())
End If End If
@@ -635,7 +646,7 @@ Public Class SideAngleUC
SideAngle.AddTextToLine(sEntityName, TextLayer, CurrLine, 20, dBBoxRad, True) SideAngle.AddTextToLine(sEntityName, TextLayer, CurrLine, 20, dBBoxRad, True)
End Sub End Sub
' Funzione che crea le geometrie dei gocciolatoi ' Funzione che crea le geometrie dei gocciolatoi (NON UTILIZZATA)
Friend Sub CreateDripGeomOLD(nPartId As Integer) Friend Sub CreateDripGeomOLD(nPartId As Integer)
' Recupero Id layer di contorno esterno ' Recupero Id layer di contorno esterno
Dim nOutLoopId = EgtGetFirstNameInGroup(nPartId, NAME_OUTLOOP) Dim nOutLoopId = EgtGetFirstNameInGroup(nPartId, NAME_OUTLOOP)
@@ -830,6 +841,9 @@ Public Class SideAngleUC
Dim nCrvId = EgtGetFirstInGroup(DripLayer) Dim nCrvId = EgtGetFirstInGroup(DripLayer)
While nCrvId <> GDB_ID.NULL While nCrvId <> GDB_ID.NULL
EgtOffsetCurve(nCrvId, -m_dDripOffset, OFF_TYPE.EXTEND) EgtOffsetCurve(nCrvId, -m_dDripOffset, OFF_TYPE.EXTEND)
If m_Mode = ModeOpt.ENGRAVE Then
EgtSetInfo(nCrvId, INFO_DEPTH, m_dDripDepth)
End If
nCrvId = EgtGetNext(nCrvId) nCrvId = EgtGetNext(nCrvId)
End While End While
' Eventuali curve aggiuntive con offset2 ' Eventuali curve aggiuntive con offset2
@@ -840,10 +854,14 @@ Public Class SideAngleUC
For i As Integer = 1 To m_nEngrNbr2 For i As Integer = 1 To m_nEngrNbr2
Dim nNewId As Integer = EgtCopy(nCrvId, nCrvId, GDB_POS.AFTER) Dim nNewId As Integer = EgtCopy(nCrvId, nCrvId, GDB_POS.AFTER)
EgtOffsetCurve(nNewId, -i * m_dDripOffset2, OFF_TYPE.EXTEND) EgtOffsetCurve(nNewId, -i * m_dDripOffset2, OFF_TYPE.EXTEND)
If m_Mode = ModeOpt.ENGRAVE Then
EgtSetInfo(nNewId, INFO_DEPTH, m_dEngraveDepth2)
End If
Next Next
nCrvId = nNextCrvId nCrvId = nNextCrvId
End While End While
End If End If
If m_Mode = ModeOpt.DRIP Then If m_Mode = ModeOpt.DRIP Then
' Esplodo nelle curve componenti ' Esplodo nelle curve componenti
nCrvId = EgtGetFirstInGroup(DripLayer) nCrvId = EgtGetFirstInGroup(DripLayer)
@@ -866,11 +884,12 @@ Public Class SideAngleUC
nCrvId = EgtGetFirstInGroup(DripLayer) nCrvId = EgtGetFirstInGroup(DripLayer)
While nCrvId <> GDB_ID.NULL While nCrvId <> GDB_ID.NULL
EgtSetColor(nCrvId, COL_MCH_DRIPCUT()) EgtSetColor(nCrvId, COL_MCH_DRIPCUT())
EgtSetInfo(nCrvId, INFO_DEPTH, m_dDripDepth) 'EgtSetInfo(nCrvId, INFO_DEPTH, m_dDripDepth)
EgtSetInfo(nCrvId, INFO_STRICT, If(m_dDripShort > EPS_SMALL, "3", "0")) EgtSetInfo(nCrvId, INFO_STRICT, If(m_dDripShort > EPS_SMALL, "3", "0"))
nCrvId = EgtGetNext(nCrvId) nCrvId = EgtGetNext(nCrvId)
End While End While
End If End If
End Sub End Sub
Private Sub PrevBtn_Click(sender As Object, e As RoutedEventArgs) Handles PrevBtn.Click Private Sub PrevBtn_Click(sender As Object, e As RoutedEventArgs) Handles PrevBtn.Click
@@ -1304,11 +1323,16 @@ Public Class SideAngleUC
End Sub End Sub
Private Sub Parameter4TxBx_EgtClosed(sender As Object, e As EventArgs) Handles Parameter4TxBx.EgtClosed Private Sub Parameter4TxBx_EgtClosed(sender As Object, e As EventArgs) Handles Parameter4TxBx.EgtClosed
If m_Mode = ModeOpt.DRIP Or m_Mode = ModeOpt.ENGRAVE Then If m_Mode = ModeOpt.DRIP Then
' Recupero il valore ' Recupero il valore
StringToLen(Parameter4TxBx.Text, m_dDripShort) StringToLen(Parameter4TxBx.Text, m_dDripShort)
' Creo le geometrie dei gocciolatoi ' Creo le geometrie dei gocciolatoi
RefreshSideAngleText() RefreshSideAngleText()
ElseIf m_Mode = ModeOpt.ENGRAVE Then
' Recupero il valore
StringToLen(Parameter4TxBx.Text, m_dEngraveDepth2)
' Creo le geometrie dei gocciolatoi
RefreshSideAngleText()
End If End If
End Sub End Sub
+2 -2
View File
@@ -1327,7 +1327,7 @@ Public Class CurrentMachine
' Leggo valori da file Data e li carico nelle proprietà ' Leggo valori da file Data e li carico nelle proprietà
Dim sFilePath As String = sMachDir & "\" & MACHININGS_DIR & "\" & WATERJETDB_FILE Dim sFilePath As String = sMachDir & "\" & MACHININGS_DIR & "\" & WATERJETDB_FILE
Dim Local_MaterialList = New ObservableCollection(Of EgtWPFLib5.WjMaterial) Dim Local_MaterialList = New ObservableCollection(Of EgtWPFLib5.WjMaterial)
Local_MaterialList = EgtWPFLib5.WaterjetDbWindowVM.LoadWjMaterials(sFilePath) Local_MaterialList = WaterjetDbWindowVM_OmagCUT.LoadWjMaterials(sFilePath)
' definisco la lista delle qualità (solo se è vuota) ' definisco la lista delle qualità (solo se è vuota)
If m_Qualities.Count < 1 Then If m_Qualities.Count < 1 Then
m_Qualities.Add("Q1") m_Qualities.Add("Q1")
@@ -1358,7 +1358,7 @@ Public Class CurrentMachine
' Leggo valori da file Data e li carico nelle proprietà ' Leggo valori da file Data e li carico nelle proprietà
Dim sFilePath As String = sMachDir & "\" & MACHININGS_DIR & "\" & WATERJETDB_FILE Dim sFilePath As String = sMachDir & "\" & MACHININGS_DIR & "\" & WATERJETDB_FILE
Dim Local_MaterialList = New ObservableCollection(Of EgtWPFLib5.WjMaterial) Dim Local_MaterialList = New ObservableCollection(Of EgtWPFLib5.WjMaterial)
Local_MaterialList = EgtWPFLib5.WaterjetDbWindowVM.LoadWjMaterials(sFilePath) Local_MaterialList = WaterjetDbWindowVM_OmagCUT.LoadWjMaterials(sFilePath)
Dim sItems() As String = sCurMat.Split("."c) Dim sItems() As String = sCurMat.Split("."c)
If sItems.Count > 1 Then If sItems.Count > 1 Then
Dim sMat As String = sItems(0) Dim sMat As String = sItems(0)
+18 -18
View File
@@ -145,12 +145,12 @@ Public Class MachinePageUC
m_ActiveMachinePage = MachinePages.Alarms m_ActiveMachinePage = MachinePages.Alarms
Case MachinePages.WaterJet Case MachinePages.WaterJet
' Verifica ed eventuale salvataggio Db Waterjet ' Verifica ed eventuale salvataggio Db Waterjet
Dim nPressedBtn As Integer = DirectCast(m_WaterJetPageUC.DataContext, EgtWPFLib5.WaterjetDbWindowVM).CloseWaterjetDb_OmagCut(m_MainWindow) Dim nPressedBtn As Integer = DirectCast(m_WaterJetPageUC.DataContext, WaterjetDbWindowVM_OmagCUT).CloseWaterjetDb_OmagCut(m_MainWindow)
If nPressedBtn = EgtWPFLib5.WaterjetDbWindowVM.SaveWndBtnEnum.CANCEL Then If nPressedBtn = WaterjetDbWindowVM_OmagCUT.SaveWndBtnEnum.CANCEL Then
AlarmsBtn.IsChecked = False AlarmsBtn.IsChecked = False
WaterJetBtn.IsChecked = True WaterJetBtn.IsChecked = True
Return Return
ElseIf nPressedBtn = EgtWPFLib5.WaterjetDbWindowVM.SaveWndBtnEnum.NO Then ElseIf nPressedBtn = WaterjetDbWindowVM_OmagCUT.SaveWndBtnEnum.NO Then
m_WaterJetPageUC.WaterJetPage_Reinitialize() m_WaterJetPageUC.WaterJetPage_Reinitialize()
End If End If
' passo alla pagina Dati Macchina ' passo alla pagina Dati Macchina
@@ -215,12 +215,12 @@ Public Class MachinePageUC
m_ActiveMachinePage = MachinePages.ToolsDb m_ActiveMachinePage = MachinePages.ToolsDb
Case MachinePages.WaterJet Case MachinePages.WaterJet
'Verifica ed eventuale salvataggio Db Waterjet 'Verifica ed eventuale salvataggio Db Waterjet
Dim nPressedBtn As Integer = DirectCast(m_WaterJetPageUC.DataContext, EgtWPFLib5.WaterjetDbWindowVM).CloseWaterjetDb_OmagCut(m_MainWindow) Dim nPressedBtn As Integer = DirectCast(m_WaterJetPageUC.DataContext, WaterjetDbWindowVM_OmagCUT).CloseWaterjetDb_OmagCut(m_MainWindow)
If nPressedBtn = EgtWPFLib5.WaterjetDbWindowVM.SaveWndBtnEnum.CANCEL Then If nPressedBtn = WaterjetDbWindowVM_OmagCUT.SaveWndBtnEnum.CANCEL Then
ToolsDBBtn.IsChecked = False ToolsDBBtn.IsChecked = False
WaterJetBtn.IsChecked = True WaterJetBtn.IsChecked = True
Return Return
ElseIf nPressedBtn = EgtWPFLib5.WaterjetDbWindowVM.SaveWndBtnEnum.NO Then ElseIf nPressedBtn = WaterjetDbWindowVM_OmagCUT.SaveWndBtnEnum.NO Then
m_WaterJetPageUC.WaterJetPage_Reinitialize() m_WaterJetPageUC.WaterJetPage_Reinitialize()
End If End If
' passo alla pagina Dati Macchina ' passo alla pagina Dati Macchina
@@ -285,12 +285,12 @@ Public Class MachinePageUC
m_ActiveMachinePage = MachinePages.MachiningDb m_ActiveMachinePage = MachinePages.MachiningDb
Case MachinePages.WaterJet Case MachinePages.WaterJet
' Verifica ed eventuale salvataggio Db Waterjet ' Verifica ed eventuale salvataggio Db Waterjet
Dim nPressedBtn As Integer = DirectCast(m_WaterJetPageUC.DataContext, EgtWPFLib5.WaterjetDbWindowVM).CloseWaterjetDb_OmagCut(m_MainWindow) Dim nPressedBtn As Integer = DirectCast(m_WaterJetPageUC.DataContext, WaterjetDbWindowVM_OmagCUT).CloseWaterjetDb_OmagCut(m_MainWindow)
If nPressedBtn = EgtWPFLib5.WaterjetDbWindowVM.SaveWndBtnEnum.CANCEL Then If nPressedBtn = WaterjetDbWindowVM_OmagCUT.SaveWndBtnEnum.CANCEL Then
MachiningDBBtn.IsChecked = False MachiningDBBtn.IsChecked = False
WaterJetBtn.IsChecked = True WaterJetBtn.IsChecked = True
Return Return
ElseIf nPressedBtn = EgtWPFLib5.WaterjetDbWindowVM.SaveWndBtnEnum.NO Then ElseIf nPressedBtn = WaterjetDbWindowVM_OmagCUT.SaveWndBtnEnum.NO Then
m_WaterJetPageUC.WaterJetPage_Reinitialize() m_WaterJetPageUC.WaterJetPage_Reinitialize()
End If End If
' passo alla pagina Dati Macchina ' passo alla pagina Dati Macchina
@@ -358,12 +358,12 @@ Public Class MachinePageUC
PolishingsBtn.IsChecked = True PolishingsBtn.IsChecked = True
Case MachinePages.WaterJet Case MachinePages.WaterJet
' Verifica ed eventuale salvataggio Db Waterjet ' Verifica ed eventuale salvataggio Db Waterjet
Dim nPressedBtn As Integer = DirectCast(m_WaterJetPageUC.DataContext, EgtWPFLib5.WaterjetDbWindowVM).CloseWaterjetDb_OmagCut(m_MainWindow) Dim nPressedBtn As Integer = DirectCast(m_WaterJetPageUC.DataContext, WaterjetDbWindowVM_OmagCUT).CloseWaterjetDb_OmagCut(m_MainWindow)
If nPressedBtn = EgtWPFLib5.WaterjetDbWindowVM.SaveWndBtnEnum.CANCEL Then If nPressedBtn = WaterjetDbWindowVM_OmagCUT.SaveWndBtnEnum.CANCEL Then
PolishingsBtn.IsChecked = False PolishingsBtn.IsChecked = False
WaterJetBtn.IsChecked = True WaterJetBtn.IsChecked = True
Return Return
ElseIf nPressedBtn = EgtWPFLib5.WaterjetDbWindowVM.SaveWndBtnEnum.NO Then ElseIf nPressedBtn = WaterjetDbWindowVM_OmagCUT.SaveWndBtnEnum.NO Then
m_WaterJetPageUC.WaterJetPage_Reinitialize() m_WaterJetPageUC.WaterJetPage_Reinitialize()
End If End If
' passo alla pagina Dati Macchina ' passo alla pagina Dati Macchina
@@ -513,12 +513,12 @@ Public Class MachinePageUC
m_ActiveMachinePage = MachinePages.MachineCN m_ActiveMachinePage = MachinePages.MachineCN
Case MachinePages.WaterJet Case MachinePages.WaterJet
' Verifica ed eventuale salvataggio Db Waterjet ' Verifica ed eventuale salvataggio Db Waterjet
Dim nPressedBtn As Integer = DirectCast(m_WaterJetPageUC.DataContext, EgtWPFLib5.WaterjetDbWindowVM).CloseWaterjetDb_OmagCut(m_MainWindow) Dim nPressedBtn As Integer = DirectCast(m_WaterJetPageUC.DataContext, WaterjetDbWindowVM_OmagCUT).CloseWaterjetDb_OmagCut(m_MainWindow)
If nPressedBtn = EgtWPFLib5.WaterjetDbWindowVM.SaveWndBtnEnum.CANCEL Then If nPressedBtn = WaterjetDbWindowVM_OmagCUT.SaveWndBtnEnum.CANCEL Then
TestingPageBtn.IsChecked = False TestingPageBtn.IsChecked = False
WaterJetBtn.IsChecked = True WaterJetBtn.IsChecked = True
Return Return
ElseIf nPressedBtn = EgtWPFLib5.WaterjetDbWindowVM.SaveWndBtnEnum.NO Then ElseIf nPressedBtn = WaterjetDbWindowVM_OmagCUT.SaveWndBtnEnum.NO Then
m_WaterJetPageUC.WaterJetPage_Reinitialize() m_WaterJetPageUC.WaterJetPage_Reinitialize()
End If End If
' passo alla pagina Dati Macchina ' passo alla pagina Dati Macchina
@@ -593,12 +593,12 @@ Public Class MachinePageUC
m_ActiveMachinePage = MachinePages.Statistics m_ActiveMachinePage = MachinePages.Statistics
Case MachinePages.WaterJet Case MachinePages.WaterJet
' Verifica ed eventuale salvataggio Db Waterjet ' Verifica ed eventuale salvataggio Db Waterjet
Dim nPressedBtn As Integer = DirectCast(m_WaterJetPageUC.DataContext, EgtWPFLib5.WaterjetDbWindowVM).CloseWaterjetDb_OmagCut(m_MainWindow) Dim nPressedBtn As Integer = DirectCast(m_WaterJetPageUC.DataContext, WaterjetDbWindowVM_OmagCUT).CloseWaterjetDb_OmagCut(m_MainWindow)
If nPressedBtn = EgtWPFLib5.WaterjetDbWindowVM.SaveWndBtnEnum.CANCEL Then If nPressedBtn = WaterjetDbWindowVM_OmagCUT.SaveWndBtnEnum.CANCEL Then
StatisticsBtn.IsChecked = False StatisticsBtn.IsChecked = False
WaterJetBtn.IsChecked = True WaterJetBtn.IsChecked = True
Return Return
ElseIf nPressedBtn = EgtWPFLib5.WaterjetDbWindowVM.SaveWndBtnEnum.NO Then ElseIf nPressedBtn = WaterjetDbWindowVM_OmagCUT.SaveWndBtnEnum.NO Then
m_WaterJetPageUC.WaterJetPage_Reinitialize() m_WaterJetPageUC.WaterJetPage_Reinitialize()
End If End If
' passo alla pagina Dati Macchina ' passo alla pagina Dati Macchina
+1 -1
View File
@@ -36,7 +36,7 @@ Public Class StatisticsPageUC
DayTxBl.Text = sDay DayTxBl.Text = sDay
' Leggo il numero della settimana ' Leggo il numero della settimana
Dim nWeek As Integer = GetPrivateProfileInt(S_STATDATA, K_SD_WEEK, -1, m_MainWindow.GetIniFile()) Dim nWeek As Integer = GetPrivateProfileInt(S_STATDATA, K_SD_WEEK, -1, m_MainWindow.GetIniFile())
WeekTxBl.Text = ( nWeek + 1).ToString() WeekTxBl.Text = (nWeek).ToString()
' Leggo area pezzi del giorno ' Leggo area pezzi del giorno
Dim dDayParts As Double = GetPrivateProfileDouble(S_STATDATA, K_SD_DAYPARTS, 0, m_MainWindow.GetIniFile()) Dim dDayParts As Double = GetPrivateProfileDouble(S_STATDATA, K_SD_DAYPARTS, 0, m_MainWindow.GetIniFile())
+3 -3
View File
@@ -8,18 +8,18 @@ Public Class WaterJetPageUC
' Riferimento alla MainWindow ' Riferimento alla MainWindow
Private m_MainWindow As MainWindow = DirectCast(Application.Current.MainWindow, MainWindow) Private m_MainWindow As MainWindow = DirectCast(Application.Current.MainWindow, MainWindow)
Private m_refWaterjetDbWindowVM As EgtWPFLib5.WaterjetDbWindowVM Private m_refWaterjetDbWindowVM As WaterjetDbWindowVM_OmagCUT
Private m_sOrigNewMaterial As String = String.Empty Private m_sOrigNewMaterial As String = String.Empty
Private m_sOrigNewSubMaterial As String = String.Empty Private m_sOrigNewSubMaterial As String = String.Empty
Private Sub WaterJetPage_Initialized(sender As Object, e As EventArgs) Private Sub WaterJetPage_Initialized(sender As Object, e As EventArgs)
m_refWaterjetDbWindowVM = New EgtWPFLib5.WaterjetDbWindowVM(m_MainWindow.m_CurrentMachine.sMachDir) m_refWaterjetDbWindowVM = New WaterjetDbWindowVM_OmagCUT(m_MainWindow.m_CurrentMachine.sMachDir)
Me.DataContext = m_refWaterjetDbWindowVM Me.DataContext = m_refWaterjetDbWindowVM
EgtWPFLib.Utility.MainWindow = m_MainWindow EgtWPFLib.Utility.MainWindow = m_MainWindow
End Sub End Sub
Public Sub WaterJetPage_Reinitialize() Public Sub WaterJetPage_Reinitialize()
m_refWaterjetDbWindowVM = New EgtWPFLib5.WaterjetDbWindowVM(m_MainWindow.m_CurrentMachine.sMachDir) m_refWaterjetDbWindowVM = New WaterjetDbWindowVM_OmagCUT(m_MainWindow.m_CurrentMachine.sMachDir)
Me.DataContext = m_refWaterjetDbWindowVM Me.DataContext = m_refWaterjetDbWindowVM
End Sub End Sub
+60
View File
@@ -0,0 +1,60 @@
Imports System.Collections.ObjectModel
Imports System.IO
Imports EgtUILib
Imports EgtWPFLib5
Imports EgtWPFLib
Public Class WaterjetDbWindowVM_OmagCUT
Inherits EgtWPFLib5.WaterjetDbWindowVM
Public Function CloseWaterjetDb_OmagCut(MainWindow As Window) As SaveWndBtnEnum
If bIsModified Then
Dim SaveWjDbWnd As New EgtMsgBox(MainWindow, "", EgtMsg(31759), EgtMsgBox.Buttons.YES_NO_CANCEL, EgtMsgBox.Icons.NULL)
Select Case SaveWjDbWnd.m_nPressedBtn
Case 1 ' Yes
WriteWaterjetDb()
bIsModified = False
Return SaveWndBtnEnum.YES
Case 2 ' No
Return SaveWndBtnEnum.NO
Case Else ' Cancel
Return SaveWndBtnEnum.CANCEL
End Select
Else
Dim bExitFor As Boolean = False
For Each Material As EgtWPFLib5.WjMaterial In MaterialList
If Not IsNothing(Material.SubMaterialList) Then
For Each SubMaterial As EgtWPFLib5.WjSubMaterial In Material.SubMaterialList
If Not IsNothing(SubMaterial.ParamList) Then
For Each QParam As EgtWPFLib5.WjParam In SubMaterial.ParamList
bExitFor = QParam.IsModified()
If bExitFor Then Exit For
Next
End If
If bExitFor Then Exit For
Next
End If
If bExitFor Then Exit For
Next
If bExitFor Then
Dim SaveWjDbWnd As New EgtMsgBox(MainWindow, "", EgtMsg(31759), EgtMsgBox.Buttons.YES_NO_CANCEL, EgtMsgBox.Icons.NULL)
Select Case SaveWjDbWnd.m_nPressedBtn
Case 1 ' Yes
WriteWaterjetDb()
bIsModified = False
Return SaveWndBtnEnum.YES
Case 2 ' No
Return SaveWndBtnEnum.NO
Case Else ' Cancel
Return SaveWndBtnEnum.CANCEL
End Select
End If
End If
Return SaveWndBtnEnum.YES
End Function
Sub New(sMachDir As String)
MyBase.New(sMachDir)
End Sub
End Class
+8 -6
View File
@@ -323,8 +323,8 @@ Class MainWindow
' Verifico abilitazione nesting automatico ' Verifico abilitazione nesting automatico
m_bAutoNest = Not String.IsNullOrWhiteSpace(sNestKey) m_bAutoNest = Not String.IsNullOrWhiteSpace(sNestKey)
' Recupero opzioni della chiave ' Recupero opzioni della chiave
Dim bKey As Boolean = EgtGetKeyLevel(9423, 2405, 1, m_nKeyLevel) And Dim bKey As Boolean = EgtGetKeyLevel(9423, 2406, 1, m_nKeyLevel) And
EgtGetKeyOptions(9423, 2405, 1, m_nKeyOptions) EgtGetKeyOptions(9423, 2406, 1, m_nKeyOptions)
' Verifico abilitazione prodotto ' Verifico abilitazione prodotto
Dim bProd As Boolean = GetKeyOption(KEY_OPT.CUT_BASE) Dim bProd As Boolean = GetKeyOption(KEY_OPT.CUT_BASE)
' Inizializzazione generale di EgtInterface ' Inizializzazione generale di EgtInterface
@@ -1092,10 +1092,10 @@ Class MainWindow
Case MachinePageUC.MachinePages.WaterJet Case MachinePageUC.MachinePages.WaterJet
' Verifica ed eventuale salvataggio Db Waterjet ' Verifica ed eventuale salvataggio Db Waterjet
Dim m_MainWindow As MainWindow = DirectCast(Application.Current.MainWindow, MainWindow) Dim m_MainWindow As MainWindow = DirectCast(Application.Current.MainWindow, MainWindow)
Dim nPressedBtn As Integer = DirectCast(m_MachinePageUC.m_WaterJetPageUC.DataContext, EgtWPFLib5.WaterjetDbWindowVM).CloseWaterjetDb_OmagCut(m_MainWindow) Dim nPressedBtn As Integer = DirectCast(m_MachinePageUC.m_WaterJetPageUC.DataContext, WaterjetDbWindowVM_OmagCUT).CloseWaterjetDb_OmagCut(m_MainWindow)
If nPressedBtn = EgtWPFLib5.WaterjetDbWindowVM.SaveWndBtnEnum.CANCEL Then If nPressedBtn = WaterjetDbWindowVM_OmagCUT.SaveWndBtnEnum.CANCEL Then
Return False Return False
ElseIf nPressedBtn = EgtWPFLib5.WaterjetDbWindowVM.SaveWndBtnEnum.NO Then ElseIf nPressedBtn = WaterjetDbWindowVM_OmagCUT.SaveWndBtnEnum.NO Then
m_MachinePageUC.m_WaterJetPageUC.WaterJetPage_Reinitialize() m_MachinePageUC.m_WaterJetPageUC.WaterJetPage_Reinitialize()
End If End If
End Select End Select
@@ -1825,7 +1825,9 @@ Class MainWindow
m_CurrentProjectPageUC.SetInfoMessage(EgtMsg(90327)) 'Inseriti Nuovi Pezzi Rovinati m_CurrentProjectPageUC.SetInfoMessage(EgtMsg(90327)) 'Inseriti Nuovi Pezzi Rovinati
Dim nPartId As Integer = EgtGetLastPart() Dim nPartId As Integer = EgtGetLastPart()
For nI As Integer = 1 To nRuPartsCnt For nI As Integer = 1 To nRuPartsCnt
EgtRemoveInfo( nPartId, INFO_PARTOK) EgtRemoveInfo(nPartId, INFO_PARTOK)
' ricreo la lista delle famiglie di pezzi presenti in parcheggio
m_CadCutPageUC.m_NestPage.GetFamilyGroupInPark()
m_CadCutPageUC.m_NestPage.StoreOnePart(nPartId, True) m_CadCutPageUC.m_NestPage.StoreOnePart(nPartId, True)
nPartId = EgtGetPrevPart(nPartId) nPartId = EgtGetPrevPart(nPartId)
Next Next
+2 -2
View File
@@ -62,5 +62,5 @@ Imports System.Windows
' by using the '*' as shown below: ' by using the '*' as shown below:
' <Assembly: AssemblyVersion("1.0.*")> ' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("2.4.5.4")> <Assembly: AssemblyVersion("2.4.6.1")>
<Assembly: AssemblyFileVersion("2.4.5.4")> <Assembly: AssemblyFileVersion("2.4.6.1")>
+1
View File
@@ -205,6 +205,7 @@
<Compile Include="Machine\ImportExportToolWD.xaml.vb"> <Compile Include="Machine\ImportExportToolWD.xaml.vb">
<DependentUpon>ImportExportToolWD.xaml</DependentUpon> <DependentUpon>ImportExportToolWD.xaml</DependentUpon>
</Compile> </Compile>
<Compile Include="Machine\WaterjetDbWindowVM.vb" />
<Compile Include="Machine\WaterJetPageVM.vb" /> <Compile Include="Machine\WaterJetPageVM.vb" />
<Compile Include="Machine\WaterJetPageUC.xaml.vb"> <Compile Include="Machine\WaterJetPageUC.xaml.vb">
<DependentUpon>WaterJetPageUC.xaml</DependentUpon> <DependentUpon>WaterJetPageUC.xaml</DependentUpon>
+1 -1
View File
@@ -753,7 +753,7 @@ Public Class ProjectMgrUC
Else Else
m_MainWindow.m_CadCutPageUC.m_NestPage.m_bSelectCurv = False m_MainWindow.m_CadCutPageUC.m_NestPage.m_bSelectCurv = False
EgtDeselectObj(m_MainWindow.m_CadCutPageUC.m_NestPage.m_CurrSelectedCurv) EgtDeselectObj(m_MainWindow.m_CadCutPageUC.m_NestPage.m_CurrSelectedCurv)
EgtDeselectObj(m_MainWindow.m_CadCutPageUC.m_NestPage.m_CurrSelectedSawCurv) EgtResetMark(m_MainWindow.m_CadCutPageUC.m_NestPage.m_CurrSelectedSawCurv)
End If End If
' aggiorno il disegno ' aggiorno il disegno
EgtDraw() EgtDraw()