TestEIn 1.6b6 :

- gestione MRU per file Nge e script lua
- aggiunto comando merge surfaces.
This commit is contained in:
Dario Sassi
2015-03-11 09:11:29 +00:00
parent d65e1d1279
commit a7924108a0
13 changed files with 825 additions and 288 deletions
+4
View File
@@ -65,4 +65,8 @@ Public Const K_EXTSSTEP As String = "ExtSStep"
Public Const K_MINLNCOLOR As String = "MinLnColor"
Public Const K_MAJLNCOLOR As String = "MajLnColor"
Public Const S_MRUFILES As String = "MruFiles"
Public Const S_MRUSCRIPTS As String = "MruScripts"
Public Const K_FILE As String = "File"
End Module
+114 -60
View File
@@ -22,14 +22,15 @@ Public Class Controller
Public Event OnNewProject(ByVal sender As Object, ByVal bOk As Boolean)
Public Event OnOpeningProject(ByVal sender As Object)
Public Event OnOpenProject(ByVal sender As Object, ByVal sFile As String, ByVal bOk As Boolean)
Public Event OnSavingProject(ByVal sender As Object, ByVal sFile As String)
Public Event OnSavedProject(ByVal sender As Object, ByVal bOk As Boolean)
Public Event OnSavingProject(ByVal sender As Object)
Public Event OnSavedProject(ByVal sender As Object, ByVal sFile As String, ByVal bOk As Boolean)
Public Event OnImportingProject(ByVal sender As Object, ByVal bOkType As Boolean)
Public Event OnImportedProject(ByVal sender As Object, ByVal sFile As String, ByVal bOk As Boolean)
Public Event OnExportingProject(ByVal sender As Object, ByVal sFile As String)
Public Event OnExportedProject(ByVal sender As Object, ByVal bOk As Boolean)
Public Event OnExecutingScript(ByVal sender As Object, ByVal sFile As String)
Public Event OnExecutedScript(ByVal sender As Object, ByVal bOk As Boolean, ByVal sError As String)
Public Event OnExportingProject(ByVal sender As Object)
Public Event OnExportedProject(ByVal sender As Object, ByVal sFile As String, ByVal bOk As Boolean)
Public Event OnExecutingScript(ByVal sender As Object)
Public Event OnExecutedScript(ByVal sender As Object, ByVal sFile As String,
ByVal bOk As Boolean, ByVal sError As String)
Public Event PrepareInputBox(ByVal sTitle As String, ByVal sLabel As String, ByVal sCheckLabel As String,
ByVal bShowCombo As Boolean, ByVal bShowBtn As Boolean)
Public Event SetInputBoxText(ByVal sText As String)
@@ -88,6 +89,8 @@ Public Class Controller
REVOLVE
SCREW
RULED
MERGESURF
INVERTSURF
DELETE
CHANGELAYER
CHANGECOLOR
@@ -100,7 +103,6 @@ Public Class Controller
JOINCURVE
EXPLODECURVE
SETCURVETHICKNESS
INVERTSURF
MOVE
ROTATE
ROTATE3D
@@ -141,6 +143,8 @@ Public Class Controller
Private m_nLast As Integer = 0
Private m_sLast As String = String.Empty
Private m_bLast As Boolean = False
Private m_ptLastSel As Point3d ' punto da ultima selezione entità
Private m_nLastSel As Integer ' info aux da ultima selezione entità
Private m_ptCont As Point3d ' punto finale di entità precedente (per continuazione)
Private m_vtCont As Vector3d = Vector3d.X_AX() ' direzione finale di entità precedente (per continuazione)
@@ -266,18 +270,18 @@ Public Class Controller
If String.IsNullOrWhiteSpace(sCurrFile) Or EgtGetFileType(sCurrFile) <> FT.NGE Then
Return SaveAsProject(sCurrFile, nType)
Else
'Prima del salvataggio
RaiseEvent OnSavingProject(Me, sCurrFile)
'Salvataggio del progetto
' Prima del salvataggio
RaiseEvent OnSavingProject(Me)
' Salvataggio del progetto
m_Scene.Cursor = Cursors.WaitCursor
EnableCommandLog()
Dim bOk As Boolean = EgtSaveFile(sCurrFile, nType)
DisableCommandLog()
m_Scene.Cursor = Cursors.Default
'Aggiorno
' Aggiorno
RaiseEvent UpdateUI(Me, False)
'Gestione risultato
RaiseEvent OnSavedProject(Me, bOk)
' Gestione risultato
RaiseEvent OnSavedProject(Me, sCurrFile, bOk)
Return bOk
End If
End Function
@@ -298,18 +302,19 @@ Public Class Controller
If SaveFileDialog.ShowDialog <> Windows.Forms.DialogResult.OK Then
Return True
End If
Dim sFileName As String = SaveFileDialog.FileName
'Prima del salvataggio
RaiseEvent OnSavingProject(Me, SaveFileDialog.FileName)
RaiseEvent OnSavingProject(Me)
'Salvataggio del progetto
m_Scene.Cursor = Cursors.WaitCursor
EnableCommandLog()
Dim bOk As Boolean = EgtSaveFile(SaveFileDialog.FileName, nType)
Dim bOk As Boolean = EgtSaveFile(sFileName, nType)
DisableCommandLog()
m_Scene.Cursor = Cursors.Default
'Aggiorno
RaiseEvent UpdateUI(Me, False)
'Gestione risultato
RaiseEvent OnSavedProject(Me, bOk)
RaiseEvent OnSavedProject(Me, sFileName, bOk)
Return bOk
End Function
@@ -384,23 +389,24 @@ Public Class Controller
MessageBox.Show("File type unknown", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
Return False
End If
Dim sFileName As String = SaveFileDialog.FileName
'Prima dell'esportazione
RaiseEvent OnExportingProject(Me, SaveFileDialog.FileName)
RaiseEvent OnExportingProject(Me)
'Esportazione del progetto
m_Scene.Cursor = Cursors.WaitCursor
EnableCommandLog()
Dim bOk As Boolean = False
If nFileType = FT.DXF Then
bOk = EgtExportDxf(GDB_ID.ROOT, SaveFileDialog.FileName)
bOk = EgtExportDxf(GDB_ID.ROOT, sFileName)
ElseIf nFileType = FT.STL Then
bOk = EgtExportStl(GDB_ID.ROOT, SaveFileDialog.FileName)
bOk = EgtExportStl(GDB_ID.ROOT, sFileName)
End If
DisableCommandLog()
m_Scene.Cursor = Cursors.Default
'Aggiornamento
RaiseEvent UpdateUI(Me, False)
'Gestione risultato
RaiseEvent OnExportedProject(Me, bOk)
RaiseEvent OnExportedProject(Me, sFileName, bOk)
Return bOk
End Function
@@ -427,7 +433,7 @@ Public Class Controller
Return False
End If
'Prima dell'esecuzione
RaiseEvent OnExecutingScript(Me, sFile)
RaiseEvent OnExecutingScript(Me)
'Esecuzione
m_Scene.Cursor = Cursors.WaitCursor
EnableCommandLog()
@@ -451,7 +457,7 @@ Public Class Controller
sError = "Error executing script"
End If
End If
RaiseEvent OnExecutedScript(Me, bOk, sError)
RaiseEvent OnExecutedScript(Me, sFile, bOk, sError)
Return bOk
End Function
@@ -550,7 +556,7 @@ Public Class Controller
m_dLast = GridAngFromGlobDir(m_ptLast - m_ptP1)
m_dAux = GridLenFromGlobLen(m_ptLast - m_ptP1)
Case IBT.TY_LENGTH
m_dLast = (m_ptLast - m_ptP1) * m_vtCont
m_dLast = (m_ptLast - m_ptP1) * m_vtLast
Case IBT.TY_SPECIALDOUBLE
ExecuteSpecialData()
End Select
@@ -743,6 +749,11 @@ Public Class Controller
m_bLast = bVal
End Sub
Public Sub SetPointFromSelection(ByVal PtP As Point3d, ByVal nAux As Integer)
m_ptLastSel = PtP
m_nLastSel = nAux
End Sub
Public Sub ResetStatus()
m_nStep = 0
m_sepP1 = SEP.PT_STD
@@ -789,7 +800,7 @@ Public Class Controller
Return ProcessGrid3P()
' Griglia/Cplane perpendicolare a curva
Case CMD.GRID_PERPCURVE
Return ProcessGridPerpCurve()
Return ProcessGridPerpObj()
' Griglia/Cplane da oggetto geometrico
Case CMD.GRID_OBJ
Return ProcessGridObj()
@@ -892,6 +903,12 @@ Public Class Controller
' Ruled
Case CMD.RULED
Return ProcessRuled()
' Merge Surfaces
Case CMD.MERGESURF
Return ProcessMergeSurf()
' Invert Surface
Case CMD.INVERTSURF
Return ProcessInvertSurf()
' Delete
Case CMD.DELETE
Return ProcessDelete()
@@ -928,9 +945,6 @@ Public Class Controller
' Set Curve Thickness
Case CMD.SETCURVETHICKNESS
Return ProcessSetCurveThickness()
' Invert Surface
Case CMD.INVERTSURF
Return ProcessInvertSurf()
' Move
Case CMD.MOVE
Return ProcessMove()
@@ -1298,7 +1312,7 @@ Public Class Controller
Return True
End Function
Private Function ProcessGridPerpCurve() As Boolean
Private Function ProcessGridPerpObj() As Boolean
Select Case m_nStep
Case 0
' non serve il gruppo di drag
@@ -1306,7 +1320,7 @@ Public Class Controller
' imposto stato a primo punto per rotazione griglia
m_nStep = 1
' abilito dialogo
RaiseEvent PrepareInputBox("GRID PERP CURVE", "Insert Origin", "", False, False)
RaiseEvent PrepareInputBox("GRID PERP OBJECT", "Insert Origin", "", False, False)
m_nInpType = IBT.TY_POINT3D
Case 1
' calcolo griglia dato punto e versore Z
@@ -1360,6 +1374,19 @@ Public Class Controller
EnableCommandLog()
EgtSetGridFrame(frNew)
DisableCommandLog()
Case GDB_TY.SRF_MESH
Dim nF As Integer = EgtSurfTmFacetFromTria(nId, m_nLastSel)
If nF >= 0 Then
Dim ptOrig As Point3d
Dim vtZ As Vector3d
If EgtSurfTmFacetCenter(nId, nF, ptOrig, vtZ) Then
Dim frNew As New Frame3d
frNew.Setup(ptOrig.Glob(nId), vtZ.Glob(nId))
EnableCommandLog()
EgtSetGridFrame(frNew)
DisableCommandLog()
End If
End If
Case GDB_TY.EXT_TEXT
Dim vtX As Vector3d
Dim vtZ As Vector3d
@@ -2908,7 +2935,7 @@ Public Class Controller
' creo la superficie piana (a partire da un contorno selezionato)
EnableCommandLog()
If EgtGetSelectedObjNbr() = 1 Then
EgtCreateSurfTriMeshByFlatContour(GetCurrLayer(), EgtGetLastSelectedObj(), EPS_STM)
EgtCreateSurfTmByFlatContour(GetCurrLayer(), EgtGetLastSelectedObj(), EPS_STM)
Else
' creo vettore di entità selezionate
Dim nCrvNum As Integer = 0
@@ -2923,7 +2950,7 @@ Public Class Controller
nId = EgtGetNextSelectedObj()
End While
' creo la superficie
EgtCreateSurfTriMeshByRegion(GetCurrLayer(), nCrvNum, nCrvIds, EPS_STM)
EgtCreateSurfTmByRegion(GetCurrLayer(), nCrvNum, nCrvIds, EPS_STM)
End If
DisableCommandLog()
' reset stato scena
@@ -2971,10 +2998,10 @@ Public Class Controller
' eseguo
EnableCommandLog()
If Not m_bLast Then
EgtCreateSurfTriMeshByExtrusion(GetCurrLayer(), nCrvNum, nCrvIds, VtExtr,
EgtCreateSurfTmByExtrusion(GetCurrLayer(), nCrvNum, nCrvIds, VtExtr,
EPS_STM, REF_TY.GRID)
Else
EgtCreateSurfTriMeshByRegionExtrusion(GetCurrLayer(), nCrvNum, nCrvIds, VtExtr,
EgtCreateSurfTmByRegionExtrusion(GetCurrLayer(), nCrvNum, nCrvIds, VtExtr,
EPS_STM, REF_TY.GRID)
End If
DisableCommandLog()
@@ -3008,10 +3035,10 @@ Public Class Controller
End While
' eseguo
If Not m_bLast Then
EgtCreateSurfTriMeshByExtrusion(m_Scene.GetDragGroup(), nCrvNum, nCrvIds, VtExtr,
EgtCreateSurfTmByExtrusion(m_Scene.GetDragGroup(), nCrvNum, nCrvIds, VtExtr,
EPS_STM_DRAG, REF_TY.GLOB)
Else
EgtCreateSurfTriMeshByRegionExtrusion(m_Scene.GetDragGroup(), nCrvNum, nCrvIds, VtExtr,
EgtCreateSurfTmByRegionExtrusion(m_Scene.GetDragGroup(), nCrvNum, nCrvIds, VtExtr,
EPS_STM_DRAG, REF_TY.GLOB)
End If
EgtDraw()
@@ -3044,7 +3071,7 @@ Public Class Controller
' creo la superficie di rivoluzione (i punti sono in globale)
EnableCommandLog()
Dim vtAx As Vector3d = m_ptLast - m_ptP1
EgtCreateSurfTriMeshByRevolve(GetCurrLayer(), EgtGetLastSelectedObj(),
EgtCreateSurfTmByRevolve(GetCurrLayer(), EgtGetLastSelectedObj(),
m_ptP1.Loc(GDB_ID.GRID), vtAx.Loc(GDB_ID.GRID),
m_bLast, EPS_STM, REF_TY.GRID)
DisableCommandLog()
@@ -3066,7 +3093,7 @@ Public Class Controller
EgtEmptyGroup(m_Scene.GetDragGroup())
' creo la superficie di rivoluzione (i punti sono in globale)
Dim vtAx As Vector3d = m_ptLast - m_ptP1
EgtCreateSurfTriMeshByRevolve(m_Scene.GetDragGroup(), EgtGetLastSelectedObj(),
EgtCreateSurfTmByRevolve(m_Scene.GetDragGroup(), EgtGetLastSelectedObj(),
m_ptP1, vtAx, m_bLast, EPS_STM_DRAG, REF_TY.GLOB)
EgtDraw()
End If
@@ -3116,7 +3143,7 @@ Public Class Controller
' creo la superficie di rivoluzione (i punti sono in globale)
EnableCommandLog()
Dim vtAx As Vector3d = m_ptP2 - m_ptP1
EgtCreateSurfTriMeshByScrewing(GetCurrLayer(), EgtGetLastSelectedObj(),
EgtCreateSurfTmByScrewing(GetCurrLayer(), EgtGetLastSelectedObj(),
m_ptP1.Loc(GDB_ID.GRID), vtAx.Loc(GDB_ID.GRID),
m_dPrev, m_dLast, EPS_STM, REF_TY.GRID)
DisableCommandLog()
@@ -3141,7 +3168,7 @@ Public Class Controller
EgtErase(EgtGetFirstInGroup(m_Scene.GetDragGroup()))
' creo la superficie di rivoluzione (i punti sono in globale)
Dim vtAx As Vector3d = m_ptP2 - m_ptP1
EgtCreateSurfTriMeshByScrewing(m_Scene.GetDragGroup(), EgtGetLastSelectedObj(),
EgtCreateSurfTmByScrewing(m_Scene.GetDragGroup(), EgtGetLastSelectedObj(),
m_ptP1, vtAx, m_dLast, 0, EPS_STM_DRAG, REF_TY.GLOB)
EgtDraw()
ElseIf m_nStep = 4 Then
@@ -3150,7 +3177,7 @@ Public Class Controller
EgtErase(EgtGetFirstInGroup(m_Scene.GetDragGroup()))
' creo la superficie di rivoluzione (i punti sono in globale)
Dim vtAx As Vector3d = m_ptP2 - m_ptP1
EgtCreateSurfTriMeshByScrewing(m_Scene.GetDragGroup(), EgtGetLastSelectedObj(),
EgtCreateSurfTmByScrewing(m_Scene.GetDragGroup(), EgtGetLastSelectedObj(),
m_ptP1, vtAx, m_dPrev, m_dLast, EPS_STM_DRAG, REF_TY.GLOB)
EgtDraw()
End If
@@ -3168,7 +3195,7 @@ Public Class Controller
EnableCommandLog()
Dim nLastId As Integer = EgtGetLastSelectedObj()
Dim nPrevId As Integer = EgtGetPrevSelectedObj()
EgtCreateSurfTriMeshRuled(GetCurrLayer(), nPrevId, nLastId, EPS_STM)
EgtCreateSurfTmRuled(GetCurrLayer(), nPrevId, nLastId, EPS_STM)
DisableCommandLog()
' reset stato scena
m_Scene.ResetStatus()
@@ -3178,6 +3205,49 @@ Public Class Controller
Return True
End Function
Private Function ProcessMergeSurf() As Boolean
If m_nStep <> 0 Then
Return False
End If
' creo vettore di superfici selezionate
Dim nSurfNum As Integer = 0
Dim nSurfIds(EgtGetSelectedObjNbr() - 1) As Integer
Dim nId As Integer = EgtGetFirstSelectedObj()
While nId <> GDB_ID.NULL
Select Case EgtGetType(nId)
Case GDB_TY.SRF_MESH
nSurfIds(nSurfNum) = nId
nSurfNum = nSurfNum + 1
End Select
nId = EgtGetNextSelectedObj()
End While ' lancio la combinazione delle superfici
EnableCommandLog()
EgtCreateSurfTmBySewing(GetCurrLayer(), nSurfNum, nSurfIds, True)
DisableCommandLog()
' reset stato scena
m_Scene.ResetStatus()
' reset stato
m_nStep = 0
RaiseEvent UpdateUI(Me, True)
Return True
End Function
Private Function ProcessInvertSurf() As Boolean
If m_nStep <> 0 Then
Return False
End If
' lancio l'inversione delle superfici
EnableCommandLog()
EgtInvertSurface(GDB_ID.SEL)
DisableCommandLog()
' reset stato scena
m_Scene.ResetStatus()
' reset stato
m_nStep = 0
RaiseEvent UpdateUI(Me, False)
Return True
End Function
Private Function ProcessDelete() As Boolean
If m_nStep <> 0 Then
Return False
@@ -3288,7 +3358,7 @@ Public Class Controller
End Function
Private Function ProcessChangeAlpha() As Boolean
Select m_nStep
Select Case m_nStep
Case 0
' verifico ci sia qualcosa di selezionato
Dim nId As Integer = EgtGetFirstSelectedObj()
@@ -3363,7 +3433,7 @@ Public Class Controller
Dim ptEnd As Point3d
EgtEndPoint(nId, ptEnd)
ptEnd = ptEnd.Glob(nId)
If ((ptStart - m_ptLast).SqLen() <= (ptEnd - m_ptLast).SqLen()) Then
If ((ptStart - m_ptLastSel).SqLen() <= (ptEnd - m_ptLastSel).SqLen()) Then
m_bLast = True
m_ptP1 = ptStart
EgtStartVector(nId, m_vtCont)
@@ -3510,7 +3580,7 @@ Public Class Controller
If GetCurrLayer() = GDB_ID.NULL Then
Return False
End If
' creo vettore di entità selezionate
' creo vettore di curve selezionate
Dim nCrvNum As Integer = 0
Dim nCrvIds(EgtGetSelectedObjNbr() - 1) As Integer
Dim nId As Integer = EgtGetFirstSelectedObj()
@@ -3632,22 +3702,6 @@ Public Class Controller
End If
End Sub
Private Function ProcessInvertSurf() As Boolean
If m_nStep <> 0 Then
Return False
End If
' lancio l'inversione delle superfici
EnableCommandLog()
EgtInvertSurface(GDB_ID.SEL)
DisableCommandLog()
' reset stato scena
m_Scene.ResetStatus()
' reset stato
m_nStep = 0
RaiseEvent UpdateUI(Me, False)
Return True
End Function
Private Function ProcessMove() As Boolean
Select Case m_nStep
Case 0
+58 -27
View File
@@ -926,41 +926,45 @@ Public Function EgtCreatePolygonFromSide(ByVal nParentId As Integer, ByVal nNumS
End Function
<DllImport(EgtIntDll, CharSet:=CharSet.Unicode)>
Public Function EgtCreateSurfTriMeshByFlatContour(ByVal nParentId As Integer, ByVal nCrvId As Integer, ByVal dLinTol As Double) As Integer
Public Function EgtCreateSurfTmByFlatContour(ByVal nParentId As Integer, ByVal nCrvId As Integer, ByVal dLinTol As Double) As Integer
End Function
<DllImport(EgtIntDll, CharSet:=CharSet.Unicode)>
Public Function EgtCreateSurfTriMeshByRegion(ByVal nParentId As Integer, ByVal nNumCrv As Integer, ByVal nCrvId() As Integer, ByVal dLinTol As Double) As Integer
Public Function EgtCreateSurfTmByRegion(ByVal nParentId As Integer, ByVal nNumCrv As Integer, ByVal nCrvId() As Integer, ByVal dLinTol As Double) As Integer
End Function
<DllImport(EgtIntDll, CharSet:=CharSet.Unicode)>
Public Function EgtCreateSurfTriMeshByExtrusion(ByVal nParentId As Integer, ByVal nNumCrv As Integer, ByVal nCrvId() As Integer,
ByRef VtExtr As Vector3d, ByVal dLinTol As Double,
Optional ByVal nRefType As REF_TY = REF_TY.LOC) As Integer
Public Function EgtCreateSurfTmByExtrusion(ByVal nParentId As Integer, ByVal nNumCrv As Integer, ByVal nCrvId() As Integer,
ByRef VtExtr As Vector3d, ByVal dLinTol As Double,
Optional ByVal nRefType As REF_TY = REF_TY.LOC) As Integer
End Function
<DllImport(EgtIntDll, CharSet:=CharSet.Unicode)>
Public Function EgtCreateSurfTriMeshByRegionExtrusion(ByVal nParentId As Integer, ByVal nNumCrv As Integer, ByVal nCrvId() As Integer,
ByRef VtExtr As Vector3d, ByVal dLinTol As Double,
Optional ByVal nRefType As REF_TY = REF_TY.LOC) As Integer
Public Function EgtCreateSurfTmByRegionExtrusion(ByVal nParentId As Integer, ByVal nNumCrv As Integer, ByVal nCrvId() As Integer,
ByRef VtExtr As Vector3d, ByVal dLinTol As Double,
Optional ByVal nRefType As REF_TY = REF_TY.LOC) As Integer
End Function
<DllImport(EgtIntDll, CharSet:=CharSet.Unicode)>
Public Function EgtCreateSurfTriMeshByRevolve(ByVal nParentId As Integer, ByVal nCrvId As Integer,
ByRef PtAx As Point3d, ByRef VtAx As Vector3d,
ByVal bCapEnds As Boolean, ByVal dLinTol As Double,
Optional ByVal nRefType As REF_TY = REF_TY.LOC) As Integer
Public Function EgtCreateSurfTmByRevolve(ByVal nParentId As Integer, ByVal nCrvId As Integer,
ByRef PtAx As Point3d, ByRef VtAx As Vector3d,
ByVal bCapEnds As Boolean, ByVal dLinTol As Double,
Optional ByVal nRefType As REF_TY = REF_TY.LOC) As Integer
End Function
<DllImport(EgtIntDll, CharSet:=CharSet.Unicode)>
Public Function EgtCreateSurfTriMeshByScrewing(ByVal nParentId As Integer, ByVal nCrvId As Integer,
ByRef PtAx As Point3d, ByRef VtAx As Vector3d,
ByVal dAngRotDeg As Double, ByVal dMove As Double,
ByVal dLinTol As Double, Optional ByVal nRefType As REF_TY = REF_TY.LOC) As Integer
Public Function EgtCreateSurfTmByScrewing(ByVal nParentId As Integer, ByVal nCrvId As Integer,
ByRef PtAx As Point3d, ByRef VtAx As Vector3d,
ByVal dAngRotDeg As Double, ByVal dMove As Double,
ByVal dLinTol As Double, Optional ByVal nRefType As REF_TY = REF_TY.LOC) As Integer
End Function
<DllImport(EgtIntDll, CharSet:=CharSet.Unicode)>
Public Function EgtCreateSurfTriMeshRuled(ByVal nParentId As Integer, ByVal nCrvId1 As Integer, ByVal nCrvId2 As Integer, ByVal dLinTol As Double) As Integer
Public Function EgtCreateSurfTmRuled(ByVal nParentId As Integer, ByVal nCrvId1 As Integer, ByVal nCrvId2 As Integer, ByVal dLinTol As Double) As Integer
End Function
<DllImport(EgtIntDll, CharSet:=CharSet.Unicode)>
Public Function EgtCreateSurfTmBySewing(ByVal nParentId As Integer, ByVal nNumSrf As Integer, ByVal nSrfId() As Integer, ByVal bSrfErase As Boolean) As Integer
End Function
<DllImport(EgtIntDll, CharSet:=CharSet.Unicode)>
@@ -1648,13 +1652,6 @@ Public Function EgtGetMinDistPntSidePointCurve(ByRef ptP As Point3d, ByVal nId A
ByRef dDist As Double, ByRef ptMin As Point3d, ByRef nSide As Integer) As Boolean
End Function
<DllImport(EgtIntDll, CharSet:=CharSet.Unicode)>
Public Function EgtExtTextNormVersor(ByVal nId As Integer, ByVal nRefId As Integer, ByRef VtNorm As Vector3d) As Boolean
End Function
Public Function EgtExtTextNormVersor(ByVal nId As Integer, ByRef VtNorm As Vector3d) As Boolean
Return EgtExtTextNormVersor(nId, nId, VtNorm)
End Function
<DllImport(EgtIntDll, CharSet:=CharSet.Unicode)>
Public Function EgtCurveArcNormVersor(ByVal nId As Integer, ByVal nRefId As Integer, ByRef VtNorm As Vector3d) As Boolean
End Function
@@ -1662,6 +1659,40 @@ Public Function EgtCurveArcNormVersor(ByVal nId As Integer, ByRef VtNorm As Vect
Return EgtCurveArcNormVersor(nId, nId, VtNorm)
End Function
<DllImport(EgtIntDll, CharSet:=CharSet.Unicode)>
Public Function EgtSurfTmFacetFromTria(ByVal nId As Integer, ByVal nT As Integer) As Integer
End Function
<DllImport(EgtIntDll, CharSet:=CharSet.Unicode)>
Public Function EgtSurfTmFacetNearestEndPoint(ByVal nId As Integer, ByVal nF As Integer, ByRef PtNear As Point3d, ByVal nRefId As Integer,
ByRef PtP As Point3d, ByRef VtNorm As Vector3d) As Boolean
End Function
Public Function EgtSurfTmFacetNearestEndPoint(ByVal nId As Integer, ByVal nF As Integer, ByRef PtNear As Point3d,
ByRef PtP As Point3d, ByRef VtNorm As Vector3d) As Boolean
Return EgtSurfTmFacetNearestEndPoint(nId, nF, PtNear, nId, PtP, VtNorm)
End Function
<DllImport(EgtIntDll, CharSet:=CharSet.Unicode)>
Public Function EgtSurfTmFacetCenter(ByVal nId As Integer, ByVal nF As Integer, ByVal nRefId As Integer, ByRef PtP As Point3d, ByRef VtNorm As Vector3d) As Boolean
End Function
Public Function EgtSurfTmFacetCenter(ByVal nId As Integer, ByVal nF As Integer, ByRef PtP As Point3d, ByRef VtNorm As Vector3d) As Boolean
Return EgtSurfTmFacetCenter(nId, nF, nId, PtP, VtNorm)
End Function
<DllImport(EgtIntDll, CharSet:=CharSet.Unicode)>
Public Function EgtSurfTmFacetNormVersor(ByVal nId As Integer, ByVal nF As Integer, ByVal nRefId As Integer, ByRef VtNorm As Vector3d) As Boolean
End Function
Public Function EgtSurfTmFacetNormVersor(ByVal nId As Integer, ByVal nF As Integer, ByRef VtNorm As Vector3d) As Boolean
Return EgtSurfTmFacetNormVersor(nId, nF, nId, VtNorm)
End Function
<DllImport(EgtIntDll, CharSet:=CharSet.Unicode)>
Public Function EgtExtTextNormVersor(ByVal nId As Integer, ByVal nRefId As Integer, ByRef VtNorm As Vector3d) As Boolean
End Function
Public Function EgtExtTextNormVersor(ByVal nId As Integer, ByRef VtNorm As Vector3d) As Boolean
Return EgtExtTextNormVersor(nId, nId, VtNorm)
End Function
<DllImport(EgtIntDll, CharSet:=CharSet.Unicode)>
Private Function EgtPointToIdGlob(ByRef PtP As Point3d, ByVal nId As Integer) As Boolean
End Function
@@ -1779,10 +1810,10 @@ End Function
<DllImport(EgtIntDll, CharSet:=CharSet.Unicode)>
Private Function EgtGetPointFromSelect(ByVal nSelId As Integer, ByVal nWinX As Integer, ByVal nWinY As Integer,
ByRef ptP As Point3d) As Boolean
ByRef ptP As Point3d, ByRef nAux As Integer) As Boolean
End Function
Public Function EgtGetPointFromSelect(ByVal nSelId As Integer, ByVal PtWin As Point, ByRef ptP As Point3d) As Boolean
Return EgtGetPointFromSelect(nSelId, PtWin.X, PtWin.Y, ptP)
Public Function EgtGetPointFromSelect(ByVal nSelId As Integer, ByVal PtWin As Point, ByRef ptP As Point3d, ByRef nAux As Integer) As Boolean
Return EgtGetPointFromSelect(nSelId, PtWin.X, PtWin.Y, ptP, nAux)
End Function
<DllImport(EgtIntDll, CharSet:=CharSet.Unicode)>
+258 -39
View File
@@ -62,7 +62,7 @@ Partial Class Form1
Me.btnTop = New System.Windows.Forms.Button()
Me.TabCPlane = New System.Windows.Forms.TabPage()
Me.btnCPlaneView = New System.Windows.Forms.Button()
Me.btnCPlanePerpCurve = New System.Windows.Forms.Button()
Me.btnCPlanePerpObj = New System.Windows.Forms.Button()
Me.btnCPlaneObj = New System.Windows.Forms.Button()
Me.btnCplane3P = New System.Windows.Forms.Button()
Me.btnCplaneRotate = New System.Windows.Forms.Button()
@@ -108,13 +108,14 @@ Partial Class Form1
Me.btnPoint = New System.Windows.Forms.Button()
Me.btnLine2P = New System.Windows.Forms.Button()
Me.TabConstruct = New System.Windows.Forms.TabPage()
Me.btnMergeSurf = New System.Windows.Forms.Button()
Me.btnInvertSurf = New System.Windows.Forms.Button()
Me.btnRevolve = New System.Windows.Forms.Button()
Me.btnRuled = New System.Windows.Forms.Button()
Me.btnScrew = New System.Windows.Forms.Button()
Me.btnExtrude = New System.Windows.Forms.Button()
Me.btnPlane = New System.Windows.Forms.Button()
Me.TabEdit = New System.Windows.Forms.TabPage()
Me.btnInvertSurf = New System.Windows.Forms.Button()
Me.btnChangeLayer = New System.Windows.Forms.Button()
Me.btnSetCurveTh = New System.Windows.Forms.Button()
Me.btnExtendCurve = New System.Windows.Forms.Button()
@@ -158,6 +159,28 @@ Partial Class Form1
Me.ColorDialog1 = New System.Windows.Forms.ColorDialog()
Me.FormTimer = New System.Windows.Forms.Timer(Me.components)
Me.ToolTip1 = New System.Windows.Forms.ToolTip(Me.components)
Me.ContextMenuMruFiles = New System.Windows.Forms.ContextMenuStrip(Me.components)
Me.MruTitle = New System.Windows.Forms.ToolStripTextBox()
Me.MruSep = New System.Windows.Forms.ToolStripSeparator()
Me.MruFile1 = New System.Windows.Forms.ToolStripMenuItem()
Me.MruFile2 = New System.Windows.Forms.ToolStripMenuItem()
Me.MruFile3 = New System.Windows.Forms.ToolStripMenuItem()
Me.MruFile4 = New System.Windows.Forms.ToolStripMenuItem()
Me.MruFile5 = New System.Windows.Forms.ToolStripMenuItem()
Me.MruFile6 = New System.Windows.Forms.ToolStripMenuItem()
Me.MruFile7 = New System.Windows.Forms.ToolStripMenuItem()
Me.MruFile8 = New System.Windows.Forms.ToolStripMenuItem()
Me.ContextMenuMruScripts = New System.Windows.Forms.ContextMenuStrip(Me.components)
Me.MruSTitle = New System.Windows.Forms.ToolStripTextBox()
Me.MruSSep = New System.Windows.Forms.ToolStripSeparator()
Me.MruSFile1 = New System.Windows.Forms.ToolStripMenuItem()
Me.MruSFile2 = New System.Windows.Forms.ToolStripMenuItem()
Me.MruSFile3 = New System.Windows.Forms.ToolStripMenuItem()
Me.MruSFile4 = New System.Windows.Forms.ToolStripMenuItem()
Me.MruSFile5 = New System.Windows.Forms.ToolStripMenuItem()
Me.MruSFile6 = New System.Windows.Forms.ToolStripMenuItem()
Me.MruSFile7 = New System.Windows.Forms.ToolStripMenuItem()
Me.MruSFile8 = New System.Windows.Forms.ToolStripMenuItem()
Me.TableLayoutPanel1.SuspendLayout()
Me.TabControl1.SuspendLayout()
Me.TabFile.SuspendLayout()
@@ -178,6 +201,8 @@ Partial Class Form1
Me.TabTransform.SuspendLayout()
Me.StatusStrip1.SuspendLayout()
Me.ContextMenuTreeView1.SuspendLayout()
Me.ContextMenuMruFiles.SuspendLayout()
Me.ContextMenuMruScripts.SuspendLayout()
Me.SuspendLayout()
'
'TableLayoutPanel1
@@ -812,7 +837,7 @@ Partial Class Form1
Me.TabCPlane.BackColor = System.Drawing.SystemColors.Control
Me.TabCPlane.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None
Me.TabCPlane.Controls.Add(Me.btnCPlaneView)
Me.TabCPlane.Controls.Add(Me.btnCPlanePerpCurve)
Me.TabCPlane.Controls.Add(Me.btnCPlanePerpObj)
Me.TabCPlane.Controls.Add(Me.btnCPlaneObj)
Me.TabCPlane.Controls.Add(Me.btnCplane3P)
Me.TabCPlane.Controls.Add(Me.btnCplaneRotate)
@@ -849,22 +874,22 @@ Partial Class Form1
Me.btnCPlaneView.TextAlign = System.Drawing.ContentAlignment.BottomCenter
Me.btnCPlaneView.UseVisualStyleBackColor = False
'
'btnCPlanePerpCurve
'btnCPlanePerpObj
'
Me.btnCPlanePerpCurve.FlatAppearance.BorderColor = System.Drawing.SystemColors.Control
Me.btnCPlanePerpCurve.FlatAppearance.BorderSize = 0
Me.btnCPlanePerpCurve.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control
Me.btnCPlanePerpCurve.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.GradientInactiveCaption
Me.btnCPlanePerpCurve.FlatStyle = System.Windows.Forms.FlatStyle.Flat
Me.btnCPlanePerpCurve.Image = CType(resources.GetObject("btnCPlanePerpCurve.Image"), System.Drawing.Image)
Me.btnCPlanePerpCurve.ImageAlign = System.Drawing.ContentAlignment.TopCenter
Me.btnCPlanePerpCurve.Location = New System.Drawing.Point(620, 0)
Me.btnCPlanePerpCurve.Name = "btnCPlanePerpCurve"
Me.btnCPlanePerpCurve.Size = New System.Drawing.Size(56, 48)
Me.btnCPlanePerpCurve.TabIndex = 39
Me.btnCPlanePerpCurve.Text = "PerpCrv"
Me.btnCPlanePerpCurve.TextAlign = System.Drawing.ContentAlignment.BottomCenter
Me.btnCPlanePerpCurve.UseVisualStyleBackColor = False
Me.btnCPlanePerpObj.FlatAppearance.BorderColor = System.Drawing.SystemColors.Control
Me.btnCPlanePerpObj.FlatAppearance.BorderSize = 0
Me.btnCPlanePerpObj.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control
Me.btnCPlanePerpObj.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.GradientInactiveCaption
Me.btnCPlanePerpObj.FlatStyle = System.Windows.Forms.FlatStyle.Flat
Me.btnCPlanePerpObj.Image = CType(resources.GetObject("btnCPlanePerpObj.Image"), System.Drawing.Image)
Me.btnCPlanePerpObj.ImageAlign = System.Drawing.ContentAlignment.TopCenter
Me.btnCPlanePerpObj.Location = New System.Drawing.Point(620, 0)
Me.btnCPlanePerpObj.Name = "btnCPlanePerpObj"
Me.btnCPlanePerpObj.Size = New System.Drawing.Size(56, 48)
Me.btnCPlanePerpObj.TabIndex = 39
Me.btnCPlanePerpObj.Text = "Perp"
Me.btnCPlanePerpObj.TextAlign = System.Drawing.ContentAlignment.BottomCenter
Me.btnCPlanePerpObj.UseVisualStyleBackColor = False
'
'btnCPlaneObj
'
@@ -1523,6 +1548,8 @@ Partial Class Form1
'TabConstruct
'
Me.TabConstruct.BackColor = System.Drawing.SystemColors.Control
Me.TabConstruct.Controls.Add(Me.btnMergeSurf)
Me.TabConstruct.Controls.Add(Me.btnInvertSurf)
Me.TabConstruct.Controls.Add(Me.btnRevolve)
Me.TabConstruct.Controls.Add(Me.btnRuled)
Me.TabConstruct.Controls.Add(Me.btnScrew)
@@ -1534,6 +1561,42 @@ Partial Class Form1
Me.TabConstruct.TabIndex = 4
Me.TabConstruct.Text = "Construct"
'
'btnMergeSurf
'
Me.btnMergeSurf.FlatAppearance.BorderColor = System.Drawing.SystemColors.Control
Me.btnMergeSurf.FlatAppearance.BorderSize = 0
Me.btnMergeSurf.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control
Me.btnMergeSurf.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.GradientInactiveCaption
Me.btnMergeSurf.FlatStyle = System.Windows.Forms.FlatStyle.Flat
Me.btnMergeSurf.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.btnMergeSurf.Image = CType(resources.GetObject("btnMergeSurf.Image"), System.Drawing.Image)
Me.btnMergeSurf.ImageAlign = System.Drawing.ContentAlignment.TopCenter
Me.btnMergeSurf.Location = New System.Drawing.Point(0, 240)
Me.btnMergeSurf.Name = "btnMergeSurf"
Me.btnMergeSurf.Size = New System.Drawing.Size(56, 48)
Me.btnMergeSurf.TabIndex = 43
Me.btnMergeSurf.Text = "Merge"
Me.btnMergeSurf.TextAlign = System.Drawing.ContentAlignment.BottomCenter
Me.btnMergeSurf.UseVisualStyleBackColor = False
'
'btnInvertSurf
'
Me.btnInvertSurf.FlatAppearance.BorderColor = System.Drawing.SystemColors.Control
Me.btnInvertSurf.FlatAppearance.BorderSize = 0
Me.btnInvertSurf.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control
Me.btnInvertSurf.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.GradientInactiveCaption
Me.btnInvertSurf.FlatStyle = System.Windows.Forms.FlatStyle.Flat
Me.btnInvertSurf.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.btnInvertSurf.Image = CType(resources.GetObject("btnInvertSurf.Image"), System.Drawing.Image)
Me.btnInvertSurf.ImageAlign = System.Drawing.ContentAlignment.TopCenter
Me.btnInvertSurf.Location = New System.Drawing.Point(0, 288)
Me.btnInvertSurf.Name = "btnInvertSurf"
Me.btnInvertSurf.Size = New System.Drawing.Size(56, 48)
Me.btnInvertSurf.TabIndex = 42
Me.btnInvertSurf.Text = "Flip Surf"
Me.btnInvertSurf.TextAlign = System.Drawing.ContentAlignment.BottomCenter
Me.btnInvertSurf.UseVisualStyleBackColor = False
'
'btnRevolve
'
Me.btnRevolve.FlatAppearance.BorderColor = System.Drawing.SystemColors.Control
@@ -1627,7 +1690,6 @@ Partial Class Form1
'TabEdit
'
Me.TabEdit.BackColor = System.Drawing.SystemColors.Control
Me.TabEdit.Controls.Add(Me.btnInvertSurf)
Me.TabEdit.Controls.Add(Me.btnChangeLayer)
Me.TabEdit.Controls.Add(Me.btnSetCurveTh)
Me.TabEdit.Controls.Add(Me.btnExtendCurve)
@@ -1643,24 +1705,6 @@ Partial Class Form1
Me.TabEdit.TabIndex = 3
Me.TabEdit.Text = "Edit"
'
'btnInvertSurf
'
Me.btnInvertSurf.FlatAppearance.BorderColor = System.Drawing.SystemColors.Control
Me.btnInvertSurf.FlatAppearance.BorderSize = 0
Me.btnInvertSurf.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control
Me.btnInvertSurf.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.GradientInactiveCaption
Me.btnInvertSurf.FlatStyle = System.Windows.Forms.FlatStyle.Flat
Me.btnInvertSurf.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.btnInvertSurf.Image = CType(resources.GetObject("btnInvertSurf.Image"), System.Drawing.Image)
Me.btnInvertSurf.ImageAlign = System.Drawing.ContentAlignment.TopCenter
Me.btnInvertSurf.Location = New System.Drawing.Point(0, 432)
Me.btnInvertSurf.Name = "btnInvertSurf"
Me.btnInvertSurf.Size = New System.Drawing.Size(56, 48)
Me.btnInvertSurf.TabIndex = 41
Me.btnInvertSurf.Text = "Flip Surf"
Me.btnInvertSurf.TextAlign = System.Drawing.ContentAlignment.BottomCenter
Me.btnInvertSurf.UseVisualStyleBackColor = False
'
'btnChangeLayer
'
Me.btnChangeLayer.FlatAppearance.BorderColor = System.Drawing.SystemColors.Control
@@ -2138,6 +2182,154 @@ Partial Class Form1
Me.ToolTip1.StripAmpersands = True
Me.ToolTip1.UseFading = False
'
'ContextMenuMruFiles
'
Me.ContextMenuMruFiles.Font = New System.Drawing.Font("Segoe UI", 9.0!)
Me.ContextMenuMruFiles.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.MruTitle, Me.MruSep, Me.MruFile1, Me.MruFile2, Me.MruFile3, Me.MruFile4, Me.MruFile5, Me.MruFile6, Me.MruFile7, Me.MruFile8})
Me.ContextMenuMruFiles.Name = "ContextMenuMruFiles"
Me.ContextMenuMruFiles.ShowCheckMargin = True
Me.ContextMenuMruFiles.ShowImageMargin = False
Me.ContextMenuMruFiles.Size = New System.Drawing.Size(161, 211)
Me.ContextMenuMruFiles.Text = "Recent Files"
'
'MruTitle
'
Me.MruTitle.BackColor = System.Drawing.SystemColors.Window
Me.MruTitle.CausesValidation = False
Me.MruTitle.Font = New System.Drawing.Font("Segoe UI", 9.0!, System.Drawing.FontStyle.Bold)
Me.MruTitle.Name = "MruTitle"
Me.MruTitle.ReadOnly = True
Me.MruTitle.ShortcutsEnabled = False
Me.MruTitle.Size = New System.Drawing.Size(100, 23)
Me.MruTitle.Text = "Recent Files"
'
'MruSep
'
Me.MruSep.Name = "MruSep"
Me.MruSep.Size = New System.Drawing.Size(157, 6)
'
'MruFile1
'
Me.MruFile1.Name = "MruFile1"
Me.MruFile1.Size = New System.Drawing.Size(160, 22)
Me.MruFile1.Text = "File1"
'
'MruFile2
'
Me.MruFile2.Name = "MruFile2"
Me.MruFile2.Size = New System.Drawing.Size(160, 22)
Me.MruFile2.Text = "File2"
'
'MruFile3
'
Me.MruFile3.Name = "MruFile3"
Me.MruFile3.Size = New System.Drawing.Size(160, 22)
Me.MruFile3.Text = "File3"
'
'MruFile4
'
Me.MruFile4.Name = "MruFile4"
Me.MruFile4.Size = New System.Drawing.Size(160, 22)
Me.MruFile4.Text = "File4"
'
'MruFile5
'
Me.MruFile5.Name = "MruFile5"
Me.MruFile5.Size = New System.Drawing.Size(160, 22)
Me.MruFile5.Text = "File5"
'
'MruFile6
'
Me.MruFile6.Name = "MruFile6"
Me.MruFile6.Size = New System.Drawing.Size(160, 22)
Me.MruFile6.Text = "File6"
'
'MruFile7
'
Me.MruFile7.Name = "MruFile7"
Me.MruFile7.Size = New System.Drawing.Size(160, 22)
Me.MruFile7.Text = "File7"
'
'MruFile8
'
Me.MruFile8.Name = "MruFile8"
Me.MruFile8.Size = New System.Drawing.Size(160, 22)
Me.MruFile8.Text = "File8"
'
'ContextMenuMruScripts
'
Me.ContextMenuMruScripts.Font = New System.Drawing.Font("Segoe UI", 9.0!)
Me.ContextMenuMruScripts.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.MruSTitle, Me.MruSSep, Me.MruSFile1, Me.MruSFile2, Me.MruSFile3, Me.MruSFile4, Me.MruSFile5, Me.MruSFile6, Me.MruSFile7, Me.MruSFile8})
Me.ContextMenuMruScripts.Name = "ContextMenuMruFiles"
Me.ContextMenuMruScripts.ShowCheckMargin = True
Me.ContextMenuMruScripts.ShowImageMargin = False
Me.ContextMenuMruScripts.Size = New System.Drawing.Size(161, 211)
Me.ContextMenuMruScripts.Text = "Recent Files"
'
'MruSTitle
'
Me.MruSTitle.BackColor = System.Drawing.SystemColors.Window
Me.MruSTitle.CausesValidation = False
Me.MruSTitle.Font = New System.Drawing.Font("Segoe UI", 9.0!, System.Drawing.FontStyle.Bold)
Me.MruSTitle.Name = "MruSTitle"
Me.MruSTitle.ReadOnly = True
Me.MruSTitle.ShortcutsEnabled = False
Me.MruSTitle.Size = New System.Drawing.Size(100, 23)
Me.MruSTitle.Text = "Recent Scripts"
'
'MruSSep
'
Me.MruSSep.Name = "MruSSep"
Me.MruSSep.Size = New System.Drawing.Size(157, 6)
'
'MruSFile1
'
Me.MruSFile1.Name = "MruSFile1"
Me.MruSFile1.Size = New System.Drawing.Size(160, 22)
Me.MruSFile1.Text = "File1"
'
'MruSFile2
'
Me.MruSFile2.Name = "MruSFile2"
Me.MruSFile2.Size = New System.Drawing.Size(160, 22)
Me.MruSFile2.Text = "File2"
'
'MruSFile3
'
Me.MruSFile3.Name = "MruSFile3"
Me.MruSFile3.Size = New System.Drawing.Size(160, 22)
Me.MruSFile3.Text = "File3"
'
'MruSFile4
'
Me.MruSFile4.Name = "MruSFile4"
Me.MruSFile4.Size = New System.Drawing.Size(160, 22)
Me.MruSFile4.Text = "File4"
'
'MruSFile5
'
Me.MruSFile5.Name = "MruSFile5"
Me.MruSFile5.Size = New System.Drawing.Size(160, 22)
Me.MruSFile5.Text = "File5"
'
'MruSFile6
'
Me.MruSFile6.Name = "MruSFile6"
Me.MruSFile6.Size = New System.Drawing.Size(160, 22)
Me.MruSFile6.Text = "File6"
'
'MruSFile7
'
Me.MruSFile7.Name = "MruSFile7"
Me.MruSFile7.Size = New System.Drawing.Size(160, 22)
Me.MruSFile7.Text = "File7"
'
'MruSFile8
'
Me.MruSFile8.Name = "MruSFile8"
Me.MruSFile8.Size = New System.Drawing.Size(160, 22)
Me.MruSFile8.Text = "File8"
'
'Form1
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
@@ -2181,6 +2373,10 @@ Partial Class Form1
Me.StatusStrip1.ResumeLayout(False)
Me.StatusStrip1.PerformLayout()
Me.ContextMenuTreeView1.ResumeLayout(False)
Me.ContextMenuMruFiles.ResumeLayout(False)
Me.ContextMenuMruFiles.PerformLayout()
Me.ContextMenuMruScripts.ResumeLayout(False)
Me.ContextMenuMruScripts.PerformLayout()
Me.ResumeLayout(False)
End Sub
@@ -2295,7 +2491,7 @@ End Sub
Friend WithEvents btnCircleCD As System.Windows.Forms.Button
Friend WithEvents btnSetCurveTh As System.Windows.Forms.Button
Friend WithEvents btnCPlaneObj As System.Windows.Forms.Button
Friend WithEvents btnCPlanePerpCurve As System.Windows.Forms.Button
Friend WithEvents btnCPlanePerpObj As System.Windows.Forms.Button
Friend WithEvents btnOffset As System.Windows.Forms.Button
Friend WithEvents btnChangeLayer As System.Windows.Forms.Button
Friend WithEvents btnRectangle2P As System.Windows.Forms.Button
@@ -2311,12 +2507,35 @@ End Sub
Friend WithEvents tsStatusCursorPos As System.Windows.Forms.ToolStripStatusLabel
Friend WithEvents tsStatusUnits As System.Windows.Forms.ToolStripStatusLabel
Friend WithEvents btnInsert As System.Windows.Forms.Button
Friend WithEvents btnInvertSurf As System.Windows.Forms.Button
Friend WithEvents btnText As System.Windows.Forms.Button
Friend WithEvents btnPolygon As System.Windows.Forms.Button
Friend WithEvents tsStatusReg As System.Windows.Forms.ToolStripStatusLabel
Friend WithEvents btnRevolve As System.Windows.Forms.Button
Friend WithEvents ToolTip1 As System.Windows.Forms.ToolTip
Friend WithEvents btnCPlaneView As System.Windows.Forms.Button
Friend WithEvents ContextMenuMruFiles As System.Windows.Forms.ContextMenuStrip
Friend WithEvents MruFile1 As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents MruFile2 As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents MruFile3 As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents MruFile4 As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents MruFile5 As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents MruFile6 As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents MruFile7 As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents MruFile8 As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents MruTitle As System.Windows.Forms.ToolStripTextBox
Friend WithEvents MruSep As System.Windows.Forms.ToolStripSeparator
Friend WithEvents ContextMenuMruScripts As System.Windows.Forms.ContextMenuStrip
Friend WithEvents MruSTitle As System.Windows.Forms.ToolStripTextBox
Friend WithEvents MruSSep As System.Windows.Forms.ToolStripSeparator
Friend WithEvents MruSFile1 As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents MruSFile2 As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents MruSFile3 As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents MruSFile4 As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents MruSFile5 As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents MruSFile6 As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents MruSFile7 As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents MruSFile8 As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents btnMergeSurf As System.Windows.Forms.Button
Friend WithEvents btnInvertSurf As System.Windows.Forms.Button
End Class
+132 -115
View File
@@ -196,32 +196,32 @@
<data name="btnOpen.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
AAAASUVORK5CYII=
</value>
</data>
<data name="btnSave.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
@@ -329,14 +329,15 @@
<data name="btnExec.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
wwAADsMBx2+oZAAAAAd0SU1FB94KEgogBbw5BbEAAAGbSURBVFhHxZQ9TgJRFIVP438QNBZuhAhI3ICO
BBM2YEFh5MeEqB3T0hhNRIPLoLB3E3Y2bmScQ/KSm8kZHMR5FF9z8t47373FQxRFmTgdo6byZZGhggIk
7KNE1Jm/IEPF3gBvFAgmqK9MgARj1MnoEgWizi6CDBVOYLeN6Uwi3oRXgeIdRk5gJhELkMEAO0TdyYIM
FRQgTiApoe5kQYYKJ1D+xomVOH/FMXm4wRZRd+chQ4UVUBLchBeBw3fcKomzZ1RJp4MNot5QyFBhBeZJ
cBNeBNIkghdUSBhinai3LDJUOIH9Rzxlkog3kZtAUuLgHtNSFx+keI1PEvRQvohRb1lkqEgKOAmWr0zA
Fheu8EVY3uyhzvJhG9vqLYsMFUmB5OROwJbnJpA2eaOLGssX+ZBkqHACaZPb8lwF1OTNPqqztQ+xqe7O
Q4YKW24FbHmuAmryoIMKy8PW7x9OGjJUJAVsuRcBO3mjhyOWT9pYU2cXQYYKJ8BywnLvApyaH81/FDtk
qGC5W/vKBFS+LDL0iQx9IkOfyNAfEX4Asj8tHRoshHQAAAAASUVORK5CYII=
xAAADsQBlSsOGwAAAAd0SU1FB98DBxcKNDf57/kAAAHCSURBVFhHxZQ7TgJRGIVP4zsIGgs3QgQkbkBH
ookbsKAw8jAhase0NEYT0eAyKOzdhJ2NGxnnTLzmz81hHCAMJF8YDv+957u3GERRlInjIWoqnxcZKihA
wi5KRM3MggwVOz28USAYob40ARIMUSeDSxSImp0GGSqcwHYT40QivolcBYp3GDiBRCIWIL0etohakwUZ
KihAnIAvodZkQYYKJ1D+xpGVOH3FIXm4wQZRa9OQocIKKAneRC4C+++4VRInz6iSVgtrRO2hkKHCCqRJ
8CZyEZgkEbygQsIQq0TtZZGhwgnsPuIpk0R8EwsT8CX27jEutfFBitf4JEEH5fMYtZdFhgpfwEmwfGkC
trhwhS/C8rMO6izvN7Gp9rLIUOEL+Cd3ArZ8YQKTTt5oo8byaV5IMlQ4gUknt+ULFVAnP+uimlx7H+tq
rU/8qf892z/SsOVWwJZnEWB5TOgk5JBCnTxoocLy8OL/Fw5x5b/PiYQcVPgCtnwKAZZagVAOKuzJGx0c
sHzUxIqaTcMKJN/2zzScAMsJy3MX4Kn5opml2MFiR/LbH5gEy921zyPgI0MFy1U+LzLMExnmiQzzRIb5
EeEHXO78c7eoXAcAAAAASUVORK5CYII=
</value>
</data>
<data name="btnCPlane.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
@@ -730,7 +731,7 @@
xX7bJ7sAAAAASUVORK5CYII=
</value>
</data>
<data name="btnCPlanePerpCurve.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<data name="btnCPlanePerpObj.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
xAAADsQBlSsOGwAAAAd0SU1FB94LFRAUF0WssKEAAAEpSURBVFhHxZHLccMwDAV1TTcpwMWlmdzSUi72
@@ -881,66 +882,66 @@
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAC4
DQAAAk1TRnQBSQFMAgEBDgEAAVgBDwFYAQ8BEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
AwABQAMAAUADAAEBAQABCAYAARAYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
AWYDAAGZAwABzAIAATMDAAIzAgABMwFmAgABMwGZAgABMwHMAgABMwH/AgABZgMAAWYBMwIAAmYCAAFm
AZkCAAFmAcwCAAFmAf8CAAGZAwABmQEzAgABmQFmAgACmQIAAZkBzAIAAZkB/wIAAcwDAAHMATMCAAHM
AWYCAAHMAZkCAALMAgABzAH/AgAB/wFmAgAB/wGZAgAB/wHMAQABMwH/AgAB/wEAATMBAAEzAQABZgEA
ATMBAAGZAQABMwEAAcwBAAEzAQAB/wEAAf8BMwIAAzMBAAIzAWYBAAIzAZkBAAIzAcwBAAIzAf8BAAEz
AWYCAAEzAWYBMwEAATMCZgEAATMBZgGZAQABMwFmAcwBAAEzAWYB/wEAATMBmQIAATMBmQEzAQABMwGZ
AWYBAAEzApkBAAEzAZkBzAEAATMBmQH/AQABMwHMAgABMwHMATMBAAEzAcwBZgEAATMBzAGZAQABMwLM
AQABMwHMAf8BAAEzAf8BMwEAATMB/wFmAQABMwH/AZkBAAEzAf8BzAEAATMC/wEAAWYDAAFmAQABMwEA
AWYBAAFmAQABZgEAAZkBAAFmAQABzAEAAWYBAAH/AQABZgEzAgABZgIzAQABZgEzAWYBAAFmATMBmQEA
AWYBMwHMAQABZgEzAf8BAAJmAgACZgEzAQADZgEAAmYBmQEAAmYBzAEAAWYBmQIAAWYBmQEzAQABZgGZ
AWYBAAFmApkBAAFmAZkBzAEAAWYBmQH/AQABZgHMAgABZgHMATMBAAFmAcwBmQEAAWYCzAEAAWYBzAH/
AQABZgH/AgABZgH/ATMBAAFmAf8BmQEAAWYB/wHMAQABzAEAAf8BAAH/AQABzAEAApkCAAGZATMBmQEA
AZkBAAGZAQABmQEAAcwBAAGZAwABmQIzAQABmQEAAWYBAAGZATMBzAEAAZkBAAH/AQABmQFmAgABmQFm
ATMBAAGZATMBZgEAAZkBZgGZAQABmQFmAcwBAAGZATMB/wEAApkBMwEAApkBZgEAA5kBAAKZAcwBAAKZ
Af8BAAGZAcwCAAGZAcwBMwEAAWYBzAFmAQABmQHMAZkBAAGZAswBAAGZAcwB/wEAAZkB/wIAAZkB/wEz
AQABmQHMAWYBAAGZAf8BmQEAAZkB/wHMAQABmQL/AQABzAMAAZkBAAEzAQABzAEAAWYBAAHMAQABmQEA
AcwBAAHMAQABmQEzAgABzAIzAQABzAEzAWYBAAHMATMBmQEAAcwBMwHMAQABzAEzAf8BAAHMAWYCAAHM
AWYBMwEAAZkCZgEAAcwBZgGZAQABzAFmAcwBAAGZAWYB/wEAAcwBmQIAAcwBmQEzAQABzAGZAWYBAAHM
ApkBAAHMAZkBzAEAAcwBmQH/AQACzAIAAswBMwEAAswBZgEAAswBmQEAA8wBAALMAf8BAAHMAf8CAAHM
Af8BMwEAAZkB/wFmAQABzAH/AZkBAAHMAf8BzAEAAcwC/wEAAcwBAAEzAQAB/wEAAWYBAAH/AQABmQEA
AcwBMwIAAf8CMwEAAf8BMwFmAQAB/wEzAZkBAAH/ATMBzAEAAf8BMwH/AQAB/wFmAgAB/wFmATMBAAHM
AmYBAAH/AWYBmQEAAf8BZgHMAQABzAFmAf8BAAH/AZkCAAH/AZkBMwEAAf8BmQFmAQAB/wKZAQAB/wGZ
AcwBAAH/AZkB/wEAAf8BzAIAAf8BzAEzAQAB/wHMAWYBAAH/AcwBmQEAAf8CzAEAAf8BzAH/AQAC/wEz
AQABzAH/AWYBAAL/AZkBAAL/AcwBAAJmAf8BAAFmAf8BZgEAAWYC/wEAAf8CZgEAAf8BZgH/AQAC/wFm
AQABIQEAAaUBAANfAQADdwEAA4YBAAOWAQADywEAA7IBAAPXAQAD3QEAA+MBAAPqAQAD8QEAA/gBAAHw
AfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD/0MAC/w1AAL8BwAC/AcA
B/wmAAH8AgAB/AUAAfwBAAH8CQAD/CgAAfwDAAH8AwAB/AIAAfwJAAP8KAAB/AQAAfwBAAH8AwAB/AkA
A/woAAH8BAAC/AQAAfwJAAP8JwAB/AEABPwBAAL8BAAB/AgAA/wnAAL8BQAB/AEAAfwDAAH8CAAD/CgA
AfwFAAH8AgAB/AIAAfwIAAP8KQAB/AMAAfwEAAH8AQAB/AgAA/wqAAL8AQAB/AUAAvwEAAH8AwAD/AMA
AfwoAAL8AwAE/AQAAfwDAAP8AwAB/CkABPwIAAv89QAC/CMABvwPAAL8BAAC/CMAB/wNAAP8BAAC/A0A
AvwZAAL8DAAD/AUAAvwNAAL8GgAC/AoAA/wGAAP8DAAC/AUABfwQAAL8CQAD/AgAAvwMAAL8BAAH/AMA
AvwKAAL8CAAD/AkAA/wLAAP8AgAD/AMAAvwDAAL8CgAC/AcAA/wLAAP8CwAG/AUAAvwCAAL8CgAC/AYA
A/wMAAP8DAAD/AcAAvwCAAL8CgAC/AUAA/wOAAT8FAAC/AIAAvwKAAL8BAAD/BAABfwSAAL8AgAC/AoA
AvwDAAP8EwAH/BIAA/wIAAP8AwAC/BYABfwTAAz8NQAJ/IAAAfk/AAL5NwAK+QIACNkKAAL8IAAK+QoA
AdkJAAP8HgAC+gYAAvkMAAHZCQAD/BAAAvwJAAL8A/oFAAH5BAAI2QIAAdkJAAP8DgAE/AgAAvwBAAP6
CgAI2QIAAdkJAAP8AgAC/AgABvwHAAL8AgAD+goACNkCAAHZCQAD/AEAAvwIAAb8BwAC/AMAA/oBAAH6
CAAI2QIAAdkJAAX8CQAE/AgAAvwEAAT6CQAI2QwABPwKAAL8CQAC/AUAA/oKAAjZCQAG/BUAAvwEAAT6
CwAI2QgABvwTAAb8OwAE/D0AAvyOAAP5A/oD+wP8NAAD+QP6A/sD/BcABPwIAAmsCAAD+QP6A/sD/AkA
AvkLAAT8AgAC+QUACawBhQcAA/kD+gP7A/wJAAL5CgAE/AEAA/kGAAmsAoUGAAP5A/oD+wP8FgAC/AEA
AvkDAAIEAwAJrAOFBQAD+QP6A/sD/AkAAvkMAAL5AgAD+gIEAwAJrASFBAAD+QP6A/sD/AkAAvkLAAL5
AQAE+gEAAgQEAAjZBYUDAAP5A/oD+wP8CgAC+QgAA/kE+gMAAgQFAAjZBYUCAAP5A/oD+wP8CwAC+QYA
AvkCAAL6BQACBAYACNkEhQIAA/kD+gP7A/wHAAL5AgAC+QkAAvoCAAMHCgAI2QOFAgAD+QP6A/sD/AcA
AvkCAAL5CQAC+gIAAwcLAAjZAoUCAAP5A/oD+wP8CAAE+QsAAfoRAAjZAYUCAAP5A/oD+wP8NAAD+QP6
A/sD/HIAAUIBTQE+BwABPgMAASgDAAFAAwABQAMAAQEBAAEBBgABAhYAA/8BAAT/BAABwAEHAv8EAAHP
AecB8AEfBAABtwHXAfwBfwQAAbsBtwH8AX8EAAG9AXcB/AF/BAABvAH3AfwBfwQAAUIBewH8AX8EAAE+
AbsB/AF/BAABvgHbAfwBfwQAAd0B6wH8AX8EAAHlAfMB3AF3BAAB+QHDAdwBdwQAAfwBPwHAAQcEAAT/
BAAE/wQACv8BzwP/Af4BBwH/AfMBzwP/Af4BAwH/AeMBzwH/AZ8C/wHzAf8BxwHPAf8BnwL/AfkB/wGP
AccB/wGfAQcB/wH5Af8BHwHnAf8BngEDAZ8B+QH+AT8B4wH/AYwBcwGfAfkB/AF/AfEB/wHAAfkBnwH5
AfgB/wHxAf8B4wH5AZ8B+QHxAf8B+AF/Af8B+QGfAfkB4wH/AfwBHwH/AfkBnwH5AccC/wEBAv8BjwHx
Ac8C/wHBAv8BwAEDBv8B4AEPD/8B9wb/Ac8B8wb/AYABAQGAAX8B5wP/AYABAQH/Ab8B4wP/AcMB8wH/
Ad8B8QH/Af4BfwHBAfcBgAFvAfgB/wH8AT8ByAH/AcABNwH8AWcB+AEfAcwBfwHgARsB/gEnAfgBHwHO
AS8B8AENAf8BBwH8AT8BzwEPAfgBBwH/AYcB/gF/Ac8BjwH8AQMB/gEHAv8BzwEPAf4BAQH+AQcC/wED
B/8Bhwf/Ac8R/wHAAQMC/wH4AR8C/wHAAQMC/wHgAWcBgAE/AcABAwH+AX8B0AHLAYABHwHAAQMB/gF/
AaEBHQGAAQ8BwAEDAv8BsgFxAYABBwHAAQMB/gF/AXkBggGAAQMBwAEDAf4BfwFyARIBwAEBAcABAwH/
AT8BQAFyAeABAAHAAQMB/wGfARkBEgHwAQABwAEDAfkBnwGyAQ0B+AEAAcABAwH5AZ8BsgENAfwBAAHA
AQMB/AE/AdsBGwH+AQABwAEDAv8C5wL/AcABAwL/AfgBHwr/Cw==
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAACw
DQAAAk1TRnQBSQFMAgEBDgEABRABAAEQAQAE/wEJAQAI/wFCAU0BNgEEBgABNgEEAgABKAMAAUADAAFA
AwABAQEAAQgGAAEQGAABgAIAAYADAAKAAQABgAMAAYABAAGAAQACgAIAA8ABAAHAAdwBwAEAAfABygGm
AQABMwUAATMBAAEzAQABMwEAAjMCAAMWAQADHAEAAyIBAAMpAQADVQEAA00BAANCAQADOQEAAYABfAH/
AQACUAH/AQABkwEAAdYBAAH/AewBzAEAAcYB1gHvAQAB1gLnAQABkAGpAa0CAAH/ATMDAAFmAwABmQMA
AcwCAAEzAwACMwIAATMBZgIAATMBmQIAATMBzAIAATMB/wIAAWYDAAFmATMCAAJmAgABZgGZAgABZgHM
AgABZgH/AgABmQMAAZkBMwIAAZkBZgIAApkCAAGZAcwCAAGZAf8CAAHMAwABzAEzAgABzAFmAgABzAGZ
AgACzAIAAcwB/wIAAf8BZgIAAf8BmQIAAf8BzAEAATMB/wIAAf8BAAEzAQABMwEAAWYBAAEzAQABmQEA
ATMBAAHMAQABMwEAAf8BAAH/ATMCAAMzAQACMwFmAQACMwGZAQACMwHMAQACMwH/AQABMwFmAgABMwFm
ATMBAAEzAmYBAAEzAWYBmQEAATMBZgHMAQABMwFmAf8BAAEzAZkCAAEzAZkBMwEAATMBmQFmAQABMwKZ
AQABMwGZAcwBAAEzAZkB/wEAATMBzAIAATMBzAEzAQABMwHMAWYBAAEzAcwBmQEAATMCzAEAATMBzAH/
AQABMwH/ATMBAAEzAf8BZgEAATMB/wGZAQABMwH/AcwBAAEzAv8BAAFmAwABZgEAATMBAAFmAQABZgEA
AWYBAAGZAQABZgEAAcwBAAFmAQAB/wEAAWYBMwIAAWYCMwEAAWYBMwFmAQABZgEzAZkBAAFmATMBzAEA
AWYBMwH/AQACZgIAAmYBMwEAA2YBAAJmAZkBAAJmAcwBAAFmAZkCAAFmAZkBMwEAAWYBmQFmAQABZgKZ
AQABZgGZAcwBAAFmAZkB/wEAAWYBzAIAAWYBzAEzAQABZgHMAZkBAAFmAswBAAFmAcwB/wEAAWYB/wIA
AWYB/wEzAQABZgH/AZkBAAFmAf8BzAEAAcwBAAH/AQAB/wEAAcwBAAKZAgABmQEzAZkBAAGZAQABmQEA
AZkBAAHMAQABmQMAAZkCMwEAAZkBAAFmAQABmQEzAcwBAAGZAQAB/wEAAZkBZgIAAZkBZgEzAQABmQEz
AWYBAAGZAWYBmQEAAZkBZgHMAQABmQEzAf8BAAKZATMBAAKZAWYBAAOZAQACmQHMAQACmQH/AQABmQHM
AgABmQHMATMBAAFmAcwBZgEAAZkBzAGZAQABmQLMAQABmQHMAf8BAAGZAf8CAAGZAf8BMwEAAZkBzAFm
AQABmQH/AZkBAAGZAf8BzAEAAZkC/wEAAcwDAAGZAQABMwEAAcwBAAFmAQABzAEAAZkBAAHMAQABzAEA
AZkBMwIAAcwCMwEAAcwBMwFmAQABzAEzAZkBAAHMATMBzAEAAcwBMwH/AQABzAFmAgABzAFmATMBAAGZ
AmYBAAHMAWYBmQEAAcwBZgHMAQABmQFmAf8BAAHMAZkCAAHMAZkBMwEAAcwBmQFmAQABzAKZAQABzAGZ
AcwBAAHMAZkB/wEAAswCAALMATMBAALMAWYBAALMAZkBAAPMAQACzAH/AQABzAH/AgABzAH/ATMBAAGZ
Af8BZgEAAcwB/wGZAQABzAH/AcwBAAHMAv8BAAHMAQABMwEAAf8BAAFmAQAB/wEAAZkBAAHMATMCAAH/
AjMBAAH/ATMBZgEAAf8BMwGZAQAB/wEzAcwBAAH/ATMB/wEAAf8BZgIAAf8BZgEzAQABzAJmAQAB/wFm
AZkBAAH/AWYBzAEAAcwBZgH/AQAB/wGZAgAB/wGZATMBAAH/AZkBZgEAAf8CmQEAAf8BmQHMAQAB/wGZ
Af8BAAH/AcwCAAH/AcwBMwEAAf8BzAFmAQAB/wHMAZkBAAH/AswBAAH/AcwB/wEAAv8BMwEAAcwB/wFm
AQAC/wGZAQAC/wHMAQACZgH/AQABZgH/AWYBAAFmAv8BAAH/AmYBAAH/AWYB/wEAAv8BZgEAASEBAAGl
AQADXwEAA3cBAAOGAQADlgEAA8sBAAOyAQAD1wEAA90BAAPjAQAD6gEAA/EBAAP4AQAB8AH7Af8BAAGk
AqABAAOAAwAB/wIAAf8DAAL/AQAB/wMAAf8BAAH/AQAC/wIAA/9DAAv8NQAC/AcAAvwHAAf8JgAB/AIA
AfwFAAH8AQAB/AkAA/woAAH8AwAB/AMAAfwCAAH8CQAD/CgAAfwEAAH8AQAB/AMAAfwJAAP8KAAB/AQA
AvwEAAH8CQAD/CcAAfwBAAT8AQAC/AQAAfwIAAP8JwAC/AUAAfwBAAH8AwAB/AgAA/woAAH8BQAB/AIA
AfwCAAH8CAAD/CkAAfwDAAH8BAAB/AEAAfwIAAP8KgAC/AEAAfwFAAL8BAAB/AMAA/wDAAH8KAAC/AMA
BPwEAAH8AwAD/AMAAfwpAAT8CAAL/PUAAvwjAAb8DwAC/AQAAvwjAAf8DQAD/AQAAvwNAAL8GQAC/AwA
A/wFAAL8DQAC/BoAAvwKAAP8BgAD/AwAAvwFAAX8EAAC/AkAA/wIAAL8DAAC/AQAB/wDAAL8CgAC/AgA
A/wJAAP8CwAD/AIAA/wDAAL8AwAC/AoAAvwHAAP8CwAD/AsABvwFAAL8AgAC/AoAAvwGAAP8DAAD/AwA
A/wHAAL8AgAC/AoAAvwFAAP8DgAE/BQAAvwCAAL8CgAC/AQAA/wQAAX8EgAC/AIAAvwKAAL8AwAD/BMA
B/wSAAP8CAAD/AMAAvwWAAX8EwAM/DUACfyAAAH5PwAC+TcACvkCAAjZCgAC/CAACvkKAAHZCQAD/B4A
AvoGAAL5DAAB2QkAA/wQAAL8CQAC/AP6BQAB+QQACNkCAAHZCQAD/A4ABPwIAAL8AQAD+goACNkCAAHZ
CQAD/AIAAvwIAAb8BwAC/AIAA/oKAAjZAgAB2QkAA/wBAAL8CAAG/AcAAvwDAAP6AQAB+ggACNkCAAHZ
CQAF/AkABPwIAAL8BAAE+gkACNkMAAT8CgAC/AkAAvwFAAP6CgAI2QkABvwVAAL8BAAE+gsACNkIAAb8
EwAG/DsABPw9AAL8jgAD+QP6A/sD/DQAA/kD+gP7A/wXAAT8CAAJrAgAA/kD+gP7A/wJAAL5CwAE/AIA
AvkFAAmsAYUHAAP5A/oD+wP8CQAC+QoABPwBAAP5BgAJrAKFBgAD+QP6A/sD/BYAAvwBAAL5AwACBAMA
CawDhQUAA/kD+gP7A/wJAAL5DAAC+QIAA/oCBAMACawEhQQAA/kD+gP7A/wJAAL5CwAC+QEABPoBAAIE
BAAI2QWFAwAD+QP6A/sD/AoAAvkIAAP5BPoDAAIEBQAI2QWFAgAD+QP6A/sD/AsAAvkGAAL5AgAC+gUA
AgQGAAjZBIUCAAP5A/oD+wP8BwAC+QIAAvkJAAL6AgADBwoACNkDhQIAA/kD+gP7A/wHAAL5AgAC+QkA
AvoCAAMHCwAI2QKFAgAD+QP6A/sD/AgABPkLAAH6EQAI2QGFAgAD+QP6A/sD/DQAA/kD+gP7A/xyAAFC
AU0BPgcAAT4DAAEoAwABQAMAAUADAAEBAQABAQYAAQIWAAP/AQAE/wQAAcABBwL/BAABzwHnAfABHwQA
AbcB1wH8AX8EAAG7AbcB/AF/BAABvQF3AfwBfwQAAbwB9wH8AX8EAAFCAXsB/AF/BAABPgG7AfwBfwQA
Ab4B2wH8AX8EAAHdAesB/AF/BAAB5QHzAdwBdwQAAfkBwwHcAXcEAAH8AT8BwAEHBAAE/wQABP8EAAr/
Ac8D/wH+AQcB/wHzAc8D/wH+AQMB/wHjAc8B/wGfAv8B8wH/AccBzwH/AZ8C/wH5Af8BjwHHAf8BnwEH
Af8B+QH/AR8B5wH/AZ4BAwGfAfkB/gE/AeMB/wGMAXMBnwH5AfwBfwHxAf8BwAH5AZ8B+QH4Af8B8QH/
AeMB+QGfAfkB8QH/AfgBfwH/AfkBnwH5AeMB/wH8AR8B/wH5AZ8B+QHHAv8BAQL/AY8B8QHPAv8BwQL/
AcABAwb/AeABDw//AfcG/wHPAfMG/wGAAQEBgAF/AecD/wGAAQEB/wG/AeMD/wHDAfMB/wHfAfEB/wH+
AX8BwQH3AYABbwH4Af8B/AE/AcgB/wHAATcB/AFnAfgBHwHMAX8B4AEbAf4BJwH4AR8BzgEvAfABDQH/
AQcB/AE/Ac8BDwH4AQcB/wGHAf4BfwHPAY8B/AEDAf4BBwL/Ac8BDwH+AQEB/gEHAv8BAwf/AYcH/wHP
Ef8BwAEDAv8B+AEfAv8BwAEDAv8B4AFnAYABPwHAAQMB/gF/AdABywGAAR8BwAEDAf4BfwGhAR0BgAEP
AcABAwL/AbIBcQGAAQcBwAEDAf4BfwF5AYIBgAEDAcABAwH+AX8BcgESAcABAQHAAQMB/wE/AUABcgHg
AQABwAEDAf8BnwEZARIB8AEAAcABAwH5AZ8BsgENAfgBAAHAAQMB+QGfAbIBDQH8AQABwAEDAfwBPwHb
ARsB/gEAAcABAwL/AucC/wHAAQMC/wH4AR8K/ws=
</value>
</data>
<metadata name="ImageList2.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
@@ -951,7 +952,7 @@
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADW
CAAAAk1TRnQBSQFMAgEBAgEAAXgBBgF4AQYBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
CAAAAk1TRnQBSQFMAgEBAgEAATABBwEwAQcBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
AwABQAMAARADAAEBAQABCAYAAQQYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
@@ -1049,13 +1050,13 @@
</data>
<data name="btnArcPDP.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAAHdElNRQffAhUIECU9bmc5AAABJElEQVRYR8WVUQ6CMBBE
+fVOHo6zeDV/TDxE7VQWl9kpUWhrkxdwdtmZIoQppfRXpDgSKZ4lr2sGJ8ZV9QEpngFmxfT2+LATIgjG
c7rclc6shh5v7kLwtSAIAOaGqoO8orFxJoA3r4XIq24OjgZQ5kZp3jcu/zGO5TeZW50JAmBjsA6OhMHQ
XF32GFLkABjghhnVob8gRR8ARmTczBxIkQJ0MwdS3AnQ1BxIsRKguTmQogrAPa2QogjQZfdAihyA6y2R
IgXotnsgRR9A1VsShbxjH6DHHfAzQyHz9YfkCIvHbDO5uDV3IXzfUWCamZfzEoIbegeAqQ8wc0PXAACm
myMVRzwD9QBLgT+/Td+CvN63vhZgNFIciRRHIsWRSHEkUhxHml4ROIeysZlykAAAAABJRU5ErkJggg==
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
xAAADsQBlSsOGwAAAAd0SU1FB98CFQgQJT1uZzkAAAEkSURBVFhHxZVRDoIwEET59U4ejrN4NX9MPETt
VBaX2SlRaGuTF3B22ZkihCml9FekOBIpniWvawYnxlX1ASmeAWbF9Pb4sBMiCMZzutyVzqyGHm/uQvC1
IAgA5oaqg7yisXEmgDevhcirbg6OBlDmRmneNy7/MY7lN5lbnQkCYGOwDo6EwdBcXfYYUuQAGOCGGdWh
vyBFHwBGZNzMHEiRAnQzB1LcCdDUHEixEqC5OZCiCsA9rZCiCNBl90CKHIDrLZEiBei2eyBFH0DVWxKF
vGMfoMcd8DNDIfP1h+QIi8dsM7m4NXchfN9RYJqZl/MSght6B4CpDzBzQ9cAAKabIxVHPAP1AEuBP79N
34K83re+FmA0UhyJFEcixZFIcSRSHEeaXhE4h7KxmXKQAAAAAElFTkSuQmCC
</value>
</data>
<data name="btnCircleCP.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
@@ -1109,6 +1110,27 @@
7jjsWENEgupQHHZ0iEhQHY7DjjkiElSn4rCjIiJBdToOO0ZEJKi6xFEO9WjULY70EOPlf7GoaxzpIY+n
l+geR3pYuYA+11N6+IML1H4HLvn4UQ7xEovL4rDjSHYcyY4j2XEkO45kx3HC4w3Q1q4ttTanIgAAAABJ
RU5ErkJggg==
</value>
</data>
<data name="btnMergeSurf.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
xAAADsQBlSsOGwAAAAd0SU1FB98DCAoSIZSisz4AAADSSURBVFhHxY/BDcIwEARdAC3RDs3woAVEG3x4
UwldGM5SovMxBGHhvcfIyUTJbEqtNRWUSlB+o1wer4Of/QrKLSyeNqDFz/dDyoA1njGgi6sHtHjWgDWc
MaCLqgdQsLtOG+DO+M4oLGmAdykDwn18ZxSW4W/zBsRTOsBHYUDZXW8jvLWiaJKC/np/PCEWIW9AvLVQ
fhrw57jBkgZMiBssaYBFBqDve1j6AZP+fIHlMmBy3GBpYUHcYGlxiwxA39sCpRKUSlAqQakEpRKUSlDq
qOUJ9DK9zyD4S1EAAAAASUVORK5CYII=
</value>
</data>
<data name="btnInvertSurf.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
xAAADsQBlSsOGwAAAAd0SU1FB98BCQoRC6ZIHS4AAAEaSURBVFhHxY/BkcIwEAQVACmRDsnwIAWKNPjw
4kEkfIlAaGSJWq1nDTaq1VX1WZ7TVbdDjHEodPSEjltJP+nB/2ZBxy1APiwgi+/hNSSgyocESLl7AGTD
Aqp4SICUdg8I58dBvmuoUJy/BYT98TTbPockD5dnOrYXJFZA8yT/Vwm7601HTL+KPIMzId8jAXKrAZBQ
EKAiWvkC0+V5wOwd96poiRIxVcgI8dUSHYCzGSC/WqLk+e7nAFH5Uosq1E8dYKHleWteypdaQCClqwOU
PG96WIIKf5Rb0NHCCtgqB3S0YAH/yAEdLViAvrMWOlrIgB5yQEeLGtBLDuhoAXFPOaCjRW85oKMndPSE
jp7Q0RM6ekJHT+joRwxv6asQzW7YWBIAAAAASUVORK5CYII=
</value>
</data>
<data name="btnRevolve.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
@@ -1192,17 +1214,6 @@
Y4C55tAaQOosc+gKMMscbgvAjp18d86hEWFGgGQcv0Zr90FTwmiAwjie9KsSkv6/r4SRAJl5PLmx/Kos
tDAYYN9x+C+5Qgu9AY5vX2UOWhgIsM/L23NdgxbGA/BR9faghTxAI/l8LVpoXFAyJcAo5c4rTNETU/TE
FD0xRU9M0RNT9CMsP8YUDae/Iv6fAAAAAElFTkSuQmCC
</value>
</data>
<data name="btnInvertSurf.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
xAAADsQBlSsOGwAAAAd0SU1FB98BCQoRC6ZIHS4AAAEaSURBVFhHxY/BkcIwEAQVACmRDsnwIAWKNPjw
4kEkfIlAaGSJWq1nDTaq1VX1WZ7TVbdDjHEodPSEjltJP+nB/2ZBxy1APiwgi+/hNSSgyocESLl7AGTD
Aqp4SICUdg8I58dBvmuoUJy/BYT98TTbPockD5dnOrYXJFZA8yT/Vwm7601HTL+KPIMzId8jAXKrAZBQ
EKAiWvkC0+V5wOwd96poiRIxVcgI8dUSHYCzGSC/WqLk+e7nAFH5Uosq1E8dYKHleWteypdaQCClqwOU
PG96WIIKf5Rb0NHCCtgqB3S0YAH/yAEdLViAvrMWOlrIgB5yQEeLGtBLDuhoAXFPOaCjRW85oKMndPSE
jp7Q0RM6ekJHT+joRwxv6asQzW7YWBIAAAAASUVORK5CYII=
</value>
</data>
<data name="btnChangeLayer.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
@@ -1455,8 +1466,14 @@
<metadata name="ToolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 53</value>
</metadata>
<metadata name="ContextMenuMruFiles.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>116, 53</value>
</metadata>
<metadata name="ContextMenuMruScripts.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>273, 53</value>
</metadata>
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>43</value>
<value>97</value>
</metadata>
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
+133 -40
View File
@@ -34,6 +34,8 @@ Public Class Form1
Private m_bShowGridFrame As Boolean
Private m_bCPlaneTypePos As Boolean
Private WithEvents m_Controller As New Controller
Private m_MruFiles As New MruList
Private m_MruScripts As New MruList
Public Function GetInstance() As Integer
Return m_nInstance
@@ -47,6 +49,7 @@ Public Class Form1
Return m_sDataRoot
End Function
'-------------------------------- Form ------------------------------------------------------------
Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
' Installo aggiornamento interfaccia
@@ -208,6 +211,9 @@ Public Class Form1
ElseIf bLuaReg Then
tsStatusReg.BackColor = Color.Red
End If
' Impostazioni MruLists
m_MruFiles.Init(m_sIniFile, S_MRUFILES, 8)
m_MruScripts.Init(m_sIniFile, S_MRUSCRIPTS, 8)
' Apro progetto vuoto
m_Controller.NewProject(True)
' Impostazione Testi e ToolTips
@@ -332,6 +338,7 @@ Public Class Form1
End If
End Sub
'-------------------------------- Events management ----------------------------------------------
Private Sub OnCursorPos(ByVal sender As Object, ByVal sCursorPos As String) Handles Scene1.OnCursorPos
tsStatusCursorPos.Text = sCursorPos
@@ -357,8 +364,8 @@ Public Class Form1
m_Controller.MouseSelectedLayer(nId)
End Sub
Private Sub OnMousePointFromSelection(ByVal sender As Object, ByVal PtP As Point3d) Handles Scene1.OnMousePointFromSelection
m_Controller.SetLastPoint3d(PtP)
Private Sub OnMousePointFromSelection(ByVal sender As Object, ByVal PtP As Point3d, ByVal nAux As Integer) Handles Scene1.OnMousePointFromSelection
m_Controller.SetPointFromSelection(PtP, nAux)
End Sub
Private Sub OnMouseDone(ByVal sender As Object) Handles Scene1.OnMouseDone
@@ -389,7 +396,7 @@ Public Class Form1
Private Sub OnNewProject(ByVal sender As Object, ByVal bOk As Boolean) Handles m_Controller.OnNewProject
If Not bOk Then
MessageBox.Show("Error on new file", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
MessageBox.Show(EgtMsg(10002), EgtMsg(10001), MessageBoxButtons.OK, MessageBoxIcon.Error) ' Error on new file - Error
End If
End Sub
@@ -399,18 +406,26 @@ Public Class Form1
Private Sub OnOpenProject(ByVal sender As Object, ByVal sFile As String, ByVal bOk As Boolean) Handles m_Controller.OnOpenProject
WritePrivateProfileString(S_GENERAL, K_LASTNGEDIR, Path.GetDirectoryName(sFile), m_sIniFile)
If Not bOk Then
MessageBox.Show("Error opening file", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
If bOk Then
m_MruFiles.Add(sFile)
Else
m_MruFiles.Remove(sFile)
Dim sMsg As String = EgtMsg(10003) & " '" & sFile & "'" 'Error opening file
MessageBox.Show(sMsg, EgtMsg(10001), MessageBoxButtons.OK, MessageBoxIcon.Error) 'Error
End If
End Sub
Private Sub OnSavingProject(ByVal sender As Object, ByVal sFile As String) Handles m_Controller.OnSavingProject
WritePrivateProfileString(S_GENERAL, K_LASTNGEDIR, Path.GetDirectoryName(sFile), m_sIniFile)
Private Sub OnSavingProject(ByVal sender As Object) Handles m_Controller.OnSavingProject
End Sub
Private Sub OnSavedProject(ByVal sender As Object, ByVal bOk As Boolean) Handles m_Controller.OnSavedProject
If Not bOk Then
MessageBox.Show("Error saving file", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
Private Sub OnSavedProject(ByVal sender As Object, ByVal sFile As String, ByVal bOk As Boolean) Handles m_Controller.OnSavedProject
WritePrivateProfileString(S_GENERAL, K_LASTNGEDIR, Path.GetDirectoryName(sFile), m_sIniFile)
If bOk Then
m_MruFiles.Add(sFile)
Else
m_MruFiles.Remove(sFile)
Dim sMsg As String = EgtMsg(10004) & " '" & sFile & "'" 'Error saving file
MessageBox.Show(sMsg, EgtMsg(10001), MessageBoxButtons.OK, MessageBoxIcon.Error) ' Error
End If
End Sub
@@ -418,35 +433,40 @@ Public Class Form1
If bOkType Then
ClearObjTree()
Else
MessageBox.Show("File type unknown", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
MessageBox.Show(EgtMsg(10005), EgtMsg(10001), MessageBoxButtons.OK, MessageBoxIcon.Error) ' File type unknown - Error
End If
End Sub
Private Sub OnImportedProject(ByVal sender As Object, ByVal sFile As String, ByVal bOk As Boolean) Handles m_Controller.OnImportedProject
WritePrivateProfileString(S_GENERAL, K_LASTIMPDIR, Path.GetDirectoryName(sFile), m_sIniFile)
If Not bOk Then
MessageBox.Show("Error importing file", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
Dim sMsg As String = EgtMsg(10006) & " '" & sFile & "'" 'Error importing file
MessageBox.Show(sMsg, EgtMsg(10001), MessageBoxButtons.OK, MessageBoxIcon.Error) ' Error
End If
End Sub
Private Sub OnExportingProject(ByVal sender As Object, ByVal sFile As String) Handles m_Controller.OnExportingProject
Private Sub OnExportingProject(ByVal sender As Object) Handles m_Controller.OnExportingProject
End Sub
Private Sub OnExportedProject(ByVal sender As Object, ByVal sFile As String, ByVal bOk As Boolean) Handles m_Controller.OnExportedProject
WritePrivateProfileString(S_GENERAL, K_LASTEXPDIR, Path.GetDirectoryName(sFile), m_sIniFile)
End Sub
Private Sub OnExportedProject(ByVal sender As Object, ByVal bOk As Boolean) Handles m_Controller.OnExportedProject
If Not bOk Then
MessageBox.Show("Error exporting file", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
Dim sMsg As String = EgtMsg(10007) & " '" & sFile & "'" 'Error exporting file
MessageBox.Show(sMsg, EgtMsg(10001), MessageBoxButtons.OK, MessageBoxIcon.Error) ' Error
End If
End Sub
Private Sub OnExecutingScript(ByVal sender As Object, ByVal sFile As String) Handles m_Controller.OnExecutingScript
WritePrivateProfileString(S_GENERAL, K_LASTLUADIR, Path.GetDirectoryName(sFile), m_sIniFile)
Private Sub OnExecutingScript(ByVal sender As Object) Handles m_Controller.OnExecutingScript
ClearObjTree()
End Sub
Private Sub OnExecutedScript(ByVal sender As Object, ByVal bOk As Boolean, ByVal sError As String) Handles m_Controller.OnExecutedScript
If Not bOk Then
MessageBox.Show(sError, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
Private Sub OnExecutedScript(ByVal sender As Object, ByVal sFile As String, ByVal bOk As Boolean, ByVal sError As String) Handles m_Controller.OnExecutedScript
WritePrivateProfileString(S_GENERAL, K_LASTLUADIR, Path.GetDirectoryName(sFile), m_sIniFile)
If bOk Then
m_MruScripts.Add(sFile)
Else
m_MruScripts.Remove(sFile)
MessageBox.Show(sError, EgtMsg(10001), MessageBoxButtons.OK, MessageBoxIcon.Error) ' Error
End If
End Sub
@@ -492,7 +512,7 @@ Public Class Form1
btnCplaneOrigin.Enabled = m_bShowGrid
btnCplaneRotate.Enabled = m_bShowGrid
btnCplane3P.Enabled = m_bShowGrid
btnCPlanePerpCurve.Enabled = m_bShowGrid
btnCPlanePerpObj.Enabled = m_bShowGrid
btnCPlaneObj.Enabled = m_bShowGrid And bSelOk
' Draw
btnPoint.Enabled = bLayerOk
@@ -512,6 +532,8 @@ Public Class Form1
btnRevolve.Enabled = bLayerOk And bSelOk
btnScrew.Enabled = bLayerOk And bSelOk
btnRuled.Enabled = bLayerOk And bSelOk
btnMergeSurf.Enabled = bSelOk
btnInvertSurf.Enabled = bSelOk
' Edit
btnDelete.Enabled = bSelOk
btnChangeLayer.Enabled = bSelOk
@@ -522,7 +544,6 @@ Public Class Form1
btnJoinCurve.Enabled = bLayerOk And bSelOk
btnExplodeCurve.Enabled = bSelOk
btnSetCurveTh.Enabled = bSelOk
btnInvertSurf.Enabled = bSelOk
' Transform
btnMove.Enabled = bSelOk
btnRotate.Enabled = bSelOk
@@ -535,7 +556,7 @@ Public Class Form1
' File
TabFile.Text = EgtMsg(1) ' File
SetTextAndToolTip(btnNew, 3, 0) ' New
SetTextAndToolTip(btnOpen, 5, 0) ' Open
SetTextAndToolTip(btnOpen, 5, 6) ' Open<br/>Recent files (Shift)
SetTextAndToolTip(btnInsert, 7, 0) ' Insert
SetTextAndToolTip(btnSave, 9, 0) ' Save
SetTextAndToolTip(btnSaveAs, 11, 0) ' SaveAs
@@ -576,7 +597,7 @@ Public Class Form1
SetTextAndToolTip(btnCplaneOrigin, 219, 220) ' Origin / Set Cplane Origin
SetTextAndToolTip(btnCplaneRotate, 221, 222) ' Rotate / Rotate Cplane<br/>3D Rotate Cplane (Shift)
SetTextAndToolTip(btnCplane3P, 223, 224) ' 3 Points / Set Cplane from 3 Points
SetTextAndToolTip(btnCPlanePerpCurve, 225, 226) ' PerpCrv / Set Cplane Perpendicular to Curve
SetTextAndToolTip(btnCPlanePerpObj, 225, 226) ' PerpCrv / Set Cplane Perpendicular to Curve
SetTextAndToolTip(btnCPlaneObj, 227, 228) ' Object / Set Cplane from Object
'Draw
TabDraw.Text = EgtMsg(301) ' Draw
@@ -589,7 +610,7 @@ Public Class Form1
SetTextAndToolTip(btnArc3P, 315, 316) ' Arc 3P / Arc : 3 Points
SetTextAndToolTip(btnArcPDP, 317, 318) ' Arc SDE / Arc : Start, Direction, End
SetTextAndToolTip(btnRectangle2P, 319, 320) ' Rect 2P / Rectangle : 2 Points
SetTextAndToolTip(btnPolygon, 321, 322) ' Polygon / Polygon : Side with 2 Points
SetTextAndToolTip(btnPolygon, 321, 322) ' Polygon / Polygon : Side with 2 Points
SetTextAndToolTip(btnText, 323, 324) ' Text / Text<br/>Advanced Text (Shift)
' Construct
TabConstruct.Text = EgtMsg(401) ' Construct
@@ -598,6 +619,8 @@ Public Class Form1
SetTextAndToolTip(btnRevolve, 407, 408) ' Revolve / Surface : curve revolution
SetTextAndToolTip(btnScrew, 409, 410) ' Screw / Surface : curve screwing
SetTextAndToolTip(btnRuled, 411, 412) ' Ruled / Surface : ruled between 2 curves
SetTextAndToolTip(btnMergeSurf, 413, 414) ' Merge / Merge Surfaces
SetTextAndToolTip(btnInvertSurf, 415, 416) ' Flip / Flip Surface Outside
' Edit
TabEdit.Text = EgtMsg(501) ' Edit
SetTextAndToolTip(btnDelete, 503, 504) ' Delete Objects
@@ -609,7 +632,6 @@ Public Class Form1
SetTextAndToolTip(btnJoinCurve, 515, 516) ' Join Curves
SetTextAndToolTip(btnExplodeCurve, 517, 518) ' Explode Text or Curve in Components
SetTextAndToolTip(btnSetCurveTh, 519, 520) ' Set Curve Thickness and Extrusion
SetTextAndToolTip(btnInvertSurf, 521, 522) ' Flip Surface Outside
' Transform
TabTransform.Text = EgtMsg(601) ' Transform
SetTextAndToolTip(btnMove, 603, 604) ' Move / Object Move
@@ -629,15 +651,19 @@ Public Class Form1
End Sub
'-------------------------------- Buttons --------------------------------------------------------
'-------------------------------- Top Commands ---------------------------------------------------
Private Sub btnNew_Click(sender As System.Object, e As System.EventArgs) Handles btnNew.Click
m_Controller.NewProject(True)
End Sub
Private Sub btnOpen_Click(sender As System.Object, e As System.EventArgs) Handles btnOpen.Click
Dim sDir As String = String.Empty
GetPrivateProfileString(S_GENERAL, K_LASTNGEDIR, "", sDir, m_sIniFile)
m_Controller.OpenProject(sDir)
If (ModifierKeys And Keys.Shift) <> Keys.Shift Then
Dim sDir As String = String.Empty
GetPrivateProfileString(S_GENERAL, K_LASTNGEDIR, "", sDir, m_sIniFile)
m_Controller.OpenProject(sDir)
Else
ShowMenuMruFiles(btnOpen, New Point(0, btnOpen.Height))
End If
End Sub
Private Sub btnInsert_Click(sender As System.Object, e As System.EventArgs) Handles btnInsert.Click
@@ -682,9 +708,13 @@ Public Class Form1
End Sub
Private Sub btnExec_Click(sender As System.Object, e As System.EventArgs) Handles btnExec.Click
Dim sDir As String = String.Empty
GetPrivateProfileString(S_GENERAL, K_LASTLUADIR, "", sDir, m_sIniFile)
m_Controller.Exec(sDir)
If (ModifierKeys And Keys.Shift) <> Keys.Shift Then
Dim sDir As String = String.Empty
GetPrivateProfileString(S_GENERAL, K_LASTLUADIR, "", sDir, m_sIniFile)
m_Controller.Exec(sDir)
Else
ShowMenuMruScripts(btnExec, New Point(0, btnExec.Height))
End If
End Sub
Private Sub btnWireFrame_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles btnWireFrame.CheckedChanged
@@ -831,7 +861,7 @@ Public Class Form1
m_Controller.ExecuteCommand(CMD.GRID_3P)
End Sub
Private Sub btnCplanePerpCurve_Click(sender As System.Object, e As System.EventArgs) Handles btnCPlanePerpCurve.Click
Private Sub btnCplanePerpCurve_Click(sender As System.Object, e As System.EventArgs) Handles btnCPlanePerpObj.Click
m_Controller.ExecuteCommand(CMD.GRID_PERPCURVE)
End Sub
@@ -921,6 +951,14 @@ Public Class Form1
m_Controller.ExecuteCommand(CMD.RULED)
End Sub
Private Sub btnMergeSurf_Click(sender As System.Object, e As System.EventArgs) Handles btnMergeSurf.Click
m_Controller.ExecuteCommand(CMD.MERGESURF)
End Sub
Private Sub btnInvertSurf_Click(sender As System.Object, e As System.EventArgs) Handles btnInvertSurf.Click
m_Controller.ExecuteCommand(CMD.INVERTSURF)
End Sub
Private Sub btnDelete_Click(sender As System.Object, e As System.EventArgs) Handles btnDelete.Click
m_Controller.SetLastInteger(GDB_ID.SEL)
m_Controller.ExecuteCommand(CMD.DELETE)
@@ -968,10 +1006,6 @@ Public Class Form1
m_Controller.ExecuteCommand(CMD.SETCURVETHICKNESS)
End Sub
Private Sub btnInvertSurf_Click(sender As System.Object, e As System.EventArgs) Handles btnInvertSurf.Click
m_Controller.ExecuteCommand(CMD.INVERTSURF)
End Sub
Private Sub btnMove_Click(sender As System.Object, e As System.EventArgs) Handles btnMove.Click
m_Controller.ExecuteCommand(CMD.MOVE)
End Sub
@@ -1106,6 +1140,7 @@ Public Class Form1
m_Controller.Done(InputText.Text)
End Sub
'-------------------------------- Command Box ----------------------------------------------------
Private Sub tboxCmd_KeyDown(sender As System.Object, e As System.Windows.Forms.KeyEventArgs) Handles tboxCmd.KeyDown
If (e.KeyCode = Keys.Enter) Then
@@ -1465,6 +1500,7 @@ Public Class Form1
End If
End Sub
'-------------------------------- Program Title --------------------------------------------------
Private Sub EmitTitle()
' nome file
@@ -1482,6 +1518,7 @@ Public Class Form1
Me.Text = sTitle
End Sub
'-------------------------------- Status Bar -----------------------------------------------------
Private Sub ToolStripStatusSnapPointType_Changed(ByVal sender As Object, ByVal nSpType As SP) Handles Scene1.OnChangedSnapPointType
Select Case nSpType
@@ -1535,4 +1572,60 @@ Public Class Form1
Scene1.SetGridCursorPos(m_bCPlaneTypePos)
End Sub
'-------------------------------- MRU Files Menu -------------------------------------------------
Private Sub ShowMenuMruFiles(ByVal control As Control, ByVal Pos As Point)
Dim sFileName As String = String.Empty
For Each Item As ToolStripItem In ContextMenuMruFiles.Items
Dim nInd As Integer
If Item.Name = "MruTitle" Then
Item.Text = EgtMsg(19) ' Recent files
Item.Visible = True
ElseIf Item.Name = "MruSep" Then
Item.Visible = True
ElseIf Int32.TryParse(Item.Name.Replace("MruFile", ""), nInd) AndAlso
m_MruFiles.GetFileName(nInd, sFileName) Then
Item.Text = sFileName
Item.Visible = True
Else
Item.Visible = False
End If
Next
ContextMenuMruFiles.Show(control, Pos)
End Sub
Private Sub OnMenuMruFiles_ItemClick(sender As Object, e As ToolStripItemClickedEventArgs) Handles ContextMenuMruFiles.ItemClicked
If e.ClickedItem.Text <> "" Then
m_Controller.OpenProject(e.ClickedItem.Text, False)
End If
End Sub
'-------------------------------- MRU Scripts Menu -----------------------------------------------
Private Sub ShowMenuMruScripts(ByVal control As Control, ByVal Pos As Point)
Dim sFileName As String = String.Empty
For Each Item As ToolStripItem In ContextMenuMruScripts.Items
Dim nInd As Integer
If Item.Name = "MruSTitle" Then
Item.Text = EgtMsg(20) ' Recent scripts
Item.Visible = True
ElseIf Item.Name = "MruSSep" Then
Item.Visible = True
ElseIf Int32.TryParse(Item.Name.Replace("MruSFile", ""), nInd) AndAlso
m_MruScripts.GetFileName(nInd, sFileName) Then
Item.Text = sFileName
Item.Visible = True
Else
Item.Visible = False
End If
Next
ContextMenuMruScripts.Show(control, Pos)
End Sub
Private Sub OnMenuMruScripts_ItemClick(sender As Object, e As ToolStripItemClickedEventArgs) Handles ContextMenuMruScripts.ItemClicked
If e.ClickedItem.Text <> "" Then
ContextMenuMruScripts.Close()
m_Controller.Exec(e.ClickedItem.Text, False)
End If
End Sub
End Class
+114
View File
@@ -0,0 +1,114 @@
'----------------------------------------------------------------------------
' EgalTech 2015-2015
'----------------------------------------------------------------------------
' File : MruList.vb Data : 27.02.15 Versione : 1.6b7
' Contenuto : Classe MruList (gestione elenco file appena usati).
'
'
'
' Modifiche : 27.02.15 DS Creazione modulo.
'
'
'----------------------------------------------------------------------------
'--------------------------------------------------------------------------------------------------
Public Class MruList
'---------------------------------------------------------------------------
Private m_sIniFile As String
Private m_sSection As String
Private m_nMaxEntries As Integer
Private m_FileNames As Collection
'---------------------------------------------------------------------------
Public Sub Init(ByVal sIniFile As String, ByVal sSection As String, ByVal nMaxEntries As Integer)
' Inizializzo
m_sIniFile = sIniFile
m_sSection = sSection
m_nMaxEntries = nMaxEntries
m_FileNames = New Collection
' Carico lista da Ini.
LoadMruList()
End Sub
'---------------------------------------------------------------------------
Private Sub LoadMruList()
' Pulisco la lista dei file
m_FileNames.Clear()
' Carico la lista dei file salvati in INI
Dim sFileName As String = String.Empty
For i As Integer = 1 To m_nMaxEntries
Dim sKey As String = K_FILE + i.ToString()
If GetPrivateProfileString(m_sSection, sKey, "", sFileName, m_sIniFile) > 0 Then
m_FileNames.Add(sFileName, sFileName)
End If
Next
End Sub
'---------------------------------------------------------------------------
Private Sub SaveMruList()
For i As Integer = 1 To m_nMaxEntries
Dim sKey As String = K_FILE + i.ToString()
If i <= m_FileNames.Count Then
WritePrivateProfileString(m_sSection, sKey, m_FileNames(i).ToString, m_sIniFile)
Else
WritePrivateProfileString(m_sSection, sKey, "", m_sIniFile)
End If
Next
End Sub
'---------------------------------------------------------------------------
Public Sub Add(ByVal sFileName As String)
' Se già presente, rimuovo il file dalla lista
Dim i As Integer = FileNameIndex(sFileName)
If i > 0 Then
m_FileNames.Remove(i)
End If
' Aggiungo il file in cima alla lista
If m_FileNames.Count > 0 Then
m_FileNames.Add(sFileName, sFileName, m_FileNames.Item(1))
Else
m_FileNames.Add(sFileName, sFileName)
End If
' Se la lista ha superato la massima dimensione, cancello l'ultimo record
If m_FileNames.Count > m_nMaxEntries Then
m_FileNames.Remove(m_nMaxEntries + 1)
End If
' Salvo la lista aggiornata
SaveMruList()
End Sub
'---------------------------------------------------------------------------
Private Function FileNameIndex(ByVal sFileName As String) As Integer
For i As Integer = 1 To m_FileNames.Count
If String.Compare(m_FileNames(i).ToString, sFileName, True) = 0 Then
Return i
End If
Next
Return 0
End Function
'---------------------------------------------------------------------------
Public Sub Remove(ByVal sFileName As String)
Dim i As Integer = FileNameIndex(sFileName)
If i > 0 Then
' Rimuovo il file
m_FileNames.Remove(i)
' Salvo lalista aggiornata
SaveMruList()
End If
End Sub
'---------------------------------------------------------------------------
Public Function GetFileName(ByVal nInd As Integer, ByRef sFileName As String) As Boolean
If nInd > 0 And nInd <= m_FileNames.Count() Then
sFileName = m_FileNames(nInd).ToString()
Return True
Else
sFileName = String.Empty
Return False
End If
End Function
End Class
+2 -2
View File
@@ -46,5 +46,5 @@ Imports System.Runtime.InteropServices
' utilizzando l'asterisco (*) come descritto di seguito:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("1.6.2.6")>
<Assembly: AssemblyFileVersion("1.6.2.6")>
<Assembly: AssemblyVersion("1.6.2.7")>
<Assembly: AssemblyFileVersion("1.6.2.7")>
Binary file not shown.

Before

Width:  |  Height:  |  Size: 642 B

After

Width:  |  Height:  |  Size: 679 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 337 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

+6 -5
View File
@@ -190,7 +190,7 @@ Public Class Scene
Public Event OnMouseSelectedPart(ByVal sender As Object, ByVal nId As Integer)
Public Event OnMouseSelectedLayer(ByVal sender As Object, ByVal nId As Integer)
Public Event OnMouseAnalyzed(ByVal sender As Object, ByVal nId As Integer)
Public Event OnMousePointFromSelection(ByVal sender As Object, ByVal PtP As Point3d)
Public Event OnMousePointFromSelection(ByVal sender As Object, ByVal PtP As Point3d, ByVal nAux As Integer)
Public Event OnMouseDownScene(ByVal sender As Object)
Public Event OnCursorPos(ByVal sender As Object, ByVal sCursorPos As String)
Public Event OnShowDistance(ByVal sender As Object, ByVal sDistance As String)
@@ -252,8 +252,9 @@ Public Class Scene
End Select
' evento per posizione punto di selezione
Dim PtTemp As Point3d
If EgtGetPointFromSelect(nId, e.Location, PtTemp) Then
RaiseEvent OnMousePointFromSelection(Me, PtTemp)
Dim nAux As Integer
If EgtGetPointFromSelect(nId, e.Location, PtTemp, nAux) Then
RaiseEvent OnMousePointFromSelection(Me, PtTemp, nAux)
End If
End If
' se stato misura di distanza (primo punto)
@@ -678,7 +679,6 @@ Public Class Scene
Private Sub PrepareMenuScene()
' per selezione oggetti
If m_nStatus = ST.SEL Then
MenuScene.Visible = True
For Each i As ToolStripItem In MenuScene.Items
If i.Name = "cmdSelectAll" Then
i.Text = EgtMsg(1001) ' Select All
@@ -701,9 +701,9 @@ Public Class Scene
i.Visible = False
End If
Next
MenuScene.Visible = True
' per selezione punti
ElseIf m_nStatus = ST.GETDIST Or m_nStatus = ST.GETDIST2 Or m_nStatus = ST.SELPOINT Then
MenuScene.Visible = True
' se drag abilitato
If m_bDragOn Then
For Each i As ToolStripItem In MenuScene.Items
@@ -784,6 +784,7 @@ Public Class Scene
End If
Next
End If
MenuScene.Visible = True
' altri casi
Else
MenuScene.Visible = False
+4
View File
@@ -170,6 +170,7 @@
<Compile Include="ConstGen.vb" />
<Compile Include="Controller.vb" />
<Compile Include="ConstIni.vb" />
<Compile Include="MruList.vb" />
<Compile Include="My Project\Resources.Designer.vb">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
@@ -505,6 +506,9 @@
<ItemGroup>
<None Include="Resources\Polygon.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\MergeSurf.png" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
<PropertyGroup>
<PostBuildEvent>IF "$(PlatformName)"=="x86" IF "$(ConfigurationName)" == "Release" copy $(TargetPath) c:\EgtProg\TestEIn\TestEInR32.exe