I successfully integrated the osgProducer in wxwidget. Also did it using boost
thread. I ll post the code shortly. Hope that might help some one else as well
Robert Osfield <[EMAIL PROTECTED]> wrote: Hi Quasim,
I am currently developing a new viewer library, called osgViewer, and
this will replace osgProducer and is designed to make it easy to
integrate OSG viewer code with 3rd party libraries such as WxWindows.
Have a look at the osgsimpleviewer* examples currently checked into
CVS.
Robert.
On 12/20/06, Qasim Mumtaz wrote:
> Hi, I want to get osgProducer in wxWidgets. I am trying to create a seperate
> thread for osgProducer::viewer. I can see the osg window and a seperate
> wxWidget window, but can not get osg window into widget window. I based this
> code on example found on openscenegraph windowing tools kits. Using boost as
> threading library
>
> -Gian Lorenzetto's simple example integrating OSG with wxWidgets. Built
> against OSG 1.1 and wxWidgets 2.6.3. Supports full event handling and open
> dialog for file load.
>
> Any help will be greatly appreciated.
>
> ...
> osgCanvas_ = new wxOsgCanvas( itemPanel3, ID_OSGCANVAS, wxDefaultPosition,
> wxSize(100, 100), wxSTATIC_BORDER );
> ...
>
> osgCanvas_->init_Producer(dialog.GetPath())
>
> ....
>
> ----------------------------------------------------------
> wxOsgCanvas::wxOsgCanvas(wxWindow *parent, wxWindowID id,
> const wxPoint& pos, const wxSize& size, long style,
> const wxString& name) :
> wxGLCanvas(parent, (wxGLCanvas*) NULL, id, pos, size,
> style|wxFULL_REPAINT_ON_RESIZE , name ),
> viewWidth_(0),
> viewHeight_(0),
> startTick_(0),
> frameNum_(0),
> mViewer(NULL)/*osgProducer::viewer object*/
> {
> }
>
> ------------------------------------------------------------
> bool wxOsgCanvas::init_Producer(const wxString &filename)
> {
> mFileName=filename;
> mThread= new
> boost::thread(boost::bind(&wxOsgCanvas::run_Producer,this));
>
> return true;
> }
> -------------------------------------------------------------
> bool wxOsgCanvas::run_Producer()
> {
> SetCurrent();
>
>
> mViewer= new osgProducer::Viewer();
>
>
> mViewer->setUpViewer(osgProducer::Viewer::STANDARD_SETTINGS);
>
> model_=osgDB::readNodeFile(mFileName.c_str());
>
> if (!model_)
> {return false;}
>
> mViewer->setSceneData(model_.get());
>
> mViewer->setClearColor(osg::Vec4(0.1,0.1,0.1,0));
>
> mViewer->realize();
>
> while( !mViewer->done() )
>
> {
> SetCurrent();
>
> mViewer->sync();
> mViewer->update();
> mViewer->frame();
>
> }
>
> mViewer->sync();
> return 0;
> }
>
>
>
> __________________________________________________
> Do You Yahoo!?
> Tired of spam? Yahoo! Mail has the best spam protection around
> http://mail.yahoo.com
> _______________________________________________
> osg-users mailing list
> [email protected]
> http://openscenegraph.net/mailman/listinfo/osg-users
> http://www.openscenegraph.org/
>
>
_______________________________________________
osg-users mailing list
[email protected]
http://openscenegraph.net/mailman/listinfo/osg-users
http://www.openscenegraph.org/
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com _______________________________________________
osg-users mailing list
[email protected]
http://openscenegraph.net/mailman/listinfo/osg-users
http://www.openscenegraph.org/