VBA能批量输出等高线坐标数据么??
想批量输出等高线数据,vba 能做到么??数据输出到txt 或 excelaccess....等,能做到么,
请各位大虾指教,
站内或email :
**** Hidden Message ***** 可以的,只是三言两语讲不清楚 我查过vba的属性说明,好像很难输出?
反正我没有太大的办法,还请大虾执教。。。。。
当然可以
还请各位大虾点拨一下。。。。
cad中有list功能, 能查到所有控制点的坐标, 但如何实现并输出。。。小生不会,,,请高手点点。。。
LW8399@126.COM
这么跟你说吧
新开一个CAD 在里面随便画一条多段线
再新建一个图层 名字叫"等高线" 把刚画的这条线 放到"等高线"图层中
然后 运行下面的代码
Sub OutputCoords()
Dim Entry As AcadEntity
Dim Coords As Variant
Open "c:\test.txt" For Output As #1
For Each Entry In ThisDrawing.ModelSpace
If TypeName(Entry) = "IAcadLWPolyline" And Entry.Layer = "等高线" Then
Coords = Entry.Coordinates
For i = 0 To UBound(Coords) - 1 Step 2
Print #1, "X="; Trim(Str(Coords(i))); ","; "Y="; Trim(Str(Coords(i + 1)))
Next i
End If
Next Entry
Close #1
End Sub
再打开 C:\test.txt 文件 里面就是坐标信息.
谢谢。。。
不过,最终要实现在cad中输入一个命令,然后选取选定的等高线,回车,来完成等高线坐标点的输出,
大侠说的是, 等高线还得取出等高线上的高程坐标才行???还请游侠指教。。
坐标点能存在excel access 中么 ?
貌似你完全没学过VB 或者 VBA
呵呵,
新手,努力学习中,谢谢楼上的指点
z坐标值又怎么输出呢 ?还请游侠看看。。。
Print #1, "X="; Trim(Str(Coords(i))); ","; "Y="; Trim(Str(Coords(i + 1)))
改成
Print #1, "X="; Trim(Str(Coords(i))); ","; "Y="; Trim(Str(Coords(i + 1)));","; "Z="; Trim(Str(Coords(i + 2)))
页:
[1]