关于块求坐标的问题
我用如下代码想取得块的坐标:Dim entry As AcadBlock
Dim v As Variant
...
v = entry.Origin
但是报错说Origin不是块的属性,可帮助里明明写着是,到底是怎么回事情 没有人帮帮我呀 不是没人帮你
把你的完整一点的代码贴上来才知道那错了
就你贴的一点点代码看不出问题 代码如下
Dim myss As AcadSelectionSet<BR> Set myss = ThisDrawing.SelectionSets.Add("125553")<BR> Dim llll As AcadBlock 'AcadLine<BR> Dim gpcode(0) As Integer<BR> Dim datavalue(0) As Variant<BR> Dim linecount, i, j, q As Integer<BR> Dim stpt, enpt As Variant<BR> Dim vst As Variant<BR> gpcode(0) = 0<BR> datavalue(0) = "Insert"<BR> myss.Select acSelectionSetAll, , , gpcode, datavalue<BR> ReDim lineco(myss.Count - 1, 3) As Variant<BR> i = 0<BR> For Each lll In myss<BR> vst = lll.Origin<BR> Next<BR> myss.Delete<BR>执行到vst = lll.Origin后提示错误:对象不支持该属性或方法 Origin是块的属性,不是块引用的属性
选择集里只有块引用,当然不支持该属性
如果一定要,可以用下列方法:
vst=thisdrawing.blocks(lll.name).Origin
另外:
声明为:Dim llll As AcadBlock
引用却为:For Each lll In myss<BR> 多谢楼上的,刚学,有些基本的问题也不清楚,多谢指点。
你家闺女真可爱! 好像origin不是求块坐标的,那什么是呀 如果你要求插入点用
Dim lll As AcadBlockReference<BR> vst = lll.InsertionPoint<BR> 按你说的行了,再次感谢
页:
[1]