Icarus 3.1b2 :

- aggiunto parametro SpiralVaseLen (abilitato solo se SpiralVase lo è).
This commit is contained in:
Dario Sassi
2026-02-16 11:33:16 +01:00
parent 738945927b
commit dd31c112a6
7 changed files with 148 additions and 87 deletions
+1
View File
@@ -103,6 +103,7 @@
Public Const MAC_COASTINGFEEDPU = "CoastingFeedPu"
Public Const MAC_WIPELEN = "WipeLen"
Public Const MAC_WIPEFEEDPU = "WipeFeedPu"
Public Const MAC_SPIRALVASELEN = "SpiralVaseLen"
Public Const MAC_WIPEDIR = "WipeDir"
Public Const MAC_FLOORCOUNT = "FloorCount"
Public Const MAC_G0FEED = "G0Feed"
+28 -15
View File
@@ -106,12 +106,12 @@ Public Class CurrMachining
Else
m_nIndex = 0
End If
m_CathegoryList.Add(New CurrMachiningCathegory(MachiningCathegory.Cathegories.GENERAL, nPartId, m_nIndex, False))
m_CathegoryList.Add(New CurrMachiningCathegory(MachiningCathegory.Cathegories.LINK, nPartId, m_nIndex, False))
m_CathegoryList.Add(New CurrMachiningCathegory(MachiningCathegory.Cathegories.RIBS, nPartId, m_nIndex, False))
m_CathegoryList.Add(New CurrMachiningCathegory(MachiningCathegory.Cathegories.SHELL_NUMBER, nPartId, m_nIndex, False))
m_CathegoryList.Add(New CurrMachiningCathegory(MachiningCathegory.Cathegories.AUX_SOLID, nPartId, m_nIndex, False))
m_CathegoryList.Add(New CurrMachiningCathegory(MachiningCathegory.Cathegories.INFILL, nPartId, m_nIndex, False))
m_CathegoryList.Add(New CurrMachiningCathegory(MachiningCathegory.Cathegories.GENERAL, nPartId, m_nIndex, False, Me))
m_CathegoryList.Add(New CurrMachiningCathegory(MachiningCathegory.Cathegories.LINK, nPartId, m_nIndex, False, Me))
m_CathegoryList.Add(New CurrMachiningCathegory(MachiningCathegory.Cathegories.RIBS, nPartId, m_nIndex, False, Me))
m_CathegoryList.Add(New CurrMachiningCathegory(MachiningCathegory.Cathegories.SHELL_NUMBER, nPartId, m_nIndex, False, Me))
m_CathegoryList.Add(New CurrMachiningCathegory(MachiningCathegory.Cathegories.AUX_SOLID, nPartId, m_nIndex, False, Me))
m_CathegoryList.Add(New CurrMachiningCathegory(MachiningCathegory.Cathegories.INFILL, nPartId, m_nIndex, False, Me))
For Each Cathegory In m_CathegoryList
For Each MachiningParam In Cathegory.MachiningParamList
AddHandler MachiningParam.PropertyChanged, AddressOf OnMachiningParamPropertyChanged
@@ -124,12 +124,12 @@ Public Class CurrMachining
' ricavo lavorazione da lista
Dim CurrMachiningInDb As MachiningIndex = Map.refTopPanelVM.MachiningList.FirstOrDefault(Function(x) x.nIndex = nIndex)
m_sCurrGUID = CurrMachiningInDb.sGUID
m_CathegoryList.Add(New CurrMachiningCathegory(MachiningCathegory.Cathegories.GENERAL, nPartId, m_nIndex, True))
m_CathegoryList.Add(New CurrMachiningCathegory(MachiningCathegory.Cathegories.LINK, nPartId, m_nIndex, True))
m_CathegoryList.Add(New CurrMachiningCathegory(MachiningCathegory.Cathegories.RIBS, nPartId, m_nIndex, True))
m_CathegoryList.Add(New CurrMachiningCathegory(MachiningCathegory.Cathegories.SHELL_NUMBER, nPartId, m_nIndex, True))
m_CathegoryList.Add(New CurrMachiningCathegory(MachiningCathegory.Cathegories.AUX_SOLID, nPartId, m_nIndex, True))
m_CathegoryList.Add(New CurrMachiningCathegory(MachiningCathegory.Cathegories.INFILL, nPartId, m_nIndex, True))
m_CathegoryList.Add(New CurrMachiningCathegory(MachiningCathegory.Cathegories.GENERAL, nPartId, m_nIndex, True, Me))
m_CathegoryList.Add(New CurrMachiningCathegory(MachiningCathegory.Cathegories.LINK, nPartId, m_nIndex, True, Me))
m_CathegoryList.Add(New CurrMachiningCathegory(MachiningCathegory.Cathegories.RIBS, nPartId, m_nIndex, True, Me))
m_CathegoryList.Add(New CurrMachiningCathegory(MachiningCathegory.Cathegories.SHELL_NUMBER, nPartId, m_nIndex, True, Me))
m_CathegoryList.Add(New CurrMachiningCathegory(MachiningCathegory.Cathegories.AUX_SOLID, nPartId, m_nIndex, True, Me))
m_CathegoryList.Add(New CurrMachiningCathegory(MachiningCathegory.Cathegories.INFILL, nPartId, m_nIndex, True, Me))
For Each Cathegory In m_CathegoryList
For Each MachiningParam In Cathegory.MachiningParamList
AddHandler MachiningParam.PropertyChanged, AddressOf OnMachiningParamPropertyChanged
@@ -196,8 +196,9 @@ End Class
Public Class CurrMachiningCathegory
Inherits MachiningCathegory
Sub New(Type As Cathegories, nPartId As Integer, nIndex As Integer, bForceFromDb As Boolean)
Sub New(Type As Cathegories, nPartId As Integer, nIndex As Integer, bForceFromDb As Boolean, Machining As Machining)
m_Type = Type
m_Machining = Machining
Select Case m_Type
Case Cathegories.GENERAL
m_sName = "General"
@@ -238,7 +239,8 @@ Public Class CurrMachiningCathegory
New CurrNumericMachiningParam(MachiningParam.Params.COASTINGLEN, nPartId, nIndex, bForceFromDb, Me),
New CurrNumericMachiningParam(MachiningParam.Params.COASTINGFEED_PC, nPartId, nIndex, bForceFromDb, Me),
New CurrNumericMachiningParam(MachiningParam.Params.WIPELEN, nPartId, nIndex, bForceFromDb, Me),
New CurrNumericMachiningParam(MachiningParam.Params.WIPEFEED_PC, nPartId, nIndex, bForceFromDb, Me)})
New CurrNumericMachiningParam(MachiningParam.Params.WIPEFEED_PC, nPartId, nIndex, bForceFromDb, Me),
New CurrNumericMachiningParam(MachiningParam.Params.SPIRALVASELEN, nPartId, nIndex, bForceFromDb, Me)})
'New CurrNumericMachiningParam(MachiningParam.Params.WIPEDIR, nPartId, nIndex, bForceFromDb, Me)})
Case Cathegories.RIBS
m_sName = "Ribs"
@@ -315,6 +317,11 @@ Public Class CurrMachiningCathegory
Dim MachiningParam As ComboMachiningParam = MachiningParamList.FirstOrDefault(Function(z) z.Type = Param)
MachiningParam.ManageDependencyParam()
Next
For Each Param In {MachiningParam.Params.SPIRALVASE}
Dim GeneralCathegory As MachiningCathegory = Machining.CathegoryList.FirstOrDefault(Function(z) z.Type = Cathegories.GENERAL)
Dim MachiningParam As CheckMachiningParam = GeneralCathegory.MachiningParamList.FirstOrDefault(Function(z) z.Type = Param)
MachiningParam.ManageDependencyParam(Me)
Next
Case Cathegories.RIBS
For Each Param In {MachiningParam.Params.RIBSTYPE}
Dim MachiningParam As ComboMachiningParam = MachiningParamList.FirstOrDefault(Function(z) z.Type = Param)
@@ -473,6 +480,9 @@ Public Class CurrNumericMachiningParam
Case Params.WIPEFEED_PC
bReadFromPart = EgtGetInfo(nPartId, MAC_WIPEFEEDPU, m_dValue)
m_bIsLen = False
Case Params.SPIRALVASELEN
bReadFromPart = EgtGetInfo(nPartId, MAC_SPIRALVASELEN, m_dValue)
m_bIsLen = True
'Case Params.WIPEDIR
' bReadFromPart = EgtGetInfo(nPartId, MAC_WIPEDIR, m_dValue)
' m_bIsLen = True
@@ -636,7 +646,7 @@ Public Class CurrNumericMachiningParam
m_DbParam = DbMachining.CathegoryList.FirstOrDefault(Function(y) y.Type = MachiningCathegory.Cathegories.GENERAL).MachiningParamList.FirstOrDefault(Function(z) z.Type = m_Type)
Case Params.LINKPARAM, Params.INNERSHELLWIDTH, Params.OFFSETLEADPOINT, Params.LEADINTANGDIST, Params.LEADINORTHODIST,
Params.LEADOUTTANGDIST, Params.LEADOUTORTHODIST, Params.COASTINGLEN, Params.COASTINGFEED_PC,
Params.WIPELEN, Params.WIPEFEED_PC ' Params.WIPEDIR
Params.WIPELEN, Params.WIPEFEED_PC, Params.SPIRALVASELEN ' Params.WIPEDIR
m_DbParam = DbMachining.CathegoryList.FirstOrDefault(Function(y) y.Type = MachiningCathegory.Cathegories.LINK).MachiningParamList.FirstOrDefault(Function(z) z.Type = m_Type)
Case Params.RIBSSTRANDWIDTH, Params.RIBSOVERLAP, Params.RIBSSTRANDOVERLAP, Params.RIBSSTRANDCOUNT, Params.RIBSLINK, Params.RIBSLINKFILLET, Params.RIBSMERGEWITHSHELL, Params.RIBSINVERTMERGEDSHELLMAINLINK, Params.RIBSINVERTORDER, Params.RIBSINVERTDIRECTION,
Params.RIBSLEADININVERT, Params.RIBSLEADINLEN, Params.RIBSLEADOUTINVERT, Params.RIBSLEADOUTLEN, Params.RIBSLEADOUTCOASTING,
@@ -711,6 +721,8 @@ Public Class CurrNumericMachiningParam
EgtSetInfo(nPartId, MAC_WIPELEN, sWriteValue)
Case Params.WIPEFEED_PC
EgtSetInfo(nPartId, MAC_WIPEFEEDPU, sWriteValue)
Case Params.SPIRALVASELEN
EgtSetInfo(nPartId, MAC_SPIRALVASELEN, sWriteValue)
'Case Params.WIPEDIR
' EgtSetInfo(nPartId, MAC_WIPEDIR, sWriteValue)
Case Params.FLOORCOUNT
@@ -1179,6 +1191,7 @@ Public Class CurrCheckMachiningParam
m_bValue = value
NotifyPropertyChanged(NameOf(bValue))
NotifyPropertyChanged(NameOf(bIsModifiedFromDb))
ManageDependencyParam()
End Set
End Property
@@ -140,7 +140,7 @@ Public Class CurrMachiningPanelVM
WriteMachiningParam(nIndex, MAC_GUID, sNewMachGUID.ToString())
WriteMachiningParam(nIndex, MAC_NAME, SaveInDbWndVM.sName)
' creo categoria materiali con attivo materiale corrente
Dim MaterialCathegory As New MachiningCathegory(MachiningCathegory.Cathegories.MATERIALS, 0)
Dim MaterialCathegory As New MachiningCathegory(MachiningCathegory.Cathegories.MATERIALS, 0, m_CurrMachining)
Dim SelMaterialParam As MaterialMachiningParam = MaterialCathegory.MachiningParamList.FirstOrDefault(Function(x As MaterialMachiningParam) x.sGUID = Map.refTopPanelVM.SelMaterial.sGUID)
If Not IsNothing(SelMaterialParam) Then
SelMaterialParam.bValue = True
+35 -28
View File
@@ -1,30 +1,37 @@
<StackPanel x:Class="InstrumentPanelV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:local="clr-namespace:Icarus"
IsEnabled="{Binding InstrumentPanel_IsEnabled}"
Orientation="Horizontal" Background="{DynamicResource EgaltechWhite}">
<Border x:Class="InstrumentPanelV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:local="clr-namespace:Icarus"
IsEnabled="{Binding InstrumentPanel_IsEnabled}"
Background="{DynamicResource EgaltechWhite}"
CornerRadius="0,4,0,0"
Padding="0,0,8,0">
<StackPanel Orientation="Horizontal">
<local:CheckedImageToggleButton ToolTip="{Binding GetDist_ToolTip}"
IsChecked="{Binding GetDistIsChecked}"
ImageSource="/Resources/InstrumentPanel/GetDist.png"
CheckedImageSource="/Resources/InstrumentPanel/GetDist_White.png"
Width="15"
Margin="2.5,0,2.5,0"
Style="{StaticResource BottomPanel_ToggleButton}">
<local:CheckedImageToggleButton.Resources>
<sys:Double x:Key="ToggleButton.Image.Height">25</sys:Double>
<sys:Double x:Key="ToggleButton.Image.Width">25</sys:Double>
</local:CheckedImageToggleButton.Resources>
</local:CheckedImageToggleButton>
<local:CheckedImageToggleButton ToolTip="{Binding EdgeAnalysis_ToolTip}"
IsChecked="{Binding bEdgeAnalysis_IsChecked}"
IsEnabled="{Binding bEdgeAnalysis_IsEnabled}"
ImageSource="/Resources/InstrumentPanel/EdgeAnalysis.png"
CheckedImageSource="/Resources/InstrumentPanel/EdgeAnalysis_White.png"
Margin="2.5,0,2.5,0"
Style="{StaticResource BottomPanel_ToggleButton}">
</local:CheckedImageToggleButton>
</StackPanel>
<local:CheckedImageToggleButton ToolTip="{Binding GetDist_ToolTip}"
IsChecked="{Binding GetDistIsChecked}"
ImageSource="/Resources/InstrumentPanel/GetDist.png"
CheckedImageSource="/Resources/InstrumentPanel/GetDist_White.png"
Width="15"
Margin="2.5,0,2.5,0"
Style="{StaticResource BottomPanel_ToggleButton}">
<local:CheckedImageToggleButton.Resources>
<sys:Double x:Key="ToggleButton.Image.Height">25</sys:Double>
<sys:Double x:Key="ToggleButton.Image.Width">25</sys:Double>
</local:CheckedImageToggleButton.Resources>
</local:CheckedImageToggleButton>
<local:CheckedImageToggleButton ToolTip="{Binding EdgeAnalysis_ToolTip}"
IsChecked="{Binding bEdgeAnalysis_IsChecked}"
IsEnabled="{Binding bEdgeAnalysis_IsEnabled}"
ImageSource="/Resources/InstrumentPanel/EdgeAnalysis.png"
CheckedImageSource="/Resources/InstrumentPanel/EdgeAnalysis_White.png"
Margin="2.5,0,2.5,0"
Style="{StaticResource BottomPanel_ToggleButton}">
</local:CheckedImageToggleButton>
</StackPanel>
</Border>
+43 -10
View File
@@ -148,13 +148,13 @@ Public Class Machining
m_sName = "New Machining"
End If
m_sOrigName = m_sName
m_CathegoryList.Add(New MachiningCathegory(MachiningCathegory.Cathegories.GENERAL, nIndex))
m_CathegoryList.Add(New MachiningCathegory(MachiningCathegory.Cathegories.LINK, nIndex))
m_CathegoryList.Add(New MachiningCathegory(MachiningCathegory.Cathegories.RIBS, nIndex))
m_CathegoryList.Add(New MachiningCathegory(MachiningCathegory.Cathegories.SHELL_NUMBER, nIndex))
m_CathegoryList.Add(New MachiningCathegory(MachiningCathegory.Cathegories.AUX_SOLID, nIndex))
m_CathegoryList.Add(New MachiningCathegory(MachiningCathegory.Cathegories.INFILL, nIndex))
m_CathegoryList.Add(New MachiningCathegory(MachiningCathegory.Cathegories.MATERIALS, nIndex))
m_CathegoryList.Add(New MachiningCathegory(MachiningCathegory.Cathegories.GENERAL, nIndex, Me))
m_CathegoryList.Add(New MachiningCathegory(MachiningCathegory.Cathegories.LINK, nIndex, Me))
m_CathegoryList.Add(New MachiningCathegory(MachiningCathegory.Cathegories.RIBS, nIndex, Me))
m_CathegoryList.Add(New MachiningCathegory(MachiningCathegory.Cathegories.SHELL_NUMBER, nIndex, Me))
m_CathegoryList.Add(New MachiningCathegory(MachiningCathegory.Cathegories.AUX_SOLID, nIndex, Me))
m_CathegoryList.Add(New MachiningCathegory(MachiningCathegory.Cathegories.INFILL, nIndex, Me))
m_CathegoryList.Add(New MachiningCathegory(MachiningCathegory.Cathegories.MATERIALS, nIndex, Me))
For Each Cathegory In m_CathegoryList
For Each MachiningParam In Cathegory.MachiningParamList
AddHandler MachiningParam.PropertyChanged, AddressOf OnMachiningParamPropertyChanged
@@ -315,11 +315,19 @@ Public Class MachiningCathegory
End Set
End Property
Protected m_Machining As Machining
Friend ReadOnly Property Machining As Machining
Get
Return m_Machining
End Get
End Property
Sub New()
End Sub
Sub New(Type As Cathegories, nIndex As Integer)
Sub New(Type As Cathegories, nIndex As Integer, Machining As Machining)
m_Machining = Machining
m_Type = Type
Select Case m_Type
Case Cathegories.GENERAL
@@ -361,7 +369,8 @@ Public Class MachiningCathegory
New NumericMachiningParam(MachiningParam.Params.COASTINGLEN, nIndex, Me),
New NumericMachiningParam(MachiningParam.Params.COASTINGFEED_PC, nIndex, Me),
New NumericMachiningParam(MachiningParam.Params.WIPELEN, nIndex, Me),
New NumericMachiningParam(MachiningParam.Params.WIPEFEED_PC, nIndex, Me)})
New NumericMachiningParam(MachiningParam.Params.WIPEFEED_PC, nIndex, Me),
New NumericMachiningParam(MachiningParam.Params.SPIRALVASELEN, nIndex, Me)})
'New NumericMachiningParam(MachiningParam.Params.WIPEDIR, nIndex, Me)})
Case Cathegories.RIBS
m_sName = "Ribs"
@@ -447,7 +456,12 @@ Public Class MachiningCathegory
Dim MachiningParam As ComboMachiningParam = MachiningParamList.FirstOrDefault(Function(z) z.Type = Param)
MachiningParam.ManageDependencyParam()
Next
Case Cathegories.RIBS
For Each Param In {MachiningParam.Params.SPIRALVASE}
Dim GeneralCathegory As MachiningCathegory = Machining.CathegoryList.FirstOrDefault(Function(z) z.Type = Cathegories.GENERAL)
Dim MachiningParam As CheckMachiningParam = GeneralCathegory.MachiningParamList.FirstOrDefault(Function(z) z.Type = Param)
MachiningParam.ManageDependencyParam(Me)
Next
Case Cathegories.RIBS
For Each Param In {MachiningParam.Params.RIBSTYPE}
Dim MachiningParam As ComboMachiningParam = MachiningParamList.FirstOrDefault(Function(z) z.Type = Param)
MachiningParam.ManageDependencyParam()
@@ -541,6 +555,7 @@ Public MustInherit Class MachiningParam
WIPELEN = 62
WIPEFEED_PC = 63
INNERSHELLWIDTH = 64
SPIRALVASELEN = 65
'WIPEDIR = 64
RIBSTYPE = 101
RIBSOVERLAP = 102
@@ -694,6 +709,8 @@ Public MustInherit Class MachiningParam
m_sName = "Wipe Len"
Case Params.WIPEFEED_PC
m_sName = "Wipe Feed [%]"
Case Params.SPIRALVASELEN
m_sName = "Spiral Trans Len"
Case Params.FLOORCOUNT
m_sName = "Floor Count"
Case Params.G0FEED
@@ -1044,6 +1061,9 @@ Public Class NumericMachiningParam
Case Params.WIPEFEED_PC
m_dValue = ReadMachiningParamDouble(nIndex, MAC_WIPEFEEDPU, 0)
m_bIsLen = False
Case Params.SPIRALVASELEN
m_dValue = ReadMachiningParamDouble(nIndex, MAC_SPIRALVASELEN, 0)
m_bIsLen = True
'Case Params.WIPEDIR
' m_dValue = ReadMachiningParamDouble(nIndex, MAC_WIPEDIR, 0)
' m_bIsLen = True
@@ -1270,6 +1290,8 @@ Public Class NumericMachiningParam
WriteMachiningParam(nIndex, MAC_WIPELEN, sWriteValue, sFilePath)
Case Params.WIPEFEED_PC
WriteMachiningParam(nIndex, MAC_WIPEFEEDPU, sWriteValue, sFilePath)
Case Params.SPIRALVASELEN
WriteMachiningParam(nIndex, MAC_SPIRALVASELEN, sWriteValue, sFilePath)
'Case Params.WIPEDIR
' WriteMachiningParam(nIndex, MAC_WIPEDIR, sWriteValue, sFilePath)
Case Params.FLOORCOUNT
@@ -1704,6 +1726,7 @@ Public Class CheckMachiningParam
Set(value As Boolean)
m_bValue = value
NotifyPropertyChanged(NameOf(bValue))
ManageDependencyParam()
End Set
End Property
@@ -1770,6 +1793,16 @@ Public Class CheckMachiningParam
m_bOrigValue = m_bValue
End Sub
Friend Sub ManageDependencyParam(Optional Cathegory As MachiningCathegory = Nothing)
' gestisco dis/attivazione parametri dipendenti
Select Case m_Type
Case Params.SPIRALVASE
Dim ShellCathegory As MachiningCathegory = If(Not IsNothing(Cathegory), Cathegory, m_Cathegory.Machining.CathegoryList.FirstOrDefault(Function(z) z.Type= MachiningCathegory.Cathegories.LINK))
Dim NumMachiningParam As NumericMachiningParam = ShellCathegory.MachiningParamList.FirstOrDefault(Function(z) z.Type = Params.SPIRALVASELEN)
NumMachiningParam.SetIsActive(m_bValue)
End Select
End Sub
Friend Overrides Sub WriteParamOnDb(nIndex As Integer, Optional sFilePath As String = "")
Select Case Type
Case Params.SPIRALVASE
+2 -2
View File
@@ -70,5 +70,5 @@ Imports System.Windows
' by using the '*' as shown below:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("3.1.2.1")>
<Assembly: AssemblyFileVersion("3.1.2.1")>
<Assembly: AssemblyVersion("3.1.2.2")>
<Assembly: AssemblyFileVersion("3.1.2.2")>
+38 -31
View File
@@ -1,33 +1,40 @@
<UniformGrid x:Class="ShowPanelV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:Icarus"
Rows="1" Background="{DynamicResource EgaltechWhite}">
<local:CheckedImageRadioButton ToolTip="{Binding RenderingWFToolTip}"
IsChecked="{Binding WireframeIsChecked}"
ImageSource="/Resources/ShowPanel/RenderingWF.png"
CheckedImageSource="/Resources/ShowPanel/RenderingWF_White.png"
Margin="2.5,0,2.5,0"
Style="{StaticResource BottomPanel_ToggleButton}"/>
<local:CheckedImageRadioButton ToolTip="{Binding RenderingHLToolTip}"
IsChecked="{Binding HiddenLineIsChecked}"
ImageSource="/Resources/ShowPanel/RenderingHL.png"
CheckedImageSource="/Resources/ShowPanel/RenderingHL_White.png"
Margin="2.5,0,2.5,0"
Style="{StaticResource BottomPanel_ToggleButton}"/>
<local:CheckedImageRadioButton ToolTip="{Binding RenderingSHToolTip}"
IsChecked="{Binding ShadingIsChecked}"
ImageSource="/Resources/ShowPanel/RenderingSH.png"
CheckedImageSource="/Resources/ShowPanel/RenderingSH_White.png"
Margin="2.5,0,2.5,0"
Style="{StaticResource BottomPanel_ToggleButton}"/>
<local:CheckedImageToggleButton ToolTip="{Binding CurveDirToolTip}"
IsChecked="{Binding CurveDirIsChecked}"
ImageSource="/Resources/ShowPanel/CurveDir.png"
CheckedImageSource="/Resources/ShowPanel/CurveDir_White.png"
Margin="2.5,0,2.5,0"
Style="{StaticResource BottomPanel_ToggleButton}"/>
<Border x:Class="ShowPanelV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:Icarus"
Background="{DynamicResource EgaltechWhite}"
CornerRadius="4,0,0,0"
Padding="10,0,0,0">
<UniformGrid Rows="1">
<local:CheckedImageRadioButton ToolTip="{Binding RenderingWFToolTip}"
IsChecked="{Binding WireframeIsChecked}"
ImageSource="/Resources/ShowPanel/RenderingWF.png"
CheckedImageSource="/Resources/ShowPanel/RenderingWF_White.png"
Margin="2.5,0,2.5,0"
Style="{StaticResource BottomPanel_ToggleButton}"/>
<local:CheckedImageRadioButton ToolTip="{Binding RenderingHLToolTip}"
IsChecked="{Binding HiddenLineIsChecked}"
ImageSource="/Resources/ShowPanel/RenderingHL.png"
CheckedImageSource="/Resources/ShowPanel/RenderingHL_White.png"
Margin="2.5,0,2.5,0"
Style="{StaticResource BottomPanel_ToggleButton}"/>
<local:CheckedImageRadioButton ToolTip="{Binding RenderingSHToolTip}"
IsChecked="{Binding ShadingIsChecked}"
ImageSource="/Resources/ShowPanel/RenderingSH.png"
CheckedImageSource="/Resources/ShowPanel/RenderingSH_White.png"
Margin="2.5,0,2.5,0"
Style="{StaticResource BottomPanel_ToggleButton}"/>
<local:CheckedImageToggleButton ToolTip="{Binding CurveDirToolTip}"
IsChecked="{Binding CurveDirIsChecked}"
ImageSource="/Resources/ShowPanel/CurveDir.png"
CheckedImageSource="/Resources/ShowPanel/CurveDir_White.png"
Margin="2.5,0,2.5,0"
Style="{StaticResource BottomPanel_ToggleButton}"/>
</UniformGrid>
</UniformGrid>
</Border>