TestEIn 1.6b6 :
- aggiunta creazione Linea PVL e Arco PVP - aggiunta gestione punto notevole baricentro - portati su file altri messaggi.
This commit is contained in:
+242
-18
@@ -71,11 +71,13 @@ Public Class Controller
|
||||
POINT
|
||||
LINE2P
|
||||
LINEPDL
|
||||
LINEPVL
|
||||
CIRCLECP
|
||||
CIRCLECD
|
||||
ARCCSE
|
||||
ARC3P
|
||||
ARCPDP
|
||||
ARCPVP
|
||||
RECTANGLE2P
|
||||
POLYGON
|
||||
POLYGONSIDE
|
||||
@@ -129,7 +131,8 @@ Public Class Controller
|
||||
Private m_ptP3 As Point3d
|
||||
Private m_ptLast As Point3d
|
||||
Private m_sepLast As SEP
|
||||
Private m_nIdLast As Integer
|
||||
Private m_vtLast As Vector3d = Vector3d.X_AX()
|
||||
Private m_nIdLast As Integer = GDB_ID.NULL
|
||||
Private m_dPrev As Double = 0
|
||||
Private m_dAux As Double = 0
|
||||
Private m_dLast As Double = 0
|
||||
@@ -138,8 +141,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_ptCont As Point3d ' punto finale di entità precedente (per continuazione)
|
||||
Private m_vtCont As Vector3d ' direzione finale di entità precedente (per continuazione)
|
||||
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)
|
||||
|
||||
' Input
|
||||
Private Enum IBT As Integer
|
||||
@@ -152,6 +155,7 @@ Public Class Controller
|
||||
TY_SPECIALDOUBLE
|
||||
TY_3DOUBLE
|
||||
TY_POINT3D
|
||||
TY_VECTOR3D
|
||||
End Enum
|
||||
Private m_nInpType As IBT = IBT.TY_NULL
|
||||
|
||||
@@ -518,6 +522,8 @@ Public Class Controller
|
||||
Select Case m_nInpType
|
||||
Case IBT.TY_POINT3D
|
||||
SetInputBoxPoint3d(m_ptLast)
|
||||
Case IBT.TY_VECTOR3D
|
||||
SetInputBoxVector3d(m_vtLast)
|
||||
Case IBT.TY_DIRECTION, IBT.TY_LENGTH, IBT.TY_SPECIALDOUBLE
|
||||
SetInputBoxDouble(m_dLast)
|
||||
End Select
|
||||
@@ -537,6 +543,9 @@ Public Class Controller
|
||||
m_nIdLast = nId
|
||||
' se usato per tipi speciali
|
||||
Select Case m_nInpType
|
||||
Case IBT.TY_VECTOR3D
|
||||
m_vtLast = m_ptLast - m_ptP1
|
||||
m_vtLast.Normalize()
|
||||
Case IBT.TY_DIRECTION
|
||||
m_dLast = GridAngFromGlobDir(m_ptLast - m_ptP1)
|
||||
m_dAux = GridLenFromGlobLen(m_ptLast - m_ptP1)
|
||||
@@ -617,6 +626,19 @@ Public Class Controller
|
||||
RaiseEvent SetInputBoxText(sText.ToString())
|
||||
End Sub
|
||||
|
||||
Private Sub SetInputBoxVector3d(ByVal vtVal As Vector3d)
|
||||
' converto da coordinate globali a griglia
|
||||
vtVal = vtVal.Loc(GDB_ID.GRID)
|
||||
' visualizzo
|
||||
Dim sText As New StringBuilder(128)
|
||||
sText.Append(DoubleToString(vtVal.x, 6))
|
||||
sText.Append(",")
|
||||
sText.Append(DoubleToString(vtVal.y, 6))
|
||||
sText.Append(",")
|
||||
sText.Append(DoubleToString(vtVal.z, 6))
|
||||
RaiseEvent SetInputBoxText(sText.ToString())
|
||||
End Sub
|
||||
|
||||
Private Function InputTextToLast(ByRef sText As String) As Boolean
|
||||
Select Case m_nInpType
|
||||
Case IBT.TY_STRING
|
||||
@@ -637,6 +659,13 @@ Public Class Controller
|
||||
m_ptLast = New Point3d(d3Val(0), d3Val(1), d3Val(2)).Glob(GDB_ID.GRID)
|
||||
Return True
|
||||
End If
|
||||
Case IBT.TY_VECTOR3D
|
||||
Dim d3Val(3) As Double
|
||||
If TextTo3Double(sText, d3Val) Then
|
||||
' converto da riferimento griglia a globale
|
||||
m_vtLast = New Vector3d(d3Val(0), d3Val(1), d3Val(2)).Glob(GDB_ID.GRID)
|
||||
Return True
|
||||
End If
|
||||
End Select
|
||||
Return False
|
||||
End Function
|
||||
@@ -812,6 +841,9 @@ Public Class Controller
|
||||
' LinePDL
|
||||
Case CMD.LINEPDL
|
||||
Return ProcessLinePDL()
|
||||
' LinePVL
|
||||
Case CMD.LINEPVL
|
||||
Return ProcessLinePVL()
|
||||
' CircleCP
|
||||
Case CMD.CIRCLECP
|
||||
Return ProcessCircleCP()
|
||||
@@ -827,6 +859,9 @@ Public Class Controller
|
||||
' ArcPDP
|
||||
Case CMD.ARCPDP
|
||||
Return ProcessArcPDP()
|
||||
' ArcPVP
|
||||
Case CMD.ARCPVP
|
||||
Return ProcessArcPVP()
|
||||
' Rectangle 2P
|
||||
Case CMD.RECTANGLE2P
|
||||
Return ProcessRectangle2P()
|
||||
@@ -925,6 +960,8 @@ Public Class Controller
|
||||
End Function
|
||||
|
||||
Private Function ExecuteDrag() As Boolean
|
||||
Dim bOk As Boolean = True
|
||||
' Eseguo drag
|
||||
EgtDisableModified()
|
||||
Select Case m_nLastCmd
|
||||
Case CMD.GRID_ROTATE
|
||||
@@ -935,6 +972,8 @@ Public Class Controller
|
||||
DragLine2P()
|
||||
Case CMD.LINEPDL
|
||||
DragLinePDL()
|
||||
Case CMD.LINEPVL
|
||||
DragLinePVL()
|
||||
Case CMD.CIRCLECP
|
||||
DragCircleCP()
|
||||
Case CMD.CIRCLECD
|
||||
@@ -945,6 +984,8 @@ Public Class Controller
|
||||
DragArc3P()
|
||||
Case CMD.ARCPDP
|
||||
DragArcPDP()
|
||||
Case CMD.ARCPVP
|
||||
DragArcPVP()
|
||||
Case CMD.RECTANGLE2P
|
||||
DragRectangle2P()
|
||||
Case CMD.POLYGON
|
||||
@@ -982,11 +1023,10 @@ Public Class Controller
|
||||
Case CMD.OFFSET
|
||||
DragOffset()
|
||||
Case Else
|
||||
EgtEnableModified()
|
||||
Return False
|
||||
bOk = False
|
||||
End Select
|
||||
EgtEnableModified()
|
||||
Return True
|
||||
Return bOk
|
||||
End Function
|
||||
|
||||
Private Function ExecuteSpecialData() As Boolean
|
||||
@@ -1882,6 +1922,7 @@ Public Class Controller
|
||||
SetInputBoxPoint3d(m_ptCont)
|
||||
Case 1
|
||||
m_ptP1 = m_ptLast
|
||||
m_vtLast = m_vtCont
|
||||
m_dAux = LEN_STD
|
||||
' posso prendere punto per definire direzione, ma non prendo direzione notevole
|
||||
m_Scene.SetStatusSelPoint(False)
|
||||
@@ -1889,12 +1930,12 @@ Public Class Controller
|
||||
m_Scene.DisableDrag()
|
||||
RaiseEvent PrepareInputBox("LINE PDL", "Insert Direction", "", False, True)
|
||||
m_nInpType = IBT.TY_DIRECTION
|
||||
m_dLast = GridAngFromGlobDir(m_vtCont)
|
||||
m_dLast = GridAngFromGlobDir(m_vtLast)
|
||||
SetInputBoxDouble(m_dLast)
|
||||
DragLinePDL()
|
||||
Case 2
|
||||
m_dPrev = m_dLast
|
||||
m_vtCont = GlobDirFromGridAng(m_dPrev)
|
||||
m_vtLast = GlobDirFromGridAng(m_dPrev)
|
||||
m_dLast = m_dAux
|
||||
m_nStep = 3
|
||||
m_Scene.DisableDrag()
|
||||
@@ -1909,7 +1950,7 @@ Public Class Controller
|
||||
' creo la linea (i punti sono in globale)
|
||||
EnableCommandLog()
|
||||
Dim nId As Integer = EgtCreateCurveLinePVL(GetCurrLayer(), m_ptP1.Loc(GDB_ID.GRID),
|
||||
m_vtCont.Loc(GDB_ID.GRID), m_dLast, REF_TY.GRID)
|
||||
m_vtLast.Loc(GDB_ID.GRID), m_dLast, REF_TY.GRID)
|
||||
DisableCommandLog()
|
||||
If nId <> GDB_ID.NULL Then
|
||||
m_ptCont = m_ptLast
|
||||
@@ -1930,14 +1971,14 @@ Public Class Controller
|
||||
Private Sub DragLinePDL()
|
||||
If m_nStep = 2 Then ' inserimento direzione
|
||||
' determino il versore direzione iniziale
|
||||
Dim vtDirS = GlobDirFromGridAng(m_dLast)
|
||||
Dim m_vtLast = GlobDirFromGridAng(m_dLast)
|
||||
' 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
|
||||
' creo la linea di direzione
|
||||
EgtCreateCurveLinePVL(m_Scene.GetDragGroup(), m_ptP1, vtDirS, m_dAux, REF_TY.GLOB)
|
||||
EgtCreateCurveLinePVL(m_Scene.GetDragGroup(), m_ptP1, m_vtLast, m_dAux, REF_TY.GLOB)
|
||||
Else
|
||||
Dim ptP2 As Point3d = m_ptP1 + vtDirS * m_dAux
|
||||
Dim ptP2 As Point3d = m_ptP1 + m_vtLast * m_dAux
|
||||
EgtModifyCurveEndPoint(nId, ptP2, REF_TY.GLOB)
|
||||
End If
|
||||
EgtDraw()
|
||||
@@ -1946,9 +1987,96 @@ 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_vtCont, m_dLast, REF_TY.GLOB)
|
||||
EgtCreateCurveLinePVL(m_Scene.GetDragGroup(), m_ptP1, m_vtLast, m_dLast, REF_TY.GLOB)
|
||||
Else
|
||||
Dim ptP2 As Point3d = m_ptP1 + m_vtCont * m_dLast
|
||||
Dim ptP2 As Point3d = m_ptP1 + m_vtLast * m_dLast
|
||||
EgtModifyCurveEndPoint(nId, ptP2)
|
||||
End If
|
||||
EgtDraw()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Function ProcessLinePVL() As Boolean
|
||||
Select Case m_nStep
|
||||
Case 0
|
||||
' deve esistere un gruppo corrente e devo poter creare il gruppo di drag
|
||||
If GetCurrLayer() = GDB_ID.NULL Or Not m_Scene.CreateDragGroup() Then
|
||||
Return False
|
||||
End If
|
||||
' imposto stato a primo punto per Line2P
|
||||
m_Scene.SetStatusSelPoint(True)
|
||||
m_nStep = 1
|
||||
' abilito dialogo
|
||||
RaiseEvent PrepareInputBox("LINE PVL", "Insert Start Point", "", False, False)
|
||||
m_nInpType = IBT.TY_POINT3D
|
||||
SetInputBoxPoint3d(m_ptCont)
|
||||
Case 1
|
||||
m_ptP1 = m_ptLast
|
||||
m_vtLast = m_vtCont
|
||||
m_dAux = LEN_STD
|
||||
' posso prendere punto per definire direzione, ma non prendo direzione notevole
|
||||
m_Scene.SetStatusSelPoint(False)
|
||||
m_nStep = 2
|
||||
m_Scene.DisableDrag()
|
||||
RaiseEvent PrepareInputBox("LINE PVL", "Insert Direction Vector", "", False, True)
|
||||
m_nInpType = IBT.TY_VECTOR3D
|
||||
SetInputBoxVector3d(m_vtLast)
|
||||
DragLinePVL()
|
||||
Case 2
|
||||
m_dLast = m_dAux
|
||||
m_nStep = 3
|
||||
m_Scene.DisableDrag()
|
||||
EgtUnselectableRemove(m_Scene.GetDragGroup())
|
||||
RaiseEvent PrepareInputBox("LINE PVL", "Insert Length", "", False, True)
|
||||
m_nInpType = IBT.TY_LENGTH
|
||||
SetInputBoxDouble(m_dLast)
|
||||
DragLinePVL()
|
||||
Case 3
|
||||
' reset scena
|
||||
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),
|
||||
m_vtLast.Loc(GDB_ID.GRID), m_dLast, REF_TY.GRID)
|
||||
DisableCommandLog()
|
||||
If nId <> GDB_ID.NULL Then
|
||||
m_ptCont = m_ptLast
|
||||
m_vtCont = (m_ptLast - m_ptP1)
|
||||
m_vtCont.Normalize()
|
||||
End If
|
||||
EgtDraw()
|
||||
' aggiorno stato
|
||||
m_nStep = 0
|
||||
RaiseEvent UpdateUI(Me, True)
|
||||
Case Else
|
||||
m_nStep = 0
|
||||
Return False
|
||||
End Select
|
||||
Return True
|
||||
End Function
|
||||
|
||||
Private Sub DragLinePVL()
|
||||
If m_nStep = 2 Then ' inserimento direzione
|
||||
' 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
|
||||
' creo la linea di direzione
|
||||
EgtCreateCurveLinePVL(m_Scene.GetDragGroup(), m_ptP1, m_vtLast, m_dAux, REF_TY.GLOB)
|
||||
Else
|
||||
m_vtLast.Normalize()
|
||||
Dim ptP2 As Point3d = m_ptP1 + m_vtLast * m_dAux
|
||||
EgtModifyCurveEndPoint(nId, ptP2, REF_TY.GLOB)
|
||||
End If
|
||||
EgtDraw()
|
||||
ElseIf m_nStep = 3 Then ' inserimento lunghezza
|
||||
' 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
|
||||
' creo la linea di direzione
|
||||
EgtCreateCurveLinePVL(m_Scene.GetDragGroup(), m_ptP1, m_vtLast, m_dLast, REF_TY.GLOB)
|
||||
Else
|
||||
m_vtLast.Normalize()
|
||||
Dim ptP2 As Point3d = m_ptP1 + m_vtLast * m_dLast
|
||||
EgtModifyCurveEndPoint(nId, ptP2)
|
||||
End If
|
||||
EgtDraw()
|
||||
@@ -2233,13 +2361,14 @@ Public Class Controller
|
||||
SetInputBoxPoint3d(m_ptCont)
|
||||
Case 1
|
||||
m_ptP1 = m_ptLast
|
||||
m_vtLast = m_vtCont
|
||||
m_dAux = LEN_STD
|
||||
m_Scene.SetStatusSelPoint(False)
|
||||
m_nStep = 2
|
||||
m_Scene.DisableDrag()
|
||||
RaiseEvent PrepareInputBox("ARC PDP", "Insert Direction", "", False, True)
|
||||
m_nInpType = IBT.TY_DIRECTION
|
||||
m_dLast = GridAngFromGlobDir(m_vtCont)
|
||||
m_dLast = GridAngFromGlobDir(m_vtLast)
|
||||
SetInputBoxDouble(m_dLast)
|
||||
DragArcPDP()
|
||||
Case 2
|
||||
@@ -2251,11 +2380,11 @@ Public Class Controller
|
||||
' reset scena
|
||||
m_Scene.ResetStatus(False)
|
||||
' determino il versore direzione iniziale
|
||||
Dim vtDirS As Vector3d = GlobDirFromGridAng(m_dLast)
|
||||
m_vtLast = GlobDirFromGridAng(m_dLast)
|
||||
' creo l'arco (i punti sono in globale)
|
||||
EnableCommandLog()
|
||||
Dim nId = EgtCreateCurveArc2PVN(GetCurrLayer(), m_ptP1.Loc(GDB_ID.GRID), m_ptLast.Loc(GDB_ID.GRID),
|
||||
vtDirS.Loc(GDB_ID.GRID), Vector3d.Z_AX, REF_TY.GRID)
|
||||
m_vtLast.Loc(GDB_ID.GRID), Vector3d.Z_AX, REF_TY.GRID)
|
||||
DisableCommandLog()
|
||||
If nId <> GDB_ID.NULL Then
|
||||
m_ptCont = m_ptLast
|
||||
@@ -2314,6 +2443,102 @@ Public Class Controller
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Function ProcessArcPVP() As Boolean
|
||||
Select Case m_nStep
|
||||
Case 0
|
||||
' deve esistere un gruppo corrente e devo poter creare il gruppo di drag
|
||||
If GetCurrLayer() = GDB_ID.NULL Or Not m_Scene.CreateDragGroup() Then
|
||||
Return False
|
||||
End If
|
||||
' imposto stato a primo punto per Arc3P
|
||||
m_Scene.SetStatusSelPoint(True)
|
||||
m_nStep = 1
|
||||
' abilito dialogo
|
||||
RaiseEvent PrepareInputBox("ARC PVP", "Insert Start Point", "", False, False)
|
||||
m_nInpType = IBT.TY_POINT3D
|
||||
SetInputBoxPoint3d(m_ptCont)
|
||||
Case 1
|
||||
m_ptP1 = m_ptLast
|
||||
m_vtLast = m_vtCont
|
||||
m_dAux = LEN_STD
|
||||
m_Scene.SetStatusSelPoint(False)
|
||||
m_nStep = 2
|
||||
m_Scene.DisableDrag()
|
||||
RaiseEvent PrepareInputBox("ARC PVP", "Insert Direction Vector", "", False, True)
|
||||
m_nInpType = IBT.TY_VECTOR3D
|
||||
SetInputBoxVector3d(m_vtLast)
|
||||
DragArcPVP()
|
||||
Case 2
|
||||
m_nStep = 3
|
||||
m_Scene.EnableDrag()
|
||||
RaiseEvent PrepareInputBox("ARC PVP", "Insert End Point", "", False, True)
|
||||
m_nInpType = IBT.TY_POINT3D
|
||||
Case 3
|
||||
' reset scena
|
||||
m_Scene.ResetStatus(False)
|
||||
' versore normale al piano dell'arco
|
||||
Dim vtNorm As Vector3d = m_vtLast ^ (m_ptLast - m_ptP1)
|
||||
If vtNorm.Normalize() Then
|
||||
If (vtNorm * EgtGetGridVersZ()) < 0 Then
|
||||
vtNorm *= -1
|
||||
End If
|
||||
Else
|
||||
vtNorm = EgtGetGridVersZ()
|
||||
End If
|
||||
' creo l'arco (i punti sono in globale)
|
||||
EnableCommandLog()
|
||||
Dim nId = EgtCreateCurveArc2PVN(GetCurrLayer(), m_ptP1.Loc(GDB_ID.GRID), m_ptLast.Loc(GDB_ID.GRID),
|
||||
m_vtLast.Loc(GDB_ID.GRID), vtNorm.Loc(GDB_ID.GRID), REF_TY.GRID)
|
||||
DisableCommandLog()
|
||||
If nId <> GDB_ID.NULL Then
|
||||
m_ptCont = m_ptLast
|
||||
Dim VtV As Vector3d
|
||||
EgtEndVector(nId, VtV)
|
||||
m_vtCont = VtV.Glob(GetCurrLayer())
|
||||
End If
|
||||
EgtDraw()
|
||||
' aggiorno stato
|
||||
m_nStep = 0
|
||||
RaiseEvent UpdateUI(Me, True)
|
||||
Case Else
|
||||
m_nStep = 0
|
||||
Return False
|
||||
End Select
|
||||
Return True
|
||||
End Function
|
||||
|
||||
Private Sub DragArcPVP()
|
||||
If m_nStep = 2 Then
|
||||
' 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
|
||||
' creo la linea di direzione
|
||||
EgtCreateCurveLinePVL(m_Scene.GetDragGroup(), m_ptP1, m_vtLast, m_dAux, REF_TY.GLOB)
|
||||
Else
|
||||
m_vtLast.Normalize()
|
||||
Dim ptP2 As Point3d = m_ptP1 + m_vtLast * m_dAux
|
||||
EgtModifyCurveEndPoint(nId, ptP2, REF_TY.GLOB)
|
||||
End If
|
||||
EgtDraw()
|
||||
ElseIf m_nStep = 3 Then
|
||||
' svuoto il gruppo di drag
|
||||
EgtEmptyGroup(m_Scene.GetDragGroup())
|
||||
' durante la creazione di oggetti il gruppo di Drag ha riferimento globale
|
||||
' arco sempre da ricreare (può cambiare la normale al suo piano)
|
||||
Dim vtNorm As Vector3d = m_vtLast ^ (m_ptLast - m_ptP1)
|
||||
If vtNorm.Normalize() Then
|
||||
If (vtNorm * EgtGetGridVersZ()) < 0 Then
|
||||
vtNorm *= -1
|
||||
End If
|
||||
Else
|
||||
vtNorm = EgtGetGridVersZ()
|
||||
End If
|
||||
' creo l'arco (i punti sono in globale), in alcuni casi particolari crea una retta
|
||||
EgtCreateCurveArc2PVN(m_Scene.GetDragGroup(), m_ptP1, m_ptLast, m_vtLast, vtNorm, REF_TY.GLOB)
|
||||
EgtDraw()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Function ProcessRectangle2P() As Boolean
|
||||
Select Case m_nStep
|
||||
Case 0
|
||||
@@ -2844,7 +3069,6 @@ Public Class Controller
|
||||
EgtCreateSurfTriMeshByRevolve(m_Scene.GetDragGroup(), EgtGetLastSelectedObj(),
|
||||
m_ptP1, vtAx, m_bLast, EPS_STM_DRAG, REF_TY.GLOB)
|
||||
EgtDraw()
|
||||
EgtDraw()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
|
||||
+13
-5
@@ -1562,6 +1562,13 @@ Public Function EgtCenterPoint(ByVal nId As Integer, ByRef PtP As Point3d) As Bo
|
||||
Return EgtCenterPoint(nId, nId, PtP)
|
||||
End Function
|
||||
|
||||
<DllImport(EgtIntDll, CharSet:=CharSet.Unicode)>
|
||||
Public Function EgtCentroid(ByVal nId As Integer, ByVal nRefId As Integer, ByRef PtP As Point3d) As Boolean
|
||||
End Function
|
||||
Public Function EgtCentroid(ByVal nId As Integer, ByRef PtP As Point3d) As Boolean
|
||||
Return EgtCentroid(nId, nId, PtP)
|
||||
End Function
|
||||
|
||||
<DllImport(EgtIntDll, CharSet:=CharSet.Unicode)>
|
||||
Public Function EgtAtParamPoint(ByVal nId As Integer, ByVal dU As Double, ByVal nRefId As Integer, ByRef PtP As Point3d) As Boolean
|
||||
End Function
|
||||
@@ -2166,11 +2173,12 @@ Public Enum SP As Integer
|
||||
PT_END = 3
|
||||
PT_MID = 4
|
||||
CENTER = 5
|
||||
PT_NEAR = 6
|
||||
PT_INTERS = 7
|
||||
PT_TANGENT = 8
|
||||
PT_PERPENDICULAR = 9
|
||||
PT_MINDIST = 10
|
||||
CENTROID = 6
|
||||
PT_NEAR = 7
|
||||
PT_INTERS = 8
|
||||
PT_TANGENT = 9
|
||||
PT_PERPENDICULAR = 10
|
||||
PT_MINDIST = 11
|
||||
End Enum
|
||||
'Costanti : TIPO SELECTED POINT
|
||||
Public Enum SEP As Integer
|
||||
|
||||
+15
-15
@@ -882,7 +882,7 @@
|
||||
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
|
||||
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
|
||||
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAC4
|
||||
DQAAAk1TRnQBSQFMAgEBDgEAAUgBDwFIAQ8BEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
||||
DQAAAk1TRnQBSQFMAgEBDgEAAVgBDwFYAQ8BEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
||||
AwABQAMAAUADAAEBAQABCAYAARAYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
|
||||
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
|
||||
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
|
||||
@@ -951,7 +951,7 @@
|
||||
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
|
||||
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
|
||||
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADW
|
||||
CAAAAk1TRnQBSQFMAgEBAgEAAWgBBgFoAQYBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
||||
CAAAAk1TRnQBSQFMAgEBAgEAAXgBBgF4AQYBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
||||
AwABQAMAARADAAEBAQABCAYAAQQYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
|
||||
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
|
||||
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
|
||||
@@ -1039,23 +1039,23 @@
|
||||
<data name="btnLinePDL.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
xAAADsQBlSsOGwAAAAd0SU1FB94LFAgmBIbrMKMAAAEJSURBVFhHzZJBDoIwEEW79U5cwoUX9GpuTDxE
|
||||
5TcODp3fsRRaNHkRHkPfmBhijKdCZS2vcHnksDkPKjcTbtfzFvjEl28240BlNSqO+7ELZHEwbgESZ8yf
|
||||
aQYXifw5MOInjXGQzwAjXHbEQT4HjCiyMz4z0XkmDZ3igMoVHePAiBST+0IczqM2DozAAena+eU6xqiN
|
||||
AyNwgBfXIIKYjoPaODBCDmmNp3fJfAkjag5kcX2fz3tQ6VGKw3dfwIvjeZcFJCqU4uDwBXB4ityfCS/e
|
||||
CpWCjusFjooDKoV8gYX0Gn9nK1QK/7DA6j8gcXg23wKVmmWJL4fFAZUjoXIkVI6EypFQORIqxxHDG6PK
|
||||
sKUdv+zYAAAAAElFTkSuQmCC
|
||||
xAAADsQBlSsOGwAAAAd0SU1FB98CFBEwL+N0VR8AAAEzSURBVFhHxZNBTgMxDEWz5U69BAvu07NwNTZI
|
||||
HCL4h/HIiX+M6ZDU0tNMfpw8t2pLrfWp0DDLV3n5GGF9ETT8M+Xt9XkDHPLzyXoCaJjGyLHeO8AgB/sG
|
||||
IHKG1E3AS2PcBy74lQflYOwBLgi5IAdjH3DBlIty4Ub7WehYJAc07FgoBy5oMl1P5MgisnLgAlzQ3oNP
|
||||
bmWMrBy4ABdEcgskkFk5yMqBC/SSR+XtLOmf4YLMhUxu12N/BA0jZnLkyweI5NhfMoBKlZkcZAewZ9ym
|
||||
BY1CLe+fjUie5bjzrmdpkyJ1yu0ALb8gP97bELRRkeoGOGlz8zMRUpDaAe60UZH61wEApN3Tbo5Idb8B
|
||||
lSNn/Rmk8gMAqe5fgDXryyL189VnB1gNDXdCw53QcCc03AkN91HLN055gAr2pAmrAAAAAElFTkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
<data name="btnArcPDP.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
xAAADsQBlSsOGwAAAAd0SU1FB94LEhIjLPrzFWYAAAEBSURBVFhH7ZVRDsIgEET59U49rVfzx8RDIEOy
|
||||
7XZ3aFS22x9JXpQHMoMaLbXWS6EyEypnaWNp4ImwsH2AyhkQ1kPvz42DEk4Ir3J7MG9ZAzU6XJWwrwVO
|
||||
AIQLbB204YOFmQI6fFSijXE4+LUACxf65uPg/hnjsc9NuKxbnAA2GKwHe9zBcGqd7hGotAVwgDpMGB76
|
||||
DVTqAggywWHhgEpT4LRwQOVBgdBwQOWgQHg4oJIVsHuioJIUOOX2gEpbwK5HQqUpcNrtAZW6AFuPxIt2
|
||||
Y10g9R1AWOPjP5II9hMbrkrofZHsJ/8CV38HupASG/m/A5lQmQmVmVCZCZWZUJlHLW9mibhNTtEhqQAA
|
||||
AABJRU5ErkJggg==
|
||||
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||
YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAAHdElNRQffAhUIECU9bmc5AAABJElEQVRYR8WVUQ6CMBBE
|
||||
+fVOHo6zeDV/TDxE7VQWl9kpUWhrkxdwdtmZIoQppfRXpDgSKZ4lr2sGJ8ZV9QEpngFmxfT2+LATIgjG
|
||||
c7rclc6shh5v7kLwtSAIAOaGqoO8orFxJoA3r4XIq24OjgZQ5kZp3jcu/zGO5TeZW50JAmBjsA6OhMHQ
|
||||
XF32GFLkABjghhnVob8gRR8ARmTczBxIkQJ0MwdS3AnQ1BxIsRKguTmQogrAPa2QogjQZfdAihyA6y2R
|
||||
IgXotnsgRR9A1VsShbxjH6DHHfAzQyHz9YfkCIvHbDO5uDV3IXzfUWCamZfzEoIbegeAqQ8wc0PXAACm
|
||||
myMVRzwD9QBLgT+/Td+CvN63vhZgNFIciRRHIsWRSHEkUhxHml4ROIeysZlykAAAAABJRU5ErkJggg==
|
||||
</value>
|
||||
</data>
|
||||
<data name="btnCircleCP.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
|
||||
@@ -850,7 +850,11 @@ Public Class Form1
|
||||
End Sub
|
||||
|
||||
Private Sub btnLinePDL_Click(sender As System.Object, e As System.EventArgs) Handles btnLinePDL.Click
|
||||
m_Controller.ExecuteCommand(CMD.LINEPDL)
|
||||
If (ModifierKeys And Keys.Shift) <> Keys.Shift Then
|
||||
m_Controller.ExecuteCommand(CMD.LINEPDL)
|
||||
Else
|
||||
m_Controller.ExecuteCommand(CMD.LINEPVL)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub btnCircleCP_Click(sender As System.Object, e As System.EventArgs) Handles btnCircleCP.Click
|
||||
@@ -870,7 +874,11 @@ Public Class Form1
|
||||
End Sub
|
||||
|
||||
Private Sub btnArcPDP_Click(sender As System.Object, e As System.EventArgs) Handles btnArcPDP.Click
|
||||
m_Controller.ExecuteCommand(CMD.ARCPDP)
|
||||
If (ModifierKeys And Keys.Shift) <> Keys.Shift Then
|
||||
m_Controller.ExecuteCommand(CMD.ARCPDP)
|
||||
Else
|
||||
m_Controller.ExecuteCommand(CMD.ARCPVP)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub btnRectangle2P_Click(sender As System.Object, e As System.EventArgs) Handles btnRectangle2P.Click
|
||||
@@ -1478,25 +1486,27 @@ Public Class Form1
|
||||
Private Sub ToolStripStatusSnapPointType_Changed(ByVal sender As Object, ByVal nSpType As SP) Handles Scene1.OnChangedSnapPointType
|
||||
Select Case nSpType
|
||||
Case SP.PT_SKETCH
|
||||
tsStatusSnapPointType.Text = "Sketch Point"
|
||||
tsStatusSnapPointType.Text = EgtMsg(1102) 'Sketch Point
|
||||
Case SP.PT_GRID
|
||||
tsStatusSnapPointType.Text = "Grid Point"
|
||||
tsStatusSnapPointType.Text = EgtMsg(1104) 'Grid Point
|
||||
Case SP.PT_END
|
||||
tsStatusSnapPointType.Text = "End Point"
|
||||
tsStatusSnapPointType.Text = EgtMsg(1106) 'End Point
|
||||
Case SP.PT_MID
|
||||
tsStatusSnapPointType.Text = "Mid Point"
|
||||
tsStatusSnapPointType.Text = EgtMsg(1108) 'Mid Point
|
||||
Case SP.CENTER
|
||||
tsStatusSnapPointType.Text = "Center"
|
||||
tsStatusSnapPointType.Text = EgtMsg(1110) 'Center
|
||||
Case SP.CENTROID
|
||||
tsStatusSnapPointType.Text = EgtMsg(1112) 'Centroid
|
||||
Case SP.PT_NEAR
|
||||
tsStatusSnapPointType.Text = "Near Point"
|
||||
tsStatusSnapPointType.Text = EgtMsg(1114) 'Near Point"
|
||||
Case SP.PT_INTERS
|
||||
tsStatusSnapPointType.Text = "Inters Point"
|
||||
tsStatusSnapPointType.Text = EgtMsg(1116) 'Inters Point
|
||||
Case SP.PT_TANGENT
|
||||
tsStatusSnapPointType.Text = "Tang Point"
|
||||
tsStatusSnapPointType.Text = EgtMsg(1118) 'Tang Point
|
||||
Case SP.PT_PERPENDICULAR
|
||||
tsStatusSnapPointType.Text = "Perp Point"
|
||||
tsStatusSnapPointType.Text = EgtMsg(1120) 'Perp Point
|
||||
Case SP.PT_MINDIST
|
||||
tsStatusSnapPointType.Text = "MinDist Point"
|
||||
tsStatusSnapPointType.Text = EgtMsg(1122) 'MinDist Point"
|
||||
Case Else
|
||||
tsStatusSnapPointType.Text = "---"
|
||||
End Select
|
||||
|
||||
@@ -46,5 +46,5 @@ Imports System.Runtime.InteropServices
|
||||
' utilizzando l'asterisco (*) come descritto di seguito:
|
||||
' <Assembly: AssemblyVersion("1.0.*")>
|
||||
|
||||
<Assembly: AssemblyVersion("1.6.2.5")>
|
||||
<Assembly: AssemblyFileVersion("1.6.2.5")>
|
||||
<Assembly: AssemblyVersion("1.6.2.6")>
|
||||
<Assembly: AssemblyFileVersion("1.6.2.6")>
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 365 B After Width: | Height: | Size: 405 B |
Binary file not shown.
|
Before Width: | Height: | Size: 435 B After Width: | Height: | Size: 473 B |
Generated
+10
-2
@@ -43,16 +43,17 @@ Partial Class Scene
|
||||
Me.cmdMinDistPoint = New System.Windows.Forms.ToolStripMenuItem()
|
||||
Me.sepSelPnt1 = New System.Windows.Forms.ToolStripSeparator()
|
||||
Me.cmdStopDrag = New System.Windows.Forms.ToolStripMenuItem()
|
||||
Me.cmdCentroid = New System.Windows.Forms.ToolStripMenuItem()
|
||||
Me.MenuScene.SuspendLayout()
|
||||
Me.SuspendLayout()
|
||||
'
|
||||
'MenuScene
|
||||
'
|
||||
Me.MenuScene.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.cmdSelectAll, Me.cmdDeselectAll, Me.sepSel1, Me.cmdWinSelect, Me.cmdSelectLayer, Me.cmdSelectPart, Me.cmdRestartDrag, Me.cmdSketchPoint, Me.cmdGridPoint, Me.cmdEndPoint, Me.cmdMidPoint, Me.cmdCenterPoint, Me.cmdNearPoint, Me.cmdIntersectionPoint, Me.cmdTangentPoint, Me.cmdPerpendicularPoint, Me.cmdMinDistPoint, Me.sepSelPnt1, Me.cmdStopDrag})
|
||||
Me.MenuScene.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.cmdSelectAll, Me.cmdDeselectAll, Me.sepSel1, Me.cmdWinSelect, Me.cmdSelectLayer, Me.cmdSelectPart, Me.cmdRestartDrag, Me.cmdSketchPoint, Me.cmdGridPoint, Me.cmdEndPoint, Me.cmdMidPoint, Me.cmdCenterPoint, Me.cmdCentroid, Me.cmdNearPoint, Me.cmdIntersectionPoint, Me.cmdTangentPoint, Me.cmdPerpendicularPoint, Me.cmdMinDistPoint, Me.sepSelPnt1, Me.cmdStopDrag})
|
||||
Me.MenuScene.Name = "ContextMenuStrip1"
|
||||
Me.MenuScene.ShowCheckMargin = True
|
||||
Me.MenuScene.ShowImageMargin = False
|
||||
Me.MenuScene.Size = New System.Drawing.Size(179, 412)
|
||||
Me.MenuScene.Size = New System.Drawing.Size(179, 434)
|
||||
'
|
||||
'cmdSelectAll
|
||||
'
|
||||
@@ -166,6 +167,12 @@ Partial Class Scene
|
||||
Me.cmdStopDrag.Size = New System.Drawing.Size(178, 22)
|
||||
Me.cmdStopDrag.Text = "Drag Off"
|
||||
'
|
||||
'cmdCentroid
|
||||
'
|
||||
Me.cmdCentroid.Name = "cmdCentroid"
|
||||
Me.cmdCentroid.Size = New System.Drawing.Size(178, 22)
|
||||
Me.cmdCentroid.Text = "Centroid"
|
||||
'
|
||||
'Scene
|
||||
'
|
||||
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
|
||||
@@ -196,5 +203,6 @@ End Sub
|
||||
Friend WithEvents cmdTangentPoint As System.Windows.Forms.ToolStripMenuItem
|
||||
Friend WithEvents cmdPerpendicularPoint As System.Windows.Forms.ToolStripMenuItem
|
||||
Friend WithEvents cmdMinDistPoint As System.Windows.Forms.ToolStripMenuItem
|
||||
Friend WithEvents cmdCentroid As System.Windows.Forms.ToolStripMenuItem
|
||||
|
||||
End Class
|
||||
|
||||
@@ -72,7 +72,6 @@ Public Class Scene
|
||||
m_nStatus = ST.SEL
|
||||
m_nOldStatus = ST.SEL
|
||||
m_nSnapType = SP.PT_GRID
|
||||
RaiseEvent OnChangedSnapPointType(Me, m_nSnapType)
|
||||
m_bAlsoSelDir = False
|
||||
m_PrevPoint = Point.Empty
|
||||
m_bGridCursorPos = False
|
||||
@@ -143,6 +142,7 @@ Public Class Scene
|
||||
EgtSetGeoLineAttribs(m_DstLnColor)
|
||||
EgtSetGeoTriaAttribs(m_DstLnColor)
|
||||
EgtInitTscExec()
|
||||
RaiseEvent OnChangedSnapPointType(Me, m_nSnapType)
|
||||
End Sub
|
||||
|
||||
Public Function GetCtx() As Integer
|
||||
@@ -277,7 +277,7 @@ Public Class Scene
|
||||
Dim dZ As Double = ptSel.z - m_ptPrev.z
|
||||
Dim dDist As Double = Sqrt(dX * dX + dY * dY + dZ * dZ)
|
||||
Dim sOut As New System.Text.StringBuilder
|
||||
sOut.Append("Dist=")
|
||||
sOut.Append(EgtMsg(1301)) ' Dist=
|
||||
sOut.Append(dDist.ToString("F4", CultureInfo.InvariantCulture))
|
||||
sOut.Append(" dX=")
|
||||
sOut.Append(dX.ToString("F4", CultureInfo.InvariantCulture))
|
||||
@@ -681,16 +681,21 @@ Public Class Scene
|
||||
MenuScene.Visible = True
|
||||
For Each i As ToolStripItem In MenuScene.Items
|
||||
If i.Name = "cmdSelectAll" Then
|
||||
i.Text = EgtMsg(1001) ' Select All
|
||||
i.Visible = True
|
||||
ElseIf i.Name = "cmdDeselectAll" Then
|
||||
i.Text = EgtMsg(1003) ' Deselect All
|
||||
i.Visible = True
|
||||
ElseIf i.Name = "sepSel1" Then
|
||||
i.Visible = True
|
||||
ElseIf i.Name = "cmdWinSelect" Then
|
||||
i.Text = EgtMsg(1005) ' Select Window
|
||||
i.Visible = True
|
||||
ElseIf i.Name = "cmdSelectPart" Then
|
||||
i.Text = EgtMsg(1007) ' Select Part
|
||||
i.Visible = True
|
||||
ElseIf i.Name = "cmdSelectLayer" Then
|
||||
i.Text = EgtMsg(1009) ' Select Layer
|
||||
i.Visible = True
|
||||
Else
|
||||
i.Visible = False
|
||||
@@ -704,27 +709,39 @@ Public Class Scene
|
||||
For Each i As ToolStripItem In MenuScene.Items
|
||||
Select Case i.Name
|
||||
Case "cmdSketchPoint"
|
||||
i.Text = EgtMsg(1101) ' Sketch Point
|
||||
i.Visible = True
|
||||
DirectCast(i, ToolStripMenuItem).Checked = (m_nSnapType = SP.PT_SKETCH)
|
||||
Case "cmdGridPoint"
|
||||
i.Text = EgtMsg(1103) ' Grid Point
|
||||
i.Visible = True
|
||||
DirectCast(i, ToolStripMenuItem).Checked = (m_nSnapType = SP.PT_GRID)
|
||||
Case "cmdEndPoint"
|
||||
i.Text = EgtMsg(1105) ' End Point
|
||||
i.Visible = True
|
||||
DirectCast(i, ToolStripMenuItem).Checked = (m_nSnapType = SP.PT_END)
|
||||
Case "cmdMidPoint"
|
||||
i.Text = EgtMsg(1107) ' Mid Point
|
||||
i.Visible = True
|
||||
DirectCast(i, ToolStripMenuItem).Checked = (m_nSnapType = SP.PT_MID)
|
||||
Case "cmdCenterPoint"
|
||||
i.Text = EgtMsg(1109) ' Center Point
|
||||
i.Visible = True
|
||||
DirectCast(i, ToolStripMenuItem).Checked = (m_nSnapType = SP.CENTER)
|
||||
Case "cmdCentroid"
|
||||
i.Text = EgtMsg(1111) ' Centroid
|
||||
i.Visible = True
|
||||
DirectCast(i, ToolStripMenuItem).Checked = (m_nSnapType = SP.CENTROID)
|
||||
Case "cmdNearPoint"
|
||||
i.Text = EgtMsg(1113) ' Near Point
|
||||
i.Visible = True
|
||||
DirectCast(i, ToolStripMenuItem).Checked = (m_nSnapType = SP.PT_NEAR)
|
||||
Case "cmdIntersectionPoint"
|
||||
i.Text = EgtMsg(1115) ' Intersection Point
|
||||
i.Visible = True
|
||||
DirectCast(i, ToolStripMenuItem).Checked = (m_nSnapType = SP.PT_INTERS)
|
||||
Case "cmdTangentPoint"
|
||||
i.Text = EgtMsg(1117) ' Tangent Point
|
||||
If m_bTangentPointOn Then
|
||||
i.Visible = True
|
||||
DirectCast(i, ToolStripMenuItem).Checked = (m_nSnapType = SP.PT_TANGENT)
|
||||
@@ -732,6 +749,7 @@ Public Class Scene
|
||||
i.Visible = False
|
||||
End If
|
||||
Case "cmdPerpendicularPoint"
|
||||
i.Text = EgtMsg(1119) ' Perpendicular Point
|
||||
If m_bPerpendicularPointOn Then
|
||||
i.Visible = True
|
||||
DirectCast(i, ToolStripMenuItem).Checked = (m_nSnapType = SP.PT_PERPENDICULAR)
|
||||
@@ -739,6 +757,7 @@ Public Class Scene
|
||||
i.Visible = False
|
||||
End If
|
||||
Case "cmdMinDistPoint"
|
||||
i.Text = EgtMsg(1121) ' Min Dist Point
|
||||
If m_bMinDistPointOn Then
|
||||
i.Visible = True
|
||||
DirectCast(i, ToolStripMenuItem).Checked = (m_nSnapType = SP.PT_MINDIST)
|
||||
@@ -748,6 +767,7 @@ Public Class Scene
|
||||
Case "sepSelPnt1"
|
||||
i.Visible = (m_nStatus <> ST.GETDIST And m_nStatus <> ST.GETDIST2)
|
||||
Case "cmdStopDrag"
|
||||
i.Text = EgtMsg(1201) ' Drag Off
|
||||
i.Visible = (m_nStatus <> ST.GETDIST And m_nStatus <> ST.GETDIST2)
|
||||
Case Else
|
||||
i.Visible = False
|
||||
@@ -757,6 +777,7 @@ Public Class Scene
|
||||
Else
|
||||
For Each i As ToolStripItem In MenuScene.Items
|
||||
If i.Name = "cmdRestartDrag" Then
|
||||
i.Text = EgtMsg(1203) ' Drag On
|
||||
i.Visible = True
|
||||
Else
|
||||
i.Visible = False
|
||||
@@ -802,6 +823,9 @@ Public Class Scene
|
||||
ElseIf e.ClickedItem.Name = "cmdCenterPoint" Then
|
||||
m_nSnapType = SP.CENTER
|
||||
RaiseEvent OnChangedSnapPointType(Me, m_nSnapType)
|
||||
ElseIf e.ClickedItem.Name = "cmdCentroid" Then
|
||||
m_nSnapType = SP.CENTROID
|
||||
RaiseEvent OnChangedSnapPointType(Me, m_nSnapType)
|
||||
ElseIf e.ClickedItem.Name = "cmdNearPoint" Then
|
||||
m_nSnapType = SP.PT_NEAR
|
||||
RaiseEvent OnChangedSnapPointType(Me, m_nSnapType)
|
||||
|
||||
Reference in New Issue
Block a user