Compare commits

..

5 Commits

Author SHA1 Message Date
Nicola Pievani 55ef0b7fcb Merge branch 'master' into Features/Conferma_Ciclo_Start 2021-05-27 19:41:53 +02:00
Nicola Pievani 4ded60f9f7 Merge branch 'Features/Conferma_Ciclo_Start' into develop 2021-05-13 17:25:43 +02:00
Nicola Pievani 9e830bf2a5 Finestra conferma Ciclo Start 2021-05-13 17:23:56 +02:00
Nicola Pievani 1c84885a44 Miglioramento grafica 2021-05-13 17:21:53 +02:00
Nicola Pievani f2694511e5 Modalità di avvio in OptioPage 2021-05-13 14:25:20 +02:00
64 changed files with 1065 additions and 2771 deletions
+2 -23
View File
@@ -442,7 +442,7 @@ Friend Module CamAuto
Dim sInfo As String = String.Empty
If EgtGetInfo(nOperId, INFO_MCH_OTHMID, sInfo) Then
Dim sItems() As String = sInfo.Split(",".ToCharArray)
For Each sId As String In sItems
For Each sId In sItems
Dim nId As Integer = 0
StringToInt(sId, nId)
If nId > 0 Then vOthId.Add(nId)
@@ -660,7 +660,7 @@ Friend Module CamAuto
Dim sInfo As String = String.Empty
If EgtGetInfo(nMchId, INFO_MCH_OTHMID, sInfo) Then
Dim sItems() As String = sInfo.Split(",".ToCharArray)
For Each sId2 As String In sItems
For Each sId2 In sItems
' Indice gruppo di preview nella lavorazione
Dim nId2 As Integer = GDB_ID.NULL
StringToInt(sId2, nId2)
@@ -699,31 +699,11 @@ Friend Module CamAuto
Return True
End Function
Friend Function IsExitPreCut(nOperId As Integer) As Boolean
' Deve essere una lavorazione
If Not EgtSetCurrMachining(nOperId) Then Return False
' Verifico presenza Info di PreCut
Return EgtExistsInfo(nOperId, INFO_MCH_EPC)
End Function
Friend Function RemoveAllExitPreCuts() As Boolean
Dim nOperId As Integer = EgtGetFirstOperation()
While nOperId <> GDB_ID.NULL
Dim nNextOperId As Integer = EgtGetNextOperation( nOperId)
If EgtGetType( nOperId) <> MCH_OY.DISP AndAlso EgtExistsInfo(nOperId, INFO_MCH_EPC) Then
EgtRemoveOperation( nOperId)
End If
nOperId = nNextOperId
End While
Return True
End Function
Private Function SetLuaStandardCamParams(Optional bDripOk As Boolean = True) As Boolean
Dim sSawMch As String = m_MainWindow.m_CurrentMachine.sCurrSawing
Dim sMillMch As String = m_MainWindow.m_CurrentMachine.sCurrMilling
Dim sDrillMch As String = m_MainWindow.m_CurrentMachine.sCurrDrilling
Dim sWaterJetMch As String = m_MainWindow.m_CurrentMachine.sCurrWaterJetting
Dim sPocketMch As String = m_MainWindow.m_CurrentMachine.sCurrPocketing
Dim sDripSawMch As String = If(bDripOk, m_MainWindow.m_CurrentMachine.sCurrDripSawing, "")
Dim sDripDrillMch As String = If(bDripOk, m_MainWindow.m_CurrentMachine.sCurrDripDrilling, "")
Dim dReducedDepth As Double = GetPrivateProfileDouble(S_MACH_NEST, K_MACH_REDUCEDDEPTH, 1, m_MainWindow.GetMachIniFile())
@@ -738,7 +718,6 @@ Friend Module CamAuto
EgtLuaSetGlobStringVar("CAM.SAWMCH", sSawMch)
EgtLuaSetGlobStringVar("CAM.MILLMCH", sMillMch)
EgtLuaSetGlobStringVar("CAM.DRILLMCH", sDrillMch)
EgtLuaSetGlobStringVar("CAM.POCKETMCH", sPocketMch)
EgtLuaSetGlobStringVar("CAM.WATERJETMCH", sWaterJetMch)
EgtLuaSetGlobStringVar("CAM.DRIPSAWMCH", sDripSawMch)
EgtLuaSetGlobStringVar("CAM.DRIPDRILLMCH", sDripDrillMch)
+1 -1
View File
@@ -568,7 +568,7 @@ Public Class CSVPage
' Verifico che il pezzo appartenga a questo Csv
If String.Compare(sCsvPath, m_sCsvPath, True) = 0 Then
' Cerco il pezzo nella lista dei pezzi
For i As Integer = 1 To m_CsvPartList.Count()
For i = 1 To m_CsvPartList.Count()
Dim CurrPart As CsvPart = m_CsvPartList(i - 1)
If String.Compare(sName, CurrPart.m_sName, True) = 0 Then
' Se nel grezzo
+1 -1
View File
@@ -25,7 +25,7 @@
<TextBlock Name="ValueTxbl" Grid.Column="1" Grid.Row="0"
Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<EgtWPFLib:EgtTextBox Name="ValueTxBx" Grid.Column="1" Grid.Row="1"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<Grid Name="ButtonsGrid" Grid.Column="1" Grid.Row="3" Grid.RowSpan="1">
<Grid.ColumnDefinitions>
+2 -7
View File
@@ -34,15 +34,10 @@ Public Class EditValueWD
End Sub
Private Sub EditValueWD_Rendered(sender As Object, e As EventArgs) Handles Me.ContentRendered
' ValueTxBx.Focus()
' ValueTxBx.OpenKeyboard(ValueTxBx, ValueTxBx)
ValueTxBx.Focus()
ValueTxBx.OpenKeyboard(ValueTxBx, ValueTxBx)
End Sub
'Private Sub ValueTxBx_Closed(Sender As Object, e As EventArgs) Handles ValueTxBx.EgtClosed
' m_sValue = ValueTxBx.Text
' DialogResult = True
'End Sub
Private Sub OkBtn_Click(sender As Object, e As RoutedEventArgs) Handles OkBtn.Click
m_sValue = ValueTxBx.Text
DialogResult = True
+1 -1
View File
@@ -41,7 +41,7 @@ Public Class FastGridSlabManager
' Recupero parametri per nesting
m_MainWindow.m_CadCutPageUC.m_NestPage.LoadParams()
' Recupero dimensioni pezzi da ini
For Index As Integer = 1 To 5
For Index = 1 To 5
GetPieceDimensions(Index)
Next
' Ne imposto i valori
+1 -1
View File
@@ -507,7 +507,7 @@ Public Class MoveRawPartPage
If AngRotList.Count > 0 Then
Dim bOkRotate As Boolean = False
' allora provo a ruotare il pezzo nel verso di rotazione della ventosa
For Each AngStep As Double In AngRotList
For Each AngStep In AngRotList
If EgtRotateRawPart(nRawId, Vector3d.Z_AX(), -AngStep) Then
If Not EgtMoveToCornerRawPart(nRawId, ptRef, nCorn) Then
' riposiziono il pezzo come era prima
+2 -2
View File
@@ -848,7 +848,7 @@ Public Class NestPageUC
Private Sub InsertPartBtn_Click(sender As Object, e As RoutedEventArgs) Handles InsertPartBtn.Click
' Se inserimento automatico
If GetPrivateProfileInt( S_NEST, K_AUTOMATICOPTIMIZE, 0, m_MainWindow.GetIniFile()) <> 0 And
If GetPrivateProfileInt( S_MACH_NEST, K_MACH_NEST_AUTOMATIC, 0, m_MainWindow.GetMachIniFile()) <> 0 And
m_MainWindow.GetAutoNestingOption() Then
AutomaticInsert()
' altrimenti inserimento standard
@@ -933,7 +933,7 @@ Public Class NestPageUC
EnableReferenceRegion(bAligned)
' Eseguo nesting automatico
Dim bOpimizeOnX As Boolean = ( GetPrivateProfileInt( S_NEST, K_AUTOMATICOPTIMIZE, 2, m_MainWindow.GetIniFile()) = 1)
Dim bGuillotineMode As Boolean = (GetPrivateProfileInt(S_MACH_NEST, K_MACH_NEST_GHIGLIOTTINA, 0, m_MainWindow.GetMachIniFile()) <> 0)
Dim bGuillotineMode As Boolean = bAligned
Dim nAutomaticMaxTime As Integer = GetPrivateProfileInt( S_NEST, K_AUTOMATICMAXTIME, 20, m_MainWindow.GetIniFile())
Dim dPartTime As Double = If( bGuillotineMode, 1.0, 0.5)
Dim nMaxTime As Integer = Math.Min( 2.0 + dPartTime * vParts.Count(), nAutomaticMaxTime)
+5 -5
View File
@@ -52,7 +52,7 @@ Public Module SplitAuto
Dim sInfo As String = String.Empty
If EgtGetInfo(nOperId, INFO_MCH_OTHMID, sInfo) Then
Dim sItems() As String = sInfo.Split(",".ToCharArray)
For Each sId As String In sItems
For Each sId In sItems
Dim nId As Integer = 0
StringToInt(sId, nId)
If nId > 0 Then Mach.m_vOthId.Add(nId)
@@ -268,7 +268,7 @@ Public Module SplitAuto
Dim sInfo As String = String.Empty
If EgtGetInfo(nOpeId, INFO_MCH_OTHMID, sInfo) Then
Dim sItems() As String = sInfo.Split(",".ToCharArray)
For Each sId As String In sItems
For Each sId In sItems
Dim nId As Integer = GDB_ID.NULL
StringToInt(sId, nId)
Dim nPvId2 As Integer = GDB_ID.NULL
@@ -298,7 +298,7 @@ Public Module SplitAuto
Dim sInfo As String = String.Empty
If EgtGetInfo(nOpeId, INFO_MCH_OTHMID, sInfo) Then
Dim sItems() As String = sInfo.Split(",".ToCharArray)
For Each sId As String In sItems
For Each sId In sItems
Dim nId As Integer = GDB_ID.NULL
StringToInt(sId, nId)
Dim nPvId2 As Integer = GDB_ID.NULL
@@ -384,7 +384,7 @@ Public Module SplitAuto
Dim sInfo As String = String.Empty
If EgtGetInfo(nId, INFO_MCH_OTHMID, sInfo) Then
Dim sItems() As String = sInfo.Split(",".ToCharArray)
For Each sId2 As String In sItems
For Each sId2 In sItems
Dim nId2 As Integer = 0
StringToInt(sId2, nId2)
If nId2 > 0 Then EgtChangeOperationPhase(nId2, nNewPhase)
@@ -811,7 +811,7 @@ Public Module SplitAuto
End If
Next
' Cancello curve offset
For i As Integer = 0 To nCount - 1
For i = 0 To nCount - 1
EgtErase(nOffsId + i)
Next
Return (Not bInterf)
+116 -208
View File
@@ -73,8 +73,6 @@ Public Class SplitPageUC
' Deseleziono pezzi
EgtDeselectAll()
EgtZoom(ZM.ALL)
' Elimino eventuali pretagli su uscite
RemoveAllExitPreCuts()
' Se non sono in sola visualizzazione, faccio ordine automatico delle lavorazioni
If Not m_bShow Then
If m_MainWindow.m_CurrentMachine.WaterJettingActive Then ResetAllMachinings()
@@ -153,10 +151,6 @@ Public Class SplitPageUC
If Mach.m_sLay = NAME_ONPATH Then AddTopText( sText)
If Mach.m_bPause Then AddPauseText( sText)
m_ItemList.Add(New NameIdLsBxItem(sText, i - 1, Mach.m_bEnabled))
ElseIf Mach.m_nType = MCH_OY.POCKETING Then ' Svuotatura
Dim sText As String = EgtMsg(90796) & " " & i.ToString()
If Mach.m_bPause Then AddPauseText(sText)
m_ItemList.Add(New NameIdLsBxItem(sText, i - 1, Mach.m_bEnabled))
ElseIf Mach.m_nType = MCH_OY.WATERJETTING Then ' Waterjet
Dim sText As String = EgtMsg(90797) & " " & i.ToString()
If Mach.m_bPause Then AddPauseText(sText)
@@ -182,7 +176,7 @@ Public Class SplitPageUC
If MachiningLsBx.SelectedItems.Count = 0 Then Return
' creo lista ordinata dei selezionati
Dim ItemList As New List(Of NameIdLsBxItem)
For Each Item As NameIdLsBxItem In MachiningLsBx.SelectedItems
For Each Item In MachiningLsBx.SelectedItems
ItemList.Add(Item)
Next
ItemList.Sort(Function(x, y) Comparer(Of Integer).Default.Compare(m_ItemList.IndexOf(x), m_ItemList.IndexOf(y)))
@@ -194,7 +188,7 @@ Public Class SplitPageUC
If MachiningLsBx.SelectedItems.Count = 1 Then
bContigus = True
Else
For Each Item As NameIdLsBxItem In ItemList
For Each Item In ItemList
If Item.Ind = LastSel.Ind + 1 Or Item.Ind = LastSel.Ind - 1 Then
bContigus = True
End If
@@ -207,7 +201,7 @@ Public Class SplitPageUC
End If
' resetto marcatura lavorazioni
If m_CurrFirstInd > -1 Then
For Index As Integer = m_CurrFirstInd To m_CurrLastInd
For Index = m_CurrFirstInd To m_CurrLastInd
MarkMachining(m_ItemList(Index).Ind, False)
Next
End If
@@ -215,7 +209,7 @@ Public Class SplitPageUC
m_CurrFirstInd = -1
m_CurrLastInd = -1
' marco lavorazioni selezionate
For Each Item As NameIdLsBxItem In ItemList
For Each Item In ItemList
MarkMachining(Item.Ind, True)
Next
m_CurrFirstInd = m_ItemList.IndexOf(ItemList(0))
@@ -243,7 +237,7 @@ Public Class SplitPageUC
m_ItemList.Move(m_CurrLastInd + 1, m_CurrFirstInd)
MoveMachining(m_CurrLastInd + 1, m_CurrFirstInd)
' aggiorno gli indici degli elementi coinvolti nello spostamento (selezionati e non)
For index As Integer = m_CurrLastInd + 1 To m_CurrFirstInd Step -1
For index = m_CurrLastInd + 1 To m_CurrFirstInd Step -1
m_ItemList(index).Ind = index
Next
m_CurrFirstInd += 1
@@ -253,7 +247,7 @@ Public Class SplitPageUC
m_ItemList.Move(m_CurrFirstInd - 1, m_CurrLastInd)
MoveMachining(m_CurrFirstInd - 1, m_CurrLastInd)
' aggiorno gli indici degli elementi coinvolti nello spostamento (selezionati e non)
For index As Integer = m_CurrFirstInd - 1 To m_CurrLastInd
For index = m_CurrFirstInd - 1 To m_CurrLastInd
m_ItemList(index).Ind = index
Next
m_CurrFirstInd -= 1
@@ -272,7 +266,7 @@ Public Class SplitPageUC
Private Sub OnOffBtn_Click(sender As Object, e As RoutedEventArgs) Handles OnOffBtn.Click
If m_CurrFirstInd = -1 Then Return
For Index As Integer = m_CurrFirstInd To m_CurrLastInd
For Index = m_CurrFirstInd To m_CurrLastInd
Dim nI As Integer = m_ItemList(Index).Ind
If m_MachiningList(nI).m_bEnabled Then
m_MachiningList(nI).m_bEnabled = False
@@ -326,7 +320,7 @@ Public Class SplitPageUC
Private Sub CutBtn_Click(sender As Object, e As RoutedEventArgs) Handles CutBtn.Click
If m_CurrFirstInd = -1 Then Return
Dim bGenModif As Boolean = False
For Index As Integer = m_CurrFirstInd To m_CurrLastInd
For Index = m_CurrFirstInd To m_CurrLastInd
Dim nI As Integer = m_ItemList(Index).Ind
' Provo ad entrambi gli estremi
Dim bModif As Boolean = AdjustBothCuts(nI)
@@ -351,7 +345,7 @@ Public Class SplitPageUC
Private Sub CutEndBtn_Click(sender As Object, e As RoutedEventArgs) Handles CutEndBtn.Click
If m_CurrFirstInd = -1 Then Return
Dim bGenModif As Boolean = False
For Index As Integer = m_CurrFirstInd To m_CurrLastInd
For Index = m_CurrFirstInd To m_CurrLastInd
Dim nI As Integer = m_ItemList(Index).Ind
' Eseguo
If AdjustEndCut(nI) Then
@@ -370,7 +364,7 @@ Public Class SplitPageUC
Private Sub CutStartBtn_Click(sender As Object, e As RoutedEventArgs) Handles CutStartBtn.Click
If m_CurrFirstInd = -1 Then Return
Dim bGenModif As Boolean = False
For Index As Integer = m_CurrFirstInd To m_CurrLastInd
For Index = m_CurrFirstInd To m_CurrLastInd
Dim nI As Integer = m_ItemList(Index).Ind
' Eseguo
If AdjustStartCut(nI) Then
@@ -498,7 +492,7 @@ Public Class SplitPageUC
Private Sub OutCenStartBtn_Click(sender As Object, e As RoutedEventArgs) Handles OutCenStartBtn.Click
If m_CurrFirstInd = -1 Then Return
Dim bGenModif As Boolean = False
For Index As Integer = m_CurrFirstInd To m_CurrLastInd
For Index = m_CurrFirstInd To m_CurrLastInd
Dim nI As Integer = m_ItemList(Index).Ind
If m_MachiningList(nI).m_sLay = NAME_OUTLOOP Then
EgtSetCurrMachining(m_MachiningList(nI).m_nId)
@@ -596,7 +590,7 @@ Public Class SplitPageUC
Private Sub OutCenEndBtn_Click(sender As Object, e As RoutedEventArgs) Handles OutCenEndBtn.Click
If m_CurrFirstInd = -1 Then Return
Dim bGenModif As Boolean = False
For Index As Integer = m_CurrFirstInd To m_CurrLastInd
For Index = m_CurrFirstInd To m_CurrLastInd
Dim nI As Integer = m_ItemList(Index).Ind
If m_MachiningList(nI).m_sLay = NAME_OUTLOOP Then
EgtSetCurrMachining(m_MachiningList(nI).m_nId)
@@ -734,55 +728,33 @@ Public Class SplitPageUC
End Sub
Private Sub ModifStartBtn_Click(sender As Object, e As RoutedEventArgs) Handles ModifStartBtn.Click
' abilito la finestra per inserire i valori solo per il primo elemento della lista (di default tutti gli altri oggetti assumono lo stesso valore)
Dim bFirstInd As Boolean = True
' elenco delle variabili : MCH_MY.SAWING/MCH_MY.MILLING
Dim dUsal As Double = 0
' elenco delle variabili : MCH_MY.WATERJETTING
Dim dWJAddLen As Double = 0
Dim bWJLiHole As Boolean = True
Dim nWJTangDist As Double = 0
Dim nWJPerpDist As Double = 0
Dim nWJLeadInType As Integer = 0
' Recupero la lavorazione corrente
If m_CurrFirstInd = -1 Then Return
Dim bGenModif As Boolean = False
For Index As Integer = m_CurrFirstInd To m_CurrLastInd
For Index = m_CurrFirstInd To m_CurrLastInd
Dim nI As Integer = m_ItemList(Index).Ind
Dim nOperId As Integer = m_MachiningList(nI).m_nId
Dim nMachiningType As Integer = EgtGetOperationType(nOperId)
' Se taglio con lama
If nMachiningType = MCH_MY.SAWING And
(m_MachiningList(nI).m_bIsLine Or m_MachiningList(nI).m_dPrevAng > FL_ARC_ANG_MIN Or m_MachiningList(nI).m_sLay = NAME_ONPATH) Then
' leggo il valore salvato nella geometria
( m_MachiningList(nI).m_bIsLine Or m_MachiningList(nI).m_dPrevAng > FL_ARC_ANG_MIN Or m_MachiningList(nI).m_sLay = NAME_ONPATH) Then
Dim dOrigUsal As Double = 0
EgtGetInfo(nOperId, INFO_MCH_USER_SAL, dOrigUsal)
' ------------------ INIZIO PREPARAZIONE TASTIERINO VIRTUALE ------------------
If bFirstInd Then
' Dialogo richiesta valore
Dim ValWnd As New EditValueWD(m_MainWindow, EgtMsg(MSG_SPLITPAGEUC + 35)) ' Allungamento
ValWnd.SetVal(dOrigUsal)
If Not ValWnd.ShowDialog() Then Return
' carico il valore letto dal testierino virtuale
dUsal = ValWnd.GetVal()
' comunico che ho letto il primo dato
bFirstInd = False
End If
' ------------------ FINE PREPARAZIONE TASTIERINO VIRTUALE ------------------
' Dialogo richiesta valore
Dim ValWnd As New EditValueWD(m_MainWindow, EgtMsg(MSG_SPLITPAGEUC + 35)) ' Allungamento
ValWnd.SetVal(dOrigUsal)
If Not ValWnd.ShowDialog() Then Return
Dim dUsal As Double = ValWnd.GetVal()
' Se c'è limite alla lunghezza libera
If m_MachiningList(nI).m_dStartFreeLen < FREELEN_INF Then
' Recupero sicurezza in corner interno
Dim dCornerSafety As Double = Math.Max(GetPrivateProfileDouble(S_MACH_NEST, K_MACH_SAFE_LEN_INTCORNER, 1, m_MainWindow.GetMachIniFile()), 10 * EPS_SMALL)
' Recupero lunghezza baffo del taglio
Dim nPvId As Integer = GDB_ID.NULL
EgtGetInfo(EgtGetFirstNameInGroup(nOperId, NAME_PREVIEW), INFO_PV_ONPART_ID, nPvId)
EgtGetInfo( EgtGetFirstNameInGroup( nOperId, NAME_PREVIEW), INFO_PV_ONPART_ID, nPvId)
Dim dDT As Double = 0
EgtGetInfo(EgtGetFirstGroupInGroup(nPvId), "DT", dDT)
dUsal = Math.Min(dUsal, m_MachiningList(nI).m_dStartFreeLen - dDT - dCornerSafety)
EgtGetInfo( EgtGetFirstGroupInGroup( nPvId), "DT", dDT)
dUsal = Math.Min( dUsal, m_MachiningList(nI).m_dStartFreeLen - dDT - dCornerSafety)
End If
' Modifica della lavorazione
EgtSetCurrMachining(nOperId)
@@ -797,26 +769,15 @@ Public Class SplitPageUC
ColorMachining(m_MachiningList(nI))
ColorNumberArrow(nI)
bGenModif = True
' se altrimenti fresatura sopra
' se altrimenti fresatura sopra
ElseIf nMachiningType = MCH_MY.MILLING And m_MachiningList(nI).m_sLay = NAME_ONPATH Then
' leggo il valore salvato nella geometria
Dim dOrigUsal As Double = 0
EgtGetInfo(nOperId, INFO_MCH_USER_SAL, dOrigUsal)
If bFirstInd Then
' ------------------ INIZIO PREPARAZIONE TASTIERINO VIRTUALE ------------------
' Dialogo richiesta valore
Dim ValWnd As New EditValueWD(m_MainWindow, EgtMsg(MSG_SPLITPAGEUC + 35)) ' Allungamento
ValWnd.SetVal(dOrigUsal)
If Not ValWnd.ShowDialog() Then Return
' carico il valore letto dal testierino virtuale
dUsal = ValWnd.GetVal()
' comunico che ho letto il primo dato
bFirstInd = False
End If
' ------------------ FINE PREPARAZIONE TASTIERINO VIRTUALE ------------------
' Dialogo richiesta valore
Dim ValWnd As New EditValueWD(m_MainWindow, EgtMsg(MSG_SPLITPAGEUC + 35)) ' Allungamento
ValWnd.SetVal(dOrigUsal)
If Not ValWnd.ShowDialog() Then Return
Dim dUsal As Double = ValWnd.GetVal()
' Modifica della lavorazione
EgtSetCurrMachining(nOperId)
Dim dAddLen As Double = 0
@@ -825,59 +786,41 @@ Public Class SplitPageUC
EgtSetInfo(nOperId, INFO_MCH_USER_SAL, dUsal)
UpdateMachiningPreview(m_MachiningList(nI).m_nId, True)
bGenModif = True
' se altrimenti getto d'acqua
' se altrimenti getto d'acqua
ElseIf nMachiningType = MCH_MY.WATERJETTING Then
' ------------------ INIZIO PREPARAZIONE TASTIERINO VIRTUALE ------------------
If bFirstInd Then
' Recupero i valori attuali della lavorazione
Dim bOriginalIsLeadIn As Boolean = True
Dim dOriginalAddLen As Double = 0
Dim bOriginalLiHole As Boolean = True
Dim nOriginalTangDist As Double = 0
Dim nOriginalPerpDist As Double = 0
Dim nOriginalLeadInType As Integer = 0
EgtSetCurrMachining(nOperId)
EgtGetMachiningParam(MCH_MP.STARTADDLEN, dOriginalAddLen)
EgtGetMachiningParam(MCH_MP.LIHOLE, bOriginalLiHole)
EgtGetMachiningParam(MCH_MP.LITANG, nOriginalTangDist)
EgtGetMachiningParam(MCH_MP.LIPERP, nOriginalPerpDist)
EgtGetMachiningParam(MCH_MP.LEADINTYPE, nOriginalLeadInType)
' Dialogo richiesta valori
Dim ModifStartWnd As New ModifStartEndWD(m_MainWindow, EgtMsg(MSG_SPLITPAGEUC + 33), bOriginalIsLeadIn, nOperId) ' Inizio Modif.
ModifStartWnd.SetElongation(dOriginalAddLen)
ModifStartWnd.SetHole(bOriginalLiHole)
ModifStartWnd.SetLiTangDist(nOriginalTangDist)
ModifStartWnd.SetLiPerpDist(nOriginalPerpDist)
ModifStartWnd.SetLeadInType(nOriginalLeadInType)
If Not ModifStartWnd.ShowDialog() Then Return
' carico il valore letto dal testierino virtuale
dWJAddLen = ModifStartWnd.GetElongation()
bWJLiHole = ModifStartWnd.GetHole()
nWJTangDist = ModifStartWnd.GetLiTangDist()
nWJPerpDist = ModifStartWnd.GetLiPerpDist()
nWJLeadInType = ModifStartWnd.GetLeadInType().Id
' comunico che ho letto il primo dato
bFirstInd = False
End If
' ------------------ INIZIO PREPARAZIONE TASTIERINO VIRTUALE ------------------
' Recupero i valori attuali della lavorazione
Dim bIsLeadIn As Boolean = True
Dim dAddLen As Double = 0
Dim bLiHole As Boolean = true
Dim nTangDist As Double = 0
Dim nPerpDist As Double = 0
Dim LeadInType As Integer = 0
EgtSetCurrMachining( nOperId)
EgtGetMachiningParam( MCH_MP.STARTADDLEN, dAddLen)
EgtGetMachiningParam( MCH_MP.LIHOLE, bLiHole)
EgtGetMachiningParam( MCH_MP.LITANG, nTangDist)
EgtGetMachiningParam( MCH_MP.LIPERP, nPerpDist)
EgtGetMachiningParam( MCH_MP.LEADINTYPE, LeadInType)
' Dialogo richiesta valori
Dim ModifStartWnd As New ModifStartEndWD( m_MainWindow, EgtMsg(MSG_SPLITPAGEUC + 33), bIsLeadIn, nOperId) ' Inizio Modif.
ModifStartWnd.SetElongation( dAddLen)
ModifStartWnd.SetHole( bLiHole)
ModifStartWnd.SetLeadInType( LeadInType)
ModifStartWnd.SetLiTangDist( nTangDist)
ModifStartWnd.SetLiPerpDist( nPerpDist)
If Not ModifStartWnd.ShowDialog() Then return
' Modifica della lavorazione
EgtSetCurrMachining(nOperId)
EgtSetMachiningParam(MCH_MP.LIHOLE, bWJLiHole)
EgtSetMachiningParam(MCH_MP.STARTADDLEN, dWJAddLen)
EgtSetMachiningParam(MCH_MP.LEADINTYPE, nWJLeadInType)
EgtSetMachiningParam(MCH_MP.LITANG, nWJTangDist)
EgtSetMachiningParam(MCH_MP.LIPERP, nWJPerpDist)
UpdateMachiningPreview(m_MachiningList(nI).m_nId, True)
EgtSetCurrMachining( nOperId)
EgtSetMachiningParam( MCH_MP.LIHOLE, ModifStartWnd.GetHole())
EgtSetMachiningParam( MCH_MP.STARTADDLEN, ModifStartWnd.GetElongation())
EgtSetMachiningParam( MCH_MP.LEADINTYPE, ModifStartWnd.GetLeadInType().Id)
EgtSetMachiningParam( MCH_MP.LITANG, ModifStartWnd.GetLiTangDist())
EgtSetMachiningParam( MCH_MP.LIPERP, ModifStartWnd.GetLiPerpDist())
UpdateMachiningPreview( m_MachiningList(nI).m_nId, True)
' verifico interferenza
EgtVerifyMachining(m_MachiningList(nI).m_nId, m_MachiningList(nI).m_nInterf)
ColorMachining(m_MachiningList(nI))
ColorNumberArrow(nI)
EgtVerifyMachining( m_MachiningList(nI).m_nId, m_MachiningList(nI).m_nInterf)
ColorMachining( m_MachiningList(nI))
ColorNumberArrow( nI)
bGenModif = True
End If
Next
@@ -889,81 +832,56 @@ Public Class SplitPageUC
End Sub
Private Sub ModifEndBtn_Click(sender As Object, e As RoutedEventArgs) Handles ModifEndBtn.Click
' abilito la finestra per inserire i valori solo per il primo elemento della lista (di default tutti gli altri oggetti assumono lo stesso valore)
Dim bFirstInd As Boolean = True
' elenco delle variabili : MCH_MY.SAWING/MCH_MY.MILLING
Dim dUeal As Double = 0
' Recupero i valori attuali della lavorazione
Dim dWJAddLen As Double = 0
Dim WJLeadOutType As Integer = 0
Dim nWJTangDist As Double = 0
Dim nWJPerpDist As Double = 0
' Recupero la lavorazione corrente
If m_CurrFirstInd = -1 Then Return
Dim bGenModif As Boolean = False
For Index As integer = m_CurrFirstInd To m_CurrLastInd
Dim nI As Integer = m_ItemList(Index).Ind
Dim nOperId As Integer = m_MachiningList(nI).m_nId
Dim nMachiningType As Integer = EgtGetOperationType(nOperId)
For Index = m_CurrFirstInd To m_CurrLastInd
Dim nI As Integer = m_ItemList( Index).Ind
Dim nOperId As Integer = m_MachiningList( nI).m_nId
Dim nMachiningType As Integer = EgtGetOperationType( nOperId)
' Se taglio con lama
If nMachiningType = MCH_MY.SAWING And
(m_MachiningList(nI).m_bIsLine Or m_MachiningList(nI).m_dNextAng > FL_ARC_ANG_MIN Or m_MachiningList(nI).m_sLay = NAME_ONPATH) Then
( m_MachiningList( nI).m_bIsLine Or m_MachiningList( nI).m_dNextAng > FL_ARC_ANG_MIN Or m_MachiningList(nI).m_sLay = NAME_ONPATH) Then
Dim dOrigUeal As Double = 0
EgtGetInfo(nOperId, INFO_MCH_USER_EAL, dOrigUeal)
' ------------------ INIZIO PREPARAZIONE TASTIERINO VIRTUALE ------------------
If bFirstInd Then
' Dialogo richiesta valore
Dim ValWnd As New EditValueWD(m_MainWindow, EgtMsg(MSG_SPLITPAGEUC + 35)) ' Allungamento
ValWnd.SetVal(dOrigUeal)
If Not ValWnd.ShowDialog() Then Return
dUeal = ValWnd.GetVal()
bFirstInd = False
End If
' ------------------ FINE PREPARAZIONE TASTIERINO VIRTUALE ------------------
' Dialogo richiesta valore
Dim ValWnd As New EditValueWD( m_MainWindow, EgtMsg(MSG_SPLITPAGEUC + 35)) ' Allungamento
ValWnd.SetVal(dOrigUeal)
If Not ValWnd.ShowDialog() Then Return
Dim dUeal As Double = ValWnd.GetVal()
' Se c'è limite alla lunghezza libera
If m_MachiningList(nI).m_dEndFreeLen < FREELEN_INF Then
' Recupero sicurezza in corner interno
Dim dCornerSafety As Double = Math.Max(GetPrivateProfileDouble(S_MACH_NEST, K_MACH_SAFE_LEN_INTCORNER, 1, m_MainWindow.GetMachIniFile()), 10 * EPS_SMALL)
' Recupero lunghezza baffo del taglio
Dim nPvId As Integer = GDB_ID.NULL
EgtGetInfo(EgtGetFirstNameInGroup(nOperId, NAME_PREVIEW), INFO_PV_ONPART_ID, nPvId)
EgtGetInfo( EgtGetFirstNameInGroup( nOperId, NAME_PREVIEW), INFO_PV_ONPART_ID, nPvId)
Dim dDT As Double = 0
EgtGetInfo(EgtGetFirstGroupInGroup(nPvId), "DT", dDT)
dUeal = Math.Min(dUeal, m_MachiningList(nI).m_dEndFreeLen - dDT - dCornerSafety)
EgtGetInfo( EgtGetFirstGroupInGroup( nPvId), "DT", dDT)
dUeal = Math.Min( dUeal, m_MachiningList(nI).m_dEndFreeLen - dDT - dCornerSafety)
End If
' Modifica della lavorazione
EgtSetCurrMachining(nOperId)
EgtSetCurrMachining( nOperId)
Dim dAddLen As Double = 0
EgtGetMachiningParam(MCH_MP.ENDADDLEN, dAddLen)
EgtGetMachiningParam( MCH_MP.ENDADDLEN, dAddLen)
If dAddLen - dOrigUeal < -10 * EPS_SMALL Then Return
EgtSetMachiningParam(MCH_MP.ENDADDLEN, dAddLen + dUeal - dOrigUeal)
EgtSetInfo(nOperId, INFO_MCH_USER_EAL, dUeal)
UpdateMachiningPreview(m_MachiningList(nI).m_nId, True)
EgtSetMachiningParam( MCH_MP.ENDADDLEN, dAddLen + dUeal - dOrigUeal)
EgtSetInfo( nOperId, INFO_MCH_USER_EAL, dUeal)
UpdateMachiningPreview( m_MachiningList(nI).m_nId, True)
' verifico interferenza
EgtVerifyMachining(m_MachiningList(nI).m_nId, m_MachiningList(nI).m_nInterf)
ColorMachining(m_MachiningList(nI))
ColorNumberArrow(nI)
EgtVerifyMachining( m_MachiningList(nI).m_nId, m_MachiningList(nI).m_nInterf)
ColorMachining( m_MachiningList(nI))
ColorNumberArrow( nI)
bGenModif = True
' se altrimenti fresatura sopra
' se altrimenti fresatura sopra
ElseIf nMachiningType = MCH_MY.MILLING And m_MachiningList(nI).m_sLay = NAME_ONPATH Then
Dim dOrigUeal As Double = 0
EgtGetInfo(nOperId, INFO_MCH_USER_EAL, dOrigUeal)
' ------------------ INIZIO PREPARAZIONE TASTIERINO VIRTUALE ------------------
If bFirstInd Then
' Dialogo richiesta valore
Dim ValWnd As New EditValueWD(m_MainWindow, EgtMsg(MSG_SPLITPAGEUC + 35)) ' Allungamento
ValWnd.SetVal(dOrigUeal)
If Not ValWnd.ShowDialog() Then Return
dUeal = ValWnd.GetVal()
bFirstInd = False
End If
' ------------------ FINE PREPARAZIONE TASTIERINO VIRTUALE ------------------
' Dialogo richiesta valore
Dim ValWnd As New EditValueWD(m_MainWindow, EgtMsg(MSG_SPLITPAGEUC + 35)) ' Allungamento
ValWnd.SetVal(dOrigUeal)
If Not ValWnd.ShowDialog() Then Return
Dim dUeal As Double = ValWnd.GetVal()
' Modifica della lavorazione
EgtSetCurrMachining(nOperId)
Dim dAddLen As Double = 0
@@ -972,46 +890,36 @@ Public Class SplitPageUC
EgtSetInfo(nOperId, INFO_MCH_USER_EAL, dUeal)
UpdateMachiningPreview(m_MachiningList(nI).m_nId, True)
bGenModif = True
' se altrimenti getto d'acqua
' se altrimenti getto d'acqua
ElseIf nMachiningType = MCH_MY.WATERJETTING Then
If bFirstInd Then
' Recupero i valori attuali della lavorazione
Dim dAddLen As Double = 0
Dim LeadOutType As Integer = 0
Dim nTangDist As Double = 0
Dim nPerpDist As Double = 0
EgtSetCurrMachining(nOperId)
EgtGetMachiningParam(MCH_MP.ENDADDLEN, dAddLen)
EgtGetMachiningParam(MCH_MP.LEADOUTTYPE, LeadOutType)
EgtGetMachiningParam(MCH_MP.LOTANG, nTangDist)
EgtGetMachiningParam(MCH_MP.LOPERP, nPerpDist)
' Dialogo richiesta valore
Dim ModifStartWnd As New ModifStartEndWD(m_MainWindow, EgtMsg(MSG_SPLITPAGEUC + 34), False, nOperId) ' Fine Modif.
ModifStartWnd.SetElongation(dAddLen)
ModifStartWnd.SetLeadOutType(LeadOutType)
ModifStartWnd.SetLoTangDist(nTangDist)
ModifStartWnd.SetLoPerpDist(nPerpDist)
If Not ModifStartWnd.ShowDialog() Then Return
dWJAddLen = ModifStartWnd.GetElongation()
WJLeadOutType = ModifStartWnd.GetLeadOutType().Id
nWJTangDist = ModifStartWnd.GetLoTangDist()
nWJPerpDist = ModifStartWnd.GetLoPerpDist()
bFirstInd = False
End If
' Recupero i valori attuali della lavorazione
Dim dAddLen As Double = 0
Dim LeadOutType As Integer = 0
Dim nTangDist As Double = 0
Dim nPerpDist As Double = 0
EgtSetCurrMachining(nOperId)
EgtGetMachiningParam( MCH_MP.ENDADDLEN, dAddLen)
EgtGetMachiningParam( MCH_MP.LEADOUTTYPE, LeadOutType)
EgtGetMachiningParam( MCH_MP.LOTANG, nTangDist)
EgtGetMachiningParam( MCH_MP.LOPERP, nPerpDist)
' Dialogo richiesta valore
Dim ModifStartWnd As New ModifStartEndWD( m_MainWindow, EgtMsg(MSG_SPLITPAGEUC + 34), False, nOperId) ' Fine Modif.
ModifStartWnd.SetElongation( dAddLen)
ModifStartWnd.SetLeadOutType( LeadOutType)
ModifStartWnd.SetLoTangDist( nTangDist)
ModifStartWnd.SetLoPerpDist( nPerpDist)
If Not ModifStartWnd.ShowDialog() Then Return
' Modifica della lavorazione
EgtSetCurrMachining(nOperId)
EgtSetMachiningParam(MCH_MP.ENDADDLEN, dWJAddLen)
EgtSetMachiningParam(MCH_MP.LEADOUTTYPE, WJLeadOutType)
EgtSetMachiningParam(MCH_MP.LOTANG, nWJTangDist)
EgtSetMachiningParam(MCH_MP.LOPERP, nWJPerpDist)
EgtSetMachiningParam( MCH_MP.ENDADDLEN, ModifStartWnd.GetElongation())
EgtSetMachiningParam( MCH_MP.LEADOUTTYPE, ModifStartWnd.GetLeadOutType().Id)
EgtSetMachiningParam( MCH_MP.LOTANG, ModifStartWnd.GetLoTangDist())
EgtSetMachiningParam( MCH_MP.LOPERP, ModifStartWnd.GetLoPerpDist())
UpdateMachiningPreview(m_MachiningList(nI).m_nId, True)
' verifico interferenza
EgtVerifyMachining(m_MachiningList(nI).m_nId, m_MachiningList(nI).m_nInterf)
ColorMachining(m_MachiningList(nI))
ColorNumberArrow(nI)
EgtVerifyMachining( m_MachiningList(nI).m_nId, m_MachiningList(nI).m_nInterf)
ColorMachining( m_MachiningList(nI))
ColorNumberArrow( nI)
bGenModif = True
End If
Next
@@ -1024,7 +932,7 @@ Public Class SplitPageUC
Private Sub InvertBtn_Click(sender As Object, e As RoutedEventArgs) Handles InvertBtn.Click
If m_CurrFirstInd = -1 Then Return
For Index As Integer = m_CurrFirstInd To m_CurrLastInd
For Index = m_CurrFirstInd To m_CurrLastInd
Dim nI As Integer = m_ItemList(Index).Ind
' Si possono invertire solo i tagli di lama
If m_MachiningList( nI).m_nType <> MCH_OY.SAWING Then Continue For
@@ -1069,7 +977,7 @@ Public Class SplitPageUC
Private Sub PauseBtn_Click(sender As Object, e As RoutedEventArgs) Handles PauseBtn.Click
If m_CurrFirstInd = -1 Then Return
Dim bGenModif As Boolean = False
For Index As Integer = m_CurrFirstInd To m_CurrLastInd
For Index = m_CurrFirstInd To m_CurrLastInd
Dim nI As Integer = m_ItemList(Index).Ind
Dim nOperId As Integer = m_MachiningList(nI).m_nId
If GetPause(nOperId) Then
@@ -1189,7 +1097,7 @@ Public Class SplitPageUC
If m_bModified Then
' Al primo posto deve rimanere la disposizione della fase
Dim nFirstOperId As Integer = EgtGetPhaseDisposition(m_nCurrPhase)
For i As Integer = m_ItemList.Count() - 1 To 0 Step -1
For i = m_ItemList.Count() - 1 To 0 Step -1
Dim nI As Integer = m_ItemList(i).Ind
Dim nMchId As Integer = m_MachiningList(nI).m_nId
EgtRelocate(nMchId, nFirstOperId, GDB_POS.AFTER)
@@ -1515,7 +1423,7 @@ Public Class SplitPageUC
EgtDisableModified()
' cancello evidenziazione
If m_CurrFirstInd >= 0 Then
For Index As integer = m_CurrFirstInd To m_CurrLastInd
For Index = m_CurrFirstInd To m_CurrLastInd
MarkMachining(m_ItemList(Index).Ind, False)
Next
m_CurrFirstInd = -1
-2
View File
@@ -244,8 +244,6 @@ Module ConstGen
Public Const INFO_MCH_USER_SAL As String = "Usal"
' Info allungamento finale lavorazione imposto dall'utente
Public Const INFO_MCH_USER_EAL As String = "Ueal"
' Info lavorazione di tipo pretaglio sull'uscita
Public Const INFO_MCH_EPC As String = "EPC"
' Nome contorno taglio
Public Const NAME_PV_CUT As String = "CUT"
' Nome contorno pre-taglio
-1
View File
@@ -45,7 +45,6 @@ Module ConstIni
Public Const K_VIRTUALKEYBOARD As String = "VirtualKeyboard"
Public Const K_THEME As String = "Theme"
Public Const K_MANUAL_CUT As String = "ManualCut"
Public Const K_TEST As String = "Test"
Public Const S_LANGUAGES As String = "Languages"
Public Const K_LANGUAGE As String = "Language"
+4 -9
View File
@@ -101,11 +101,10 @@
Public Const K_FEEDHOLD As String = "FeedHold"
' Nuove variabili
Public Const K_SPEEDHOLD As String = "SpeedHold"
Public Const K_XYJOG As String = "XYJog"
Public Const K_ZJOG As String = "ZJog"
Public Const K_BCJOG As String = "BCJog"
Public Const K_XYAXES As String = "XYAxes"
Public Const K_ZAXES As String = "ZAxes"
Public Const K_BCAXES As String = "BCAxes"
Public Const K_POWERON As String = "PowerON"
Public Const K_POWEROFF As String = "PowerOFF"
Public Const S_PRODUCTIONLINE As String = "ProductionLine"
Public Const K_ACTIVE As String = "Active"
@@ -187,7 +186,6 @@
Public Const K_MACH_REDUCEDDEPTH As String = "ReducedDepth"
Public Const K_MACH_EXTARCMINRAD As String = "ExtArcMinRad"
Public Const K_MACH_INTARCMAXSIDEANG As String = "IntArcMaxSideAng"
Public Const K_MACH_PRECUTEXIT As String = "PreCutExit"
Public Const K_MACH_MILLING_ON_CORNERS As String = "MillingOnCorners"
Public Const K_MACH_MILLING_ON_SINKS As String = "MillingOnSinks"
Public Const K_MACH_MILLING_SHORTENING As String = "MillingShortening"
@@ -195,7 +193,7 @@
Public Const K_MACH_ENGRAVING_DEPTH As String = "EngravingDepth"
Public Const K_MACH_ENGRAVING_WIDTH As String = "EngravingWidth"
Public Const K_MACH_NEST_ALIGNED As String = "Aligned"
Public Const K_MACH_NEST_GHIGLIOTTINA As String = "Guillotine"
Public Const K_MACH_NEST_AUTOMATIC As String = "Automatic"
Public Const K_MACH_WASHING As String = "Washing"
Public Const K_MACH_SACPROBE As String = "SacProbe"
Public Const K_MACH_ENABLERESTART As String = "EnableRestart"
@@ -209,9 +207,6 @@
' MinDistHeadsMultiCut
' MinSawRbHeight
Public Const S_MACH_FRAME As String = "Frame"
Public Const K_MACH_PAUSE As String = "Pause"
Public Const S_MACH_RAWMOVE As String = "RawMove"
Public Const K_MACH_RM_ROTATE As String = "Rotate"
Public Const K_MACH_RM_FINALMOVE As String = "FinalMove"
+17 -17
View File
@@ -78,7 +78,7 @@ Public Class ControlsMachineButtonUC
Friend Sub SpindleStateChanged(SpindleState As Boolean)
Dim SpindleButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_SPINDLE Then
SpindleButton = MachineButton
End If
@@ -90,7 +90,7 @@ Public Class ControlsMachineButtonUC
Friend Sub LaserStateChanged(LaserState As Boolean)
Dim LaserButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_LASER Then
LaserButton = MachineButton
End If
@@ -102,7 +102,7 @@ Public Class ControlsMachineButtonUC
Friend Sub FeedHoldChanged(FeedHoldState As Boolean)
Dim FeedHoldButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_FEEDHOLD Then
FeedHoldButton = MachineButton
End If
@@ -114,7 +114,7 @@ Public Class ControlsMachineButtonUC
Friend Sub SpeedHoldChanged(SpeedHoldState As Boolean)
Dim SpeedHoldButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_SPEEDHOLD Then
SpeedHoldButton = MachineButton
End If
@@ -126,7 +126,7 @@ Public Class ControlsMachineButtonUC
Friend Sub LaserTracStateChanged(LaserTracState As Boolean)
Dim LaserTracButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_LASERTRAC Then
LaserTracButton = MachineButton
End If
@@ -138,7 +138,7 @@ Public Class ControlsMachineButtonUC
Friend Sub CoolantStateChanged(CoolantState As Boolean)
Dim CoolantButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_COOLANT Then
CoolantButton = MachineButton
End If
@@ -150,7 +150,7 @@ Public Class ControlsMachineButtonUC
Friend Sub InternalCoolantStateChanged(InternalCoolantState As Boolean)
Dim IntCoolantButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_INTERNALCOOLANT Then
IntCoolantButton = MachineButton
End If
@@ -162,7 +162,7 @@ Public Class ControlsMachineButtonUC
Friend Sub ExternCoolantStateChanged(ExternCoolantState As Boolean)
Dim ExtCoolantButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_EXTERNCOOLANT Then
ExtCoolantButton = MachineButton
End If
@@ -175,7 +175,7 @@ Public Class ControlsMachineButtonUC
Friend Sub CBAxesStateChanged(CBAxesState As Boolean)
Dim CAxesButton As TwoStateButton = Nothing
Dim BAxesButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_CAXES Then
CAxesButton = MachineButton
ElseIf MachineButton.StateFlag = K_BAXES Then
@@ -192,7 +192,7 @@ Public Class ControlsMachineButtonUC
Friend Sub AirBlowStateChanged(AirBlowState As Boolean)
Dim AirBlowButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_AIRBLOW Then
AirBlowButton = MachineButton
End If
@@ -204,7 +204,7 @@ Public Class ControlsMachineButtonUC
Friend Sub HomeStateChanged(HomeState As Boolean)
Dim HomeButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_HOME Then
HomeButton = MachineButton
End If
@@ -216,7 +216,7 @@ Public Class ControlsMachineButtonUC
Friend Sub TableUpChanged(TableUpState As Boolean)
Dim TableUpButton As PressedCommandButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_TABLEUP Then
TableUpButton = MachineButton
End If
@@ -228,7 +228,7 @@ Public Class ControlsMachineButtonUC
Friend Sub TableDownChanged(TableDownState As Boolean)
Dim TableDownButton As PressedCommandButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_TABLEDOWN Then
TableDownButton = MachineButton
End If
@@ -240,7 +240,7 @@ Public Class ControlsMachineButtonUC
Friend Sub HSMChanged(HsmState As Boolean)
Dim HsmButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_HSM Then
HsmButton = MachineButton
End If
@@ -253,7 +253,7 @@ Public Class ControlsMachineButtonUC
Friend Sub DoorClosedChanged(DoorClosedState As Integer)
Dim DoorClosedButton As ThreeStateButton = Nothing
Dim DoorOpenedButton As ThreeStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_DOORCLOSED Then
'If TypeOf MachineButton Is NoStateButton Then
' DoorClosedButton = DirectCast(MachineButton, NoStateButton)
@@ -295,7 +295,7 @@ Public Class ControlsMachineButtonUC
Friend Sub LimitZChanged(LimitZState As Boolean)
Dim TwoLimitZButton As TwoStateButton = Nothing
Dim DoubleLimitZButton As DoubleCommandButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_LIMITZ Then
If TypeOf MachineButton Is DoubleCommandButton Then
DoubleLimitZButton = MachineButton
@@ -315,7 +315,7 @@ Public Class ControlsMachineButtonUC
Friend Sub FiveAxisStateChanged(FiveAxisState As Boolean)
Dim ThreeAxesButton As TwoStateButton = Nothing
Dim FiveAxesButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_THREEAXES Then
ThreeAxesButton = MachineButton
ElseIf MachineButton.StateFlag = K_FIVEAXES Then
+43 -47
View File
@@ -37,7 +37,7 @@ Public Class DirectCutPageUC
Friend m_bManulaCut As Boolean = False
' elenco dei nuovi bottoni
Private m_ButtonJogList As New List(Of MachineButton)
Private m_ButtonAxesList As New List(Of MachineButton)
Enum DirectCutPages
DirectCut
@@ -89,7 +89,7 @@ Public Class DirectCutPageUC
m_ControlsMachineButton.SetValue(Grid.RowProperty, 1)
m_VacuumMachineButton.SetValue(Grid.RowProperty, 1)
Dim bCollapsedNewBottonsConsole As Boolean = False
Dim bCollpsedNewBottonsConsole As Boolean = False
m_NewMachineButtonsType = m_ControlsMachineButton.GetPrivateProfileMachineButtons(S_CONTROLMACHBUTTONS, "Button1", Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, m_MainWindow.GetMachIniFile())
If Not m_NewMachineButtonsType Then
'Assegno MachineButtons alla pagina
@@ -97,7 +97,7 @@ Public Class DirectCutPageUC
ControlsMachineBtn.Visibility = Windows.Visibility.Collapsed
VacuumMachineBtn.Visibility = Windows.Visibility.Collapsed
' per le configurazioni diverse dalla Digitale5
bCollapsedNewBottonsConsole = True
bCollpsedNewBottonsConsole = True
End If
If GetPrivateProfileInt(S_NUMERICALCONTROL, K_TYPE, 0, m_MainWindow.GetMachIniFile()) = 0 Then
@@ -105,17 +105,17 @@ Public Class DirectCutPageUC
ManualModeBtn.Visibility = Windows.Visibility.Hidden
End If
ManualBtn.Content = EgtMsg(90201)
ManualBtn.Content = EgtMsg( 90201)
SingleCutBtn.Content = EgtMsg(90202)
MultipleCutBtn.Content = EgtMsg(90203)
GridCutBtn.Content = EgtMsg(90204)
FlatteningCutBtn.Content = EgtMsg(90206)
PolishingBtn.Content = EgtMsg(90231)
CopyTemplateBtn.Content = EgtMsg(90209)
MultipleCutBtn.Content = EgtMsg( 90203)
GridCutBtn.Content = EgtMsg( 90204)
FlatteningCutBtn.Content = EgtMsg( 90206)
PolishingBtn.Content = EgtMsg( 90231)
CopyTemplateBtn.Content = EgtMsg( 90209)
SawTestBtn.Content = EgtMsg(90207)
' nuovi bottoni 20/05/2021
If GetPrivateProfileInt(S_NCDATA, K_NEWCONSOLE, 0, m_MainWindow.GetMachIniFile()) = 1 And Not bCollapsedNewBottonsConsole Then
If GetPrivateProfileInt(S_NCDATA, K_NEWCONSOLE, 0, m_MainWindow.GetMachIniFile()) = 1 And Not bCollpsedNewBottonsConsole Then
XYBtn.Content = "X - Y"
ZBtn.Content = "Z"
BCBtn.Content = "B - C"
@@ -128,9 +128,9 @@ Public Class DirectCutPageUC
End Sub
Private Sub DirectCutPage_Loaded(sender As Object, e As RoutedEventArgs) Handles Me.Loaded
'------ INIZIO NUOVI BOTTONI ----------
'------ NUOVI BOTTONI ----------
' Lettura configurazione bottoni (per impostare l'uso del Joystick) da Ini di macchina
m_ButtonJogList.Clear()
m_ButtonAxesList.Clear()
Dim m_nCount As Integer = 1
Dim bFoundBtn As Boolean = True
While bFoundBtn
@@ -141,7 +141,7 @@ Public Class DirectCutPageUC
Dim sFImageName As String = String.Empty
Dim sFLuaScriptName As String = String.Empty
Dim sStateFlag As String = String.Empty
bFoundBtn = m_ControlsMachineButton.GetPrivateProfileMachineButtons("JogButtons", sNameBtn, sMachineButtonType, sTImageName, sTLuaScriptName, sFImageName, sFLuaScriptName, sStateFlag, m_MainWindow.GetMachIniFile())
bFoundBtn = m_ControlsMachineButton.GetPrivateProfileMachineButtons("AxesButtons", sNameBtn, sMachineButtonType, sTImageName, sTLuaScriptName, sFImageName, sFLuaScriptName, sStateFlag, m_MainWindow.GetMachIniFile())
If bFoundBtn Then
m_nCount += 1
Dim ButtonToAdd As MachineButton = Nothing
@@ -159,13 +159,13 @@ Public Class DirectCutPageUC
ButtonToAdd = New PressedCommandButton(sTImageName, sTLuaScriptName, sFImageName, sFLuaScriptName, sStateFlag)
End Select
If Not IsNothing(ButtonToAdd) Then
m_ButtonJogList.Add(ButtonToAdd)
m_ButtonAxesList.Add(ButtonToAdd)
End If
End If
End While
' lo stato di questi comandi vieni carico dalla lettura del PLC (refresh)
'----------- FINE NUOVI BOTTONI------------
'-----------NUOVI BOTTONI------------
' Se rientro da simulazione
If m_ActiveDirectCutPage = DirectCutPages.SingleCut Then
LeftButtonGrid.Children.Add(m_SingleCut)
@@ -223,7 +223,7 @@ Public Class DirectCutPageUC
If Not m_MainWindow.m_Camera.CameraClick() Then
m_MainWindow.m_CurrentProjectPageUC.SetErrorMessage(EgtMsg(90313)) 'Fotografia non riuscita
End If
' Altrimenti lancio browser di immagini
' Altrimenti lancio browser di immagini
Else
m_MainWindow.MainWindowGrid.Children.Remove(m_MainWindow.m_CurrentProjectPageUC)
m_MainWindow.MainWindowGrid.Children.Add(m_MainWindow.m_PhotoPage)
@@ -315,66 +315,62 @@ Public Class DirectCutPageUC
'------------------NUOVI BOTTONI PER GESTIONE JOYSTICK-------------------------------------------------
Private Sub XYBtn_Click(sender As Object, e As RoutedEventArgs) Handles XYBtn.Click
Dim XYJogButton As MachineButton = m_ButtonJogList(0)
Dim XYAxesButton As MachineButton = m_ButtonAxesList(0)
' eseguo lo script lua associato
XYJogButton.ExecuteMDICommand(XYJogButton.TLuaScriptName)
XYAxesButton.ExecuteMDICommand(XYAxesButton.TLuaScriptName)
' che comunica al PLC di cambiare lo stato, la modifica dello stato è intercettata dalla funzione Refresh che avvia il metodo Changed
End Sub
Friend Sub XYJogChanged(bXYAxes As Boolean)
Friend Sub XYAxesChanged(bXYAxes As Boolean)
' devo decodificare il tipo di pulsante, quindi eseguire la conversione...
Dim XYJogButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonJogList
' elimino gli spazi ad inizio e fine della stringa
If MachineButton.StateFlag.Trim = K_XYJOG Then
XYJogButton = MachineButton
Exit For
Dim XYAxesButton As TwoStateButton = Nothing
For Each MachineButton In m_ButtonAxesList
If MachineButton.StateFlag = "XYAxes" Then
XYAxesButton = MachineButton
End If
Next
If Not IsNothing(XYJogButton) Then
XYJogButton.SetIsChecked(bXYAxes)
If Not IsNothing(XYAxesButton) Then
XYAxesButton.SetIsChecked(bXYAxes)
XYBtn.IsChecked = bXYAxes
End If
End Sub
Private Sub ZBtn_Click(sender As Object, e As RoutedEventArgs) Handles ZBtn.Click
Dim ZJogButton As MachineButton = m_ButtonJogList(1)
Dim ZAxesButton As MachineButton = m_ButtonAxesList(1)
' eseguo lo script lua associato
ZJogButton.ExecuteMDICommand(ZJogButton.TLuaScriptName)
ZAxesButton.ExecuteMDICommand(ZAxesButton.TLuaScriptName)
End Sub
Friend Sub ZJogChanged(bZAxes As Boolean)
Friend Sub ZAxesChanged(bZAxes As Boolean)
' devo decodificare il tipo di pulsante, quindi eseguire la conversione...
Dim ZJogButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonJogList
If MachineButton.StateFlag.Trim = K_ZJOG Then
ZJogButton = MachineButton
Exit For
Dim ZAxesButton As TwoStateButton = Nothing
For Each MachineButton In m_ButtonAxesList
If MachineButton.StateFlag = "ZAxes" Then
ZAxesButton = MachineButton
End If
Next
If Not IsNothing(ZJogButton) Then
ZJogButton.SetIsChecked(bZAxes)
If Not IsNothing(ZAxesButton) Then
ZAxesButton.SetIsChecked(bZAxes)
ZBtn.IsChecked = bZAxes
End If
End Sub
Private Sub BCBtn_Click(sender As Object, e As RoutedEventArgs) Handles BCBtn.Click
Dim BCJogButton As MachineButton = m_ButtonJogList(2)
Dim BCAxesButton As MachineButton = m_ButtonAxesList(2)
' eseguo lo script lua associato
BCJogButton.ExecuteMDICommand(BCJogButton.TLuaScriptName)
BCAxesButton.ExecuteMDICommand(BCAxesButton.TLuaScriptName)
End Sub
Friend Sub BCJogChanged(bBCAxes As Boolean)
Friend Sub BCAxesChanged(bBCAxes As Boolean)
' devo decodificare il tipo di pulsante, quindi eseguire la conversione...
Dim BCJogButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonJogList
If MachineButton.StateFlag.Trim = K_BCJOG Then
BCJogButton = MachineButton
Exit For
Dim BCAxesButton As TwoStateButton = Nothing
For Each MachineButton In m_ButtonAxesList
If MachineButton.StateFlag = "BCAxes" Then
BCAxesButton = MachineButton
End If
Next
If Not IsNothing(BCJogButton) Then
BCJogButton.SetIsChecked(bBCAxes)
If Not IsNothing(BCAxesButton) Then
BCAxesButton.SetIsChecked(bBCAxes)
BCBtn.IsChecked = bBCAxes
End If
End Sub
+6 -20
View File
@@ -111,20 +111,6 @@ Public Class MachineButtonsUC
Catch ex As Exception
EgtOutLog("Error loading image " & sImage)
End Try
Else
' In attesa che attivono le icobne di questi pulsanti scrivo il contenuto del bottone
Try
Dim CurrToggleBtn As Primitives.ToggleButton = GetToggleButton(nIndex + 1)
If StateFlagArray(nIndex) = K_XYJOG Then
CurrToggleBtn.Content = "X - Y"
ElseIf StateFlagArray(nIndex) = K_ZJOG Then
CurrToggleBtn.Content = "Z"
ElseIf StateFlagArray(nIndex) = K_BCJOG Then
CurrToggleBtn.Content = "C"
End If
Catch ex As Exception
EgtOutLog("Error loading content " & StateFlagArray(nIndex))
End Try
End If
Next
End If
@@ -579,25 +565,25 @@ Public Class MachineButtonsUC
End Sub
'----------------- Queste funzioni determina lo stato del bottone direttamente dalla lettura delle variabili CN
Friend Sub XYJogChanged(ByVal bXYAxes As Boolean)
Friend Sub XYAxesChanged(ByVal bXYAxes As Boolean)
' recupero le asscociazioni con i bottoni
Dim nIndex As Integer = Array.IndexOf(StateFlagArray, K_XYJOG)
Dim nIndex As Integer = Array.IndexOf(StateFlagArray, "XYAxes")
If nIndex = -1 Then Return
' selezoiono lo stato del bottone
GetToggleButton(nIndex + 1).IsChecked = bXYAxes
End Sub
Friend Sub ZJogChanged(ByVal bZAxes As Boolean)
Friend Sub ZAxesChanged(ByVal bZAxes As Boolean)
' recupero le asscociazioni con i bottoni
Dim nIndex As Integer = Array.IndexOf(StateFlagArray, K_ZJOG)
Dim nIndex As Integer = Array.IndexOf(StateFlagArray, "ZAxes")
If nIndex = -1 Then Return
' selezoiono lo stato del bottone
GetToggleButton(nIndex + 1).IsChecked = bZAxes
End Sub
Friend Sub BCJogChanged(ByVal bBCAxes As Boolean)
Friend Sub BCAxesChanged(ByVal bBCAxes As Boolean)
' recupero le asscociazioni con i bottoni
Dim nIndex As Integer = Array.IndexOf(StateFlagArray, K_BCJOG)
Dim nIndex As Integer = Array.IndexOf(StateFlagArray, "BCAxes")
If nIndex = -1 Then Return
' selezoiono lo stato del bottone
GetToggleButton(nIndex + 1).IsChecked = bBCAxes
+1 -1
View File
@@ -161,7 +161,7 @@ Public Class SingleCutAuto
ShowCoord()
' carico la lista dei materiali lavorabili in macchina
m_MaterialsList.Clear()
For Each Material As Material In m_MainWindow.m_CurrentMachine.Materials
For Each Material In m_MainWindow.m_CurrentMachine.Materials
m_MaterialsList.Add(New MachiningMaterial(Material.nId, Material.sName))
Next
' Carico l'elenco dei materiali presenti in macchina per l'assegnata lavorazione
+24 -24
View File
@@ -77,7 +77,7 @@ Public Class VacuumMachineButtonUC
Friend Sub VacuumUpChanged(VacuumUpState As Boolean)
Dim VacuumUpButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_VACUUMUP Then
VacuumUpButton = MachineButton
End If
@@ -89,7 +89,7 @@ Public Class VacuumMachineButtonUC
Friend Sub VacuumDownChanged(VacuumDownState As Boolean)
Dim VacuumDownButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_VACUUMDOWN Then
VacuumDownButton = MachineButton
End If
@@ -101,7 +101,7 @@ Public Class VacuumMachineButtonUC
Friend Sub Vacuum2UpChanged(Vacuum2UpState As Boolean)
Dim Vacuum2UpButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_VACUUM2UP Then
Vacuum2UpButton = MachineButton
End If
@@ -113,7 +113,7 @@ Public Class VacuumMachineButtonUC
Friend Sub Vacuum2DownChanged(Vacuum2DownState As Boolean)
Dim Vacuum2DownButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_VACUUM2DOWN Then
Vacuum2DownButton = MachineButton
End If
@@ -125,7 +125,7 @@ Public Class VacuumMachineButtonUC
Friend Sub Vacuum0Changed(Vacuum0State As Boolean)
Dim Vacuum0Button As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_VACUUM0 Then
Vacuum0Button = MachineButton
End If
@@ -137,7 +137,7 @@ Public Class VacuumMachineButtonUC
Friend Sub Vacuum90Changed(Vacuum90State As Boolean)
Dim VacuumRotButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_VACUUM90 Then
VacuumRotButton = MachineButton
End If
@@ -149,7 +149,7 @@ Public Class VacuumMachineButtonUC
Friend Sub Vacuum1Changed(Vacuum1State As Boolean)
Dim Vacuum1StateButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_VACUUM1STATE Then
Vacuum1StateButton = MachineButton
End If
@@ -161,7 +161,7 @@ Public Class VacuumMachineButtonUC
Friend Sub Vacuum2Changed(Vacuum2State As Boolean)
Dim Vacuum2StateButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_VACUUM2STATE Then
Vacuum2StateButton = MachineButton
End If
@@ -173,7 +173,7 @@ Public Class VacuumMachineButtonUC
Friend Sub Vacuum3Changed(Vacuum3State As Boolean)
Dim Vacuum3StateButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_VACUUM3STATE Then
Vacuum3StateButton = MachineButton
End If
@@ -185,7 +185,7 @@ Public Class VacuumMachineButtonUC
Friend Sub Vacuum4Changed(Vacuum4State As Boolean)
Dim Vacuum4StateButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_VACUUM4STATE Then
Vacuum4StateButton = MachineButton
End If
@@ -197,7 +197,7 @@ Public Class VacuumMachineButtonUC
Friend Sub Vacuum5Changed(Vacuum5State As Boolean)
Dim Vacuum5StateButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_VACUUM5STATE Then
Vacuum5StateButton = MachineButton
End If
@@ -209,7 +209,7 @@ Public Class VacuumMachineButtonUC
Friend Sub Vacuum6Changed(Vacuum6State As Boolean)
Dim Vacuum6StateButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_VACUUM6STATE Then
Vacuum6StateButton = MachineButton
End If
@@ -221,7 +221,7 @@ Public Class VacuumMachineButtonUC
Friend Sub Vacuum135Changed(Vacuum135State As Boolean)
Dim Vacuum135StateButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_VACUUM135STATE Then
Vacuum135StateButton = MachineButton
End If
@@ -233,7 +233,7 @@ Public Class VacuumMachineButtonUC
Friend Sub Vacuum246Changed(Vacuum246State As Boolean)
Dim Vacuum246StateButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_VACUUM246STATE Then
Vacuum246StateButton = MachineButton
End If
@@ -245,7 +245,7 @@ Public Class VacuumMachineButtonUC
Friend Sub OpenAllChanged(OpenAllState As Boolean)
Dim OpenAllStateButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_OPENALLSTATE Then
OpenAllStateButton = MachineButton
End If
@@ -257,7 +257,7 @@ Public Class VacuumMachineButtonUC
Friend Sub CloseAllChanged(CloseAllState As Boolean)
Dim CloseAllStateButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_CLOSEALLSTATE Then
CloseAllStateButton = MachineButton
End If
@@ -269,7 +269,7 @@ Public Class VacuumMachineButtonUC
Friend Sub Open123Changed(Open123State As Boolean)
Dim Open123StateButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_OPEN123STATE Then
Open123StateButton = MachineButton
End If
@@ -281,7 +281,7 @@ Public Class VacuumMachineButtonUC
Friend Sub Open456Changed(Open456State As Boolean)
Dim Open456StateButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_OPEN456STATE Then
Open456StateButton = MachineButton
End If
@@ -293,7 +293,7 @@ Public Class VacuumMachineButtonUC
Friend Sub Close123Changed(Close123State As Boolean)
Dim Close123StateButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_CLOSE123STATE Then
Close123StateButton = MachineButton
End If
@@ -305,7 +305,7 @@ Public Class VacuumMachineButtonUC
Friend Sub Close456Changed(Close456State As Boolean)
Dim Close456StateButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_CLOSE456STATE Then
Close456StateButton = MachineButton
End If
@@ -317,7 +317,7 @@ Public Class VacuumMachineButtonUC
Friend Sub BlowChanged(BlowState As Boolean)
Dim BlowStateButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_BLOWSTATE Then
BlowStateButton = MachineButton
End If
@@ -329,7 +329,7 @@ Public Class VacuumMachineButtonUC
Friend Sub VacuumOnChanged(VacuumState As Boolean)
Dim VacuumOnButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_VACUUMON Then
VacuumOnButton = MachineButton
End If
@@ -341,7 +341,7 @@ Public Class VacuumMachineButtonUC
Friend Sub VacuumOffChanged(VacuumState As Boolean)
Dim VacuumOffButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_VACUUMOFF Then
VacuumOffButton = MachineButton
End If
@@ -354,7 +354,7 @@ Public Class VacuumMachineButtonUC
Friend Sub BypassChanged(BypassState As Boolean)
Dim PressedBypassStateButton As PressedCommandButton = Nothing
Dim TwoBypassStateButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonList
For Each MachineButton In m_ButtonList
If MachineButton.StateFlag = K_BYPASSTATE Then
If TypeOf MachineButton Is TwoStateButton Then
TwoBypassStateButton = MachineButton
-256
View File
@@ -1,256 +0,0 @@
<UserControl x:Class="AlzFrontUC"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:EgtWPFLib="clr-namespace:EgtWPFLib;assembly=EgtWPFLib"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d"
d:DesignHeight="768" d:DesignWidth="256">
<!-- Definizione della Grid Laterale -->
<Grid Name="VariablesCompoGrid" Grid.RowSpan="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="0.3*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="0.2*"/>
<RowDefinition Height="4*"/>
<!--<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>-->
</Grid.RowDefinitions>
<!--Titolo della colonna della ALZATINE-->
<TextBlock Name="SideAngleBl" Grid.Row="0" Grid.Column="2" Text="Alz."
Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"
FontSize="{DynamicResource FontSize_LowerCaseCharacter}"/>
<!--Titolo della colonna dei FRONTALINI-->
<TextBlock Name="HeelBl" Grid.Row="0" Grid.Column="3" Text="Front."
Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"
FontSize="{DynamicResource FontSize_LowerCaseCharacter}"/>
<TextBlock Name="Entity1" Grid.Row="1" Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<CheckBox Name="A1" Grid.Column="2" Grid.Row="1" Height="30" Width="40" HorizontalAlignment="Right"
Margin="-10,0,0,0"/>
<CheckBox Name="F1" Grid.Column="3" Grid.Row="1" Height="30" Width="40" HorizontalAlignment="Right"
Margin="-10,0,0,0"/>
<!--<EgtWPFLib:EgtTextBox Name="A1TxBx" Grid.Column="2" Grid.Row="1" Width="60"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
<EgtWPFLib:EgtTextBox Name="H1TxBx" Grid.Column="3" Grid.Row="1" Width="60"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>-->
<TextBlock Name="Entity2" Grid.Row="2" Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<CheckBox Name="A2" Grid.Column="2" Grid.Row="2" Height="30" Width="40" HorizontalAlignment="Right"
Margin="-20,0,0,0"/>
<CheckBox Name="F2" Grid.Column="3" Grid.Row="2" Height="30" Width="40" HorizontalAlignment="Right"
Margin="-20,0,0,0"/>
<!--<EgtWPFLib:EgtTextBox Name="A2TxBx" Grid.Column="2" Grid.Row="2" Width="60"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
<EgtWPFLib:EgtTextBox Name="H2TxBx" Grid.Column="3" Grid.Row="2" Width="60"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>-->
<TextBlock Name="Entity3" Grid.Row="3" Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<CheckBox Name="A3" Grid.Column="2" Grid.Row="3" Height="30" Width="40" HorizontalAlignment="Right"
Margin="-20,0,0,0"/>
<CheckBox Name="F3" Grid.Column="3" Grid.Row="3" Height="30" Width="40" HorizontalAlignment="Right"
Margin="-20,0,0,0"/>
<!--<EgtWPFLib:EgtTextBox Name="A3TxBx" Grid.Column="2" Grid.Row="3" Width="60"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
<EgtWPFLib:EgtTextBox Name="H3TxBx" Grid.Column="3" Grid.Row="3" Width="60"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>-->
<TextBlock Name="Entity4" Grid.Row="4" Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<CheckBox Name="A4" Grid.Column="2" Grid.Row="4" Height="30" Width="40" HorizontalAlignment="Right"
Margin="-20,0,0,0"/>
<CheckBox Name="F4" Grid.Column="3" Grid.Row="4" Height="30" Width="40" HorizontalAlignment="Right"
Margin="-20,0,0,0"/>
<!--<EgtWPFLib:EgtTextBox Name="A4TxBx" Grid.Column="2" Grid.Row="4" Width="60"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
<EgtWPFLib:EgtTextBox Name="H4TxBx" Grid.Column="3" Grid.Row="4" Width="60"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>-->
<TextBlock Name="Entity5" Grid.Row="5" Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<CheckBox Name="A5" Grid.Column="2" Grid.Row="5" Height="30" Width="40" HorizontalAlignment="Right"
Margin="-20,0,0,0"/>
<CheckBox Name="F5" Grid.Column="3" Grid.Row="5" Height="30" Width="40" HorizontalAlignment="Right"
Margin="-20,0,0,0"/>
<!--<EgtWPFLib:EgtTextBox Name="A5TxBx" Grid.Column="2" Grid.Row="5" Width="60"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
<EgtWPFLib:EgtTextBox Name="H5TxBx" Grid.Column="3" Grid.Row="5" Width="60"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>-->
<TextBlock Name="Entity6" Grid.Row="6" Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<CheckBox Name="A6" Grid.Column="2" Grid.Row="6" Height="30" Width="40" HorizontalAlignment="Right"
Margin="-20,0,0,0"/>
<CheckBox Name="F6" Grid.Column="3" Grid.Row="6" Height="30" Width="40" HorizontalAlignment="Right"
Margin="-20,0,0,0"/>
<!--<EgtWPFLib:EgtTextBox Name="A6TxBx" Grid.Column="2" Grid.Row="6" Width="60"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
<EgtWPFLib:EgtTextBox Name="H6TxBx" Grid.Column="3" Grid.Row="6" Width="60"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>-->
<TextBlock Name="Entity7" Grid.Row="7" Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<CheckBox Name="A7" Grid.Column="2" Grid.Row="7" Height="30" Width="40" HorizontalAlignment="Right"
Margin="-20,0,0,0"/>
<CheckBox Name="F7" Grid.Column="3" Grid.Row="7" Height="30" Width="40" HorizontalAlignment="Right"
Margin="-20,0,0,0"/>
<!--<EgtWPFLib:EgtTextBox Name="A7TxBx" Grid.Column="2" Grid.Row="7" Width="60"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
<EgtWPFLib:EgtTextBox Name="H7TxBx" Grid.Column="3" Grid.Row="7" Width="60"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>-->
<TextBlock Name="Entity8" Grid.Row="8" Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<CheckBox Name="A8" Grid.Column="2" Grid.Row="8" Height="30" Width="40" HorizontalAlignment="Right"
Margin="-20,0,0,0"/>
<CheckBox Name="F8" Grid.Column="3" Grid.Row="8" Height="30" Width="40" HorizontalAlignment="Right"
Margin="-20,0,0,0"/>
<!--<EgtWPFLib:EgtTextBox Name="A8TxBx" Grid.Column="2" Grid.Row="8" Width="60"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
<EgtWPFLib:EgtTextBox Name="H8TxBx" Grid.Column="3" Grid.Row="8" Width="60"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>-->
<TextBlock Name="Entity9" Grid.Row="9" Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<CheckBox Name="A9" Grid.Column="2" Grid.Row="9" Height="30" Width="40" HorizontalAlignment="Right"
Margin="-20,0,0,0"/>
<CheckBox Name="F9" Grid.Column="3" Grid.Row="9" Height="30" Width="40" HorizontalAlignment="Right"
Margin="-20,0,0,0"/>
<!--<EgtWPFLib:EgtTextBox Name="A9TxBx" Grid.Column="2" Grid.Row="9" Width="60"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
<EgtWPFLib:EgtTextBox Name="H9TxBx" Grid.Column="3" Grid.Row="9" Width="60"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>-->
<TextBlock Name="Entity10" Grid.Row="10" Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<CheckBox Name="A10" Grid.Column="2" Grid.Row="10" Height="30" Width="40" HorizontalAlignment="Right"
Margin="-20,0,0,0"/>
<CheckBox Name="F10" Grid.Column="3" Grid.Row="10" Height="30" Width="40" HorizontalAlignment="Right"
Margin="-20,0,0,0"/>
<!--<EgtWPFLib:EgtTextBox Name="A10TxBx" Grid.Column="2" Grid.Row="10" Width="60"
Margin="0,0,0,-2"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
<EgtWPFLib:EgtTextBox Name="H10TxBx" Grid.Column="3" Grid.Row="10" Width="60"
Margin="0,0,0,-2"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>-->
<Grid Grid.Column="0" Grid.Row="12" Grid.ColumnSpan="4">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="0.3*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
<!--<RowDefinition Height="1*"/>-->
</Grid.RowDefinitions>
<TextBlock Name="Parameter1TxBl" Grid.Row="0" Grid.ColumnSpan="2"
Text="Offset"
Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"
FontSize="{DynamicResource FontSize_LowerCaseCharacter}"/>
<EgtWPFLib:EgtTextBox Name="Parameter1ATxBx"
Grid.Column="2" Grid.Row="0"
HorizontalAlignment="Right"
Width="60" Height="30" Margin="0,0,0,0"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
<EgtWPFLib:EgtTextBox Name="Parameter1FTxBx"
Grid.Column="3" Grid.Row="0"
HorizontalAlignment="Right"
Width="60" Height="30" Margin="0,0,0,0"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
<TextBlock Name="Parameter2TxBl" Grid.Row="1" Grid.ColumnSpan="2"
Text="Offset2"
Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"
FontSize="{DynamicResource FontSize_LowerCaseCharacter}"/>
<EgtWPFLib:EgtTextBox Name="Parameter2ATxBx"
Grid.Column="2" Grid.Row="1"
HorizontalAlignment="Right"
Width="60" Height="30" Margin="0,0,0,0"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
<EgtWPFLib:EgtTextBox Name="Parameter2FTxBx"
Grid.Column="3" Grid.Row="1"
HorizontalAlignment="Right"
Width="60" Height="30" Margin="0,0,0,0"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
<!--Gestisco nello spazio di una TextBox due TextBoxs--><!--
<UniformGrid Rows="1" Grid.Column="2" Grid.Row="1" Grid.ColumnSpan="2" Width="90" >
<EgtWPFLib:EgtTextBox Name="Parameter2aTxBx"
Grid.Column="2" Grid.Row="12"
Width="40" Height="30"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
<EgtWPFLib:EgtTextBox Name="Parameter2bTxBx"
Grid.Column="3" Grid.Row="12"
Width="40" Height="30"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
</UniformGrid>-->
<!--<TextBlock Name="Parameter3TxBl" Grid.Row="2" Grid.ColumnSpan="2"
Text="Affondamento"
Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"
FontSize="{DynamicResource FontSize_LowerCaseCharacter}"/>
<EgtWPFLib:EgtTextBox Name="Parameter3TxBx"
Grid.Column="2" Grid.ColumnSpan="2" Grid.Row="2"
Margin="0,0,0,-2"
Width="85" Height="30"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>-->
<!--<TextBlock Name="Parameter4TxBl" Grid.Row="3" Grid.ColumnSpan="2"
Text="Accorciamento"
Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"
FontSize="{DynamicResource FontSize_LowerCaseCharacter}"/>
<EgtWPFLib:EgtTextBox Name="Parameter4TxBx"
Grid.Column="2" Grid.ColumnSpan="2" Grid.Row="3"
Margin="0,0,0,-2"
Width="85" Height="30"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>-->
<UniformGrid Columns="2" Grid.ColumnSpan="4" Grid.Row="2">
<!--questo bottone è stato creato solo per garantire il corretto allinaemento-->
<Button Name="Vuoto" Visibility="Hidden"/>
<!--Bottone per tornare indietro alla selezione di CompoInterni e Alz&Front-->
<Button Name="BackBtn"
Style="{DynamicResource OmagCut_YellowIconButton}">
<Image Source="{DynamicResource NumericKeyboardArrowImg}" Style="{StaticResource OmagCut_ButtonIcon}"/>
</Button>
</UniformGrid>
</Grid>
</Grid>
</UserControl>
-829
View File
@@ -1,829 +0,0 @@
Imports System.Globalization
Imports EgtUILib
Imports EgtWPFLib
Public Class AlzFrontUC
Private Const NUM_VAR As Integer = 10
Private Const LUA_CMP_VARS As String = "CMP"
Private Const LUA_CMP_DRAW As String = "CMP_Draw"
Private Const INFO_VAR As String = "Var"
Private Const INFO_CMP As String = "CMP"
Private Const INFO_ID As String = "ID"
Friend Const LUA_CMP_INDEX As String = LUA_CMP_VARS & ".Ind"
Friend Const LUA_CMP_INTERNAL As String = LUA_CMP_VARS & ".Int"
Friend Const LUA_REMOVEHOLE As String = "RemoveHole"
' Costanti layer componenti
Friend Const COMPO_LAYER_AUX As String = "LayAux"
Friend Const COMPO_LAYER_QUOTATURE As String = "Quotature"
Friend Const COMPO_LAYER_ETICHETTE As String = "Etichette"
' nome della info riferita alle alzatine e ai frontalini (1=Alz, 2=Front, 0=niente)
Private Const INFO_ALZFRONT As String = "AF"
' Properties
Private m_sCompoDir As String = String.Empty
Private m_sCompoName As String = String.Empty
Friend m_bDrawOk As Boolean = False
Private m_bFirst As Boolean = True
' Riferimento alla MainWindow
Private m_MainWindow As MainWindow = DirectCast(Application.Current.MainWindow, MainWindow)
' Riferimento alla pagina che ha aperto SideAngleUC
Private m_CallingPage As MainWindow.Pages
' Gestione pagine
Private Const MAX_LINES As Integer = 10
' lista dei lati, in cui indico il tipo di entità da associare
Private AlzFrontEntityList As New List(Of AlzFrontEntity)
' numero di lati presenti nella figura
Private m_nCount As Integer = 0
' numero di righe rese disponibili nella pagina -> m_nShow = min(m_nCount, MAX_LINE)
Private m_nShow As Integer = MAX_LINES
Private bInternalSelection As Boolean = False
' raggio circoscritto al pezzo
Private m_dBBoxRad As Double
Private Sub AlzFrontPage_Loaded(sender As Object, e As RoutedEventArgs) Handles Me.Loaded
m_MainWindow.m_DrawPageUC.m_ActiveComponentPage = DrawPageUC.Pages.AlzFront
' numero di elemnti presenti nella lista SideAngle/DripEntity
m_nCount = 0
' numero di righe rese disponibili nella pagina -> m_nShow = min(m_nCount, MAX_LINE)
m_nShow = 0
' carico la lista dei lati della figura
InitSides()
' aggiorno la visualizzazione delle TextBox e dei CheckBox
TxBlChBxView()
' imposto lo stato delle checkbox
SetCheck()
' nascondo il bottone Back della pagina Draw
m_MainWindow.m_DrawPageUC.BackBtn.Visibility = Visibility.Hidden
m_MainWindow.m_DrawPageUC.MessageGrid.Visibility = Visibility.Hidden
' Abilito bottoni angoli di fianco e lavorazioni da sotto
m_MainWindow.m_DrawPageUC.SideAngleBtn.IsEnabled = m_MainWindow.m_DrawPageUC.bEnableSideAngle
m_MainWindow.m_DrawPageUC.FiloTopBtn.IsEnabled = m_MainWindow.m_CurrentMachine.bMilling
m_MainWindow.m_DrawPageUC.EngraveBtn.IsEnabled = True
m_MainWindow.m_DrawPageUC.DripCutBtn.IsEnabled = m_MainWindow.GetKeyOption(MainWindow.KEY_OPT.UNDER_CUT) And
Not String.IsNullOrWhiteSpace(m_MainWindow.m_CurrentMachine.sCurrDripSaw)
' nome dei parametri condivisi
Parameter1TxBl.Text = "Altezza"
Parameter2TxBl.Text = "Delta angolo"
EgtZoom(ZM.ALL)
End Sub
' carico la lista dei lati della figura corrente
Private Sub InitSides()
' pulisco la lista dei lati
AlzFrontEntityList.Clear()
' Id del pezzo
Dim PartId As Integer = GDB_ID.NULL
' Id del loop eseterno
Dim LoopId As Integer = GDB_ID.NULL
' Id delle label
Dim LabelId As Integer = GDB_ID.NULL
' definisco i valori delle altezza e degli angoli di spoglia per le alzatine e i frontalini (letti da file ini del programma)
GetPrivateProfileString("Alz&Front", "A_Height", "0", Parameter1ATxBx.Text, m_MainWindow.GetIniFile)
GetPrivateProfileString("Alz&Front", "F_Height", "0", Parameter1FTxBx.Text, m_MainWindow.GetIniFile)
GetPrivateProfileString("Alz&Front", "A_DeltaAng", "0", Parameter2ATxBx.Text, m_MainWindow.GetIniFile)
GetPrivateProfileString("Alz&Front", "F_DeltaAng", "0", Parameter2FTxBx.Text, m_MainWindow.GetIniFile)
' Imposto contesto corrente
EgtSetCurrentContext(m_MainWindow.m_DrawPageUC.DrawScene.GetCtx())
' Ricavo nome primo pezzo
PartId = EgtGetFirstPart()
' se non esiste un pezzo corrente allora esco
If PartId = GDB_ID.NULL Then Return
' Recupero nome layer con geometria di contorno (esterno o interno) del pezzo
LoopId = EgtGetFirstNameInGroup(EgtGetFirstPart(), NAME_OUTLOOP)
' Recupero il layer "Etichette" per inserirvi il nome dei lati
LabelId = EgtGetFirstNameInGroup(EgtGetFirstPart(), COMPO_LAYER_ETICHETTE)
If LabelId = GDB_ID.NULL Then
LabelId = EgtCreateGroup(PartId)
EgtSetName(LabelId, COMPO_LAYER_ETICHETTE)
Else
' se esistente allora lo svuoto
EgtEmptyGroup(LabelId)
End If
EgtSetStatus(LabelId, GDB_ST.ON_)
'Determino se loop esterno o interno
Dim sLoopName As String = ""
Dim bOutLoop As Boolean = (EgtGetName(LoopId, sLoopName) AndAlso sLoopName = NAME_OUTLOOP)
' Calcolo dimensione ingombro Loop
Dim ptMin, ptMax As Point3d
EgtGetBBoxGlob(LoopId, GDB_BB.STANDARD, ptMin, ptMax)
' utilizzato per definire la dimensione dei caratteri delle label per i lati
m_dBBoxRad = 0.5 * Point3d.DistXY(ptMin, ptMax)
' Recupero Id della curva del Loop Esterno
Dim PrevLine As Integer = EgtGetLastInGroup(LoopId)
Dim CurrLine As Integer = EgtGetFirstInGroup(LoopId)
' Creo indice per numerare le entità in ImportPage
Dim nEntityIndex As Integer = 1
Dim nOtherIndex As Integer = 1
' inserisco il lato nella lista
While CurrLine <> GDB_ID.NULL
' escludo tutte le forme che non sono delle linee
If EgtGetType(CurrLine) = GDB_TY.CRV_LINE Then
' Aggiungo il lato alla lista di quelli su cui è possibile mettere una alzatina o un frontalino
Dim sNameCurrLine As String = String.Empty
Dim nInfo As Integer = 0
EgtSetName(CurrLine, "A" & nEntityIndex.ToString)
EgtGetName(CurrLine, sNameCurrLine)
' inserisco la numerazione dei lati della figura
AddTextToLine(sNameCurrLine, LabelId, CurrLine, 20, m_dBBoxRad, True)
' recupero l'informazione
EgtGetInfo(CurrLine, INFO_ALZFRONT, nInfo)
If nInfo = 1 Then
AlzFrontEntityList.Add(New AlzFrontEntity(sNameCurrLine, CurrLine, AlzFrontEntity.AlzFront.ALZATINA))
ElseIf nInfo = 2 Then
AlzFrontEntityList.Add(New AlzFrontEntity(sNameCurrLine, CurrLine, AlzFrontEntity.AlzFront.FRONTALINO))
Else
AlzFrontEntityList.Add(New AlzFrontEntity(sNameCurrLine, CurrLine))
End If
nEntityIndex += 1
Else
EgtSetName(CurrLine, "B" & nOtherIndex.ToString)
nOtherIndex = nOtherIndex + 1
End If
PrevLine = CurrLine
CurrLine = EgtGetNext(CurrLine)
End While
' Aggiorno numero di lati carciati
m_nCount = AlzFrontEntityList.Count()
' Aggiorno numero item visualizzati nella pagina iniziale
m_nShow = Math.Min(m_nCount, MAX_LINES)
' Se non ci sono lati su cui operare, messaggio utente
If LoopId <> GDB_ID.NULL Then
If m_nCount = 0 Then
If m_CallingPage = MainWindow.Pages.Draw Then
m_MainWindow.m_DrawPageUC.MessageTxBx.Text = EgtMsg(MSG_DRAWPAGEUC + 7) ' Non ci sono lati modificabili
m_MainWindow.m_DrawPageUC.MessageBrd.Background = Application.Current.FindResource("OmagCut_Yellow")
Else
m_MainWindow.m_ImportPageUC.MessageTxBx.Text = EgtMsg(MSG_DRAWPAGEUC + 7) ' Non ci sono lati modificabili
m_MainWindow.m_ImportPageUC.MessageBrd.Background = Application.Current.FindResource("OmagCut_Yellow")
End If
Else
If m_CallingPage = MainWindow.Pages.Draw Then
m_MainWindow.m_DrawPageUC.MessageTxBx.Text = ""
m_MainWindow.m_DrawPageUC.MessageBrd.Background = Brushes.Transparent
Else
m_MainWindow.m_ImportPageUC.MessageTxBx.Text = ""
m_MainWindow.m_ImportPageUC.MessageBrd.Background = Brushes.Transparent
End If
End If
End If
End Sub
' Imposto la visibilità degli oggetti nella pagina: qui eseguo l'impaginazione
Private Sub TxBlChBxView()
If m_nCount = 0 Then
' nascondo il nome delle colonne
SideAngleBl.Visibility = Windows.Visibility.Hidden
HeelBl.Visibility = Windows.Visibility.Hidden
Else
' definisco il posizionamento del nome (Alz.) delle colonne all'interno della grigia
Grid.SetRow(SideAngleBl, MAX_LINES - m_nShow)
SideAngleBl.Text = "Alz."
SideAngleBl.Visibility = Windows.Visibility.Visible
' definisco il posizionamento del nome (Front.) delle colonne all'interno della grigia
Grid.SetRow(HeelBl, MAX_LINES - m_nShow)
HeelBl.Text = "Front."
HeelBl.Visibility = Windows.Visibility.Visible
End If
' Lati visibili
For nI As Integer = 1 To m_nShow
Dim Index As Integer = MAX_LINES - m_nShow + nI
' definisco la visibilità della label
GetTxBlFromIndex(Index).Visibility = Windows.Visibility.Visible
GetTxBlFromIndex(Index).Text = "A" & nI.ToString
GetChBxAlzFromIndex(Index).Visibility = Windows.Visibility.Visible
GetChBxFrontFromIndex(Index).Visibility = Windows.Visibility.Visible
' annulo le eventuali selezioni
bInternalSelection = True
GetChBxAlzFromIndex(Index).IsChecked = False
bInternalSelection = True
GetChBxFrontFromIndex(Index).IsChecked = False
' aggiungo i campi per allungare e accorciare i lati (adesso sostituito con le CheckBox)
'GetAngleTxBxFromIndex(Index).Visibility = Windows.Visibility.Visible
'GetHeelTxBxFromIndex(Index).Visibility = Windows.Visibility.Visible
Next
' Lati nascosti: nascondo i lati partendo dall'alto (se ho 4 lati la prima TextBx disponibile è la settima -> 11-4 = 7 lati nascosti)
For Index As Integer = 1 To MAX_LINES - m_nShow
' definisco la visibilità della label
GetTxBlFromIndex(Index).Visibility = Windows.Visibility.Hidden
GetChBxAlzFromIndex(Index).Visibility = Windows.Visibility.Hidden
GetChBxFrontFromIndex(Index).Visibility = Windows.Visibility.Hidden
bInternalSelection = True
GetChBxAlzFromIndex(Index).IsChecked = False
bInternalSelection = True
GetChBxFrontFromIndex(Index).IsChecked = False
'GetAngleTxBxFromIndex(Index).Visibility = Windows.Visibility.Hidden
'GetHeelTxBxFromIndex(Index).Visibility = Windows.Visibility.Hidden
Next
bInternalSelection = False
End Sub
Private Sub SetCheck()
For IndexSide As Integer = 0 To AlzFrontEntityList.Count() - 1
Dim sNameSide As String = AlzFrontEntityList(IndexSide).SideName
Dim IndexCh As Integer = IndexSide + MAX_LINES - m_nShow + 1
If AlzFrontEntityList(IndexSide).Type = AlzFrontEntity.AlzFront.ALZATINA Then
bInternalSelection = True
GetChBxAlzFromIndex(IndexCh).IsChecked = True
ElseIf AlzFrontEntityList(IndexSide).Type = AlzFrontEntity.AlzFront.FRONTALINO Then
bInternalSelection = True
GetChBxFrontFromIndex(IndexCh).IsChecked = True
End If
Next
bInternalSelection = False
End Sub
' Permette di aggiugere accanto alla linea passata
Friend Function AddTextToLine(sText As String, TextLayer As Integer, CurrLine As Integer, dDistance As Double,
dBBoxRad As Double, bTextExt As Boolean, Optional bRot As Boolean = False) As Integer
' Calcolo altezza testo
Dim dH As Double = 0.05 * dBBoxRad
' Creo testo
Dim nText As Integer = EgtCreateTextAdv(TextLayer, Point3d.ORIG(), 0, sText, "", 500, False, dH, 1, 0, INS_POS.MC)
' Calcolo posizionamento
' BBox del testo e suo centro
Dim ptMinBBox As Point3d
Dim ptMaxBBox As Point3d
EgtGetBBox(nText, GDB_BB.STANDARD, ptMinBBox, ptMaxBBox)
Dim ptMidBBox As Point3d
ptMidBBox = Point3d.Media(ptMinBBox, ptMaxBBox)
' Punto medio della curva
Dim ptMid As Point3d
EgtMidPoint(CurrLine, nText, ptMid)
' Versore sul punto medio della curva
Dim vtMid As Vector3d
EgtMidVector(CurrLine, nText, vtMid)
' versore perpendicolare alla CurrLine che punta verso il testo
Dim vtOrto As New Vector3d(vtMid)
If bTextExt Then
vtOrto.Rotate(Vector3d.Z_AX(), -90)
Else
vtOrto.Rotate(Vector3d.Z_AX(), 90)
End If
' eventuale rotazione del testo
Dim dRotAng As Double = 0
If bRot Then
dRotAng = Math.Atan2(vtMid.y, vtMid.x) * 180 / Math.PI
Dim dSpecRotAng = dRotAng
If dSpecRotAng > 91 Then
dSpecRotAng -= 180
ElseIf dSpecRotAng < -89 Then
dSpecRotAng += 180
End If
EgtRotate(nText, Point3d.ORIG(), Vector3d.Z_AX(), dSpecRotAng)
End If
' vettore dal centro del BBox all'estremo più vicino
Dim vtptExtptMC As Vector3d
If bRot Then
vtptExtptMC = New Vector3d(0, ptMidBBox.y - ptMinBBox.y, 0)
vtptExtptMC.Rotate(Vector3d.Z_AX(), dRotAng)
Else
If bTextExt Then
If vtMid.x > 0 Then
If vtMid.y > 0 Then
vtptExtptMC = ptMidBBox - New Point3d(ptMinBBox.x, ptMaxBBox.y, 0)
Else
vtptExtptMC = ptMidBBox - ptMaxBBox
End If
Else
If vtMid.y > 0 Then
vtptExtptMC = ptMidBBox - ptMinBBox
Else
vtptExtptMC = ptMidBBox - New Point3d(ptMaxBBox.x, ptMinBBox.y, 0)
End If
End If
Else
If vtMid.x > 0 Then
If vtMid.y > 0 Then
vtptExtptMC = ptMidBBox - New Point3d(ptMaxBBox.x, ptMinBBox.y, 0)
Else
vtptExtptMC = ptMidBBox - ptMinBBox
End If
Else
If vtMid.y > 0 Then
vtptExtptMC = ptMidBBox - ptMaxBBox
Else
vtptExtptMC = ptMidBBox - New Point3d(ptMinBBox.x, ptMaxBBox.y, 0)
End If
End If
End If
End If
' Calcolo il centro del testo
Dim ptTextMC As Point3d = ptMid + vtOrto * (dDistance + (vtOrto * vtptExtptMC))
EgtMove(nText, (ptTextMC - Point3d.ORIG()))
Return nText
End Function
#Region "CHIAMATA ALLE TEXT/CHECK/LABEL"
Private Function GetChBxAlzFromIndex(Index As Integer) As CheckBox
Select Case Index
Case 1
Return A1
Case 2
Return A2
Case 3
Return A3
Case 4
Return A4
Case 5
Return A5
Case 6
Return A6
Case 7
Return A7
Case 8
Return A8
Case 9
Return A9
Case Else
Return A10
End Select
End Function
Private Function GetChBxAalZFromName(sName As String) As CheckBox
Select Case sName
Case "A1"
Return A1
Case "A2"
Return A2
Case "A3"
Return A3
Case "A4"
Return A4
Case "A5"
Return A5
Case "A6"
Return A6
Case "A7"
Return A7
Case "A8"
Return A8
Case "A9"
Return A9
Case Else
Return A10
End Select
End Function
Private Function GetChBxFrontFromIndex(Index As Integer) As CheckBox
Select Case Index
Case 1
Return F1
Case 2
Return F2
Case 3
Return F3
Case 4
Return F4
Case 5
Return F5
Case 6
Return F6
Case 7
Return F7
Case 8
Return F8
Case 9
Return F9
Case Else
Return F10
End Select
End Function
Private Function GetChBxFrontFromName(sName As String) As CheckBox
Select Case sName
Case "F1"
Return F1
Case "F2"
Return F2
Case "F3"
Return F3
Case "F4"
Return F4
Case "F5"
Return F5
Case "F6"
Return F6
Case "F7"
Return F7
Case "F8"
Return F8
Case "F9"
Return F9
Case Else
Return F10
End Select
End Function
'Private Function GetAngleTxBxFromIndex(Index As Integer) As EgtWPFLib.EgtTextBox
' Select Case Index
' Case 1
' Return A1TxBx
' Case 2
' Return A2TxBx
' Case 3
' Return A3TxBx
' Case 4
' Return A4TxBx
' Case 5
' Return A5TxBx
' Case 6
' Return A6TxBx
' Case 7
' Return A7TxBx
' Case 8
' Return A8TxBx
' Case 9
' Return A9TxBx
' Case Else
' Return A10TxBx
' End Select
'End Function
'Private Function GetHeelTxBxFromIndex(Index As Integer) As EgtWPFLib.EgtTextBox
' Select Case Index
' Case 1
' Return H1TxBx
' Case 2
' Return H2TxBx
' Case 3
' Return H3TxBx
' Case 4
' Return H4TxBx
' Case 5
' Return H5TxBx
' Case 6
' Return H6TxBx
' Case 7
' Return H7TxBx
' Case 8
' Return H8TxBx
' Case 9
' Return H9TxBx
' Case Else
' Return H10TxBx
' End Select
'End Function
Private Function GetTxBlFromIndex(Index As Integer) As TextBlock
Select Case Index
Case 1
Return Entity1
Case 2
Return Entity2
Case 3
Return Entity3
Case 4
Return Entity4
Case 5
Return Entity5
Case 6
Return Entity6
Case 7
Return Entity7
Case 8
Return Entity8
Case 9
Return Entity9
Case Else
Return Entity10
End Select
End Function
#End Region ' Chiamata elle Text/Check/Label
#Region "SELEZIONE CHECKBOX"
' Per gestire la selezione/deselezione delle Alzatine
Private Sub A_Checked(sender As Object, e As RoutedEventArgs) Handles A1.Checked, A2.Checked, A3.Checked, A4.Checked, A5.Checked, A6.Checked, A7.Checked, A8.Checked, A9.Checked, A10.Checked,
A1.Unchecked, A2.Unchecked, A3.Unchecked, A4.Unchecked, A5.Unchecked, A6.Unchecked, A7.Unchecked, A8.Unchecked, A9.Unchecked, A10.Unchecked
' recupero il nome della Check selezionata
Dim bIsAlzatina As Boolean = True
Dim sChName As String = DirectCast(sender, CheckBox).Name
Dim bIsChecked As Boolean = DirectCast(sender, CheckBox).IsChecked
Dim sSideName As String = GetSideFromCheck(sChName, bIsAlzatina)
Dim sOppositeCheckBox As String = GetOppositeCheck(sChName, bIsAlzatina)
' se la modifica della stato della checkbox avviene internamente al programma allora non devo eseguire nessun aggiornamento
If bInternalSelection Then
bInternalSelection = False
Return
End If
RefreshList(sSideName, sOppositeCheckBox, bIsAlzatina, bIsChecked)
EgtZoom(ZM.ALL)
End Sub
' Per gestire la selezione/deselezione dei Frontalini
Private Sub F_Checked(sender As Object, e As RoutedEventArgs) Handles F1.Checked, F2.Checked, F3.Checked, F4.Checked, F5.Checked, F6.Checked, F7.Checked, F8.Checked, F9.Checked, F10.Checked,
F1.Unchecked, F2.Unchecked, F3.Unchecked, F4.Unchecked, F5.Unchecked, F6.Unchecked, F7.Unchecked, F8.Unchecked, F9.Unchecked, F10.Unchecked
' recupero il nome della Check selezionata
Dim bIsAlzatina As Boolean = False
Dim sChName As String = DirectCast(sender, CheckBox).Name
Dim bIsChecked As Boolean = DirectCast(sender, CheckBox).IsChecked
Dim sSideName As String = GetSideFromCheck(sChName, bIsAlzatina)
Dim sOppositeCheckBox As String = GetOppositeCheck(sChName, bIsAlzatina)
' se la modifica della stato della checkbox avviene internamente al programma allora non devo eseguire nessun aggiornamento
If bInternalSelection Then
bInternalSelection = False
Return
End If
RefreshList(sSideName, sOppositeCheckBox, bIsAlzatina, bIsChecked)
EgtZoom(ZM.ALL)
End Sub
#End Region ' Selezione CheckBox
#Region "ALTEZZA, DELTA ANGOLO DI SPOGLIA"
' altezza ALZATINA
Private Sub ParameterA1TxBx_EgtClosed(sender As Object, e As EventArgs) Handles Parameter1ATxBx.EgtClosed
' Nuovo angolo di inclinazione
Dim dValue As Double
StringToDouble(Parameter1ATxBx.Text, dValue)
' salvo il valore nel file ini e inserisco il valore nel file lua
WritePrivateProfileString("Alz&Front", "A_Height", Parameter1ATxBx.Text, m_MainWindow.GetIniFile())
' aggiorno il disegno
LoadCurrentCompo()
End Sub
' altezza FRONTALINO
Private Sub Parameter1FTxBx_EgtClosed(sender As Object, e As EventArgs) Handles Parameter1FTxBx.EgtClosed
' Nuovo angolo di inclinazione
Dim dValue As Double
StringToDouble(Parameter1FTxBx.Text, dValue)
' salvo il valore nel file ini e inserisco il valore nel file lua
WritePrivateProfileString("Alz&Front", "F_Height", Parameter1FTxBx.Text, m_MainWindow.GetIniFile())
' aggiorno il disegno
LoadCurrentCompo()
End Sub
' angolo di spoglia ALZATINA
Private Sub ParameterA2TxBx_EgtClosed(sender As Object, e As EventArgs) Handles Parameter2ATxBx.EgtClosed
' Nuovo angolo di inclinazione
Dim dValue As Double
StringToDouble(Parameter2ATxBx.Text, dValue)
' salvo il valore nel file ini e inserisco il valore nel file lua
WritePrivateProfileString("Alz&Front", "A_DeltaAng", Parameter2ATxBx.Text, m_MainWindow.GetIniFile())
' aggiorno il disegno
LoadCurrentCompo()
End Sub
' angolo di spoglia FRONTALINO
Private Sub Parameter2FTxBx_EgtClosed(sender As Object, e As EventArgs) Handles Parameter2FTxBx.EgtClosed
' Nuovo angolo di inclinazione
Dim dValue As Double
StringToDouble(Parameter2FTxBx.Text, dValue)
' salvo il valore nel file ini e inserisco il valore nel file lua
WritePrivateProfileString("Alz&Front", "F_DeltaAng", Parameter2FTxBx.Text, m_MainWindow.GetIniFile())
' aggiorno il disegno
LoadCurrentCompo()
End Sub
#End Region ' Altezza, delta angolo di spoglia
#Region "METHODS"
' noto il nome della checkbox (scritta nel codice xaml) selezionata restituisce il nome del lato (associato al disegno)
Private Function GetSideFromCheck(sNameCheck As String, bIsAlz As Boolean) As String
Dim sSideName As String = String.Empty
Dim sTypeCheck As String = "A"
If Not bIsAlz Then
sTypeCheck = "F"
End If
' separo il nome in due
Dim sItems As String() = Split(sNameCheck, sTypeCheck)
Dim nIndex As Integer
' costruisco il nome del lato
If sItems.Count > 1 Then
nIndex = CInt(sItems(1))
nIndex = nIndex - (MAX_LINES - m_nShow)
sSideName = "A" & nIndex.ToString
End If
Return sSideName
End Function
' restituisce il nome del check opposto (Se passo una alzaztina restituisco il nome della checbox del frontalino)
Private Function GetOppositeCheck(sNameCheck As String, bIsAlz As Boolean) As String
Dim sSideName As String = String.Empty
Dim sTypeCheck As String = "A"
If Not bIsAlz Then
sTypeCheck = "F"
End If
' separo il nome in due
Dim sItems As String() = Split(sNameCheck, sTypeCheck)
' estraggo l'indice del lato selezionato e costruisco il nome del CheckBox opposto
If sItems.Count > 1 Then
If bIsAlz Then
sSideName = "F" & sItems(1).Trim
Else
sSideName = "A" & sItems(1).Trim
End If
End If
Return sSideName
End Function
' aggiorno lo stato della dell'oggetto
Private Sub RefreshList(sSideName As String, sOppositeNameCheck As String, bIsAlz As Boolean, bIsChecked As Boolean)
For j As Integer = 0 To AlzFrontEntityList.Count() - 1
If AlzFrontEntityList(j).SideName = sSideName Then
' se deseleziono
If Not bIsChecked Then
AlzFrontEntityList(j).Type = AlzFrontEntity.AlzFront.NONE
' insrisco l'informazione nelle info del lato
EgtSetInfo(AlzFrontEntityList(j).Id, INFO_ALZFRONT, 0)
Exit For
End If
' se selezione di Alz. o Front.
If bIsAlz Then
AlzFrontEntityList(j).Type = AlzFrontEntity.AlzFront.ALZATINA
' deseleziono il Check opposto
If GetChBxFrontFromName(sOppositeNameCheck).IsChecked Then
bInternalSelection = True
GetChBxFrontFromName(sOppositeNameCheck).IsChecked = False
End If
' insrisco l'informazione nelle info del lato
EgtSetInfo(AlzFrontEntityList(j).Id, INFO_ALZFRONT, 1)
Else
AlzFrontEntityList(j).Type = AlzFrontEntity.AlzFront.FRONTALINO
' deseleziono il Check opposto
If GetChBxAalZFromName(sOppositeNameCheck).IsChecked Then
bInternalSelection = True
GetChBxAalZFromName(sOppositeNameCheck).IsChecked = False
End If
' inserisco l'informazione nelle info del lato
EgtSetInfo(AlzFrontEntityList(j).Id, INFO_ALZFRONT, 2)
End If
' termino il ciclo
Exit For
End If
Next
' questa funzione deve essere lanciata al termine di ogno selezione o modifica dei parametri di dimensione
LoadCurrentCompo()
End Sub
#End Region ' Methods
' eseguo il file per generare le Alzatine e i Frontalini (stesso file Lua)
Private Sub LoadCurrentCompo()
' !! ATTENZIONE !! : per problemi di spazio è stata spenta la text per stampare i messaggi (ma potrebbe servire?)
' Pulisco l'ambiente lua
EgtLuaResetGlobVar(LUA_CMP_VARS)
EgtLuaResetGlobVar(LUA_CMP_DRAW)
Dim nCompoName As Integer
Dim sCompoFile As String = ""
Dim sCompoImage As String = ""
' recupero il nome del direttorio
Dim sCompoDir As String = String.Empty
GetPrivateProfileString("Alz&Front", K_COMPODIR, "", sCompoDir, m_MainWindow.GetIniFile())
' leggo le info inserite nel campo "Alz&Front"
m_MainWindow.m_DrawPageUC.m_MainComponentPage.GetPrivateProfileCompo("Alz&Front", "Alz&Front", nCompoName, sCompoFile, sCompoImage, m_MainWindow.GetIniFile())
'Dim sCompoImageSource As ImageSource
' Costruisco path completa del componente
Dim sPath = sCompoDir & "\" & sCompoFile
' Carico il file
EgtLuaExecFile(sPath)
' carico la lista di variabili
Dim dVal As Double
If StringToLen(Parameter1ATxBx.Text, dVal) Then
EgtLuaSetGlobNumVar("CMP.A_Height", dVal)
End If
If StringToLen(Parameter1FTxBx.Text, dVal) Then
EgtLuaSetGlobNumVar("CMP.F_Height", dVal)
End If
If StringToLen(Parameter2ATxBx.Text, dVal) Then
EgtLuaSetGlobNumVar("CMP.A_DeltaAng", dVal)
End If
If StringToLen(Parameter2FTxBx.Text, dVal) Then
EgtLuaSetGlobNumVar("CMP.F_DeltaAng", dVal)
End If
Dim sMsg As String = String.Empty
' eseguo la funzione per il disegno della componente (CMP_Draw)
If Not EgtLuaExecLine(LUA_CMP_DRAW & "(true)") Then
sMsg = "Error in component execution"
m_bDrawOk = False
Else
EgtLuaGetGlobStringVar(LUA_CMP_VARS & ".MSG", sMsg)
Dim nErr As Integer = 0
EgtLuaGetGlobIntVar(LUA_CMP_VARS & ".ERR", nErr)
m_bDrawOk = (nErr = 0)
End If
' aggiorno la grafica
EgtZoom(ZM.ALL)
End Sub
' metodo utilizzato per tornare indietro alla pagina di selezione "CompoInterni/Alz&Front"
Private Sub BackBtn_Click(sender As Object, e As RoutedEventArgs) Handles BackBtn.Click
m_MainWindow.m_DrawPageUC.m_SceneButtons.MeasureBtn.IsChecked = False
' torno alla pagina iniziale di selezione del piano (Compo)
'm_MainWindow.m_DrawPageUC.BackBtn_Click(sender, e)
'--------- NUOVA GESTIONE ---------
' rimuovo l'elenco di bottoni per selezionare il tipo di componente interna
m_MainWindow.m_DrawPageUC.LeftButtonGrd.Children.Remove(Me)
' inserisco nella Grid VaribalsesGrid lo UeserControl per definire le dimensioni della componente
m_MainWindow.m_DrawPageUC.VariablesGrd.Children.Add(m_MainWindow.m_DrawPageUC.m_CompoDimension)
' nascondo la lista dei parametri
m_MainWindow.m_DrawPageUC.m_CompoDimension.CollapsedAllParam()
' sto uscendo dalla componente interna (quindi comunico il cambio di componente)
m_MainWindow.m_DrawPageUC.m_bInternalCompo = False
' comunico che sto arrivando da una componente interna
m_MainWindow.m_DrawPageUC.m_bBackFromInternalCompo = True
'm_MainWindow.m_DrawPageUC.SelectedComponent(m_MainWindow.m_DrawPageUC.m_sMainCompo)
'm_MainWindow.m_DrawPageUC.m_ActiveComponentPage = DrawPageUC.Pages.CompoDimension
End Sub
End Class
Public Class AlzFrontEntity
Public Enum AlzFront
ALZATINA
FRONTALINO
NONE
End Enum
Private m_SideName As String
Private m_Id As Integer
Private m_Type As AlzFront = AlzFront.NONE
' nome del lato scritto nel file nge (il nome deve avere la forma: A1, A2, .., An)
Public Property SideName As String
Get
Return m_SideName
End Get
Set(value As String)
m_SideName = value
End Set
End Property
Public Property Type As AlzFront
Get
Return m_Type
End Get
Set(value As AlzFront)
m_Type = value
End Set
End Property
Public Property Id As Integer
Get
Return m_Id
End Get
Set(value As Integer)
m_Id = value
End Set
End Property
Sub New(Name As String, CurrId As Integer, Optional CurrType As AlzFront = AlzFront.NONE)
m_SideName = Name
m_Id = CurrId
m_Type = CurrType
End Sub
End Class
+6 -12
View File
@@ -26,7 +26,7 @@
<RowDefinition Height="0.5*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
</Grid.RowDefinitions>
</Grid.RowDefinitions>
<TextBlock Name="Label1" Grid.Row="0"
Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
@@ -69,18 +69,12 @@
<EgtWPFLib:EgtTextBox Name="TextBox10" Grid.Column="1" Grid.Row="9" Width="90"
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<!--Per confermare l'inserimento CompoInterno-->
<Button Name="AddBtn" Grid.Row="10" Style="{DynamicResource OmagCut_YellowTextButton}"/>
<Button Name="CancelBtn" Grid.Column="1" Grid.Row="10" Style="{DynamicResource OmagCut_YellowTextButton}"/>
<Button Name="InternComponentBtn" Grid.Row="11" Grid.ColumnSpan="2"
Style="{DynamicResource OmagCut_YellowTextButton}"/>
<!--Selezione delle componenti interne-->
<Button Name="InternComponentBtn" Grid.Row="10" Grid.ColumnSpan="2"
Style="{DynamicResource OmagCut_YellowTextButton}"/>
<Button Name="AddBtn" Grid.Row="10" Style="{DynamicResource OmagCut_YellowTextButton}"/>
<Button Name="CancelBtn" Grid.Column="1" Grid.Row="10" Style="{DynamicResource OmagCut_YellowTextButton}"/>
<!--Selezione di Alz&Front-->
<Button Name="AlzFrontBtn" Grid.Row="11" Grid.ColumnSpan="2"
Style="{DynamicResource OmagCut_YellowTextButton}"/>
</Grid>
</Grid>
</UserControl>
+10 -78
View File
@@ -13,25 +13,15 @@ Public Class CompoDimensionUC
' Riferimento alla pagina di selezione dei componenti interni
Friend m_InternalCompoPage As InternalComponentPageUC
' Riferimento alla pagina di selezione della alzatine
Friend m_AlzFrontPage As AlzFrontUC
Private Sub CompoDimensionUC_Initialized(sender As Object, e As EventArgs) Handles Me.Initialized
'Creazione delle Page UserControl (per le componenti interne)
'Creazione delle Page UserControl
m_InternalCompoPage = New InternalComponentPageUC
'Posizionemento nella griglia delle Page UserControl
'Posizionemento nella griglia delle Page UserControl
m_InternalCompoPage.SetValue(Grid.ColumnSpanProperty, 2)
m_InternalCompoPage.SetValue(Grid.RowSpanProperty, 4)
'Creazione della Page UserControl (per le alzatine e i frontalini)
m_AlzFrontPage = New AlzFrontUC
'Posizionamento nella griglia della Page UserControl
m_AlzFrontPage.SetValue(Grid.ColumnSpanProperty, 2)
m_AlzFrontPage.SetValue(Grid.RowSpanProperty, 4)
' definisco il nome dei comandi presenti nella pagine
InternComponentBtn.Content = EgtMsg(MSG_COMPONENTPAGEUC + 47) ' Componenti interni
AlzFrontBtn.Content = "Alzatine & Frontalini"
AddBtn.Content = EgtMsg(MSG_COMPONENTPAGEUC + 48) ' Aggiungi
CancelBtn.Content = EgtMsg(MSG_COMPONENTPAGEUC + 49) ' Rimuovi
End Sub
@@ -43,19 +33,6 @@ Public Class CompoDimensionUC
' Imposto questa come pagina correntemente visualizzata nella drawpage
m_DrawPage.m_ActiveComponentPage = DrawPageUC.Pages.CompoDimension
' se arrivo dalla pagina delle componenti interne allora esco (non devo ricalcolare i parametri)
If m_DrawPage.m_bBackFromInternalCompo Then
ShowInternalBtn(True)
ShowAlzFrontBtn(True)
' Se componente interno visualizzo bottoni aggiungi rimuovi
ShowAddRemoveBtn(m_DrawPage.m_bInternalCompo)
' Imposto contesto corrente e faccio uno ZoomAll della scena con il componente
EgtSetCurrentContext(m_MainWindow.m_DrawPageUC.DrawScene.GetCtx())
EgtZoom(ZM.ALL)
' termino il caricamento della pagina
Return
End If
' Se componente interno disabilito il bottone di ok della drawpage
If m_DrawPage.m_bInternalCompo Then
m_DrawPage.OkBtn.IsEnabled = False
@@ -64,10 +41,8 @@ Public Class CompoDimensionUC
If m_DrawPage.sCompoName.StartsWith("PCucina") Or
m_DrawPage.sCompoName.StartsWith("PBagno") Then
ShowInternalBtn(True)
ShowAlzFrontBtn(True)
Else
ShowInternalBtn(False)
ShowAlzFrontBtn(False)
End If
' Se componente interno visualizzo bottoni aggiungi rimuovi
@@ -83,7 +58,6 @@ Public Class CompoDimensionUC
m_DrawPage.OkBtn.IsEnabled = True
End Sub
' rende visibile il bottone per inserire le componenti interne: solo nella pagine delle componenti
Friend Sub ShowInternalBtn(value As Boolean)
If value Then
InternComponentBtn.Visibility = Windows.Visibility.Visible
@@ -92,16 +66,6 @@ Public Class CompoDimensionUC
End If
End Sub
' rende visibile il bottone per inserire le azatine e i frontalini: solo nella pagina delle componenti
Friend Sub ShowAlzFrontBtn(ByVal value As Boolean)
If value Then
AlzFrontBtn.Visibility = Visibility.Visible
Else
AlzFrontBtn.Visibility = Visibility.Hidden
End If
End Sub
' definisce se rendere visbile oppure no i bottone "Aggiungi" e "Rimuovi": presenti solo nella componenti interne
Friend Sub ShowAddRemoveBtn(value As Boolean)
If value Then
m_DrawPage.SideAngleBtn.IsEnabled = False
@@ -269,18 +233,7 @@ Public Class CompoDimensionUC
m_DrawPage.UpdateView()
End Sub
Public Sub CollapsedAllParam()
For i As Integer = 1 To NUM_VAR
GetNameEdit(i).Visibility = Visibility.Collapsed
GetValueEdit(i).Visibility = Visibility.Collapsed
Next
End Sub
#Region "METHODS for InternalCompo"
' visualizzo la pagina per la selezione delle componenti interne
Private Sub InternComponentBtn_Click(sender As Object, e As RoutedEventArgs) Handles InternComponentBtn.Click
m_DrawPage.m_bBackFromInternalCompo = False
' imposto contesto
EgtSetCurrentContext(m_DrawPage.DrawScene.GetCtx())
' Nascondo layer etichette e quotature
@@ -295,25 +248,6 @@ Public Class CompoDimensionUC
m_DrawPage.LeftButtonGrd.Children.Add(m_InternalCompoPage)
End Sub
' visualizzo la pagina per la selezione delle componenti interne
Private Sub AlzFrontBtn_Click(sender As Object, e As RoutedEventArgs) Handles AlzFrontBtn.Click
m_DrawPage.m_bBackFromInternalCompo = False
' imposto contesto
EgtSetCurrentContext(m_DrawPage.DrawScene.GetCtx())
' Nascondo layer etichette e quotature
Dim Pz As Integer = EgtGetFirstGroupInGroup(GDB_ID.ROOT)
EgtSetStatus(EgtGetFirstNameInGroup(Pz, "LayAux"), GDB_ST.OFF)
EgtSetStatus(EgtGetFirstNameInGroup(Pz, "Etichette"), GDB_ST.OFF)
EgtSetStatus(EgtGetFirstNameInGroup(Pz, "Quotature"), GDB_ST.OFF)
EgtDraw()
m_DrawPage.VariablesGrd.Children.Remove(Me)
m_DrawPage.m_bInternalCompo = True
m_DrawPage.LeftButtonGrd.Children.Add(m_AlzFrontPage)
End Sub
' Bottone utilizzato per inserire le componenti interne
Private Sub AddBtn_Click(sender As Object, e As RoutedEventArgs) Handles AddBtn.Click
' Se componente errato, non faccio alcunché
If Not m_DrawPage.m_bDrawOk Then Return
@@ -332,10 +266,15 @@ Public Class CompoDimensionUC
End While
End If
' Esco dalla pagina
ExitInternalVariable()
m_DrawPage.VariablesGrd.Children.Remove(Me)
m_DrawPage.LeftButtonGrd.Children.Add(m_InternalCompoPage)
' Reset componente
m_MainWindow.m_DrawPageUC.ResetCompoName()
' Deseleziono oggetto corrente e aggiorno visualizzazione
EgtDeselectAll()
EgtDraw()
End Sub
' annulla l'inserimento della componente corrente
Private Sub CancelBtn_Click(sender As Object, e As RoutedEventArgs) Handles CancelBtn.Click
' Cancello layer con contorno errato
Dim nId As Integer = EgtGetFirstNameInGroup(EgtGetFirstGroupInGroup(GDB_ID.ROOT), "ErrorLay")
@@ -353,13 +292,7 @@ Public Class CompoDimensionUC
Else
m_DrawPage.m_bDrawOk = True
End If
' Esco dalla pagina
ExitInternalVariable()
End Sub
' Esco dalla pagine delle variabili della componente interna: reimposto la pagina della componenti interne
Private Sub ExitInternalVariable()
' Esco dalla pagina
' Sistemo interfaccia
m_DrawPage.VariablesGrd.Children.Remove(Me)
m_DrawPage.LeftButtonGrd.Children.Add(m_InternalCompoPage)
' Reset componente
@@ -369,5 +302,4 @@ Public Class CompoDimensionUC
EgtDraw()
End Sub
#End Region ' METHODS for InternalCompo
End Class
+7 -41
View File
@@ -30,9 +30,8 @@ Public Class DrawPageUC
Friend m_SideAngleUC As SideAngleUC
Friend m_FiloTopUC As FiloTopUC
' Variabile che indica se componenti interni o esterni (usato anche per definire le alzatine e i fronatlini)
' Variabile che indica se componenti interni o esterni
Friend m_bInternalCompo As Boolean = False
Friend m_bBackFromInternalCompo As Boolean = False
' Properties
Private m_sCompoDir As String = String.Empty
@@ -41,10 +40,6 @@ Public Class DrawPageUC
Friend m_bDrawOk As Boolean = False
Private m_bFirst As Boolean = True
' questa variabile serve per risalire al nome della componente che ospita i componenti interni att
Friend m_sMainCompo As String = String.Empty
' Trf Data
Private m_bTrfData As Boolean = False
Private m_TrfOrderCode As String = ""
@@ -114,7 +109,6 @@ Public Class DrawPageUC
CompoDimension
SideAngle
FiloTop
AlzFront
End Enum
Private Sub DrawPage_Initialized(sender As Object, e As EventArgs)
@@ -185,7 +179,6 @@ Public Class DrawPageUC
End Sub
' carico le impostazioni grafiche della scena (solo al primo avvio)
Private Sub DrawPage_Loaded(sender As Object, e As RoutedEventArgs)
If m_bFirst Then
@@ -271,20 +264,16 @@ Public Class DrawPageUC
m_sCsvName = ""
End Sub
' recupero il click sulla scena ed assegno il metodo a secondo della pagina aperta
Private Sub OnMouseDownScene(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles DrawScene.OnMouseDownScene
' Si può selezionare solo con il tasto sinistro e se stato NULL
If e.Button <> Windows.Forms.MouseButtons.Left Or Not DrawScene.IsStatusNull() Then Return
' Si può selezionare solo se non si sta già editando un componente
If m_ActiveComponentPage = Pages.InternalComponent Then
OnMouseDownSceneInternalComponent(e)
OnMouseDownSceneInternalComponent( e)
ElseIf m_ActiveComponentPage = Pages.SideAngle Then
OnMouseDownSceneSideAngle(e)
OnMouseDownSceneSideAngle( e)
ElseIf m_ActiveComponentPage = Pages.FiloTop Then
OnMouseDownSceneFiloTop(e)
ElseIf m_ActiveComponentPage = Pages.AlzFront Then
' da definire
OnMouseDownSceneFiloTop( e)
End If
End Sub
@@ -508,7 +497,6 @@ Public Class DrawPageUC
If sCompo = m_sCompoName Then
Return
End If
m_sCompoName = sCompo
' Pulisco l'ambiente lua
ResetLuaVariables()
@@ -870,9 +858,6 @@ Public Class DrawPageUC
End Function
Private Sub OkBtn_Click(sender As Object, e As RoutedEventArgs) Handles OkBtn.Click
m_bBackFromInternalCompo = False
m_bInternalCompo = False
m_SceneButtons.MeasureBtn.IsChecked = False
' se sto definendo un componente interno non posso uscire
If m_ActiveComponentPage = Pages.CompoDimension And m_bInternalCompo Then Return
@@ -891,9 +876,7 @@ Public Class DrawPageUC
' Reset inclinazioni
m_SideAngleUC.DeleteSideAngle()
' Chiudo compo interni nel caso siano aperti
LeftButtonGrd.Children.Remove(m_MainComponentPage.m_SecondaryComponentPage)
LeftButtonGrd.Children.Remove(m_CompoDimension.m_InternalCompoPage)
LeftButtonGrd.Children.Remove(m_CompoDimension.m_AlzFrontPage)
' Istruzioni per chiudere ImportPageUC e aprire CadCutPageUC
m_MainWindow.MainWindowGrid.Children.Remove(m_MainWindow.m_DrawPageUC)
m_MainWindow.MainWindowGrid.Children.Add(m_MainWindow.m_CurrentProjectPageUC)
@@ -901,11 +884,7 @@ Public Class DrawPageUC
End Sub
' esco dalla pagina corrente
Private Sub ExitBtn_Click(sender As Object, e As RoutedEventArgs) Handles ExitBtn.Click
m_bBackFromInternalCompo = False
m_bInternalCompo = False
m_SceneButtons.MeasureBtn.IsChecked = False
' Elimino nome del componente precedente
m_sCompoName = String.Empty
@@ -914,7 +893,6 @@ Public Class DrawPageUC
' Chiudo compo secondari e interni nel caso siano aperti
LeftButtonGrd.Children.Remove(m_MainComponentPage.m_SecondaryComponentPage)
LeftButtonGrd.Children.Remove(m_CompoDimension.m_InternalCompoPage)
LeftButtonGrd.Children.Remove(m_CompoDimension.m_AlzFrontPage)
' Istruzioni per chiudere ImportPageUC e aprire CadCutPageUC
m_MainWindow.MainWindowGrid.Children.Remove(m_MainWindow.m_DrawPageUC)
m_MainWindow.MainWindowGrid.Children.Add(m_MainWindow.m_CurrentProjectPageUC)
@@ -948,9 +926,6 @@ Public Class DrawPageUC
ElseIf m_ActiveComponentPage = Pages.InternalComponent Then
m_PrevSideAnglePage = Pages.InternalComponent
LeftButtonGrd.Children.Remove(m_CompoDimension.m_InternalCompoPage)
ElseIf m_ActiveComponentPage = Pages.AlzFront Then
m_PrevSideAnglePage = Pages.AlzFront
LeftButtonGrd.Children.Remove(m_CompoDimension.m_AlzFrontPage)
End If
VariablesGrd.Children.Add(m_SideAngleUC)
FiloTopBtn.IsEnabled = False
@@ -1012,9 +987,6 @@ Public Class DrawPageUC
ElseIf m_ActiveComponentPage = Pages.InternalComponent Then
m_PrevSideAnglePage = Pages.InternalComponent
LeftButtonGrd.Children.Remove(m_CompoDimension.m_InternalCompoPage)
ElseIf m_ActiveComponentPage = Pages.AlzFront Then
m_PrevSideAnglePage = Pages.AlzFront
LeftButtonGrd.Children.Remove(m_CompoDimension.m_AlzFrontPage)
End If
VariablesGrd.Children.Add(m_SideAngleUC)
FiloTopBtn.IsEnabled = False
@@ -1073,9 +1045,6 @@ Public Class DrawPageUC
ElseIf m_ActiveComponentPage = Pages.InternalComponent Then
m_PrevSideAnglePage = Pages.InternalComponent
LeftButtonGrd.Children.Remove(m_CompoDimension.m_InternalCompoPage)
ElseIf m_ActiveComponentPage = Pages.AlzFront Then
m_PrevSideAnglePage = Pages.AlzFront
LeftButtonGrd.Children.Remove(m_CompoDimension.m_AlzFrontPage)
End If
VariablesGrd.Children.Add(m_SideAngleUC)
SideAngleBtn.IsEnabled = False
@@ -1129,13 +1098,10 @@ Public Class DrawPageUC
' Imposto modalità
If m_ActiveComponentPage = Pages.CompoDimension Then
m_PrevSideAnglePage = Pages.CompoDimension
VariablesGrd.Children.Remove(m_CompoDimension)
VariablesGrd.Children.Remove( m_CompoDimension)
ElseIf m_ActiveComponentPage = Pages.InternalComponent Then
m_PrevSideAnglePage = Pages.InternalComponent
LeftButtonGrd.Children.Remove(m_CompoDimension.m_InternalCompoPage)
ElseIf m_ActiveComponentPage = Pages.AlzFront Then
m_PrevSideAnglePage = Pages.AlzFront
LeftButtonGrd.Children.Remove(m_CompoDimension.m_AlzFrontPage)
LeftButtonGrd.Children.Remove( m_CompoDimension.m_InternalCompoPage)
End If
VariablesGrd.Children.Add( m_FiloTopUC)
SideAngleBtn.IsEnabled = False
@@ -1193,7 +1159,7 @@ Public Class DrawPageUC
Case Pages.SideAngle
VariablesGrd.Children.Remove( m_SideAngleUC)
Case Pages.FiloTop
VariablesGrd.Children.Remove(m_FiloTopUC)
VariablesGrd.Children.Remove( m_FiloTopUC)
End Select
' Pulisco l'ambiente lua
+1 -1
View File
@@ -79,7 +79,7 @@ Module Engrave
End Function
Friend Function GetEngraveAff(cCol As Color3d, ByRef dAff As Double, ByRef dLar As Double) As Boolean
For Each Ctsa As CTE In m_ListCte
For Each Ctsa In m_ListCte
If Ctsa.m_bOk And
Math.Abs(cCol.R - Ctsa.m_R) < m_nTol And
Math.Abs(cCol.G - Ctsa.m_G) < m_nTol And
+4 -23
View File
@@ -17,10 +17,9 @@ Public Class InternalComponentPageUC
m_bIsFirstPage = True
LoadPage()
CurrentBtn = Nothing
' bottone per selezionare la seconda pagina di componenti interni
Compo9.SetValue(Grid.ColumnProperty, 0)
Compo9.SetValue(Grid.ColumnSpanProperty, 2)
LabelCompo9.Text = EgtMsg(MSG_COMPONENTPAGEUC + 9) ' Altri
LabelCompo9.Text = EgtMsg(MSG_COMPONENTPAGEUC + 9)
ImageCompo9.Visibility = Windows.Visibility.Hidden
LabelCompo9.Visibility = Windows.Visibility.Visible
' Se i componenti interni sono più di 8 viene visualizzato il bottone "Altri" altrimenti no
@@ -267,7 +266,7 @@ Public Class InternalComponentPageUC
Dim ThicknessConverter As New ThicknessConverter
' Assegnazione immagine e testo ai Button
For index As Integer = 1 To 8
For index = 1 To 8
Dim CustomThickness As Thickness = ThicknessConverter.ConvertFromString("0")
Dim nCompoName As Integer
Dim sCompo As String = ""
@@ -285,8 +284,7 @@ Public Class InternalComponentPageUC
' Verifico presenza immagine e la aggiungo
If sCompoImage.Length <> 0 Then
Try
Dim sPath As String = m_MainWindow.GetResourcesDir() & "\" & sCompoImage
sCompoImageSource = ImageConverter.ConvertFromString(sPath)
sCompoImageSource = ImageConverter.ConvertFromString(m_MainWindow.GetResourcesDir() & "\" & sCompoImage)
GetImage(index).Height = 65
GetImage(index).Width = 65
GetImage(index).Source = sCompoImageSource
@@ -366,24 +364,7 @@ Public Class InternalComponentPageUC
Private Sub BackBtn_Click(sender As Object, e As RoutedEventArgs) Handles BackBtn.Click
m_MainWindow.m_DrawPageUC.m_SceneButtons.MeasureBtn.IsChecked = False
' torno alla pagina iniziale di selezione del piano (Compo)
'm_MainWindow.m_DrawPageUC.BackBtn_Click(sender, e)
'--------- NUOVA GESTIONE ---------
' rimuovo l'elenco di bottoni per selezionare il tipo di componente interna
m_MainWindow.m_DrawPageUC.LeftButtonGrd.Children.Remove(Me)
' inserisco nella Grid VaribalsesGrid lo UeserControl per definire le dimensioni della componente
m_MainWindow.m_DrawPageUC.VariablesGrd.Children.Add(m_MainWindow.m_DrawPageUC.m_CompoDimension)
' nascondo la lista dei parametri
m_MainWindow.m_DrawPageUC.m_CompoDimension.CollapsedAllParam()
' sto uscendo dalla componente interna (quindi comunico il cambio di componente)
m_MainWindow.m_DrawPageUC.m_bInternalCompo = False
' comunico che sto arrivando da una componente interna
m_MainWindow.m_DrawPageUC.m_bBackFromInternalCompo = True
'm_MainWindow.m_DrawPageUC.SelectedComponent(m_MainWindow.m_DrawPageUC.m_sMainCompo)
'm_MainWindow.m_DrawPageUC.m_ActiveComponentPage = DrawPageUC.Pages.CompoDimension
m_MainWindow.m_DrawPageUC.BackBtn_Click(sender, e)
End Sub
End Class
+1 -1
View File
@@ -268,7 +268,7 @@ Public Class MainComponentPageUC
Dim ThicknessConverter As New ThicknessConverter
'Assegnazione immagine e testo ai Button
For index As Integer = 1 To 8
For index = 1 To 8
Dim CustomThickness As New Thickness(0)
Dim nCompoName As Integer = GetPrivateProfileInt("Compo" & index + nDeltaSecondPage, "Name", 0, m_MainWindow.GetIniFile())
Dim sCompoImage As String = ""
@@ -14,7 +14,6 @@ Public Class SecondaryComponentPageUC
' Variabile che contiene il nome del componente selezionato
Friend m_sCurrCompo As String = String.Empty
' dopo aver definito la forma della componente definisco quali parametri usare per la sua definizione
Private Sub SecondaryComponentPage_Loaded(sender As Object, e As RoutedEventArgs)
m_MainComponentPage = m_MainWindow.m_DrawPageUC.m_MainComponentPage
@@ -220,10 +219,8 @@ Public Class SecondaryComponentPageUC
' Carico componente
m_MainWindow.m_DrawPageUC.SelectedComponent(sCompo)
m_MainWindow.m_DrawPageUC.m_sMainCompo = sCompo
m_sCurrCompo = "Compo" & GetButtonNumber(CurrentBtn.Name)
m_MainWindow.m_DrawPageUC.VariablesGrd.Children.Add(m_MainWindow.m_DrawPageUC.m_CompoDimension)
'm_MainWindow.m_DrawPageUC.DimensionBtn.IsChecked = True
m_MainWindow.m_DrawPageUC.SideAngleBtn.IsChecked = False
m_MainWindow.m_DrawPageUC.FiloTopBtn.IsChecked = False
+1 -1
View File
@@ -371,7 +371,7 @@ Module SideAngle
End Function
Friend Function GetSideAngHeel( cCol As Color3d, ByRef dAng As Double, ByRef dHeel As Double) As Boolean
For Each Ctsa As CTSA In m_ListCtsa
For Each Ctsa In m_ListCtsa
If Ctsa.m_bOk And
Math.Abs( cCol.R - Ctsa.m_R) < m_nTol And
Math.Abs( cCol.G - Ctsa.m_G) < m_nTol And
+10 -10
View File
@@ -528,7 +528,7 @@ Public Class SideAngleUC
' Se modalità angoli di inclinazione...
If m_Mode = ModeOpt.SIDEANGLE Then
' Per ogni entità (della lista inizializzata), creo testo con nome e angolo di inclinazione
For Each Entity As SideAngleEntity In m_SideAngleEntityList
For Each Entity In m_SideAngleEntityList
Dim sText As String = Entity.sEntityName & " = " & DoubleToString(Entity.dSideAngle, 2) & "°"
If Entity.dSideHeel > 10 * EPS_SMALL Then sText += "; " & LenToString(Entity.dSideHeel, 2)
SideAngle.AddTextToLine(sText, Entity.nTextId, Entity.nGeomId, 20, dBBoxRad, True)
@@ -536,7 +536,7 @@ Public Class SideAngleUC
' Altrimenti modalità gocciolatoio
Else
' Per ogni entità creo testo con nome
For Each Entity As DripEntity In m_DripEntityList
For Each Entity In m_DripEntityList
SideAngle.AddTextToLine(Entity.sEntityName, Entity.nTextId, Entity.nGeomId, 20, dBBoxRad, True)
Next
' Creo le geometrie dei gocciolatoi
@@ -549,7 +549,7 @@ Public Class SideAngleUC
' refresh dei checkbox e della caselle di testo per tutte le entità presenti nelle liste SideAngle/DripEntity
Private Sub RefreshCheckAndValue()
If m_Mode = ModeOpt.SIDEANGLE Then
For nIndex As Integer = 1 To m_nCount
For nIndex = 1 To m_nCount
Dim Entity As SideAngleEntity = m_SideAngleEntityList(nIndex - 1)
' Creo testo con angolo di inclinazione e dimensione tallone
If nIndex < (m_nCurrPage - 1) * MAX_LINES Or nIndex > m_nCurrPage * MAX_LINES Then Continue For
@@ -560,7 +560,7 @@ Public Class SideAngleUC
GetHeelTxBxFromIndex(nTxBxIndex).Text = LenToString(Entity.dSideHeel, 1)
Next
Else
For nIndex As Integer = 1 To m_nCount
For nIndex = 1 To m_nCount
Dim Entity As DripEntity = m_DripEntityList(nIndex - 1)
' Imposto check box (se sono stati definiti il numero corretto di CheckBox
If nIndex < ( m_nCurrPage - 1) * MAX_LINES Or nIndex > m_nCurrPage * MAX_LINES Then Continue For
@@ -633,7 +633,7 @@ Public Class SideAngleUC
End If
' Per ogni entità con gocciolatoio, ne inserisco una copia nel layer
Dim vSelId As New List(Of Integer)
For Each Entity As DripEntity In m_DripEntityList
For Each Entity In m_DripEntityList
If Entity.bHaveDrip Then
Dim nSouId As Integer = EgtGetFirstNameInGroup(nOutLoopId, Entity.sEntityName)
Dim nNewId As Integer = EgtCopyGlob(nSouId, DripLayer)
@@ -731,7 +731,7 @@ Public Class SideAngleUC
Dim vJoint As New List(Of Boolean)
Dim bJointStart As Boolean = False
For Each Entity As DripEntity In m_DripEntityList
For Each Entity In m_DripEntityList
If Entity.bHaveDrip Then
vJoint.Add(True)
Else
@@ -742,7 +742,7 @@ Public Class SideAngleUC
bJointStart = True
End If
For Each Entity As DripEntity In m_DripEntityList
For Each Entity In m_DripEntityList
If Entity.bHaveDrip Then
Dim nSouId As Integer = EgtGetFirstNameInGroup(nOutLoopId, Entity.sEntityName)
@@ -753,7 +753,7 @@ Public Class SideAngleUC
End If
' devo distingure i casi in cui inserisco un valore positivo ed uno negativo!
For Each IdCurve As Integer In vTempSelId
For Each IdCurve In vTempSelId
' accorcio entrmabi i lati
Dim dLen As Double
@@ -1366,7 +1366,7 @@ Friend Class SideAngleEntity
Return Nothing
End If
For Each Entity As SideAngleEntity In EntityList
For Each Entity In EntityList
If Entity.m_sEntityName = sEntityName Then
Return Entity
End If
@@ -1455,7 +1455,7 @@ Friend Class DripEntity
Return Nothing
End If
For Each Entity As DripEntity In EntityList
For Each Entity In EntityList
If Entity.m_sEntityName = sEntityName Then
Return Entity
End If
+1 -1
View File
@@ -147,7 +147,7 @@ Public Class FrameMachiningUC
If SysNotes <> String.Empty Then
Dim MachiningMaterials() = SysNotes.Split(";".ToCharArray)
SysNotes = String.Empty
For Each Material As Object In MachiningMaterials
For Each Material In MachiningMaterials
Dim Param() As String = Material.Split(",".ToCharArray)
If Param(0) = m_CurrMachine.CurrMat.nId.ToString() Then
Dim dRawHeight = GetRawHeight()
+19 -254
View File
@@ -20,7 +20,6 @@
<Grid.RowDefinitions>
<RowDefinition Height="2*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="1.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="1*"/>
@@ -30,195 +29,6 @@
<RowDefinition Height="1*"/>
</Grid.RowDefinitions>
<!--Costruisco le riche per la colonna 3-->
<Grid Grid.Column="2" Grid.RowSpan="9">
<Grid.RowDefinitions>
<!--GruopBox: taglio lama-->
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
<!--GruopBoxs: Fresatura/>Foratura/WaterJet-->
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="0.5*"/>
<!--GroupBox: vai ad Home-->
<RowDefinition Height="1*"/>
<RowDefinition Height="0.375*"/>
</Grid.RowDefinitions>
<!--Parametri Taglio Lama: 5 Parametri-->
<GroupBox Name="SawGpBx" Style="{DynamicResource OmagCut_GroupBox}" Grid.Column="2" Grid.RowSpan="4">
<!--definizione della grigli ainterna-->
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="2*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
</Grid.RowDefinitions>
<TextBlock Name="CutExtraLenTxBl" Grid.Column="0" Grid.Row="0"
Style="{DynamicResource OmagCut_ToolsDBTextBlock}"/>
<EgtWPFLib:EgtTextBox Name="CutExtraLenTxBx" Grid.Column="1" Grid.Row="0" Margin="10,0,10,0"
Style="{DynamicResource OmagCut_CalculatorTextBox}" />
<TextBlock Name="AngleCutExtraLenTxBl" Grid.Column="0" Grid.Row="1"
Style="{DynamicResource OmagCut_ToolsDBTextBlock}"/>
<EgtWPFLib:EgtTextBox Name="AngleCutExtraLenTxBx" Grid.Column="1" Grid.Row="1" Margin="10,0,10,0"
Style="{DynamicResource OmagCut_CalculatorTextBox}" />
<TextBlock Name="ExtArcMinRadTxBl" Grid.Column="0" Grid.Row="2"
Style="{DynamicResource OmagCut_ToolsDBTextBlock}"/>
<EgtWPFLib:EgtTextBox Name="ExtArcMinRadTxBx" Grid.Column="1" Grid.Row="2" Margin="10,0,10,0"
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<TextBlock Name="IntArcMaxSideAngTxBl" Grid.Column="0" Grid.Row="3"
Style="{DynamicResource OmagCut_ToolsDBTextBlock}"/>
<EgtWPFLib:EgtTextBox Name="IntArcMaxSideAngTxBx" Grid.Column="1" Grid.Row="3" Margin="10,0,10,0"
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<TextBlock Name="PreCutExitTxBl" Grid.Column="0" Grid.Row="4"
Style="{DynamicResource OmagCut_ToolsDBTextBlock}"/>
<CheckBox Name="PreCutExitChBx" Grid.Column="1" Grid.Row="4" Margin="10,0,10,0"
Style="{StaticResource OmagCut_CheckBox_Single}"
HorizontalAlignment="Right"/>
</Grid>
</GroupBox>
<Grid Grid.Column="2" Grid.Row="4" Grid.RowSpan="8">
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<!--Parametri fori: 4 Parametri-->
<GroupBox Name="HolesGpBx" Grid.Column="0" Grid.Row="0" Grid.ColumnSpan="2" Grid.RowSpan="3"
Style="{DynamicResource OmagCut_GroupBox}">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="145*"/>
<ColumnDefinition Width="23*"/>
<ColumnDefinition Width="169*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
</Grid.RowDefinitions>
<TextBlock Name="HolesOffsetTxBl" Grid.Column="0" Grid.Row="0"
Style="{DynamicResource OmagCut_ToolsDBTextBlock}" Grid.ColumnSpan="2" Margin="10,0,10,0"/>
<EgtWPFLib:EgtTextBox Name="HolesOffsetTxBx" Grid.Column="2" Grid.Row="0" Margin="10,0,10,0"
Style="{DynamicResource OmagCut_CalculatorTextBox}" />
<TextBlock Name="HolesOverlapTxBl" Grid.Column="0" Grid.Row="1"
Style="{DynamicResource OmagCut_ToolsDBTextBlock}" Grid.ColumnSpan="2" Margin="10,0,10,0"/>
<EgtWPFLib:EgtTextBox Name="HolesOverlapTxBx" Grid.Column="2" Grid.Row="1" Margin="10,0,10,0"
Style="{DynamicResource OmagCut_CalculatorTextBox}" />
<TextBlock Name="HolesToleranceTxBl" Grid.Column="0" Grid.Row="2"
Style="{DynamicResource OmagCut_ToolsDBTextBlock}" Grid.ColumnSpan="2" Margin="10,0,10,0"/>
<EgtWPFLib:EgtTextBox Name="HolesToleranceTxBx" Grid.Column="2" Grid.Row="2" Margin="10,0,10,0"
Style="{DynamicResource OmagCut_CalculatorTextBox}" />
<TextBlock Name="OneHoleInCornerTxBl" Grid.Column="0" Grid.Row="3" Grid.ColumnSpan="3"
Style="{DynamicResource OmagCut_ToolsDBTextBlock}" Margin="10,0,10,0" />
<CheckBox Name="OneHoleInCornerChBx" Grid.Column="2" Grid.Row="3" Style="{StaticResource OmagCut_CheckBox_Single}"
HorizontalAlignment="Right" Margin="10,0,10,0"/>
</Grid>
</GroupBox>
<!--Parametri Fresatura: 3 Parametri-->
<GroupBox Name="MillingsParamGpBx" Style="{DynamicResource OmagCut_GroupBox}" Grid.Column="0" Grid.Row="3" Grid.ColumnSpan="2" Grid.RowSpan="2">
<Grid Grid.Column="3" Grid.Row="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="2*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<TextBlock Name="CornerCutsTxBl" Grid.Row="0" Grid.ColumnSpan="2"
Style="{DynamicResource OmagCut_ToolsDBTextBlock}" />
<CheckBox Name="CornerCutsChBx" Grid.Row="0" Grid.ColumnSpan="2" Style="{StaticResource OmagCut_CheckBox_Single}"
HorizontalAlignment="Right" Margin="0,0,10,0"/>
<TextBlock Name="InternalCutsTxBl" Grid.Row="1" Grid.ColumnSpan="2"
Style="{DynamicResource OmagCut_ToolsDBTextBlock}" Margin="10,0,0,10" VerticalAlignment="Bottom" />
<CheckBox Name="InternalCutsChBx" Grid.Row="1" Grid.ColumnSpan="2" Style="{StaticResource OmagCut_CheckBox_Single}"
HorizontalAlignment="Right" Margin="0,0,10,0"/>
<TextBlock Name="ShortTxBl" Grid.Column="0" Grid.Row="2"
Style="{DynamicResource OmagCut_ToolsDBTextBlock}"/>
<EgtWPFLib:EgtTextBox Name="ShortTxBx" Grid.Column="1" Grid.Row="2" Margin="10,0,10,0"
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
</Grid>
</GroupBox>
<!--Parametri WaterJet: 1 Parametro (se questo GroupBox attivo allora nascondo Fori/Fresatura)-->
<GroupBox Name="WjsParamGpBx" Grid.Column="0" Grid.Row="0" Grid.ColumnSpan="2" Grid.RowSpan="1"
Style="{DynamicResource OmagCut_GroupBox}">
<Grid Grid.Column="3" Grid.Row="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="2*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<TextBlock Name="WjIntCutsTxBl" Grid.Row="1" Grid.ColumnSpan="2"
Style="{DynamicResource OmagCut_ToolsDBTextBlock}" Margin="10,0,0,10" VerticalAlignment="Bottom" />
<CheckBox Name="WjIntCutsChBx" Grid.Row="1" Grid.ColumnSpan="2" Style="{StaticResource OmagCut_CheckBox_Single}"
HorizontalAlignment="Right" Margin="0,0,10,0"/>
</Grid>
</GroupBox>
</Grid>
<!--Parametri Taglio diretto: 1 Parametro-->
<GroupBox Name="DirectCutsParamGpBx" Style="{DynamicResource OmagCut_GroupBox}" Grid.Column="2" Grid.Row="12" Grid.RowSpan="2">
<Grid>
<TextBlock Name="FinalHomeTxBl"
Style="{DynamicResource OmagCut_ToolsDBTextBlock}" />
<CheckBox Name="FinalHomeChBx" Style="{StaticResource OmagCut_CheckBox_Single}"
HorizontalAlignment="Right" Margin="0,0,10,0"/>
</Grid>
</GroupBox>
</Grid>
<Grid Grid.RowSpan="3">
<Grid.RowDefinitions>
<RowDefinition Height="1.75*"/>
@@ -289,18 +99,7 @@
</ComboBox.ItemTemplate>
</ComboBox>
<TextBlock Name="CurrCupWheelTxBl" Grid.Column="0" Grid.Row="4" Grid.ColumnSpan="3"
Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"
Visibility="Hidden"/>
<ComboBox Name="CurrCupWheelCmBx" Grid.Column="1" Grid.Row="5" Style="{StaticResource OmagCut_ComboBox}" Visibility="Hidden">
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding}" Style="{StaticResource OmagCut_LowerCaseCharacterTextBlock}"/>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
<TextBlock Name="CurrWJetTxBl" Grid.Column="0" Grid.Row="4" Grid.ColumnSpan="3"
<TextBlock Name="CurrWJetTxBl" Grid.Column="0" Grid.Row="4" Grid.ColumnSpan="3"
Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"
Visibility="Hidden"/>
<ComboBox Name="CurrWJetCmBx" Grid.Column="1" Grid.Row="5" Style="{StaticResource OmagCut_ComboBox}" Visibility="Hidden">
@@ -320,7 +119,7 @@
</Grid>
<!--<Grid Grid.Column="2" Grid.Row="2" Grid.RowSpan="6">
<Grid Grid.Column="2" Grid.Row="2" Grid.RowSpan="5">
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
@@ -422,7 +221,7 @@
</Grid>
</GroupBox>
</Grid>-->
</Grid>
<GroupBox Name="MaterialsGpBx" Style="{DynamicResource OmagCut_GroupBox}" Grid.Column="0"
Grid.Row="3" Grid.ColumnSpan="1" Grid.RowSpan="5">
@@ -471,7 +270,6 @@
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
</Grid.RowDefinitions>
<TextBlock Name="CurrSawingTxBl" Grid.Column="0" Grid.Row="0"
@@ -489,31 +287,26 @@
<EgtWPFLib:EgtTextBox Name="CurrMillingTxBx" Grid.Column="1" Grid.Row="2" Margin="10,0,10,0"
Style="{DynamicResource OmagCut_FixedTextBox}" />
<TextBlock Name="CurrPocketingTxBl" Grid.Column="0" Grid.Row="3"
<TextBlock Name="CurrWaterJettingTxBl" Grid.Column="0" Grid.Row="3"
Style="{DynamicResource OmagCut_ToolsDBTextBlock}"/>
<EgtWPFLib:EgtTextBox Name="CurrPocketingTxBx" Grid.Column="1" Grid.Row="3" Margin="10,0,10,0"
<EgtWPFLib:EgtTextBox Name="CurrWaterJettingTxBx" Grid.Column="1" Grid.Row="3" Margin="10,0,10,0"
Style="{DynamicResource OmagCut_FixedTextBox}" />
<TextBlock Name="CurrWaterJettingTxBl" Grid.Column="0" Grid.Row="4"
<TextBlock Name="CurrDripSawingTxBl" Grid.Column="0" Grid.Row="4"
Style="{DynamicResource OmagCut_ToolsDBTextBlock}"/>
<EgtWPFLib:EgtTextBox Name="CurrWaterJettingTxBx" Grid.Column="1" Grid.Row="4" Margin="10,0,10,0"
<EgtWPFLib:EgtTextBox Name="CurrDripSawingTxBx" Grid.Column="1" Grid.Row="4" Margin="10,0,10,0"
Style="{DynamicResource OmagCut_FixedTextBox}" />
<TextBlock Name="CurrDripSawingTxBl" Grid.Column="0" Grid.Row="5"
<TextBlock Name="CurrDripDrillingTxBl" Grid.Column="0" Grid.Row="5"
Style="{DynamicResource OmagCut_ToolsDBTextBlock}"/>
<EgtWPFLib:EgtTextBox Name="CurrDripSawingTxBx" Grid.Column="1" Grid.Row="5" Margin="10,0,10,0"
Style="{DynamicResource OmagCut_FixedTextBox}" />
<TextBlock Name="CurrDripDrillingTxBl" Grid.Column="0" Grid.Row="6"
Style="{DynamicResource OmagCut_ToolsDBTextBlock}"/>
<EgtWPFLib:EgtTextBox Name="CurrDripDrillingTxBx" Grid.Column="1" Grid.Row="6" Margin="10,0,10,0"
<EgtWPFLib:EgtTextBox Name="CurrDripDrillingTxBx" Grid.Column="1" Grid.Row="5" Margin="10,0,10,0"
Style="{DynamicResource OmagCut_FixedTextBox}" />
</Grid>
</GroupBox>
<!--<GroupBox Name="SawGpBx" Style="{DynamicResource OmagCut_GroupBox}" Grid.Column="2" Grid.RowSpan="2">
<GroupBox Name="SawGpBx" Style="{DynamicResource OmagCut_GroupBox}" Grid.Column="2" Grid.RowSpan="2">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="2*"/>
@@ -524,7 +317,6 @@
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
</Grid.RowDefinitions>
<TextBlock Name="CutExtraLenTxBl" Grid.Column="0" Grid.Row="0"
@@ -549,7 +341,7 @@
</Grid>
</GroupBox>-->
</GroupBox>
<Grid Grid.Column="1" Grid.Row="3" Grid.RowSpan="3">
<Grid.ColumnDefinitions>
@@ -595,7 +387,7 @@
</Grid>
<!--<GroupBox Name="DirectCutsParamGpBx" Style="{DynamicResource OmagCut_GroupBox}" Grid.Column="2" Grid.Row="8">
<GroupBox Name="DirectCutsParamGpBx" Style="{DynamicResource OmagCut_GroupBox}" Grid.Column="2" Grid.Row="7">
<Grid>
<TextBlock Name="FinalHomeTxBl"
Style="{DynamicResource OmagCut_ToolsDBTextBlock}" />
@@ -603,10 +395,10 @@
HorizontalAlignment="Right" Margin="0,0,10,0"/>
</Grid>
</GroupBox>-->
</GroupBox>
<GroupBox Name="NestingParamGpBx" Style="{DynamicResource OmagCut_GroupBox}" Grid.Column="1" Grid.Row="6" Grid.RowSpan="3">
<Grid Name="NestingGrid">
<GroupBox Name="NestingParamGpBx" Style="{DynamicResource OmagCut_GroupBox}" Grid.Column="1" Grid.Row="6" Grid.RowSpan="2">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="2*"/>
@@ -614,7 +406,6 @@
<Grid.RowDefinitions>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
</Grid.RowDefinitions>
@@ -623,27 +414,17 @@
<CheckBox Name="CompleteCutsChBx" Grid.Column="0" Grid.Row="0" Grid.ColumnSpan="2" Style="{DynamicResource OmagCut_CheckBox_Single}"
HorizontalAlignment="Right" Margin="0,0,10,0"/>
<!--Allineato-->
<TextBlock Name="AlignTxBl" Grid.Row="1" Grid.ColumnSpan="2"
Style="{DynamicResource OmagCut_ToolsDBTextBlock}" />
<CheckBox Name="AlignChBx" Grid.Row="1" Grid.ColumnSpan="2" Style="{StaticResource OmagCut_CheckBox_Single}"
HorizontalAlignment="Right" Margin="0,0,10,0"/>
<!--Ghigliottina-->
<TextBlock Name="GhigliottinaTxBl" Grid.Row="2" Grid.ColumnSpan="2"
<TextBlock Name="AutomaticTxBl" Grid.Row="2" Grid.ColumnSpan="2"
Style="{DynamicResource OmagCut_ToolsDBTextBlock}" />
<CheckBox Name="GhigliottinaChBx" Grid.Row="2" Grid.ColumnSpan="2" Style="{StaticResource OmagCut_CheckBox_Single}"
HorizontalAlignment="Right" Margin="0,0,10,0"/>
<!--Automatico-->
<TextBlock Name="AutomaticTxBl" Grid.Row="3" Grid.ColumnSpan="2"
Style="{DynamicResource OmagCut_ToolsDBTextBlock}" />
<CheckBox Name="AutomaticChBx" Grid.Row="3" Grid.ColumnSpan="2" Style="{StaticResource OmagCut_CheckBox_Single}"
<CheckBox Name="AutomaticChBx" Grid.Row="2" Grid.ColumnSpan="2" Style="{StaticResource OmagCut_CheckBox_Single}"
HorizontalAlignment="Right" Margin="0,0,10,0"/>
</Grid>
</Grid>
</GroupBox>
@@ -772,23 +553,7 @@
</Border>
<!--Cornici-->
<GroupBox Name="FrameGpBx" Style="{DynamicResource OmagCut_GroupBox}" Grid.Column="3" Grid.Row="8">
<Grid >
<Grid.ColumnDefinitions>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<TextBlock Name="FramePauseTxBl" Grid.Column="0" Grid.Row="0"
Style="{DynamicResource OmagCut_ToolsDBTextBlock}" />
<CheckBox Name="FramePauseChBx" Grid.Column="1" Grid.Row="0" Style="{StaticResource OmagCut_CheckBox_Single}"
HorizontalAlignment="Right" Margin="0,0,10,0"/>
</Grid>
</GroupBox>
<UniformGrid Columns="4" Grid.Row="8">
<UniformGrid Columns="4" Grid.Row="8">
<Button x:Name="SawProbingBtn"
Style="{DynamicResource OmagCut_YellowGradientYellowIconButton}">
<Image Source="{DynamicResource SawProbeImg}" Style="{StaticResource OmagCut_ScaleButtonIcon}"/>
+64 -246
View File
@@ -20,7 +20,6 @@ Public Class AlarmsPageUC
Private m_SawList As New ObservableCollection(Of String)
Private m_DrillList As New ObservableCollection(Of String)
Private m_MillList As New ObservableCollection(Of String)
Private m_CupWheelList As New ObservableCollection(Of String)
Private m_WaterJetList As New ObservableCollection(Of String)
Private m_AuxToolTypeList As New List(Of StringIdCmBx)
@@ -33,7 +32,6 @@ Public Class AlarmsPageUC
CurrSawCmBx.ItemsSource = m_SawList
CurrDrillCmBx.ItemsSource = m_DrillList
CurrMillCmBx.ItemsSource = m_MillList
CurrCupWheelCmBx.ItemsSource = m_CupWheelList
CurrWJetCmBx.ItemsSource = m_WaterJetList
AuxiliaryToolCmBx.ItemsSource = m_AuxToolTypeList
@@ -49,7 +47,6 @@ Public Class AlarmsPageUC
CurrSawTxBl.Text = EgtMsg(MSG_ALARMSPAGEUC + 1)
AuxiliaryToolTxBl.Text = EgtMsg(MSG_ALARMSPAGEUC + 2)
CurrDrillTxBl.Text = EgtMsg(MSG_ALARMSPAGEUC + 3)
CurrCupWheelTxBl.Text = EgtMsg(MSG_ALARMS2PAGEUC + 20)
CurrMillTxBl.Text = EgtMsg(MSG_ALARMSPAGEUC + 4)
CurrWJetTxBl.Text = EgtMsg(MSG_ALARMSPAGEUC + 0)
HolesOffsetTxBl.Text = EgtMsg(MSG_ALARMSPAGEUC + 9)
@@ -67,7 +64,6 @@ Public Class AlarmsPageUC
HolesGpBx.Header = EgtMsg(MSG_ALARMSPAGEUC + 17)
ExtArcMinRadTxBl.Text = EgtMsg(MSG_ALARMSPAGEUC + 18)
IntArcMaxSideAngTxBl.Text = EgtMsg(MSG_ALARMSPAGEUC + 24)
PreCutExitTxBl.Text = EgtMsg(91065) ' PreTaglio uscite
MachineParamGpBx.Header = EgtMsg(MSG_ALARMSPAGEUC + 19)
SawGpBx.Header = EgtMsg(MSG_ALARMSPAGEUC + 25)
DirectCutsParamGpBx.Header = EgtMsg(MSG_ALARMSPAGEUC + 27) ' Tagli diretti
@@ -83,8 +79,7 @@ Public Class AlarmsPageUC
WJsParamGpBx.Header = EgtMsg( 91058) ' Parametri waterjet
WjIntCutsTxBl.Text = EgtMsg( 90930) ' Sempre sugli interni
NestingParamGpBx.Header = EgtMsg(MSG_ALARMSPAGEUC + 31) ' Nesting
AlignTxBl.Text = EgtMsg(90932) ' Allineato
GhigliottinaTxBl.Text = EgtMsg(91066) ' Ghigliottina
AlignTxBl.Text = EgtMsg(MSG_ALARMSPAGEUC + 32) ' Allineato
AutomaticTxBl.Text = EgtMsg(91059) ' Automatico
SetUpBtn.Content = EgtMsg(MSG_ALARMSPAGEUC + 33) ' Attrezzaggio
NewMatBtn.Content = EgtMsg(MSG_ALARMSPAGEUC + 34) ' Nuovo
@@ -103,12 +98,9 @@ Public Class AlarmsPageUC
CurrSawingTxBl.Text = EgtMsg(MSG_ALARMS2PAGEUC + 2) ' Taglio lama
CurrDrillingTxBl.Text = EgtMsg(MSG_ALARMS2PAGEUC + 3) ' Foratura
CurrMillingTxBl.Text = EgtMsg(MSG_ALARMS2PAGEUC + 4) ' Fresatura
CurrPocketingTxBl.Text = EgtMsg(91069) ' Svuotatura
CurrWaterJettingTxBl.Text = EgtMsg(MSG_ALARMS2PAGEUC + 7) ' WaterJet
CurrDripSawingTxBl.Text = EgtMsg(MSG_ALARMS2PAGEUC + 5) ' DripSawing
CurrDripDrillingTxBl.Text = EgtMsg(MSG_ALARMS2PAGEUC + 6) ' DripDrilling
FrameGpBx.Header = EgtMsg(91068) ' Cornici
FramePauseTxBl.Text = EgtMsg(91067) ' Inserisci pausa
AutoRawImageParamGpBx.Visibility = Windows.Visibility.Hidden
End Sub
@@ -122,7 +114,7 @@ Public Class AlarmsPageUC
Select Case m_CurrentMachine.MountedToolConfig
Case CurrentMachine.MountedToolConfigs.SAW
' Elimino le righe inutili e riduco il groupbox utensili correnti
For Index As Integer = 7 - 1 To 2 Step -1
For Index = 7 - 1 To 2 Step -1
CurrToolsGrid.RowDefinitions.RemoveAt(Index)
Next
Dim EndRow As New RowDefinition
@@ -187,43 +179,30 @@ Public Class AlarmsPageUC
' Verifico la configurazione della macchina per creare i combobox
Select Case m_CurrentMachine.MountedToolConfig
Case CurrentMachine.MountedToolConfigs.SAW
' Non compio alcuna azione (non sono previsti utensili ausiliari)
' Non compio alcuna azione
Case CurrentMachine.MountedToolConfigs.SAWANDAUXTOOL
m_AuxToolTypeList.Clear()
' creo l'elenco degli utensili ausiliri
If m_CurrentMachine.bDrill Then
m_AuxToolTypeList.Add(New StringIdCmBx(1, EgtMsg(MSG_ALARMSPAGEUC + 21))) ' Foretto
End If
If m_CurrentMachine.bMill Then
m_AuxToolTypeList.Add(New StringIdCmBx(2, EgtMsg(MSG_ALARMSPAGEUC + 22))) ' Fresa
End If
If m_CurrentMachine.bCupWheel Then
m_AuxToolTypeList.Add(New StringIdCmBx(3, EgtMsg(MSG_TOOLSDBPAGEUC + 34))) ' Mola da scasso
End If
If m_CurrentMachine.bWaterJet Then
m_AuxToolTypeList.Add(New StringIdCmBx(4, EgtMsg(MSG_TOOLSDBPAGEUC + 35))) ' WaterJet
m_AuxToolTypeList.Add(New StringIdCmBx(3, EgtMsg(MSG_TOOLSDBPAGEUC + 35))) ' WaterJet
End If
' Aggiungo elemento nessuno in fondo alla lista
m_AuxToolTypeList.Add(New StringIdCmBx(0, EgtMsg(MSG_ALARMSPAGEUC + 20))) ' Nessuno
' ComboBox per la selezione dell'utensile ausiliario
AuxiliaryToolTxBl.Visibility = Windows.Visibility.Visible
AuxiliaryToolCmBx.Visibility = Windows.Visibility.Visible
' Drilling
CurrDrillTxBl.Visibility = Windows.Visibility.Hidden
CurrDrillCmBx.Visibility = Windows.Visibility.Hidden
' Milling
CurrMillTxBl.Visibility = Windows.Visibility.Hidden
CurrMillCmBx.Visibility = Windows.Visibility.Hidden
' Pocketing
CurrCupWheelTxBl.Visibility = Windows.Visibility.Hidden
CurrCupWheelCmBx.Visibility = Windows.Visibility.Hidden
' WaterJet
CurrWJetTxBl.Visibility = Windows.Visibility.Hidden
CurrWJetCmBx.Visibility = Windows.Visibility.Hidden
' verifico quale utensile è attulamente "montato sulla macchina"
If m_CurrentMachine.sCurrDrill <> String.Empty Then
CreateToolList(MCH_TF.DRILLBIT, m_DrillList)
m_DrillList.Add(NO_TOOL)
@@ -232,24 +211,17 @@ Public Class AlarmsPageUC
CurrDrillTxBl.Visibility = Windows.Visibility.Visible
CurrDrillCmBx.Visibility = Windows.Visibility.Visible
ElseIf m_CurrentMachine.sCurrMill <> String.Empty Then
CreateToolList(MCH_TF.MILL, MCH_TY.MILL_STD, m_MillList)
CreateToolList(MCH_TF.MILL, m_MillList)
m_MillList.Add(NO_TOOL)
CurrMillCmBx.SelectedItem = m_CurrentMachine.sCurrMill
AuxiliaryToolCmBx.SelectedItem = StringIdCmBx.FromIdToStringIdCmBx(2, m_AuxToolTypeList)
CurrMillTxBl.Visibility = Windows.Visibility.Visible
CurrMillCmBx.Visibility = Windows.Visibility.Visible
ElseIf m_CurrentMachine.sCurrMillNoTip <> String.Empty Then
CreateToolList(MCH_TF.MILL, MCH_TY.MILL_NOTIP, m_CupWheelList)
m_CupWheelList.Add(NO_TOOL)
CurrCupWheelCmBx.SelectedItem = m_CurrentMachine.sCurrMillNoTip
AuxiliaryToolCmBx.SelectedItem = StringIdCmBx.FromIdToStringIdCmBx(3, m_AuxToolTypeList)
CurrCupWheelTxBl.Visibility = Windows.Visibility.Visible
CurrCupWheelCmBx.Visibility = Windows.Visibility.Visible
ElseIf m_CurrentMachine.sCurrWaterJet <> String.Empty Then
CreateToolList(MCH_TF.WATERJET, m_WaterJetList)
m_WaterJetList.Add(NO_TOOL)
CurrWJetCmBx.SelectedItem = m_CurrentMachine.sCurrWaterJet
AuxiliaryToolCmBx.SelectedItem = StringIdCmBx.FromIdToStringIdCmBx(4, m_AuxToolTypeList)
AuxiliaryToolCmBx.SelectedItem = StringIdCmBx.FromIdToStringIdCmBx(3, m_AuxToolTypeList)
CurrWJetTxBl.Visibility = Windows.Visibility.Visible
CurrWJetCmBx.Visibility = Windows.Visibility.Visible
Else
@@ -257,13 +229,54 @@ Public Class AlarmsPageUC
End If
Case CurrentMachine.MountedToolConfigs.MANUALTOOLCHANGER, CurrentMachine.MountedToolConfigs.TOOLCHANGER
' attivo il bottone per l'apertura della pagina che mostra la configurazione degli utensili in parcheggio
SetUpBtn.Visibility = Windows.Visibility.Visible
End Select
' aggiorno le TextBlock con le lavorazioni correnti
RefreschMachining()
' Verifico la configurazione della macchina per creare i textbox delle lavorazioni
CurrSawingTxBl.Visibility = Windows.Visibility.Hidden
CurrSawingTxBx.Visibility = Windows.Visibility.Hidden
CurrDrillingTxBl.Visibility = Windows.Visibility.Hidden
CurrDrillingTxBx.Visibility = Windows.Visibility.Hidden
CurrMillingTxBl.Visibility = Windows.Visibility.Hidden
CurrMillingTxBx.Visibility = Windows.Visibility.Hidden
CurrWaterJettingTxBl.Visibility = Windows.Visibility.Hidden
CurrWaterJettingTxBx.Visibility = Windows.Visibility.Hidden
CurrDripSawingTxBl.Visibility = Windows.Visibility.Hidden
CurrDripSawingTxBx.Visibility = Windows.Visibility.Hidden
CurrDripDrillingTxBl.Visibility = Windows.Visibility.Hidden
CurrDripDrillingTxBx.Visibility = Windows.Visibility.Hidden
If m_CurrentMachine.sCurrSawing <> String.Empty Then
CurrSawingTxBx.Text = m_CurrentMachine.sCurrSawing
CurrSawingTxBl.Visibility = Windows.Visibility.Visible
CurrSawingTxBx.Visibility = Windows.Visibility.Visible
End If
If m_CurrentMachine.sCurrDrilling <> String.Empty Then
CurrDrillingTxBx.Text = m_CurrentMachine.sCurrDrilling
CurrDrillingTxBl.Visibility = Windows.Visibility.Visible
CurrDrillingTxBx.Visibility = Windows.Visibility.Visible
End If
If m_CurrentMachine.sCurrMilling <> String.Empty Then
CurrMillingTxBx.Text = m_CurrentMachine.sCurrMilling
CurrMillingTxBl.Visibility = Windows.Visibility.Visible
CurrMillingTxBx.Visibility = Windows.Visibility.Visible
End If
If m_CurrentMachine.sCurrwaterJetting <> String.Empty Then
CurrWaterJettingTxBx.Text = m_CurrentMachine.sCurrwaterJetting
CurrWaterJettingTxBl.Visibility = Windows.Visibility.Visible
CurrWaterJettingTxBx.Visibility = Windows.Visibility.Visible
End If
If m_CurrentMachine.sCurrDripSawing <> String.Empty Then
CurrDripSawingTxBx.Text = m_CurrentMachine.sCurrDripSawing
CurrDripSawingTxBl.Visibility = Windows.Visibility.Visible
CurrDripSawingTxBx.Visibility = Windows.Visibility.Visible
End If
If m_CurrentMachine.sCurrDripDrilling <> String.Empty Then
CurrDripDrillingTxBx.Text = m_CurrentMachine.sCurrDripDrilling
CurrDripDrillingTxBl.Visibility = Windows.Visibility.Visible
CurrDripDrillingTxBx.Visibility = Windows.Visibility.Visible
End If
' Leggo offset fori
Dim dVal As Double
@@ -295,14 +308,6 @@ Public Class AlarmsPageUC
dVal = GetPrivateProfileDouble(S_MACH_NEST, K_MACH_EXTARCMINRAD, 200, m_MainWindow.GetMachIniFile())
EgtMdbSetGeneralParam(MCH_GP.EXTSAWARCMINRAD, dVal)
ExtArcMinRadTxBx.Text = LenToString(dVal, 2)
' Leggo se PreCutExit attivo (per taglio ceramico)
Dim nPreCutExit As Integer = GetPrivateProfileInt(S_MACH_NEST, K_MACH_PRECUTEXIT, -1, m_MainWindow.GetMachIniFile())
If nPreCutExit = -1 Then
PreCutExitTxBl.Visibility = Visibility.Hidden
PreCutExitChBx.Visibility = Visibility.Hidden
Else
PreCutExitChBx.IsChecked = ( nPreCutExit <> 0)
End If
' Leggo angolo di fianco massimo arco interno
dVal = GetPrivateProfileDouble(S_MACH_NEST, K_MACH_INTARCMAXSIDEANG, 45, m_MainWindow.GetMachIniFile())
EgtMdbSetGeneralParam(MCH_GP.INTSAWARCMAXSIDEANG, dVal)
@@ -336,16 +341,10 @@ Public Class AlarmsPageUC
' Flag per nesting allineato
AlignChBx.IsChecked =
(GetPrivateProfileInt(S_MACH_NEST, K_MACH_NEST_ALIGNED, 0, m_MainWindow.GetMachIniFile()) <> 0)
' Flag per nesting a ghigliottina
GhigliottinaChBx.IsChecked =
(GetPrivateProfileInt(S_MACH_NEST, K_MACH_NEST_GHIGLIOTTINA, 0, m_MainWindow.GetMachIniFile()) <> 0)
' Flag per nesting automatico
AutomaticChBx.IsChecked =
(GetPrivateProfileInt(S_NEST, K_AUTOMATICOPTIMIZE, 0, m_MainWindow.GetIniFile()) <> 0)
AdjustGhigliottinaTextOnAutomaticOrCompleteCuts()
' Flag per inserire la puasa dopo la sgrossatura delle cornici
FramePauseChBx.IsChecked =
(GetPrivateProfileInt(S_MACH_FRAME, K_MACH_PAUSE, 1, m_MainWindow.GetMachIniFile()) <> 0)
(GetPrivateProfileInt(S_MACH_NEST, K_MACH_NEST_AUTOMATIC, 0, m_MainWindow.GetMachIniFile()) <> 0)
AdjustAlignTextOnAutomaticOrCompleteCuts()
' Aggiorno messaggio sovratavola con numero tavola
If GetTableCount() > 1 Then
AdditionalTableTxBl.Text = EgtMsg(MSG_ALARMSPAGEUC + 36) & " " & GetCurrentTable().ToString()
@@ -376,73 +375,11 @@ Public Class AlarmsPageUC
CfrPercTxBx.Text = DoubleToString(m_CurrentMachine.dFsevPerc, 0)
End Sub
Private Sub RefreschMachining()
If m_CurrentMachine.sCurrSawing <> String.Empty Then
CurrSawingTxBx.Text = m_CurrentMachine.sCurrSawing
CurrSawingTxBl.Visibility = Windows.Visibility.Visible
CurrSawingTxBx.Visibility = Windows.Visibility.Visible
Else
CurrSawingTxBl.Visibility = Windows.Visibility.Hidden
CurrSawingTxBx.Visibility = Windows.Visibility.Hidden
End If
If m_CurrentMachine.sCurrDrilling <> String.Empty Then
CurrDrillingTxBx.Text = m_CurrentMachine.sCurrDrilling
CurrDrillingTxBl.Visibility = Windows.Visibility.Visible
CurrDrillingTxBx.Visibility = Windows.Visibility.Visible
Else
CurrDrillingTxBl.Visibility = Windows.Visibility.Hidden
CurrDrillingTxBx.Visibility = Windows.Visibility.Hidden
End If
If m_CurrentMachine.sCurrMilling <> String.Empty Then
CurrMillingTxBx.Text = m_CurrentMachine.sCurrMilling
CurrMillingTxBl.Visibility = Windows.Visibility.Visible
CurrMillingTxBx.Visibility = Windows.Visibility.Visible
Else
CurrMillingTxBl.Visibility = Windows.Visibility.Hidden
CurrMillingTxBx.Visibility = Windows.Visibility.Hidden
End If
If m_CurrentMachine.sCurrPocketing <> String.Empty Then
CurrPocketingTxBx.Text = m_CurrentMachine.sCurrPocketing
CurrPocketingTxBl.Visibility = Windows.Visibility.Visible
CurrPocketingTxBx.Visibility = Windows.Visibility.Visible
Else
CurrPocketingTxBl.Visibility = Windows.Visibility.Hidden
CurrPocketingTxBx.Visibility = Windows.Visibility.Hidden
End If
If m_CurrentMachine.sCurrWaterJetting <> String.Empty Then
CurrWaterJettingTxBx.Text = m_CurrentMachine.sCurrWaterJetting
CurrWaterJettingTxBl.Visibility = Windows.Visibility.Visible
CurrWaterJettingTxBx.Visibility = Windows.Visibility.Visible
Else
CurrWaterJettingTxBl.Visibility = Windows.Visibility.Hidden
CurrWaterJettingTxBx.Visibility = Windows.Visibility.Hidden
End If
If m_CurrentMachine.sCurrDripSawing <> String.Empty Then
CurrDripSawingTxBx.Text = m_CurrentMachine.sCurrDripSawing
CurrDripSawingTxBl.Visibility = Windows.Visibility.Visible
CurrDripSawingTxBx.Visibility = Windows.Visibility.Visible
Else
CurrDripSawingTxBl.Visibility = Windows.Visibility.Hidden
CurrDripSawingTxBx.Visibility = Windows.Visibility.Hidden
End If
If m_CurrentMachine.sCurrDripDrilling <> String.Empty Then
CurrDripDrillingTxBx.Text = m_CurrentMachine.sCurrDripDrilling
CurrDripDrillingTxBl.Visibility = Windows.Visibility.Visible
CurrDripDrillingTxBx.Visibility = Windows.Visibility.Visible
Else
CurrDripDrillingTxBl.Visibility = Windows.Visibility.Hidden
CurrDripDrillingTxBx.Visibility = Windows.Visibility.Hidden
End If
End Sub
' questo metodo è utilizzato solo per le macchine con utensile ausiliario (Assenza del bottone Attrezzaggio-> monta un solo utensila per volta
Private Sub AuxiliaryToolCmBx_SelectionChanged(sender As Object, e As SelectionChangedEventArgs) Handles AuxiliaryToolCmBx.SelectionChanged
CurrDrillTxBl.Visibility = Windows.Visibility.Hidden
CurrDrillCmBx.Visibility = Windows.Visibility.Hidden
CurrMillTxBl.Visibility = Windows.Visibility.Hidden
CurrMillCmBx.Visibility = Windows.Visibility.Hidden
CurrCupWheelTxBl.Visibility = Windows.Visibility.Hidden
CurrCupWheelCmBx.Visibility = Windows.Visibility.Hidden
CurrWJetTxBl.Visibility = Windows.Visibility.Hidden
CurrWJetCmBx.Visibility = Windows.Visibility.Hidden
Dim SelectedItem As StringIdCmBx = AuxiliaryToolCmBx.SelectedItem
@@ -459,15 +396,11 @@ Public Class AlarmsPageUC
CurrDrillCmBx.SelectedItem = m_CurrentMachine.sCurrDrill
End If
m_CurrentMachine.sCurrMill = String.Empty
m_CurrentMachine.sCurrMilling = String.Empty
m_CurrentMachine.sCurrMillNoTip = String.Empty
m_CurrentMachine.sCurrPocketing = String.Empty
m_CurrentMachine.sCurrWaterJet = String.Empty
m_CurrentMachine.sCurrWaterJetting = String.Empty
CurrDrillTxBl.Visibility = Windows.Visibility.Visible
CurrDrillCmBx.Visibility = Windows.Visibility.Visible
Case 2
CreateToolList(MCH_TF.MILL, MCH_TY.MILL_STD, m_MillList)
CreateToolList(MCH_TF.MILL, m_MillList)
m_MillList.Add(NO_TOOL)
If m_CurrentMachine.sCurrMill = String.Empty Then
CurrMillCmBx.SelectedItem = NO_TOOL
@@ -475,30 +408,10 @@ Public Class AlarmsPageUC
CurrMillCmBx.SelectedItem = m_CurrentMachine.sCurrMill
End If
m_CurrentMachine.sCurrDrill = String.Empty
m_CurrentMachine.sCurrDrilling = String.Empty
m_CurrentMachine.sCurrMillNoTip = String.Empty
m_CurrentMachine.sCurrPocketing = String.Empty
m_CurrentMachine.sCurrWaterJet = String.Empty
m_CurrentMachine.sCurrWaterJetting = String.Empty
CurrMillTxBl.Visibility = Windows.Visibility.Visible
CurrMillCmBx.Visibility = Windows.Visibility.Visible
Case 3
CreateToolList(MCH_TF.MILL, MCH_TY.MILL_NOTIP, m_CupWheelList)
m_CupWheelList.Add(NO_TOOL)
If m_CurrentMachine.sCurrMillNoTip = String.Empty Then
CurrCupWheelCmBx.SelectedItem = NO_TOOL
Else
CurrCupWheelCmBx.SelectedItem = m_CurrentMachine.sCurrMillNoTip
End If
m_CurrentMachine.sCurrDrill = String.Empty
m_CurrentMachine.sCurrDrilling = String.Empty
m_CurrentMachine.sCurrMill = String.Empty
m_CurrentMachine.sCurrMilling = String.Empty
m_CurrentMachine.sCurrWaterJet = String.Empty
m_CurrentMachine.sCurrWaterJetting = String.Empty
CurrCupWheelTxBl.Visibility = Windows.Visibility.Visible
CurrCupWheelCmBx.Visibility = Windows.Visibility.Visible
Case 4
CreateToolList(MCH_TF.WATERJET, m_WaterJetList)
m_WaterJetList.Add(NO_TOOL)
If m_CurrentMachine.sCurrWaterJet = String.Empty Then
@@ -507,21 +420,12 @@ Public Class AlarmsPageUC
CurrWJetCmBx.SelectedItem = m_CurrentMachine.sCurrWaterJet
End If
m_CurrentMachine.sCurrDrill = String.Empty
m_CurrentMachine.sCurrDrilling = String.Empty
m_CurrentMachine.sCurrMill = String.Empty
m_CurrentMachine.sCurrMilling = String.Empty
m_CurrentMachine.sCurrMillNoTip = String.Empty
m_CurrentMachine.sCurrPocketing = String.Empty
CurrWJetTxBl.Visibility = Windows.Visibility.Visible
CurrWJetCmBx.Visibility = Windows.Visibility.Visible
End Select
' aggionro l'elenco delle lavoarzioni
RefreschMachining()
End Sub
#Region "Selection: SAW, DRILL, MILL, CUPWHEEL, WATERJET"
' -- SAW --
Private Sub CurrSawCmBx_SelectionChanged(sender As Object, e As SelectionChangedEventArgs) Handles CurrSawCmBx.SelectionChanged
If IsNothing(CurrSawCmBx.SelectedItem) Then Return
' Assegno
@@ -539,7 +443,6 @@ Public Class AlarmsPageUC
m_MainWindow.m_WorkInProgressPageUC.UpdateTools()
End Sub
' -- DRILL --
Private Sub CurrDrillCmBx_SelectionChanged(sender As Object, e As SelectionChangedEventArgs) Handles CurrDrillCmBx.SelectionChanged
If IsNothing(CurrDrillCmBx.SelectedItem) Then Return
' Rimuovo foretto
@@ -553,8 +456,6 @@ Public Class AlarmsPageUC
If m_CurrentMachine.MountedToolConfig = CurrentMachine.MountedToolConfigs.SAWANDAUXTOOL Then
m_CurrentMachine.sCurrMill = String.Empty
m_CurrentMachine.sCurrMilling = String.Empty
m_CurrentMachine.sCurrMillNoTip = String.Empty
m_CurrentMachine.sCurrPocketing = String.Empty
m_CurrentMachine.sCurrWaterJet = String.Empty
m_CurrentMachine.sCurrWaterJetting = String.Empty
End If
@@ -572,7 +473,6 @@ Public Class AlarmsPageUC
m_MainWindow.m_WorkInProgressPageUC.UpdateTools()
End Sub
' -- MILL --
Private Sub CurrMillCmBx_SelectionChanged(sender As Object, e As SelectionChangedEventArgs) Handles CurrMillCmBx.SelectionChanged
If IsNothing(CurrMillCmBx.SelectedItem) Then Return
' Rimuovo fresa
@@ -586,8 +486,6 @@ Public Class AlarmsPageUC
If m_CurrentMachine.MountedToolConfig = CurrentMachine.MountedToolConfigs.SAWANDAUXTOOL Then
m_CurrentMachine.sCurrDrill = String.Empty
m_CurrentMachine.sCurrDrilling = String.Empty
m_CurrentMachine.sCurrMillNoTip = String.Empty
m_CurrentMachine.sCurrPocketing = String.Empty
m_CurrentMachine.sCurrWaterJet = String.Empty
m_CurrentMachine.sCurrWaterJetting = String.Empty
End If
@@ -605,40 +503,6 @@ Public Class AlarmsPageUC
m_MainWindow.m_WorkInProgressPageUC.UpdateTools()
End Sub
' -- CUPWHEEL --
Private Sub CurrCupWheelCmBx_SelectionChanged(sender As Object, e As SelectionChangedEventArgs) Handles CurrCupWheelCmBx.SelectionChanged
If IsNothing(CurrCupWheelCmBx.SelectedItem) Then Return
' Rimuovo fresa
If CurrCupWheelCmBx.SelectedItem.ToString() = NO_TOOL Then
m_CurrentMachine.sCurrMillNoTip = String.Empty
m_CurrentMachine.sCurrPocketing = String.Empty
' Assegno fresa
Else
m_CurrentMachine.sCurrMillNoTip = CurrCupWheelCmBx.SelectedItem.ToString()
' Reset foretto, waterjet e relative lavorazioni
If m_CurrentMachine.MountedToolConfig = CurrentMachine.MountedToolConfigs.SAWANDAUXTOOL Then
m_CurrentMachine.sCurrDrill = String.Empty
m_CurrentMachine.sCurrDrilling = String.Empty
m_CurrentMachine.sCurrMill = String.Empty
m_CurrentMachine.sCurrMilling = String.Empty
m_CurrentMachine.sCurrWaterJet = String.Empty
m_CurrentMachine.sCurrWaterJetting = String.Empty
End If
' Se nuova fresa incompatibile con fresatura corrente, resetto quest'ultima
Dim sMchTuuid As String = String.Empty
Dim sMchTool As String = String.Empty
If Not EgtMdbSetCurrMachining(m_CurrentMachine.sCurrPocketing) Or
Not EgtMdbGetCurrMachiningParam(MCH_MP.TUUID, sMchTuuid) Or
Not EgtTdbGetToolFromUUID(sMchTuuid, sMchTool) Or
String.Compare(sMchTool, m_CurrentMachine.sCurrMillNoTip, True) <> 0 Then
m_CurrentMachine.sCurrPocketing = String.Empty
End If
End If
' Aggiorno utensili per lavoro in corso
m_MainWindow.m_WorkInProgressPageUC.UpdateTools()
End Sub
' -- WATERJET --
Private Sub CurrWJetCmBx_SelectionChanged(sender As Object, e As SelectionChangedEventArgs) Handles CurrWJetCmBx.SelectionChanged
If IsNothing(CurrWJetCmBx.SelectedItem) Then Return
' Rimuovo Waterjet
@@ -669,9 +533,7 @@ Public Class AlarmsPageUC
m_MainWindow.m_WorkInProgressPageUC.UpdateTools()
End Sub
#End Region 'Selection: SAW, DRILL, MILL, CUPWHEEL, WATERJET
Public Overloads Sub CreateToolList(ToolType As Integer, ToolList As ObservableCollection(Of String))
Private Overloads Sub CreateToolList(ToolType As Integer, ToolList As ObservableCollection(Of String))
ToolList.Clear()
Dim ToolName As String = String.Empty
Dim nType As Integer = MCH_TY.NONE
@@ -686,24 +548,6 @@ Public Class AlarmsPageUC
End While
End Sub
' definisce l'elenco degli utensili in funzione della famiglia e del tipo (usata per distingure i diversi tipi di frese)
Public Overloads Sub CreateToolList(ToolFamily As Integer, ToolType As Integer, ToolList As ObservableCollection(Of String))
ToolList.Clear()
Dim ToolName As String = String.Empty
Dim nType As Integer = ToolType
Dim bFound As Boolean = EgtTdbGetFirstTool(ToolType, ToolName, nType)
While bFound
' Accetto utensili che non siano da sotto
If String.Compare(ToolName, m_CurrentMachine.sCurrDripSaw, True) <> 0 AndAlso
String.Compare(ToolName, m_CurrentMachine.sCurrDripDrill, True) <> 0 AndAlso
nType = ToolType Then
ToolList.Add(ToolName)
End If
bFound = EgtTdbGetNextTool(ToolType, ToolName, nType)
End While
End Sub
Private Sub SetUpBtn_Click(sender As Object, e As RoutedEventArgs) Handles SetUpBtn.Click
m_MainWindow.m_MachinePageUC.MachinePageGrid.Children.Remove(Me)
m_SetUpPage = New SetUpPage
@@ -777,14 +621,6 @@ Public Class AlarmsPageUC
EgtMdbSave()
End Sub
Private Sub PreCutExitChBx_Click(sender As Object, e As RoutedEventArgs) Handles PreCutExitChBx.Click
If PreCutExitChBx.IsChecked Then
WritePrivateProfileString(S_MACH_NEST, K_MACH_PRECUTEXIT, "1", m_MainWindow.GetMachIniFile())
Else
WritePrivateProfileString(S_MACH_NEST, K_MACH_PRECUTEXIT, "0", m_MainWindow.GetMachIniFile())
End If
End Sub
Private Sub CompleteCutsChBx_Click(sender As Object, e As RoutedEventArgs) Handles CompleteCutsChBx.Click
Dim NestPage As NestPageUC = m_MainWindow.m_CadCutPageUC.m_NestPage
If CompleteCutsChBx.IsChecked() Then
@@ -807,7 +643,7 @@ Public Class AlarmsPageUC
Else
WritePrivateProfileString(S_MACH_NEST, K_MACH_REDUCEDCUT, "1", m_MainWindow.GetMachIniFile())
End If
AdjustGhigliottinaTextOnAutomaticOrCompleteCuts()
AdjustAlignTextOnAutomaticOrCompleteCuts()
End Sub
Private Sub CornerCutsChBx_Click(sender As Object, e As RoutedEventArgs) Handles CornerCutsChBx.Click
@@ -876,30 +712,20 @@ Public Class AlarmsPageUC
End If
End Sub
Private Sub GligliottinaChBx_Click(sender As Object, e As RoutedEventArgs) Handles GhigliottinaChBx.Click
If GhigliottinaChBx.IsChecked() Then
WritePrivateProfileString(S_MACH_NEST, K_MACH_NEST_GHIGLIOTTINA, "1", m_MainWindow.GetMachIniFile())
Else
WritePrivateProfileString(S_MACH_NEST, K_MACH_NEST_GHIGLIOTTINA, "0", m_MainWindow.GetMachIniFile())
End If
End Sub
Private Sub AutomaticChBx_Click(sender As Object, e As RoutedEventArgs) Handles AutomaticChBx.Click
If AutomaticChBx.IsChecked() Then
WritePrivateProfileString(S_NEST, K_AUTOMATICOPTIMIZE, "1", m_MainWindow.GetIniFile())
WritePrivateProfileString(S_MACH_NEST, K_MACH_NEST_AUTOMATIC, "1", m_MainWindow.GetMachIniFile())
Else
WritePrivateProfileString(S_NEST, K_AUTOMATICOPTIMIZE, "0", m_MainWindow.GetIniFile())
WritePrivateProfileString(S_MACH_NEST, K_MACH_NEST_AUTOMATIC, "0", m_MainWindow.GetMachIniFile())
End If
AdjustGhigliottinaTextOnAutomaticOrCompleteCuts()
AdjustAlignTextOnAutomaticOrCompleteCuts()
End Sub
Private Sub AdjustGhigliottinaTextOnAutomaticOrCompleteCuts()
Private Sub AdjustAlignTextOnAutomaticOrCompleteCuts()
If AutomaticChBx.IsChecked() And Not CompleteCutsChBx.IsChecked() Then
GhigliottinaTxBl.Visibility = Visibility.Visible
GhigliottinaChBx.Visibility = Visibility.Visible
AlignTxBl.Text = EgtMsg( 91060) ' Allineato e Ghigliottina
Else
GhigliottinaTxBl.Visibility = Visibility.Collapsed
GhigliottinaChBx.Visibility = Visibility.Collapsed
AlignTxBl.Text = EgtMsg( 90932) ' Allineato
End If
End Sub
@@ -921,7 +747,7 @@ Public Class AlarmsPageUC
If Not String.IsNullOrWhiteSpace(MatNameTxBx.Text) Then
' Verifico che il nome non sia già utilizzato
Dim bNameExist As Boolean = False
For Each Material As Material In m_CurrentMachine.Materials
For Each Material In m_CurrentMachine.Materials
If Material.sName = MatNameTxBx.Text Then
bNameExist = True
Exit For
@@ -1006,14 +832,6 @@ Public Class AlarmsPageUC
m_CurrentMachine.dFsevPerc = dVal
End Sub
Private Sub FramePauseChBx_Click(sender As Object, e As RoutedEventArgs) Handles FramePauseChBx.Click
If FramePauseChBx.IsChecked() Then
WritePrivateProfileString(S_MACH_FRAME, K_MACH_PAUSE, "1", m_MainWindow.GetMachIniFile())
Else
WritePrivateProfileString(S_MACH_FRAME, K_MACH_PAUSE, "0", m_MainWindow.GetMachIniFile())
End If
End Sub
Private Sub SawProbingBtn_Click(sender As Object, e As RoutedEventArgs) Handles SawProbingBtn.Click
' Recupero file LUA
EgtLuaExecFile(m_MainWindow.m_CurrentMachine.sMachDir() & "\DirectCmd\SawProbing.lua")
@@ -1087,7 +905,7 @@ Public Class AlarmsPageUC
m_MainWindow.m_CNCommunication.m_CN.n_DReadELS_handle = 0
' Definisco flag tastatura
Dim bProbingOk As Boolean = False
For I As Integer = 0 To 120
For I = 0 To 120
' Devo rileggere la variabile ad ogni ciclo
m_MainWindow.m_CNCommunication.m_CN.ReadEls_Add_Parameter(ProbingStateNameVar, 3)
System.Threading.Thread.Sleep(100)
@@ -1129,7 +947,7 @@ Public Class AlarmsPageUC
Dim SawDiameterNameVar As String = String.Empty
GetPrivateProfileString(S_MACH_PROBING, K_SAWDIAMETER, "", SawDiameterNameVar, m_MainWindow.GetMachIniFile())
m_MainWindow.m_CNCommunication.m_CN.n_DReadELS_handle = 0
For I As Integer = 0 To 20
For I = 0 To 20
' Devo rileggere la variabile ad ogni ciclo
m_MainWindow.m_CNCommunication.m_CN.ReadEls_Add_Parameter(SawDiameterNameVar, 3)
System.Threading.Thread.Sleep(100)
+3 -3
View File
@@ -53,7 +53,7 @@ Public Class ChooseToolWD
m_SetUpToolList.Add(New ToolPos(m_MainWindow.m_CurrentMachine.sCurrSaw, sToolPos, True))
End If
' Recupero tutti gli utensili attrezzati (nel ToolChanger e nel ManualToolChanger)
For Each ToolChangerPos As ToolChangerPos In m_MainWindow.m_CurrentMachine.ManualToolChanger
For Each ToolChangerPos In m_MainWindow.m_CurrentMachine.ManualToolChanger
m_SetUpToolList.Add(New ToolPos(ToolChangerPos.sTool, ToolChangerPos.sName, False))
Next
Return True
@@ -65,12 +65,12 @@ Public Class ChooseToolWD
EgtTdbGetCurrToolParam(MCH_TP.TCPOS, sToolPos)
m_SetUpToolList.Add(New ToolPos(m_MainWindow.m_CurrentMachine.sCurrSaw, sToolPos, True))
End If
For Each ToolChangerPos As ToolChangerPos In m_MainWindow.m_CurrentMachine.ToolChanger
For Each ToolChangerPos In m_MainWindow.m_CurrentMachine.ToolChanger
If Not String.IsNullOrWhiteSpace(ToolChangerPos.sTool) Then
m_SetUpToolList.Add(New ToolPos(ToolChangerPos.sTool, ToolChangerPos.sName, False))
End If
Next
For Each ToolChangerPos As ToolChangerPos In m_MainWindow.m_CurrentMachine.ManualToolChanger
For Each ToolChangerPos In m_MainWindow.m_CurrentMachine.ManualToolChanger
If Not String.IsNullOrWhiteSpace(ToolChangerPos.sTool) Then
m_SetUpToolList.Add(New ToolPos(ToolChangerPos.sTool, ToolChangerPos.sName, False))
End If
+6 -6
View File
@@ -886,7 +886,7 @@ Public Class CurrentMachine
End Property
Friend Sub AddMaterial(value As Material)
For Each Material As Material In Materials
For Each Material In Materials
If Material.nId = value.nId Then
Exit Sub
End If
@@ -910,7 +910,7 @@ Public Class CurrentMachine
End If
Next
Dim TempMat As Material = Nothing
For I As Integer = Index To m_MaxIdMat - 1
For I = Index To m_MaxIdMat - 1
GetPrivateProfileMaterial(S_MATERIALS, K_MATERIAL & I + 2, TempMat, sMachIniFile)
WritePrivateProfileMaterial(S_MATERIALS, K_MATERIAL & I + 1, TempMat, sMachIniFile)
Next
@@ -946,7 +946,7 @@ Public Class CurrentMachine
If SysNotes <> String.Empty Then
Dim MachiningMaterials() = SysNotes.Split(";".ToCharArray)
SysNotes = String.Empty
For Each Material As Object In MachiningMaterials
For Each Material In MachiningMaterials
Dim Param() As String = Material.Split(",".ToCharArray)
If Param(0) <> valueId.ToString Then
SysNotes &= Material & ";"
@@ -975,7 +975,7 @@ Public Class CurrentMachine
' Se stringa vuota
If String.IsNullOrWhiteSpace(sMatName) Then Return False
' Cerco il nome nella lista dei materiali
For Index As Integer = 0 To Materials.Count - 1
For Index = 0 To Materials.Count - 1
If String.Compare(Materials(Index).sName, sMatName, True) = 0 Then
CurrMat = Materials(Index)
End If
@@ -1155,7 +1155,7 @@ Public Class CurrentMachine
m_ManualToolChangerNbr = Math.Min(m_ManualToolChangerNbr, MAX_TCMAN_TOOLS)
' Leggo da file ini nomi e utensili manuali presenti
For Index As Integer = 1 To m_ManualToolChangerNbr
For Index = 1 To m_ManualToolChangerNbr
Dim sName As String = String.Empty
Dim sTool As String = String.Empty
GetPrivateProfileString(S_TOOLCHANGER, K_MANUALNAME & Index, Nothing, sName, sMachIniFile)
@@ -1330,7 +1330,7 @@ Friend Class Material
Sub New(sName As String, MaterialList As ObservableCollection(Of Material))
Dim nMaxId As Integer = 0
For Each Material As Material In MaterialList
For Each Material In MaterialList
If Material.nId > nMaxId Then
nMaxId = Material.nId
End If
+4 -6
View File
@@ -115,13 +115,11 @@
<ColumnDefinition Width="2*"/>
</Grid.ColumnDefinitions>
<!--PowerON-->
<ToggleButton Name="PowerONBtn" Grid.Column="0"
Style="{DynamicResource OmagCut_GradientYellowIconToggleButton}"
Foreground="White"/>
<Button Name="PowerONBtn" Grid.Column="0"
Style="{DynamicResource OmagCut_RightGrayGradientYellowTextButton}"/>
<!--PowerOFF-->
<ToggleButton Name="PowerOFFBtn" Grid.Column="1"
Style="{DynamicResource OmagCut_GradientYellowIconToggleButton}"
Foreground="White"/>
<Button Name="PowerOFFBtn" Grid.Column="1"
Style="{DynamicResource OmagCut_RightGrayGradientYellowTextButton}"/>
</Grid>
</GroupBox>
+6 -28
View File
@@ -56,12 +56,6 @@ Public Class MachineCNPageUC
m_ButtonPower.Clear()
Dim m_nCount As Integer = 1
Dim bFoundBtn As Boolean = True
Dim sTestVal As String = String.Empty
' se non trovo il primo pulsante della lista allora nascondo l'elenco dei pulasnti per accensione
If GetPrivateProfileString("MachineButtons", K_BUTTON & "1", "", sTestVal, m_MainWindow.GetMachIniFile()) = 0 Then
PowerGpBx.Visibility = Visibility.Collapsed
Return
End If
While bFoundBtn
Dim sNameBtn As String = K_BUTTON & (m_nCount).ToString()
Dim sMachineButtonType As String = String.Empty
@@ -251,31 +245,15 @@ Public Class MachineCNPageUC
Friend Sub PowerONChanged(bPowerON As Boolean)
' devo decodificare il tipo di pulsante, quindi eseguire la conversione...
Dim PowerONButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonPower
If MachineButton.StateFlag.Trim = K_POWERON Then
For Each MachineButton In m_ButtonPower
If MachineButton.StateFlag = "ZAxes" Then
PowerONButton = MachineButton
Exit For
End If
Next
If Not IsNothing(PowerONButton) Then
PowerONButton.SetIsChecked(bPowerON)
PowerONBtn.IsChecked = bPowerON
End If
End Sub
Friend Sub PowerOFFChanged(bPowerOFF As Boolean)
' leggo solo una varibile -> quindi quando modifico lo stato di PowerON devo modificare lo stato di PowerOFF
Dim PowerOFFButton As TwoStateButton = Nothing
For Each MachineButton As MachineButton In m_ButtonPower
If MachineButton.StateFlag.Trim = K_POWEROFF Then
PowerOFFButton = MachineButton
Exit For
End If
Next
If Not IsNothing(PowerOFFButton) Then
PowerOFFButton.SetIsChecked(bPowerOFF)
PowerOFFBtn.IsChecked = bPowerOFF
End If
'If Not IsNothing(PowerONButton) Then
' PowerONButton.SetIsChecked(bZAxes)
' PowerONBtn.IsChecked = bZAxes
'End If
End Sub
End Class
+1 -1
View File
@@ -146,7 +146,7 @@
</Grid>
<Grid Name="B">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="2"/>
<ColumnDefinition Width="1*"/>
+2 -8
View File
@@ -111,26 +111,20 @@ Public Class MachineStatusUC
' modifico uniformgrid
AxisUniformGrid.Columns = 1
AxisUniformGrid.Rows = m_AxesNumber + 2
For Index As Integer = 0 To 12 - 1
For Index = 0 To 12 - 1
Dim HorizontalGrid As Grid = DirectCast(AxisUniformGrid.Children(Index), Grid)
HorizontalGrid.ColumnDefinitions.Clear()
HorizontalGrid.RowDefinitions.Clear()
If Index < m_AxesNumber Then
HorizontalGrid.Visibility = Windows.Visibility.Visible
End If
If HorizontalGrid.Name = "B" Then
' se macchina a 4 assi allora nascondo le info dell'asse B
HorizontalGrid.Visibility = Windows.Visibility.Collapsed
Continue For
End If
Dim BorderRow As New RowDefinition
BorderRow.Height = New GridLength(2, GridUnitType.Pixel)
HorizontalGrid.RowDefinitions.Add(BorderRow)
Dim AxisGrid As New RowDefinition
AxisGrid.Height = New GridLength(1, GridUnitType.Star)
HorizontalGrid.RowDefinitions.Add(AxisGrid)
For Each Children As UIElement In HorizontalGrid.Children
For Each Children In HorizontalGrid.Children
If TypeOf Children Is System.Windows.Controls.Primitives.UniformGrid Then
Dim AxisUniformGrid As System.Windows.Controls.Primitives.UniformGrid = DirectCast(Children, System.Windows.Controls.Primitives.UniformGrid)
AxisUniformGrid.SetValue(Grid.RowProperty, 1)
+45 -60
View File
@@ -227,7 +227,7 @@ Public Class MachiningDbPageUC
'Funzione che permette l'inizializzazione di albero e parametri all'apertura della pagina ToolsDb
Private Sub InitializeFirstSelectedItem()
If MachiningsList.Count > 0 Then
For Each MachiningFamily As CathegoryItem In MachiningsList
For Each MachiningFamily In MachiningsList
If MachiningFamily.Items.Count > 0 Then
MachiningFamily.IsExpanded = True
MachiningFamily.Items(0).IsSelected = True
@@ -250,7 +250,7 @@ Public Class MachiningDbPageUC
Dim NewName As String = SelectedCathegory.Name
EgtMdbGetMachiningNewName(NewName)
If EgtMdbAddMachining(NewName, SelectedCathegory.nTType) Then
For Each MachiningFamily As CathegoryItem In MachiningsList
For Each MachiningFamily In MachiningsList
If MachiningFamily.nTType = SelectedCathegory.nTType Then
Dim NewMachiningItem As New CustomItem(NewName, SelectedCathegory.nTType)
MachiningFamily.Items.Add(NewMachiningItem)
@@ -270,7 +270,7 @@ Public Class MachiningDbPageUC
If EgtMdbCopyMachining(SelectedCathegory.Name, NewName) Then
Dim CurrType As Integer
EgtMdbGetCurrMachiningParam(MCH_MP.TYPE, CurrType)
For Each MachiningFamily As CathegoryItem In MachiningsList
For Each MachiningFamily In MachiningsList
If MachiningFamily.nTType = CurrType Then
Dim NewMachiningItem As New CustomItem(NewName, CurrType)
MachiningFamily.Items.Add(NewMachiningItem)
@@ -303,7 +303,7 @@ Public Class MachiningDbPageUC
' Cancello la lavorazione
EgtMdbRemoveMachining(SelectedItem.Name)
' Rimuovo dall'albero
For Each MachiningFamily As CathegoryItem In MachiningsList
For Each MachiningFamily In MachiningsList
If (MachiningFamily.nTType And SelectedItem.nType) <> 0 Then
MachiningFamily.Items.Remove(SelectedItem)
If MachiningFamily.Items.Count = 0 Then
@@ -457,7 +457,7 @@ Public Class MachiningDbPageUC
Case MCH_MY.MILLING 'Fresatura
ToolCmBx.ItemsSource = MillTool
Case MCH_MY.POCKETING 'Svuotatura
ToolCmBx.ItemsSource = PocketTool
ToolCmBx.ItemsSource = MillTool
Case MCH_MY.DRILLING 'Foratura
ToolCmBx.ItemsSource = DrillTool
Case MCH_MY.SAWROUGHING 'Sgrossatura con lama
@@ -472,7 +472,7 @@ Public Class MachiningDbPageUC
EgtMdbGetCurrMachiningParam(MCH_MP.TUUID, sTuuid)
EgtTdbGetToolFromUUID(sTuuid, ToolString)
Dim bToolExist As Boolean = False
For Each CurrTool As IEnumerable In ToolCmBx.ItemsSource
For Each CurrTool In ToolCmBx.ItemsSource
If CurrTool.ToString() = ToolString Then
bToolExist = True
Exit For
@@ -514,14 +514,14 @@ Public Class MachiningDbPageUC
RadOffsetTxBx.Text = LenToString(ToolDouble, 3)
' Lista materiali
m_MaterialsList.Clear()
For Each Material As Material In m_MainWindow.m_CurrentMachine.Materials
For Each Material In m_MainWindow.m_CurrentMachine.Materials
m_MaterialsList.Add(New MachiningMaterial(Material.nId, Material.sName))
Next
EgtMdbGetCurrMachiningParam(MCH_MP.SYSNOTES, ToolString)
If ToolString <> String.Empty Then
Dim sItems() = ToolString.Split(";".ToCharArray)
Dim Index As Integer = 0
For Each Material As MachiningMaterial In m_MaterialsList
For Each Material In m_MaterialsList
Dim Param() As String = sItems(Index).Split(",".ToCharArray)
Dim nParId As Integer = 0
If StringToInt(Param(0), nParId) AndAlso nParId = Material.nId Then
@@ -606,18 +606,6 @@ Public Class MachiningDbPageUC
nTemp = If(AcrossChBx.IsChecked(), MCH_SAWFIN_SUB.ACROSS, MCH_SAWFIN_SUB.ALONG)
EgtMdbSetCurrMachiningParam(MCH_MP.SUBTYPE, nTemp)
End If
' Parmetri nascosti di svuotatura
If nMachiningType = MCH_MY.POCKETING Then
EgtMdbSetCurrMachiningParam(MCH_MP.SUBTYPE, MCH_POCK_SUB.SPIRALOUT)
EgtMdbSetCurrMachiningParam( MCH_MP.LEADINTYPE, MCH_POCK_LI.HELIX)
Dim dToolDiam As Double = 100
If Not IsNothing(ToolCmBx.SelectedItem) Then
EgtTdbSetCurrTool( ToolCmBx.SelectedItem.ToString())
EgtTdbGetCurrToolParam( MCH_TP.DIAM, dToolDiam)
End If
EgtMdbSetCurrMachiningParam( MCH_MP.LITANG, 0.495 * dToolDiam)
EgtMdbSetCurrMachiningParam( MCH_MP.LIELEV, 2.0)
End If
' Parametri WaterJetting
StringToDouble(ForwardAngleTxBx.Text, dTemp)
EgtMdbSetCurrMachiningParam(MCH_MP.FORWARDANGLE, dTemp)
@@ -683,7 +671,7 @@ Public Class MachiningDbPageUC
EgtMdbSetCurrMachiningParam(MCH_MP.OFFSR, dTemp)
' Scrivo stringa materiali da lista
Dim sMaterialString As String = String.Empty
For Each Material As MachiningMaterial In m_MaterialsList
For Each Material In m_MaterialsList
If Material.bIsActive Then
sMaterialString += Material.nId.ToString & "," & DoubleToString(Material.dMinThickness, 0) & "," & DoubleToString(Material.dMaxThickness, 0) & ";"
End If
@@ -724,7 +712,7 @@ Public Class MachiningDbPageUC
' Definizione della grid TypeGrd con la giusta altezza e numero di righe
Dim RowNum As Integer = TypeGrd.RowDefinitions.Count
If RowNum > 2 Then
For Index As Integer = RowNum - 1 To 2 Step -1
For Index = RowNum - 1 To 2 Step -1
TypeGrd.RowDefinitions.RemoveAt(Index)
Next
LeadInTypeTxBl.SetValue(Grid.ColumnProperty, 2)
@@ -812,7 +800,7 @@ Public Class MachiningDbPageUC
' Definizione di una riga della tabella con la giusta altezza
RowNum = FeedGrd.RowDefinitions.Count
If RowNum > 4 Then
For Index As Integer = RowNum - 1 To 4 Step -1
For Index = RowNum - 1 To 4 Step -1
FeedGrd.RowDefinitions.RemoveAt(Index)
Next
End If
@@ -821,7 +809,7 @@ Public Class MachiningDbPageUC
' Definizione di una riga della tabella Feed
RowNum = FeedGrd.RowDefinitions.Count
If RowNum < 6 Then
For Index As Integer = RowNum To 5
For Index = RowNum To 5
Dim Row As New RowDefinition
Row.Height = New GridLength(1, GridUnitType.Star)
FeedGrd.RowDefinitions.Add(Row)
@@ -903,7 +891,7 @@ Public Class MachiningDbPageUC
' Definizione della grid TypeGrd con la giusta altezza e numero di righe
Dim RowNum As Integer = TypeGrd.RowDefinitions.Count
If RowNum > 2 Then
For Index As Integer = RowNum - 1 To 2 Step -1
For Index = RowNum - 1 To 2 Step -1
TypeGrd.RowDefinitions.RemoveAt(Index)
Next
LeadInTypeTxBl.SetValue(Grid.ColumnProperty, 2)
@@ -986,7 +974,7 @@ Public Class MachiningDbPageUC
' Definizione di una riga della tabella con la giusta altezza
RowNum = FeedGrd.RowDefinitions.Count
If RowNum > 4 Then
For Index As Integer = RowNum - 1 To 4 Step -1
For Index = RowNum - 1 To 4 Step -1
FeedGrd.RowDefinitions.RemoveAt(Index)
Next
End If
@@ -995,7 +983,7 @@ Public Class MachiningDbPageUC
' Definizione di una riga della tabella Feed
RowNum = FeedGrd.RowDefinitions.Count
If RowNum < 4 Then
For Index As Integer = RowNum To 3
For Index = RowNum To 3
Dim Row As New RowDefinition
Row.Height = New GridLength(1, GridUnitType.Star)
FeedGrd.RowDefinitions.Add(Row)
@@ -1108,7 +1096,7 @@ Public Class MachiningDbPageUC
' Definizione di una riga della tabella con la giusta altezza
Dim RowNum As Integer = FeedGrd.RowDefinitions.Count
If RowNum > 4 Then
For Index As Integer = RowNum - 1 To 4 Step -1
For Index = RowNum - 1 To 4 Step -1
FeedGrd.RowDefinitions.RemoveAt(Index)
Next
End If
@@ -1117,7 +1105,7 @@ Public Class MachiningDbPageUC
' Definizione di una riga della tabella Feed
RowNum = FeedGrd.RowDefinitions.Count
If RowNum < 4 Then
For Index As Integer = RowNum To 3
For Index = RowNum To 3
Dim Row As New RowDefinition
Row.Height = New GridLength(1, GridUnitType.Star)
FeedGrd.RowDefinitions.Add(Row)
@@ -1197,7 +1185,7 @@ Public Class MachiningDbPageUC
' Definizione della grid TypeGrd con la giusta altezza e numero di righe
Dim RowNum As Integer = TypeGrd.RowDefinitions.Count
If RowNum > 2 Then
For Index As Integer = RowNum - 1 To 2 Step -1
For Index = RowNum - 1 To 2 Step -1
TypeGrd.RowDefinitions.RemoveAt(Index)
Next
LeadInTypeTxBl.SetValue(Grid.ColumnProperty, 2)
@@ -1265,7 +1253,7 @@ Public Class MachiningDbPageUC
' Definizione di una riga della tabella con la giusta altezza
RowNum = FeedGrd.RowDefinitions.Count
If RowNum > 4 Then
For Index As Integer = RowNum - 1 To 4 Step -1
For Index = RowNum - 1 To 4 Step -1
FeedGrd.RowDefinitions.RemoveAt(Index)
Next
End If
@@ -1274,7 +1262,7 @@ Public Class MachiningDbPageUC
' Definizione di una riga della tabella Feed
RowNum = FeedGrd.RowDefinitions.Count
If RowNum < 4 Then
For Index As Integer = RowNum To 3
For Index = RowNum To 3
Dim Row As New RowDefinition
Row.Height = New GridLength(1, GridUnitType.Star)
FeedGrd.RowDefinitions.Add(Row)
@@ -1367,7 +1355,7 @@ Public Class MachiningDbPageUC
' Definizione della grid TypeGrd con la giusta altezza e numero di righe
Dim RowNum As Integer = TypeGrd.RowDefinitions.Count
If RowNum > 2 Then
For Index As Integer = RowNum - 1 To 2 Step -1
For Index = RowNum - 1 To 2 Step -1
TypeGrd.RowDefinitions.RemoveAt(Index)
Next
LeadInTypeTxBl.SetValue(Grid.ColumnProperty, 2)
@@ -1435,7 +1423,7 @@ Public Class MachiningDbPageUC
' Definizione di una riga della tabella con la giusta altezza
RowNum = FeedGrd.RowDefinitions.Count
If RowNum > 4 Then
For Index As Integer = RowNum - 1 To 4 Step -1
For Index = RowNum - 1 To 4 Step -1
FeedGrd.RowDefinitions.RemoveAt(Index)
Next
End If
@@ -1444,7 +1432,7 @@ Public Class MachiningDbPageUC
' Definizione di una riga della tabella Feed
RowNum = FeedGrd.RowDefinitions.Count
If RowNum < 5 Then
For Index As Integer = RowNum To 4
For Index = RowNum To 4
Dim Row As New RowDefinition
Row.Height = New GridLength(1, GridUnitType.Star)
FeedGrd.RowDefinitions.Add(Row)
@@ -1473,7 +1461,7 @@ Public Class MachiningDbPageUC
' Eliminazione di una riga della tabella Offset
RowNum = OffsetGrd.RowDefinitions.Count
If RowNum > 1 Then
For Index As Integer = RowNum - 1 To 1 Step -1
For Index = RowNum - 1 To 1 Step -1
OffsetGrd.RowDefinitions.RemoveAt(Index)
OffsetGpBx.SetValue(Grid.RowSpanProperty, 4)
Next
@@ -1525,15 +1513,15 @@ Public Class MachiningDbPageUC
StepTypeCmBx.Visibility = Windows.Visibility.Hidden
SideBrd.SetValue(Grid.RowProperty, 9)
SideBrd.Visibility = Windows.Visibility.Visible
WorkSideTxBl.Visibility = Windows.Visibility.Hidden
WorkSideCmBx.Visibility = Windows.Visibility.Hidden
WorkSideTxBl.Visibility = Windows.Visibility.Visible
WorkSideCmBx.Visibility = Windows.Visibility.Visible
HeadSideTxBl.Visibility = Windows.Visibility.Hidden
HeadSideCmBx.Visibility = Windows.Visibility.Hidden
TypeBrd.Visibility = Windows.Visibility.Visible
' Definizione della grid TypeGrd con la giusta altezza e numero di righe
Dim RowNum As Integer = TypeGrd.RowDefinitions.Count
If RowNum > 2 Then
For Index As Integer = RowNum - 1 To 2 Step -1
For Index = RowNum - 1 To 2 Step -1
TypeGrd.RowDefinitions.RemoveAt(Index)
Next
LeadInTypeTxBl.SetValue(Grid.ColumnProperty, 2)
@@ -1596,30 +1584,27 @@ Public Class MachiningDbPageUC
BackwardStepSideAngTxBl.Visibility = Windows.Visibility.Hidden
BackwardStepSideAngTxBx.Visibility = Windows.Visibility.Hidden
ForwardSawStepTxBl.Text = EgtMsg(MSG_MACHININGSDBPAGEUC + 15)
If DrillStepGrd.Children.Contains(StepTxBx) Then
DrillStepGrd.Children.Remove(StepTxBx)
SawRouStepGrd.Children.Add(StepTxBx)
StepTxBx.SetValue(Grid.ColumnProperty, 1)
StepTxBx.SetValue(Grid.RowProperty, 0)
StepTxBx.Style = Application.Current.FindResource("OmagCut_CalculatorTextBoxInGroupBox")
ElseIf SawStepGrd.Children.Contains(StepTxBx) Then
SawStepGrd.Children.Remove(StepTxBx)
SawRouStepGrd.Children.Add(StepTxBx)
StepTxBx.SetValue(Grid.ColumnProperty, 1)
StepTxBx.SetValue(Grid.RowProperty, 0)
StepTxBx.Style = Application.Current.FindResource("OmagCut_CalculatorTextBoxInGroupBox")
If SawStepGrd.Children.Contains(ArcIntTxBl) Then
SawStepGrd.Children.Remove(ArcIntTxBl)
SawStepGrd.Children.Remove(ArcIntTxBx)
SawStepGrd.Children.Remove(ArcExtTxBl)
SawStepGrd.Children.Remove(ArcExtTxBx)
SawStepGrd.RowDefinitions.RemoveAt(2)
End If
If SawStepGrd.Children.Contains(LastSawStepTxBl) Then
SawStepGrd.Children.Remove(LastSawStepTxBl)
SawStepGrd.Children.Remove(LastSawStepTxBx)
SawStepGrd.RowDefinitions.RemoveAt(2)
End If
DrillStepBrd.Visibility = Windows.Visibility.Hidden
SawStepGpBx.Visibility = Windows.Visibility.Hidden
SawRouStepGpBx.Visibility = Windows.Visibility.Visible
SawRouStepTxBl.Visibility = Windows.Visibility.Visible
SawRouStepGpBx.Visibility = Windows.Visibility.Hidden
ReturnPosTxBl.Visibility = Windows.Visibility.Hidden
ReturnPosTxBx.Visibility = Windows.Visibility.Hidden
OffsetGpBx.Visibility = Windows.Visibility.Hidden
' Definizione di una riga della tabella con la giusta altezza
RowNum = FeedGrd.RowDefinitions.Count
If RowNum > 4 Then
For Index As Integer = RowNum - 1 To 4 Step -1
For Index = RowNum - 1 To 4 Step -1
FeedGrd.RowDefinitions.RemoveAt(Index)
Next
End If
@@ -1628,7 +1613,7 @@ Public Class MachiningDbPageUC
' Definizione di una riga della tabella Feed
RowNum = FeedGrd.RowDefinitions.Count
If RowNum < 4 Then
For Index As Integer = RowNum To 3
For Index = RowNum To 3
Dim Row As New RowDefinition
Row.Height = New GridLength(1, GridUnitType.Star)
FeedGrd.RowDefinitions.Add(Row)
@@ -1708,7 +1693,7 @@ Public Class MachiningDbPageUC
' Definizione della grid TypeGrd con la giusta altezza e numero di righe
Dim RowNum As Integer = TypeGrd.RowDefinitions.Count
If RowNum < 3 Then
For Index As Integer = RowNum To 2
For Index = RowNum To 2
Dim Row As New RowDefinition
Row.Height = New GridLength(1, GridUnitType.Star)
' Row.SetValue(Grid.RowSpanProperty, 3)
@@ -1797,7 +1782,7 @@ Public Class MachiningDbPageUC
' Definizione di una riga della tabella con la giusta altezza
RowNum = FeedGrd.RowDefinitions.Count
If RowNum > 3 Then
For Index As Integer = RowNum - 1 To 3 Step -1
For Index = RowNum - 1 To 3 Step -1
FeedGrd.RowDefinitions.RemoveAt(Index)
Next
End If
@@ -1809,7 +1794,7 @@ Public Class MachiningDbPageUC
' Eliminazione di una riga della tabella Offset
RowNum = OffsetGrd.RowDefinitions.Count
If RowNum > 1 Then
For Index As Integer = RowNum - 1 To 1 Step -1
For Index = RowNum - 1 To 1 Step -1
OffsetGrd.RowDefinitions.RemoveAt(Index)
OffsetGpBx.SetValue(Grid.RowSpanProperty, 4)
Next
@@ -2160,7 +2145,7 @@ Public Structure IdNameStruct
End Function
Friend Shared Function IndFromId(Id As Integer, List As ObservableCollection(Of IdNameStruct)) As Integer
For i As Integer = 0 To List.Count - 1
For i = 0 To List.Count - 1
If List(i).Id = Id Then Return i
Next
Return 0
+7 -7
View File
@@ -113,12 +113,12 @@ Public Class PolishingsPageUC
' Recupero nome utensile tramite UUID
Dim ToolString As String = String.Empty
For Each KitItem As Kit In m_KitList
For Each KitMachItem As KitMach In KitItem.KitMachList
For Each KitItem In m_KitList
For Each KitMachItem In KitItem.KitMachList
Dim selToolIndex As Integer = 0
EgtTdbGetToolFromUUID(KitMachItem.sToolUUID, ToolString)
Dim bToolExist As Boolean = False
For Each CurrTool As String In ToolList
For Each CurrTool In ToolList
If CurrTool.ToString() = ToolString Then
bToolExist = True
Exit For
@@ -177,7 +177,7 @@ Public Class PolishingsPageUC
If Not String.IsNullOrWhiteSpace( KitNameTxBx.Text) Then
' Verifico che il nome non sia già utilizzato
Dim bNameExist As Boolean = False
For Each Kit As Kit In m_KitList
For Each Kit In m_KitList
If Kit.sName = KitNameTxBx.Text Then
bNameExist = True
Exit For
@@ -448,7 +448,7 @@ Public Class PolishingsPageUC
If Not IsNothing(m_OldItem) Then
Dim nKitIndex As Integer = m_OldItem.nId
If nKitIndex <= m_KitList.Count Then
For Each KitMachItem As KitMach In m_KitList(nKitIndex - 1).KitMachList
For Each KitMachItem In m_KitList(nKitIndex - 1).KitMachList
If KitMachItem.m_IsModifiedId OrElse KitMachItem.m_IsModifiedToolUUID OrElse KitMachItem.m_IsModifiedToolName OrElse KitMachItem.m_IsModifiedSelTool OrElse
KitMachItem.m_IsModifiedActive OrElse KitMachItem.m_IsModifiedContour OrElse KitMachItem.m_IsModifiedOffCnt OrElse KitMachItem.m_IsModifiedZigZagX OrElse
KitMachItem.m_IsModifiedOffZigZagX OrElse KitMachItem.m_IsModifiedZigZagY OrElse KitMachItem.m_IsModifiedStepX OrElse KitMachItem.m_IsModifiedStepY OrElse
@@ -466,7 +466,7 @@ Public Class PolishingsPageUC
If IsNothing( m_OldItem) Then Return
Dim nKitIndex As Integer = m_OldItem.nId
If nKitIndex <= m_KitList.Count Then
For Each KitMachItem As KitMach In m_KitList(nKitIndex - 1).KitMachList
For Each KitMachItem In m_KitList(nKitIndex - 1).KitMachList
KitMachItem.m_IsModifiedId = False
KitMachItem.m_IsModifiedToolUUID = False
KitMachItem.m_IsModifiedToolName = False
@@ -911,7 +911,7 @@ Class KitMach
m_sToolName = sToolNameDummy
End If
For Each sToolUuidItem As String In m_MainWindow.m_MachinePageUC.m_PolishingsPageUC.ToolUuidList
For Each sToolUuidItem In m_MainWindow.m_MachinePageUC.m_PolishingsPageUC.ToolUuidList
EgtTdbGetToolFromUUID(sToolUuidItem, sToolNameDummy)
If sToolNameDummy.Equals(m_sToolName) Then
m_sToolUUID = sToolUuidItem
+21 -21
View File
@@ -34,8 +34,8 @@ Public Class SetUpPage
EgtOutLog("TC warning : too many tools (max 12 * 5)")
ColNum = 12
End If
For Index As Integer = 12 To ColNum + 1 Step -1
For Index2 As Integer = Index * 5 To (Index - 1) * 5 + 1 Step -1
For Index = 12 To ColNum + 1 Step -1
For Index2 = Index * 5 To (Index - 1) * 5 + 1 Step -1
TlChGrid.Children.Remove(GetTlChPosFromIndex(Index2))
TlChGrid.Children.Remove(GetTxBxFromIndex(Index2))
Next
@@ -43,14 +43,14 @@ Public Class SetUpPage
TlChGrid.ColumnDefinitions.RemoveAt(Index * 2 - 2)
Next
' Modifico il numero di elementi presenti sull'ultima colonna
For Index As Integer = ColNum * 5 To m_CurrMachine.ToolChangerNbr + 1 Step -1
For Index = ColNum * 5 To m_CurrMachine.ToolChangerNbr + 1 Step -1
TlChGrid.Children.Remove(GetTlChPosFromIndex(Index))
TlChGrid.Children.Remove(GetTxBxFromIndex(Index))
Next
' Assegno lunghezza alla scrollviewer
TlChGrid.Width = m_MainWindow.ActualWidth / 15 * 1.6 * ColNum * 2
' Carico i nomi dei portautensili
For Index As Integer = 1 To m_CurrMachine.ToolChangerNbr
For Index = 1 To m_CurrMachine.ToolChangerNbr
GetTlChPosFromIndex(Index).PositionNameTxBl.Text = m_CurrMachine.ToolChangerName(Index - 1)
Next
Else
@@ -64,8 +64,8 @@ Public Class SetUpPage
EgtOutLog("ManTC warning : too many tools (max 12 * 5)")
ManColNum = 12
End If
For Index As Integer = 12 To ManColNum + 1 Step -1
For Index2 As Integer = Index * 5 To (Index - 1) * 5 + 1 Step -1
For Index = 12 To ManColNum + 1 Step -1
For Index2 = Index * 5 To (Index - 1) * 5 + 1 Step -1
ManTlChGrid.Children.Remove(GetManTlChPosFromIndex(Index2))
ManTlChGrid.Children.Remove(GetManTxBxFromIndex(Index2))
Next
@@ -73,14 +73,14 @@ Public Class SetUpPage
ManTlChGrid.ColumnDefinitions.RemoveAt(Index * 2 - 2)
Next
' Modifico il numero di elementi presenti sull'ultima colonna
For Index As Integer = ManColNum * 5 To m_CurrMachine.ManualToolChangerNbr + 1 Step -1
For Index = ManColNum * 5 To m_CurrMachine.ManualToolChangerNbr + 1 Step -1
ManTlChGrid.Children.Remove(GetManTlChPosFromIndex(Index))
ManTlChGrid.Children.Remove(GetManTxBxFromIndex(Index))
Next
' Assegno lunghezza alla scrollviewer
ManTlChGrid.Width = m_MainWindow.ActualWidth / 15 * 1.6 * ManColNum * 2
' Carico i nomi dei portautensili
For Index As Integer = 1 To m_CurrMachine.ManualToolChangerNbr
For Index = 1 To m_CurrMachine.ManualToolChangerNbr
GetManTlChPosFromIndex(Index).PositionNameTxBl.Text = m_CurrMachine.ManualToolChangerName(Index - 1)
Next
@@ -112,10 +112,10 @@ Public Class SetUpPage
InitializeToolGroup( m_CurrMachine.bPolishingWheel, MCH_TY.MILL_POLISHING, EgtMsg( 90756), m_PolishingsList)
' Posiziono utensili già posizionati sul portautensili
For Each ToolPosition As ToolChangerPos In m_CurrMachine.ToolChanger
For Each ToolPosition In m_CurrMachine.ToolChanger
If ToolPosition.sTool <> String.Empty Then
If Not IsNothing( m_DrillbitsList) Then
For Each Item As CustomItem In m_DrillbitsList.Items
For Each Item In m_DrillbitsList.Items
If Item.Name = ToolPosition.sTool Then
m_SetUpToolsList.Items.Add(Item)
m_DrillbitsList.Items.Remove(Item)
@@ -124,7 +124,7 @@ Public Class SetUpPage
Next
End If
If Not IsNothing( m_MillsList) Then
For Each Item As CustomItem In m_MillsList.Items
For Each Item In m_MillsList.Items
If Item.Name = ToolPosition.sTool Then
m_SetUpToolsList.Items.Add(Item)
m_MillsList.Items.Remove(Item)
@@ -133,7 +133,7 @@ Public Class SetUpPage
Next
End If
If Not IsNothing( m_CupsList) Then
For Each Item As CustomItem In m_CupsList.Items
For Each Item In m_CupsList.Items
If Item.Name = ToolPosition.sTool Then
m_SetUpToolsList.Items.Add(Item)
m_CupsList.Items.Remove(Item)
@@ -142,7 +142,7 @@ Public Class SetUpPage
Next
End If
If Not IsNothing( m_PolishingsList) Then
For Each Item As CustomItem In m_PolishingsList.Items
For Each Item In m_PolishingsList.Items
If Item.Name = ToolPosition.sTool Then
m_SetUpToolsList.Items.Add(Item)
m_PolishingsList.Items.Remove(Item)
@@ -156,10 +156,10 @@ Public Class SetUpPage
Next
' Posiziono utensili già posizionati sul portautensili manuale
For Each ToolPosition As ToolChangerPos In m_CurrMachine.ManualToolChanger
For Each ToolPosition In m_CurrMachine.ManualToolChanger
If ToolPosition.sTool <> String.Empty Then
If Not IsNothing( m_DrillbitsList) Then
For Each Item As CustomItem In m_DrillbitsList.Items
For Each Item In m_DrillbitsList.Items
If Item.Name = ToolPosition.sTool Then
m_SetUpToolsList.Items.Add(Item)
m_DrillbitsList.Items.Remove(Item)
@@ -168,7 +168,7 @@ Public Class SetUpPage
Next
End If
If Not IsNothing( m_MillsList) Then
For Each Item As CustomItem In m_MillsList.Items
For Each Item In m_MillsList.Items
If Item.Name = ToolPosition.sTool Then
m_SetUpToolsList.Items.Add(Item)
m_MillsList.Items.Remove(Item)
@@ -177,7 +177,7 @@ Public Class SetUpPage
Next
End If
If Not IsNothing( m_CupsList) Then
For Each Item As CustomItem In m_CupsList.Items
For Each Item In m_CupsList.Items
If Item.Name = ToolPosition.sTool Then
m_SetUpToolsList.Items.Add(Item)
m_CupsList.Items.Remove(Item)
@@ -186,7 +186,7 @@ Public Class SetUpPage
Next
End If
If Not IsNothing( m_PolishingsList) Then
For Each Item As CustomItem In m_PolishingsList.Items
For Each Item In m_PolishingsList.Items
If Item.Name = ToolPosition.sTool Then
m_SetUpToolsList.Items.Add(Item)
m_PolishingsList.Items.Remove(Item)
@@ -784,7 +784,7 @@ Public Class SetUpPage
' Funzione che rimette un utensile nell'albero
Private Sub RestoreToolInList(sToolName As String)
For Each Tool As CustomItem In m_SetUpToolsList.Items
For Each Tool In m_SetUpToolsList.Items
If Tool.Name = sToolName Then
If Tool.nType = MCH_TY.DRILL_STD Then
m_DrillbitsList.Items.Add(Tool)
@@ -1119,7 +1119,7 @@ Public Class SetUpPage
EgtTdbGetCurrToolParam(MCH_TP.TCPOS, ToolPositionName)
If String.IsNullOrEmpty(ToolPositionName) Then Return
' Cerco il portautensile nella lista degli automatici per vederne lo stato
For Each TlChPos As ToolChangerPos In m_CurrMachine.ToolChanger
For Each TlChPos In m_CurrMachine.ToolChanger
If TlChPos.sName = ToolPositionName Then
' Se la posizione è libera
If GetTxBxFromIndex(TlChPos.nPosition).Text = String.Empty Then
@@ -1137,7 +1137,7 @@ Public Class SetUpPage
End If
Next
' Cerco il portautensile nella lista dei manuali per vederne lo stato
For Each ManTlChPos As ToolChangerPos In m_CurrMachine.ManualToolChanger
For Each ManTlChPos In m_CurrMachine.ManualToolChanger
If ManTlChPos.sName = ToolPositionName Then
' Se la posizione è libera
If GetManTxBxFromIndex(ManTlChPos.nPosition).Text = String.Empty Then
+4 -4
View File
@@ -182,7 +182,7 @@ Public Class ToolsDbPageUC
'Funzione che permette l'inizializzazione di albero e parametri all'apertura della pagina ToolsDb
Private Sub InitializeFirstSelectedItem()
If ToolsList.Count > 0 Then
For Each ToolFamily As CathegoryItem In ToolsList
For Each ToolFamily In ToolsList
If ToolFamily.Items.Count > 0 Then
ToolFamily.IsExpanded = True
ToolFamily.Items(0).IsSelected = True
@@ -227,7 +227,7 @@ Public Class ToolsDbPageUC
Dim NewName As String = SelectedCathegory.Name
EgtTdbGetToolNewName(NewName)
If EgtTdbAddTool(NewName, SelectedCathegory.nTType) Then
For Each ToolFamily As CathegoryItem In ToolsList
For Each ToolFamily In ToolsList
If ToolFamily.nTType = SelectedCathegory.nTType Then
Dim NewToolItem As New CustomItem(NewName, SelectedCathegory.nTType)
ToolFamily.Items.Add(NewToolItem)
@@ -315,7 +315,7 @@ Public Class ToolsDbPageUC
' Aggiorno lista utensili
Dim CurrType As Integer
EgtTdbGetCurrToolParam(MCH_TP.TYPE, CurrType)
For Each ToolFamily As CathegoryItem In ToolsList
For Each ToolFamily In ToolsList
If ToolFamily.nTType = CurrType Then
Dim NewToolItem As New CustomItem( NewName, CurrType)
ToolFamily.Items.Add( NewToolItem)
@@ -459,7 +459,7 @@ Public Class ToolsDbPageUC
' Cancello l'utensile
EgtTdbRemoveTool(SelectedItem.Name)
' Rimuovo il nome dell'albero
For Each ToolFamily As CathegoryItem In ToolsList
For Each ToolFamily In ToolsList
If (ToolFamily.nTType And SelectedItem.nType) <> 0 Then
ToolFamily.Items.Remove(SelectedItem)
If ToolFamily.Items.Count = 0 Then
+8 -9
View File
@@ -323,8 +323,8 @@ Class MainWindow
' Verifico abilitazione nesting automatico
m_bAutoNest = Not String.IsNullOrWhiteSpace(sNestKey)
' Recupero opzioni della chiave
Dim bKey As Boolean = EgtGetKeyLevel(9423, 2308, 1, m_nKeyLevel) And
EgtGetKeyOptions(9423, 2308, 1, m_nKeyOptions)
Dim bKey As Boolean = EgtGetKeyLevel(9423, 2305, 1, m_nKeyLevel) And
EgtGetKeyOptions(9423, 2305, 1, m_nKeyOptions)
' Verifico abilitazione prodotto
Dim bProd As Boolean = GetKeyOption(KEY_OPT.CUT_BASE)
' Inizializzazione generale di EgtInterface
@@ -433,8 +433,7 @@ Class MainWindow
End If
' abilito il bottone per la gestione del comando di Check-Up-Start (posziona lama prelavorazione)
If GetPrivateProfileInt(S_GENERAL, "Test", "0", m_sIniFile) = 0 OrElse
Not File.Exists( m_CurrentMachine.sMachDir() & "\DirectCmd\TestWork.lua") Then
If GetPrivateProfileInt(S_GENERAL, "Test", "0", m_sIniFile) = 0 Then
m_CadCutPageUC.m_ProjectMgr.TestBtn.Visibility = Visibility.Collapsed
Else
m_CadCutPageUC.m_ProjectMgr.TestBtn.Visibility = Visibility.Visible
@@ -1154,7 +1153,7 @@ Class MainWindow
m_CNCommunication.m_CN.n_DReadELS_handle = 0
m_CNCommunication.m_CN.ReadEls_Add_Parameter(m_CurrentMachine.sVarProjFinished, 1)
Dim nVarFin As Integer = 0
For I As Integer = 1 To 4
For I = 1 To 4
System.Threading.Thread.Sleep(50)
If m_CNCommunication.m_CN.n_DReadELS_handle = 1 Then
nVarFin = CInt(m_CNCommunication.m_CN.d_DReadELS_value)
@@ -1216,7 +1215,7 @@ Class MainWindow
m_CNCommunication.m_CN.n_DReadELS_handle = 0
m_CNCommunication.m_CN.ReadEls_Add_Parameter(m_CurrentMachine.sVarProjCopy, 1)
Dim nVarCopy As Integer = 0
For I As Integer = 1 To 10
For I = 1 To 10
System.Threading.Thread.Sleep(50)
If m_CNCommunication.m_CN.n_DReadELS_handle = 1 Then
nVarCopy = CInt(m_CNCommunication.m_CN.d_DReadELS_value)
@@ -1269,7 +1268,7 @@ Class MainWindow
m_CNCommunication.m_CN.n_DReadELS_handle = 0
m_CNCommunication.m_CN.ReadEls_Add_Parameter(m_CurrentMachine.sProdLiProbingStateVar(nI), 1)
Dim nProbingState As Integer = 0
For I As Integer = 1 To 5
For I = 1 To 5
System.Threading.Thread.Sleep(20)
If m_CNCommunication.m_CN.n_DReadELS_handle = 1 Then
nProbingState = CInt(m_CNCommunication.m_CN.d_DReadELS_value)
@@ -1282,7 +1281,7 @@ Class MainWindow
If m_CurrentMachine.sProdLiProbingTcPosVar(nI) <> "0" Then
m_CNCommunication.m_CN.n_DReadELS_handle = 0
m_CNCommunication.m_CN.ReadEls_Add_Parameter(m_CurrentMachine.sProdLiProbingTcPosVar(nI), 1)
For I As Integer = 1 To 5
For I = 1 To 5
System.Threading.Thread.Sleep(20)
If m_CNCommunication.m_CN.n_DReadELS_handle = 1 Then
nTcPos = CInt(m_CNCommunication.m_CN.d_DReadELS_value)
@@ -1297,7 +1296,7 @@ Class MainWindow
m_CNCommunication.m_CN.n_DReadELS_handle = 0
m_CNCommunication.m_CN.ReadEls_Add_Parameter(m_CurrentMachine.sProdLiSawDiameterVar(nI), 1)
Dim dDiam As Double = 0
For I As Integer = 1 To 5
For I = 1 To 5
System.Threading.Thread.Sleep(20)
If m_CNCommunication.m_CN.n_DReadELS_handle = 1 Then
dDiam = m_CNCommunication.m_CN.d_DReadELS_value
+2 -2
View File
@@ -62,5 +62,5 @@ Imports System.Windows
' by using the '*' as shown below:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("2.3.8.1")>
<Assembly: AssemblyFileVersion("2.3.8.1")>
<Assembly: AssemblyVersion("2.3.5.1")>
<Assembly: AssemblyFileVersion("2.3.5.1")>
+15 -16
View File
@@ -325,15 +325,15 @@ Public Class CNCommunication
GetPrivateProfileString(S_NCDATA, K_BYPASSTATE, "", sVal, m_MainWindow.GetMachIniFile())
m_CN.SetCnDataVar(CN_generico.CnData.BypassState, sVal)
' nuove variabili: stato dei nuovi pulsanti
' nuove variabili
m_IsNewConsole = GetPrivateProfileString(S_NCDATA, K_NEWCONSOLE, "", sVal, m_MainWindow.GetMachIniFile())
If m_IsNewConsole Then
GetPrivateProfileString(S_NCDATA, K_XYJOG, "", sVal, m_MainWindow.GetMachIniFile())
m_CN.SetCnDataVar(CN_generico.CnData.XYJog, sVal)
GetPrivateProfileString(S_NCDATA, K_ZJOG, "", sVal, m_MainWindow.GetMachIniFile())
m_CN.SetCnDataVar(CN_generico.CnData.ZJog, sVal)
GetPrivateProfileString(S_NCDATA, K_BCJOG, "", sVal, m_MainWindow.GetMachIniFile())
m_CN.SetCnDataVar(CN_generico.CnData.BCJog, sVal)
GetPrivateProfileString(S_NCDATA, K_XYAXES, "", sVal, m_MainWindow.GetMachIniFile())
m_CN.SetCnDataVar(CN_generico.CnData.XYAxes, sVal)
GetPrivateProfileString(S_NCDATA, K_ZAXES, "", sVal, m_MainWindow.GetMachIniFile())
m_CN.SetCnDataVar(CN_generico.CnData.ZAxes, sVal)
GetPrivateProfileString(S_NCDATA, K_BCAxes, "", sVal, m_MainWindow.GetMachIniFile())
m_CN.SetCnDataVar(CN_generico.CnData.BCAxes, sVal)
GetPrivateProfileString(S_NCDATA, K_POWERON, "", sVal, m_MainWindow.GetMachIniFile())
m_CN.SetCnDataVar(CN_generico.CnData.PowerON, sVal)
End If
@@ -488,7 +488,7 @@ Public Class CNCommunication
If m_CN.b_NC_error Then
ErrorList.Clear()
SyncLock m_CN
For Each Item As String In m_CN.sz_NC_error_messages
For Each Item In m_CN.sz_NC_error_messages
ErrorList.Add(Item)
Next
End SyncLock
@@ -555,9 +555,9 @@ Public Class CNCommunication
' Nuovi bottoni (uso joystick)
If m_IsNewConsole Then
m_MainWindow.m_DirectCutPageUC.XYJogChanged(m_CN.bXYJog)
m_MainWindow.m_DirectCutPageUC.ZJogChanged(m_CN.bZJog)
m_MainWindow.m_DirectCutPageUC.BCJogChanged(m_CN.bBCJog)
m_MainWindow.m_DirectCutPageUC.XYAxesChanged(m_CN.bXYAxes)
m_MainWindow.m_DirectCutPageUC.ZAxesChanged(m_CN.bZAxes)
m_MainWindow.m_DirectCutPageUC.BCAxesChanged(m_CN.bBCAxes)
End If
Else
m_MainWindow.m_DirectCutPageUC.m_MachineButtons.SpindleStateChanged(m_CN.bSpindleState)
@@ -575,9 +575,9 @@ Public Class CNCommunication
' Nuovi bottoni (uso joystick) per Area4
If m_IsNewConsole Then
m_MainWindow.m_DirectCutPageUC.m_MachineButtons.XYJogChanged(m_CN.bXYJog)
m_MainWindow.m_DirectCutPageUC.m_MachineButtons.ZJogChanged(m_CN.bZJog)
m_MainWindow.m_DirectCutPageUC.m_MachineButtons.BCJogChanged(m_CN.bBCJog)
m_MainWindow.m_DirectCutPageUC.m_MachineButtons.XYAxesChanged(m_CN.bXYAxes)
m_MainWindow.m_DirectCutPageUC.m_MachineButtons.ZAxesChanged(m_CN.bZAxes)
m_MainWindow.m_DirectCutPageUC.m_MachineButtons.BCAxesChanged(m_CN.bBCAxes)
End If
End If
@@ -590,7 +590,6 @@ Public Class CNCommunication
' Nuove bottoni (Power Macchina)
If m_IsNewConsole AndAlso m_MainWindow.m_ActivePage = MainWindow.Pages.Machine Then
m_MainWindow.m_MachinePageUC.m_MachineCNPageUC.PowerONChanged(m_CN.bPowerON)
m_MainWindow.m_MachinePageUC.m_MachineCNPageUC.PowerOFFChanged(Not m_CN.bPowerON)
End If
If m_MainWindow.m_ActivePage = MainWindow.Pages.WorkInProgress Then
@@ -701,7 +700,7 @@ Public Class CNCommunication
If m_CN.b_NC_error Then
ErrorList.Clear()
SyncLock m_CN
For Each Item As String In m_CN.sz_NC_error_messages
For Each Item In m_CN.sz_NC_error_messages
ErrorList.Add(Item)
Next
End SyncLock
+7 -7
View File
@@ -8,7 +8,7 @@ Public MustInherit Class CN_generico
Public Const MAX_VAR As Short = 100
Public Const MAX_VALUES As Short = 9 ' Max. index to read the data from the FXServer array
Public Const MAX_TOOLS As Short = 100
Public Const NUM_DATA = 51 ' Numero di dati del CN (Speed,Feed,...)
Public Const NUM_DATA = 50 ' Numero di dati del CN (Speed,Feed,...)
Public m_NewVariable As Boolean = False ' per scrittura delle vairbaili Apllication del PLC
@@ -61,9 +61,9 @@ Public MustInherit Class CN_generico
VacuumOff = 45
LaserTrac = 46
XYJog = 47
ZJog = 48
BCJog = 49
XYAxes = 47
ZAxes = 48
BCAxes = 49
PowerON = 50
End Enum
@@ -200,9 +200,9 @@ Public MustInherit Class CN_generico
Public bSpeedHold As Boolean
' Nuovi di bottoni -------------------------------------------
Public bXYJog As Boolean
Public bZJog As Boolean
Public bBCJog As Boolean
Public bXYAxes As Boolean
Public bZAxes As Boolean
Public bBCAxes As Boolean
Public bPowerON As Boolean
' Nuovi di bottoni -------------------------------------------
+1 -1
View File
@@ -719,7 +719,7 @@ Module M_MMFiles
Next
' Copia variabili R
For n As Integer = 0 To (N_R_VAR - 1)
For n = 0 To (N_R_VAR - 1)
CurrCN.d_Dvariable_values(n) = SiemensRet.d_interf_variable_values(n)
Next
+6 -6
View File
@@ -1077,12 +1077,12 @@ Namespace Num
Case CnData.VacuumOff ' (45) Stato aspirazione ventose spento
bVacuumOff = CBool(values(n))
Case CnData.XYJog ' (46)
bXYJog = CBool(values(n))
Case CnData.ZJog ' (47)
bZJog = CBool(values(n))
Case CnData.BCJog ' (48)
bBCJog = CBool(values(n))
Case CnData.XYAxes ' (46)
bXYAxes = CBool(values(n))
Case CnData.ZAxes ' (47)
bZAxes = CBool(values(n))
Case CnData.BCAxes ' (48)
bBCAxes = CBool(values(n))
Case CnData.PowerON ' (49)
bPowerON = CBool(values(n))
+17 -17
View File
@@ -22,7 +22,7 @@
<IncrementalBuild>true</IncrementalBuild>
<OutputPath>bin\Debug\</OutputPath>
<DocumentationFile>OmagCUT.xml</DocumentationFile>
<NoWarn>41999,42016,42017,42018,42019,42020,42021,42022,42032,42036</NoWarn>
<NoWarn>41999,42016,42017,42018,42019,42032,42036</NoWarn>
<WarningsAsErrors>
</WarningsAsErrors>
</PropertyGroup>
@@ -36,7 +36,7 @@
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DocumentationFile>OmagCUT.xml</DocumentationFile>
<NoWarn>41999,42016,42017,42018,42019,42020,42021,42022,42032,42036</NoWarn>
<NoWarn>41999,42016,42017,42018,42019,42032,42036</NoWarn>
<WarningsAsErrors>
</WarningsAsErrors>
</PropertyGroup>
@@ -50,7 +50,7 @@
<OptionStrict>Off</OptionStrict>
</PropertyGroup>
<PropertyGroup>
<OptionInfer>Off</OptionInfer>
<OptionInfer>On</OptionInfer>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x86'">
<DebugSymbols>true</DebugSymbols>
@@ -58,7 +58,7 @@
<DefineTrace>true</DefineTrace>
<OutputPath>bin\x86\Debug\</OutputPath>
<DocumentationFile>OmagCUT.xml</DocumentationFile>
<NoWarn>41999,42016,42017,42018,42019,42020,42021,42022,42032,42036</NoWarn>
<NoWarn>41999,42016,42017,42018,42019,42032,42036</NoWarn>
<DebugType>full</DebugType>
<PlatformTarget>x86</PlatformTarget>
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
@@ -70,7 +70,7 @@
<OutputPath>bin\x86\Release\</OutputPath>
<DocumentationFile>OmagCUT.xml</DocumentationFile>
<Optimize>true</Optimize>
<NoWarn>41999,42016,42017,42018,42019,42020,42021,42022,42032,42036</NoWarn>
<NoWarn>41999,42016,42017,42018,42019,42032,42036</NoWarn>
<DebugType>None</DebugType>
<PlatformTarget>x86</PlatformTarget>
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
@@ -96,7 +96,7 @@
<OutputPath>bin\Trial\</OutputPath>
<DocumentationFile>OmagCUT.xml</DocumentationFile>
<Optimize>true</Optimize>
<NoWarn>41999,42016,42017,42018,42019,42020,42021,42022,42032,42036</NoWarn>
<NoWarn>41999,42016,42017,42018,42019,42032,42036</NoWarn>
<DebugType>pdbonly</DebugType>
<PlatformTarget>AnyCPU</PlatformTarget>
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
@@ -105,7 +105,7 @@
<OutputPath>bin\x86\Trial\</OutputPath>
<DocumentationFile>OmagCUT.xml</DocumentationFile>
<Optimize>true</Optimize>
<NoWarn>41999,42016,42017,42018,42019,42020,42021,42022,42032,42036</NoWarn>
<NoWarn>41999,42016,42017,42018,42019,42032,42036</NoWarn>
<DebugType>None</DebugType>
<PlatformTarget>x86</PlatformTarget>
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
@@ -173,9 +173,6 @@
<Compile Include="DirectCuts\SingleCutAuto.xaml.vb">
<DependentUpon>SingleCutAuto.xaml</DependentUpon>
</Compile>
<Compile Include="DrawImport\AlzFrontUC.xaml.vb">
<DependentUpon>AlzFrontUC.xaml</DependentUpon>
</Compile>
<Compile Include="DrawImport\CompoCsvData.xaml.vb">
<DependentUpon>CompoCsvData.xaml</DependentUpon>
</Compile>
@@ -193,8 +190,11 @@
<DependentUpon>CadCutPageUC.xaml</DependentUpon>
</Compile>
<Compile Include="CAM\CamAuto.vb" />
<Compile Include="Project\StartLauncheWD.xaml.vb">
<DependentUpon>StartLauncheWD.xaml</DependentUpon>
<Compile Include="Project\CicloStartWD.xaml.vb">
<DependentUpon>CicloStartWD.xaml</DependentUpon>
</Compile>
<Compile Include="Project\StartLauncheWDr.xaml.vb">
<DependentUpon>StartLauncheWDr.xaml</DependentUpon>
</Compile>
<Compile Include="RawPhoto\SlabIdWD.xaml.vb">
<DependentUpon>SlabIdWD.xaml</DependentUpon>
@@ -397,10 +397,6 @@
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="DrawImport\AlzFrontUC.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="DrawImport\CompoCsvData.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
@@ -421,7 +417,11 @@
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="Project\StartLauncheWD.xaml">
<Page Include="Project\CicloStartWD.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="Project\StartLauncheWDr.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
+10 -1
View File
@@ -921,7 +921,16 @@
<TextBlock Text="{Binding Name}" Style="{StaticResource OmagCut_CurrProjSummeryTextBlock}" />
</DataTemplate>
<!--DataTemplate testo ed immagine-->
<DataTemplate x:Key="FileNameLsBxItem">
<DockPanel>
<TextBlock Text="{Binding GraphicName}" Style="{StaticResource OmagCut_CurrProjSummeryTextBlock}"
DockPanel.Dock="Left" Width="130"/>
<TextBlock Text="{Binding sDate}" Style="{StaticResource OmagCut_CurrProjSummeryTextBlock}"
DockPanel.Dock="Right" />
</DockPanel>
</DataTemplate>
<!--DataTemplate testo ed immagine-->
<DataTemplate x:Key="DataTemplateItem">
<Grid >
<Grid.ColumnDefinitions>
+44 -18
View File
@@ -537,28 +537,54 @@
</GroupBox>
<!--Selezione il tipo di avvio del programma-->
<GroupBox Name="StartLauncherGpBx"
Grid.Column="3" Grid.RowSpan="3" Grid.ColumnSpan="1"
Style="{DynamicResource OmagCut_GroupBox}">
<Grid >
<Grid.ColumnDefinitions>
<ColumnDefinition Width="0.5*"/>
<ColumnDefinition Width="4*"/>
<ColumnDefinition Width="0.5*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="0.25*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.25*"/>
</Grid.RowDefinitions>
<ComboBox Name="StartLauncherCmBx" Grid.Column="1" Grid.Row="1" Style="{StaticResource OmagCut_ComboBox}">
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding}" Style="{StaticResource OmagCut_LowerCaseCharacterTextBlock}"/>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
</Grid>
</GroupBox>
<GroupBox Name="FeedbackGpBx"
Grid.Column="4" Grid.RowSpan="3" Grid.ColumnSpan="1"
Style="{DynamicResource OmagCut_GroupBox}">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="0.25*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="0.25*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="0.5*"/>
</Grid.RowDefinitions>
<Button Name="FeedbackBtn"
Grid.Row="1" Grid.Column="1"
Style="{DynamicResource OmagCut_YellowIconButton}">
<Image Source="{DynamicResource SendImg}" Style="{StaticResource OmagCut_ArrowButtonIcon}"/>
</Button>
</Grid>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="0.25*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="0.25*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="0.5*"/>
</Grid.RowDefinitions>
<Button Name="FeedbackBtn"
Grid.Row="1" Grid.Column="1"
Style="{DynamicResource OmagCut_YellowIconButton}">
<Image Source="{DynamicResource SendImg}" Style="{StaticResource OmagCut_ArrowButtonIcon}"/>
</Button>
</Grid>
</GroupBox>
+14 -2
View File
@@ -9,6 +9,8 @@ Public Class OptionsPageUC
Private UnitsList() As String = {"inch", "mm"}
Private ThemesList() As String = {"Classic", "Dark"}
Private StartLauncherList() As String = {"Last Project", "New Project", "Open Folder", "Show Window"}
Private Sub OptionsPageUC_Initialized(sender As Object, e As EventArgs) Handles Me.Initialized
' Associazione della lista linguaggi alla combobox
@@ -28,6 +30,11 @@ Public Class OptionsPageUC
ThemesCmBx.SelectedIndex = GetPrivateProfileInt(S_GENERAL, K_THEME, 0, m_MainWindow.GetIniFile())
Themes_StartUp()
' Carico la lista con il tipo di avvio
StartLauncherCmBx.ItemsSource = StartLauncherList
' 0-New, 1-Last, 2-Open, 3-Window
StartLauncherCmBx.SelectedIndex = GetPrivateProfileInt(S_GENERAL, K_AUTOLOADLASTPROJ, 0, m_MainWindow.GetIniFile())
' Rendo invisibile il GroupBox dei Temi la versione corrente
' ThemesGpBx.Visibility = Windows.Visibility.Collapsed
@@ -102,7 +109,7 @@ Public Class OptionsPageUC
ToleranceEMsgTxBl.Text = EgtMsg(MSG_OPTIONSPAGEUC + 21)
AffondamentoMsgTxBl.Text = EgtMsg(MSG_OPTIONSPAGEUC + 27)
LarghezzaMsgTxBl.Text = EgtMsg(MSG_OPTIONSPAGEUC + 28)
StartLauncherGpBx.Header = "Avvio Programma"
End Sub
Private Sub UpdateSlabDxf()
@@ -304,6 +311,11 @@ Public Class OptionsPageUC
WritePrivateProfileString(S_GENERAL, K_MESSAGES, m_MainWindow.m_CurrLanguage.LanguageName, m_MainWindow.GetIniFile())
End Sub
Private Sub StartLauncherCmBx_SelectionChanged(sender As Object, e As SelectionChangedEventArgs) Handles StartLauncherCmBx.SelectionChanged
Dim nIndex As Integer = StartLauncherCmBx.SelectedIndex
WritePrivateProfileString(S_GENERAL, K_AUTOLOADLASTPROJ, StartLauncherCmBx.SelectedIndex, m_MainWindow.GetIniFile())
End Sub
Private Sub UnitsOfMeasureCmBx_SelectionChanged(sender As Object, e As SelectionChangedEventArgs) Handles UnitsOfMeasureCmBx.SelectionChanged
Dim bMM As Boolean = (UnitsOfMeasureCmBx.SelectedIndex <> 0)
EgtSetUiUnits(bMM)
@@ -1209,7 +1221,7 @@ Public Class OptionsPageUC
Dim sCurrProjectDir As String = Path.GetDirectoryName(sCurrProject)
If Not String.IsNullOrWhiteSpace(sCurrProjectDir) Then
Dim TempFiles() As String = Directory.GetFiles(sCurrProjectDir)
For FileIndex As Integer = 0 To TempFiles.Count - 1
For FileIndex = 0 To TempFiles.Count - 1
If Path.GetFileNameWithoutExtension(TempFiles(FileIndex)).Contains(Path.GetFileNameWithoutExtension(sCurrProject)) AndAlso TempFiles(FileIndex) <> sCurrProject Then
OtherFiles.Add(TempFiles(FileIndex))
End If
+50
View File
@@ -0,0 +1,50 @@
<Window x:Class="CicloStartWD"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:EgtWPFLib="clr-namespace:EgtWPFLib;assembly=EgtWPFLib"
FontFamily="{DynamicResource OmagCut_Font}"
ResizeMode="NoResize" WindowStyle="None" AllowsTransparency="True" Background="Transparent"
Title="SaveNameWD" Height="200" Width="426.5" ShowInTaskbar="False">
<!--Definizione della pagina di scelta del nome con cui salvare il progetto-->
<Border Style="{DynamicResource OmagCut_Border}">
<Grid x:Name="SaveNameGrid">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="0.5*"/>
<ColumnDefinition Width="4*"/>
<ColumnDefinition Width="0.5*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.1*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="0.5*"/>
</Grid.RowDefinitions>
<TextBlock Name="CicloStartTxbl" Grid.Column="1" Grid.Row="1"
Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<Grid Name="ButtonsGrid" Grid.Column="1" Grid.Row="3" Grid.RowSpan="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="0.5*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="0.5*"/>
</Grid.ColumnDefinitions>
<Button Name="OkBtn" Grid.Column="1" Style="{DynamicResource OmagCut_GradientBlueIconButton}">
<Image Source="{DynamicResource VImg}" Style="{StaticResource OmagCut_ButtonIcon}"/>
</Button>
<Button Name="ExitBtn" Grid.Column="3" Style="{DynamicResource OmagCut_GradientBlueIconButton}">
<Image Source="{DynamicResource XImg}" Style="{StaticResource OmagCut_ButtonIcon}"/>
</Button>
</Grid>
</Grid>
</Border>
</Window>
+38
View File
@@ -0,0 +1,38 @@
Imports EgtUILib
Imports EgtWPFLib
Imports System.IO
Imports System.Collections.ObjectModel
Imports System.ComponentModel
Class CicloStartWD
Private m_MainWindow As MainWindow = DirectCast(Application.Current.MainWindow, MainWindow)
Public Sub New(Owner As Window)
Me.Owner = Owner
InitializeComponent()
End Sub
' inizializzo la finestra
Private Sub StartLauncherWD_Initialized(sender As Object, e As EventArgs) Handles Me.Initialized
' posiziono la fistra in centro alla pagina
Me.Top = Owner.Top + Owner.Height / 2 - Me.Height / 2
Me.Left = Owner.Left + Owner.Width / 2 - Me.Width / 2
' imopposto il messaggio di avvio
CicloStartTxbl.Text = "Avvio Ciclo-Start"
End Sub
' creo un progetto nuovo
Private Sub ExitBtn_Click(sender As Object, e As RoutedEventArgs) Handles ExitBtn.Click
Me.Close()
End Sub
' Ultimo progetto
Private Sub OkBtn_Click(sender As Object, e As RoutedEventArgs) Handles OkBtn.Click
' Aspetto e lo avvio
System.Threading.Thread.Sleep(300)
' avvio il ciclo start della macchina
m_MainWindow.m_CNCommunication.m_CN.DGeneralFunctions_CycleStart()
Me.Close()
End Sub
End Class
+2 -2
View File
@@ -38,8 +38,8 @@
</Grid.RowDefinitions>
<!-- Definizione della Grid con le caratteristiche del progetto -->
<Border Name="CurrProjGrid" Style="{DynamicResource OmagCut_Border}" Grid.Row="0" >
<Grid >
<Border Name="CurrProjGrid" Style="{DynamicResource OmagCut_Border}" Grid.Row="0" >
<Grid >
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
+24 -34
View File
@@ -173,11 +173,6 @@ Public Class CurrentProjectPageUC
EgtInitMachMgr(m_MainWindow.GetMachinesRootDir(), m_MainWindow.GetToolMakersDir())
m_bFirst = False
' ------------------ SELEZIONE AVVIO -----------------------------
'' apro la finstra di selezione di avvio del programma
'StartProgram()
' ------------------ SELEZIONE AVVIO -----------------------------
' Se richiesto, carico ultimo progetto
Dim bAutoLoadLast As Boolean = GetPrivateProfileInt(S_GENERAL, K_AUTOLOADLASTPROJ, 0, m_MainWindow.GetIniFile()) <> 0
If bAutoLoadLast Then
@@ -227,16 +222,20 @@ Public Class CurrentProjectPageUC
End Sub
Public Sub StartProgram()
' leggo il tipo di avvio del programma: 0-New, 1-Last, 2-Open, 3-Window
Dim nStart As Integer = GetPrivateProfileInt(S_GENERAL, K_AUTOLOADLASTPROJ, 0, m_MainWindow.GetIniFile())
Dim MyStartLancherWD As New StartLauncherWD(m_MainWindow)
MyStartLancherWD.ShowDialog()
' mostro la finestra di avvio solo se configirato (= 3)
If nStart = 3 Then
MyStartLancherWD.ShowDialog()
Else
MyStartLancherWD.CurrSelection = nStart
End If
' Se richiesto, carico ultimo progetto
Dim bAutoLoadLast As Boolean = GetPrivateProfileInt(S_GENERAL, K_AUTOLOADLASTPROJ, 0, m_MainWindow.GetIniFile()) <> 0
m_nCurrProj = GetPrivateProfileInt(S_GENERAL, K_LASTPROJ, 0, m_MainWindow.GetIniFile())
' se ultimo progetto
If MyStartLancherWD.CurrSelection = 2 Then
bAutoLoadLast = True
' se ultimo progetto (= 0)
If MyStartLancherWD.CurrSelection = 0 Then
' Stampo il numero di progetto con 4 decimali: 12 -> "0012"
Dim sPath As String = m_MainWindow.GetSaveDir() & "\" & m_nCurrProj.ToString("D4") & ".nge"
' provo ad aprire l'ultimo progetto modificato
@@ -249,8 +248,8 @@ Public Class CurrentProjectPageUC
End If
EgtResetModified()
' apro il file selezionato all'avvio
ElseIf MyStartLancherWD.CurrSelection = 3 Then
' seleziono file da finestra di avvio (= 4)
ElseIf MyStartLancherWD.CurrSelection = 4 Then
If Not LoadProject(MyStartLancherWD.SelPath, False) Then
' altrimenti apro un nuovo progetto
NewProject()
@@ -260,9 +259,8 @@ Public Class CurrentProjectPageUC
End If
EgtResetModified()
' se nuovo progetto o naviga direttorio
' se nuovo progetto (= 1) o naviga direttorio (= 2)
ElseIf MyStartLancherWD.CurrSelection = 1 Or MyStartLancherWD.CurrSelection = 0 Then
bAutoLoadLast = False
NewProject()
End If
@@ -423,28 +421,16 @@ Public Class CurrentProjectPageUC
EgtErase(EgtGetFirstNameInGroup(nFixtId, MACH_ADD_TABLE))
' Altezza eventuale tavola aggiuntiva
Dim dAddTable As Double = m_MainWindow.m_CurrentMachine.dAdditionalTable
' Se non richiesta sovratavola, non c'è altro da fare ed esco
' Se non esiste sovratavola, esco subito
If dAddTable < 10 * EPS_SMALL Then Return True
' Recupero box tavola
Dim ptMin, ptMax As Point3d
EgtGetTableArea(1, ptMin, ptMax)
' Nuova geometria
Dim nAddTabId As Integer = GDB_ID.NULL
' Se esiste geometria di riferimento
Dim nRefAddTabId = EgtGetFirstNameInGroup( EgtGetFirstNameInGroup( EgtGetTableId( MAIN_TAB), "SOLID"), MACH_ADD_TABLE)
If nRefAddTabId <> GDB_ID.NULL Then
nAddTabId = EgtCopyGlob( nRefAddTabId, nFixtId)
EgtSetStatus( nAddTabId, GDB_ST.ON_)
EgtScale( nAddTabId, new Frame3d( ptMin), 1, 1, dAddTable / 10)
' altrimenti la creo
Else
' Aggiungo sovratavola nel gruppo dei bloccaggi
ptMax.z -= DELTAZ_ADDTAB
ptMin.z = ptMax.z
ptMax.z += dAddTable
nAddTabId = EgtCreateSurfTmBBox(nFixtId, ptMin, ptMax, GDB_RT.GLOB)
End If
' Sistemazioni finali
' Aggiungo sovratavola nel gruppo dei bloccaggi
ptMax.z -= DELTAZ_ADDTAB
ptMin.z = ptMax.z
ptMax.z += dAddTable
Dim nAddTabId As Integer = EgtCreateSurfTmBBox(nFixtId, ptMin, ptMax, GDB_RT.GLOB)
If nAddTabId = GDB_ID.NULL Then Return False
EgtSetName(nAddTabId, MACH_ADD_TABLE)
EgtSetColor(nAddTabId, New Color3d(150, 75, 0, 100), True)
@@ -600,6 +586,8 @@ Public Class CurrentProjectPageUC
SetProjectMaterial()
' Eseguo
If Not SaveFile(sPath) Then Return False
' aggiungo il file all'elenco dei file recenti
m_MruFiles.Add(sPath)
' Dichiaro progetto non modificato
EgtResetModified()
' Salvo eventuale VeinMatching
@@ -653,6 +641,8 @@ Public Class CurrentProjectPageUC
If Not SaveFile(sPath) Then
Return False
End If
' aggiungo il file all'elenco dei file recenti
m_MruFiles.Add(sPath)
' Dichiaro progetto non modificato
EgtResetModified()
Return True
+149 -16
View File
@@ -297,10 +297,8 @@ Public Class ProjectMgrUC
ptMid.x = (ptEnd.x + ptStart.x) / 2
ptMid.y = (ptEnd.y + ptStart.y) / 2
ptMid.z = (ptEnd.z + ptStart.z) / 2 + dDiam / 2
ptMid -= vtDirT * dThick
'--------------------------- Imposto la posizione della macchina ----------------------------
' Recupero la posizione macchina
Dim dL1, dL2, dL3, dR1, dR2 As Double
If Not m_MainWindow.m_CNCommunication.GetAxesPositions(dL1, dL2, dL3, dR1, dR2) Then Return
@@ -311,23 +309,22 @@ Public Class ProjectMgrUC
Dim nStat As Integer
Dim dC1, dB1, dC2, dB2 As Double
EgtGetCalcAngles(vtDirT, Vector3d.Z_AX(), nStat, dC1, dB1, dC2, dB2)
' calcolo la posizione degli assi lineari X, Y, Z
' calcolo la posizione degli assi lineari X, Y, Z ( correggere il punto ptMid.z sommando il raggio utensile)
Dim dX, dY, dZ As Double
EgtGetCalcPositions(ptMid, dC1, dB1, nStat, dX, dY, dZ)
' verifica assi lineari
EgtVerifyOutstroke(dX, dY, dZ, dC1, dB1, nStat)
If nStat <> 0 Then
vtDirT = - vtDirT
ptMid -= vtDirT * dThick
vtDirT.Rotate(Vector3d.Z_AX, 180)
EgtGetCalcAngles(vtDirT, Vector3d.Z_AX(), nStat, dC1, dB1, dC2, dB2)
' calcolo la posizione degli assi lineari X, Y, Z ( correggere il punto ptMid.z sommando il raggio utensile)
EgtGetCalcPositions(ptMid, dC1, dB1, nStat, dX, dY, dZ)
End If
'--------------------------- Comunico i movimenti in origine macchina al CN ----------------------------------------
Dim ptMachine As Point3d = New Point3d(dX, dY, dZ)
ExecuteCommandCNC(ptMachine, dC1, dB1)
ExecuteCommandCNC(ptMid, dC1, dB1)
Return
End If
' ---------------------------- Fine modalità test --------------------------------------------
@@ -448,8 +445,18 @@ Public Class ProjectMgrUC
' se abilitato e non è restart, lancio eventuale lua post-trasmissione
If m_MainWindow.GetKeyOption(MainWindow.KEY_OPT.SIMPLESTATISTICS) And nPhaseRestart = 0 Then
m_MainWindow.ExecSentProgScript(False)
''-------------------Avvio il Ciclo-Start-------------------------
'Dim MyCicloStartWD As New CicloStartWD(m_MainWindow)
'MyCicloStartWD.ShowDialog()
''-------------------Avvio il Ciclo-Start-------------------------
End If
End If
'-------------------Avvio il Ciclo-Start-------------------------
Dim MyCicloStartWD As New CicloStartWD(m_MainWindow)
MyCicloStartWD.ShowDialog()
'-------------------Avvio il Ciclo-Start-------------------------
' Altrimenti linea di produzione
Else
' Verifico non sia già stato trasmesso
@@ -492,12 +499,12 @@ Public Class ProjectMgrUC
GetPrivateProfileInt(S_RAWPART, K_SLABID, 0, m_MainWindow.GetIniFile()) <> 0)
If bSlabId Then
Dim sBlock As String = ""
GetPrivateProfileString( S_RAWPART, K_BLOCKNAME, "", sBlock, m_MainWindow.GetIniFile())
Dim nSlabNbr As Integer = GetPrivateProfileInt( S_RAWPART, K_SLABNBR, 0, m_MainWindow.GetIniFile())
GetPrivateProfileString(S_RAWPART, K_BLOCKNAME, "", sBlock, m_MainWindow.GetIniFile())
Dim nSlabNbr As Integer = GetPrivateProfileInt(S_RAWPART, K_SLABNBR, 0, m_MainWindow.GetIniFile())
nSlabNbr += 1
Dim sSlabNbr As String = nSlabNbr.ToString()
WritePrivateProfileString( S_RAWPART, K_SLABNBR, sSlabNbr, m_MainWindow.GetIniFile())
Utility.SetBlockAndSlabNbr( sBlock, sSlabNbr)
WritePrivateProfileString(S_RAWPART, K_SLABNBR, sSlabNbr, m_MainWindow.GetIniFile())
Utility.SetBlockAndSlabNbr(sBlock, sSlabNbr)
End If
' Salvo il progetto
m_CurrProjPage.SaveProject()
@@ -525,6 +532,7 @@ Public Class ProjectMgrUC
If AskTransm.m_nPressedBtn <> 1 Then Return
End If
End If
' Se non collegato alla macchina
If Not m_MainWindow.m_bNCLink Then
m_CurrProjPage.SetWarningMessage(EgtMsg(90316)) 'Non connesso alla macchina
@@ -539,11 +547,12 @@ Public Class ProjectMgrUC
m_MainWindow.ExecSentProgScript(False, bAlreadySent)
Return
End If
' Leggo variabile relativa al programma 1 (standard E80021)
m_CurrNcComm.m_CN.n_DReadELS_handle = 0
m_CurrNcComm.m_CN.ReadEls_Add_Parameter(m_CurrMachine.sVarProg1, 1)
Dim nVarProg1 As Integer = 99
For I As Integer = 0 To 10
For I = 0 To 10
System.Threading.Thread.Sleep(50)
If m_CurrNcComm.m_CN.n_DReadELS_handle = 1 Then
nVarProg1 = CInt(m_CurrNcComm.m_CN.d_DReadELS_value)
@@ -554,7 +563,7 @@ Public Class ProjectMgrUC
m_CurrNcComm.m_CN.n_DReadELS_handle = 0
m_CurrNcComm.m_CN.ReadEls_Add_Parameter(m_CurrMachine.sVarProg2, 1)
Dim nVarProg2 As Integer = 99
For I As Integer = 0 To 10
For I = 0 To 10
System.Threading.Thread.Sleep(50)
If m_CurrNcComm.m_CN.n_DReadELS_handle = 1 Then
nVarProg2 = CInt(m_CurrNcComm.m_CN.d_DReadELS_value)
@@ -566,7 +575,7 @@ Public Class ProjectMgrUC
If Not String.IsNullOrWhiteSpace(m_CurrMachine.sVarProgTwins) Then
m_CurrNcComm.m_CN.n_DReadELS_handle = 0
m_CurrNcComm.m_CN.ReadEls_Add_Parameter(m_CurrMachine.sVarProgTwins, 1)
For I As Integer = 0 To 10
For I = 0 To 10
System.Threading.Thread.Sleep(50)
If m_CurrNcComm.m_CN.n_DReadELS_handle = 1 Then
nVarProgTwins = CInt(m_CurrNcComm.m_CN.d_DReadELS_value)
@@ -612,6 +621,7 @@ Public Class ProjectMgrUC
Else
m_CurrProjPage.SetErrorMessage(EgtMsg(90318)) 'La macchina non accetta il programma CN
End If
End If
#End If
End Sub
@@ -619,6 +629,13 @@ Public Class ProjectMgrUC
' ------------------------------------------------ GENERA COMANDI CNC MOVIMENTO ------------------------------------------------
Private Sub ExecuteCommandCNC(ptMid As Point3d, dAngC As Double, dAngB As Double)
'If m_CurrNcComm.m_nNCType = 3 AndAlso m_CurrNcComm.m_CN.m_IsSiemensOne Then
' SiemensMoveAxis(ptMid, dAngC, dAngB)
' Return
'End If
Dim nTemp As Integer = 0
Dim dTemp As Double = 0
Dim CmdString As String = String.Empty
If Not EgtLuaExecFile(m_MainWindow.m_CurrentMachine.sMachDir() & "\DirectCmd\TestWork.lua") Then
Return
@@ -652,8 +669,26 @@ Public Class ProjectMgrUC
'----------- ASSEGNO POSIZIONE DI ARRIVO MACCHINA -----------
' Assegno valore ad ogni asse da muovere (in zero macchina)
EgtLuaSetGlobNumVar("CMD.X_AXISMOVE", ptMid.x)
EgtLuaSetGlobNumVar("CMD.Y_AXISMOVE", ptMid.y)
Dim dAxVal As Double = ptMid.x
Dim bThickSaw As Boolean = True
If bThickSaw Then
If dAxVal > 0 Then
dAxVal += dThick
ElseIf dAxVal < 0 Then
dAxVal -= dThick
End If
End If
EgtLuaSetGlobNumVar("CMD.X_AXISMOVE", dAxVal)
dAxVal = ptMid.y
If bThickSaw Then
If dAxVal > 0 Then
dAxVal += dThick
ElseIf dAxVal < 0 Then
dAxVal -= dThick
End If
End If
EgtLuaSetGlobNumVar("CMD.Y_AXISMOVE", dAxVal)
dAxVal = ptMid.z
EgtLuaSetGlobNumVar("CMD.Z_AXISMOVE", ptMid.z)
' imposto gli angoli
EgtLuaSetGlobNumVar("CMD.C_ANGMOVE", dAngC)
@@ -669,6 +704,15 @@ Public Class ProjectMgrUC
' Log del comando
EgtOutLog("CmdString=" & CmdString)
'' Eseguo in MDI
'm_CurrNcComm.m_CN.DGeneralFunctions_WriteCncMode(2) ' Modalità MDI
'System.Threading.Thread.Sleep(150)
'm_CurrNcComm.m_CN.sz_ManualDataInput = CmdString
'm_CurrNcComm.m_CN.MDI_command()
'System.Threading.Thread.Sleep(150)
'm_CurrNcComm.m_CN.DGeneralFunctions_CycleStart()
'm_CurrNcComm.m_CN.DGeneralFunctions_WriteCncMode(7) ' Modalità manuale
' Reset lua
EgtLuaResetGlobVar("CMD")
' Modifico stringa per inserire i newline ( in questo caso non c'è bisogno perchè tutto sulla stessa linea)
@@ -696,6 +740,95 @@ Public Class ProjectMgrUC
End Sub
Private Sub SiemensMoveAxis(ptMid As Point3d, dAngC As Double, dAngB As Double)
Dim nTemp As Integer = 0
Dim dTemp As Double = 0
Dim CmdString As String = String.Empty
EgtLuaExecFile(m_MainWindow.m_CurrentMachine.sMachDir() & "\DirectCmd\TestWork.lua")
'----------- DATI MOVIMENTO -----------
' imposto avanzamneto in rapido (non deve essere impostata feed e speed)
EgtLuaSetGlobBoolVar("CMD.G0", True)
'' fermo la rotazione dell'utensile (per sicure
'EgtLuaSetGlobNumVar("CMD.F", 30000)
'EgtLuaSetGlobNumVar("CMD.S", 0)
'----------- POSIZINE MACCHINA -----------
' Leggo gli assi rispetto allo 0 macchina
m_CurrNcComm.m_CN.set_OP_OM(0)
System.Threading.Thread.Sleep(50)
Dim dL1o, dL2o, dL3o As Double
m_CurrNcComm.GetLinearAxesPositions(dL1o, dL2o, dL3o)
Dim dR1, dR2 As Double
m_CurrNcComm.GetRotaryAxesPositions(dR1, dR2)
EgtLuaSetGlobNumVar("CMD.L1o", dL1o)
EgtLuaSetGlobNumVar("CMD.L2o", dL2o)
EgtLuaSetGlobNumVar("CMD.L3o", dL3o)
EgtLuaSetGlobNumVar("CMD.R1", dR1)
EgtLuaSetGlobNumVar("CMD.R2", dR2)
' Recupero spessore lama corrente
Dim sSaw As String = m_MainWindow.m_CurrentMachine.sCurrSaw
EgtTdbSetCurrTool(sSaw)
Dim dThick As Double = 0
EgtTdbGetCurrToolParam(MCH_TP.THICK, dThick)
EgtLuaSetGlobNumVar("CMD.SAWTH", dThick)
'----------- ASSEGNO POSIZIONE DI ARRIVO MACCHINA -----------
' Assegno valore ad ogni asse da muovere (in zero macchina)
Dim dAxVal As Double = ptMid.x
Dim bThickSaw As Boolean = True
If bThickSaw Then
If dAxVal > 0 Then
dAxVal += dThick
ElseIf dAxVal < 0 Then
dAxVal -= dThick
End If
End If
EgtLuaSetGlobNumVar("CMD.X_AXISMOVE", dAxVal)
dAxVal = ptMid.y
If bThickSaw Then
If dAxVal > 0 Then
dAxVal += dThick
ElseIf dAxVal < 0 Then
dAxVal -= dThick
End If
End If
EgtLuaSetGlobNumVar("CMD.Y_AXISMOVE", dAxVal)
dAxVal = ptMid.z
EgtLuaSetGlobNumVar("CMD.Z_AXISMOVE", ptMid.z)
EgtLuaSetGlobNumVar("CMD.C_ANGMOVE", dAngC)
EgtLuaSetGlobNumVar("CMD.B_ANGMOVE", dAngB)
' Calcolo stringa di comando risultante
EgtLuaCallFunction("CmdString")
EgtLuaGetGlobStringVar("CMD.CMDSTRING", CmdString)
' Reset lua
EgtLuaResetGlobVar("CmdString")
EgtLuaResetGlobVar("CMD")
' Log del comando
EgtOutLog("CmdString=" & CmdString)
' Creo file
Dim sFilePath As String = m_MainWindow.GetCncDir() & "\MANAXMOV.MPF"
Try
File.WriteAllLines(sFilePath, New List(Of String)({CmdString, "M30"}), Text.Encoding.UTF8)
Catch ex As Exception
EgtOutLog("Eccezione creazione programma: " & ex.Message)
End Try
' Download programma (eventuali errori sono segnalati dalla funzione)
If m_CurrNcComm.m_CN.Download_NC_prog(sFilePath, "MANAXMOV") = 0 Then
EgtOutLog("Programma caricato")
System.Threading.Thread.Sleep(150)
Dim sActivateManAxMov As String = "/plc/OmagCUT_DB.CTRL.Start_Asup"
' Attivo variabile per esecuzione comando manuale
m_CurrNcComm.m_CN.DVariables_WriteVariables3(sActivateManAxMov, 1, 1, 0, 0, "")
End If
End Sub
' ------------------------------------------------ GENERA COMANDI CNC MOVIMENTO ------------------------------------------------
Private Sub TestBtn_Click(sender As Object, e As RoutedEventArgs) Handles TestBtn.Click
-77
View File
@@ -1,77 +0,0 @@
Imports EgtUILib
Imports EgtWPFLib
Public Class StartLauncherWD
Private m_MainWindow As MainWindow = DirectCast(Application.Current.MainWindow, MainWindow)
Public Enum MODE_LAUNCHER As Integer
OpenFolder = 0
NewProject = 1
LastProject = 2
SelectedProject = 3
End Enum
Private m_CurrSelection As MODE_LAUNCHER
Public ReadOnly Property CurrSelection As MODE_LAUNCHER
Get
Return m_CurrSelection
End Get
End Property
Private m_SelPath As String = String.Empty
Public ReadOnly Property SelPath As String
Get
Return m_SelPath
End Get
End Property
Public Sub New(Owner As Window)
Me.Owner = Owner
InitializeComponent()
End Sub
' inizializzo la finestra
Private Sub StartLauncherWD_Initialized(sender As Object, e As EventArgs) Handles Me.Initialized
' carico la liste dei file recenti
FilesLsBx.ItemsSource = m_MainWindow.m_CurrentProjectPageUC.m_MruFiles.FileNames
' posiziono la fistra in centro alla pagina
Me.Top = Owner.Top + Owner.Height / 2 - Me.Height / 2
Me.Left = Owner.Left + Owner.Width / 2 - Me.Width / 2
' imopposto il messaggio di avvio
SlectLauncherTxbl.Text = "Seleziona modalità di avvio"
End Sub
' lancio l'apertura della pagina dei progetti
Private Sub OpenFolder_Click(sender As Object, e As RoutedEventArgs) Handles OpenFolder.Click
m_CurrSelection = MODE_LAUNCHER.OpenFolder
m_MainWindow.m_PrevActivePage = m_MainWindow.m_ActivePage
' Passo alla pagina di apertura con preview
m_MainWindow.MainWindowGrid.Children.Remove(m_MainWindow.m_CurrentProjectPageUC)
m_MainWindow.MainWindowGrid.Children.Add(m_MainWindow.m_OpenPage)
m_MainWindow.m_ActivePage = MainWindow.Pages.Open
Me.Close()
End Sub
' creo un progetto nuovo
Private Sub NewProject_Click(sender As Object, e As RoutedEventArgs) Handles NewProject.Click
m_CurrSelection = MODE_LAUNCHER.NewProject
EgtZoom(ZM.ALL)
Me.Close()
End Sub
' Ultimo progetto
Private Sub LastProject_Click(sender As Object, e As RoutedEventArgs) Handles LastProject.Click
m_CurrSelection = MODE_LAUNCHER.LastProject
EgtZoom(ZM.ALL)
Me.Close()
End Sub
' quando viene rilasciato il mouse
Private Sub SelectProject_MouseUp(sender As Object, e As RoutedEventArgs) Handles FilesLsBx.MouseDoubleClick, FilesLsBx.TouchUp
m_SelPath = FilesLsBx.SelectedItem
m_CurrSelection = MODE_LAUNCHER.SelectedProject
EgtZoom(ZM.ALL)
Me.Close()
End Sub
End Class
@@ -4,7 +4,7 @@
xmlns:EgtWPFLib="clr-namespace:EgtWPFLib;assembly=EgtWPFLib"
FontFamily="{DynamicResource OmagCut_Font}"
ResizeMode="NoResize" WindowStyle="None" AllowsTransparency="True" Background="Transparent"
Title="SaveNameWD" Height="300" Width="426.5" ShowInTaskbar="False">
Title="SaveNameWD" Height="350" Width="426.5" ShowInTaskbar="False">
<!--Definizione della pagina di scelta del nome con cui salvare il progetto-->
<Border Style="{DynamicResource OmagCut_Border}">
<Grid x:Name="SaveNameGrid">
@@ -14,19 +14,21 @@
<ColumnDefinition Width="0.5*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="0.2*"/>
<RowDefinition Height="0.1*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.2*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="0.2*"/>
<RowDefinition Height="0.4*"/>
<RowDefinition Height="0.1*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="0.2*"/>
</Grid.RowDefinitions>
<!--Messaggio di tipo di avvio-->
<!--Messaggio: Selezione modalità di avvio-->
<TextBlock Name="SlectLauncherTxbl" Grid.Column="1" Grid.Row="1"
Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<Grid Name="ButtonsGrid" Grid.Column="1" Grid.Row="3" Grid.RowSpan="1">
<Grid.ColumnDefinitions>
@@ -39,32 +41,33 @@
</Grid.ColumnDefinitions>
<!--apri folder progetti-->
<Button Name="OpenFolder" Grid.Column="0" Style="{DynamicResource OmagCut_GradientBlueIconButton}"
ToolTip="OpenFolder">
<Image Source="{DynamicResource ZoomWinImg}" Style="{StaticResource OmagCut_ButtonIcon}"/>
</Button>
<!--nuovo progetto-->
<Button Name="NewProject" Grid.Column="2" Style="{DynamicResource OmagCut_GradientBlueIconButton}"
ToolTip="New Project">
<Image Source="{DynamicResource CsvNewImg}" Style="{StaticResource OmagCut_ButtonIcon}"/>
</Button>
<!--ultimo progetto-->
<Button Name="LastProject" Grid.Column="4" Style="{DynamicResource OmagCut_GradientBlueIconButton}"
<Button Name="LastProject" Grid.Column="0" Style="{DynamicResource OmagCut_RightGrayGradientYellowButton}"
ToolTip="LastProject">
<Image Source="{DynamicResource CsvOpenImg}" Style="{StaticResource OmagCut_ButtonIcon}"/>
</Button>
<!--nuovo progetto-->
<Button Name="NewProject" Grid.Column="2" Style="{DynamicResource OmagCut_RightGrayGradientYellowButton}"
ToolTip="New Project">
<Image Source="{DynamicResource CsvNewImg}" Style="{StaticResource OmagCut_ButtonIcon}"/>
</Button>
<!--apri folder progetti-->
<Button Name="OpenFolder" Grid.Column="4" Style="{DynamicResource OmagCut_RightGrayGradientYellowButton}"
ToolTip="OpenFolder">
<Image Source="{DynamicResource ZoomWinImg}" Style="{StaticResource OmagCut_ButtonIcon}"/>
</Button>
</Grid>
<UniformGrid Grid.Column="1" Grid.Row="5">
<TextBlock Name="FileName" Grid.Column="1"
Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<TextBlock Name="DataFile" Grid.Column="1"
Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
</UniformGrid>
<!--lista degli ultimi file aperti-->
<ListBox Name="FilesLsBx" Grid.Column="1" Grid.Row="5"
SelectionMode="Extended">
<ListBox.ItemContainerStyle>
<Style TargetType="ListBoxItem">
</Style>
</ListBox.ItemContainerStyle>
<ListBox Name="FilesLsBx" Grid.Column="1" Grid.Row="7" ItemTemplate="{DynamicResource FileNameLsBxItem}"
SelectionMode="Extended">
</ListBox>
+142
View File
@@ -0,0 +1,142 @@
Imports EgtUILib
Imports EgtWPFLib
Imports System.IO
Imports System.Collections.ObjectModel
Imports System.ComponentModel
Public Class StartLauncherWD
Private m_MainWindow As MainWindow = DirectCast(Application.Current.MainWindow, MainWindow)
' lista dei file recenti da visualizzare
Private m_RecentFileList As New ObservableCollection(Of FileNameLsBxItem)
Public Enum MODE_LAUNCHER
LastProject
OpenFolder
NewProject
ShowWindow
SelectedProject
End Enum
Private m_CurrSelection As MODE_LAUNCHER
Public Property CurrSelection As MODE_LAUNCHER
Get
Return m_CurrSelection
End Get
Set(value As MODE_LAUNCHER)
m_CurrSelection = value
End Set
End Property
Private m_SelPath As String = String.Empty
Public ReadOnly Property SelPath As String
Get
Return m_SelPath
End Get
End Property
Public Sub New(Owner As Window)
Me.Owner = Owner
InitializeComponent()
End Sub
'--------------------------- lista dei file recenti -----------------------------------------------------------------------
Private Class FileNameLsBxItem
Implements INotifyPropertyChanged
Public Event PropertyChanged As PropertyChangedEventHandler Implements INotifyPropertyChanged.PropertyChanged
Private m_sDate As String
Private m_sName As String
Public Property sDate As String
Get
Return m_sDate
End Get
Set(value As String)
m_sDate = value
End Set
End Property
Public Property Name As String
Get
Return m_sName
End Get
Set(value As String)
If value <> m_sName Then
m_sName = value
NotifyPropertyChanged("Name")
End If
End Set
End Property
Public ReadOnly Property GraphicName As String
Get
' recupero il nome del file con estensione, altrimenti -> Path.GetFileNameWithoutExtension(m_sName)
Return Path.GetFileNameWithoutExtension(m_sName)
End Get
End Property
Sub New(Name As String, dDate As Date)
Me.m_sName = Name
Me.m_sDate = dDate.ToString
End Sub
Public Sub NotifyPropertyChanged(propName As String)
RaiseEvent PropertyChanged(Me, New PropertyChangedEventArgs(propName))
End Sub
End Class
'--------------------------- lista dei file recenti -----------------------------------------------------------------------
' inizializzo la finestra
Private Sub StartLauncherWD_Initialized(sender As Object, e As EventArgs) Handles Me.Initialized
FilesLsBx.ItemsSource = m_RecentFileList
' carico la liste dei file recenti
For Each ItemFile In m_MainWindow.m_CurrentProjectPageUC.m_MruFiles.FileNames
m_RecentFileList.Add(New FileNameLsBxItem(ItemFile, File.GetLastAccessTime(ItemFile)))
Next
' posiziono la fistra in centro alla pagina
Me.Top = Owner.Top + Owner.Height / 2 - Me.Height / 2
Me.Left = Owner.Left + Owner.Width / 2 - Me.Width / 2
' imopposto il messaggio di avvio
SlectLauncherTxbl.Text = "Seleziona modalità di avvio"
FileName.Text = "Progetti recenti"
DataFile.Text = "Ultima apertura"
End Sub
' lancio l'apertura della pagina dei progetti
Private Sub OpenFolder_Click(sender As Object, e As RoutedEventArgs) Handles OpenFolder.Click
m_CurrSelection = MODE_LAUNCHER.OpenFolder
m_MainWindow.m_PrevActivePage = m_MainWindow.m_ActivePage
' Passo alla pagina di apertura con preview
m_MainWindow.MainWindowGrid.Children.Remove(m_MainWindow.m_CurrentProjectPageUC)
m_MainWindow.MainWindowGrid.Children.Add(m_MainWindow.m_OpenPage)
m_MainWindow.m_ActivePage = MainWindow.Pages.Open
Me.Close()
End Sub
' creo un progetto nuovo
Private Sub NewProject_Click(sender As Object, e As RoutedEventArgs) Handles NewProject.Click
m_CurrSelection = MODE_LAUNCHER.NewProject
EgtZoom(ZM.ALL)
Me.Close()
End Sub
' Ultimo progetto
Private Sub LastProject_Click(sender As Object, e As RoutedEventArgs) Handles LastProject.Click
m_CurrSelection = MODE_LAUNCHER.LastProject
EgtZoom(ZM.ALL)
Me.Close()
End Sub
' quando viene rilasciato il mouse
Private Sub SelectProject_MouseUp(sender As Object, e As RoutedEventArgs) Handles FilesLsBx.MouseDoubleClick, FilesLsBx.TouchUp
' recupero il nome selezionato
m_SelPath = FilesLsBx.SelectedItem.Name
m_CurrSelection = MODE_LAUNCHER.SelectedProject
EgtZoom(ZM.ALL)
Me.Close()
End Sub
End Class
-18
View File
@@ -20,11 +20,9 @@
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<!--riga di margine lasciata a fine pagina-->
<RowDefinition Height="0.5*"/>
</Grid.RowDefinitions>
<!--TAGLIO-->
<TextBlock Name="CurrSawingTxBl" Grid.Column="1" Grid.Row="0"
Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<ComboBox Name="CurrSawingCmBx" Grid.Column="1" Grid.Row="1">
@@ -35,7 +33,6 @@
</ComboBox.ItemTemplate>
</ComboBox>
<!--LAVORAZIONE SECONDARIA-->
<TextBlock Name="AuxiliaryMachiningTxBl" Grid.Column="1" Grid.Row="2"
Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}" Visibility="Hidden"/>
<ComboBox Name="AuxiliaryMachiningCmBx" Grid.Column="1" Grid.Row="3" Visibility="Hidden">
@@ -46,7 +43,6 @@
</ComboBox.ItemTemplate>
</ComboBox>
<!--FORATURA-->
<TextBlock Name="CurrDrillingTxBl" Grid.Column="1" Grid.Row="2"
Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}" Visibility="Hidden"/>
<ComboBox Name="CurrDrillingCmBx" Grid.Column="1" Grid.Row="3" Visibility="Hidden">
@@ -57,7 +53,6 @@
</ComboBox.ItemTemplate>
</ComboBox>
<!--FRESATURA-->
<TextBlock Name="CurrMillingTxBl" Grid.Column="1" Grid.Row="2"
Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}" Visibility="Hidden"/>
<ComboBox Name="CurrMillingCmBx" Grid.Column="1" Grid.Row="3" Visibility="Hidden">
@@ -68,18 +63,6 @@
</ComboBox.ItemTemplate>
</ComboBox>
<!--SVUOTATURA-->
<TextBlock Name="CurrPocketingTxBl" Grid.Column="1" Grid.Row="2"
Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}" Visibility="Hidden"/>
<ComboBox Name="CurrPocketingCmBx" Grid.Column="1" Grid.Row="3" Visibility="Hidden">
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding}" FontSize="20" />
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
<!--WATERJET-->
<TextBlock Name="CurrWJettingTxBl" Grid.Column="1" Grid.Row="2"
Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}" Visibility="Hidden"/>
<ComboBox Name="CurrWJettingCmBx" Grid.Column="1" Grid.Row="3" Visibility="Hidden">
@@ -90,7 +73,6 @@
</ComboBox.ItemTemplate>
</ComboBox>
<!--Bottoni Conferma/Cancel -->
<Grid Name="ButtonsGrid" Grid.Column="1" Grid.Row="3" Grid.RowSpan="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="0.5*"/>
+54 -245
View File
@@ -12,13 +12,9 @@ Public Class ChooseMachining
Private m_DrillingList As New List(Of String)
Private m_MillingList As New List(Of String)
Private m_WJettingList As New List(Of String)
Private m_PocketingList As New List(Of String)
' Numero righe della finestra, necessario per non ridimensionarla quando si cambia il tipo di utensile ausiliario
Private m_RowNumber As Integer = 6
' attulmente questa ComboBox è spenta (ma potrebbe essere richiesta in futuro?)
Private m_bNotShowAuxilaryCmBx As Boolean = False
Sub New(Owner As Window)
Me.Owner = Owner
InitializeComponent()
@@ -26,13 +22,12 @@ Public Class ChooseMachining
End Sub
Private Sub ChooseMachining_Initialized(sender As Object, e As EventArgs) Handles Me.Initialized
Me.Top = Owner.Top + Owner.Height / 2 - Me.Height
Me.Top = Owner.Top + Owner.Height / 2 - Me.Height / 2
Me.Left = Owner.Left + Owner.Width / 2 - Me.Width / 2
CurrSawingCmBx.ItemsSource = m_SawingList
AuxiliaryMachiningCmBx.ItemsSource = m_AuxMachTypeList
CurrDrillingCmBx.ItemsSource = m_DrillingList
CurrMillingCmBx.ItemsSource = m_MillingList
CurrPocketingCmBx.ItemsSource = m_PocketingList
CurrWJettingCmBx.ItemsSource = m_WJettingList
CurrSawingTxBl.Text = EgtMsg(MSG_CHOOSEMACHININGPAGEUC + 1)
@@ -40,7 +35,6 @@ Public Class ChooseMachining
CurrDrillingTxBl.Text = EgtMsg(MSG_CHOOSEMACHININGPAGEUC + 3)
CurrMillingTxBl.Text = EgtMsg(MSG_CHOOSEMACHININGPAGEUC + 4)
CurrWJettingTxBl.Text = EgtMsg(MSG_CHOOSEMACHININGPAGEUC + 10)
CurrPocketingTxBl.Text = EgtMsg(90550)
End Sub
@@ -50,18 +44,15 @@ Public Class ChooseMachining
Private Sub InitializeMachiningLists()
' -- TAGLIO --
' Creo lista lavorazioni di lama
CreateMachiningList(MCH_MY.SAWING, m_CurrentMachine.sCurrSaw, m_SawingList)
' aggiungo un campo vuoto
m_SawingList.Add( "")
' Verifico la configurazione della macchina per creare i combobox
Select Case m_CurrentMachine.MountedToolConfig
Case CurrentMachine.MountedToolConfigs.SAW
' se la macchina non è configurata con altre uscite rimuovo le ComboBox
ChooseMachiningGrid.Children.Remove(AuxiliaryMachiningTxBl)
ChooseMachiningGrid.Children.Remove(AuxiliaryMachiningCmBx)
Case CurrentMachine.MountedToolConfigs.SAWANDAUXTOOL, CurrentMachine.MountedToolConfigs.MANUALTOOLCHANGER, CurrentMachine.MountedToolConfigs.TOOLCHANGER
' Creo lista lavorazioni foretto e fresa
If m_CurrentMachine.MountedToolConfig = CurrentMachine.MountedToolConfigs.SAWANDAUXTOOL Then
@@ -69,147 +60,88 @@ Public Class ChooseMachining
' Se la lista è vuota cancello la lavorazione corrente di questo tipo
If m_DrillingList.Count = 0 Then
m_CurrentMachine.sCurrDrilling = String.Empty
Else
' aggiungo il campo vuoto
m_DrillingList.Add("")
End If
CreateMachiningList(MCH_MY.MILLING, m_CurrentMachine.sCurrMill, m_MillingList)
' Se la lista è vuota cancello la lavorazione corrente di questo tipo
If m_MillingList.Count = 0 Then
m_CurrentMachine.sCurrMilling = String.Empty
Else
' aggiungo il campo vuoto
m_MillingList.Add("")
End If
' -- SVUOTATURA --
CreateMachiningList(MCH_MY.POCKETING, m_CurrentMachine.sCurrMillNoTip, m_PocketingList)
If m_PocketingList.Count = 0 Then
m_CurrentMachine.sCurrPocketing = String.Empty
Else
m_PocketingList.Add("")
End If
CreateMachiningList(MCH_MY.WATERJETTING, m_CurrentMachine.sCurrWaterJet, m_WJettingList)
' Se la lista è vuota cancello la lavorazione corrente di questo tipo
If m_WJettingList.Count = 0 Then
m_CurrentMachine.sCurrWaterJetting = String.Empty
Else
m_WJettingList.Add("")
End If
' ---- MACCHINA CON CAMBIO UTENSILE ----
ElseIf m_CurrentMachine.MountedToolConfig = CurrentMachine.MountedToolConfigs.MANUALTOOLCHANGER Or
m_CurrentMachine.MountedToolConfig = CurrentMachine.MountedToolConfigs.TOOLCHANGER Then
' -- FORATURA --
CreateMachiningList(MCH_MY.DRILLING, m_DrillingList)
' Se la lista è vuota cancello la lavorazione corrente di questo tipo
If m_DrillingList.Count = 0 Then
m_CurrentMachine.sCurrDrilling = String.Empty
Else
' aggiungo il campo vuoto
m_DrillingList.Add("")
End If
' -- FRESATURA --
CreateMachiningList(MCH_MY.MILLING, m_MillingList)
' Se la lista è vuota cancello la lavorazione corrente di questo tipo
If m_MillingList.Count = 0 Then
m_CurrentMachine.sCurrMilling = String.Empty
Else
' aggiungo il campo vuoto
m_MillingList.Add("")
End If
' -- SVUOTATURA --
CreateMachiningList(MCH_MY.POCKETING, m_PocketingList)
If m_PocketingList.Count = 0 Then
m_CurrentMachine.sCurrPocketing = String.Empty
Else
' aggiungo il campo vuoto
m_PocketingList.Add("")
End If
' -- WATERJET --
CreateMachiningList(MCH_MY.WATERJETTING, m_WJettingList)
' Se la lista è vuota cancello la lavorazione corrente di questo tipo
If m_WJettingList.Count = 0 Then
m_CurrentMachine.sCurrWaterJetting = String.Empty
Else
' aggiungo il campo vuoto
m_WJettingList.Add("")
End If
End If
' preparazione dello spazio necessario ad ospitare la ComboBox per selezionare la lavorazione secondaria -- DA RIMUOVERE COMPLETAMENTE --
If m_bNotShowAuxilaryCmBx Then
' Preparazione interfaccia, definizione di due righe della tabella con la giusta altezza (per inserire la lavorazione secondaria)
For Index As Integer = 0 To 1
Dim Row As New RowDefinition
Row.Height = New GridLength(0.5, GridUnitType.Star)
ChooseMachiningGrid.RowDefinitions.Add(Row)
Next
AuxiliaryMachiningTxBl.SetValue(Grid.RowProperty, 2)
AuxiliaryMachiningCmBx.SetValue(Grid.RowProperty, 3)
ButtonsGrid.SetValue(Grid.RowProperty, 5)
AuxiliaryMachiningTxBl.Visibility = Windows.Visibility.Visible
AuxiliaryMachiningCmBx.Visibility = Windows.Visibility.Visible
Me.Height = 341.2
m_RowNumber += 2
Else
' se non visualizzato allora rimuovo
ChooseMachiningGrid.Children.Remove(AuxiliaryMachiningTxBl)
ChooseMachiningGrid.Children.Remove(AuxiliaryMachiningCmBx)
End If
' Definizione di due righe della tabella con la giusta altezza
For Index = 0 To 1
Dim Row As New RowDefinition
Row.Height = New GridLength(0.5, GridUnitType.Star)
ChooseMachiningGrid.RowDefinitions.Add(Row)
Next
AuxiliaryMachiningTxBl.SetValue(Grid.RowProperty, 2)
AuxiliaryMachiningCmBx.SetValue(Grid.RowProperty, 3)
ButtonsGrid.SetValue(Grid.RowProperty, 5)
AuxiliaryMachiningTxBl.Visibility = Windows.Visibility.Visible
AuxiliaryMachiningCmBx.Visibility = Windows.Visibility.Visible
Me.Height = 341.2
m_RowNumber += 2
End Select
' verifico che lista delle lavorazioni di lama non sia vuoto
If m_SawingList.Count > 0 Then
' provo ad assegnare la lama corrente (se l'associazione fallisce corrispoende ad impostare un campo vuoto)
CurrSawingCmBx.SelectedItem = m_MainWindow.m_CurrentMachine.sCurrSawing
Else
m_MainWindow.m_CurrentMachine.sCurrSawing = String.Empty
End If
' definizione della lista delle lavorazioni secondarie -- DA RIMUOVERE COMPLETAMENTE --
If m_bNotShowAuxilaryCmBx Then
If Not m_CurrentMachine.MountedToolConfig = CurrentMachine.MountedToolConfigs.SAW Then
If m_CurrentMachine.bDrilling Then
m_AuxMachTypeList.Add(New StringIdCmBx(1, EgtMsg(MSG_CHOOSEMACHININGPAGEUC + 6)))
If m_CurrentMachine.bMilling Then
m_AuxMachTypeList.Add(New StringIdCmBx(2, EgtMsg(MSG_CHOOSEMACHININGPAGEUC + 7)))
If m_CurrentMachine.bPocketing Then
m_AuxMachTypeList.Add(New StringIdCmBx(4, EgtMsg(91069)))
End If
If m_CurrentMachine.MountedToolConfig = CurrentMachine.MountedToolConfigs.MANUALTOOLCHANGER Or
m_CurrentMachine.MountedToolConfig = CurrentMachine.MountedToolConfigs.TOOLCHANGER Then
m_AuxMachTypeList.Add(New StringIdCmBx(3, EgtMsg(MSG_CHOOSEMACHININGPAGEUC + 8)))
End If
End If
ElseIf m_CurrentMachine.bMilling Then
If Not m_CurrentMachine.MountedToolConfig = CurrentMachine.MountedToolConfigs.SAW Then
If m_CurrentMachine.bDrilling Then
m_AuxMachTypeList.Add(New StringIdCmBx(1, EgtMsg(MSG_CHOOSEMACHININGPAGEUC + 6)))
If m_CurrentMachine.bMilling Then
m_AuxMachTypeList.Add(New StringIdCmBx(2, EgtMsg(MSG_CHOOSEMACHININGPAGEUC + 7)))
ElseIf m_CurrentMachine.bPocketing Then
m_AuxMachTypeList.Add(New StringIdCmBx(4, EgtMsg(91069)))
ElseIf m_CurrentMachine.bWaterJetting Then
m_AuxMachTypeList.Add(New StringIdCmBx(5, EgtMsg(MSG_CHOOSEMACHININGPAGEUC + 11)))
End If
' Aggiungo "Nessuna" come ultimo elemento della lista
m_AuxMachTypeList.Add(New StringIdCmBx(0, EgtMsg(MSG_CHOOSEMACHININGPAGEUC + 5)))
If m_CurrentMachine.sCurrDrilling <> String.Empty Then
If m_CurrentMachine.sCurrMilling <> String.Empty Then
AuxiliaryMachiningCmBx.SelectedItem = StringIdCmBx.FromIdToStringIdCmBx(3, m_AuxMachTypeList)
Else
AuxiliaryMachiningCmBx.SelectedItem = StringIdCmBx.FromIdToStringIdCmBx(1, m_AuxMachTypeList)
If m_CurrentMachine.MountedToolConfig = CurrentMachine.MountedToolConfigs.MANUALTOOLCHANGER Or
m_CurrentMachine.MountedToolConfig = CurrentMachine.MountedToolConfigs.TOOLCHANGER Then
m_AuxMachTypeList.Add(New StringIdCmBx(3, EgtMsg(MSG_CHOOSEMACHININGPAGEUC + 8)))
End If
ElseIf m_CurrentMachine.sCurrMilling <> String.Empty Then
AuxiliaryMachiningCmBx.SelectedItem = StringIdCmBx.FromIdToStringIdCmBx(2, m_AuxMachTypeList)
ElseIf m_CurrentMachine.sCurrWaterJetting <> String.Empty Then
AuxiliaryMachiningCmBx.SelectedItem = StringIdCmBx.FromIdToStringIdCmBx(4, m_AuxMachTypeList)
Else
AuxiliaryMachiningCmBx.SelectedItem = StringIdCmBx.FromIdToStringIdCmBx(0, m_AuxMachTypeList)
End If
ElseIf m_CurrentMachine.bMilling Then
m_AuxMachTypeList.Add(New StringIdCmBx(2, EgtMsg(MSG_CHOOSEMACHININGPAGEUC + 7)))
ElseIf m_CurrentMachine.bWaterJetting Then
m_AuxMachTypeList.Add(New StringIdCmBx(4, EgtMsg(MSG_CHOOSEMACHININGPAGEUC + 11)))
End If
' Aggiungo nessuna come ultimo elemento della lista
m_AuxMachTypeList.Add(New StringIdCmBx(0, EgtMsg(MSG_CHOOSEMACHININGPAGEUC + 5)))
If m_CurrentMachine.sCurrDrilling <> String.Empty Then
If m_CurrentMachine.sCurrMilling <> String.Empty Then
AuxiliaryMachiningCmBx.SelectedItem = StringIdCmBx.FromIdToStringIdCmBx(3, m_AuxMachTypeList)
Else
AuxiliaryMachiningCmBx.SelectedItem = StringIdCmBx.FromIdToStringIdCmBx(1, m_AuxMachTypeList)
End If
ElseIf m_CurrentMachine.sCurrMilling <> String.Empty Then
AuxiliaryMachiningCmBx.SelectedItem = StringIdCmBx.FromIdToStringIdCmBx(2, m_AuxMachTypeList)
ElseIf m_CurrentMachine.sCurrWaterJetting <> String.Empty Then
AuxiliaryMachiningCmBx.SelectedItem = StringIdCmBx.FromIdToStringIdCmBx(4, m_AuxMachTypeList)
Else
AuxiliaryMachiningCmBx.SelectedItem = StringIdCmBx.FromIdToStringIdCmBx(0, m_AuxMachTypeList)
End If
End If
RefreshMachiningPage()
End Sub
Private Sub CreateMachiningList(MachiningType As Integer, CurrTool As String, MachiningList As List(Of String))
@@ -239,7 +171,7 @@ Public Class ChooseMachining
If SysNotes <> String.Empty Then
Dim MachiningMaterials() = SysNotes.Split(";".ToCharArray)
SysNotes = String.Empty
For Each Material As Object In MachiningMaterials
For Each Material In MachiningMaterials
Dim Param() As String = Material.Split(",".ToCharArray)
If Param(0) = m_CurrentMachine.CurrMat.nId.ToString() Then
Dim dRawHeight = GetRawHeight()
@@ -264,13 +196,13 @@ Public Class ChooseMachining
Private Sub CreateMachiningList(MachiningType As Integer, MachiningList As List(Of String))
' Recupero UUID di tutti gli utensili attrezzati (nel ToolChanger e nel ManualToolChanger)
Dim TuuidList As New List(Of String)
For Each ToolChangerPos As ToolChangerPos In m_CurrentMachine.ToolChanger
For Each ToolChangerPos In m_CurrentMachine.ToolChanger
Dim sTuuid As String = String.Empty
EgtTdbSetCurrTool(ToolChangerPos.sTool)
EgtTdbGetCurrToolParam(MCH_TP.UUID, sTuuid)
TuuidList.Add(sTuuid)
Next
For Each ToolChangerPos As ToolChangerPos In m_CurrentMachine.ManualToolChanger
For Each ToolChangerPos In m_CurrentMachine.ManualToolChanger
Dim sTuuid As String = String.Empty
EgtTdbSetCurrTool(ToolChangerPos.sTool)
EgtTdbGetCurrToolParam(MCH_TP.UUID, sTuuid)
@@ -285,7 +217,7 @@ Public Class ChooseMachining
Dim sMachTuuid As String = String.Empty
EgtMdbGetCurrMachiningParam(MCH_MP.TUUID, sMachTuuid)
' Cerco UUID nella lista degli attrezzati
For Each Tuuid As String In TuuidList
For Each Tuuid In TuuidList
If sMachTuuid = Tuuid Then
If VerifyMatThickCompatibility() Then
MachiningList.Add(MachiningName)
@@ -303,15 +235,13 @@ Public Class ChooseMachining
CurrDrillingCmBx.Visibility = Windows.Visibility.Hidden
CurrMillingTxBl.Visibility = Windows.Visibility.Hidden
CurrMillingCmBx.Visibility = Windows.Visibility.Hidden
CurrPocketingTxBl.Visibility = Windows.Visibility.Hidden
CurrPocketingCmBx.Visibility = Windows.Visibility.Hidden
CurrWJettingTxBl.Visibility = Windows.Visibility.Hidden
CurrWJettingCmBx.Visibility = Windows.Visibility.Hidden
Dim SelectedItem As StringIdCmBx = DirectCast(AuxiliaryMachiningCmBx.SelectedItem, StringIdCmBx)
Select Case SelectedItem.nId
Case 0 ' Nessuna
If m_RowNumber > 8 Then
For Index As Integer = m_RowNumber - 1 To 8 Step -1
For Index = m_RowNumber - 1 To 8 Step -1
ChooseMachiningGrid.RowDefinitions.RemoveAt(Index)
Next
m_RowNumber = 8
@@ -324,7 +254,7 @@ Public Class ChooseMachining
Case 1 ' Foratura
' Definizione di due righe della tabella con la giusta altezza
If m_RowNumber < 10 Then
For Index As Integer = 1 To 10 - m_RowNumber
For Index = 1 To 10 - m_RowNumber
Dim Row As New RowDefinition
Row.Height = New GridLength(0.5, GridUnitType.Star)
ChooseMachiningGrid.RowDefinitions.Add(Row)
@@ -339,14 +269,13 @@ Public Class ChooseMachining
End If
m_MainWindow.m_CurrentMachine.sCurrMilling = String.Empty
m_MainWindow.m_CurrentMachine.sCurrWaterJetting = String.Empty
m_MainWindow.m_CurrentMachine.sCurrPocketing = String.Empty
CurrDrillingTxBl.Visibility = Windows.Visibility.Visible
CurrDrillingCmBx.Visibility = Windows.Visibility.Visible
Me.Height = 426.5
Case 2 ' Fresatura
' Definizione di due righe della tabella con la giusta altezza
If m_RowNumber < 10 Then
For Index As Integer = 1 To 10 - m_RowNumber
For Index = 1 To 10 - m_RowNumber
Dim Row As New RowDefinition
Row.Height = New GridLength(0.5, GridUnitType.Star)
ChooseMachiningGrid.RowDefinitions.Add(Row)
@@ -361,14 +290,13 @@ Public Class ChooseMachining
End If
m_MainWindow.m_CurrentMachine.sCurrDrilling = String.Empty
m_MainWindow.m_CurrentMachine.sCurrWaterJetting = String.Empty
m_MainWindow.m_CurrentMachine.sCurrPocketing = String.Empty
CurrMillingTxBl.Visibility = Windows.Visibility.Visible
CurrMillingCmBx.Visibility = Windows.Visibility.Visible
Me.Height = 426.5
Case 3 ' Foratura + Fresatura (Entrambe)
' Definizione di quattro righe della tabella con la giusta altezza
If m_RowNumber < 12 Then
For Index As Integer = 1 To 12 - m_RowNumber
For Index = 1 To 12 - m_RowNumber
Dim Row As New RowDefinition
Row.Height = New GridLength(0.5, GridUnitType.Star)
ChooseMachiningGrid.RowDefinitions.Add(Row)
@@ -392,33 +320,10 @@ Public Class ChooseMachining
CurrMillingTxBl.Visibility = Windows.Visibility.Visible
CurrMillingCmBx.Visibility = Windows.Visibility.Visible
Me.Height = 511.8
Case 4 ' Pocketing
Case 4 ' WaterJetting
' Definizione di due righe della tabella con la giusta altezza
If m_RowNumber < 10 Then
For Index As Integer = 1 To 10 - m_RowNumber
Dim Row As New RowDefinition
Row.Height = New GridLength(0.5, GridUnitType.Star)
ChooseMachiningGrid.RowDefinitions.Add(Row)
Next
m_RowNumber = 10
End If
CurrPocketingTxBl.SetValue(Grid.RowProperty, 4)
CurrPocketingCmBx.SetValue(Grid.RowProperty, 5)
ButtonsGrid.SetValue(Grid.RowProperty, 7)
If m_CurrentMachine.sCurrPocketing <> String.Empty Then
CurrPocketingCmBx.SelectedItem = m_CurrentMachine.sCurrPocketing
End If
m_MainWindow.m_CurrentMachine.sCurrDrilling = String.Empty
m_MainWindow.m_CurrentMachine.sCurrMilling = String.Empty
m_MainWindow.m_CurrentMachine.sCurrWaterJetting = String.Empty
CurrPocketingTxBl.Visibility = Windows.Visibility.Visible
CurrPocketingCmBx.Visibility = Windows.Visibility.Visible
Me.Height = 426.5
Case 5 ' WaterJetting
' Definizione di due righe della tabella con la giusta altezza
If m_RowNumber < 10 Then
For Index As Integer = 1 To 10 - m_RowNumber
For Index = 1 To 10 - m_RowNumber
Dim Row As New RowDefinition
Row.Height = New GridLength(0.5, GridUnitType.Star)
ChooseMachiningGrid.RowDefinitions.Add(Row)
@@ -439,98 +344,6 @@ Public Class ChooseMachining
End Select
End Sub
Private Sub RefreshMachiningPage()
Dim nDeltaRow As Integer = 4
Dim nNewRow As Integer = 2
' nascondo tutte le CmBx e TxBl
CurrDrillingTxBl.Visibility = Windows.Visibility.Hidden
CurrDrillingCmBx.Visibility = Windows.Visibility.Hidden
CurrMillingTxBl.Visibility = Windows.Visibility.Hidden
CurrMillingCmBx.Visibility = Windows.Visibility.Hidden
CurrPocketingTxBl.Visibility = Windows.Visibility.Hidden
CurrPocketingCmBx.Visibility = Windows.Visibility.Hidden
CurrWJettingTxBl.Visibility = Windows.Visibility.Hidden
CurrWJettingCmBx.Visibility = Windows.Visibility.Hidden
' -- FORATURA -- se foretto presente
If m_CurrentMachine.bDrill And m_DrillingList.Count() > 0 Then
' Definizione di due righe della tabella con la giusta altezza
For Index As Integer = 1 To nNewRow
Dim Row As New RowDefinition
Row.Height = New GridLength(0.5, GridUnitType.Star)
ChooseMachiningGrid.RowDefinitions.Add(Row)
Next
m_RowNumber = m_RowNumber + nNewRow
CurrDrillingTxBl.SetValue(Grid.RowProperty, m_RowNumber - nDeltaRow - nNewRow)
CurrDrillingCmBx.SetValue(Grid.RowProperty, m_RowNumber - nDeltaRow - nNewRow + 1)
'ButtonsGrid.SetValue(Grid.RowProperty, 5)
If m_CurrentMachine.sCurrDrilling <> String.Empty Then
CurrDrillingCmBx.SelectedItem = m_CurrentMachine.sCurrDrilling
End If
CurrDrillingTxBl.Visibility = Windows.Visibility.Visible
CurrDrillingCmBx.Visibility = Windows.Visibility.Visible
End If
' -- FRESATURA -- se fresa presente
If m_CurrentMachine.bMill And m_MillingList.Count() > 0 Then
' Definizione di due righe della tabella con la giusta altezza
For Index As Integer = 1 To nNewRow
Dim Row As New RowDefinition
Row.Height = New GridLength(0.5, GridUnitType.Star)
ChooseMachiningGrid.RowDefinitions.Add(Row)
Next
m_RowNumber = m_RowNumber + nNewRow
CurrMillingTxBl.SetValue(Grid.RowProperty, m_RowNumber - nDeltaRow - nNewRow)
CurrMillingCmBx.SetValue(Grid.RowProperty, m_RowNumber - nDeltaRow - nNewRow + 1)
ButtonsGrid.SetValue(Grid.RowProperty, 7)
If m_CurrentMachine.sCurrMilling <> String.Empty Then
CurrMillingCmBx.SelectedItem = m_CurrentMachine.sCurrMilling
End If
CurrMillingTxBl.Visibility = Windows.Visibility.Visible
CurrMillingCmBx.Visibility = Windows.Visibility.Visible
End If
' -- SVUOTATURA -- se fresa senza punta presente
If m_CurrentMachine.bCupWheel And m_PocketingList.Count > 0 Then
' Definizione di due righe della tabella con la giusta altezza
For Index As Integer = 1 To nNewRow
Dim Row As New RowDefinition
Row.Height = New GridLength(0.5, GridUnitType.Star)
ChooseMachiningGrid.RowDefinitions.Add(Row)
Next
m_RowNumber = m_RowNumber + nNewRow
CurrPocketingTxBl.SetValue(Grid.RowProperty, m_RowNumber - nDeltaRow - nNewRow)
CurrPocketingCmBx.SetValue(Grid.RowProperty, m_RowNumber - nDeltaRow - nNewRow + 1)
ButtonsGrid.SetValue(Grid.RowProperty, 7)
If m_CurrentMachine.sCurrPocketing <> String.Empty Then
CurrPocketingCmBx.SelectedItem = m_CurrentMachine.sCurrPocketing
End If
CurrPocketingTxBl.Visibility = Windows.Visibility.Visible
CurrPocketingCmBx.Visibility = Windows.Visibility.Visible
End If
' riga 8/9
If m_CurrentMachine.bWaterJetting And m_WJettingList.Count > 0 Then
' Definizione di due righe della tabella con la giusta altezza
For Index As Integer = 1 To nNewRow
Dim Row As New RowDefinition
Row.Height = New GridLength(0.5, GridUnitType.Star)
ChooseMachiningGrid.RowDefinitions.Add(Row)
Next
m_RowNumber = m_RowNumber + nNewRow
CurrWJettingTxBl.SetValue(Grid.RowProperty, m_RowNumber - nDeltaRow - nNewRow)
CurrWJettingCmBx.SetValue(Grid.RowProperty, m_RowNumber - nDeltaRow - nNewRow + 1)
If m_CurrentMachine.sCurrWaterJetting <> String.Empty Then
CurrWJettingCmBx.SelectedItem = m_CurrentMachine.sCurrWaterJetting
End If
CurrWJettingTxBl.Visibility = Windows.Visibility.Visible
CurrWJettingCmBx.Visibility = Windows.Visibility.Visible
End If
Me.Height = 42 * m_RowNumber
ButtonsGrid.SetValue(Grid.RowProperty, m_RowNumber - nDeltaRow + 1)
End Sub
Private Sub CurrSawingCmBx_SelectionChanged(sender As Object, e As SelectionChangedEventArgs) Handles CurrSawingCmBx.SelectionChanged
m_MainWindow.m_CurrentMachine.sCurrSawing = CurrSawingCmBx.SelectedItem.ToString()
End Sub
@@ -543,10 +356,6 @@ Public Class ChooseMachining
m_MainWindow.m_CurrentMachine.sCurrMilling = CurrMillingCmBx.SelectedItem.ToString()
End Sub
Private Sub CurrPocketingCmBx_SekectionChanged(sender As Object, e As SelectionChangedEventArgs) Handles CurrPocketingCmBx.SelectionChanged
m_MainWindow.m_CurrentMachine.sCurrPocketing = CurrPocketingCmBx.SelectedItem.ToString()
End Sub
Private Sub CurrWJettingCmBx_SelectionChanged(sender As Object, e As SelectionChangedEventArgs) Handles CurrWJettingCmBx.SelectionChanged
m_MainWindow.m_CurrentMachine.sCurrWaterJetting = CurrWJettingCmBx.SelectedItem.ToString()
End Sub
@@ -567,7 +376,7 @@ Class StringIdCmBx
Private m_sName As String
Friend Overloads Shared Function FromIdToStringIdCmBx(nId As Integer, List As List(Of StringIdCmBx)) As StringIdCmBx
For Each Item As StringIdCmBx In List
For Each Item In List
If Item.nId = nId Then
Return Item
End If
@@ -576,7 +385,7 @@ Class StringIdCmBx
End Function
Friend Overloads Shared Function FromIdToStringIdCmBx(nId As Integer, List As ObservableCollection(Of StringIdCmBx)) As StringIdCmBx
For Each Item As StringIdCmBx In List
For Each Item In List
If Item.nId = nId Then
Return Item
End If
+4 -4
View File
@@ -1289,7 +1289,7 @@ Public Class RawPartPageUC
Return False
End If
' Cancello eventuali curve risultato dell'offset oltre la prima
For i As Integer = 1 To nCount - 1
For i = 1 To nCount - 1
EgtErase(nKerfId + i)
Next
' Cancello il vecchio kerf
@@ -1656,7 +1656,7 @@ Public Class RawPartPageUC
m_MainWindow.m_CNCommunication.m_CN.n_DReadELS_handle = 0
' Definisco flag tastatura
Dim bProbingOk As Boolean = False
For I As integer = 0 To 120
For I = 0 To 120
' Devo rileggere la variabile ad ogni ciclo
m_MainWindow.m_CNCommunication.m_CN.ReadEls_Add_Parameter(ProbingStateNameVar, 3)
System.Threading.Thread.Sleep(100)
@@ -1693,7 +1693,7 @@ Public Class RawPartPageUC
Dim RawThicknessNameVar As String = String.Empty
GetPrivateProfileString(S_MACH_PROBING, K_RAWTHICKNESS, "", RawThicknessNameVar, m_MainWindow.GetMachIniFile())
m_MainWindow.m_CNCommunication.m_CN.n_DReadELS_handle = 0
For I As integer = 0 To 20
For I = 0 To 20
' Devo rileggere la variabile ad ogni ciclo
m_MainWindow.m_CNCommunication.m_CN.ReadEls_Add_Parameter(RawThicknessNameVar, 3)
If m_MainWindow.m_CNCommunication.m_CN.n_DReadELS_handle = 3 Then
@@ -1813,7 +1813,7 @@ Public Class RawPartPageUC
CloseRawByLaser()
Else
' Elimino tutti i segmenti disegnati
For Each nEntityId As Integer In m_CurveXKerfList
For Each nEntityId In m_CurveXKerfList
If EgtGetType(nEntityId) = GDB_TY.CRV_LINE Then
EgtErase(nEntityId)
End If
+1 -1
View File
@@ -57,7 +57,7 @@ Public Class SimulationPageUC
UsageTxBl.Text = EgtMsg(MSG_SIMULATIONPAGEUC + 18) ' Utilizzo
' Impostazioni box assi
m_SimulationAxesNum = GetPrivateProfileInt(S_AXES, K_SIMULATIONAXESNUM, 5, m_MainWindow.GetMachIniFile())
For Index As Integer = 0 To AxesUniformGrid.Children.Count - 1
For Index = 0 To AxesUniformGrid.Children.Count - 1
If Index > m_SimulationAxesNum - 1 And Index < AxesUniformGrid.Children.Count - 2 Then
If TypeOf AxesUniformGrid.Children(Index) Is Grid Then
Dim AxisGrid As Grid = DirectCast(AxesUniformGrid.Children(Index), Grid)
+2 -2
View File
@@ -121,7 +121,7 @@ Public Class WorkInProgressPageUC
m_CurrNcComm.m_CN.n_DReadELS_handle = 0
m_CurrNcComm.m_CN.ReadEls_Add_Parameter(m_CurrMachine.sVarProg1, 1)
Dim nVarProg1 As Integer = 99
For I As Integer = 0 To 20
For I = 0 To 20
System.Threading.Thread.Sleep(100)
If m_CurrNcComm.m_CN.n_DReadELS_handle = 1 Then
nVarProg1 = CInt(m_CurrNcComm.m_CN.d_DReadELS_value)
@@ -135,7 +135,7 @@ Public Class WorkInProgressPageUC
m_CurrNcComm.m_CN.n_DReadELS_handle = 0
m_CurrNcComm.m_CN.ReadEls_Add_Parameter(m_CurrMachine.sVarProg2, 1)
Dim nVarProg2 As Integer = 99
For I As Integer = 0 To 20
For I = 0 To 20
System.Threading.Thread.Sleep(100)
If m_CurrNcComm.m_CN.n_DReadELS_handle = 1 Then
nVarProg2 = CInt(m_CurrNcComm.m_CN.d_DReadELS_value)