从Autocad到Excel获取坐标
大家好,我试图通过autocad自动计算某些dxf图形的权重,但到目前为止似乎不可能
现在我正在考虑一种新方案,例如从autocad获取直线、圆等的坐标,然后在catia上重新绘制它们
那么,您能告诉我一种从autocad到excel的直线起点和终点坐标的定位方法吗
提前thx
**** Hidden Message ***** 这些天我选择的方法,在使用VBA时,在64位Autocad 2015和32位Excel 2010上工作,是:
- 构建一个选择集(或一系列if-then循环),我发现64位VBA中的选择集充其量是脆弱的
- 一旦你有项目,你想要写一个逗号分隔的文本文件
- 导入到excel
它不是最干净的方法,但更防弹对我来说,在我的盒子上,尝试一些更高档的东西。
我可以在当天晚些时候给你举个例子。 这是一种蛮力方法,不是速度恶魔,但如果您让它坐下来烹饪,并参考“Microsoft脚本运行时”
,它是可靠的Public Sub BruteForceTriangles()
Dim txtstream As TextStream
Dim fso As New FileSystemObject
Dim face As Acad3DFace
Dim myfile As String
Dim acent As AcadEntity
On Error GoTo MyExit
myfile = "C:\GDrive\AutoCAD\HLB-Lime.txt"
Set txtstream = fso.OpenTextFile(myfile, ForWriting, True)
For Each acent In ThisDrawing.ModelSpace
If acent.ObjectName = "AcDbFace" Then
Set face = acent
If face.Layer = "0-HLB-LimeArea" Then
txtstream.WriteLine face.Coordinates(0) & "," & face.Coordinates(1) & "," & face.Coordinates(2) & "," & face.Coordinates(3) & "," & face.Coordinates(4) & "," & face.Coordinates(5) & "," & face.Coordinates(6) & "," & face.Coordinates(7) & "," & face.Coordinates(8)
End If
End If
Next acent
MyExit:
txtstream.Close
End Sub
嘿swift
谢谢你的回复
我会试一试并分享结果。
干杯! 我们正在寻找AutoCad VBA顾问。我们为AutoCad开发了一个Visual Basic插件,它在AutoCad 12 WindowsXP上运行良好。AutoCad限制了对AutoCad 13的Visual Basic支持(也可能是14),但在AutoCad 2015中重新引入。我们需要为适用于 64 位 Windows 7 和 AutoCad 15+ 的 AutoCad 插件提供一些 VBA 编程支持。
请与我联系。
Mark
Universe Technical Translation,
Inc.mark@universe.us
713-8278800
页:
[1]