主要用到函数说明:
MxDrawXCustomEvent::MxDrawXCustomEntity::moveGripPointsAt
自定义实体事件,自定义实体夹点被移动,详细说明如下:
参数 | 说明 |
---|---|
LONGLONG lEntity |
自定义实体id |
IN LONG lGridIndex |
夹点索引号 |
IN McGePoint3d vec |
夹点移动的向量 |
VB代码实现如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
If sEventName =
"MxDrawXCustomEntity::moveGripPointsAt"
Then
Dim param88 As MxDrawResbuf
Set param88 = MxDrawX1.CustomEventParam()
Set customEntity = MxDrawX1.CallEx(
"Mx_GetCustomEntity"
, param88)
Set sPt = customEntity.GetPoint(
"startpoint"
)
Set ePt = customEntity.GetPoint(
"endpoint"
)
Dim lIndex As Long
lIndex = param88.AtLong(1)
Dim offsetPt As MxDrawPoint
Set offsetPt = param88.AtPoint(2)
If lIndex = 0 Then
sPt.x = sPt.x + offsetPt.x
sPt.y = sPt.y + offsetPt.y
customEntity.SetPoint
"startpoint"
, sPt
Else
ePt.x = ePt.x + offsetPt.x
ePt.y = ePt.y + offsetPt.y
customEntity.SetPoint
"endpoint"
, ePt
End If
End If
|