Compare commits

...

7 Commits

Author SHA1 Message Date
Nicola Pievani aed8483ede Merge commit '349a1429c12a249966201c56b23c13fb08a79d51' 2024-03-01 14:47:08 +01:00
Nicola Pievani 349a1429c1 Gestione colore entità e cambio versione 2024-03-01 14:46:41 +01:00
Nicola Pievani 29c528fa0e Merge commit '0fa0d4e6123c5d07dfcb1c9601f2d968e21484d3' into develop 2024-02-14 18:57:33 +01:00
Nicola Pievani 0fa0d4e612 Gestione Engrave in ImportDXF 2024-02-14 18:57:19 +01:00
Nicola Pievani 600da701b1 Merge commit 'c534b459aeb33e06b2f2f41d6eee978d92ab26b9' into develop 2024-02-14 13:12:40 +01:00
Nicola Pievani 86e6a21d63 Merge commit 'd7522c4eb89d002ee0567337d1f371e0b2058961' 2024-02-13 15:15:15 +01:00
Nicola Pievani 7a26984f95 Merge commit '3a76d6c91a771f8644e33d5b7d2c46d1e0905e4c' 2024-01-24 11:56:09 +01:00
7 changed files with 275 additions and 25 deletions
+1
View File
@@ -114,6 +114,7 @@ Module ConstIni
Public Const K_FILOTOPOFFSET As String = "FiloTopOffset"
Public Const K_FILOTOPDEPTH As String = "FiloTopDepth"
Public Const K_FILOTOPROUNDOFF As String = "FiloTopRoundOff"
Public Const K_TEXTCOLORENT As String = "TextColorEnt"
Public Const S_NEST As String = "Nest"
Public Const K_DIRECT As String = "Direct"
+1 -1
View File
@@ -112,7 +112,7 @@ Public Class DxfImportSceneHostV
Private Sub OnMouseDownScene(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles ImportDxfScene.OnMouseDownScene
' Solo se in modalità angoli o gocciolatoio su lati esterni
If DxfImportWindowMap.refDxfImportWindowVM.SideAngle_IsChecked Or DxfImportWindowMap.refDxfImportWindowVM.Drip_IsChecked Then
If DxfImportWindowMap.refDxfImportWindowVM.SideAngle_IsChecked Or DxfImportWindowMap.refDxfImportWindowVM.Drip_IsChecked Or DxfImportWindowMap.refDxfImportWindowVM.Engrave_IsChecked Then
OnMouseDownSceneSideAngle(e)
ElseIf DxfImportWindowMap.refDxfImportWindowVM.FiloTop_IsChecked Then
OnMouseDownSceneFiloTop(e)
+199 -8
View File
@@ -6,7 +6,193 @@
Title="{Binding TitleMsg}"
IsMinimizable="False"
ShowInTaskbar="False"
Style="{DynamicResource {x:Type EgtWPFLib5:EgtCustomWindow}}" WindowStartupLocation="CenterOwner">
Style="{DynamicResource {x:Type EgtWPFLib5:EgtCustomWindow}}" WindowStartupLocation="CenterOwner"
xmlns:theme="clr-namespace:Microsoft.Windows.Themes;assembly=PresentationFramework.Aero">
<EgtWPFLib5:EgtCustomWindow.Resources>
<!--gradiente colore-->
<!--<Style x:Key="ScrollBarButton" TargetType="{x:Type RepeatButton}">
<Setter Property="OverridesDefaultStyle" Value="true"/>
<Setter Property="Focusable" Value="false"/>
<Setter Property="IsTabStop" Value="false"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type RepeatButton}">
<theme:ScrollChrome x:Name="Chrome" RenderPressed="{TemplateBinding IsPressed}" RenderMouseOver="{TemplateBinding IsMouseOver}" SnapsToDevicePixels="true" theme:ScrollChrome.ScrollGlyph="{TemplateBinding theme:ScrollChrome.ScrollGlyph}"/>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>-->
<Style x:Key="ScrollBarThumb" TargetType="{x:Type Thumb}">
<Setter Property="OverridesDefaultStyle" Value="true"/>
<Setter Property="IsTabStop" Value="false"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Thumb}">
<Border x:Name="Background" CornerRadius="0" Background="Transparent" BorderThickness="{TemplateBinding BorderThickness}" BorderBrush="{TemplateBinding BorderBrush}">
<Grid Background="Transparent" Margin="1">
<Border Opacity="0" x:Name="BackgroundAnimation" Background="Transparent" />
<Rectangle x:Name="BackgroundGradient" RadiusX="8" RadiusY="8" Fill="#FF095CA8" Stroke="#1C1D22" StrokeThickness="0.5">
<!--<Rectangle.Fill>
<LinearGradientBrush StartPoint=".7,0" EndPoint=".7,1">
<GradientStop Color="#1C1D22" Offset="0.375" />
<GradientStop Color="#1C1D22" Offset="0.625" />
</LinearGradientBrush>
</Rectangle.Fill>-->
</Rectangle>
</Grid>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!--<Style x:Key="HorizontalScrollBarPageButton" TargetType="{x:Type RepeatButton}">
<Setter Property="OverridesDefaultStyle" Value="true"/>
<Setter Property="Background" Value="Transparent"/>
<Setter Property="Focusable" Value="false"/>
<Setter Property="IsTabStop" Value="false"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type RepeatButton}">
<Rectangle Fill="{TemplateBinding Background}" Height="{TemplateBinding Height}" Width="{TemplateBinding Width}"/>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>-->
<Style x:Key="VerticalScrollBarPageButton" TargetType="{x:Type RepeatButton}">
<Setter Property="OverridesDefaultStyle" Value="true"/>
<Setter Property="Background" Value="Transparent"/>
<Setter Property="Focusable" Value="false"/>
<Setter Property="IsTabStop" Value="false"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type RepeatButton}">
<Rectangle Fill="{TemplateBinding Background}" Height="{TemplateBinding Height}" Width="{TemplateBinding Width}"/>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="ScrollBarStyle1" TargetType="{x:Type ScrollBar}">
<Setter Property="Background" Value="Transparent"/>
<Setter Property="Stylus.IsPressAndHoldEnabled" Value="false"/>
<Setter Property="Stylus.IsFlicksEnabled" Value="false"/>
<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}"/>
<Setter Property="Width" Value="{DynamicResource {x:Static SystemParameters.VerticalScrollBarWidthKey}}"/>
<Setter Property="MinWidth" Value="{DynamicResource {x:Static SystemParameters.VerticalScrollBarWidthKey}}"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ScrollBar}">
<Grid x:Name="Bg" Background="{TemplateBinding Background}" SnapsToDevicePixels="true">
<Grid.RowDefinitions>
<RowDefinition MaxHeight="1"/>
<RowDefinition Height="0.00001*"/>
<RowDefinition MaxHeight="1"/>
</Grid.RowDefinitions>
<!--<RepeatButton Command="{x:Static ScrollBar.LineUpCommand}" IsEnabled="{TemplateBinding IsMouseOver}" />-->
<Track x:Name="PART_Track" IsDirectionReversed="true" IsEnabled="{TemplateBinding IsMouseOver}" Grid.Row="1">
<Track.DecreaseRepeatButton>
<RepeatButton Command="{x:Static ScrollBar.PageUpCommand}" Style="{StaticResource VerticalScrollBarPageButton}"/>
</Track.DecreaseRepeatButton>
<Track.IncreaseRepeatButton>
<RepeatButton Command="{x:Static ScrollBar.PageDownCommand}" Style="{StaticResource VerticalScrollBarPageButton}"/>
</Track.IncreaseRepeatButton>
<Track.Thumb>
<Thumb Style="{StaticResource ScrollBarThumb}"/>
</Track.Thumb>
</Track>
<!--<RepeatButton Command="{x:Static ScrollBar.LineDownCommand}" IsEnabled="{TemplateBinding IsMouseOver}" Grid.Row="2" theme:ScrollChrome.ScrollGlyph="DownArrow"/>-->
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsEnabled" Value="false">
<Setter Property="Background" TargetName="Bg" Value="Transparent"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
<!--<Style.Triggers>
<Trigger Property="Orientation" Value="Horizontal">
<Setter Property="Width" Value="Auto"/>
<Setter Property="MinWidth" Value="0"/>
<Setter Property="Height" Value="{DynamicResource {x:Static SystemParameters.HorizontalScrollBarHeightKey}}"/>
<Setter Property="MinHeight" Value="{DynamicResource {x:Static SystemParameters.HorizontalScrollBarHeightKey}}"/>
<Setter Property="Background" Value="Transparent"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ScrollBar}">
<Grid x:Name="Bg" Background="{TemplateBinding Background}" SnapsToDevicePixels="true">
<Grid.ColumnDefinitions>
<ColumnDefinition MaxWidth="{DynamicResource {x:Static SystemParameters.HorizontalScrollBarButtonWidthKey}}"/>
<ColumnDefinition Width="0.00001*"/>
<ColumnDefinition MaxWidth="{DynamicResource {x:Static SystemParameters.HorizontalScrollBarButtonWidthKey}}"/>
</Grid.ColumnDefinitions>
<RepeatButton Command="{x:Static ScrollBar.LineLeftCommand}" IsEnabled="{TemplateBinding IsMouseOver}" theme:ScrollChrome.ScrollGlyph="LeftArrow" Style="{StaticResource CustomScrollBarButton}"/>
<Track x:Name="PART_Track" Grid.Column="1" IsEnabled="{TemplateBinding IsMouseOver}">
<Track.DecreaseRepeatButton>
<RepeatButton Command="{x:Static ScrollBar.PageLeftCommand}" Style="{StaticResource CustomScrollBarButton}"/>
</Track.DecreaseRepeatButton>
<Track.IncreaseRepeatButton>
<RepeatButton Command="{x:Static ScrollBar.PageRightCommand}" Style="{StaticResource CustomScrollBarButton}"/>
</Track.IncreaseRepeatButton>
<Track.Thumb>
<Thumb Style="{StaticResource ScrollBarThumb}"/>
</Track.Thumb>
</Track>
<RepeatButton Command="{x:Static ScrollBar.LineRightCommand}" Grid.Column="2" IsEnabled="{TemplateBinding IsMouseOver}" theme:ScrollChrome.ScrollGlyph="RightArrow" Style="{StaticResource CustomScrollBarButton}"/>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsEnabled" Value="false">
<Setter Property="Background" TargetName="Bg" Value="Transparent"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Trigger>
</Style.Triggers>-->
</Style>
<Style x:Key="ScrollViewerStyle1" TargetType="{x:Type ScrollViewer}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ScrollViewer}">
<Grid x:Name="Grid" Background="{TemplateBinding Background}">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Rectangle x:Name="Corner" Grid.Column="1" Fill="{StaticResource Omag_Black}" Grid.Row="1"/>
<ScrollContentPresenter x:Name="PART_ScrollContentPresenter" CanHorizontallyScroll="False" ContentTemplate="{TemplateBinding ContentTemplate}" CanVerticallyScroll="False" Grid.Column="0" Content="{TemplateBinding Content}" CanContentScroll="{TemplateBinding CanContentScroll}" Margin="{TemplateBinding Padding}" Grid.Row="0"/>
<ScrollBar Style="{DynamicResource ScrollBarStyle1}" x:Name="PART_VerticalScrollBar"
AutomationProperties.AutomationId="VerticalScrollBar" Cursor="Arrow" Grid.Column="1"
Maximum="{TemplateBinding ScrollableHeight}" Minimum="0" Grid.Row="0"
Value="{Binding VerticalOffset, Mode=OneWay, RelativeSource={RelativeSource TemplatedParent}}" ViewportSize="{TemplateBinding ViewportHeight}" Visibility="{TemplateBinding ComputedVerticalScrollBarVisibility}"
Margin="2,0,0,0"/>
<ScrollBar Style="{DynamicResource ScrollBarStyle1}" x:Name="PART_HorizontalScrollBar"
AutomationProperties.AutomationId="HorizontalScrollBar" Cursor="Arrow" Grid.Column="0"
Maximum="{TemplateBinding ScrollableWidth}" Minimum="0" Orientation="Horizontal" Grid.Row="1"
Value="{Binding HorizontalOffset, Mode=OneWay, RelativeSource={RelativeSource TemplatedParent}}" ViewportSize="{TemplateBinding ViewportWidth}" Visibility="{TemplateBinding ComputedHorizontalScrollBarVisibility}"/>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="IsEnabled" Value="false">
<Setter Property="Foreground" Value="{DynamicResource Omag_Blue}"/>
</Trigger>
</Style.Triggers>
</Style>
</EgtWPFLib5:EgtCustomWindow.Resources>
<DockPanel>
@@ -84,7 +270,7 @@
</UniformGrid>
</GroupBox>
<UniformGrid Columns="4"
<UniformGrid Columns="5"
DockPanel.Dock="Top"
IsEnabled="{Binding SideEntity_IsEnabled}"
Margin="0,0,0,5">
@@ -98,6 +284,10 @@
IsChecked="{Binding FiloTop_IsChecked}"
Style="{StaticResource CompoWindow_WrapToggleButton}"/>
<ToggleButton Content="{Binding EngraveMsg}"
IsChecked="{Binding Engrave_IsChecked}"
Style="{StaticResource CompoWindow_WrapToggleButton}"/>
<!--Incidi da sotto-->
<ToggleButton Content="{Binding DripMsg}"
IsChecked="{Binding Drip_IsChecked}"
@@ -122,13 +312,12 @@
Style="{StaticResource OptionPanel_TextButton}"/>
</UniformGrid>
<GroupBox Header="Dati pezzo"
<GroupBox Header="Dati pezzo"
BorderThickness="{StaticResource BorderGpBx_Thickness}"
Foreground="{StaticResource Omag_White}"
Margin="0">
<StackPanel>
<ScrollViewer Style="{DynamicResource ScrollViewerStyle1}" VerticalScrollBarVisibility="Auto" Focusable="False">
<StackPanel>
<Grid Visibility="{Binding PartData_Visibility}"
Margin="0,0,0,10">
<Grid.ColumnDefinitions>
@@ -178,10 +367,12 @@
TextWrapping="Wrap"
TextAlignment="Center"
Margin="0,0,0,20"/>
<ContentControl VerticalAlignment="Center"
Content="{Binding SideEntityControl}"/>
Content="{Binding SideEntityControl}" ScrollViewer.VerticalScrollBarVisibility="Visible"/>
</StackPanel>
</ScrollViewer>
</GroupBox>
</DockPanel>
+59 -5
View File
@@ -142,7 +142,7 @@ Public Class DxfImportWindowVM
Return m_SideAngle_IsChecked
End Get
Set(value As Boolean)
If m_Drip_IsChecked Or m_UnderDrill_IsChecked Or m_FiloTop_IsChecked Then Return
If m_Drip_IsChecked Or m_UnderDrill_IsChecked Or m_FiloTop_IsChecked Or m_Engrave_IsChecked Then Return
m_SideAngle_IsChecked = value
If value Then
' Aggiungo regioni per percorsi interni
@@ -190,7 +190,7 @@ Public Class DxfImportWindowVM
Return m_FiloTop_IsChecked
End Get
Set(value As Boolean)
If m_SideAngle_IsChecked Or m_Drip_IsChecked Or m_UnderDrill_IsChecked Then Return
If m_SideAngle_IsChecked Or m_Drip_IsChecked Or m_UnderDrill_IsChecked Or m_Engrave_IsChecked Then Return
m_FiloTop_IsChecked = value
If value Then
' Aggiungo regioni per percorsi interni
@@ -233,13 +233,61 @@ Public Class DxfImportWindowVM
End Set
End Property
Private m_Engrave_IsChecked As Boolean
Public Property Engrave_IsChecked As Boolean
Get
Return m_Engrave_IsChecked
End Get
Set(value As Boolean)
If m_Drip_IsChecked Or m_UnderDrill_IsChecked Or m_FiloTop_IsChecked Or m_SideAngle_IsChecked Then Return
m_Engrave_IsChecked = value
If value Then
' Aggiungo regioni per percorsi interni
AdjustSelectRegions()
' Messaggio di selezione contorno
SetOutputMessage(EgtMsg(MSG_DRAWPAGEUC + 6), MSG_TYPE.INFO) ' Selezionare un contorno
' Imposto modalità sideangle
m_SideEntityControlVM = New SideEntityControlVM(SideEntityControlVM.CallingWindowOpt.DXFIMPORT,
DxfImportWindowMap.refDxfImportSceneHostV.ImportDxfScene,
SideEntityControlVM.ModeOpt.ENGRAVE)
SideEntityControl = New SideEntityControlV(m_SideEntityControlVM)
Open_IsEnabled = False
Type_IsEnabled = False
Measure_IsEnabled = False
PartData_Visibility = Visibility.Collapsed
OrderList_Visibility = Visibility.Collapsed
OkIsEnabled = False
Else
' Rimuovo regioni per percorsi interni
RemoveSelectRegions()
m_SideEntityControlVM.Close()
Open_IsEnabled = True
Type_IsEnabled = True
Measure_IsEnabled = True
PartData_Visibility = Visibility.Visible
OrderList_Visibility = Visibility.Visible
OkIsEnabled = True
m_SideEntityControlVM = Nothing
SideEntityControl = Nothing
' Elimino scritte angoli per input e inserisco quelle definitive
SideEntityControlVM.WriteSideAngleForNest(DxfImportWindowMap.refDxfImportSceneHostV.ImportDxfScene.GetCtx())
' Deseleziono tutto
DxfImportWindowMap.refDxfImportSceneHostV.Deselect()
' Pulisco area messaggi
ClearOutputMessage()
End If
NotifyPropertyChanged("EngraveIsChecked")
EgtZoom(ZM.ALL)
End Set
End Property
Private m_Drip_IsChecked As Boolean
Public Property Drip_IsChecked As Boolean
Get
Return m_Drip_IsChecked
End Get
Set(value As Boolean)
If m_SideAngle_IsChecked Or m_UnderDrill_IsChecked Or m_FiloTop_IsChecked Then Return
If m_SideAngle_IsChecked Or m_UnderDrill_IsChecked Or m_FiloTop_IsChecked Or m_Engrave_IsChecked Then Return
m_Drip_IsChecked = value
If value Then
' Messaggio di selezione contorno
@@ -283,7 +331,7 @@ Public Class DxfImportWindowVM
Return m_UnderDrill_IsChecked
End Get
Set(value As Boolean)
If m_SideAngle_IsChecked Or m_Drip_IsChecked Or m_FiloTop_IsChecked Then Return
If m_SideAngle_IsChecked Or m_Drip_IsChecked Or m_FiloTop_IsChecked Or m_Engrave_IsChecked Then Return
m_UnderDrill_IsChecked = value
If value Then
' Aggiungo regioni di selezione per percorsi interni
@@ -493,6 +541,12 @@ Public Class DxfImportWindowVM
End Get
End Property
Public ReadOnly Property EngraveMsg As String
Get
Return EgtMsg(90397)
End Get
End Property
Public ReadOnly Property DripMsg As String
Get
Return EgtMsg(MSG_IMPORTPAGEUC + 8)
@@ -844,7 +898,7 @@ Public Class DxfImportWindowVM
Friend Sub SelectedPartChanged()
' Se sono in modalità inclinazioni o gocciolatoio calcolo lati inclinabili e creo testi
If SideAngle_IsChecked() Or Drip_IsChecked() Or FiloTop_IsChecked Then
If SideAngle_IsChecked() Or Drip_IsChecked() Or FiloTop_IsChecked Or Engrave_IsChecked Then
m_SideEntityControlVM.ReLoadSideAnglePage(SideEntityControlVM.CallingWindowOpt.DXFIMPORT)
End If
End Sub
+2 -2
View File
@@ -223,8 +223,8 @@ Public Class MainWindowM
' Verifico abilitazione nesting automatico
m_bAutoNestOption = Not String.IsNullOrWhiteSpace( sNestKey)
' Recupero livello e opzioni della chiave
Dim bKey As Boolean = EgtGetKeyLevel(9423, 2602, 1, m_nKeyLevel) And
EgtGetKeyOptions(9423, 2602, 1, m_nKeyOptions)
Dim bKey As Boolean = EgtGetKeyLevel(9423, 2603, 1, m_nKeyLevel) And
EgtGetKeyOptions(9423, 2603, 1, m_nKeyOptions)
' Verifico abilitazione prodotto
Dim bProd As Boolean = GetKeyOption(KEY_OPT.OFFICE_BASE)
' Inizializzazione generale di EgtInterface
+2 -2
View File
@@ -69,6 +69,6 @@ Imports System.Windows
' by using the '*' as shown below:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("2.6.2.2")>
<Assembly: AssemblyFileVersion("2.6.2.2")>
<Assembly: AssemblyVersion("2.6.3.1")>
<Assembly: AssemblyFileVersion("2.6.3.1")>
+11 -7
View File
@@ -7,6 +7,8 @@ Public Class SideEntityControlVM
Private Const INFO_ALZFRONT As String = "AF"
Private ColorText As New Color3d(0, 0, 0)
Public Enum ModeOpt As Integer
SIDEANGLE = 0 ' inclina lato
DRIP = 1 ' incidi da sotto
@@ -543,7 +545,7 @@ Public Class SideEntityControlVM
NotifyPropertyChanged("SideEntityList")
m_SideAngleCheck = If(GetMainPrivateProfileInt(S_COMPO, K_SIDEMODE, 0) = 0, True, False)
SideAngleEntity.dMaxSideAng = GetMainPrivateProfileDouble(S_SIDES, K_MAXSIDEANGLE, SideAngleEntity.STD_MAXSIDEANG)
GetMainPrivateProfileColor(S_SIDES, K_TEXTCOLORENT, ColorText)
'------------------ DEFINIZIONE LISTA LATI
' creo la lista dei parametri
If CallingWindow = CallingWindowOpt.COMPO Then
@@ -704,7 +706,7 @@ Public Class SideEntityControlVM
Else
TextLayer = EgtCreateGroup(PartId)
EgtSetName(TextLayer, SIDE_ANGLE_LAYER)
EgtSetColor(TextLayer, New Color3d(0, 0, 0))
EgtSetColor(TextLayer, ColorText)
End If
' Se modalità angoli di inclinazione...
@@ -773,7 +775,7 @@ Public Class SideEntityControlVM
If TextLayer = GDB_ID.NULL Then
TextLayer = EgtCreateGroup(PartId)
EgtSetName(TextLayer, SIDE_ANGLE_LAYER)
EgtSetColor(TextLayer, New Color3d(0, 0, 0))
EgtSetColor(TextLayer, ColorText)
End If
Dim PrevLine As Integer = EgtGetLastInGroup(LoopId)
@@ -1515,20 +1517,22 @@ Public Class SideEntityControlVM
End Sub
Shared Sub WriteSideAngleForNest(nCtx As Integer)
Dim LocalColor As New Color3d(0, 0, 0)
GetMainPrivateProfileColor(S_SIDES, K_TEXTCOLORENT, LocalColor)
' Imposto contesto corrente
EgtSetCurrentContext(nCtx)
Dim PartId As Integer = EgtGetFirstPart()
While PartId <> GDB_ID.NULL
' Se richiesti lati paralleli con misura sul top come in TRF, verifico e aggiusto
If GetMainPrivateProfileInt( S_SIDES, K_PARSIDE_AS_TRF, 0) <> 0 Then
AdjustAsTrfParSides( PartId)
End If
If GetMainPrivateProfileInt(S_SIDES, K_PARSIDE_AS_TRF, 0) <> 0 Then
AdjustAsTrfParSides(PartId)
End If
' Elimino eventuale precedente layer per testi
EgtErase(EgtGetFirstNameInGroup(PartId, SIDE_ANGLE_LAYER))
' Creo layer per testi nesting
Dim TextLayId As Integer = EgtCreateGroup(PartId)
EgtSetName(TextLayId, SIDE_ANGLE_LAYER)
EgtSetColor(TextLayId, New Color3d(0, 0, 128))
EgtSetColor(TextLayId, LocalColor)
' Opero su geometria esterna pezzo
WriteSideAngleOnLoop(EgtGetFirstNameInGroup(PartId, NAME_OUTLOOP), TextLayId)
' Ciclo su geometria interna pezzo