
VB提取CAD块属性
急、急、急,我现在能使用VB打开AutoCAD(2006),在模型空间划直线、圆。但是我不知道如何读取出此图形中属性块的各字段名后的属性值,图中属性块名"tdf",字段名...
急、急、急,我现在能使用VB打开AutoCAD(2006),在模型空间划直线、圆。但是我不知道如何读取出此图形中属性块的各字段名后的属性值,图中属性块名"tdf",字段名"code"、"name"。请各位大虾指教,定给高分,不甚感激。
我的目的是编制一个软件,读取CAD图纸中的标题栏和明细表内容(不习惯用bom表),汇总生成“零部件明细表”、“外购件明细表”及其余各材料明细表。
我有分的。 展开
我的目的是编制一个软件,读取CAD图纸中的标题栏和明细表内容(不习惯用bom表),汇总生成“零部件明细表”、“外购件明细表”及其余各材料明细表。
我有分的。 展开
1个回答
展开全部
Dim myAcadApp As AutoCAD.AcadApplication, activeDoc As AutoCAD.AcadDocument, acMS As AutoCAD.AcadModelSpace
Set myAcadApp = CreateObject("Autocad.Application")
Set activeDoc = myAcadApp.ActiveDocument
Dim I%
Dim entry As AcadEntity, blk1 As AcadBlockReference, att1 As AcadAttributeReference
Dim varAttributes As Variant
Dim strAttributes As String
For Each entry In activeDoc.ModelSpace
If entry.ObjectName = "AcDbBlockReference" Then
Set blk1 = entry
if blk1.name="?????" then'你的块名
varAttributes = entry.GetAttributes
strAttributes = ""
For I = LBound(varAttributes) To UBound(varAttributes)
Set att1 = varAttributes(I)
strAttributes = strAttributes & "标记:" & att1.TagString & ",值:" & att1.TextString & "。"
'自己想怎么用就怎么用^_^
Next
end if
End If
Next
Set myAcadApp = CreateObject("Autocad.Application")
Set activeDoc = myAcadApp.ActiveDocument
Dim I%
Dim entry As AcadEntity, blk1 As AcadBlockReference, att1 As AcadAttributeReference
Dim varAttributes As Variant
Dim strAttributes As String
For Each entry In activeDoc.ModelSpace
If entry.ObjectName = "AcDbBlockReference" Then
Set blk1 = entry
if blk1.name="?????" then'你的块名
varAttributes = entry.GetAttributes
strAttributes = ""
For I = LBound(varAttributes) To UBound(varAttributes)
Set att1 = varAttributes(I)
strAttributes = strAttributes & "标记:" & att1.TagString & ",值:" & att1.TextString & "。"
'自己想怎么用就怎么用^_^
Next
end if
End If
Next
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询