TestEIn :

- aggiornamenti.
This commit is contained in:
Dario Sassi
2015-07-31 10:23:18 +00:00
parent 8149356758
commit 23458242c3
6 changed files with 256 additions and 229 deletions
+32 -32
View File
@@ -1556,7 +1556,7 @@ Public Class Controller
Case GDB_TY.CRV_ARC
Dim vtZ As Vector3d
If Not EgtCurveExtrusion(nId, vtZ) OrElse vtZ.IsSmall() Then
EgtCurveArcNormVersor(nId, vtZ)
EgtArcNormVersor(nId, vtZ)
End If
Dim ptOrig As Point3d
EgtMidPoint(nId, ptOrig)
@@ -1593,7 +1593,7 @@ Public Class Controller
Case GDB_TY.EXT_TEXT
Dim vtX As Vector3d
Dim vtZ As Vector3d
If EgtStartVector(nId, vtX) And EgtExtTextNormVersor(nId, vtZ) Then
If EgtStartVector(nId, vtX) And EgtTextNormVersor(nId, vtZ) Then
Dim vtY As Vector3d = vtZ ^ vtX
Dim ptOrig As Point3d
EgtStartPoint(nId, ptOrig)
@@ -2245,7 +2245,7 @@ Public Class Controller
m_Scene.ResetStatus(False)
' creo la linea (i punti sono in globale)
EnableCommandLog()
Dim nId As Integer = EgtCreateCurveLineEx(GetCurrLayer(),
Dim nId As Integer = EgtCreateLineEx(GetCurrLayer(),
m_ptP1.Loc(GDB_ID.GRID), m_sepP1, m_nIdP1,
m_ptLast.Loc(GDB_ID.GRID), m_sepLast, m_nIdLast, GDB_RT.GRID)
DisableCommandLog()
@@ -2278,14 +2278,14 @@ Public Class Controller
' se punti entrambi già definiti
If m_sepP1 = SEP.PT_STD And m_sepLast = SEP.PT_STD Then
If nId = GDB_ID.NULL Then
EgtCreateCurveLine(m_Scene.GetDragGroup(), m_ptP1, m_ptLast, GDB_RT.GLOB)
EgtCreateLine(m_Scene.GetDragGroup(), m_ptP1, m_ptLast, GDB_RT.GLOB)
Else
EgtModifyCurveEndPoint(nId, m_ptLast, GDB_RT.GLOB)
End If
' altrimenti, uno dei punti tangente o normale
Else
EgtErase(nId)
EgtCreateCurveLineEx(m_Scene.GetDragGroup(), m_ptP1, m_sepP1, m_nIdP1, m_ptLast, m_sepLast, m_nIdLast, GDB_RT.GLOB)
EgtCreateLineEx(m_Scene.GetDragGroup(), m_ptP1, m_sepP1, m_nIdP1, m_ptLast, m_sepLast, m_nIdLast, GDB_RT.GLOB)
End If
EgtDraw()
End If
@@ -2357,7 +2357,7 @@ Public Class Controller
m_Scene.ResetStatus(False)
' creo la linea (i punti sono in globale)
EnableCommandLog()
Dim nId As Integer = EgtCreateCurveLinePDL(GetCurrLayer(), m_ptP1.Loc(GDB_ID.GRID),
Dim nId As Integer = EgtCreateLinePDL(GetCurrLayer(), m_ptP1.Loc(GDB_ID.GRID),
m_dPrev, m_dLast, GDB_RT.GRID)
DisableCommandLog()
If nId <> GDB_ID.NULL Then
@@ -2381,7 +2381,7 @@ Public Class Controller
Dim nId As Integer = EgtGetFirstInGroup(m_Scene.GetDragGroup())
If nId = GDB_ID.NULL Then
' creo la linea di direzione
EgtCreateCurveLinePDL(m_Scene.GetDragGroup(), m_ptP1.Loc(GDB_ID.GRID), m_dLast, m_dAux, GDB_RT.GRID)
EgtCreateLinePDL(m_Scene.GetDragGroup(), m_ptP1.Loc(GDB_ID.GRID), m_dLast, m_dAux, GDB_RT.GRID)
Else
Dim ptP2 As Point3d = m_ptP1.Loc(GDB_ID.GRID) + Vector3d.FromPolar(1, m_dLast) * m_dAux
EgtModifyCurveEndPoint(nId, ptP2, GDB_RT.GRID)
@@ -2392,7 +2392,7 @@ Public Class Controller
Dim nId As Integer = EgtGetFirstInGroup(m_Scene.GetDragGroup())
If nId = GDB_ID.NULL Then
' creo la linea di direzione
EgtCreateCurveLinePDL(m_Scene.GetDragGroup(), m_ptP1.Loc(GDB_ID.GRID), m_dPrev, m_dLast, GDB_RT.GRID)
EgtCreateLinePDL(m_Scene.GetDragGroup(), m_ptP1.Loc(GDB_ID.GRID), m_dPrev, m_dLast, GDB_RT.GRID)
Else
Dim ptP2 As Point3d = m_ptP1.Loc(GDB_ID.GRID) + Vector3d.FromPolar(1, m_dPrev) * m_dLast
EgtModifyCurveEndPoint(nId, ptP2, GDB_RT.GRID)
@@ -2445,7 +2445,7 @@ Public Class Controller
m_Scene.ResetStatus(False)
' creo la linea (i punti sono in globale)
EnableCommandLog()
Dim nId As Integer = EgtCreateCurveLinePVL(GetCurrLayer(), m_ptP1.Loc(GDB_ID.GRID),
Dim nId As Integer = EgtCreateLinePVL(GetCurrLayer(), m_ptP1.Loc(GDB_ID.GRID),
m_vtLast.Loc(GDB_ID.GRID), m_dLast, GDB_RT.GRID)
DisableCommandLog()
If nId <> GDB_ID.NULL Then
@@ -2470,7 +2470,7 @@ Public Class Controller
Dim nId As Integer = EgtGetFirstInGroup(m_Scene.GetDragGroup())
If nId = GDB_ID.NULL Then
' creo la linea di direzione
EgtCreateCurveLinePVL(m_Scene.GetDragGroup(), m_ptP1, m_vtLast, m_dAux, GDB_RT.GLOB)
EgtCreateLinePVL(m_Scene.GetDragGroup(), m_ptP1, m_vtLast, m_dAux, GDB_RT.GLOB)
Else
m_vtLast.Normalize()
Dim ptP2 As Point3d = m_ptP1 + m_vtLast * m_dAux
@@ -2482,7 +2482,7 @@ Public Class Controller
Dim nId As Integer = EgtGetFirstInGroup(m_Scene.GetDragGroup())
If nId = GDB_ID.NULL Then
' creo la linea di direzione
EgtCreateCurveLinePVL(m_Scene.GetDragGroup(), m_ptP1, m_vtLast, m_dLast, GDB_RT.GLOB)
EgtCreateLinePVL(m_Scene.GetDragGroup(), m_ptP1, m_vtLast, m_dLast, GDB_RT.GLOB)
Else
m_vtLast.Normalize()
Dim ptP2 As Point3d = m_ptP1 + m_vtLast * m_dLast
@@ -2517,7 +2517,7 @@ Public Class Controller
m_Scene.ResetStatus(False)
' creo la circonferenza (i punti sono in globale)
EnableCommandLog()
Dim nId As Integer = EgtCreateCurveCircleCPEx(GetCurrLayer(), m_ptP1.Loc(GDB_ID.GRID),
Dim nId As Integer = EgtCreateCircleCPEx(GetCurrLayer(), m_ptP1.Loc(GDB_ID.GRID),
m_ptLast.Loc(GDB_ID.GRID), m_sepLast, m_nIdLast, GDB_RT.GRID)
DisableCommandLog()
EgtDraw()
@@ -2536,10 +2536,10 @@ Public Class Controller
' durante la creazione di oggetti il gruppo di Drag ha riferimento globale
Dim nId As Integer = EgtGetFirstInGroup(m_Scene.GetDragGroup())
If nId = GDB_ID.NULL Then
EgtCreateCurveCircleCP(m_Scene.GetDragGroup(), m_ptP1.Loc(GDB_ID.GRID),
EgtCreateCircleCP(m_Scene.GetDragGroup(), m_ptP1.Loc(GDB_ID.GRID),
m_ptLast.Loc(GDB_ID.GRID), GDB_RT.GRID)
Else
EgtModifyCurveCircleCPN(nId, m_ptLast.Loc(GDB_ID.GRID), GDB_RT.GRID)
EgtModifyCircleCP(nId, m_ptLast.Loc(GDB_ID.GRID), GDB_RT.GRID)
End If
EgtDraw()
End If
@@ -2575,7 +2575,7 @@ Public Class Controller
m_Scene.ResetStatus(False)
' creo la circonferenza (i punti sono in globale)
EnableCommandLog()
Dim nId As Integer = EgtCreateCurveCircle(GetCurrLayer(), m_ptP1.Loc(GDB_ID.GRID),
Dim nId As Integer = EgtCreateCircle(GetCurrLayer(), m_ptP1.Loc(GDB_ID.GRID),
0.5 * m_dLast, GDB_RT.GRID)
DisableCommandLog()
EgtDraw()
@@ -2594,9 +2594,9 @@ Public Class Controller
' durante la creazione di oggetti il gruppo di Drag ha riferimento globale
Dim nId As Integer = EgtGetFirstInGroup(m_Scene.GetDragGroup())
If nId = GDB_ID.NULL Then
EgtCreateCurveCircle(m_Scene.GetDragGroup(), m_ptP1.Loc(GDB_ID.GRID), 0.5 * m_dLast, GDB_RT.GRID)
EgtCreateCircle(m_Scene.GetDragGroup(), m_ptP1.Loc(GDB_ID.GRID), 0.5 * m_dLast, GDB_RT.GRID)
Else
EgtModifyCurveArcRadius(nId, 0.5 * m_dLast)
EgtModifyArcRadius(nId, 0.5 * m_dLast)
End If
EgtDraw()
End If
@@ -2636,7 +2636,7 @@ Public Class Controller
m_Scene.ResetStatus(False)
' creo l'arco (i punti sono in globale)
EnableCommandLog()
Dim nId = EgtCreateCurveArcC2PEx(GetCurrLayer(), m_ptP1.Loc(GDB_ID.GRID),
Dim nId = EgtCreateArcC2PEx(GetCurrLayer(), m_ptP1.Loc(GDB_ID.GRID),
m_ptP2.Loc(GDB_ID.GRID), m_sepP2, m_nIdP2,
m_ptLast.Loc(GDB_ID.GRID), GDB_RT.GRID)
DisableCommandLog()
@@ -2672,11 +2672,11 @@ Public Class Controller
nId = GDB_ID.NULL
End If
If nId = GDB_ID.NULL Then
EgtCreateCurveArcC2PEx(m_Scene.GetDragGroup(), m_ptP1.Loc(GDB_ID.GRID),
EgtCreateArcC2PEx(m_Scene.GetDragGroup(), m_ptP1.Loc(GDB_ID.GRID),
m_ptP2.Loc(GDB_ID.GRID), m_sepP2, m_nIdP2,
m_ptLast.Loc(GDB_ID.GRID), GDB_RT.GRID)
Else
EgtModifyCurveArcC2PN(nId, m_ptLast.Loc(GDB_ID.GRID), GDB_RT.GRID)
EgtModifyArcC2P(nId, m_ptLast.Loc(GDB_ID.GRID), GDB_RT.GRID)
End If
EgtDraw()
End If
@@ -2713,7 +2713,7 @@ Public Class Controller
m_Scene.ResetStatus(False)
' creo l'arco (i punti sono in globale)
EnableCommandLog()
Dim nId = EgtCreateCurveArc3P(GetCurrLayer(), m_ptP1.Loc(GDB_ID.GRID),
Dim nId = EgtCreateArc3P(GetCurrLayer(), m_ptP1.Loc(GDB_ID.GRID),
m_ptLast.Loc(GDB_ID.GRID), m_ptP2.Loc(GDB_ID.GRID), GDB_RT.GRID)
DisableCommandLog()
If nId <> GDB_ID.NULL Then
@@ -2738,7 +2738,7 @@ Public Class Controller
' durante la creazione di oggetti il gruppo di Drag ha riferimento globale
Dim nId As Integer = EgtGetFirstInGroup(m_Scene.GetDragGroup())
If nId = GDB_ID.NULL Then
EgtCreateCurveLine(m_Scene.GetDragGroup(), m_ptP1, m_ptLast, GDB_RT.GLOB)
EgtCreateLine(m_Scene.GetDragGroup(), m_ptP1, m_ptLast, GDB_RT.GLOB)
Else
EgtModifyCurveEndPoint(nId, m_ptLast)
End If
@@ -2752,13 +2752,13 @@ Public Class Controller
End If
If nId = GDB_ID.NULL Then
' creazione arco 3P, in alcuni casi crea una retta
EgtCreateCurveArc3P(m_Scene.GetDragGroup(), m_ptP1, m_ptLast, m_ptP2, GDB_RT.GLOB)
EgtCreateArc3P(m_Scene.GetDragGroup(), m_ptP1, m_ptLast, m_ptP2, GDB_RT.GLOB)
Else
' se modifica arco 3P impossibile, provo con una retta
If (Not EgtModifyCurveArc3P(nId, m_ptLast, GDB_RT.GLOB) AndAlso
If (Not EgtModifyArc3P(nId, m_ptLast, GDB_RT.GLOB) AndAlso
(m_ptLast - m_ptP1) * (m_ptP2 - m_ptLast) > EPS_ZERO) Then
EgtErase(nId)
EgtCreateCurveLine(m_Scene.GetDragGroup(), m_ptP1, m_ptP2, GDB_RT.GLOB)
EgtCreateLine(m_Scene.GetDragGroup(), m_ptP1, m_ptP2, GDB_RT.GLOB)
End If
End If
EgtDraw()
@@ -2804,7 +2804,7 @@ Public Class Controller
m_Scene.ResetStatus(False)
' creo l'arco (i punti sono in globale)
EnableCommandLog()
Dim nId = EgtCreateCurveArc2PDEx(GetCurrLayer(), m_ptP1.Loc(GDB_ID.GRID), m_ptLast.Loc(GDB_ID.GRID),
Dim nId = EgtCreateArc2PDEx(GetCurrLayer(), m_ptP1.Loc(GDB_ID.GRID), m_ptLast.Loc(GDB_ID.GRID),
m_sepLast, m_nIdLast, m_dLast, GDB_RT.GRID)
DisableCommandLog()
If nId <> GDB_ID.NULL Then
@@ -2835,7 +2835,7 @@ Public Class Controller
Dim nId As Integer = EgtGetFirstInGroup(m_Scene.GetDragGroup())
If nId = GDB_ID.NULL Then
' creo la linea di direzione
EgtCreateCurveLinePDL(m_Scene.GetDragGroup(), m_ptP1.Loc(GDB_ID.GRID),
EgtCreateLinePDL(m_Scene.GetDragGroup(), m_ptP1.Loc(GDB_ID.GRID),
m_dLast, m_dAux, GDB_RT.GRID)
Else
Dim ptP2 As Point3d = m_ptP1 + GlobDirFromGridAng(m_dLast) * m_dAux
@@ -2852,7 +2852,7 @@ Public Class Controller
' se arco da creare
If nId = GDB_ID.NULL Then
' creo l'arco (i punti sono in globale), in alcuni casi particolari crea una retta
EgtCreateCurveArc2PD(m_Scene.GetDragGroup(), m_ptP1.Loc(GDB_ID.GRID),
EgtCreateArc2PD(m_Scene.GetDragGroup(), m_ptP1.Loc(GDB_ID.GRID),
m_ptLast.Loc(GDB_ID.GRID), m_dLast, GDB_RT.GRID)
' altrimenti da modificare
Else
@@ -2862,7 +2862,7 @@ Public Class Controller
If (Not EgtModifyCurveEndPoint(nId, m_ptLast.Loc(GDB_ID.GRID), GDB_RT.GRID) AndAlso
(m_ptLast - m_ptP1) * vtDirS > EPS_ZERO) Then
EgtErase(nId)
EgtCreateCurveLine(m_Scene.GetDragGroup(), m_ptP1.Loc(GDB_ID.GRID),
EgtCreateLine(m_Scene.GetDragGroup(), m_ptP1.Loc(GDB_ID.GRID),
m_ptLast.Loc(GDB_ID.GRID), GDB_RT.GRID)
End If
End If
@@ -2925,7 +2925,7 @@ Public Class Controller
m_Scene.ResetStatus(False)
' creo l'arco (i punti sono in globale)
EnableCommandLog()
Dim nId = EgtCreateCurveArc2PV(GetCurrLayer(), m_ptP1.Loc(GDB_ID.GRID), m_ptLast.Loc(GDB_ID.GRID),
Dim nId = EgtCreateArc2PV(GetCurrLayer(), m_ptP1.Loc(GDB_ID.GRID), m_ptLast.Loc(GDB_ID.GRID),
m_vtLast.Loc(GDB_ID.GRID), GDB_RT.GRID)
DisableCommandLog()
If nId <> GDB_ID.NULL Then
@@ -2951,7 +2951,7 @@ Public Class Controller
Dim nId As Integer = EgtGetFirstInGroup(m_Scene.GetDragGroup())
If nId = GDB_ID.NULL Then
' creo la linea di direzione
EgtCreateCurveLinePVL(m_Scene.GetDragGroup(), m_ptP1.Loc(GDB_ID.GRID),
EgtCreateLinePVL(m_Scene.GetDragGroup(), m_ptP1.Loc(GDB_ID.GRID),
m_vtLast.Loc(GDB_ID.GRID), m_dAux, GDB_RT.GRID)
Else
m_vtLast.Normalize()
@@ -2963,7 +2963,7 @@ Public Class Controller
' svuoto il gruppo di drag
EgtEmptyGroup(m_Scene.GetDragGroup())
' creo l'arco (i punti sono in globale), in alcuni casi particolari crea una retta
EgtCreateCurveArc2PV(m_Scene.GetDragGroup(), m_ptP1.Loc(GDB_ID.GRID),
EgtCreateArc2PV(m_Scene.GetDragGroup(), m_ptP1.Loc(GDB_ID.GRID),
m_ptLast.Loc(GDB_ID.GRID), m_vtLast.Loc(GDB_ID.GRID), GDB_RT.GRID)
EgtDraw()
End If