高级会员
注册日期: 06-11
帖子: 14579
精华: 1
现金: 224494 标准币
资产: 234494 标准币
|
【转帖】noob on way 9rendering a drawing0
noob on way (rendering a drawing)
noob on way (rendering a drawing)
hi,
i'm just discovering the dwgdirect libraries, and i would like to know if i'm going on the right way.
my goal is classic (console app):
- reading a dwg file,
- produce an off screen rendering of the drawing,
- export the rendered drawing to a raster format (bmp at beginning).
of what i understood, to produce a rendering we need an odgsviewptr linked to our oddbdatabaseptr, and manipulate the off screen viewport to get the desired view.
to do this i think i can follow the odvecorizeex example.
this is where i'm stopped. i do not understand how to get the drawn data to produce a bitmap.
if i did some confusions in terms, please correct me ! this will help to learn .
thanks in advance.
edit : i just forgot to say i'm using the linux version of dwgdirect
last edited by christophe_c; 18th august 2008 at 03:05 amfff">. reason: version using
so i'm lost, i do not understand how to render a dwg file.
i did some bad using of exsimpledevice and odgsbitmapvectorizedevice.
any advice or direction on where to look at will be appreciated.
exception caught: invalid index
i hope with a piece of code i'll no longer talk alone ^^
in the code i attached, i create bitmapdevice based on the bitmapmodule, an odgicontextfordatabase object, and sets up activelayoutviews with the device and dbcontext pointers.
after calling pdevice->onsize(screenrect), i do a pdevice->update() (which should draw dwg in the device isn't it ?)
the update produce an invalid index exception.
do i forget something before calling it ?
how to back trace this error ?
\examples\excustobjs\cmd_bmpout.cpp contains sample implementation of bmpout command.
probably the reason of exception is that you have not set logical palette and/or background.
sergey slezkin
i've download the windows non libs. i didn't thought that it's not the same content of linux version.
i'll have a look on cmd_bmpout.cpp
and that was the logical palette.
thank you for yours advices sergey
it's ok
thank you again, that's working now !
|