跪求高手
我想做这样一件事:在我的当前图形里有很多圆,我想一次将每个圆的圆心坐标输出到txt文件中,哪位高手能帮帮我,谢谢!
你想用哪种方式实现啊,是用.COM引用呢,还是那个DLL呢。。反正思路是一样的,弄个带过滤的选择集,选择源,然后遍历里面的元素,直接将每个元素的圆心输出到TXT。。就这么简单啦。。 zhuirvine 发表于 2011-11-17 22:59 static/image/common/back.gif
你想用哪种方式实现啊,是用.COM引用呢,还是那个DLL呢。。反正思路是一样的,弄个带过滤的选择集,选择源, ...
恩 ,我这两天研究了下,我是用VBA做的,但是我现在做到能遍历每个圆,但是不知道怎么输出到TXT文件中,高手能不能指点下 本帖最后由 guohq 于 2011-11-19 23:25 编辑
Sub WriteCir()
Dim ss As AcadSelectionSet
If IsNull(ThisDrawing.SelectionSets.Item("cir")) Then
Set ss = ThisDrawing.SelectionSets.Add("cir")
Else
Set ss = ThisDrawing.SelectionSets.Item("cir")
ss.Clear
End If
Dim gpCode(0) As Integer
Dim dataValue(0) As Variant
gpCode(0) = 0
dataValue(0) = "Circle"
Dim groupCode As Variant, dataCode As Variant
groupCode = gpCode
dataCode = dataValue
ss.Select acSelectionSetAll, , , groupCode, dataCode
Dim cir As AcadCircle, obj As AcadEntity
Dim ptAs Variant
Dim fso As Object
Set fso = CreateObject("Scripting.FileSystemObject")
Dim pfile As Object
Set pfile = fso.CreateTextFile("c:\ttttt.txt", True)
For Each obj In ss
Set cir = obj
pt = cir.Center
pfile.WriteLine (pt(0) & " " & pt(1))
Next
pfile.Close
End Sub
guohq 发表于 2011-11-19 23:23 static/image/common/back.gif
谢谢但是程序运行时报错未找到主键 我测试过,可以运行的,你自己可以设断点调试一下,看哪句话出错了 在一开始增加一个On Error Resume Next
因为一开始没有cir选集的话,ThisDrawing.SelectionSets.Item("cir")就会出错 sailorcwx 发表于 2011-11-22 12:19 static/image/common/back.gif
在一开始增加一个On Error Resume Next
因为一开始没有cir选集的话,ThisDrawing.SelectionSets.Item("cir ...
恩是这样的谢谢 呵呵,不怎么用VBA,没有考虑到这些
页:
[1]