OmagCUT 2.1l4 :
- si salvano in memoria i dati dell'ultimo taglio diretto di ogni tipo per riproporli al rispettivo successivo (tranne Test Lama).
This commit is contained in:
+29
@@ -216,6 +216,35 @@ Module ConstIni
|
||||
Public Const K_DC_SING_OFFSET As String = "SingOffset"
|
||||
Public Const K_DC_SING_POSX As String = "SingPosX"
|
||||
Public Const K_DC_SING_POSY As String = "SingPosY"
|
||||
Public Const K_DC_MULT_DEPTH As String = "MultDepth"
|
||||
Public Const K_DC_MULT_LENGTH As String = "MultLength"
|
||||
Public Const K_DC_MULT_ANGH As String = "MultAngH"
|
||||
Public Const K_DC_MULT_ANGV As String = "MultAngV"
|
||||
Public Const K_DC_MULT_NUM As String = "MultNum"
|
||||
Public Const K_DC_MULT_DIM As String = "MultDim"
|
||||
Public Const K_DC_MULT_HEADSIDE As String = "MultHeadSide"
|
||||
Public Const K_DC_MULT_POSX As String = "MultPosX"
|
||||
Public Const K_DC_MULT_POSY As String = "MultPosY"
|
||||
Public Const K_DC_GRID_DEPTH As String = "GridDepth"
|
||||
Public Const K_DC_GRID_ANGH As String = "GridAngH"
|
||||
Public Const K_DC_GRID_ANGV As String = "GridAngV"
|
||||
Public Const K_DC_GRID_NUMX As String = "GridNumX"
|
||||
Public Const K_DC_GRID_DIMX As String = "GridDimX"
|
||||
Public Const K_DC_GRID_NUMY As String = "GridNumY"
|
||||
Public Const K_DC_GRID_DIMY As String = "GridDimY"
|
||||
Public Const K_DC_GRID_HEADSIDE As String = "GridHeadSide"
|
||||
Public Const K_DC_GRID_POSX As String = "GridPosX"
|
||||
Public Const K_DC_GRID_POSY As String = "GridPosY"
|
||||
Public Const K_DC_FLATT_DEPTH As String = "FlattDepth"
|
||||
Public Const K_DC_FLATT_ANGH As String = "FlattAngH"
|
||||
Public Const K_DC_FLATT_LENGTH As String = "FlattLength"
|
||||
Public Const K_DC_FLATT_WIDTH As String = "FlattWidth"
|
||||
Public Const K_DC_FLATT_OVERLAP As String = "FlattOverlap"
|
||||
Public Const K_DC_FLATT_HEADSIDE As String = "FlattHeadSide"
|
||||
Public Const K_DC_FLATT_MACHTYPE As String = "FlattMachType"
|
||||
Public Const K_DC_FLATT_ROTLOCK As String = "FlattRotLock"
|
||||
Public Const K_DC_FLATT_POSX As String = "FlattPosX"
|
||||
Public Const K_DC_FLATT_POSY As String = "FlattPosY"
|
||||
|
||||
Public Const S_STATDATA As String = "StatData"
|
||||
Public Const K_SD_DAY As String = "Day"
|
||||
|
||||
+53
-27
@@ -23,16 +23,16 @@ Public Class FlatteningCut
|
||||
Private m_bPointP2Ok As Boolean = False
|
||||
Private m_ptTipP2 As Point3d
|
||||
Private m_vtToolP2 As Vector3d
|
||||
' Lato di creazione dei tagli
|
||||
Private m_bCutSide As CutSide = CutSide.Left
|
||||
' Parametri della lavorazione
|
||||
Private m_bCutOk As Boolean = False
|
||||
Private m_dDepth As Double = 0
|
||||
Private m_dAngO As Double = 180
|
||||
Private m_dLen As Double = 500
|
||||
Private m_dWid As Double = 500
|
||||
Private m_dAngO As Double = 180
|
||||
Private m_dAngV As Double = 0
|
||||
Private m_dOverlap As Double = 1
|
||||
Private m_bHeadSide As Boolean = False
|
||||
Private m_nMachType As Integer = 1
|
||||
Private m_bRotLock As Boolean = False
|
||||
' Array delle modalità di acquisizione dei punti
|
||||
Private m_PointsModeArray(2) As String
|
||||
' Array delle tipologia di lavorazione della spianatura
|
||||
@@ -88,6 +88,17 @@ Public Class FlatteningCut
|
||||
RotLockTxBl.Text = EgtMsg(MSG_DIRECTCUTPAGEUC + 29)
|
||||
SimulBtn.Content = EgtMsg(MSG_CADCUTPAGEUC + 1)
|
||||
OkBtn.Content = EgtMsg(MSG_DIRECTCUTPAGEUC + 30)
|
||||
' Carico i dati dell'ultimo taglio
|
||||
m_dDepth = GetPrivateProfileDouble( S_DIRECTCUTS, K_DC_FLATT_DEPTH, m_dDepth, m_MainWindow.GetIniFile())
|
||||
m_dAngO = GetPrivateProfileDouble( S_DIRECTCUTS, K_DC_FLATT_ANGH, m_dAngO, m_MainWindow.GetIniFile())
|
||||
m_dLen = GetPrivateProfileDouble( S_DIRECTCUTS, K_DC_FLATT_LENGTH, m_dLen, m_MainWindow.GetIniFile())
|
||||
m_dWid = GetPrivateProfileDouble( S_DIRECTCUTS, K_DC_FLATT_WIDTH, m_dWid, m_MainWindow.GetIniFile())
|
||||
m_dOverlap = GetPrivateProfileDouble( S_DIRECTCUTS, K_DC_FLATT_OVERLAP, m_dOverlap, m_MainWindow.GetIniFile())
|
||||
m_bHeadSide = ( GetPrivateProfileInt( S_DIRECTCUTS, K_DC_FLATT_HEADSIDE, 0, m_MainWindow.GetIniFile()) <> 0)
|
||||
m_nMachType = GetPrivateProfileInt( S_DIRECTCUTS, K_DC_FLATT_MACHTYPE, m_nMachType, m_MainWindow.GetIniFile())
|
||||
m_bRotLock = ( GetPrivateProfileInt( S_DIRECTCUTS, K_DC_FLATT_ROTLOCK, 0, m_MainWindow.GetIniFile()) <> 0)
|
||||
m_ptTipP1.x = GetPrivateProfileDouble( S_DIRECTCUTS, K_DC_FLATT_POSX, m_ptTipP1.x, m_MainWindow.GetIniFile())
|
||||
m_ptTipP1.y = GetPrivateProfileDouble( S_DIRECTCUTS, K_DC_FLATT_POSY, m_ptTipP1.y, m_MainWindow.GetIniFile())
|
||||
End Sub
|
||||
|
||||
Private Sub FlatteningCut_Loaded(sender As Object, e As RoutedEventArgs) Handles Me.Loaded
|
||||
@@ -106,35 +117,43 @@ Public Class FlatteningCut
|
||||
EgtDraw()
|
||||
Return
|
||||
End If
|
||||
' Disabilito registrazione progetto modificato
|
||||
EgtDisableModified()
|
||||
' Creo layer temporaneo per crocette
|
||||
m_nTempLay = EgtCreateGroup( GDB_ID.ROOT)
|
||||
EgtSetLevel( m_nTempLay, GDB_LV.TEMP)
|
||||
' Origine tavola
|
||||
m_bRawOk = True
|
||||
If Not EgtGetTableRef(1, m_ptTabOri) Then
|
||||
If Not EgtGetTableRef( 1, m_ptTabOri) Then
|
||||
m_bRawOk = False
|
||||
EgtOutLog("Error on TableRef1")
|
||||
End If
|
||||
' Dati del grezzo
|
||||
If Not GetRawBox(m_ptRawMin, m_ptRawMax) Then
|
||||
If Not GetRawBox( m_ptRawMin, m_ptRawMax) Then
|
||||
m_bRawOk = False
|
||||
EgtOutLog("Error on RawBox")
|
||||
End If
|
||||
' Reset punto acquisito
|
||||
m_bPointP1Ok = False
|
||||
m_bPointP2Ok = False
|
||||
' Inizializzo primo punto acquisito dal disegno come centro del grezzo
|
||||
GetRawCenter(m_ptPrev)
|
||||
' Inizializzo primo punto acquisito dal disegno
|
||||
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)
|
||||
' Imposto modalità di acquisizione punti
|
||||
PointModeCmBx.SelectedIndex = PT_MODE.DRAW
|
||||
SetCoordVisibility(True)
|
||||
ShowCoord()
|
||||
' Imposto tipo di lavorazione della spianatura
|
||||
TypeCmBx.SelectedIndex = MACH_TYPE.ZIGZAG
|
||||
' Assegno parametri di lavorazione già definiti
|
||||
DepthTxBx.Text = LenToString(m_dDepth, 1)
|
||||
LenghtTxBx.Text = LenToString(m_dLen, 1)
|
||||
' Inizializzo valori non ancora definiti
|
||||
DirectionTxBx.Text = DoubleToString(m_dAngO - m_MainWindow.m_CurrentMachine.dDeltaC, 2)
|
||||
WidthTxBx.Text = LenToString(m_dWid, 2)
|
||||
OverlapTxBx.Text = LenToString(m_dOverlap, 2)
|
||||
DepthTxBx.Text = LenToString( m_dDepth, 1)
|
||||
DirectionTxBx.Text = DoubleToString( m_dAngO - m_MainWindow.m_CurrentMachine.dDeltaC, 2)
|
||||
LenghtTxBx.Text = LenToString( m_dLen, 1)
|
||||
WidthTxBx.Text = LenToString( m_dWid, 2)
|
||||
OverlapTxBx.Text = LenToString( m_dOverlap, 2)
|
||||
SideChBx.IsChecked = m_bHeadSide
|
||||
TypeCmBx.SelectedIndex = m_nMachType
|
||||
RotLockChBx.IsChecked = m_bRotLock
|
||||
' Reset taglio e disabilito bottone esecuzione
|
||||
m_bCutOk = False
|
||||
UpdateSimulOkBtn()
|
||||
@@ -142,14 +161,23 @@ Public Class FlatteningCut
|
||||
Point2Btn.IsEnabled = False
|
||||
' Deseleziono bottone primo punto
|
||||
Point1Btn.IsChecked = False
|
||||
' Disabilito registrazione progetto modificato
|
||||
EgtDisableModified()
|
||||
' Creo layer temporaneo per crocette
|
||||
m_nTempLay = EgtCreateGroup(GDB_ID.ROOT)
|
||||
EgtSetLevel(m_nTempLay, GDB_LV.TEMP)
|
||||
' Aggiorno visualizzazione
|
||||
EgtDraw()
|
||||
End Sub
|
||||
|
||||
Friend Sub FlatteningCut_Unloaded(sender As Object, e As RoutedEventArgs) Handles Me.Unloaded
|
||||
' Salvo i dati correnti
|
||||
WritePrivateProfileString( S_DIRECTCUTS, K_DC_FLATT_DEPTH, DoubleToString( m_dDepth, 2), m_MainWindow.GetIniFile())
|
||||
WritePrivateProfileString( S_DIRECTCUTS, K_DC_FLATT_ANGH, DoubleToString( m_dAngO, 2), m_MainWindow.GetIniFile())
|
||||
WritePrivateProfileString( S_DIRECTCUTS, K_DC_FLATT_LENGTH, DoubleToString( m_dLen, 2), m_MainWindow.GetIniFile())
|
||||
WritePrivateProfileString( S_DIRECTCUTS, K_DC_FLATT_WIDTH, DoubleToString( m_dWid, 2), m_MainWindow.GetIniFile())
|
||||
WritePrivateProfileString( S_DIRECTCUTS, K_DC_FLATT_OVERLAP, DoubleToString( m_dOverlap, 2), m_MainWindow.GetIniFile())
|
||||
WritePrivateProfileString( S_DIRECTCUTS, K_DC_FLATT_HEADSIDE, If( m_bHeadSide, "1", "0"), m_MainWindow.GetIniFile())
|
||||
WritePrivateProfileString( S_DIRECTCUTS, K_DC_FLATT_MACHTYPE, m_nMachType.ToString(), m_MainWindow.GetIniFile())
|
||||
WritePrivateProfileString( S_DIRECTCUTS, K_DC_FLATT_ROTLOCK, If( m_bRotLock, "1", "0"), m_MainWindow.GetIniFile())
|
||||
WritePrivateProfileString( S_DIRECTCUTS, K_DC_FLATT_POSX, DoubleToString( m_ptTipP1.x, 2), m_MainWindow.GetIniFile())
|
||||
WritePrivateProfileString( S_DIRECTCUTS, K_DC_FLATT_POSY, DoubleToString( m_ptTipP1.y, 2), m_MainWindow.GetIniFile())
|
||||
' Se non vado in simulazione
|
||||
If Not m_bSimul Then
|
||||
' Dichiaro sottopagina da non riattivare
|
||||
m_MainWindow.m_DirectCutPageUC.m_ActiveDirectCutPage = DirectCutPageUC.DirectCutPages.DirectCut
|
||||
@@ -258,7 +286,6 @@ Public Class FlatteningCut
|
||||
Dim dTLen, dTAngV, dTAngO As Double
|
||||
m_vtToolP1.ToSpherical(dTLen, dTAngV, dTAngO)
|
||||
m_dAngO = dTAngO + 90
|
||||
m_dAngV = 90 - dTAngV
|
||||
DirectionTxBx.Text = DoubleToString(m_dAngO - m_MainWindow.m_CurrentMachine.dDeltaC, 2)
|
||||
|
||||
' Altrimenti da disegno
|
||||
@@ -326,10 +353,6 @@ Public Class FlatteningCut
|
||||
' Porto il tip nell'origine tavola
|
||||
m_ptTipP2.ToLoc(New Frame3d(m_ptTabOri))
|
||||
m_bPointP2Ok = True
|
||||
' Assegno angolo verticale da direzione utensile
|
||||
Dim dTLen, dTAngV, dTAngO As Double
|
||||
m_vtToolP2.ToSpherical(dTLen, dTAngV, dTAngO)
|
||||
m_dAngV = 90 - dTAngV
|
||||
|
||||
' Altrimenti da disegno
|
||||
Else
|
||||
@@ -461,6 +484,7 @@ Public Class FlatteningCut
|
||||
End Sub
|
||||
|
||||
Private Sub SideChBx_Click(sender As Object, e As EventArgs) Handles SideChBx.Click
|
||||
m_bHeadSide = SideChBx.IsChecked
|
||||
' Disegno il taglio
|
||||
CreateFlatteningCut()
|
||||
SetMachineInCurrPos()
|
||||
@@ -468,6 +492,7 @@ Public Class FlatteningCut
|
||||
End Sub
|
||||
|
||||
Private Sub TypeCmBx_SelectionChanged(sender As Object, e As EventArgs) Handles TypeCmBx.SelectionChanged
|
||||
m_nMachType = TypeCmBx.SelectedIndex
|
||||
' Disegno il taglio
|
||||
CreateFlatteningCut()
|
||||
SetMachineInCurrPos()
|
||||
@@ -475,6 +500,7 @@ Public Class FlatteningCut
|
||||
End Sub
|
||||
|
||||
Private Sub RotLockChBx_Click(sender As Object, e As EventArgs) Handles RotLockChBx.Click
|
||||
m_bRotLock = RotLockChBx.IsChecked
|
||||
' Disegno il taglio
|
||||
CreateFlatteningCut()
|
||||
SetMachineInCurrPos()
|
||||
@@ -581,7 +607,7 @@ Public Class FlatteningCut
|
||||
Dim nCutId = EgtCreateLinePDL(nLayerId, ptStart, m_dAngO, m_dLen)
|
||||
' Imposto affondamento e angolo di fianco sul taglio
|
||||
EgtSetInfo(nCutId, INFO_DEPTH, m_dDepth)
|
||||
EgtSetInfo(nCutId, INFO_SIDE_ANGLE, m_dAngV)
|
||||
EgtSetInfo(nCutId, INFO_SIDE_ANGLE, 0)
|
||||
' Imposto prima direzione
|
||||
EgtSetInfo(nCutId, INFO_DIR, 1)
|
||||
' Eventuale bloccaggio rotazione asse C tra le passate
|
||||
|
||||
+54
-15
@@ -22,14 +22,16 @@ Public Class GridCut
|
||||
Private m_bPointP2Ok As Boolean = False
|
||||
Private m_ptTipP2 As Point3d
|
||||
Private m_vtToolP2 As Vector3d
|
||||
' Lato di creazione dei tagli
|
||||
Private m_bCutSide As CutSide = CutSide.Left
|
||||
' Parametri della lavorazione
|
||||
Private m_bCutOk As Boolean = False
|
||||
Private m_dDepth As Double = 0
|
||||
Private m_dLen As Double = 1000
|
||||
Private m_dAngO As Double = 180
|
||||
Private m_dAngV As Double = 0
|
||||
Private m_nNumX As Integer = 0
|
||||
Private m_dDimX As Double = 0
|
||||
Private m_nNumY As Integer = 0
|
||||
Private m_dDimY As Double = 0
|
||||
Private m_bHeadSide As Boolean = False
|
||||
' Array delle modalità di acquisizione dei punti
|
||||
Private m_PointsModeArray(2) As String
|
||||
' Punto selezionato nel disegno
|
||||
@@ -73,6 +75,17 @@ Public Class GridCut
|
||||
SideTxBl.Text = EgtMsg(MSG_DIRECTCUTPAGEUC + 23)
|
||||
SimulBtn.Content = EgtMsg(MSG_CADCUTPAGEUC + 1)
|
||||
OkBtn.Content = EgtMsg(MSG_DIRECTCUTPAGEUC + 30)
|
||||
' Carico i dati dell'ultimo taglio
|
||||
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())
|
||||
m_bHeadSide = ( GetPrivateProfileInt( S_DIRECTCUTS, K_DC_GRID_HEADSIDE, 0, m_MainWindow.GetIniFile()) <> 0)
|
||||
m_ptTipP1.x = GetPrivateProfileDouble( S_DIRECTCUTS, K_DC_GRID_POSX, m_ptTipP1.x, m_MainWindow.GetIniFile())
|
||||
m_ptTipP1.y = GetPrivateProfileDouble( S_DIRECTCUTS, K_DC_GRID_POSY, m_ptTipP1.y, m_MainWindow.GetIniFile())
|
||||
End Sub
|
||||
|
||||
Private Sub GridCut_Loaded(sender As Object, e As RoutedEventArgs) Handles Me.Loaded
|
||||
@@ -91,6 +104,11 @@ Public Class GridCut
|
||||
EgtDraw()
|
||||
Return
|
||||
End If
|
||||
' Disabilito registrazione progetto modificato
|
||||
EgtDisableModified()
|
||||
' Creo layer temporaneo per crocette
|
||||
m_nTempLay = EgtCreateGroup(GDB_ID.ROOT)
|
||||
EgtSetLevel(m_nTempLay, GDB_LV.TEMP)
|
||||
' Origine tavola
|
||||
m_bRawOk = True
|
||||
If Not EgtGetTableRef(1, m_ptTabOri) Then
|
||||
@@ -105,17 +123,24 @@ Public Class GridCut
|
||||
' Reset punto acquisito
|
||||
m_bPointP1Ok = False
|
||||
m_bPointP2Ok = False
|
||||
' Inizializzo primo punto acquisito dal disegno come centro del grezzo
|
||||
GetRawCenter(m_ptPrev)
|
||||
' Inizializzo primo punto acquisito dal disegno
|
||||
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)
|
||||
' Imposto modalità di acquisizione punti
|
||||
PointModeCmBx.SelectedIndex = PT_MODE.DRAW
|
||||
SetCoordVisibility(True)
|
||||
ShowCoord()
|
||||
' Assegno parametri di lavorazione già definiti
|
||||
DepthTxBx.Text = LenToString(m_dDepth, 1)
|
||||
' Inizializzo valori non ancora definiti
|
||||
DirectionTxBx.Text = DoubleToString(m_dAngO - m_MainWindow.m_CurrentMachine.dDeltaC, 2)
|
||||
SideAngleTxBx.Text = DoubleToString(m_dAngV, 2)
|
||||
' Assegno parametri di lavorazione
|
||||
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)
|
||||
NumPzYTxBx.Text = m_nNumY.ToString()
|
||||
DimPzYTxBx.Text = LenToString( m_dDimY, 1)
|
||||
SideChBx.IsChecked = m_bHeadSide
|
||||
' Reset taglio e disabilito bottone esecuzione
|
||||
m_bCutOk = False
|
||||
UpdateSimulOkBtn()
|
||||
@@ -123,14 +148,23 @@ Public Class GridCut
|
||||
Point2Btn.IsEnabled = False
|
||||
' Deseleziono bottone primo punto
|
||||
Point1Btn.IsChecked = False
|
||||
' Disabilito registrazione progetto modificato
|
||||
EgtDisableModified()
|
||||
' Creo layer temporaneo per crocette
|
||||
m_nTempLay = EgtCreateGroup(GDB_ID.ROOT)
|
||||
EgtSetLevel(m_nTempLay, GDB_LV.TEMP)
|
||||
' Aggiorno visualizzazione
|
||||
EgtDraw()
|
||||
End Sub
|
||||
|
||||
Friend Sub GridCut_Unloaded(sender As Object, e As RoutedEventArgs) Handles Me.Unloaded
|
||||
' Salvo i dati correnti
|
||||
WritePrivateProfileString( S_DIRECTCUTS, K_DC_GRID_DEPTH, DoubleToString( m_dDepth, 2), m_MainWindow.GetIniFile())
|
||||
WritePrivateProfileString( S_DIRECTCUTS, K_DC_GRID_ANGH, DoubleToString( m_dAngO, 2), m_MainWindow.GetIniFile())
|
||||
WritePrivateProfileString( S_DIRECTCUTS, K_DC_GRID_ANGV, DoubleToString( m_dAngV, 2), m_MainWindow.GetIniFile())
|
||||
WritePrivateProfileString( S_DIRECTCUTS, K_DC_GRID_NUMX, m_nNumX.ToString(), m_MainWindow.GetIniFile())
|
||||
WritePrivateProfileString( S_DIRECTCUTS, K_DC_GRID_DIMX, DoubleToString( m_dDimX, 2), m_MainWindow.GetIniFile())
|
||||
WritePrivateProfileString( S_DIRECTCUTS, K_DC_GRID_NUMY, m_nNumY.ToString(), m_MainWindow.GetIniFile())
|
||||
WritePrivateProfileString( S_DIRECTCUTS, K_DC_GRID_DIMY, DoubleToString( m_dDimY, 2), m_MainWindow.GetIniFile())
|
||||
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())
|
||||
' Se non vado in simulazione
|
||||
If Not m_bSimul Then
|
||||
' Dichiaro sottopagina da non riattivare
|
||||
m_MainWindow.m_DirectCutPageUC.m_ActiveDirectCutPage = DirectCutPageUC.DirectCutPages.DirectCut
|
||||
@@ -614,6 +648,11 @@ Public Class GridCut
|
||||
|
||||
Private Sub NumPzsTxBx_EgtClosed(sender As Object, e As EventArgs) Handles NumPzXTxBx.EgtClosed, NumPzYTxBx.EgtClosed,
|
||||
DimPzXTxBx.EgtClosed, DimPzYTxBx.EgtClosed, SideChBx.Click
|
||||
StringToInt( NumPzXTxBx.Text, m_nNumX)
|
||||
StringToLen( DimPzXTxBx.Text, m_dDimX)
|
||||
StringToInt( NumPzYTxBx.Text, m_nNumY)
|
||||
StringToLen( DimPzYTxBx.Text, m_dDimY)
|
||||
m_bHeadSide = SideChBx.IsChecked
|
||||
' Disegno il taglio
|
||||
CreateGridCut()
|
||||
SetMachineInCurrPos()
|
||||
|
||||
+87
-15
@@ -23,14 +23,15 @@ Public Class MultipleCut
|
||||
Private m_bPointP2Ok As Boolean = False
|
||||
Private m_ptTipP2 As Point3d
|
||||
Private m_vtToolP2 As Vector3d
|
||||
' Lato di creazione dei tagli
|
||||
Private m_bCutSide As CutSide = CutSide.Left
|
||||
' Parametri della lavorazione
|
||||
Private m_bCutOk As Boolean = False
|
||||
Private m_dDepth As Double = 0
|
||||
Private m_dLen As Double = 1000
|
||||
Private m_dAngO As Double = 180
|
||||
Private m_dAngV As Double = 0
|
||||
Private m_nNum() As Integer = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
|
||||
Private m_dDim() As Double = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
|
||||
Private m_bHeadSide As Boolean = False
|
||||
' Array delle modalità di acquisizione dei punti
|
||||
Private m_PointsModeArray(2) As String
|
||||
' Punto selezionato nel disegno
|
||||
@@ -83,6 +84,18 @@ Public Class MultipleCut
|
||||
Num8TxBl.Text = "8"
|
||||
Num9TxBl.Text = "9"
|
||||
Num10TxBl.Text = "10"
|
||||
' Carico i dati dell'ultimo taglio
|
||||
m_dDepth = GetPrivateProfileDouble( S_DIRECTCUTS, K_DC_MULT_DEPTH, m_dDepth, m_MainWindow.GetIniFile())
|
||||
m_dLen = GetPrivateProfileDouble( S_DIRECTCUTS, K_DC_MULT_LENGTH, m_dLen, m_MainWindow.GetIniFile())
|
||||
m_dAngO = GetPrivateProfileDouble( S_DIRECTCUTS, K_DC_MULT_ANGH, m_dAngO, m_MainWindow.GetIniFile())
|
||||
m_dAngV = GetPrivateProfileDouble( S_DIRECTCUTS, K_DC_MULT_ANGV, m_dAngV, m_MainWindow.GetIniFile())
|
||||
For nI As Integer = 0 To 9
|
||||
m_nNum( nI) = GetPrivateProfileInt( S_DIRECTCUTS, K_DC_MULT_NUM & (nI+1).ToString(), 0, m_MainWindow.GetIniFile())
|
||||
m_dDim( nI) = GetPrivateProfileDouble( S_DIRECTCUTS, K_DC_MULT_DIM & (nI+1).ToString(), 0, m_MainWindow.GetIniFile())
|
||||
Next
|
||||
m_bHeadSide = ( GetPrivateProfileInt( S_DIRECTCUTS, K_DC_MULT_HEADSIDE, 0, m_MainWindow.GetIniFile()) <> 0)
|
||||
m_ptTipP1.x = GetPrivateProfileDouble( S_DIRECTCUTS, K_DC_MULT_POSX, m_ptTipP1.x, m_MainWindow.GetIniFile())
|
||||
m_ptTipP1.y = GetPrivateProfileDouble( S_DIRECTCUTS, K_DC_MULT_POSY, m_ptTipP1.y, m_MainWindow.GetIniFile())
|
||||
End Sub
|
||||
|
||||
Private Sub MultipleCut_Loaded(sender As Object, e As RoutedEventArgs) Handles Me.Loaded
|
||||
@@ -101,6 +114,11 @@ Public Class MultipleCut
|
||||
EgtDraw()
|
||||
Return
|
||||
End If
|
||||
' Disabilito registrazione progetto modificato
|
||||
EgtDisableModified()
|
||||
' Creo layer temporaneo per crocette
|
||||
m_nTempLay = EgtCreateGroup(GDB_ID.ROOT)
|
||||
EgtSetLevel(m_nTempLay, GDB_LV.TEMP)
|
||||
' Origine tavola
|
||||
m_bRawOk = True
|
||||
If Not EgtGetTableRef(1, m_ptTabOri) Then
|
||||
@@ -115,18 +133,41 @@ Public Class MultipleCut
|
||||
' Reset punto acquisito
|
||||
m_bPointP1Ok = False
|
||||
m_bPointP2Ok = False
|
||||
' Inizializzo primo punto acquisito dal disegno come centro del grezzo
|
||||
GetRawCenter(m_ptPrev)
|
||||
' Inizializzo primo punto acquisito dal disegno
|
||||
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)
|
||||
' Imposto modalità di acquisizione punti
|
||||
PointModeCmBx.SelectedIndex = PT_MODE.DRAW
|
||||
SetCoordVisibility(True)
|
||||
ShowCoord()
|
||||
' Assegno parametri di lavorazione già definiti
|
||||
DepthTxBx.Text = LenToString(m_dDepth, 1)
|
||||
LenghtTxBx.Text = LenToString(m_dLen, 1)
|
||||
' Inizializzo valori non ancora definiti
|
||||
DirectionTxBx.Text = DoubleToString(m_dAngO - m_MainWindow.m_CurrentMachine.dDeltaC, 2)
|
||||
SideAngleTxBx.Text = DoubleToString(m_dAngV, 2)
|
||||
' Assegno parametri di lavorazione
|
||||
DepthTxBx.Text = LenToString( m_dDepth, 1)
|
||||
LenghtTxBx.Text = LenToString( m_dLen, 1)
|
||||
DirectionTxBx.Text = DoubleToString( m_dAngO - m_MainWindow.m_CurrentMachine.dDeltaC, 2)
|
||||
SideAngleTxBx.Text = DoubleToString( m_dAngV, 2)
|
||||
NumPz1TxBx.Text = m_nNum(0).ToString()
|
||||
DimPz1TxBx.Text = LenToString( m_dDim(0), 1)
|
||||
NumPz2TxBx.Text = m_nNum(1).ToString()
|
||||
DimPz2TxBx.Text = LenToString( m_dDim(1), 1)
|
||||
NumPz3TxBx.Text = m_nNum(2).ToString()
|
||||
DimPz3TxBx.Text = LenToString( m_dDim(2), 1)
|
||||
NumPz4TxBx.Text = m_nNum(3).ToString()
|
||||
DimPz4TxBx.Text = LenToString( m_dDim(3), 1)
|
||||
NumPz5TxBx.Text = m_nNum(4).ToString()
|
||||
DimPz5TxBx.Text = LenToString( m_dDim(4), 1)
|
||||
NumPz6TxBx.Text = m_nNum(5).ToString()
|
||||
DimPz6TxBx.Text = LenToString( m_dDim(5), 1)
|
||||
NumPz7TxBx.Text = m_nNum(6).ToString()
|
||||
DimPz7TxBx.Text = LenToString( m_dDim(6), 1)
|
||||
NumPz8TxBx.Text = m_nNum(7).ToString()
|
||||
DimPz8TxBx.Text = LenToString( m_dDim(7), 1)
|
||||
NumPz9TxBx.Text = m_nNum(8).ToString()
|
||||
DimPz9TxBx.Text = LenToString( m_dDim(8), 1)
|
||||
NumPz10TxBx.Text = m_nNum(9).ToString()
|
||||
DimPz10TxBx.Text = LenToString( m_dDim(9), 1)
|
||||
SideChBx.IsChecked = m_bHeadSide
|
||||
' Reset taglio e disabilito bottone esecuzione
|
||||
m_bCutOk = False
|
||||
UpdateSimulOkBtn()
|
||||
@@ -134,14 +175,24 @@ Public Class MultipleCut
|
||||
Point2Btn.IsEnabled = False
|
||||
' Deseleziono bottone primo punto
|
||||
Point1Btn.IsChecked = False
|
||||
' Disabilito registrazione progetto modificato
|
||||
EgtDisableModified()
|
||||
' Creo layer temporaneo per crocette
|
||||
m_nTempLay = EgtCreateGroup(GDB_ID.ROOT)
|
||||
EgtSetLevel(m_nTempLay, GDB_LV.TEMP)
|
||||
' Aggiorno visualizzazione
|
||||
EgtDraw()
|
||||
End Sub
|
||||
|
||||
Friend Sub MultipleCut_Unloaded(sender As Object, e As RoutedEventArgs) Handles Me.Unloaded
|
||||
' Salvo i dati correnti
|
||||
WritePrivateProfileString( S_DIRECTCUTS, K_DC_MULT_DEPTH, DoubleToString( m_dDepth, 2), m_MainWindow.GetIniFile())
|
||||
WritePrivateProfileString( S_DIRECTCUTS, K_DC_MULT_LENGTH, DoubleToString( m_dLen, 2), m_MainWindow.GetIniFile())
|
||||
WritePrivateProfileString( S_DIRECTCUTS, K_DC_MULT_ANGH, DoubleToString( m_dAngO, 2), m_MainWindow.GetIniFile())
|
||||
WritePrivateProfileString( S_DIRECTCUTS, K_DC_MULT_ANGV, DoubleToString( m_dAngV, 2), m_MainWindow.GetIniFile())
|
||||
For nI As Integer = 0 To 9
|
||||
WritePrivateProfileString( S_DIRECTCUTS, K_DC_MULT_NUM & (nI+1).ToString(), m_nNum( nI).ToString(), m_MainWindow.GetIniFile())
|
||||
WritePrivateProfileString( S_DIRECTCUTS, K_DC_MULT_DIM & (nI+1).ToString(), DoubleToString( m_dDim( nI), 2), m_MainWindow.GetIniFile())
|
||||
Next
|
||||
WritePrivateProfileString( S_DIRECTCUTS, K_DC_MULT_HEADSIDE, If( m_bHeadSide, "1", "0"), m_MainWindow.GetIniFile())
|
||||
WritePrivateProfileString( S_DIRECTCUTS, K_DC_MULT_POSX, DoubleToString( m_ptTipP1.x, 2), m_MainWindow.GetIniFile())
|
||||
WritePrivateProfileString( S_DIRECTCUTS, K_DC_MULT_POSY, DoubleToString( m_ptTipP1.y, 2), m_MainWindow.GetIniFile())
|
||||
' Se non vado in simulazione
|
||||
If Not m_bSimul Then
|
||||
' Dichiaro sottopagina da non riattivare
|
||||
m_MainWindow.m_DirectCutPageUC.m_ActiveDirectCutPage = DirectCutPageUC.DirectCutPages.DirectCut
|
||||
@@ -646,6 +697,27 @@ Public Class MultipleCut
|
||||
NumPz9TxBx.EgtClosed, DimPz9TxBx.EgtClosed,
|
||||
NumPz10TxBx.EgtClosed, DimPz10TxBx.EgtClosed,
|
||||
SideChBx.Click
|
||||
StringToInt( NumPz1TxBx.Text, m_nNum(0))
|
||||
StringToLen( DimPz1TxBx.Text, m_dDim(0))
|
||||
StringToInt( NumPz2TxBx.Text, m_nNum(1))
|
||||
StringToLen( DimPz2TxBx.Text, m_dDim(1))
|
||||
StringToInt( NumPz3TxBx.Text, m_nNum(2))
|
||||
StringToLen( DimPz3TxBx.Text, m_dDim(2))
|
||||
StringToInt( NumPz4TxBx.Text, m_nNum(3))
|
||||
StringToLen( DimPz4TxBx.Text, m_dDim(3))
|
||||
StringToInt( NumPz5TxBx.Text, m_nNum(4))
|
||||
StringToLen( DimPz5TxBx.Text, m_dDim(4))
|
||||
StringToInt( NumPz6TxBx.Text, m_nNum(5))
|
||||
StringToLen( DimPz6TxBx.Text, m_dDim(5))
|
||||
StringToInt( NumPz7TxBx.Text, m_nNum(6))
|
||||
StringToLen( DimPz7TxBx.Text, m_dDim(6))
|
||||
StringToInt( NumPz8TxBx.Text, m_nNum(7))
|
||||
StringToLen( DimPz8TxBx.Text, m_dDim(7))
|
||||
StringToInt( NumPz9TxBx.Text, m_nNum(8))
|
||||
StringToLen( DimPz9TxBx.Text, m_dDim(8))
|
||||
StringToInt( NumPz10TxBx.Text, m_nNum(9))
|
||||
StringToLen( DimPz10TxBx.Text, m_dDim(9))
|
||||
m_bHeadSide = SideChBx.IsChecked
|
||||
' Disegno il taglio
|
||||
CreateMultipleCut()
|
||||
SetMachineInCurrPos()
|
||||
|
||||
@@ -62,5 +62,5 @@ Imports System.Windows
|
||||
' by using the '*' as shown below:
|
||||
' <Assembly: AssemblyVersion("1.0.*")>
|
||||
|
||||
<Assembly: AssemblyVersion("2.1.12.3")>
|
||||
<Assembly: AssemblyFileVersion("2.1.12.3")>
|
||||
<Assembly: AssemblyVersion("2.1.12.4")>
|
||||
<Assembly: AssemblyFileVersion("2.1.12.4")>
|
||||
|
||||
Reference in New Issue
Block a user