CAD实现自定义实体夹点移动(com接口VB语言)

主要用到函数说明:

 

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

猜你喜欢

转载自www.cnblogs.com/yzy0224/p/11003365.html