diff --git a/AlarmsPageUC.xaml b/AlarmsPageUC.xaml index 20bcb5f..a62f2a1 100644 --- a/AlarmsPageUC.xaml +++ b/AlarmsPageUC.xaml @@ -355,6 +355,30 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/AlarmsPageUC.xaml.vb b/AlarmsPageUC.xaml.vb index fc7f928..6aef9ff 100644 --- a/AlarmsPageUC.xaml.vb +++ b/AlarmsPageUC.xaml.vb @@ -63,13 +63,13 @@ Public Class AlarmsPageUC IntArcMaxSideAngTxBl.Text = EgtMsg(MSG_ALARMSPAGEUC + 24) MachineParamGpBx.Header = EgtMsg(MSG_ALARMSPAGEUC + 19) SawGpBx.Header = EgtMsg(MSG_ALARMSPAGEUC + 25) - DirectCutsParamGpBx.Header = EgtMsg(MSG_ALARMSPAGEUC + 27) ' Tagli diretti - FinalHomeTxBl.Text = EgtMsg(MSG_ALARMSPAGEUC + 28) ' Home finale - MillingsParamGpBx.Header = EgtMsg(MSG_ALARMSPAGEUC + 29) ' Parametri fresature - CornerCutsTxBl.Text = EgtMsg(MSG_ALARMSPAGEUC + 44) ' Sempre sugli angoli - InternalCutsTxBl.Text = EgtMsg(MSG_ALARMSPAGEUC + 30) ' Sempre sugli interni - NestingParamGpBx.Header = EgtMsg(MSG_ALARMSPAGEUC + 31) ' Nesting - AlignTxBl.Text = EgtMsg(MSG_ALARMSPAGEUC + 32) ' Allineato + DirectCutsParamGpBx.Header = EgtMsg(MSG_ALARMSPAGEUC + 27) ' Tagli diretti + FinalHomeTxBl.Text = EgtMsg(MSG_ALARMSPAGEUC + 28) ' Home finale + MillingsParamGpBx.Header = EgtMsg(MSG_ALARMSPAGEUC + 29) ' Parametri fresature + CornerCutsTxBl.Text = EgtMsg(MSG_ALARMSPAGEUC + 44) ' Sempre sugli angoli + InternalCutsTxBl.Text = EgtMsg(MSG_ALARMSPAGEUC + 30) ' Sempre sugli interni + NestingParamGpBx.Header = EgtMsg(MSG_ALARMSPAGEUC + 31) ' Nesting + AlignTxBl.Text = EgtMsg(MSG_ALARMSPAGEUC + 32) ' Allineato SetUpBtn.Content = EgtMsg(MSG_ALARMSPAGEUC + 33) NewMatBtn.Content = EgtMsg(MSG_ALARMSPAGEUC + 34) RemoveMatBtn.Content = EgtMsg(MSG_ALARMSPAGEUC + 35) @@ -79,13 +79,15 @@ Public Class AlarmsPageUC ThresholdTxBl.Text = EgtMsg(MSG_ALARMSPAGEUC + 39) ToleranceTxBl.Text = EgtMsg(MSG_ALARMSPAGEUC + 40) WashingTxBl.Text = EgtMsg(MSG_ALARMSPAGEUC + 41) + CutFredGpBx.Header = EgtMsg(MSG_ALARMSPAGEUC + 46) 'Tagli Feed inizio/fine + CfrLenTxBl.Text = EgtMsg(MSG_ALARMSPAGEUC + 47) 'Lunghezza + CfrPercTxBl.Text = EgtMsg(MSG_ALARMSPAGEUC + 48) 'Riduzione % AutoRawImageParamGpBx.Visibility = Windows.Visibility.Hidden End Sub Private Sub AlarmsPage_Loaded(sender As Object, e As RoutedEventArgs) Handles Me.Loaded If m_bFirst Then - ' Variabile che accorcia il riferimento alla macchina corrente m_CurrentMachine = m_MainWindow.m_CurrentMachine @@ -117,6 +119,12 @@ Public Class AlarmsPageUC End If End If + ' Abilitazione Feed ridotta su inizio/fine tagli + If m_CurrentMachine.bFsevEnable Then + CutFredGpBx.Visibility = Windows.Visibility.Visible + Else + CutFredGpBx.Visibility = Windows.Visibility.Hidden + End If m_bFirst = False End If @@ -240,6 +248,9 @@ Public Class AlarmsPageUC ' Leggo flag lavaggio WashingChBx.IsChecked = (GetPrivateProfileInt(S_MACH_NEST, K_MACH_WASHING, 1, m_MainWindow.GetMachIniFile()) <> 0) + ' Leggo parametri per variazione feed in tagli + CfrLenTxBx.Text = LenToString(m_CurrentMachine.dFsevLength, 3) + CfrPercTxBx.Text = DoubleToString(m_CurrentMachine.dFsevPerc, 0) End Sub Private Sub AuxiliaryToolCmBx_SelectionChanged(sender As Object, e As SelectionChangedEventArgs) Handles AuxiliaryToolCmBx.SelectionChanged @@ -589,6 +600,22 @@ Public Class AlarmsPageUC End If End Sub + Private Sub CfrLenTxBx_Click(sender As Object, e As RoutedEventArgs) Handles CfrLenTxBx.EgtClosed + ' Recupero il valore + Dim dVal As Double = 0 + StringToLen(CfrLenTxBx.Text, dVal) + ' Lo imposto + m_CurrentMachine.dFsevLength = dVal + End Sub + + Private Sub CfrPercTxBx_Click(sender As Object, e As RoutedEventArgs) Handles CfrPercTxBx.EgtClosed + ' Recupero il valore + Dim dVal As Double = 0 + StringToDouble(CfrPercTxBx.Text, dVal) + ' Lo imposto + m_CurrentMachine.dFsevPerc = dVal + 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") diff --git a/ConstMachIni.vb b/ConstMachIni.vb index 9e81487..b472dc7 100644 --- a/ConstMachIni.vb +++ b/ConstMachIni.vb @@ -116,8 +116,14 @@ Public Const K_MACH_WASHING As String = "Washing" Public Const K_MACH_ENABLERESTART As String = "EnableRestart" Public Const K_MACH_ENABLEPAUSE As String = "EnablePause" + Public Const K_MACH_CUTFSEVENABLE As String = "CutFsevEnable" + Public Const K_MACH_CUTFSEVLEN As String = "CutFsevLen" + Public Const K_MACH_CUTFSEVPERC As String = "CutFsevPerc" ' DrillMillC90 ' CutLongDxSx + ' AngRotMultiCut + ' MinDistHeadsMultiCut + ' MinSawRbHeight Public Const S_MACH_RAWMOVE As String = "RawMove" Public Const K_MACH_RM_ROTATE As String = "Rotate" diff --git a/CurrentMachine.vb b/CurrentMachine.vb index d50d9b0..ce340af 100644 --- a/CurrentMachine.vb +++ b/CurrentMachine.vb @@ -105,6 +105,11 @@ Public Class CurrentMachine ' Flag home finale per tagli diretti Private m_bDirectCutsFinalHome As Boolean = True + ' Variazione iniziale/finale della feed dei tagli + Private m_bFsevEnable As Boolean = False + Private m_dFsevLength As Double = 0 + Private m_dFsevPerc As Double = 0 + ' Numero portautensili presenti Private m_ToolChangerNbr As Integer = 0 @@ -581,6 +586,34 @@ Public Class CurrentMachine End Set End Property + Friend ReadOnly Property bFsevEnable As Boolean + Get + Return m_bFsevEnable + End Get + End Property + + Friend Property dFsevLength As Double + Get + Return m_dFsevLength + End Get + Set(value As Double) + If WritePrivateProfileString(S_NEST, K_MACH_CUTFSEVLEN, DoubleToString(value, 3), sMachIniFile) Then + m_dFsevLength = value + End If + End Set + End Property + + Friend Property dFsevPerc As Double + Get + Return m_dFsevPerc + End Get + Set(value As Double) + If WritePrivateProfileString(S_NEST, K_MACH_CUTFSEVPERC, DoubleToString(value, 3), sMachIniFile) Then + m_dFsevPerc = value + End If + End Set + End Property + Friend ReadOnly Property ToolChangerNbr As Integer Get Return m_ToolChangerNbr @@ -899,6 +932,11 @@ Public Class CurrentMachine ' Leggo flag per posizione home alla fine dei tagli diretti m_bDirectCutsFinalHome = (GetPrivateProfileInt(S_MACH_DIRECTCUTS, K_FINALHOME, 1, sMachIniFile) <> 0) + ' Leggo dati per feed ridotta all'inizio/fine dei tagli + m_bFsevEnable = (GetPrivateProfileInt(S_NEST, K_MACH_CUTFSEVENABLE, 1, sMachIniFile) <> 0) + m_dFsevLength = GetPrivateProfileDouble(S_NEST, K_MACH_CUTFSEVLEN, 0, sMachIniFile) + m_dFsevPerc = GetPrivateProfileDouble(S_NEST, K_MACH_CUTFSEVPERC, 0, sMachIniFile) + ' Creo materiale di default e lo aggiungo alla lista ' m_Materials.Add(New Material(0, "Generico")) ' Leggo la lista dei materiali diff --git a/MachiningDbPageUC.xaml.vb b/MachiningDbPageUC.xaml.vb index a96ab4b..1ce16f5 100644 --- a/MachiningDbPageUC.xaml.vb +++ b/MachiningDbPageUC.xaml.vb @@ -463,7 +463,7 @@ Public Class MachiningDbPageUC EgtMdbSetCurrMachiningParam(MCH_MP.LEADINTYPE, LeadInTypeCmBx.SelectedIndex) EgtMdbSetCurrMachiningParam(MCH_MP.EXTLINKTYPE, ExtLinkTypeCmBx.SelectedIndex) EgtMdbSetCurrMachiningParam(MCH_MP.LEADOUTTYPE, LeadOutTypeCmBx.SelectedIndex) - EgtMdbSetCurrMachiningParam(MCH_MP.CURVEUSE, CurveUseCmBx.SelectedIndex) + EgtMdbSetCurrMachiningParam(MCH_MP.CURVEUSE, If(CurveUseCmBx.IsVisible, CurveUseCmBx.SelectedIndex, MCH_SAW_CU.KEEP)) StringToLen(ApproxTxBx.Text, dTemp) EgtMdbSetCurrMachiningParam(MCH_MP.APPROX, dTemp) StringToLen(ForwardStepSideAngTxBx.Text, dTemp) diff --git a/My Project/AssemblyInfo.vb b/My Project/AssemblyInfo.vb index 5afea57..aaa65a7 100644 --- a/My Project/AssemblyInfo.vb +++ b/My Project/AssemblyInfo.vb @@ -62,5 +62,5 @@ Imports System.Windows ' by using the '*' as shown below: ' - - + +