雪山飞狐_lzh 发表于 2004-4-8 19:07:00

这是什么?

本帖最后由 作者 于 2004-4-8 21:20:10 编辑

先在AutoCad中生成一个带属性(文件里定义几个属性)外部参照(假定名字为a.dwg)
用VBA写下列代码
sub test()
pnt = ThisDrawing.Utility.GetPoint(, vbCrLf & "请输入插入点:")
Set bobj = ThisDrawing.ModelSpace.InsertBlock(pnt, "a.dwg", 1, 1, 1, 0)
end sub
'注意:a.dwg为插入的外部参照文件名现在的问题是bobj到底是什么?
是一般的块(属性窗口显示为外部参照,显然不是),
还是外部参照(可以编辑他的属性,显然不是),
或者...

efan2000 发表于 2004-4-8 19:48:00

是块引用对象,即块插入到图纸中所生成的,指向该块的引用,但每个块引用对象都有自己不同的属性值。

雪山飞狐_lzh 发表于 2004-4-8 19:50:00

为什么属性窗口显示为外部参照

雪山飞狐_lzh 发表于 2004-4-12 00:02:00

没有人试试么

mccad 发表于 2004-4-12 07:24:00

应该为块参照,你用的是什么版本。<BR>其属性值为生成该属性块时的默认值,你可以通过其它方法来修改其属性值。

雪山飞狐_lzh 发表于 2004-4-14 22:22:00

用我的办法插入块后,文件比一般的办法小很多(假如块很复杂的话)


我知道是块参照,但块参照分几种


一般的块参照和外部参照都是其中之一


<FONT color=#421ae6>bobj会不会是</FONT><FONT color=#000000>一般的块参照和外部参照的混合体</FONT>


我用的是2002

雪山飞狐_lzh 发表于 2004-4-14 22:38:00

明总,另外问个问题:


VBA可以实现附着外部参照么

mccad 发表于 2004-4-15 07:39:00

块参照和外部参照是两个不同的概念,但这两个对象在对象模型中却被混为一谈。<BR>对象模型中虽然存在着<FONT color=#0000ff>ExternalReference</FONT>对象,但却没有建立它的方法(帮助文件中注明的创建方法AddExternalReference其实是不存在的)。呵呵,又是一个BUG。<BR>而对于实际制图中插入的外部参照,在VBA中也只能显示为块参照,也就是说<BR>Ent.ObjectName = "AcDbBlockReference"<BR>唯一区别就是如果是外部参照,则可以读到其路径属性,而块参照则没有。
页: [1]
查看完整版本: 这是什么?