查看单个帖子
旧 2009-05-07, 06:58 PM   #1
yang686526
高级会员
 
注册日期: 06-11
帖子: 14579
精华: 1
现金: 224494 标准币
资产: 234494 标准币
yang686526 向着好的方向发展
默认 【转帖】when Should I Draw Blocks

when should i draw blocks?
when should i draw blocks?
hello.
i'm trying to import dwg/dxf files to my own structures. my question is, when should i draw a block and when should i only save its information in order to draw possible future references to this block? how i know this?
thanks in advance.
last edited by dmarin; 23rd march 2004 at 01:33 amfff">.
hi,
the block definition is stored in a oddbblocktablerecord object (these are the name, description, entities forming a block, etc).
the block reference information is stored in oddbblockreference entity.
when iterating the separate entities to draw them, you can reach oddbblockreference entity. if so, then use the member oddbblockreference::blocktablerecord() to reach the definition object.
then you must get the transformation matrix of the block reference and to draw the such transformed entities from the block definition.
hope this helps.
regards
chudomir
hello chudomir, and first of all, thanks for your answer.
i have two questions more.
first, must blocks defined in oddbblocktablerecord be drawn or are only the definitions? and second, how could i iterating all the entities?
thanks again.
in general blocktablerecords are only definitions and should be drawn only if they are referenced by blockreference.
but where is a number of "special" blocks:
-model space which is a container for model entities
-paper space blocks which are containers for paper space entities.
such blocks return true from islayout() function.
to get all such blocks you can iterate through layout dictionary and use oddblayout::getblocktablerecordid()
to iterate through block entities use oddbblocktablerecord::newiterator().
sergey slezkin
yang686526离线中   回复时引用此帖
GDT自动化论坛(仅游客可见)