如何实现消隐功能
如题 可以利用第三坐标来实现消隐 也就是前面的Z坐标比后面的大 然后用AUTOCAD的“HIDE”命令来完成图形消隐。不过这只是显示消隐,不能实现打印消隐 wipeout.arx是AUTODESK的技术机密,没有公开代码,所以也不知道原理,要用到光栅图像的吧,我有个想法,就是调用wipeout.arx,赋值一个多边形给它生成消隐效果,我这样可以实现图块消隐等效果... 怎样批量实现图块消隐 首先用程序描出图块的轮廓闭合多边形,然后用sendcommand "wipeout"指定多边形的时候用 函数(本站有)指定给它,就可以的到一个消隐效果了,批量消隐就用一个循环就可以了 那个函数是什么,我找不到。 '转换图元函数Public Function axEnt2lspEnt(entObj As AcadEntity) As String
Dim entHandle As String
entHandle = entObj.Handle
axEnt2lspEnt = "(handent " & Chr(34) & entHandle & Chr(34) & ")"
End Function
'示例Break
Sub Break()
Dim Pnt As Variant
Dim entObj As AcadEntity
ThisDrawing.Utility.GetEntity entObj, Pnt, "选择图元:"
Dim Pnt2 As Variant
Pnt2 = ThisDrawing.Utility.GetPoint(, "选择点:")
Dim det As String
det = GetDoubleEntTable(entObj, Pnt)
Dim lspPnt As String
lspPnt = axPoint2lspPoint(Pnt2)
ThisDrawing.SendCommand "_break" & vbCr & det & vbCr & lspPnt & vbCr
End Sub
页:
[1]