TestEIn 1.6d8 :
- aggiunta esplodi superfici - corretto piccolo problema di visualizzazione in Rotate3d - migliorate info in About.
This commit is contained in:
+31
-1
@@ -93,6 +93,7 @@ Public Class Controller
|
||||
SCREW
|
||||
RULED
|
||||
MERGESURF
|
||||
EXPLODESURF
|
||||
INVERTSURF
|
||||
DELETE
|
||||
CHANGELAYER
|
||||
@@ -973,6 +974,9 @@ Public Class Controller
|
||||
' Merge Surfaces
|
||||
Case CMD.MERGESURF
|
||||
Return ProcessMergeSurf()
|
||||
' Explode Surfaces
|
||||
Case CMD.EXPLODESURF
|
||||
Return ProcessExplodeSurf()
|
||||
' Invert Surface
|
||||
Case CMD.INVERTSURF
|
||||
Return ProcessInvertSurf()
|
||||
@@ -3517,6 +3521,31 @@ Public Class Controller
|
||||
Return True
|
||||
End Function
|
||||
|
||||
Private Function ProcessExplodeSurf() As Boolean
|
||||
If m_nStep <> 0 Then
|
||||
Return False
|
||||
End If
|
||||
' opero su tutti gli oggetti selezionati
|
||||
EnableCommandLog()
|
||||
Dim nId As Integer = EgtGetFirstSelectedObj()
|
||||
While nId <> GDB_ID.NULL
|
||||
' recupero il successivo, perchè il corrente verrà cancellato
|
||||
Dim nNextId = EgtGetNextSelectedObj()
|
||||
' eseguo esplosione
|
||||
Dim nCount As Integer
|
||||
Dim nFirstId As Integer = EgtExplodeSurfTm(nId, nCount)
|
||||
' passo al successivo
|
||||
nId = nNextId
|
||||
End While
|
||||
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
|
||||
@@ -3897,7 +3926,7 @@ Public Class Controller
|
||||
Dim nFirstId As Integer = EgtExplodeCurveCompo(nId, nCount)
|
||||
Case GDB_TY.CRV_BEZ
|
||||
' approssimo la curva di Bezier con archi
|
||||
Dim nNewId As Integer = EgtExplodeCurveBezier(nId, True, 10 * EPS_SMALL)
|
||||
Dim nNewId As Integer = EgtApproxCurveBezier(nId, True, 10 * EPS_SMALL)
|
||||
Case GDB_TY.EXT_TEXT
|
||||
' esplodo il testo nei suoi contorni
|
||||
Dim nCount As Integer
|
||||
@@ -4246,6 +4275,7 @@ Public Class Controller
|
||||
EgtSetGeoLine(m_ptP1, m_ptLast)
|
||||
EgtDraw()
|
||||
ElseIf m_nStep = 3 Then
|
||||
EgtResetGeoLine(False)
|
||||
EgtSetGeoTria(m_ptP1, m_ptP2, m_ptLast)
|
||||
EgtDraw()
|
||||
ElseIf m_nStep = 4 Then
|
||||
|
||||
Reference in New Issue
Block a user