几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量

几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量 (http://www.dimcax.com/hust/index.php)
-   DirectDWG (http://www.dimcax.com/hust/forumdisplay.php?f=89)
-   -   【转帖】oddbdimstyletablerecord - dimscale,dimasz.. members missing (http://www.dimcax.com/hust/showthread.php?t=17509)

yang686526 2009-05-06 07:36 PM

【转帖】oddbdimstyletablerecord - dimscale,dimasz.. members missing
 
oddbdimstyletablerecord - dimscale,dimasz.. members missing
oddbdimstyletablerecord - dimscale,dimasz.. members missing
i am changing our dwg/dxf - interface from opendwg to dwgdirect c++
and have one problem for the moment:
the oddbdimstyletablerecord - class has no member-functions to retrieve
dimstyle data. in our opendwg implementation the code was as follows:
pdimstyletablerecord->set_40(adtb.dimst.dimscale);
pdimstyletablerecord->set_41(adtb.dimst.dimasz);
pdimstyletablerecord->set_42(adtb.dimst.dimexo);
pdimstyletablerecord->set_43(adtb.dimst.dimdli);
pdimstyletablerecord->set_44(adtb.dimst.dimexe);
pdimstyletablerecord->set_45(adtb.dimst.dimrnd);
pdimstyletablerecord->set_46(adtb.dimst.dimdle);
pdimstyletablerecord->set_47(adtb.dimst.dimtp);
pdimstyletablerecord->set_48(adtb.dimst.dimtm);
etc...
so, how can i get dimscale, dimasz, dimexo .. for one instance of
oddbdimstyletablerecord ?
thanks for help,
achim
prototypes of functions accessing dimension variables are generated from dimvardefs.h container in oddbdatabase, oddbdimstyletablerecord, oddbdimension headers.
they are like getdimscale() setdimscale()
getdimasz() setdimasz()
etc.
sergey slezkin
dimasz,dimscale values from oddbdimstyletablerecord
hi,
getdimscale() ,setdimscale(),getdimasz() ,setdimasz(), getdimaso() , getdimsho()
getplinegen(), getorthomode() getregenmode() getfillmode()
are members of oddbdatabase pdb and not oddbdimstyletablerecord.
so these parameters will have same values.how can i retrieve values corresponding to each record (like different arrow size,type) for dimstyle using getdimstyletableid()?
thanks,
singhn
getplinegen(), getorthomode() getregenmode() getfillmode() are realy database methods. but variables which names start with dim present in oddbdatabase, in oddbdimstyletablerecord and in oddbdimension.
as i wrote above prototypes of methods accessing them are generated in dbdatabase.h, dbdimstyletablerecord.h and dbdimension.h by including dimvardefs.h container.
sergey slezkin
thanks for prompt reply.this solves my problem.
thanks,
singhn
arrow names
hi,
how can i get arrow names?
oddbdimstyletablerecordptr pdimstyle = piter->getrecordid().safeopenobject();
oddbobjectid blkid,blkid1,blkid2;
blkid=pdimstyle->dimblk();
blkid1=pdimstyle->dimblk1();
blkid2=pdimstyle->dimblk2();
all these values (blkid,blkid1,blkid2) are returned as null.
where are arrow names stored in database?
thanks,
singhn
like all other dimension variables they present:
1. in dimension style.
2. dimension entity may have them as overrides for dimstyle values.
3. in database (defaults for newly created dimension entities).
null arrow id means that default (closed filled) arrow is used.
sergey slezkin


所有的时间均为北京时间。 现在的时间是 10:27 AM.