查看单个帖子
旧 2009-05-04, 06:43 PM   #1
yang686526
高级会员
 
注册日期: 06-11
帖子: 14579
精华: 1
现金: 224494 标准币
资产: 234494 标准币
yang686526 向着好的方向发展
默认 【转帖】create hatch in a block

create hatch in a block
create hatch in a block
i try to create a hatch in a block with the definition of a block that come from another file. i've got two different cases.
1- when the hatch is defined by a circle why the function fromhatch.getloopat(i, fromloop) return nothing in the fromloop object when the fromhatch.numberofloops is set to 1.
2- i've got an "unexpected error" where i call the function newhatch.insertloopat why?
is there something i did wrong?
when i do this, all entities are already created in the new block except the hatch entity
newhatch = block.addhatch(fromhatch.patterntype, fromhatch.patternname, fromhatch.associativehatch)
for i = 0 to fromhatch.numberofloops - 1
fromhatch.getloopat(i, fromloop)
dim toloop(ubound(fromloop)) as dwgdirectx.iacadentity
for j = 0 to ubound(fromloop)
fromentity = fromloop(j)
for k = 0 to fromentlst.count - 1
if fromentlst(k) = fromentity.objectid then
exit for
end if
next
if k < fromentlst.count then
toloop(j) = block.item(k)
end if
next
newhatch.insertloopat(newhatch.numberofloops, dwgdirectx.aclooptype.achatchlooptypedefault, toloop)
next
any help is apreciated
thank you
danny

1. once the hatch object has been created, you must add the outer loop to the hatch object for it to become a valid autocad object. if you attempt any operation other than calling the appendouterloop
method, the hatch object will enter an unpredictable state.
2. getloopat could return loops for associative hatches only.

thank you
but i have another one for you.
when i read a block with a hatch in it, how can i know which entities are part of the outerloop and which are part of the innerloop?
how can i even know that an entity belong to the hatch if it is not an associative hatch?
did it need a specific order to insert them?
yang686526离线中   回复时引用此帖
GDT自动化论坛(仅游客可见)