几何尺寸与公差论坛------致力于产品几何量公差标准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)
-   -   【转帖】rouble With Plotstyles Using The Rendering Framework (http://www.dimcax.com/hust/showthread.php?t=18828)

yang686526 2009-05-07 05:21 PM

【转帖】rouble With Plotstyles Using The Rendering Framework
 
trouble with plotstyles using the rendering framework...
trouble with plotstyles using the rendering framework...
i am trying to render using the plot styles... the odamfcapp works on the print preview for me... and im trying to emulate it... to that end i have:
code:
void chsview::ontraitsmodified()
{
odgsbasevectorizeview::ontraitsmodified();
if(m_pstype==odgicontext::kpsnone || device()->rendermode()!=odgsview::rendermode::k2doptimized)
{
const odgisubentitytraitsdata& enttraits = effectivetraits();
if(device()->m_bdrawfilledprimitive && device()->rendermode() == khiddenline)
device()->draw_color(device()->getcolor(0));
else
device()->draw_color(enttraits.truecolor());
device()->draw_lineweight(enttraits.lineweight());
device()->draw_fillstyle(enttraits.filltype()==kodgifillalways ? odps::kfssolid : odps::kfsuseobject);
}
else
{
const odpsplotstyledata& plotstyle = effectiveplotstyle();
device()->draw_color(plotstyle.color());
device()->draw_lineweight(plotstyle.lineweight());
device()->draw_fillstyle(plotstyle.fillstyle());
device()->draw_linetype(plotstyle.linetype(), plotstyle.isadaptivelinetype(), plotstyle.linepatternsize());
}
}
i'm using a monocrome.ctb which is successfully loaded and i am getting into the odpsplotstyledata segment of the code. however... the colors that come out aren't monocromatic... any ideas?
i figured out it...
place zlib.dll into the dd execution folder.
(from thirdpaty folder)
if you are using static build you should link to dd_vc6md_rxplotstyleservices.lib and use
odrx_declare_static_module_entry_point(odpsplotsty leservicesimpl);
construction
also before calling odinitialize() you should place odrx_init_static_module_map() macro
see odamfcapp for details
i have those entries... but am still getting colors
im using
odrx_declare_static_module_entry_point(odpsplotsty leservicesimpl);
and am calling odrx_init_static_module_map() before
odinitialize()...
and it seems to be loading my monochrome.ctb however... the colors that are passed here:
const odpsplotstyledata& plotstyle = effectiveplotstyle();
device()->draw_color(plotstyle.color());
are not monochromatic... any other ideas?
i use the static libs in 2003...
quote:
originally posted by dmitry a. novikov
hi,
so do you use dd in dlls or libs, and which version ?
specifically:
dd_vc2003md_alloc.lib
dd_vc2003md_gi.lib
dd_vc2003md_db.lib
dd_vc2003md_ge.lib
dd_vc2003md_gs.lib
dd_vc2003md_br.lib
dd_vc2003md_modelergeometry.lib
dd_vc2003md_acisbuilder.lib
dd_vc2003md_acisrenderer.lib
dd_vc2003md_root.lib
dd_vc2003md_zlib.lib
dd_vc2003md_zip.lib
dd_vc2003md_spatialindex.lib
dd_vc2003md_rxplotstyleservices.lib
dd_vc2003md_rxrasterservices.lib
success...
turns out i had some "debugging" code that was torturing me!
even though on initialization i was correctly setting the rendermode to be k2doptimized in my view's draw() i was calling setrendermode(kwireframe).
on a side note: is there any plans to implement plots styles support for khiddenline?
thanks for all the help,
tyler
tillerstarredwards


所有的时间均为北京时间。 现在的时间是 02:38 PM.