srf 发表于 2003-7-24 11:17:00

编程申请:如何直接提取DWG文件块中块的属性?

问题:在用ACAD单个绘图时,图框、标题栏通常是预定的块,需要时插入即可。大幅面绘图仪出图时将大量DWG文件插入,这时每个文件都是一个块,图框、标题栏就成了块中块,为了充分利用纸(A0卷纸),要手工紧密排图然后PLOT,本人思考很久,想开发一个自动排图程序,但苦于有个关键问题不能突破,就是如何直接提取DWG文件中的块中块的属性(块名,原点等)? 和如何直接提取DWG文件块中指定位置的文本(如标题栏中的图名,图号)?得到了这些信息,就可以决定是否旋转和定位了。
      本人用V-LSP编程,一直未获突破,请诸位援助,各位大侠能否谈谈各自的解决高招?或提供相关软件,本人不胜感激,并愿共享研究成果!
                                                SRF      E-MAILltsrf@peoplemail.com.cn
   

thankyou 发表于 2003-7-31 14:53:00

Private Sub Cmd_Click()
On Error Resume Next
Dim ent As Object
Dim AttObj As AcadSelectionSet
Dim gpcode(0) As Integer
Dim datavalue(0) As Variant
Dim entatt As Variant

gpcode(0) = 0: datavalue(0) = "insert"
Set AttObj = ThisDrawing.SelectionSets.Add("AttGet")
AttObj.Select acSelectionSetAll, , , gpcode, datavalue

For Each ent In AttObj
If ent.HasAttributes Then
entatt = ent.GetAttributes
。。。。。。
End If
Next
AttObj.Delete
End Sub

srf 发表于 2003-8-7 15:23:00

感谢 wyj7485 先生的回复。

            srf      ltsrf@peoplemail.com.cn

abcxyz0517 发表于 2007-3-14 16:27:00

<p>用LISP语言怎么实现阿~</p><p></p>

四叶草by 发表于 2011-12-5 13:38:13

现在08版本的有自带属性提取功能了
页: [1]
查看完整版本: 编程申请:如何直接提取DWG文件块中块的属性?