Compare commits

...

3 Commits

Author SHA1 Message Date
Nicola Pievani a18cba5261 Correzione zona di lettura FlattSawTick 2025-04-09 12:04:27 +02:00
Nicola Pievani 0e08cc7d0d Merge commit 'a2bb9e250c3e2714fede966545d6089080a023f2' into Features/Manage_Side_Machining_In_Flattening 2025-04-08 16:48:01 +02:00
Nicola Pievani 7565e2e0ed Aggiunto parametro per gestire offset spianatura 2025-04-07 14:23:51 +02:00
7 changed files with 43 additions and 35 deletions
+16 -7
View File
@@ -273,7 +273,7 @@ Public Class SelParkIndWD
Next Next
End Sub End Sub
' Restituisce il primo parcheggio attivo ( ' Restituisce il primo parcheggio attivo
Public Shared Function GetCurrentParkIndSelected() As ParkInd Public Shared Function GetCurrentParkIndSelected() As ParkInd
Dim ListParkInd As New List(Of ParkInd) Dim ListParkInd As New List(Of ParkInd)
SelParkIndWD.LoadParkInd(ListParkInd) SelParkIndWD.LoadParkInd(ListParkInd)
@@ -286,7 +286,7 @@ Public Class SelParkIndWD
Return Nothing Return Nothing
End Function End Function
' Restitusice il nome del file immagine del parcheggio (manance solo dell'Indice di parcheggio e dell'esetensione png) ' Restitusice il nome del file immagine del parcheggio (manca solo dell'Indice di parcheggio e dell'esetensione png)
Public Shared Function GetPathCurrProj() As String Public Shared Function GetPathCurrProj() As String
Dim nProj As Integer = m_MainWindow.m_CurrentProjectPageUC.GetCurrentProject() Dim nProj As Integer = m_MainWindow.m_CurrentProjectPageUC.GetCurrentProject()
Dim sParkPath As String = m_MainWindow.GetSaveDir() & "\" & Math.Abs(nProj).ToString("D4") & "_ParkInd_" Dim sParkPath As String = m_MainWindow.GetSaveDir() & "\" & Math.Abs(nProj).ToString("D4") & "_ParkInd_"
@@ -298,15 +298,20 @@ Public Class SelParkIndWD
Return sParkPath Return sParkPath
End Function End Function
Public Shared Sub CopyImgSvg(sNewFileName As String, Optional nCtx As Integer = -1) ' Dato il nome del progetto crea le immagini dei parcheggi
Public Shared Sub CopyImgSvg(sNewFileName As String, refListParkInd As List(Of ParkInd), Optional nCtx As Integer = -1)
If sNewFileName.EndsWith(".nge") Then If sNewFileName.EndsWith(".nge") Then
sNewFileName = sNewFileName.Remove(sNewFileName.Length - 4, 4) & "_ParkInd_" sNewFileName = sNewFileName.Remove(sNewFileName.Length - 4, 4) & "_ParkInd_"
End If End If
Dim Extension As String = ".svg" Dim Extension As String = ".svg"
If Not MainWindow.m_bShowSVGParkInd Then Extension = ".png" If Not MainWindow.m_bShowSVGParkInd Then Extension = ".png"
Dim ListParkInd As New List(Of ParkInd) Dim ListParkInd As New List(Of ParkInd)
' ricarico la lista If Not IsNothing(refListParkInd) Then
SelParkIndWD.LoadParkInd(ListParkInd, nCtx) ListParkInd = refListParkInd
Else
' ricarico la lista
SelParkIndWD.LoadParkInd(ListParkInd, nCtx)
End If
'SelParkIndWD.sActualProj = Path.GetFileNameWithoutExtension(sPath) 'SelParkIndWD.sActualProj = Path.GetFileNameWithoutExtension(sPath)
For Each ItemParkInd As ParkInd In ListParkInd For Each ItemParkInd As ParkInd In ListParkInd
If ItemParkInd.Ind <> 0 And ItemParkInd.Ind <> 999 And ItemParkInd.nPartInPark > 0 Then If ItemParkInd.Ind <> 0 And ItemParkInd.Ind <> 999 And ItemParkInd.nPartInPark > 0 Then
@@ -816,8 +821,12 @@ Public Module XMLReader
Canv.ViewBoxDim = ViewBoxDim Canv.ViewBoxDim = ViewBoxDim
' Elaboro i dati per avere la scalatura del disegno ' Elaboro i dati per avere la scalatura del disegno
Dim DimViewBox As String() = ViewBoxDim.ToString.Split(" ") Dim DimViewBox As String() = ViewBoxDim.ToString.Split(" ")
Dim DimX As Integer = Math.Abs(CInt(DimViewBox(2))) + Math.Abs(CInt(DimViewBox(0))) Dim DimX As Integer = 10
Dim DimY As Integer = Math.Abs(CInt(DimViewBox(3))) + Math.Abs(CInt(DimViewBox(1))) Dim DimY As Integer = 10
If DimViewBox.Count = 4 Then
DimX = Math.Abs(CInt(DimViewBox(2))) + Math.Abs(CInt(DimViewBox(0)))
DimY = Math.Abs(CInt(DimViewBox(3))) + Math.Abs(CInt(DimViewBox(1)))
End If
' Leggo in loop i tag: 'path' ' Leggo in loop i tag: 'path'
While Not m_xmlr.EOF While Not m_xmlr.EOF
+1
View File
@@ -343,6 +343,7 @@ Module ConstIni
Public Const K_DC_FLATT_HEADSIDE As String = "FlattHeadSide" Public Const K_DC_FLATT_HEADSIDE As String = "FlattHeadSide"
Public Const K_DC_FLATT_MACHTYPE As String = "FlattMachType" Public Const K_DC_FLATT_MACHTYPE As String = "FlattMachType"
Public Const K_DC_FLATT_ROTLOCK As String = "FlattRotLock" Public Const K_DC_FLATT_ROTLOCK As String = "FlattRotLock"
Public Const K_DC_FLATT_SAWTH As String = "FlattSawThick"
Public Const K_DC_FLAT_CHAINEDPATH As String = "ChainedPath" Public Const K_DC_FLAT_CHAINEDPATH As String = "ChainedPath"
Public Const K_DC_FLATT_POSX As String = "FlattPosX" Public Const K_DC_FLATT_POSX As String = "FlattPosX"
Public Const K_DC_FLATT_POSY As String = "FlattPosY" Public Const K_DC_FLATT_POSY As String = "FlattPosY"
+16
View File
@@ -407,6 +407,7 @@ Public Class FlatteningCut
If Not EgtSetCalcTool(sSaw, "H1", 1) Then Return If Not EgtSetCalcTool(sSaw, "H1", 1) Then Return
' Trasformo in posizione punta utensile in basso ' Trasformo in posizione punta utensile in basso
If Not EgtGetCalcTipFromPositions(dL1, dL2, dL3, vAng, True, m_ptTipP2) Then Return If Not EgtGetCalcTipFromPositions(dL1, dL2, dL3, vAng, True, m_ptTipP2) Then Return
End If End If
' Calcolo direzione asse lama ' Calcolo direzione asse lama
If Not EgtGetCalcToolDirFromAngles(dR1, dR2, m_vtToolP2) Then Return If Not EgtGetCalcToolDirFromAngles(dR1, dR2, m_vtToolP2) Then Return
@@ -725,6 +726,21 @@ Public Class FlatteningCut
Dim ptStart As Point3d = m_ptTipP1 Dim ptStart As Point3d = m_ptTipP1
ptStart.z = 0 ptStart.z = 0
Dim nCutId = EgtCreateLinePDL(nLayerId, ptStart, m_dAngO, m_dLen) Dim nCutId = EgtCreateLinePDL(nLayerId, ptStart, m_dAngO, m_dLen)
' -- APPLICO OFFSET AI TAGLI -- And PointModeCmBx.SelectedIndex = PT_MODE.SAW
If m_nTool = TOOL.SAW And PointModeCmBx.SelectedIndex = PT_MODE.SAW Then
' Applico un offset al taglio:
Dim vtOffs As New Vector3d
EgtStartVector(nCutId, GDB_RT.GLOB, vtOffs)
vtOffs.Rotate(Vector3d.Z_AX, 90)
Dim SawThick As Double = GetFootPrintTool()
Dim DirOffs As Double = GetPrivateProfileDouble(S_DIRECTCUTS, K_DC_FLATT_SAWTH, 0, m_MainWindow.GetIniFile)
Dim vtNormTool As Vector3d = m_vtToolP1
vtNormTool.Normalize()
EgtOutLog("Offset flattening: " & DirOffs.ToString & "*" & SawThick.ToString)
If DirOffs <> 0 Then EgtMove(nCutId, vtOffs * DirOffs * SawThick, GDB_RT.GLOB)
End If
EgtSetInfo(nCutId, INFO_DIRECTCUT, 1) EgtSetInfo(nCutId, INFO_DIRECTCUT, 1)
' Imposto affondamento e angolo di fianco sul taglio ' Imposto affondamento e angolo di fianco sul taglio
EgtSetInfo(nCutId, INFO_DEPTH, m_dDepth) EgtSetInfo(nCutId, INFO_DEPTH, m_dDepth)
+1 -1
View File
@@ -26,7 +26,7 @@ Class MainWindow
' Variabile che definisce l'avvio forzato in modalità FRAME ' Variabile che definisce l'avvio forzato in modalità FRAME
Friend m_OnlyFrame As Boolean = False Friend m_OnlyFrame As Boolean = False
Public Shared m_bShowSVGParkInd As Boolean = False Public Shared m_bShowSVGParkInd As Boolean = True
' Dichiarazione delle Page UserControl ' Dichiarazione delle Page UserControl
Friend m_WorkInProgressPageUC As WorkInProgressPageUC Friend m_WorkInProgressPageUC As WorkInProgressPageUC
+4 -2
View File
@@ -782,9 +782,9 @@ Public Class CurrentProjectPageUC
If GetPrivateProfileInt(S_GENERAL, K_ENABLEDXFPARK, 0, m_MainWindow.GetIniFile) <> 0 Then If GetPrivateProfileInt(S_GENERAL, K_ENABLEDXFPARK, 0, m_MainWindow.GetIniFile) <> 0 Then
' Gestione visulizzazione lista pezzi in parcheggio ' Gestione visulizzazione lista pezzi in parcheggio
Dim sNewFileName As String = SelParkIndWD.GetPathCurrProj() Dim sNewFileName As String = SelParkIndWD.GetPathCurrProj()
SelParkIndWD.CopyImgSvg(sPath) SelParkIndWD.CopyImgSvg(sPath, Nothing)
SelParkIndWD.sActualProj = String.Empty SelParkIndWD.sActualProj = String.Empty
SelParkIndWD.CopyImgSvg(sNewFileName) SelParkIndWD.CopyImgSvg(sNewFileName, Nothing)
End If End If
'-------------------------------------------------------------------------------- '--------------------------------------------------------------------------------
@@ -798,6 +798,8 @@ Public Class CurrentProjectPageUC
m_MruFiles.Add(sPath) m_MruFiles.Add(sPath)
' Dichiaro progetto non modificato ' Dichiaro progetto non modificato
EgtResetModified() EgtResetModified()
EgtOutLog("PROJECT " & CurrProjName & " SAVED")
Return True Return True
End Function End Function
+1 -1
View File
@@ -514,7 +514,7 @@ Public Class OpenPageUC
' Gestione visulizzazione lista pezzi in parcheggio ' Gestione visulizzazione lista pezzi in parcheggio
Dim nProj As Integer = m_MainWindow.m_CurrentProjectPageUC.GetCurrentProject() Dim nProj As Integer = m_MainWindow.m_CurrentProjectPageUC.GetCurrentProject()
Dim sNewFileName As String = m_MainWindow.GetSaveDir() & "\" & Math.Abs(nProj).ToString("D4") & "_ParkInd_" Dim sNewFileName As String = m_MainWindow.GetSaveDir() & "\" & Math.Abs(nProj).ToString("D4") & "_ParkInd_"
SelParkIndWD.CopyImgSvg(sNewFileName, OpenScene.GetCtx) SelParkIndWD.CopyImgSvg(sNewFileName, Nothing, OpenScene.GetCtx)
SelParkIndWD.sActualProj = String.Empty SelParkIndWD.sActualProj = String.Empty
'-------------------------------------------------------------------------------- '--------------------------------------------------------------------------------
+4 -24
View File
@@ -100,38 +100,18 @@ Public Class ProjectMgrUC
' Scelta tavola della macchina ' Scelta tavola della macchina
Dim nTabInd As Integer = ChooseTable() Dim nTabInd As Integer = ChooseTable()
' Creo una copia di tutte le immagini usata nella lista dei parcheggi ' Ricarico la lista dei parcheggi del progetto precedente a quello nuovo
Dim ListParkInd As New List(Of ParkInd) Dim ListParkInd As New List(Of ParkInd)
SelParkIndWD.LoadParkInd(ListParkInd) SelParkIndWD.LoadParkInd(ListParkInd)
' Creo nuovo progetto ' Creo nuovo progetto
m_CurrProjPage.NewProject(nTabInd, bRetainParkedParts) m_CurrProjPage.NewProject(nTabInd, bRetainParkedParts)
' Gestione visulizzazione lista pezzi in parcheggio ' Gestione visulizzazione lista pezzi in parcheggio
m_MainWindow.m_CadCutPageUC.m_NestPage.ReloadListParkInd()
Dim sNewFileName As String = SelParkIndWD.GetPathCurrProj() Dim sNewFileName As String = SelParkIndWD.GetPathCurrProj()
SelParkIndWD.CopyImgSvg(sNewFileName) SelParkIndWD.CopyImgSvg(sNewFileName, ListParkInd)
'Dim Extension As String = ".svg"
'If Not MainWindow.m_bShowSVGParkInd Then Extension = ".png"
'For Each ItemParkInd As ParkInd In ListParkInd
' If ItemParkInd.Ind <> 0 And ItemParkInd.Ind <> 999 And ItemParkInd.nPartInPark > 0 Then
' Try
' Dim sNewFile As String = sNewFileName & ItemParkInd.Ind.ToString & Extension
' If MainWindow.m_bShowSVGParkInd Then
' WriteMyXML(sNewFile, ItemParkInd.LocalMyCanvas)
' Else
' If File.Exists(sNewFile) Then
' File.Delete(sNewFile)
' End If
' File.Copy(If(Extension = ".svg", ItemParkInd.Svg, ItemParkInd.Img), sNewFile)
' End If
' Catch ex As Exception
' EgtOutLog("Copia immagine " & If(Extension = ".svg", ItemParkInd.Svg, ItemParkInd.Img) & " di ParkInd non roiscita")
' End Try
' End If
'Next
m_MainWindow.m_CadCutPageUC.m_NestPage.ReloadListParkInd()
m_MainWindow.m_CadCutPageUC.m_NestPage.ReloadListParkInd()
' Gestione stato FastGrid ' Gestione stato FastGrid
m_MainWindow.m_CadCutPageUC.m_FastGridSlabManager.OnPostNewProject() m_MainWindow.m_CadCutPageUC.m_FastGridSlabManager.OnPostNewProject()