Compare commits

...

7 Commits

Author SHA1 Message Date
Nicola Pievani 60570863a3 Merge branch 'master' into Features/New_Grid_In_DirectCut 2025-07-01 16:06:58 +02:00
Nicola Pievani 9c8971f52b Merge remote-tracking branch 'origin/Features/New_Manage_Side_Angle' 2025-07-01 15:44:54 +02:00
Nicola Pievani 8d020eeea8 Aggiunto commento per spiegare come gestione scrittura CNCMode per flexium prima versione 2025-06-30 18:15:42 +02:00
Demetrio Cassarino 340276e11c -nuova gestione ottimizzata sideang 2025-06-27 15:50:42 +02:00
Demetrio Cassarino 87a24adaa3 -aggiunto chechi in sideangle da sistemare 2025-06-26 14:49:39 +02:00
Nicola Pievani 02a9f450fb Merge commit '7caca4f961ee6d7772816231a2370c4a160f97e8' 2025-06-20 10:58:08 +02:00
Nicola Pievani a74e6a0f8b Gestione tagli a griglia custom, da migliorare interfaccia 2025-05-08 12:21:06 +02:00
13 changed files with 902 additions and 259 deletions
+135 -80
View File
@@ -7,32 +7,32 @@
mc:Ignorable="d"
d:DesignHeight="597.3" d:DesignWidth="256">
<!--<Border CornerRadius="{StaticResource Page_CornerRadius}" Background="{StaticResource OmagCut_LightGray}">-->
<Border Style="{DynamicResource OmagCut_DirectCutPageBorder}">
<!--<Border CornerRadius="{StaticResource Page_CornerRadius}" Background="{StaticResource OmagCut_LightGray}">-->
<Border Style="{DynamicResource OmagCut_DirectCutPageBorder}">
<!-- Definizione della Grid MultipleCut -->
<Grid Name="SingleCutGrid" >
<Grid.ColumnDefinitions>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="1*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="2*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="1*"/>
</Grid.RowDefinitions>
<Grid Grid.Row="0" Grid.ColumnSpan="2">
<!-- Definizione della Grid MultipleCut -->
<Grid Name="SingleCutGrid" >
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="1*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="2*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="1*"/>
</Grid.RowDefinitions>
<Grid Grid.Row="0" Grid.ColumnSpan="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<ToggleButton Name="Point1Btn" Grid.Column="0"
Style="{DynamicResource OmagCut_YellowIconToggleButton}">
@@ -45,95 +45,150 @@
</ToggleButton>
</Grid>
<ComboBox Name="PointModeCmBx" Grid.Row="1" Grid.ColumnSpan="2" Style="{StaticResource OmagCut_ComboBox}"
<ComboBox Name="PointModeCmBx" Grid.Row="1" Grid.ColumnSpan="2" Style="{StaticResource OmagCut_ComboBox}"
Margin="6,0,6,0">
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding}" Style="{StaticResource OmagCut_LowerCaseCharacterTextBlock}"/>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding}" Style="{StaticResource OmagCut_LowerCaseCharacterTextBlock}"/>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
<TextBlock Name="DepthTxBl" Grid.Column="0" Grid.Row="2"
<TextBlock Name="DepthTxBl" Grid.Column="0" Grid.Row="2"
Style="{StaticResource OmagCut_CurrProjSummeryTextBlock}"/>
<EgtWPFLib:EgtTextBox Name="DepthTxBx" Grid.Column="1" Grid.Row="2" Margin="0,0,6,0"
<EgtWPFLib:EgtTextBox Name="DepthTxBx" Grid.Column="1" Grid.Row="2" Margin="0,0,6,0"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
<TextBlock Name="DirectionTxBl" Grid.Column="0" Grid.Row="3"
<TextBlock Name="DirectionTxBl" Grid.Column="0" Grid.Row="3"
Style="{StaticResource OmagCut_CurrProjSummeryTextBlock}"/>
<EgtWPFLib:EgtTextBox Name="DirectionTxBx" Grid.Column="1" Grid.Row="3" Margin="0,0,6,0" IsLength="False"
<EgtWPFLib:EgtTextBox Name="DirectionTxBx" Grid.Column="1" Grid.Row="3" Margin="0,0,6,0" IsLength="False"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
<TextBlock Name="SideAngleTxBl" Grid.Column="0" Grid.Row="4"
<TextBlock Name="SideAngleTxBl" Grid.Column="0" Grid.Row="4"
Style="{StaticResource OmagCut_CurrProjSummeryTextBlock}"/>
<EgtWPFLib:EgtTextBox Name="SideAngleTxBx" Grid.Column="1" Grid.Row="4" Margin="0,0,6,0" IsLength="False"
<EgtWPFLib:EgtTextBox Name="SideAngleTxBx" Grid.Column="1" Grid.Row="4" Margin="0,0,6,0" IsLength="False"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
<Grid Grid.Row="5" Grid.ColumnSpan="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1.5*"/>
<ColumnDefinition Width="2"/>
<ColumnDefinition Width="1.5*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
</Grid.RowDefinitions>
<!-- STANDARD -->
<Grid Name ="StandardGrid" Grid.Row="5" Grid.ColumnSpan="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1.5*"/>
<ColumnDefinition Width="2"/>
<ColumnDefinition Width="1.5*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.5*"/>
</Grid.RowDefinitions>
<Border Grid.Column="1" Grid.Row="0" Grid.RowSpan="4" Background="Black" />
<Border Grid.Column="1" Grid.Row="0" Grid.RowSpan="4" Background="Black" />
<TextBlock Name="NumPzXTxBl" Grid.Column="0" Grid.Row="0"
<TextBlock Name="NumPzXTxBl" Grid.Column="0" Grid.Row="0"
Style="{StaticResource OmagCut_CurrProjSummeryTextBlock}"/>
<TextBlock Name="DimPzXTxBl" Grid.Column="2" Grid.Row="0"
<TextBlock Name="DimPzXTxBl" Grid.Column="2" Grid.Row="0"
Style="{StaticResource OmagCut_CurrProjSummeryTextBlock}"/>
<EgtWPFLib:EgtTextBox Name="NumPzXTxBx" Grid.Column="0" Grid.Row="1" Width="75" IsLength="False"
<EgtWPFLib:EgtTextBox Name="NumPzXTxBx" Grid.Column="0" Grid.Row="1" Width="75" IsLength="False"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
<EgtWPFLib:EgtTextBox Name="DimPzXTxBx" Grid.Column="2" Grid.Row="1" Width="75"
<EgtWPFLib:EgtTextBox Name="DimPzXTxBx" Grid.Column="2" Grid.Row="1" Width="75"
Style="{StaticResource OmagCut_CalculatorTextBox}" />
<TextBlock Name="NumPzYTxBl" Grid.Column="0" Grid.Row="2"
<TextBlock Name="NumPzYTxBl" Grid.Column="0" Grid.Row="2"
Style="{StaticResource OmagCut_CurrProjSummeryTextBlock}"/>
<TextBlock Name="DimPzYTxBl" Grid.Column="2" Grid.Row="2"
<TextBlock Name="DimPzYTxBl" Grid.Column="2" Grid.Row="2"
Style="{StaticResource OmagCut_CurrProjSummeryTextBlock}"/>
<EgtWPFLib:EgtTextBox Name="NumPzYTxBx" Grid.Column="0" Grid.Row="3" Width="75" IsLength="False"
<EgtWPFLib:EgtTextBox Name="NumPzYTxBx" Grid.Column="0" Grid.Row="3" Width="75" IsLength="False"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
<EgtWPFLib:EgtTextBox Name="DimPzYTxBx" Grid.Column="2" Grid.Row="3" Width="75"
<EgtWPFLib:EgtTextBox Name="DimPzYTxBx" Grid.Column="2" Grid.Row="3" Width="75"
Style="{StaticResource OmagCut_CalculatorTextBox}" />
</Grid>
</Grid>
<TextBlock Name="SideTxBl" Grid.Row="6" Grid.ColumnSpan="2"
<!-- SPECIALE -->
<Grid Name ="CustomGrid" Grid.Row="5" Grid.ColumnSpan="2">
<Grid.RowDefinitions>
<RowDefinition Height="1*"/>
<RowDefinition Height="2.5*"/>
</Grid.RowDefinitions>
<StackPanel Orientation="Horizontal" Grid.Row="0">
<Button Name="AddCutBtn" Content="+"
Style="{DynamicResource OmagCut_YellowTextButton}"
Width="35" Height="35" HorizontalAlignment="Left"/>
<Button Name="RemoveCutBtn" Content="-"
Style="{DynamicResource OmagCut_YellowTextButton}"
Width="35" Height="35" HorizontalAlignment="Left" Margin="2,0,0,0"/>
<ToggleButton Name="Cut_XTgBtn" Content="X"
Style="{DynamicResource OmagCut_YellowToggleButton}"
Width="35" Height="35" HorizontalAlignment="Left" Margin="2,0,0,0"/>
<ToggleButton Name="Cut_YTgBtn" Content="Y"
Style="{DynamicResource OmagCut_YellowToggleButton}"
Width="35" Height="35" HorizontalAlignment="Left" Margin="2,0,0,0"/>
<Button Name="UpdateBtn" Content="Update"
Style="{DynamicResource OmagCut_YellowTextButton}"
Width="85" Height="35" HorizontalAlignment="Left" Margin="2,0,0,0"/>
</StackPanel>
<ScrollViewer Background="Transparent" Grid.Row="1"
Margin="0,5,0,0"
VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Hidden">
<ListBox Name="CustomGridLstBx" ScrollViewer.CanContentScroll="False">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel Orientation="Vertical"/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<Grid Width="210">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="5*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="5*"/>
</Grid.ColumnDefinitions>
<EgtWPFLib:EgtTextBox Text="{Binding sNumber}" Grid.Column="0"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
<EgtWPFLib:EgtTextBox Text="{Binding sInteraxis}" Grid.Column="2"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
</Grid>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ListBox>
</ScrollViewer>
</Grid>
<TextBlock Name="SideTxBl" Grid.Row="6" Grid.ColumnSpan="2"
Style="{StaticResource OmagCut_CurrProjSummeryTextBlock}"/>
<CheckBox Name="SideChBx" Grid.Row="6" Grid.ColumnSpan="2" Style="{StaticResource OmagCut_CheckBox_Single}"
<CheckBox Name="SideChBx" Grid.Row="6" Grid.ColumnSpan="2" Style="{StaticResource OmagCut_CheckBox_Single}"
HorizontalAlignment="Right" Margin="0,0,6,0"/>
<Grid Grid.Row="7" Grid.ColumnSpan="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="0.5*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="0.5*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<TextBlock Name="XcoordTxBl" Grid.Column="0" Text="X"
<Grid Grid.Row="7" Grid.ColumnSpan="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="0.5*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="0.5*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<TextBlock Name="XcoordTxBl" Grid.Column="0" Text="X"
Style="{StaticResource OmagCut_CurrProjSummeryTextBlock}" HorizontalAlignment="Center"/>
<EgtWPFLib:EgtTextBox Name="XcoordTxBx" Grid.Column="1" Margin="0,0,6,0"
<EgtWPFLib:EgtTextBox Name="XcoordTxBx" Grid.Column="1" Margin="0,0,6,0"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
<TextBlock Name="YcoordTxBl" Grid.Column="2" Text="Y"
<TextBlock Name="YcoordTxBl" Grid.Column="2" Text="Y"
Style="{StaticResource OmagCut_CurrProjSummeryTextBlock}" HorizontalAlignment="Center"/>
<EgtWPFLib:EgtTextBox Name="YcoordTxBx" Grid.Column="3" Margin="0,0,6,0"
<EgtWPFLib:EgtTextBox Name="YcoordTxBx" Grid.Column="3" Margin="0,0,6,0"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
</Grid>
</Grid>
<Grid Grid.Row="11" Grid.ColumnSpan="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Grid Grid.Row="11" Grid.ColumnSpan="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Button Name="SimulBtn" Grid.Column="0" Style="{DynamicResource OmagCut_YellowIconButton}">
<Image Source="{DynamicResource SimulaImg}" Style="{StaticResource OmagCut_ButtonIcon}"/>
@@ -146,8 +201,8 @@
</Button>
</Grid>
</Grid>
</Grid>
</Border>
</Border>
</UserControl>
+294 -1
View File
@@ -1,5 +1,5 @@
Imports EgtUILib
Imports OmagCUT.MainWindow
Imports System.Collections.ObjectModel
Public Class GridCut
' Riferimenti a pagine
@@ -42,6 +42,11 @@ Public Class GridCut
' Gestione spessore lama
Private m_bSawTh As Boolean = False
' Gestione griglia Custom
Dim m_bCustomGrid As Boolean = False
Dim m_ListOfCut_X As New ObservableCollection(Of Cut_Axis)
Dim m_ListOfCut_Y As New ObservableCollection(Of Cut_Axis)
' Costanti
Private Const MAX_TAB_DEPTH As Double = 10.0
Private Const MIN_CUT_LEN As Double = 10.0
@@ -85,8 +90,21 @@ Public Class GridCut
m_nNumX = GetPrivateProfileInt(S_DIRECTCUTS, K_DC_GRID_NUMX, m_nNumX, m_MainWindow.GetIniFile())
m_dDimX = GetPrivateProfileDouble(S_DIRECTCUTS, K_DC_GRID_DIMX, m_dDimX, m_MainWindow.GetIniFile())
m_nNumY = GetPrivateProfileInt(S_DIRECTCUTS, K_DC_GRID_NUMY, m_nNumY, m_MainWindow.GetIniFile())
m_dDepth = GetPrivateProfileDouble(S_DIRECTCUTS, K_DC_GRID_DEPTH, m_dDepth, m_MainWindow.GetIniFile())
m_dAngO = GetPrivateProfileDouble(S_DIRECTCUTS, K_DC_GRID_ANGH, m_dAngO, m_MainWindow.GetIniFile())
m_dAngV = GetPrivateProfileDouble(S_DIRECTCUTS, K_DC_GRID_ANGV, m_dAngV, m_MainWindow.GetIniFile())
m_nNumX = GetPrivateProfileInt(S_DIRECTCUTS, K_DC_GRID_NUMX, m_nNumX, m_MainWindow.GetIniFile())
m_dDimX = GetPrivateProfileDouble(S_DIRECTCUTS, K_DC_GRID_DIMX, m_dDimX, m_MainWindow.GetIniFile())
m_nNumY = GetPrivateProfileInt(S_DIRECTCUTS, K_DC_GRID_NUMY, m_nNumY, m_MainWindow.GetIniFile())
m_dDimY = GetPrivateProfileDouble(S_DIRECTCUTS, K_DC_GRID_DIMY, m_dDimY, m_MainWindow.GetIniFile())
' Carico i dati per i tagli di griglia Custom
m_bCustomGrid = (GetPrivateProfileInt(S_DIRECTCUTS, "EnambleCustomGrid", 0, m_MainWindow.GetIniFile()) <> 0)
If m_bCustomGrid Then
LoadCustomData("GridNumDimXCustom", m_ListOfCut_X)
LoadCustomData("GridNumDimYCustom", m_ListOfCut_Y)
End If
' --- INIZIO GESTIONE SPECIALE --- per macchina sinistrorsa
m_bSawTh = (GetPrivateProfileInt(S_DIRECTCUTS, K_DC_SING_SAWTH, 0, m_MainWindow.GetIniFile()) <> 0)
' --- FINE GESTIONE SPECIALE --- per macchina sinistrorsa
@@ -96,6 +114,28 @@ Public Class GridCut
m_ptTipP1.y = GetPrivateProfileDouble(S_DIRECTCUTS, K_DC_GRID_POSY, m_ptTipP1.y, m_MainWindow.GetIniFile())
End Sub
' Lettura dei dati della griglia Custom
Private Sub LoadCustomData(sIpKeyName As String, LocalList As ObservableCollection(Of Cut_Axis))
Dim dVal As Double = 0
Dim nVal As Integer = 0
Dim sVal As String = String.Empty
GetPrivateProfileString(S_DIRECTCUTS, sIpKeyName, sVal, sVal, m_MainWindow.GetIniFile())
Dim sItems As String() = sVal.Split(";"c)
If sItems.Count > 0 Then
For Each Item As String In sItems
Dim sSubItems As String() = Item.Split(",")
If sSubItems.Count = 2 Then
If IsNumeric(sSubItems(0)) And IsNumeric(sSubItems(1)) Then
nVal = CInt(sSubItems(0))
StringToDouble(sSubItems(1), dVal)
LocalList.Add(New Cut_Axis(nVal, dVal))
End If
End If
Next
End If
End Sub
Private Sub GridCut_Loaded(sender As Object, e As RoutedEventArgs) Handles Me.Loaded
' Attivo la pagina
m_CurrProjPage = m_MainWindow.m_CurrentProjectPageUC
@@ -133,6 +173,7 @@ Public Class GridCut
m_bPointP2Ok = False
' Inizializzo primo punto acquisito dal disegno
m_ptPrev = m_ptTipP1 + (m_ptTabOri - Point3d.ORIG())
m_ptPrev = m_ptTipP1 + (m_ptTabOri - Point3d.ORIG())
m_ptPrev.z = m_ptRawMax.z
' Disegno crocetta che indica il punto acquisito
CreateCross(m_nTempLay, m_ptPrev)
@@ -144,10 +185,15 @@ Public Class GridCut
DepthTxBx.Text = LenToString(m_dDepth, 1)
DirectionTxBx.Text = DoubleToString(m_dAngO - m_MainWindow.m_CurrentMachine.dDeltaC, 2)
SideAngleTxBx.Text = DoubleToString(m_dAngV, 2)
DepthTxBx.Text = LenToString(m_dDepth, 1)
DirectionTxBx.Text = DoubleToString(m_dAngO - m_MainWindow.m_CurrentMachine.dDeltaC, 2)
SideAngleTxBx.Text = DoubleToString(m_dAngV, 2)
NumPzXTxBx.Text = m_nNumX.ToString()
DimPzXTxBx.Text = LenToString(m_dDimX, 1)
DimPzXTxBx.Text = LenToString(m_dDimX, 1)
NumPzYTxBx.Text = m_nNumY.ToString()
DimPzYTxBx.Text = LenToString(m_dDimY, 1)
DimPzYTxBx.Text = LenToString(m_dDimY, 1)
SideChBx.IsChecked = m_bHeadSide
' --- INIZIO GESTIONE SPECIALE --- per macchina sinistrorsa
@@ -163,6 +209,17 @@ Public Class GridCut
Point1Btn.IsChecked = False
' Aggiorno visualizzazione
EgtDraw()
If m_bCustomGrid Then
StandardGrid.Visibility = Visibility.Hidden
CustomGrid.Visibility = Visibility.Visible
Cut_XTgBtn.IsChecked = True
CustomGridLstBx.ItemsSource = m_ListOfCut_X
Else
StandardGrid.Visibility = Visibility.Visible
CustomGrid.Visibility = Visibility.Hidden
End If
End Sub
@@ -178,6 +235,22 @@ Public Class GridCut
WritePrivateProfileString(S_DIRECTCUTS, K_DC_GRID_HEADSIDE, If(m_bHeadSide, "1", "0"), m_MainWindow.GetIniFile())
WritePrivateProfileString(S_DIRECTCUTS, K_DC_GRID_POSX, DoubleToString(m_ptTipP1.x, 2), m_MainWindow.GetIniFile())
WritePrivateProfileString(S_DIRECTCUTS, K_DC_GRID_POSY, DoubleToString(m_ptTipP1.y, 2), m_MainWindow.GetIniFile())
If m_bCustomGrid Then
Dim sGridNumDimXCustom As String = ""
For Index_X As Integer = 0 To m_ListOfCut_X.Count - 1
sGridNumDimXCustom &= m_ListOfCut_X(Index_X).sNumber & "," & DoubleToString(m_ListOfCut_X(Index_X).dInteraxis, 2) & ";"
Next
If sGridNumDimXCustom <> "" Then sGridNumDimXCustom = sGridNumDimXCustom.Remove(sGridNumDimXCustom.Count - 1)
WritePrivateProfileString(S_DIRECTCUTS, "GridNumDimXCustom", sGridNumDimXCustom, m_MainWindow.GetIniFile())
Dim sGridNumDimYCustom As String = ""
For Index_Y As Integer = 0 To m_ListOfCut_Y.Count - 1
sGridNumDimYCustom &= m_ListOfCut_Y(Index_Y).sNumber & "," & DoubleToString(m_ListOfCut_Y(Index_Y).dInteraxis, 2) & ";"
Next
If sGridNumDimYCustom <> "" Then sGridNumDimYCustom = sGridNumDimYCustom.Remove(sGridNumDimYCustom.Count - 1)
WritePrivateProfileString(S_DIRECTCUTS, "GridNumDimYCustom", sGridNumDimYCustom, m_MainWindow.GetIniFile())
End If
' Se non vado in simulazione
If Not m_bSimul Then
' Dichiaro sottopagina da non riattivare
@@ -522,6 +595,57 @@ Public Class GridCut
EgtDraw()
End Sub
#Region "CUSTOM LIST GRID"
Private Sub CutX_Selected() Handles Cut_XTgBtn.Click
If Cut_XTgBtn.IsChecked Then
Cut_YTgBtn.IsChecked = False
CustomGridLstBx.ItemsSource = m_ListOfCut_X
CustomGridLstBx.UpdateLayout()
End If
End Sub
Private Sub CutY_Selected() Handles Cut_YTgBtn.Click
If Cut_YTgBtn.IsChecked Then
Cut_XTgBtn.IsChecked = False
CustomGridLstBx.ItemsSource = m_ListOfCut_Y
CustomGridLstBx.UpdateLayout()
End If
End Sub
Private Sub AddCut_Click(sender As Object, e As EventArgs) Handles AddCutBtn.Click
If Cut_XTgBtn.IsChecked Then
m_ListOfCut_X.Add(New Cut_Axis(0, 0))
ElseIf Cut_YTgBtn.IsChecked Then
m_ListOfCut_Y.Add(New Cut_Axis(0, 0))
End If
CustomGridLstBx.UpdateLayout()
End Sub
Private Sub RemoveCut_Click(sender As Object, e As EventArgs) Handles RemoveCutBtn.Click
Dim CurrIndexListSelected As Integer = -1
CurrIndexListSelected = CustomGridLstBx.SelectedIndex
If Cut_XTgBtn.IsChecked Then
If CurrIndexListSelected < 0 Or CurrIndexListSelected > m_ListOfCut_X.Count - 1 Then
CurrIndexListSelected = m_ListOfCut_X.Count - 1
End If
m_ListOfCut_X.RemoveAt(CurrIndexListSelected)
ElseIf Cut_YTgBtn.IsChecked Then
If CurrIndexListSelected < 0 Or CurrIndexListSelected > m_ListOfCut_Y.Count - 1 Then
CurrIndexListSelected = m_ListOfCut_Y.Count - 1
End If
m_ListOfCut_Y.RemoveAt(CurrIndexListSelected)
End If
CustomGridLstBx.UpdateLayout()
End Sub
Public Sub Update_Click() Handles UpdateBtn.Click
CreateGridCut()
EgtDraw()
End Sub
#End Region ' Custom Grid
Private Sub SimulBtn_Click(sender As Object, e As RoutedEventArgs) Handles SimulBtn.Click
' Verifico ci sia un taglio valido
If Not m_bCutOk Then Return
@@ -631,6 +755,13 @@ Public Class GridCut
End Function
Private Function MultiplyCut(nLayerId As Integer) As Boolean
If m_bCustomGrid Then
Return MultiplyCut_1(nLayerId)
End If
Return MultiplyCut_0(nLayerId)
End Function
Private Function MultiplyCut_0(nLayerId As Integer) As Boolean
' Recupero lo spessore del taglio della lama o del waterjet correntemente attiva
Dim nType As Integer = 0
EgtTdbGetCurrToolParam(MCH_TP.TYPE, nType)
@@ -714,6 +845,116 @@ Public Class GridCut
Return True
End Function
Private Function MultiplyCut_1(nLayerId As Integer) As Boolean
' Recupero lo spessore del taglio della lama o del waterjet correntemente attiva
Dim nType As Integer = 0
EgtTdbGetCurrToolParam(MCH_TP.TYPE, nType)
Dim dThick As Double = 0
EgtTdbGetCurrToolParam(If(nType = MCH_TY.SAW_STD, MCH_TP.THICK, MCH_TP.DIAM), dThick)
' Ricalcolo lo spessore in base all'inclinazione
dThick = dThick / Math.Cos(m_dAngV * Math.PI / 180)
' Imposto angolo di rotazione a seconda del lato dei tagli paralleli
Dim dRotAngOX As Double = If(SideChBx.IsChecked(), -90, 90)
' Recupero dati da interfaccia
Dim dDimPzX As Double = m_ListOfCut_X(0).dInteraxis
Dim nNumPzX As Integer = m_ListOfCut_X(0).nNumber
Dim dDimPzY As Double = m_ListOfCut_Y(0).dInteraxis
Dim nNumPzY As Integer = m_ListOfCut_Y(0).nNumber
Dim TotLenX As Double = 0
For Ind_X As Integer = 0 To m_ListOfCut_X.Count - 1
TotLenX = TotLenX + (m_ListOfCut_X(Ind_X).dInteraxis + dThick) * m_ListOfCut_X(Ind_X).nNumber
Next
Dim TotLenY As Double = 0
For Ind_Y As Integer = 0 To m_ListOfCut_Y.Count - 1
TotLenY = TotLenY + (m_ListOfCut_Y(Ind_Y).dInteraxis + dThick) * m_ListOfCut_Y(Ind_Y).nNumber
Next
' Definisco vettore di spostamento
Dim vtDelta As Vector3d
' Calcolo primo taglio parallelo
Dim ptStart As Point3d = m_ptTipP1
ptStart.z = 0
If dDimPzY <> 0 And nNumPzY > 0 And dDimPzX <> 0 And nNumPzX > 0 Then
' -------------- TAGLI PARALLELI ASSE Y --------------
Dim dLenX As Double = dThick + TotLenX
Dim nCutParaId = EgtCreateLinePDL(nLayerId, ptStart, m_dAngO, dLenX + 0.1)
' --- INIZIO GESTIONE SPECIALE --- per macchina sinistrorsa
' Recupero spessore lama corrente
Dim sSawing As String = m_MainWindow.m_CurrentMachine.sCurrSawing
If m_bSawTh And Not String.IsNullOrEmpty(sSawing) Then
EgtOffsetCurve(nCutParaId, -dThick, OFF_TYPE.EXTEND)
End If
' --- FINE GESTIONE SPECIALE --- per macchina sinistrorsa
' Imposto affondamento e angolo di fianco sul taglio
EgtSetInfo(nCutParaId, INFO_DEPTH, m_dDepth)
EgtSetInfo(nCutParaId, INFO_SIDE_ANGLE, m_dAngV)
For IndexList_Y As Integer = 0 To m_ListOfCut_Y.Count - 1
Dim nCut2Id As Integer = GDB_ID.NULL
dDimPzY = m_ListOfCut_Y(IndexList_Y).dInteraxis
nNumPzY = m_ListOfCut_Y(IndexList_Y).nNumber
' Calcolo vettore di spostamento
vtDelta = Vector3d.FromPolar((dDimPzY + dThick), m_dAngO)
' Ruoto il vettore di traslazione
vtDelta.Rotate(Vector3d.Z_AX, dRotAngOX)
For Index As Integer = 1 To nNumPzY
Dim vtPerpMove As Vector3d = Index * vtDelta
' Creo copie
nCut2Id = EgtCopyGlob(nCutParaId, nLayerId)
EgtMove(nCut2Id, vtPerpMove, GDB_RT.GLOB)
Next
nCutParaId = nCut2Id
Next
' -------------- TAGLI PARALLELI ASSE X --------------
' Calcolo primo taglio perpendicolare
Dim dLenY As Double = dThick + TotLenY
' Arretro il punto di partenza di uno spessore lama
Dim vtDeltaPos As Vector3d = Vector3d.FromPolar(dThick + 0.1, m_dAngO - 90)
Dim nCutPerpId = EgtCreateLinePDL(nLayerId, ptStart + vtDeltaPos, m_dAngO + 90, dLenY + 0.2)
' --- INIZIO GESTIONE SPECIALE --- per macchina sinistrorsa
If m_bSawTh And Not String.IsNullOrEmpty(sSawing) Then
EgtOffsetCurve(nCutPerpId, -dThick, OFF_TYPE.EXTEND)
End If
' --- FINE GESTIONE SPECIALE --- per macchina sinistrorsa
' Specchio se è attivo il flag che cambia lato di disegno
If SideChBx.IsChecked() Then
Dim vtRot As Vector3d = Vector3d.FromPolar(1, m_dAngO + 90)
EgtMirror(nCutPerpId, ptStart + Vector3d.FromPolar(dThick / 2, m_dAngO - 90), vtRot, GDB_RT.GLOB)
EgtInvertCurve(nCutPerpId)
End If
' Imposto affondamento e angolo di fianco sul taglio
EgtSetInfo(nCutPerpId, INFO_DEPTH, m_dDepth)
EgtSetInfo(nCutPerpId, INFO_SIDE_ANGLE, m_dAngV)
For IndexList_X As Integer = 0 To m_ListOfCut_X.Count - 1
Dim nCut3Id As Integer = GDB_ID.NULL
dDimPzX = m_ListOfCut_X(IndexList_X).dInteraxis
nNumPzX = m_ListOfCut_X(IndexList_X).nNumber
' Calcolo secondo vettore di spostamento
vtDelta = Vector3d.FromPolar((dDimPzX + dThick), m_dAngO)
For Index As Integer = 1 To nNumPzX
Dim vtPerpMove As Vector3d = vtDelta * Index
' Creo copie
nCut3Id = EgtCopyGlob(nCutPerpId, nLayerId)
EgtMove(nCut3Id, vtPerpMove, GDB_RT.GLOB)
Next
nCutPerpId = nCut3Id
Next
End If
Return True
End Function
Private Function CreateCross(nLayerId As Integer, ptP As Point3d) As Boolean
ptP += New Vector3d(0, 0, 0.15)
' Aggiungo crocette
@@ -773,4 +1014,56 @@ Public Class GridCut
Return True
End Function
End Class
Public Class Cut_Axis
Private m_MainWindow As MainWindow = DirectCast(Application.Current.MainWindow, MainWindow)
' Numero di tagli con questo interasse
Private m_nNumber As Integer = 0
Public Property sNumber As String
Get
Return m_nNumber.ToString
End Get
Set(value As String)
If IsNumeric(value) Then
m_nNumber = CInt(value)
End If
End Set
End Property
Public ReadOnly Property nNumber As Double
Get
Return m_nNumber
End Get
End Property
' Distanza dal taglio precedente
Private m_dInteraxis As Double = 0.0
Public Property sInteraxis As String
Get
Return LenToString(m_dInteraxis, 2)
End Get
Set(value As String)
Dim PrevValue As Double = m_dInteraxis
If Not StringToLen(value, m_dInteraxis) Then m_dInteraxis = PrevValue
End Set
End Property
Public ReadOnly Property dInteraxis As Double
Get
Return m_dInteraxis
End Get
End Property
Public ReadOnly Property UpdateSub As Boolean
Get
m_MainWindow.m_DirectCutPageUC.m_ControlsDirectCutUC.m_GridCut.Update_Click()
Return True
End Get
End Property
Sub New(nNumb As Integer, dInter As Double)
m_nNumber = nNumb
m_dInteraxis = dInter
End Sub
End Class
+10 -10
View File
@@ -29,43 +29,43 @@
</Grid.RowDefinitions>
<TextBlock Name="Label1" Grid.Row="0"
Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<EgtWPFLib:EgtTextBox Name="TextBox1" Grid.Column="1" Grid.Row="0" Width="90"
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<TextBlock Name="Label2" Grid.Row="1"
Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<EgtWPFLib:EgtTextBox Name="TextBox2" Grid.Column="1" Grid.Row="1" Width="90"
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<TextBlock Name="Label3" Grid.Row="2"
Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<EgtWPFLib:EgtTextBox Name="TextBox3" Grid.Column="1" Grid.Row="2" Width="90"
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<TextBlock Name="Label4" Grid.Row="3"
Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<EgtWPFLib:EgtTextBox Name="TextBox4" Grid.Column="1" Grid.Row="3" Width="90"
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<TextBlock Name="Label5" Grid.Row="4"
Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<EgtWPFLib:EgtTextBox Name="TextBox5" Grid.Column="1" Grid.Row="4" Width="90"
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<TextBlock Name="Label6" Grid.Row="5"
Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<EgtWPFLib:EgtTextBox Name="TextBox6" Grid.Column="1" Grid.Row="5" Width="90"
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<TextBlock Name="Label7" Grid.Row="6"
Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<EgtWPFLib:EgtTextBox Name="TextBox7" Grid.Column="1" Grid.Row="6" Width="90"
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<TextBlock Name="Label8" Grid.Row="7"
Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<EgtWPFLib:EgtTextBox Name="TextBox8" Grid.Column="1" Grid.Row="7" Width="90"
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<TextBlock Name="Label9" Grid.Row="8"
Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<EgtWPFLib:EgtTextBox Name="TextBox9" Grid.Column="1" Grid.Row="8" Width="90"
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<TextBlock Name="Label10" Grid.Row="9"
Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<EgtWPFLib:EgtTextBox Name="TextBox10" Grid.Column="1" Grid.Row="9" Width="90"
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
+2 -2
View File
@@ -95,7 +95,7 @@
<Grid Name="TopGrd">
<TextBlock Name="TopTxBl"
Style="{StaticResource OmagCut_ToolsDBTextBlock}" />
Style="{DynamicResource OmagCut_ToolsDBTextBlock}" />
<CheckBox Name="TopChBx" Style="{StaticResource OmagCut_CheckBox}"
HorizontalAlignment="Right" Margin="6,0,6,0"/>
@@ -122,7 +122,7 @@
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<TextBlock Name="PartNumTxBl" Grid.Column="0" Style="{StaticResource OmagCut_CurrProjSummeryTextBlock}"
<TextBlock Name="PartNumTxBl" Grid.Column="0" Style="{DynamicResource OmagCut_CurrProjSummeryTextBlock}"
TextAlignment="Right"/>
<EgtWPFLib:EgtTextBox Name="PartNumTxBx" Grid.Column="1" Width="60" IsLength="False"
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
+83
View File
@@ -0,0 +1,83 @@
<Window x:Class="SideAngleOneForAllWindow"
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}"
Title="ChooseTool" Height="255.9" Width="426.6" WindowStyle="None"
ResizeMode="NoResize" ShowInTaskbar="False" AllowsTransparency="True"
Background="Transparent">
<Border Style="{DynamicResource OmagCut_Border}">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="0.5*"/>
<ColumnDefinition Width="4*"/>
<ColumnDefinition Width="0.5*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="0.5*"/>
<RowDefinition Height="0.7*"/>
<RowDefinition Height="0.3*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="0.5*"/>
</Grid.RowDefinitions>
<TextBlock Name="TitleTxBl"
Grid.ColumnSpan="3"
Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<Grid Grid.Row="1"
Grid.Column="1">
<Grid.RowDefinitions>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<TextBlock Text="A °"
Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"
FontSize="{DynamicResource FontSize_LowerCaseCharacter}"/>
<TextBlock Grid.Column="1"
Text="T"
Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"
FontSize="{DynamicResource FontSize_LowerCaseCharacter}"/>
<ComboBox Grid.Row="1"
Name="SideAngleOneForAllCBx"
Margin="10,0,10,0">
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding}" FontSize="20"/>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
<ComboBox Grid.Row="1"
Grid.Column="1"
Name="SideHeelOneForAllCBx"
Margin="10,0,10,0">
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding}" FontSize="20"/>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
</Grid>
<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}"
IsCancel="True">
<Image Source="{DynamicResource XImg}" Style="{StaticResource OmagCut_ButtonIcon}"/>
</Button>
</Grid>
</Grid>
</Border>
</Window>
@@ -0,0 +1,20 @@
Public Class SideAngleOneForAllWindow
Sub New()
' La chiamata è richiesta dalla finestra di progettazione.
InitializeComponent()
' Aggiungere le eventuali istruzioni di inizializzazione dopo la chiamata a InitializeComponent().
TitleTxBl.Text = EgtUILib.EgtMsg(91253)
End Sub
Private Sub OkBtn_Click(sender As Object, e As RoutedEventArgs) Handles OkBtn.Click
DialogResult = True
End Sub
Private Sub ExitBtn_Click(sender As Object, e As RoutedEventArgs) Handles ExitBtn.Click
DialogResult = False
End Sub
End Class
+135 -126
View File
@@ -1,17 +1,17 @@
<UserControl x:Class="SideAngleUC"
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="636.9" d:DesignWidth="255.9">
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="636.9" d:DesignWidth="255.9">
<!-- Definizione della Grid Laterale -->
<Grid Name="VariablesCompoGrid" Grid.RowSpan="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1.2*"/>
<ColumnDefinition Width="0.3*"/>
<ColumnDefinition Width="0.3*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
@@ -34,182 +34,191 @@
<RowDefinition Height="0.5*"/>-->
</Grid.RowDefinitions>
<Grid>
<Grid Name="SideAngleGrid" Grid.ColumnSpan="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="0.4*"/>
<ColumnDefinition Width="0.5*"/>
<ColumnDefinition Width="0.5*"/>
<ColumnDefinition Width="0.4*"/>
<!--<ColumnDefinition Width="0.4*"/>-->
<ColumnDefinition Width="0.8*"/>
<ColumnDefinition Width="0.8*"/>
<ColumnDefinition Width="0.8*"/>
</Grid.ColumnDefinitions>
<Button Name="PrevBtn" Grid.Column="1" Margin="4,0,4,0" Padding="0" Content="&lt;" Style="{StaticResource OmagCut_YellowTextButton}"/>
<Button Name="NextBtn" Grid.Column="2" Margin="4,0,4,0" Padding="0" Content="&gt;" Style="{StaticResource OmagCut_YellowTextButton}"/>
<Button Name="PrevBtn" Grid.Column="0" Margin="2,0,2,0" Padding="0" Content="&lt;" Style="{StaticResource OmagCut_YellowTextButton}"/>
<Button Name="NextBtn" Grid.Column="1" Margin="2,0,2,0" Padding="0" Content="&gt;" Style="{StaticResource OmagCut_YellowTextButton}"/>
<CheckBox Name="SideAngleChBx" Grid.Column="2" Margin="2,0,0,0" Padding="0"/>
</Grid>
<TextBlock Name="SideAngleBl" Grid.Row="0" Grid.Column="2" Text="A °"
Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"
FontSize="{DynamicResource FontSize_LowerCaseCharacter}"/>
Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"
FontSize="{DynamicResource FontSize_LowerCaseCharacter}"/>
<TextBlock Name="HeelBl" Grid.Row="0" Grid.Column="3" Text="T"
Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"
FontSize="{DynamicResource FontSize_LowerCaseCharacter}"/>
Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"
FontSize="{DynamicResource FontSize_LowerCaseCharacter}"/>
<TextBlock Name="Entity1" Grid.Row="1" Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<TextBlock Name="NewEntity" Grid.Row="1" Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<CheckBox Name="NewA1" Grid.Column="1" Grid.Row="1" Height="30" Width="40" HorizontalAlignment="Right"
Margin="-20,0,0,0"/>
<EgtWPFLib:EgtTextBox Name="NewA1TxBx" Grid.Column="2" Grid.Row="1" Width="60" IsLength="False"
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<EgtWPFLib:EgtTextBox Name="NewH1TxBx" Grid.Column="3" Grid.Row="1" Width="60"
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<TextBlock Name="Entity1" Grid.Row="1" Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<CheckBox Name="A1" Grid.Column="1" Grid.Row="1" Height="30" Width="40" HorizontalAlignment="Right"
Margin="-20,0,0,0"/>
Margin="-20,0,0,0"/>
<EgtWPFLib:EgtTextBox Name="A1TxBx" Grid.Column="2" Grid.Row="1" Width="60" IsLength="False"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<EgtWPFLib:EgtTextBox Name="H1TxBx" Grid.Column="3" Grid.Row="1" Width="60"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<TextBlock Name="Entity2" Grid.Row="2" Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<TextBlock Name="Entity2" Grid.Row="2" Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<CheckBox Name="A2" Grid.Column="1" Grid.Row="2" Height="30" Width="40" HorizontalAlignment="Right"
Margin="-20,0,0,0"/>
Margin="-20,0,0,0"/>
<EgtWPFLib:EgtTextBox Name="A2TxBx" Grid.Column="2" Grid.Row="2" Width="60" IsLength="False"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<EgtWPFLib:EgtTextBox Name="H2TxBx" Grid.Column="3" Grid.Row="2" Width="60"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<TextBlock Name="Entity3" Grid.Row="3" Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<TextBlock Name="Entity3" Grid.Row="3" Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<CheckBox Name="A3" Grid.Column="1" Grid.Row="3" Height="30" Width="40" HorizontalAlignment="Right"
Margin="-20,0,0,0"/>
Margin="-20,0,0,0"/>
<EgtWPFLib:EgtTextBox Name="A3TxBx" Grid.Column="2" Grid.Row="3" Width="60" IsLength="False"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<EgtWPFLib:EgtTextBox Name="H3TxBx" Grid.Column="3" Grid.Row="3" Width="60"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<TextBlock Name="Entity4" Grid.Row="4" Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<TextBlock Name="Entity4" Grid.Row="4" Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<CheckBox Name="A4" Grid.Column="1" Grid.Row="4" Height="30" Width="40" HorizontalAlignment="Right"
Margin="-20,0,0,0"/>
Margin="-20,0,0,0"/>
<EgtWPFLib:EgtTextBox Name="A4TxBx" Grid.Column="2" Grid.Row="4" Width="60" IsLength="False"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<EgtWPFLib:EgtTextBox Name="H4TxBx" Grid.Column="3" Grid.Row="4" Width="60"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<TextBlock Name="Entity5" Grid.Row="5" Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<TextBlock Name="Entity5" Grid.Row="5" Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<CheckBox Name="A5" Grid.Column="1" Grid.Row="5" Height="30" Width="40" HorizontalAlignment="Right"
Margin="-20,0,0,0"/>
Margin="-20,0,0,0"/>
<EgtWPFLib:EgtTextBox Name="A5TxBx" Grid.Column="2" Grid.Row="5" Width="60" IsLength="False"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<EgtWPFLib:EgtTextBox Name="H5TxBx" Grid.Column="3" Grid.Row="5" Width="60"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<TextBlock Name="Entity6" Grid.Row="6" Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<TextBlock Name="Entity6" Grid.Row="6" Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<CheckBox Name="A6" Grid.Column="1" Grid.Row="6" Height="30" Width="40" HorizontalAlignment="Right"
Margin="-20,0,0,0"/>
Margin="-20,0,0,0"/>
<EgtWPFLib:EgtTextBox Name="A6TxBx" Grid.Column="2" Grid.Row="6" Width="60" IsLength="False"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<EgtWPFLib:EgtTextBox Name="H6TxBx" Grid.Column="3" Grid.Row="6" Width="60"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<TextBlock Name="Entity7" Grid.Row="7" Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<TextBlock Name="Entity7" Grid.Row="7" Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<CheckBox Name="A7" Grid.Column="1" Grid.Row="7" Height="30" Width="40" HorizontalAlignment="Right"
Margin="-20,0,0,0"/>
Margin="-20,0,0,0"/>
<EgtWPFLib:EgtTextBox Name="A7TxBx" Grid.Column="2" Grid.Row="7" Width="60" IsLength="False"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<EgtWPFLib:EgtTextBox Name="H7TxBx" Grid.Column="3" Grid.Row="7" Width="60"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<TextBlock Name="Entity8" Grid.Row="8" Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<TextBlock Name="Entity8" Grid.Row="8" Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<CheckBox Name="A8" Grid.Column="1" Grid.Row="8" Height="30" Width="40" HorizontalAlignment="Right"
Margin="-20,0,0,0"/>
Margin="-20,0,0,0"/>
<EgtWPFLib:EgtTextBox Name="A8TxBx" Grid.Column="2" Grid.Row="8" Width="60" IsLength="False"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<EgtWPFLib:EgtTextBox Name="H8TxBx" Grid.Column="3" Grid.Row="8" Width="60"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<TextBlock Name="Entity9" Grid.Row="9" Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<TextBlock Name="Entity9" Grid.Row="9" Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<CheckBox Name="A9" Grid.Column="1" Grid.Row="9" Height="30" Width="40" HorizontalAlignment="Right"
Margin="-20,0,0,0"/>
Margin="-20,0,0,0"/>
<EgtWPFLib:EgtTextBox Name="A9TxBx" Grid.Column="2" Grid.Row="9" Width="60" IsLength="False"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<EgtWPFLib:EgtTextBox Name="H9TxBx" Grid.Column="3" Grid.Row="9" Width="60"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<TextBlock Name="Entity10" Grid.Row="10" Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<TextBlock Name="Entity10" Grid.Row="10" Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/>
<CheckBox Name="A10" Grid.Column="1" Grid.Row="10" Height="30" Width="40" HorizontalAlignment="Right"
Margin="-20,0,0,0"/>
Margin="-20,0,0,0"/>
<EgtWPFLib:EgtTextBox Name="A10TxBx" Grid.Column="2" Grid.Row="10" Width="60" IsLength="False"
Margin="0,0,0,-2"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<EgtWPFLib:EgtTextBox Name="H10TxBx" Grid.Column="3" Grid.Row="10" Width="60"
Margin="0,0,0,-2"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<Grid Grid.Column="0" Grid.Row="12" Grid.ColumnSpan="4" >
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1.5*"/>
<ColumnDefinition Width="0.3*"/>
<ColumnDefinition Width="0.6*"/>
<ColumnDefinition Width="0.6*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="0.9*"/>
<RowDefinition Height="0.9*"/>
<RowDefinition Height="0.9*"/>
<RowDefinition Height="0.9*"/>
<RowDefinition Height="0.9*"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1.5*"/>
<ColumnDefinition Width="0.3*"/>
<ColumnDefinition Width="0.6*"/>
<ColumnDefinition Width="0.6*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="0.9*"/>
<RowDefinition Height="0.9*"/>
<RowDefinition Height="0.9*"/>
<RowDefinition Height="0.9*"/>
<RowDefinition Height="0.9*"/>
</Grid.RowDefinitions>
<TextBlock Name="Parameter1TxBl" Grid.Row="0" Grid.ColumnSpan="2"
Text="Offset"
Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"
FontSize="{DynamicResource FontSize_LowerCaseCharacter}"/>
<EgtWPFLib:EgtTextBox Name="Parameter1TxBx"
Grid.Column="2" Grid.ColumnSpan="2" Grid.Row="0"
Width="85" Height="30"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
<TextBlock Name="Parameter1TxBl" Grid.Row="0" Grid.ColumnSpan="2"
Text="Offset"
Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"
FontSize="{DynamicResource FontSize_LowerCaseCharacter}"/>
<EgtWPFLib:EgtTextBox Name="Parameter1TxBx"
Grid.Column="2" Grid.ColumnSpan="2" Grid.Row="0"
Width="85" Height="30"
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="Parameter2TxBx"
Grid.Column="2" Grid.ColumnSpan="2" Grid.Row="1" Width="85"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
<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" IsLength="False"
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="Parameter2TxBl" Grid.Row="1" Grid.ColumnSpan="2"
Text="Offset2"
Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"
FontSize="{DynamicResource FontSize_LowerCaseCharacter}"/>
<EgtWPFLib:EgtTextBox Name="Parameter2TxBx"
Grid.Column="2" Grid.ColumnSpan="2" Grid.Row="1" Width="85"
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<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" IsLength="False"
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
<EgtWPFLib:EgtTextBox Name="Parameter2bTxBx"
Grid.Column="3" Grid.Row="12"
Width="40" Height="30"
Style="{DynamicResource 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="Parameter3TxBl" Grid.Row="2" Grid.ColumnSpan="2"
Text="Affondamento"
Style="{DynamicResource 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="{DynamicResource 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}"/>
<TextBlock Name="Parameter5TxBl" Grid.Row="4" Grid.ColumnSpan="2"
Text="Angolo"
Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"
FontSize="{DynamicResource FontSize_LowerCaseCharacter}"/>
<EgtWPFLib:EgtTextBox Name="Parameter5TxBx"
Grid.Column="2" Grid.ColumnSpan="2" Grid.Row="4"
Margin="0,0,0,-2"
Width="85" Height="30" IsLength="False"
Style="{StaticResource OmagCut_CalculatorTextBox}"/>
<TextBlock Name="Parameter4TxBl" Grid.Row="3" Grid.ColumnSpan="2"
Text="Accorciamento"
Style="{DynamicResource 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="{DynamicResource OmagCut_CalculatorTextBox}"/>
<TextBlock Name="Parameter5TxBl" Grid.Row="4" Grid.ColumnSpan="2"
Text="Angolo"
Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"
FontSize="{DynamicResource FontSize_LowerCaseCharacter}"/>
<EgtWPFLib:EgtTextBox Name="Parameter5TxBx"
Grid.Column="2" Grid.ColumnSpan="2" Grid.Row="4"
Margin="0,0,0,-2"
Width="85" Height="30" IsLength="False"
Style="{DynamicResource OmagCut_CalculatorTextBox}"/>
</Grid>
</Grid>
<!--<TextBlock Name="Parameter1TxBl" Grid.Row="11" Text="Offset"
<!--<TextBlock Name="Parameter1TxBl" Grid.Row="11" Text="Offset"
Style="{StaticResource OmagCut_CenteredLowerCaseCharacterTextBlock}"
FontSize="{DynamicResource FontSize_LowerCaseCharacter}"/>
<EgtWPFLib:EgtTextBox Name="Parameter1TxBx" Grid.Column="1" Grid.ColumnSpan="3" Grid.Row="11" Width="90"
+193 -32
View File
@@ -171,25 +171,25 @@ Public Class SideAngleUC
' Aggiorno valori
If m_Mode = ModeOpt.DRIP Then
m_dDripOffset = GetPrivateProfileDouble( S_SIDES, K_DRIPOFFSET, 20, m_MainWindow.GetIniFile())
m_dDripOffset2 = GetPrivateProfileDouble( S_SIDES, K_DRIPOFFSET2, 0, m_MainWindow.GetIniFile())
m_dDripDepth = GetPrivateProfileDouble( S_SIDES, K_DRIPDEPTH, 10, m_MainWindow.GetIniFile())
m_dDripShort = GetPrivateProfileDouble( S_SIDES, K_DRIPSHORT, 0, m_MainWindow.GetIniFile())
Parameter1TxBx.Text = LenToString( m_dDripOffset, 3)
Parameter2TxBx.Text = LenToString( m_dDripOffset2, 3)
Parameter3TxBx.Text = LenToString( m_dDripDepth, 3)
Parameter4TxBx.Text = LenToString( m_dDripShort, 3)
m_dDripOffset = GetPrivateProfileDouble(S_SIDES, K_DRIPOFFSET, 20, m_MainWindow.GetIniFile())
m_dDripOffset2 = GetPrivateProfileDouble(S_SIDES, K_DRIPOFFSET2, 0, m_MainWindow.GetIniFile())
m_dDripDepth = GetPrivateProfileDouble(S_SIDES, K_DRIPDEPTH, 10, m_MainWindow.GetIniFile())
m_dDripShort = GetPrivateProfileDouble(S_SIDES, K_DRIPSHORT, 0, m_MainWindow.GetIniFile())
Parameter1TxBx.Text = LenToString(m_dDripOffset, 3)
Parameter2TxBx.Text = LenToString(m_dDripOffset2, 3)
Parameter3TxBx.Text = LenToString(m_dDripDepth, 3)
Parameter4TxBx.Text = LenToString(m_dDripShort, 3)
ElseIf m_Mode = ModeOpt.ENGRAVE Then
m_dDripOffset = GetPrivateProfileDouble( S_SIDES, K_ENGRAVEOFFSET, 20, m_MainWindow.GetIniFile())
m_nEngrNbr2 = GetPrivateProfileInt( S_SIDES, K_ENGRAVENUMBER2, 1, m_MainWindow.GetIniFile())
m_dDripOffset2 = GetPrivateProfileDouble( S_SIDES, K_ENGRAVEOFFSET2, 0, m_MainWindow.GetIniFile())
m_dDripDepth = GetPrivateProfileDouble( S_SIDES, K_ENGRAVEDEPTH, 10, m_MainWindow.GetIniFile())
m_dDripOffset = GetPrivateProfileDouble(S_SIDES, K_ENGRAVEOFFSET, 20, m_MainWindow.GetIniFile())
m_nEngrNbr2 = GetPrivateProfileInt(S_SIDES, K_ENGRAVENUMBER2, 1, m_MainWindow.GetIniFile())
m_dDripOffset2 = GetPrivateProfileDouble(S_SIDES, K_ENGRAVEOFFSET2, 0, m_MainWindow.GetIniFile())
m_dDripDepth = GetPrivateProfileDouble(S_SIDES, K_ENGRAVEDEPTH, 10, m_MainWindow.GetIniFile())
m_dEngraveDepth2 = GetPrivateProfileDouble(S_SIDES, K_ENGRAVEDEPTH2, 0, m_MainWindow.GetIniFile())
m_dEngraveAngle = GetPrivateProfileDouble(S_SIDES, K_ENGRAVEANGLE, 0, m_MainWindow.GetIniFile())
Parameter1TxBx.Text = LenToString(m_dDripOffset, 3)
Parameter2aTxBx.Text = m_nEngrNbr2.ToString()
Parameter2bTxBx.Text = LenToString( m_dDripOffset2, 3)
Parameter3TxBx.Text = LenToString( m_dDripDepth, 3)
Parameter2bTxBx.Text = LenToString(m_dDripOffset2, 3)
Parameter3TxBx.Text = LenToString(m_dDripDepth, 3)
Parameter4TxBx.Text = LenToString(m_dEngraveDepth2, 3)
Parameter5TxBx.Text = DoubleToString(m_dEngraveAngle, 3)
End If
@@ -311,8 +311,14 @@ Public Class SideAngleUC
' Attualmente il vaore m_nCount è inizializzato ad "1"..
' Bottoni Prev Next
If m_nCount <= MAX_LINES Then
PrevBtn.Visibility= Windows.Visibility.Hidden
NextBtn.Visibility= Windows.Visibility.Hidden
PrevBtn.Visibility = Windows.Visibility.Hidden
NextBtn.Visibility = Windows.Visibility.Hidden
SideAngleChBx.Visibility = Windows.Visibility.Hidden
NewEntity.Visibility = Windows.Visibility.Hidden
NewA1.Visibility = Windows.Visibility.Hidden
NewA1TxBx.Visibility = Windows.Visibility.Hidden
NewH1TxBx.Visibility = Windows.Visibility.Hidden
Else
Grid.SetRow(PrevBtn, MAX_LINES - m_nShow)
PrevBtn.Visibility = Windows.Visibility.Visible
@@ -320,6 +326,8 @@ Public Class SideAngleUC
Grid.SetRow(NextBtn, MAX_LINES - m_nShow)
NextBtn.Visibility = Windows.Visibility.Visible
NextBtn.IsEnabled = (m_nCount > m_nCurrPage * MAX_LINES)
Grid.SetRow(SideAngleGrid, MAX_LINES - m_nShow)
SideAngleChBx.Visibility = Windows.Visibility.Visible
End If
' Intestazione per angoli di lato
@@ -335,6 +343,8 @@ Public Class SideAngleUC
Grid.SetRow(HeelBl, MAX_LINES - m_nShow)
HeelBl.Text = EgtMsg(91654) ' T
HeelBl.Visibility = Windows.Visibility.Visible
Grid.SetRow(SideAngleGrid, MAX_LINES - m_nShow)
SideAngleChBx.Visibility = Windows.Visibility.Visible
End If
Else
If m_nCount = 0 Then
@@ -371,7 +381,7 @@ Public Class SideAngleUC
GetHeelTxBxFromIndex(Index).Text = GetPrivateProfileDouble(S_SIDES, K_DRIPSHORT & "A" & nI.ToString & "_End", 0, m_MainWindow.GetIniFile())
End If
End If
Dim TxBlIndex As Integer = (m_nCurrPage - 1) * MAX_LINES + nI - 1
Dim TxBlIndex As Integer = (m_nCurrPage - 1) * MAX_LINES + nI - 1
GetTxBlFromIndex(Index).Text = If(m_Mode = ModeOpt.SIDEANGLE,
m_SideAngleEntityList(TxBlIndex).sEntityName,
m_DripEntityList(TxBlIndex).sEntityName)
@@ -391,6 +401,145 @@ Public Class SideAngleUC
Next
End Sub
Private Sub CheckedSideAngle() Handles SideAngleChBx.Checked
Grid.SetRow(NewEntity, MAX_LINES - m_nShow + 1)
Grid.SetRow(NewA1TxBx, MAX_LINES - m_nShow + 1)
Grid.SetRow(NewH1TxBx, MAX_LINES - m_nShow + 1)
NewEntity.Text = "A#"
' Se interrompo la creazione di un unico SideAng
If Not GetSideAngleFromAllEntities() Then Return
PrevBtn.Visibility = Visibility.Collapsed
NextBtn.Visibility = Visibility.Collapsed
NewEntity.Visibility = Visibility.Visible
NewA1TxBx.Visibility = Visibility.Visible
NewH1TxBx.Visibility = Visibility.Visible
Entity1.Visibility = Visibility.Collapsed
A1TxBx.Visibility = Visibility.Collapsed
H1TxBx.Visibility = Visibility.Collapsed
Entity2.Visibility = Visibility.Collapsed
A2TxBx.Visibility = Visibility.Collapsed
H2TxBx.Visibility = Visibility.Collapsed
Entity3.Visibility = Visibility.Collapsed
A3TxBx.Visibility = Visibility.Collapsed
H3TxBx.Visibility = Visibility.Collapsed
Entity4.Visibility = Visibility.Collapsed
A4TxBx.Visibility = Visibility.Collapsed
H4TxBx.Visibility = Visibility.Collapsed
Entity5.Visibility = Visibility.Collapsed
A5TxBx.Visibility = Visibility.Collapsed
H5TxBx.Visibility = Visibility.Collapsed
Entity6.Visibility = Visibility.Collapsed
A6TxBx.Visibility = Visibility.Collapsed
H6TxBx.Visibility = Visibility.Collapsed
Entity7.Visibility = Visibility.Collapsed
A7TxBx.Visibility = Visibility.Collapsed
H7TxBx.Visibility = Visibility.Collapsed
Entity8.Visibility = Visibility.Collapsed
A8TxBx.Visibility = Visibility.Collapsed
H8TxBx.Visibility = Visibility.Collapsed
Entity9.Visibility = Visibility.Collapsed
A9TxBx.Visibility = Visibility.Collapsed
H9TxBx.Visibility = Visibility.Collapsed
Entity10.Visibility = Visibility.Collapsed
A10TxBx.Visibility = Visibility.Collapsed
H10TxBx.Visibility = Visibility.Collapsed
End Sub
Private Sub UnCheckSideAngle() Handles SideAngleChBx.Unchecked
NewEntity.Visibility = Visibility.Collapsed
NewA1TxBx.Visibility = Visibility.Collapsed
NewH1TxBx.Visibility = Visibility.Collapsed
TxBlChBxView()
RefreshCheckAndValue()
End Sub
Private Function GetSideAngleFromAllEntities() As Boolean
Dim tmpSideAngleList As New List(Of Double)
tmpSideAngleList.Clear()
Dim tmpSideHeelList As New List(Of Double)
tmpSideHeelList.Clear()
Dim m_SideAngleOneForAllWindow As New SideAngleOneForAllWindow
For i As Integer = 0 To m_SideAngleEntityList.Count - 1
If Not tmpSideAngleList.Contains(m_SideAngleEntityList(i).dSideAngle) Then
tmpSideAngleList.Add(m_SideAngleEntityList(i).dSideAngle)
End If
If Not tmpSideHeelList.Contains(m_SideAngleEntityList(i).dSideHeel) Then
tmpSideHeelList.Add(m_SideAngleEntityList(i).dSideHeel)
End If
Next
NewA1TxBx.Text = DoubleToString(tmpSideAngleList(0), 2)
NewH1TxBx.Text = LenToString(tmpSideHeelList(0), 2)
If tmpSideAngleList.Count > 1 Or tmpSideHeelList.Count > 1 Then
m_SideAngleOneForAllWindow.SideAngleOneForAllCBx.ItemsSource = tmpSideAngleList
m_SideAngleOneForAllWindow.SideAngleOneForAllCBx.SelectedIndex = 0
m_SideAngleOneForAllWindow.SideHeelOneForAllCBx.ItemsSource = tmpSideHeelList
m_SideAngleOneForAllWindow.SideHeelOneForAllCBx.SelectedIndex = 0
m_SideAngleOneForAllWindow.ShowDialog()
If m_SideAngleOneForAllWindow.DialogResult Then
NewA1TxBx.Text = DoubleToString(m_SideAngleOneForAllWindow.SideAngleOneForAllCBx.SelectedItem, 2)
NewH1TxBx.Text = LenToString(m_SideAngleOneForAllWindow.SideHeelOneForAllCBx.SelectedItem, 2)
UpdateSideAngleAllEntities()
UpdateHeelAllEntities()
Else
SideAngleChBx.IsChecked = False
Return False
End If
End If
Return True
End Function
Private Sub UpdateHeelAllEntities()
' Nuovo tallone
Dim dSideHeel As Double
StringToLen(NewH1TxBx.Text, dSideHeel)
' Verifico stia nei limiti
If dSideHeel < 0 Then
dSideHeel = 0
NewH1TxBx.Text = "0"
End If
For Each Entity As SideAngleEntity In m_SideAngleEntityList
' Lo modifico nella geometria e nella lista inclinazioni
ModifySideHeel(Entity.sEntityName, dSideHeel)
' Aggiorno tutti i testi
RefreshSideAngleText()
Next
End Sub
Private Sub UpdateSideAngleAllEntities()
' Nuovo angolo di inclinazione
Dim dSideAngle As Double
StringToDouble(NewA1TxBx.Text, dSideAngle)
' Verifico stia nei limiti
If dSideAngle < -m_dMaxSideAng Then
dSideAngle = -m_dMaxSideAng
NewA1TxBx.Text = DoubleToString(dSideAngle, 2)
ElseIf dSideAngle > m_dMaxSideAng Then
dSideAngle = m_dMaxSideAng
NewA1TxBx.Text = DoubleToString(dSideAngle, 2)
End If
For Each Entity As SideAngleEntity In m_SideAngleEntityList
' Lo modifico nella geometria e nella lista inclinazioni
ModifySideAngle(Entity.sEntityName, dSideAngle)
' Aggiorno tutti i testi
RefreshSideAngleText()
Next
End Sub
'-------------> Restituisce gli oggetto della grafica assegnato l'indice
Private Function GetChBxFromIndex(Index As Integer) As CheckBox
@@ -495,15 +644,15 @@ Public Class SideAngleUC
'-------------> Restituisce gli oggetto della grafica assegnato l'indice
' quando esco salvo nel file l'ultima configurazione per le incisioni
Private Sub SideAngleUC_Unloaded( sender As Object, e As RoutedEventArgs) Handles Me.Unloaded
Private Sub SideAngleUC_Unloaded(sender As Object, e As RoutedEventArgs) Handles Me.Unloaded
If m_CallingPage = MainWindow.Pages.Draw Then
' Ricavo nome pezzo
Dim PartId As Integer = EgtGetFirstInGroup( GDB_ID.ROOT)
Dim PartId As Integer = EgtGetFirstInGroup(GDB_ID.ROOT)
' Svuoto layer in cui sono presenti i testi con le inclinazioni dei lati
If m_Mode = ModeOpt.SIDEANGLE Then
EgtEmptyGroup( EgtGetFirstNameInGroup( PartId, SIDE_ANGLE_LAYER))
EgtEmptyGroup(EgtGetFirstNameInGroup(PartId, SIDE_ANGLE_LAYER))
Else
EgtEmptyGroup( EgtGetFirstNameInGroup( PartId, SIDE_ANGLE_LAYER))
EgtEmptyGroup(EgtGetFirstNameInGroup(PartId, SIDE_ANGLE_LAYER))
End If
ElseIf m_CallingPage = MainWindow.Pages.Import Then
' Nessuna azione necessaria
@@ -516,7 +665,7 @@ Public Class SideAngleUC
'WritePrivateProfileString( S_SIDES, K_DRIPSHORT, DoubleToString( m_dDripShort, 3), m_MainWindow.GetIniFile())
ElseIf m_Mode = ModeOpt.ENGRAVE Then
WritePrivateProfileString(S_SIDES, K_ENGRAVEOFFSET, LenToString(m_dDripOffset, 3), m_MainWindow.GetIniFile())
WritePrivateProfileString( S_SIDES, K_ENGRAVENUMBER2, m_nEngrNbr2.ToString(), m_MainWindow.GetIniFile())
WritePrivateProfileString(S_SIDES, K_ENGRAVENUMBER2, m_nEngrNbr2.ToString(), m_MainWindow.GetIniFile())
WritePrivateProfileString(S_SIDES, K_ENGRAVEOFFSET2, LenToString(m_dDripOffset2, 3), m_MainWindow.GetIniFile())
WritePrivateProfileString(S_SIDES, K_ENGRAVEDEPTH, LenToString(m_dDripDepth, 3), m_MainWindow.GetIniFile())
WritePrivateProfileString(S_SIDES, K_ENGRAVEDEPTH2, LenToString(m_dEngraveDepth2, 3), m_MainWindow.GetIniFile())
@@ -527,7 +676,6 @@ Public Class SideAngleUC
EgtDraw()
End Sub
' aggiunge il messaggio nel disegno, se DripGeom creo la geometria
Private Sub RefreshSideAngleText()
Dim PartId As Integer = GDB_ID.NULL
@@ -538,7 +686,7 @@ Public Class SideAngleUC
PartId = If(m_MainWindow.m_DrawPageUC.SelectedLayer <> GDB_ID.NULL, EgtGetFirstPart(), GDB_ID.NULL)
' Recupero nome layer con geometria di contorno (esterno o interno) del pezzo
LoopId = m_MainWindow.m_DrawPageUC.SelectedLayer
ElseIf m_CallingPage = MainWindow.Pages.Import Then
ElseIf m_CallingPage = MainWindow.Pages.Import Then
' Imposto contesto corrente
EgtSetCurrentContext(m_MainWindow.m_ImportPageUC.ImportScene.GetCtx())
' Recupero nome pezzo
@@ -600,7 +748,7 @@ Public Class SideAngleUC
For nIndex As Integer = 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
If nIndex < (m_nCurrPage - 1) * MAX_LINES Or nIndex > m_nCurrPage * MAX_LINES Then Continue For
Dim nChIndex As Integer = nIndex - (m_nCurrPage - 1) * MAX_LINES + MAX_LINES - m_nShow
' verifico se l'entità ha un gocciolatoio
GetChBxFromIndex(nChIndex).IsChecked = Entity.bHaveDrip
@@ -973,15 +1121,15 @@ Public Class SideAngleUC
Private Sub PrevBtn_Click(sender As Object, e As RoutedEventArgs) Handles PrevBtn.Click
If m_nCurrPage = 1 Then Return
m_nCurrPage -= 1
m_nShow = Math.Min( m_nCount - ( m_nCurrPage - 1) * MAX_LINES, MAX_LINES)
m_nShow = Math.Min(m_nCount - (m_nCurrPage - 1) * MAX_LINES, MAX_LINES)
TxBlChBxView()
RefreshCheckAndValue()
End Sub
Private Sub NextBtn_Click(sender As Object, e As RoutedEventArgs) Handles NextBtn.Click
If m_nCount <= ( m_nCurrPage - 1) * MAX_LINES Then Return
If m_nCount <= (m_nCurrPage - 1) * MAX_LINES Then Return
m_nCurrPage += 1
m_nShow = Math.Min( m_nCount - ( m_nCurrPage - 1) * MAX_LINES, MAX_LINES)
m_nShow = Math.Min(m_nCount - (m_nCurrPage - 1) * MAX_LINES, MAX_LINES)
TxBlChBxView()
RefreshCheckAndValue()
End Sub
@@ -993,7 +1141,7 @@ Public Class SideAngleUC
Dim bVal As Boolean = CurrCheckBox.IsChecked()
Dim SideIndex As Integer = CInt(CurrCheckBox.Name.Substring(1))
' Converto nome checkbox in nome elemento tenendo conto della pagina e dello slittamento verso il basso
Dim nCurrSide As Integer = ( m_nCurrPage - 1) * MAX_LINES + SideIndex - ( MAX_LINES - m_nShow)
Dim nCurrSide As Integer = (m_nCurrPage - 1) * MAX_LINES + SideIndex - (MAX_LINES - m_nShow)
Dim sCurrSide As String = m_DripEntityList(nCurrSide - 1).sEntityName
' aggiorno l'entità con i valori scritti nel campo di testo
Dim CurrEntity As DripEntity = DripEntity.FindEntity(sCurrSide)
@@ -1179,6 +1327,19 @@ Public Class SideAngleUC
End If
End Sub
'-------> riga nuova
Private Sub NewA1TxBx_EgtClosed(sender As Object, e As EventArgs) Handles NewA1TxBx.EgtClosed
If m_Mode = ModeOpt.SIDEANGLE Then
UpdateSideAngleAllEntities()
End If
End Sub
Private Sub NewH1TxBx_EgtClosed(sender As Object, e As EventArgs) Handles NewH1TxBx.EgtClosed
If m_Mode = ModeOpt.SIDEANGLE Then
UpdateHeelAllEntities()
End If
End Sub
Private Sub SetSideAngleFromTxBx(SideIndex As Integer, AngleTxBx As EgtWPFLib.EgtTextBox)
' Nuovo angolo di inclinazione
Dim dSideAngle As Double
@@ -1192,7 +1353,7 @@ Public Class SideAngleUC
AngleTxBx.Text = DoubleToString(dSideAngle, 2)
End If
' Converto nome checkbox in nome elemento tenendo conto della pagina e dello slittamento verso il basso
Dim nCurrSide As Integer = ( m_nCurrPage - 1) * MAX_LINES + SideIndex - ( MAX_LINES - m_nShow)
Dim nCurrSide As Integer = (m_nCurrPage - 1) * MAX_LINES + SideIndex - (MAX_LINES - m_nShow)
Dim sCurrSide As String = m_SideAngleEntityList(nCurrSide - 1).sEntityName
' Lo modifico nella geometria e nella lista inclinazioni
ModifySideAngle(sCurrSide, dSideAngle)
@@ -1262,7 +1423,7 @@ Public Class SideAngleUC
HeelTxBx.Text = "0"
End If
' Converto nome checkbox in nome elemento tenendo conto della pagina e dello slittamento verso il basso
Dim nCurrSide As Integer = ( m_nCurrPage - 1) * MAX_LINES + SideIndex - ( MAX_LINES - m_nShow)
Dim nCurrSide As Integer = (m_nCurrPage - 1) * MAX_LINES + SideIndex - (MAX_LINES - m_nShow)
Dim sCurrSide As String = m_SideAngleEntityList(nCurrSide - 1).sEntityName
' Lo modifico nella geometria e nella lista inclinazioni
ModifySideHeel(sCurrSide, dSideHeel)
@@ -1329,7 +1490,7 @@ Public Class SideAngleUC
' Scrivo nuovo tallone nelle info
If dSideHeel > 10 * EPS_SMALL Then
EgtSetInfo(CurrEntity.nGeomId, INFO_HEEL, dSideHeel)
' Cancello inclinazione nell'apposito campo info
' Cancello inclinazione nell'apposito campo info
Else
EgtRemoveInfo(CurrEntity.nGeomId, INFO_HEEL)
End If
+2 -2
View File
@@ -62,5 +62,5 @@ Imports System.Windows
' by using the '*' as shown below:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("2.7.6.1")>
<Assembly: AssemblyFileVersion("2.7.6.1")>
<Assembly: AssemblyVersion("2.7.6.2")>
<Assembly: AssemblyFileVersion("2.7.6.2")>
+14 -2
View File
@@ -1651,6 +1651,11 @@ Namespace Num
n_ret = objDGeneralFunctions.ActivateProgram(l_glbPartProgramNumber, 0)
If n_ret <> 0 Then
EgtOutLog("Error: ActivateProgram error : " + n_ret.ToString())
Return n_ret
End If
Return n_ret
End Function
@@ -1698,17 +1703,24 @@ Namespace Num
Dim ngroup0 As Short = 0
Dim nTimeOut As Integer = 0
bSetModeDone = False
' ' Per prima versione FLEXIUM (3.5.040 - 2013)
' EgtOutLog("Scrittura modalità (" & nmode.ToString & ")")
' objDGeneralFunctions.WriteCncMode(nmode, ngroup0)
' Return 0
' Per ultime versioni FLEXIUM
objDGeneralFunctions.WriteCncMode2(nHandle, nmode, ngroup0)
While Not bSetModeDone And nTimeOut < SHORTSLEEPCOUNT
System.Threading.Thread.Sleep(SHORTSLEEPTIME)
nTimeOut += 1
End While
If Not bSetModeDone Then
EgtOutLog("Errore cambio modalit in MDI: " & TIMEOUT)
EgtOutLog("Errore cambio modalità in MDI: " & TIMEOUT)
Return TIMEOUT 'Errore di timeout
End If
If nSetModeResult <> 0 Then
EgtOutLog("Errore 2 cambio modalit in MDI: " & nSetModeResult)
EgtOutLog("Errore 2 cambio modalità in MDI: " & nSetModeResult)
End If
Return nSetModeResult
+7
View File
@@ -218,6 +218,9 @@
<Compile Include="DrawImport\FiloTopUC.xaml.vb">
<DependentUpon>FiloTopUC.xaml</DependentUpon>
</Compile>
<Compile Include="DrawImport\SideAngleOneForAllWindow.xaml.vb">
<DependentUpon>SideAngleOneForAllWindow.xaml</DependentUpon>
</Compile>
<Compile Include="DrawImport\UnderDrillUC.xaml.vb">
<DependentUpon>UnderDrillUC.xaml</DependentUpon>
</Compile>
@@ -512,6 +515,10 @@
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Page Include="DrawImport\SideAngleOneForAllWindow.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="DrawImport\UnderDrillUC.xaml">
<SubType>Designer</SubType>
<Generator>XamlIntelliSenseFileGenerator</Generator>
+5 -4
View File
@@ -387,7 +387,7 @@
<Setter Property="Keyboard" Value="Calculator"/>
<Setter Property="KeyboardDimension" Value="300"/>
<Setter Property="Background" Value="#636974"/>
<Setter Property="Foreground" Value="White"/>
<Setter Property="Foreground" Value="{StaticResource Omag_White}"/>
</Style>
<Style x:Key="OmagCut_MachToolCalculatorTextBox" TargetType="{x:Type EgtWPFLib:EgtTextBox}" BasedOn="{StaticResource OmagCut_CalculatorTextBox}">
@@ -509,6 +509,7 @@
<!--<Setter Property="BorderBrush" Value="{StaticResource OmagCut_Yellow}"/>-->
<Setter Property="Background" Value="#1C1D22"/>
<Setter Property="BorderBrush" Value="#1C1D22"/>
<Setter Property="Foreground" Value="{StaticResource Omag_White}"/>
<Setter Property="FontSize" Value="{StaticResource FontSize_UpperCaseCharacter}"/>
<Style.Triggers>
<Trigger Property="IsChecked" Value="True">
@@ -629,21 +630,21 @@
<Style x:Key="OmagCut_CenteredLowerCaseCharacterTextBlock" TargetType="{x:Type TextBlock}" BasedOn="{StaticResource OmagCut_UpperCaseCharacterTextBlock}">
<Setter Property="VerticalAlignment" Value="Center"/>
<Setter Property="HorizontalAlignment" Value="Center"/>
<Setter Property="Foreground" Value="White"/>
<Setter Property="Foreground" Value="{StaticResource Omag_White}"/>
</Style>
<Style x:Key="OmagCut_KeyboardTextBox" TargetType="{x:Type EgtWPFLib:EgtTextBox}" BasedOn="{StaticResource OmagCut_TextBox}">
<Setter Property="Keyboard" Value="Alphanumeric"/>
<Setter Property="KeyboardDimension" Value="600"/>
<Setter Property="Background" Value="#636974"/>
<Setter Property="Foreground" Value="White"/>
<Setter Property="Foreground" Value="{StaticResource Omag_White}"/>
</Style>
<Style x:Key="OmagCut_LowerCaseCharacterTextBlock" TargetType="{x:Type TextBlock}">
<Setter Property="TextWrapping" Value="Wrap"/>
<Setter Property="FontSize" Value="{DynamicResource FontSize_LowerCaseCharacter}"/>
<Setter Property="VerticalAlignment" Value="Center"/>
<Setter Property="Foreground" Value="White"/>
<Setter Property="Foreground" Value="{StaticResource Omag_White}"/>
</Style>
<DataTemplate x:Key="GroupBoxHeaderTemplate">
+2
View File
@@ -1224,6 +1224,7 @@
</Style>
<Style x:Key="OmagCut_CenteredLowerCaseCharacterTextBlock" TargetType="{x:Type TextBlock}" BasedOn="{StaticResource OmagCut_UpperCaseCharacterTextBlock}">
<Setter Property="Foreground" Value="{StaticResource Omag_Black}"/>
<Setter Property="VerticalAlignment" Value="Center"/>
<Setter Property="HorizontalAlignment" Value="Center"/>
</Style>
@@ -1257,6 +1258,7 @@
</Style>
<Style x:Key="OmagCut_CalculatorTextBox" TargetType="{x:Type EgtWPFLib:EgtTextBox}" BasedOn="{StaticResource OmagCut_TextBox}">
<Setter Property="Foreground" Value="{StaticResource Omag_Black}"/>
<Setter Property="Keyboard" Value="Calculator"/>
<Setter Property="IsLength" Value="True"/>
<Setter Property="KeyboardDimension" Value="300"/>