wxvtk-users Mailing List for wxVTKRenderWindowInteractor (Page 4)
Brought to you by:
malat
You can subscribe to this list here.
2004 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
|
---|---|---|---|---|---|---|---|---|---|---|---|---|
2005 |
Jan
(7) |
Feb
|
Mar
(2) |
Apr
(12) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(7) |
Nov
(13) |
Dec
|
2006 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(5) |
Jun
(6) |
Jul
(3) |
Aug
(11) |
Sep
|
Oct
(10) |
Nov
(2) |
Dec
(1) |
2007 |
Jan
(16) |
Feb
(9) |
Mar
(13) |
Apr
|
May
(7) |
Jun
(8) |
Jul
|
Aug
(14) |
Sep
|
Oct
(6) |
Nov
|
Dec
(1) |
2008 |
Jan
(20) |
Feb
(1) |
Mar
|
Apr
(20) |
May
(5) |
Jun
(11) |
Jul
|
Aug
(52) |
Sep
(2) |
Oct
(35) |
Nov
(7) |
Dec
(14) |
2009 |
Jan
(4) |
Feb
(5) |
Mar
(9) |
Apr
(19) |
May
|
Jun
(3) |
Jul
|
Aug
|
Sep
|
Oct
(2) |
Nov
(5) |
Dec
|
2010 |
Jan
(1) |
Feb
(5) |
Mar
|
Apr
(3) |
May
|
Jun
|
Jul
(4) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2011 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(4) |
Dec
(13) |
2012 |
Jan
|
Feb
(2) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2013 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(9) |
Nov
|
Dec
|
2014 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
(1) |
Dec
|
From: Sander N. <nie...@st...> - 2009-03-05 15:24:56
|
Hi Pierre, I have two comments: I would suggest making the definition of wxvtk_attributes static. This will prevent the symbol becoming exported. Also, you have removed the wxCHECK_VERSION(2, 8, 0). Are you sure that your invocation of the wxGLCanvas constructor will also work with versions of wxWidgets before 2.8? Best regards, Sander On 5 mrt 2009, at 15:58, Pierre Fillard wrote: > Message: "Added a wxGLCanvas attribute list to the > wxVTKRenderWindowInteractor constructor to force OpenGL double > buffering to be ON by default. > This trick solves some flickering issues on some graphic hardwares, > the other will (or should) behave normally." > > Checking in src/wxVTKRenderWindowInteractor.cxx; > /cvsroot/wxvtk/wxVTK/src/wxVTKRenderWindowInteractor.cxx,v <-- > wxVTKRenderWindowInteractor.cxx > new revision: 1.48; previous revision: 1.47 > done > > > Index: src/wxVTKRenderWindowInteractor.cxx > =================================================================== > RCS file: /cvsroot/wxvtk/wxVTK/src/wxVTKRenderWindowInteractor.cxx,v > retrieving revision 1.47 > diff -u -r1.47 wxVTKRenderWindowInteractor.cxx > --- src/wxVTKRenderWindowInteractor.cxx 3 Mar 2009 16:20:42 > -0000 1.47 > +++ src/wxVTKRenderWindowInteractor.cxx 5 Mar 2009 14:51:34 -0000 > @@ -137,13 +137,19 @@ > vtkCxxRevisionMacro(wxVTKRenderWindowInteractor, "$Revision: 1.47 $") > vtkInstantiatorNewMacro(wxVTKRenderWindowInteractor) > > -//--------------------------------------------------------------------------- > #if defined(__WXGTK__) && defined(USE_WXGLCANVAS) > -#if (wxCHECK_VERSION(2, 8, 0)) > -wxVTKRenderWindowInteractor::wxVTKRenderWindowInteractor() : > wxGLCanvas(0, -1, wxDefaultPosition), vtkRenderWindowInteractor() > -#else > -wxVTKRenderWindowInteractor::wxVTKRenderWindowInteractor() : > wxGLCanvas(), vtkRenderWindowInteractor() > +int wxvtk_attributes[]={ > + WX_GL_DOUBLEBUFFER, > + WX_GL_RGBA, > + WX_GL_DEPTH_SIZE, > + 16, > + 0 > +}; > #endif > + > + > //--------------------------------------------------------------------------- > +#if defined(__WXGTK__) && defined(USE_WXGLCANVAS) > +wxVTKRenderWindowInteractor::wxVTKRenderWindowInteractor() : > wxGLCanvas(0, -1, wxDefaultPosition, wxDefaultSize, 0, > wxT("wxVTKRenderWindowInteractor"), wxvtk_attributes), > vtkRenderWindowInteractor() > #else > wxVTKRenderWindowInteractor::wxVTKRenderWindowInteractor() : > wxWindow(), vtkRenderWindowInteractor() > #endif //__WXGTK__ > @@ -170,7 +176,7 @@ > long style, > const > wxString &name) > #if defined(__WXGTK__) && defined(USE_WXGLCANVAS) > - : wxGLCanvas(parent, id, pos, size, style, name), > vtkRenderWindowInteractor() > + : wxGLCanvas(parent, id, pos, size, style, name, > wxvtk_attributes), vtkRenderWindowInteractor() > #else > : wxWindow(parent, id, pos, size, style, name), > vtkRenderWindowInteractor() > #endif //__WXGTK__ > ------------------------------------------------------------------------------ > Open Source Business Conference (OSBC), March 24-25, 2009, San > Francisco, CA > -OSBC tackles the biggest issue in open source: Open Sourcing the > Enterprise > -Strategies to boost innovation and cut costs with open source > participation > -Receive a $600 discount off the registration fee with the source > code: SFAD > http://p.sf.net/sfu/XcvMzF8H_______________________________________________ > Wxvtk-users mailing list > Wxv...@li... > https://lists.sourceforge.net/lists/listinfo/wxvtk-users |
From: Mathieu M. <mat...@gm...> - 2009-03-05 15:01:31
|
Yay ! Pierre joined the wxvtk team ! Thanks Pierre ! On Thu, Mar 5, 2009 at 3:58 PM, Pierre Fillard <pie...@gm...> wrote: > Message: "Added a wxGLCanvas attribute list to the > wxVTKRenderWindowInteractor constructor to force OpenGL double buffering to > be ON by default. > This trick solves some flickering issues on some graphic hardwares, the > other will (or should) behave normally." > > Checking in src/wxVTKRenderWindowInteractor.cxx; > /cvsroot/wxvtk/wxVTK/src/wxVTKRenderWindowInteractor.cxx,v <-- > wxVTKRenderWindowInteractor.cxx > new revision: 1.48; previous revision: 1.47 > done > > > Index: src/wxVTKRenderWindowInteractor.cxx > =================================================================== > RCS file: /cvsroot/wxvtk/wxVTK/src/wxVTKRenderWindowInteractor.cxx,v > retrieving revision 1.47 > diff -u -r1.47 wxVTKRenderWindowInteractor.cxx > --- src/wxVTKRenderWindowInteractor.cxx 3 Mar 2009 16:20:42 -0000 1.47 > +++ src/wxVTKRenderWindowInteractor.cxx 5 Mar 2009 14:51:34 -0000 > @@ -137,13 +137,19 @@ > vtkCxxRevisionMacro(wxVTKRenderWindowInteractor, "$Revision: 1.47 $") > vtkInstantiatorNewMacro(wxVTKRenderWindowInteractor) > > -//--------------------------------------------------------------------------- > #if defined(__WXGTK__) && defined(USE_WXGLCANVAS) > -#if (wxCHECK_VERSION(2, 8, 0)) > -wxVTKRenderWindowInteractor::wxVTKRenderWindowInteractor() : wxGLCanvas(0, > -1, wxDefaultPosition), vtkRenderWindowInteractor() > -#else > -wxVTKRenderWindowInteractor::wxVTKRenderWindowInteractor() : wxGLCanvas(), > vtkRenderWindowInteractor() > +int wxvtk_attributes[]={ > + WX_GL_DOUBLEBUFFER, > + WX_GL_RGBA, > + WX_GL_DEPTH_SIZE, > + 16, > + 0 > +}; > #endif > + > +//--------------------------------------------------------------------------- > +#if defined(__WXGTK__) && defined(USE_WXGLCANVAS) > +wxVTKRenderWindowInteractor::wxVTKRenderWindowInteractor() : wxGLCanvas(0, > -1, wxDefaultPosition, wxDefaultSize, 0, wxT("wxVTKRenderWindowInteractor"), > wxvtk_attributes), vtkRenderWindowInteractor() > #else > wxVTKRenderWindowInteractor::wxVTKRenderWindowInteractor() : wxWindow(), > vtkRenderWindowInteractor() > #endif //__WXGTK__ > @@ -170,7 +176,7 @@ > long style, > const wxString > &name) > #if defined(__WXGTK__) && defined(USE_WXGLCANVAS) > - : wxGLCanvas(parent, id, pos, size, style, name), > vtkRenderWindowInteractor() > + : wxGLCanvas(parent, id, pos, size, style, name, wxvtk_attributes), > vtkRenderWindowInteractor() > #else > : wxWindow(parent, id, pos, size, style, name), > vtkRenderWindowInteractor() > #endif //__WXGTK__ > > ------------------------------------------------------------------------------ > Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA > -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise > -Strategies to boost innovation and cut costs with open source participation > -Receive a $600 discount off the registration fee with the source code: SFAD > http://p.sf.net/sfu/XcvMzF8H > _______________________________________________ > Wxvtk-users mailing list > Wxv...@li... > https://lists.sourceforge.net/lists/listinfo/wxvtk-users > > -- Mathieu |
From: Pierre F. <pie...@gm...> - 2009-03-05 14:59:03
|
Message: "Added a wxGLCanvas attribute list to the wxVTKRenderWindowInteractor constructor to force OpenGL double buffering to be ON by default. This trick solves some flickering issues on some graphic hardwares, the other will (or should) behave normally." Checking in src/wxVTKRenderWindowInteractor.cxx; /cvsroot/wxvtk/wxVTK/src/wxVTKRenderWindowInteractor.cxx,v <-- wxVTKRenderWindowInteractor.cxx new revision: 1.48; previous revision: 1.47 done Index: src/wxVTKRenderWindowInteractor.cxx =================================================================== RCS file: /cvsroot/wxvtk/wxVTK/src/wxVTKRenderWindowInteractor.cxx,v retrieving revision 1.47 diff -u -r1.47 wxVTKRenderWindowInteractor.cxx --- src/wxVTKRenderWindowInteractor.cxx 3 Mar 2009 16:20:42 -0000 1.47 +++ src/wxVTKRenderWindowInteractor.cxx 5 Mar 2009 14:51:34 -0000 @@ -137,13 +137,19 @@ vtkCxxRevisionMacro(wxVTKRenderWindowInteractor, "$Revision: 1.47 $") vtkInstantiatorNewMacro(wxVTKRenderWindowInteractor) -//--------------------------------------------------------------------------- #if defined(__WXGTK__) && defined(USE_WXGLCANVAS) -#if (wxCHECK_VERSION(2, 8, 0)) -wxVTKRenderWindowInteractor::wxVTKRenderWindowInteractor() : wxGLCanvas(0, -1, wxDefaultPosition), vtkRenderWindowInteractor() -#else -wxVTKRenderWindowInteractor::wxVTKRenderWindowInteractor() : wxGLCanvas(), vtkRenderWindowInteractor() +int wxvtk_attributes[]={ + WX_GL_DOUBLEBUFFER, + WX_GL_RGBA, + WX_GL_DEPTH_SIZE, + 16, + 0 +}; #endif + +//--------------------------------------------------------------------------- +#if defined(__WXGTK__) && defined(USE_WXGLCANVAS) +wxVTKRenderWindowInteractor::wxVTKRenderWindowInteractor() : wxGLCanvas(0, -1, wxDefaultPosition, wxDefaultSize, 0, wxT("wxVTKRenderWindowInteractor"), wxvtk_attributes), vtkRenderWindowInteractor() #else wxVTKRenderWindowInteractor::wxVTKRenderWindowInteractor() : wxWindow(), vtkRenderWindowInteractor() #endif //__WXGTK__ @@ -170,7 +176,7 @@ long style, const wxString &name) #if defined(__WXGTK__) && defined(USE_WXGLCANVAS) - : wxGLCanvas(parent, id, pos, size, style, name), vtkRenderWindowInteractor() + : wxGLCanvas(parent, id, pos, size, style, name, wxvtk_attributes), vtkRenderWindowInteractor() #else : wxWindow(parent, id, pos, size, style, name), vtkRenderWindowInteractor() #endif //__WXGTK__ |
From: Sander N. <svn...@us...> - 2009-03-03 16:20:50
|
Update of /cvsroot/wxvtk/wxVTK/src In directory 23jxhf1.ch3.sourceforge.com:/tmp/cvs-serv19438 Modified Files: wxVTKRenderWindowInteractor.cxx wxVTKRenderWindowInteractor.h Log Message: RenderAllowed is now a local variable Explicit invocation of wxVTKRenderWindowInteractor::Render() is now dependent on Frozen state of wxWindow Index: wxVTKRenderWindowInteractor.h =================================================================== RCS file: /cvsroot/wxvtk/wxVTK/src/wxVTKRenderWindowInteractor.h,v retrieving revision 1.23 retrieving revision 1.24 diff -C2 -d -r1.23 -r1.24 *** wxVTKRenderWindowInteractor.h 8 Dec 2008 11:52:10 -0000 1.23 --- wxVTKRenderWindowInteractor.h 3 Mar 2009 16:20:43 -0000 1.24 *************** *** 161,165 **** wxTimer timer; int ActiveButton; - int RenderAllowed; long GetHandleHack(); int Stereo; --- 161,164 ---- Index: wxVTKRenderWindowInteractor.cxx =================================================================== RCS file: /cvsroot/wxvtk/wxVTK/src/wxVTKRenderWindowInteractor.cxx,v retrieving revision 1.46 retrieving revision 1.47 diff -C2 -d -r1.46 -r1.47 *** wxVTKRenderWindowInteractor.cxx 8 Dec 2008 11:52:10 -0000 1.46 --- wxVTKRenderWindowInteractor.cxx 3 Mar 2009 16:20:42 -0000 1.47 *************** *** 150,154 **** , timer(this, ID_wxVTKRenderWindowInteractor_TIMER) , ActiveButton(wxEVT_NULL) - , RenderAllowed(0) , Stereo(0) , Handle(0) --- 150,153 ---- *************** *** 178,182 **** , timer(this, ID_wxVTKRenderWindowInteractor_TIMER) , ActiveButton(wxEVT_NULL) - , RenderAllowed(0) , Stereo(0) , Handle(0) --- 177,180 ---- *************** *** 764,769 **** void wxVTKRenderWindowInteractor::Render() { ! RenderAllowed = 1; ! if (!RenderWhenDisabled) { //the user doesn't want us to render when the toplevel frame --- 762,771 ---- void wxVTKRenderWindowInteractor::Render() { ! #if wxCHECK_VERSION(2, 8, 0) ! int renderAllowed = !IsFrozen(); ! #else ! int renderAllowed = 1; ! #endif ! if (renderAllowed && !RenderWhenDisabled) { //the user doesn't want us to render when the toplevel frame *************** *** 773,782 **** { //if it exists, check whether it's enabled ! //if it's not enabeld, RenderAllowed will be false ! RenderAllowed = topParent->IsEnabled(); } } ! if (RenderAllowed) { if(Handle && (Handle == GetHandleHack()) ) --- 775,784 ---- { //if it exists, check whether it's enabled ! //if it's not enabeld, renderAllowed will be false ! renderAllowed = topParent->IsEnabled(); } } ! if (renderAllowed) { if(Handle && (Handle == GetHandleHack()) ) |
From: Mathieu M. <mat...@gm...> - 2009-03-03 15:08:53
|
Sander, On Tue, Mar 3, 2009 at 1:36 PM, Sander Niemeijer <nie...@st...> wrote: > Hi Mathieu, > > I would like to propose the following patch for wxVTK. > > The patch contains the following changes: > > - turn RenderAllowed in a local variable > There were no Set/Get methods for this variable anyway and its value was > always reset at each call of Render(). > > - make explicit invocation of wxVTKRenderWindowInteractor::Render() > dependent on Frozen state of wxWindow > This means that if you call Freeze() on a wxVTKRenderWindowInteractor, an > invocation of Render() on the interactor will have no effect until the > window has been 'thawed' again with Thaw(). > > Let me know if you agree with the patch. Patch is ok. Do you know when was IsFrozen added ? If this is recent, please try to put some ifdef blocker to avoid any compilation issue. Thank you, -- Mathieu |
From: Sander N. <nie...@st...> - 2009-03-03 12:56:35
|
Hi Mathieu, I would like to propose the following patch for wxVTK. The patch contains the following changes: - turn RenderAllowed in a local variable There were no Set/Get methods for this variable anyway and its value was always reset at each call of Render(). - make explicit invocation of wxVTKRenderWindowInteractor::Render() dependent on Frozen state of wxWindow This means that if you call Freeze() on a wxVTKRenderWindowInteractor, an invocation of Render() on the interactor will have no effect until the window has been 'thawed' again with Thaw(). Let me know if you agree with the patch. P.S. I already have commit privileges. Best regards, Sander Niemeijer |
From: Pierre F. <pie...@gm...> - 2009-02-26 14:10:22
|
Not that I know. I ran into this bug a few months ago by testing softwares on recent nvidia graphic cards, where I experienced lots of flickering. It turns out that by explicitly setting double buffering to On solved the problem. As I am not an openGL expert, I was pretty OK with this workaround. There are some discussions about this issue that you may find useful: http://www.nabble.com/OpenGL,-wxWidgets-and-Ubuntu-7.10-td16047290.html The trick of activating the double buffering works well on any system I tried (windows, linux - various distributions - and macosx). Sorry for not reporting it to the list but things went a bit crazy around here these days (and months). Hope this helps, Pierre. On Thu, Feb 26, 2009 at 2:05 PM, Mathieu Malaterre < mat...@gm...> wrote: > Is it something that was reported before (possibly the bug tracker) > that I forgot to merge ? > > thx > > On Wed, Feb 18, 2009 at 8:28 PM, Pierre FILLARD > <Pie...@so...> wrote: > > I had a similar issue that I solved by changing the default constructor > of > > the class wxVTKRenderWindowInteractor to: > > wxGLCanvas((wxWindow*)(NULL), wxID_ANY, wxDefaultPosition, wxDefaultSize, > 0, > > wxT("glcanvas"), attributes) > > where attributes is defined as: > > int attributes[5] = { > > WX_GL_DOUBLEBUFFER, > > WX_GL_RGBA, > > WX_GL_DEPTH_SIZE, > > 16, > > 0 > > }; > > which enables double buffering for wxGLCanvas. > > My two cents. > > Pierre. > > On Feb 18, 2009, at 7:08 PM, Joshua Pedrick wrote: > > > > I've successfully compiled wxVTK and have integrated it into my > > application. The trouble I am having is that if I use wxGLCanvas as > > the sub-class I can't get double buffering to work. If I use wxWindow > > double buffering works, but the window only refreshes in response to > > VTK events and not wx events. Any hints? > > > > > ------------------------------------------------------------------------------ > > Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, > CA > > -OSBC tackles the biggest issue in open source: Open Sourcing the > Enterprise > > -Strategies to boost innovation and cut costs with open source > participation > > -Receive a $600 discount off the registration fee with the source code: > SFAD > > http://p.sf.net/sfu/XcvMzF8H > > _______________________________________________ > > Wxvtk-users mailing list > > Wxv...@li... > > https://lists.sourceforge.net/lists/listinfo/wxvtk-users > > > > > > > ------------------------------------------------------------------------------ > > Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, > CA > > -OSBC tackles the biggest issue in open source: Open Sourcing the > Enterprise > > -Strategies to boost innovation and cut costs with open source > participation > > -Receive a $600 discount off the registration fee with the source code: > SFAD > > http://p.sf.net/sfu/XcvMzF8H > > _______________________________________________ > > Wxvtk-users mailing list > > Wxv...@li... > > https://lists.sourceforge.net/lists/listinfo/wxvtk-users > > > > > > > > -- > Mathieu > |
From: Mathieu M. <mat...@gm...> - 2009-02-26 13:05:15
|
Is it something that was reported before (possibly the bug tracker) that I forgot to merge ? thx On Wed, Feb 18, 2009 at 8:28 PM, Pierre FILLARD <Pie...@so...> wrote: > I had a similar issue that I solved by changing the default constructor of > the class wxVTKRenderWindowInteractor to: > wxGLCanvas((wxWindow*)(NULL), wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, > wxT("glcanvas"), attributes) > where attributes is defined as: > int attributes[5] = { > WX_GL_DOUBLEBUFFER, > WX_GL_RGBA, > WX_GL_DEPTH_SIZE, > 16, > 0 > }; > which enables double buffering for wxGLCanvas. > My two cents. > Pierre. > On Feb 18, 2009, at 7:08 PM, Joshua Pedrick wrote: > > I've successfully compiled wxVTK and have integrated it into my > application. The trouble I am having is that if I use wxGLCanvas as > the sub-class I can't get double buffering to work. If I use wxWindow > double buffering works, but the window only refreshes in response to > VTK events and not wx events. Any hints? > > ------------------------------------------------------------------------------ > Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA > -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise > -Strategies to boost innovation and cut costs with open source participation > -Receive a $600 discount off the registration fee with the source code: SFAD > http://p.sf.net/sfu/XcvMzF8H > _______________________________________________ > Wxvtk-users mailing list > Wxv...@li... > https://lists.sourceforge.net/lists/listinfo/wxvtk-users > > > ------------------------------------------------------------------------------ > Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA > -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise > -Strategies to boost innovation and cut costs with open source participation > -Receive a $600 discount off the registration fee with the source code: SFAD > http://p.sf.net/sfu/XcvMzF8H > _______________________________________________ > Wxvtk-users mailing list > Wxv...@li... > https://lists.sourceforge.net/lists/listinfo/wxvtk-users > > -- Mathieu |
From: Pierre F. <Pie...@so...> - 2009-02-18 19:28:57
|
I had a similar issue that I solved by changing the default constructor of the class wxVTKRenderWindowInteractor to: wxGLCanvas((wxWindow*)(NULL), wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, wxT("glcanvas"), attributes) where attributes is defined as: int attributes[5] = { WX_GL_DOUBLEBUFFER, WX_GL_RGBA, WX_GL_DEPTH_SIZE, 16, 0 }; which enables double buffering for wxGLCanvas. My two cents. Pierre. On Feb 18, 2009, at 7:08 PM, Joshua Pedrick wrote: > I've successfully compiled wxVTK and have integrated it into my > application. The trouble I am having is that if I use wxGLCanvas as > the sub-class I can't get double buffering to work. If I use wxWindow > double buffering works, but the window only refreshes in response to > VTK events and not wx events. Any hints? > > ------------------------------------------------------------------------------ > Open Source Business Conference (OSBC), March 24-25, 2009, San > Francisco, CA > -OSBC tackles the biggest issue in open source: Open Sourcing the > Enterprise > -Strategies to boost innovation and cut costs with open source > participation > -Receive a $600 discount off the registration fee with the source > code: SFAD > http://p.sf.net/sfu/XcvMzF8H > _______________________________________________ > Wxvtk-users mailing list > Wxv...@li... > https://lists.sourceforge.net/lists/listinfo/wxvtk-users |
From: Nigel N. <Nig...@au...> - 2009-02-18 19:11:45
|
Joshua Pedrick wrote > I've successfully compiled wxVTK and have integrated it > into my application. The trouble I am having is that if > I use wxGLCanvas as the sub-class I can't get double > buffering to work. If I use wxWindow double buffering > works, but the window only refreshes in response to > VTK events and not wx events. Any hints? Thanks for this report. On which operating system do you see this? Which wx events would you like it to respond to? Nigel -- ------------------------------------------------------------------------------------- Keep up to date with what's happening in Australian sport visit http://www.ausport.gov.au This message is intended for the addressee named and may contain confidential and privileged information. If you are not the intended recipient please note that any form of distribution, copying or use of this communication or the information in it is strictly prohibited and may be unlawful. If you receive this message in error, please delete it and notify the sender. ------------------------------------------------------------------------------------- |
From: Joshua P. <jos...@gm...> - 2009-02-18 18:08:06
|
I've successfully compiled wxVTK and have integrated it into my application. The trouble I am having is that if I use wxGLCanvas as the sub-class I can't get double buffering to work. If I use wxWindow double buffering works, but the window only refreshes in response to VTK events and not wx events. Any hints? |
From: Mathieu M. <mat...@gm...> - 2009-01-03 11:47:52
|
On Sat, Jan 3, 2009 at 2:51 AM, Andrey Sklyar <sky...@gm...> wrote: > Changing > > FIND_PACKAGE(wxWidgets COMPONENTS base core adv ${WXGLCANVASLIBS}) > > to > > FIND_PACKAGE(wxWidgets COMPONENTS core adv ${WXGLCANVASLIBS} base) > > solves the linking issue I was having. I saw somewhere on line that > this has to do with the order in which Find_Packages adds the link > libraries to the linking command, but I can't find the specific post. Hum... ok that patch looks fine. Plrease log that in the bug tracker: http://sourceforge.net/tracker/?group_id=114757&atid=669338 thx -- Mathieu |
From: Mathieu M. <mat...@gm...> - 2009-01-03 11:47:47
|
On Sat, Jan 3, 2009 at 1:42 AM, Andrey Sklyar <sky...@gm...> wrote: > Hi, > > How can I get the version of wxVTK with the modifications made by Sander > Niemeijer? Doing cvs update on the 1.3 release I downloaded from > sourceforge doesn't seem to do the trick. Anything that is package is always a little older than what you can access directly from the revision tool: CVS This is describes quickly at: http://sourceforge.net/cvs/?group_id=114757 On unix you would simply do: cvs -d:pserver:ano...@wx...:/cvsroot/wxvtk login cvs -z3 -d:pserver:ano...@wx...:/cvsroot/wxvtk co wxVTK Good luck, -- Mathieu |
From: Andrey S. <sky...@gm...> - 2009-01-03 01:52:06
|
Changing FIND_PACKAGE(wxWidgets COMPONENTS base core adv ${WXGLCANVASLIBS}) to FIND_PACKAGE(wxWidgets COMPONENTS core adv ${WXGLCANVASLIBS} base) solves the linking issue I was having. I saw somewhere on line that this has to do with the order in which Find_Packages adds the link libraries to the linking command, but I can't find the specific post. - Andrey |
From: Andrey S. <sky...@gm...> - 2009-01-03 00:42:39
|
Hi, How can I get the version of wxVTK with the modifications made by Sander Niemeijer? Doing cvs update on the 1.3 release I downloaded from sourceforge doesn't seem to do the trick. http://sourceforge.net/project/showfiles.php?group_id=114757&package_id=124328&release_id=603693 http://sourceforge.net/mailarchive/forum.php?thread_name=E1L9eeq-000781-9f%4023jxhf1.ch3.sourceforge.com&forum_name=wxvtk-users - Andrey |
From: Mathieu M. <mat...@gm...> - 2008-12-24 13:20:01
|
On Tue, Dec 23, 2008 at 10:53 AM, Andrey Sklyar <sky...@gm...> wrote: > I compiled everything using cygwin, including VTK. I used these > options with cmake: > > BUILD_EXAMPLES ON > BUILD_SHARED_LIBS OFF > BUILD_TESTING ON > CMAKE_BACKWARDS_COMPATIBILITY 2.4 > CMAKE_BUILD_TYPE > CMAKE_INSTALL_PREFIX /usr/local > VTK_DATA_ROOT /usr/src/VTKData > VTK_USE_INFOVIS ON > VTK_USE_PARALLEL OFF > VTK_USE_RENDERING ON > VTK_USE_VIEWS ON > VTK_WRAP_JAVA OFF > VTK_WRAP_PYTHON OFF > VTK_WRAP_TCL OFF cmake option are not the important part. The important part were the compilation flags. export CFLAGS=blafoo export CXXFLAGS=foobar export CC=my_c-compiler export CXX=my_cxx_compiler THEN (and only afterward) can you start `cmake /path/to/src` *in an empty* directory. Do not report *any* message where you did not start from an empty directory ! > Would this still work with a VTK and wxVTK that was linked with cygwin? Yes. As long as you mix dll compiled with same compiler. VTK supports mingw type compiler (~equivalent to cygwin gcc with -mon-cygwin). > I did, and it didn't compile, so I went to the branch. I saw also > that they're using SVN now (http://www.wxwidgets.org/develop/svn.htm) > and that the cvs repository is "obsolete" > (http://wiki.wxwidgets.org/Cvs). I was talking about wxVTK, not wxWidgets. http://sourceforge.net/cvs/?group_id=114757 > I don't seem to have a wxrc executable... does the path that you have > for wxWidgets_wxrc_EXECUTABLE on your machine point to such an > executable? If it's not really needed, is there a way to turn it off > (so that cmake doesn't ask you for it)? If this does not work, replace the cmake entry with either `echo` of `ls` those are unix cmd that are available by default on any cygwin install. You do not need wxrc for compiling wxVTK AFAIK. > The reason I recompiled wxWidgets was because VTK was built with > cygwin libraries, No. At least not the one from vtk.org. > but wxWidgets was built without the. This lead lead > to the symbol mismatch problems you described. I think that ___assert > and ___errno were some of these symbols that weren't getting exported > the same way and thus causing errors. ok. > I will do that. Once I figure out which libraries I'm missing, how > should I edit CMakeList.txt to have cmake add the libraries to the > Makefile for linking? Is there a good online reference for CMake file > writing (I know there's the book for Kitware...)? Check out cmake wiki, google is your friend. Or else I found this: http://eris.liralab.it/yarp/specs/dox/dev/html/using_cmake.html You basically need: add_executable, add_library and target_link_libraries. Otherwise from the command line: $ cmake --help-commands | less if you know cmd contains the string `foobar` but dont remember proper spelling: $ cmake --help-command-list | grep -i foobar $ cmake --help-command my_complex_foobar_doh cmake mailing list is also an excellent ressource. 2cts -- Mathieu |
From: Andrey S. <sky...@gm...> - 2008-12-23 09:53:36
|
Thanks for your quick reply! > > VTK Setup > > ----------------------------------------------------- > > I installed VTK on 10/29/2008. I am able to run the sample programs > > that came with it. > > Hum... I am not an expert, but I do not think you can mix symbol from > a M$ compiled binary and a cygwin compiled binary. I do not think the > linker can find the symbols (C++) in the other one. I would suggest > you try compiling VTK yourself, with the *exact* same set of option > (esp. your -mno-cygwin). I compiled everything using cygwin, including VTK. I used these options with cmake: BUILD_EXAMPLES ON BUILD_SHARED_LIBS OFF BUILD_TESTING ON CMAKE_BACKWARDS_COMPATIBILITY 2.4 CMAKE_BUILD_TYPE CMAKE_INSTALL_PREFIX /usr/local VTK_DATA_ROOT /usr/src/VTKData VTK_USE_INFOVIS ON VTK_USE_PARALLEL OFF VTK_USE_RENDERING ON VTK_USE_VIEWS ON VTK_WRAP_JAVA OFF VTK_WRAP_PYTHON OFF VTK_WRAP_TCL OFF > > > > wxWidgets Setup > > ----------------------------------------------------- > > I acquired and compiled wxWidgets following directions on > > http://wiki.wxwidgets.org/Cygwin > > > > I entered this in the shell (following the "To get an executable > > independent of Cygwin DLL" directions) > > > > $ cvs -d :pserver:an...@cv...:/pack/cvsroots/wxwidgets > > checkout -r WX_2_8_BRANCH wxMSW > > $ cd wxWidgets > > $ export CFLAGS=-mno-cygwin > > $ export CPPFLAGS=-mno-cygwin > > $ export CXXFLAGS=-mno-cygwin > > $ export LDFLAGS="-mno-cygwin -mwindows" > > $ ./configure --with-msw --enable-debug --enable-debug_gdb > > --disable-shared --with-libjpeg=builtin --disable-precomp-headers > > --without-expat > > $ make > > Looks fine to me, and should work with VTK & wxVTK. Would this still work with a VTK and wxVTK that was linked with cygwin? > > > wxVTK Setup > > ----------------------------------------------------- > > I then proceeded to try to get wxVTK to work. > > I downloaded wxVTK from > > > > http://sourceforge.net/project/showfiles.php?group_id=114757&package_id=124328&release_id=603693 > > > > and extracted it to ~/wxVTK > > You may want to have a look at the CVS HEAD sometimes it is a little old... I did, and it didn't compile, so I went to the branch. I saw also that they're using SVN now (http://www.wxwidgets.org/develop/svn.htm) and that the cvs repository is "obsolete" (http://wiki.wxwidgets.org/Cvs). > > > I then copied all the files needed for compiling the samples to a new > > directory and did an out of source build using cmake > > > > I did not quite follow what you did. Here is what I would be doing (not tested): > We both ended up doing an out of source build. Ok, that's good, got something right! > > > > wxWidgets_CONFIG_EXECUTABLE = /usr/local/bin/wx-config > > yup. > > > which is a pointer to usr/ocal/lib/wx/config/msw-ansi-debug-static-2.8 > > - what is this and why is it needed for using wxWidgets? > > On UNIX this is the way people have been distributing executable and > little helper that would tell developers how to link executable. Just > enter `wx-config` in your shell, this is pretty much self-explained. Thanks, that explained it. > > Getting a value for wxWidgets_wxrc_EXECUTABLE was harder. Using > > This should refer to the wxrc executable. I am not sure if this is > required or not. I would think this is located in /usr/local/bin > (funny cmake did not find it...). I don't seem to have a wxrc executable... does the path that you have for wxWidgets_wxrc_EXECUTABLE on your machine point to such an executable? If it's not really needed, is there a way to turn it off (so that cmake doesn't ask you for it)? > > > I generated the make file and ran make. It wxImagePlaneWidgets.cxx > > and then wxVTKRenderWindowInteractor.cxx, then tried to link them, and > > spewed a lot of errors concerning ___assert and ___errno. > > I might be missing a #include <assert.h> You have it there. It was just my linker not liking something. > > Unfortunately I didn't save the errors and have recompiled wxWindows > > since then and don't want to spend a third hour recompiling that > > library. Upon examining wxVTKRenderWindowInteractor.cxx I saw that it > > used <assert.h> and the assert macro. It seemed like the linker > > wasn't linking libc because I compiled wxWidgets with -mno-cygwin, > > thus leading to ___assert and ___errno not being found when linking. > > > > I recompiled wxWidgets without the -mno-cygwin flags. I used these > > No ! You cannot link a -mno-cygwin and a regular cygwin lib. They do > not export symbols the same way (AFAIK). The reason I recompiled wxWidgets was because VTK was built with cygwin libraries, but wxWidgets was built without the. This lead lead to the symbol mismatch problems you described. I think that ___assert and ___errno were some of these symbols that weren't getting exported the same way and thus causing errors. > > The ___assert and ___errno errors promptly disappeared, but the linker > > is still complaining. I tried building the samples again using the > > same cmake configuration as before and I am currently received the > > warning > > > > /usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../i686-pc-cygwin/bin/ld: > > warning: auto-importing has been activated without > > --enable-auto-import specified on the command line. > > This should work unless it involves constant data structures > > referencing symbols from auto > > Looks like a warning... > > > Seems like it didn't work... The full error message is below: > > > > $ make > > Scanning dependencies of target wxImagePlaneWidget > > [ 10%] Building CXX object > > CMakeFiles/wxImagePlaneWidget.dir/Sample/wxImagePlaneWidget.cxx.o > > [ 20%] Building CXX object > > CMakeFiles/wxImagePlaneWidget.dir/src/wxVTKRenderWindowInteractor.cxx.o > > Linking CXX executable bin/wxImagePlaneWidget.exe > > /usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../i686-pc-cygwin/bin/ld: > > warning: auto-importing has been activated without > > --enable-auto-import specified on the command line. > > This should work unless it involves constant data structures > > referencing symbols from auto > > -imported DLLs./usr/local/lib/libwx_mswd_core-2.8.a(corelib_window.o):/usr/src/wxWidgets/. > > /src/msw/window.cpp:1340: undefined reference to > > `wxSystemOptions::GetOptionInt(wxString const&)' > > /usr/local/lib/libwx_mswd_core-2.8.a(corelib_window.o):/usr/src/wxWidgets/./src/msw/window.cpp:3956: > > undefined reference to `_wxEVT_POWER_SUSPENDING' > > Your linker is lost IMHO. You may want to inspect the output of: > > $ make VERBOSE=1 > > To check that library are properly passed to the linker. I will do that. Once I figure out which libraries I'm missing, how should I edit CMakeList.txt to have cmake add the libraries to the Makefile for linking? Is there a good online reference for CMake file writing (I know there's the book for Kitware...)? > Good luck. > -- > Mathieu Thanks again for your help. - Andrey |
From: Mathieu M. <mat...@gm...> - 2008-12-23 09:08:58
|
On Tue, Dec 23, 2008 at 10:06 AM, Mathieu Malaterre <mat...@gm...> wrote: > Andrey, > > Sorry to hear about your misfortune trying to use wxVTK. One last things. You can only use cmake cygwin package to generate cygwin Makefile. While you can only use cmake/cmakesetup (from cmake.org) for all other Win32 type of compilation. One is using UNIX path (for cygwin), while the other is generating DOS path (to please cl and al.) -- Mathieu |
From: Mathieu M. <mat...@gm...> - 2008-12-23 09:06:08
|
Andrey, Sorry to hear about your misfortune trying to use wxVTK. On Tue, Dec 23, 2008 at 9:22 AM, Andrey Sklyar <sky...@gm...> wrote: > Hi all, > > I am having some trouble linking the samples provided with wxVTK. > Could somebody please point me to a reference that explains: > > - how one should install wxWidgets in order for it to work with wxVTK > - how one should install VTK to have it work with wxVTK > - how to compile and link the sample programs provided with wxVTK using cmake > - what wxWidgets_CONFIG_EXECUTABLE and wxWidgets_wxrc_EXECUTABLE are > - how to have cmake find those directories automatically I am mostly a UNIX guy, so this might not be the best way. I used a page explaining how to build wxWidgets using the Free Compiler Tools (released in 2003, this is a equivalent to MS VS7.1 compiler). I then set `cl` in the path (+proper INCLUDE and LIBS), I start cmakesetup, select 'NMake Makefiles', then from the cygwin shell starts 'nmake': repeat for (1) VTK and (2) wxVTK. I *think* if you do it in this order cmakesetup will be able to figure out where you build VTK and will fill in VTK_DIR when configuring wxVTK. Technically this should work with cygwin...but this is true (1) I never tried, (2) I hardly ever play with the -mno-cygwin option. > Details: > ----------------------------------------------------- > I'm running cygwin 1.5.25 on Windows XP. > I'm using > - g++ version 3.4.4 (sygming special, gdc 0.12, using dmd 0.125) > - cmake version 2.6-patch 2 > - VTK 5.2.0 > - wxWidgets version 2.8 Perfect. > > VTK Setup > ----------------------------------------------------- > I installed VTK on 10/29/2008. I am able to run the sample programs > that came with it. Hum... I am not an expert, but I do not think you can mix symbol from a M$ compiled binary and a cygwin compiled binary. I do not think the linker can find the symbols (C++) in the other one. I would suggest you try compiling VTK yourself, with the *exact* same set of option (esp. your -mno-cygwin). > > wxWidgets Setup > ----------------------------------------------------- > I acquired and compiled wxWidgets following directions on > http://wiki.wxwidgets.org/Cygwin > > I entered this in the shell (following the "To get an executable > independent of Cygwin DLL" directions) > > $ cvs -d :pserver:an...@cv...:/pack/cvsroots/wxwidgets > checkout -r WX_2_8_BRANCH wxMSW > $ cd wxWidgets > $ export CFLAGS=-mno-cygwin > $ export CPPFLAGS=-mno-cygwin > $ export CXXFLAGS=-mno-cygwin > $ export LDFLAGS="-mno-cygwin -mwindows" > $ ./configure --with-msw --enable-debug --enable-debug_gdb > --disable-shared --with-libjpeg=builtin --disable-precomp-headers > --without-expat > $ make Looks fine to me, and should work with VTK & wxVTK. > wxVTK Setup > ----------------------------------------------------- > I then proceeded to try to get wxVTK to work. > I downloaded wxVTK from > > http://sourceforge.net/project/showfiles.php?group_id=114757&package_id=124328&release_id=603693 > > and extracted it to ~/wxVTK You may want to have a look at the CVS HEAD sometimes it is a little old... > I then copied all the files needed for compiling the samples to a new > directory and did an out of source build using cmake > > $ mkdir ~/test > $ cd ~/test > $ mkdir src > $ mkdir bin > $ cd ~/wxVTK > $ cp -r src/ Sample/ CMakeLists.txt ~/test/src > $ cd ~/test/bin > $ ccmake ../src I did not quite follow what you did. Here is what I would be doing (not tested): $ cd ~/wxVTK $ mkdir ~/wxVTK-bin $ cd ~/wxVTK-bin $ cmake ~/wxVTK $ make > wxWidgets_CONFIG_EXECUTABLE = /usr/local/bin/wx-config yup. > which is a pointer to usr/ocal/lib/wx/config/msw-ansi-debug-static-2.8 > - what is this and why is it needed for using wxWidgets? On UNIX this is the way people have been distributing executable and little helper that would tell developers how to link executable. Just enter `wx-config` in your shell, this is pretty much self-explained. > Getting a value for wxWidgets_wxrc_EXECUTABLE was harder. Using This should refer to the wxrc executable. I am not sure if this is required or not. I would think this is located in /usr/local/bin (funny cmake did not find it...). > I generated the make file and ran make. It wxImagePlaneWidgets.cxx > and then wxVTKRenderWindowInteractor.cxx, then tried to link them, and > spewed a lot of errors concerning ___assert and ___errno. I might be missing a #include <assert.h> > Unfortunately I didn't save the errors and have recompiled wxWindows > since then and don't want to spend a third hour recompiling that > library. Upon examining wxVTKRenderWindowInteractor.cxx I saw that it > used <assert.h> and the assert macro. It seemed like the linker > wasn't linking libc because I compiled wxWidgets with -mno-cygwin, > thus leading to ___assert and ___errno not being found when linking. > > I recompiled wxWidgets without the -mno-cygwin flags. I used these No ! You cannot link a -mno-cygwin and a regular cygwin lib. They do not export symbols the same way (AFAIK). > The ___assert and ___errno errors promptly disappeared, but the linker > is still complaining. I tried building the samples again using the > same cmake configuration as before and I am currently received the > warning > > /usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../i686-pc-cygwin/bin/ld: > warning: auto-importing has been activated without > --enable-auto-import specified on the command line. > This should work unless it involves constant data structures > referencing symbols from auto Looks like a warning... > Seems like it didn't work... The full error message is below: > > $ make > Scanning dependencies of target wxImagePlaneWidget > [ 10%] Building CXX object > CMakeFiles/wxImagePlaneWidget.dir/Sample/wxImagePlaneWidget.cxx.o > [ 20%] Building CXX object > CMakeFiles/wxImagePlaneWidget.dir/src/wxVTKRenderWindowInteractor.cxx.o > Linking CXX executable bin/wxImagePlaneWidget.exe > /usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../i686-pc-cygwin/bin/ld: > warning: auto-importing has been activated without > --enable-auto-import specified on the command line. > This should work unless it involves constant data structures > referencing symbols from auto > -imported DLLs./usr/local/lib/libwx_mswd_core-2.8.a(corelib_window.o):/usr/src/wxWidgets/. > /src/msw/window.cpp:1340: undefined reference to > `wxSystemOptions::GetOptionInt(wxString const&)' > /usr/local/lib/libwx_mswd_core-2.8.a(corelib_window.o):/usr/src/wxWidgets/./src/msw/window.cpp:3956: > undefined reference to `_wxEVT_POWER_SUSPENDING' Your linker is lost IMHO. You may want to inspect the output of: $ make VERBOSE=1 To check that library are properly passed to the linker. Good luck. -- Mathieu |
From: Andrey S. <sky...@gm...> - 2008-12-23 08:22:34
|
Hi all, I am having some trouble linking the samples provided with wxVTK. Could somebody please point me to a reference that explains: - how one should install wxWidgets in order for it to work with wxVTK - how one should install VTK to have it work with wxVTK - how to compile and link the sample programs provided with wxVTK using cmake - what wxWidgets_CONFIG_EXECUTABLE and wxWidgets_wxrc_EXECUTABLE are - how to have cmake find those directories automatically For anyone who wants to know more about what I did specifically to come up with these questions, a detailed description is below. - Andrey Details: ----------------------------------------------------- I'm running cygwin 1.5.25 on Windows XP. I'm using - g++ version 3.4.4 (sygming special, gdc 0.12, using dmd 0.125) - cmake version 2.6-patch 2 - VTK 5.2.0 - wxWidgets version 2.8 VTK Setup ----------------------------------------------------- I installed VTK on 10/29/2008. I am able to run the sample programs that came with it. wxWidgets Setup ----------------------------------------------------- I acquired and compiled wxWidgets following directions on http://wiki.wxwidgets.org/Cygwin I entered this in the shell (following the "To get an executable independent of Cygwin DLL" directions) $ cvs -d :pserver:an...@cv...:/pack/cvsroots/wxwidgets checkout -r WX_2_8_BRANCH wxMSW $ cd wxWidgets $ export CFLAGS=-mno-cygwin $ export CPPFLAGS=-mno-cygwin $ export CXXFLAGS=-mno-cygwin $ export LDFLAGS="-mno-cygwin -mwindows" $ ./configure --with-msw --enable-debug --enable-debug_gdb --disable-shared --with-libjpeg=builtin --disable-precomp-headers --without-expat $ make I downloaded the provided hworld.cpp and successfully generated the GUI. wxVTK Setup ----------------------------------------------------- I then proceeded to try to get wxVTK to work. I downloaded wxVTK from http://sourceforge.net/project/showfiles.php?group_id=114757&package_id=124328&release_id=603693 and extracted it to ~/wxVTK I then copied all the files needed for compiling the samples to a new directory and did an out of source build using cmake $ mkdir ~/test $ cd ~/test $ mkdir src $ mkdir bin $ cd ~/wxVTK $ cp -r src/ Sample/ CMakeLists.txt ~/test/src $ cd ~/test/bin $ ccmake ../src This lead to the first stopping point. There were two variables: wxWidgets_CONFIG_EXECUTABLE wxWidgets_wxrc_EXECUTABLE That are not described or explained anywhere (google or otherwise). I ended up looking through the FindwxWidgets.cmake module in both ~/wxVTK/Modules /usr/share/cmake-2.6.2/Modules The one that came with cmake had a little bit of an explanation as to what the parameters were. I ended up running make install on both vtk and wxWidgets so that they would be in directories the script would look in (on the path). In the end, I got that wxWidgets_CONFIG_EXECUTABLE = /usr/local/bin/wx-config which is a pointer to usr/ocal/lib/wx/config/msw-ansi-debug-static-2.8 - what is this and why is it needed for using wxWidgets? Getting a value for wxWidgets_wxrc_EXECUTABLE was harder. Using FindwxWidgets.cmake that came with wxVTK, it just kept telling me "Cannot find wxWidgets libraries and/or header files." Using the FindwxWidgets.cmake that came with cmake accepted /usr/local/lib/wx, /usr/local/include/wx-2.8/wx, /usr/local/include/wx-2.8, it doesn't seem to care what you put there. I expect that this is where my problems are coming from. In the end I kept wxWidgets_wxrc_EXECUTABLE = /usr/local/include/wx-2.8 I generated the make file and ran make. It wxImagePlaneWidgets.cxx and then wxVTKRenderWindowInteractor.cxx, then tried to link them, and spewed a lot of errors concerning ___assert and ___errno. Unfortunately I didn't save the errors and have recompiled wxWindows since then and don't want to spend a third hour recompiling that library. Upon examining wxVTKRenderWindowInteractor.cxx I saw that it used <assert.h> and the assert macro. It seemed like the linker wasn't linking libc because I compiled wxWidgets with -mno-cygwin, thus leading to ___assert and ___errno not being found when linking. I recompiled wxWidgets without the -mno-cygwin flags. I used these commands in the wxWidgets directory: $ ./configure --with-msw --enable-debug --enable-debug_gdb --disable-shared --with-libjpeg=builtin $ make The ___assert and ___errno errors promptly disappeared, but the linker is still complaining. I tried building the samples again using the same cmake configuration as before and I am currently received the warning /usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../i686-pc-cygwin/bin/ld: warning: auto-importing has been activated without --enable-auto-import specified on the command line. This should work unless it involves constant data structures referencing symbols from auto Seems like it didn't work... The full error message is below: $ make Scanning dependencies of target wxImagePlaneWidget [ 10%] Building CXX object CMakeFiles/wxImagePlaneWidget.dir/Sample/wxImagePlaneWidget.cxx.o [ 20%] Building CXX object CMakeFiles/wxImagePlaneWidget.dir/src/wxVTKRenderWindowInteractor.cxx.o Linking CXX executable bin/wxImagePlaneWidget.exe /usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../i686-pc-cygwin/bin/ld: warning: auto-importing has been activated without --enable-auto-import specified on the command line. This should work unless it involves constant data structures referencing symbols from auto -imported DLLs./usr/local/lib/libwx_mswd_core-2.8.a(corelib_window.o):/usr/src/wxWidgets/. /src/msw/window.cpp:1340: undefined reference to `wxSystemOptions::GetOptionInt(wxString const&)' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_window.o):/usr/src/wxWidgets/./src/msw/window.cpp:3956: undefined reference to `_wxEVT_POWER_SUSPENDING' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_window.o):/usr/src/wxWidgets/./src/msw/window.cpp:3960: undefined reference to `_wxEVT_POWER_SUSPEND_CANCEL' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_window.o):/usr/src/wxWidgets/./src/msw/window.cpp:3964: undefined reference to `_wxEVT_POWER_SUSPENDED' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_window.o):/usr/src/wxWidgets/./src/msw/window.cpp:3971: undefined reference to `_wxEVT_POWER_RESUME' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_wincmn.o): In function `wxWindowBase':/usr/src/wxWidgets/./src/common/wincmn.cpp:212: undefined reference to `wxSystemOptions::HasOption(wxString const&)' /usr/src/wxWidgets/./src/common/wincmn.cpp:214: undefined reference to `wxSystemOptions::GetOptionInt(wxString const&)' /usr/src/wxWidgets/./src/common/wincmn.cpp:212: undefined reference to `wxSystemOptions::HasOption(wxString const&)' /usr/src/wxWidgets/./src/common/wincmn.cpp:214: undefined reference to `wxSystemOptions::GetOptionInt(wxString const&)' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_colourcmn.o): In function `_ZlsR9wxVariantRK8wxColour': /usr/src/wxWidgets/./src/common/colourcmn.cpp:141: undefined reference to `wxVariant::SetData(wxVariantData*)' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_colourcmn.o): In function `__static_initialization_and_destruction_0': /usr/src/wxWidgets/./src/common/colourcmn.cpp:29: undefined reference to `wxVariantData::ms_classInfo' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_colourcmn.o): In function `~wxVariantData': /usr/src/wxWidgets/./include/wx/variant.h:99: undefined reference to `vtable for wxVariantData' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_colourcmn.o): In function `wxVariantData': /usr/src/wxWidgets/./include/wx/variant.h:68: undefined reference to `vtable for wxVariantData' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_font.o):/usr/src/wxWidgets/./src/msw/font.cpp:431: undefined reference to `wxSystemOptions::GetOptionInt(wxString const&)' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_dc.o):/usr/src/wxWidgets/./src/msw/dc.cpp:1213: undefined reference to `wxSystemOptions::GetOptionInt(wxString const&)' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_dc.o):/usr/src/wxWidgets/./src/msw/dc.cpp:2138: undefined reference to `wxSystemOptions::GetOptionInt(wxString const&)' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_tbar95.o):/usr/src/wxWidgets/./src/msw/tbar95.cpp:570: undefined reference to `wxSystemOptions::HasOption(wxString const&)' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_tbar95.o):/usr/src/wxWidgets/./src/msw/tbar95.cpp:570: undefined reference to `wxSystemOptions::GetOptionInt(wxString const&)' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_statbox.o):/usr/src/wxWidgets/./src/msw/statbox.cpp:211: undefined reference to `wxSystemOptions::GetOptionInt(wxString const&)' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_statbox.o):/usr/src/wxWidgets/./include/wx/sysopt.h:40: undefined reference to `wxSystemOptions::HasOption(wxString const&)' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_statbox.o):/usr/src/wxWidgets/./include/wx/sysopt.h:40: undefined reference to `wxSystemOptions::GetOptionInt(wxString const&)' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_sizer.o): In function `~wxSizer':/usr/src/wxWidgets/./src/common/sizer.cpp:509: undefined reference to `wxClientDataContainer::~wxClientDataContainer()' /usr/src/wxWidgets/./src/common/sizer.cpp:509: undefined reference to `wxClientDataContainer::~wxClientDataContainer()' /usr/src/wxWidgets/./src/common/sizer.cpp:509: undefined reference to `wxClientDataContainer::~wxClientDataContainer()' /usr/src/wxWidgets/./src/common/sizer.cpp:509: undefined reference to `wxClientDataContainer::~wxClientDataContainer()' /usr/src/wxWidgets/./src/common/sizer.cpp:509: undefined reference to `wxClientDataContainer::~wxClientDataContainer()' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_sizer.o):/usr/src/wxWidgets/./src/common/sizer.cpp:509: more undefined references to `wxClientDataContainer::~wxClientDataContainer()' follow /usr/local/lib/libwx_mswd_core-2.8.a(corelib_sizer.o): In function `wxSizer': /usr/src/wxWidgets/./include/wx/sizer.h:410: undefined reference to `wxClientDataContainer::wxClientDataContainer()' /usr/src/wxWidgets/./include/wx/sizer.h:410: undefined reference to `wxClientDataContainer::~wxClientDataContainer()' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_sizer.o):sizer.cpp:(.rdata$_ZTV16wxStaticBoxSizer[vtable for wxStaticBoxSizer]+0x7c): undefined reference to `wxClientDataContainer::DoSetClientObject(wxClientData*)' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_sizer.o):sizer.cpp:(.rdata$_ZTV16wxStaticBoxSizer[vtable for wxStaticBoxSizer]+0x80): undefined reference to `wxClientDataContainer::DoGetClientObject() const' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_sizer.o):sizer.cpp:(.rdata$_ZTV16wxStaticBoxSizer[vtable for wxStaticBoxSizer]+0x84): undefined reference to `wxClientDataContainer::DoSetClientData(void*)' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_sizer.o):sizer.cpp:(.rdata$_ZTV16wxStaticBoxSizer[vtable for wxStaticBoxSizer]+0x88): undefined reference to `wxClientDataContainer::DoGetClientData() const' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_sizer.o):sizer.cpp:(.rdata$_ZTV10wxBoxSizer[vtable for wxBoxSizer]+0x7c): undefined reference to `wxClientDataContainer::DoSetClientObject(wxClientData*)' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_sizer.o):sizer.cpp:(.rdata$_ZTV10wxBoxSizer[vtable for wxBoxSizer]+0x80): undefined reference to `wxClientDataContainer::DoGetClientObject() const' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_sizer.o):sizer.cpp:(.rdata$_ZTV10wxBoxSizer[vtable for wxBoxSizer]+0x84): undefined reference to `wxClientDataContainer::DoSetClientData(void*)' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_sizer.o):sizer.cpp:(.rdata$_ZTV10wxBoxSizer[vtable for wxBoxSizer]+0x88): undefined reference to `wxClientDataContainer::DoGetClientData() const' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_sizer.o):sizer.cpp:(.rdata$_ZTV15wxFlexGridSizer[vtable for wxFlexGridSizer]+0x7c): undefined reference to `wxClientDataContainer::DoSetClientObject(wxClientData*)' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_sizer.o):sizer.cpp:(.rdata$_ZTV15wxFlexGridSizer[vtable for wxFlexGridSizer]+0x80): undefined reference to `wxClientDataContainer::DoGetClientObject() const' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_sizer.o):sizer.cpp:(.rdata$_ZTV15wxFlexGridSizer[vtable for wxFlexGridSizer]+0x84): undefined reference to `wxClientDataContainer::DoSetClientData(void*)' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_sizer.o):sizer.cpp:(.rdata$_ZTV15wxFlexGridSizer[vtable for wxFlexGridSizer]+0x88): undefined reference to `wxClientDataContainer::DoGetClientData() const' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_sizer.o):sizer.cpp:(.rdata$_ZTV11wxGridSizer[vtable for wxGridSizer]+0x7c): undefined reference to `wxClientDataContainer::DoSetClientObject(wxClientData*)' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_sizer.o):sizer.cpp:(.rdata$_ZTV11wxGridSizer[vtable for wxGridSizer]+0x80): undefined reference to `wxClientDataContainer::DoGetClientObject() const' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_sizer.o):sizer.cpp:(.rdata$_ZTV11wxGridSizer[vtable for wxGridSizer]+0x84): undefined reference to `wxClientDataContainer::DoSetClientData(void*)' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_sizer.o):sizer.cpp:(.rdata$_ZTV11wxGridSizer[vtable for wxGridSizer]+0x88): undefined reference to `wxClientDataContainer::DoGetClientData() const' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_sizer.o):sizer.cpp:(.rdata$_ZTV7wxSizer[vtable for wxSizer]+0x7c): undefined reference to `wxClientDataContainer::DoSetClientObject(wxClientData*)' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_sizer.o):sizer.cpp:(.rdata$_ZTV7wxSizer[vtable for wxSizer]+0x80): undefined reference to `wxClientDataContainer::DoGetClientObject() const' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_sizer.o):sizer.cpp:(.rdata$_ZTV7wxSizer[vtable for wxSizer]+0x84): undefined reference to `wxClientDataContainer::DoSetClientData(void*)' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_sizer.o):sizer.cpp:(.rdata$_ZTV7wxSizer[vtable for wxSizer]+0x88): undefined reference to `wxClientDataContainer::DoGetClientData() const' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_sizer.o):sizer.cpp:(.rdata$_ZTV22wxStdDialogButtonSizer[vtable for wxStdDialogButtonSizer]+0x7c): undefined reference to `wxClientDataContainer::DoSetClientObject(wxClientData*)' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_sizer.o):sizer.cpp:(.rdata$_ZTV22wxStdDialogButtonSizer[vtable for wxStdDialogButtonSizer]+0x80): undefined reference to `wxClientDataContainer::DoGetClientObject() const' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_sizer.o):sizer.cpp:(.rdata$_ZTV22wxStdDialogButtonSizer[vtable for wxStdDialogButtonSizer]+0x84): undefined reference to `wxClientDataContainer::DoSetClientData(void*)' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_sizer.o):sizer.cpp:(.rdata$_ZTV22wxStdDialogButtonSizer[vtable for wxStdDialogButtonSizer]+0x88): undefined reference to `wxClientDataContainer::DoGetClientData() const' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_bmpbase.o): In function `_ZlsR9wxVariantRK8wxBitmap': /usr/src/wxWidgets/./src/common/bmpbase.cpp:141: undefined reference to `wxVariant::SetData(wxVariantData*)' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_bmpbase.o): In function `_ZlsR9wxVariantRK6wxIcon': /usr/src/wxWidgets/./src/common/bmpbase.cpp:32: undefined reference to `wxVariant::SetData(wxVariantData*)' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_bmpbase.o): In function `__static_initialization_and_destruction_0': /usr/src/wxWidgets/./src/common/bmpbase.cpp:31: undefined reference to `wxVariantData::ms_classInfo' /usr/src/wxWidgets/./src/common/bmpbase.cpp:32: undefined reference to `wxVariantData::ms_classInfo' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_image.o): In function `_ZlsR9wxVariantRK7wxImage': /usr/src/wxWidgets/./src/common/image.cpp:141: undefined reference to `wxVariant::SetData(wxVariantData*)' /usr/local/lib/libwx_mswd_core-2.8.a(corelib_image.o): In function `__static_initialization_and_destruction_0': /usr/src/wxWidgets/./src/common/image.cpp:52: undefined reference to `wxVariantData::ms_classInfo' Info: resolving __timezone by linking to __imp___timezone (auto-import) collect2: ld returned 1 exit status make[2]: *** [bin/wxImagePlaneWidget.exe] Error 1 make[1]: *** [CMakeFiles/wxImagePlaneWidget.dir/all] Error 2 make: *** [all] Error 2 |
From: Sander N. <svn...@us...> - 2008-12-08 12:16:47
|
Update of /cvsroot/wxvtk/wxVTK/src In directory 23jxhf1.ch3.sourceforge.com:/tmp/cvs-serv27143 Modified Files: wxVTKRenderWindowInteractor.cxx wxVTKRenderWindowInteractor.h Log Message: COMP: Recent changes to timers worked for VTK 5.2 but broke compilation for VTK 5.0. This is now fixed. Index: wxVTKRenderWindowInteractor.h =================================================================== RCS file: /cvsroot/wxvtk/wxVTK/src/wxVTKRenderWindowInteractor.h,v retrieving revision 1.22 retrieving revision 1.23 diff -C2 -d -r1.22 -r1.23 *** wxVTKRenderWindowInteractor.h 3 Dec 2008 10:31:46 -0000 1.22 --- wxVTKRenderWindowInteractor.h 8 Dec 2008 11:52:10 -0000 1.23 *************** *** 152,159 **** vtkBooleanMacro(UseCaptureMouse,int); protected: virtual int InternalCreateTimer(int timerId, int timerType, unsigned long duration); virtual int InternalDestroyTimer(int platformTimerId); ! protected: wxTimer timer; --- 152,161 ---- vtkBooleanMacro(UseCaptureMouse,int); + #if VTK_MAJOR_VERSION > 5 || (VTK_MAJOR_VERSION == 5 && VTK_MINOR_VERSION >= 2) protected: virtual int InternalCreateTimer(int timerId, int timerType, unsigned long duration); virtual int InternalDestroyTimer(int platformTimerId); ! #endif ! protected: wxTimer timer; Index: wxVTKRenderWindowInteractor.cxx =================================================================== RCS file: /cvsroot/wxvtk/wxVTK/src/wxVTKRenderWindowInteractor.cxx,v retrieving revision 1.45 retrieving revision 1.46 diff -C2 -d -r1.45 -r1.46 *** wxVTKRenderWindowInteractor.cxx 3 Dec 2008 10:31:46 -0000 1.45 --- wxVTKRenderWindowInteractor.cxx 8 Dec 2008 11:52:10 -0000 1.46 *************** *** 291,294 **** --- 291,295 ---- } + #if VTK_MAJOR_VERSION > 5 || (VTK_MAJOR_VERSION == 5 && VTK_MINOR_VERSION >= 2) //------------------------------------------------------------------ int wxVTKRenderWindowInteractor::InternalCreateTimer(int timerId, int timerType, *************** *** 306,309 **** --- 307,311 ---- return 1; } + #endif //--------------------------------------------------------------------------- int wxVTKRenderWindowInteractor::DestroyTimer() *************** *** 320,326 **** --- 322,333 ---- #if VTK_MAJOR_VERSION > 4 || (VTK_MAJOR_VERSION == 4 && VTK_MINOR_VERSION > 0) // new style + #if VTK_MAJOR_VERSION > 5 || (VTK_MAJOR_VERSION == 5 && VTK_MINOR_VERSION >= 2) + // pass the right timer id int timerId = this->GetCurrentTimerId(); this->InvokeEvent(vtkCommand::TimerEvent, &timerId); #else + this->InvokeEvent(vtkCommand::TimerEvent, NULL); + #endif + #else // old style InteractorStyle->OnTimer(); |
From: Sander N. <svn...@us...> - 2008-12-03 10:31:52
|
Update of /cvsroot/wxvtk/wxVTK/src In directory 23jxhf1.ch3.sourceforge.com:/tmp/cvs-serv17726/src Modified Files: wxVTKRenderWindowInteractor.cxx wxVTKRenderWindowInteractor.h Log Message: ENH: Added implementations of InternalCreateTimer and InternalDestroyTimer so timers will again work with VTK 5.2 ENH: To fix display issues with GTK2 (first render fails and incorrect z-ordering), wxVTKRenderWindowInteractor now also derives from wxGLCanvas for wxGTK 2.8. To solve the crashes that result from this change we now explicitly set the DisplayId on the RenderWindow. This will prevent VTK from destroying the X Display (which was the cause of the crashes). As a side result the wxVTKNotebook sample no longer has to call SetDisplayId anymore. Index: wxVTKRenderWindowInteractor.h =================================================================== RCS file: /cvsroot/wxvtk/wxVTK/src/wxVTKRenderWindowInteractor.h,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -d -r1.21 -r1.22 *** wxVTKRenderWindowInteractor.h 10 Aug 2008 22:58:28 -0000 1.21 --- wxVTKRenderWindowInteractor.h 3 Dec 2008 10:31:46 -0000 1.22 *************** *** 56,67 **** #include "vtkRenderWindow.h" - // Apparently since wxGTK 2.8.0 one can finally use wxWindow (just as in any - // other port): - // MM: tested on 2008/04/08: experienced some heavy flickering with wx-widget 2.6.0 - // using a wxWindow instead of wxGLCanvas fixed the symptoms - //#if (!wxCHECK_VERSION(2, 6, 0)) - #if (!wxCHECK_VERSION(2, 8, 0)) #define USE_WXGLCANVAS - #endif #if defined(__WXGTK__) && defined(USE_WXGLCANVAS) --- 56,60 ---- *************** *** 160,163 **** --- 153,160 ---- protected: + virtual int InternalCreateTimer(int timerId, int timerType, unsigned long duration); + virtual int InternalDestroyTimer(int platformTimerId); + + protected: wxTimer timer; int ActiveButton; Index: wxVTKRenderWindowInteractor.cxx =================================================================== RCS file: /cvsroot/wxvtk/wxVTK/src/wxVTKRenderWindowInteractor.cxx,v retrieving revision 1.44 retrieving revision 1.45 diff -C2 -d -r1.44 -r1.45 *** wxVTKRenderWindowInteractor.cxx 20 Oct 2008 11:24:06 -0000 1.44 --- wxVTKRenderWindowInteractor.cxx 3 Dec 2008 10:31:46 -0000 1.45 *************** *** 286,294 **** // it's a one shot timer if (!timer.Start(10, TRUE)) ! assert(false); return 1; } //--------------------------------------------------------------------------- int wxVTKRenderWindowInteractor::DestroyTimer() --- 286,309 ---- // it's a one shot timer if (!timer.Start(10, TRUE)) ! return 0; return 1; } + //------------------------------------------------------------------ + int wxVTKRenderWindowInteractor::InternalCreateTimer(int timerId, int timerType, + unsigned long duration) + { + if (!timer.Start(duration, timerType == OneShotTimer)) + return 0; + + return ID_wxVTKRenderWindowInteractor_TIMER; + } + //------------------------------------------------------------------ + int wxVTKRenderWindowInteractor::InternalDestroyTimer(int platformTimerId) + { + timer.Stop(); + return 1; + } //--------------------------------------------------------------------------- int wxVTKRenderWindowInteractor::DestroyTimer() *************** *** 304,312 **** #if VTK_MAJOR_VERSION > 4 || (VTK_MAJOR_VERSION == 4 && VTK_MINOR_VERSION > 0) ! // new style ! InvokeEvent(vtkCommand::TimerEvent, NULL); #else ! // old style ! InteractorStyle->OnTimer(); #endif } --- 319,328 ---- #if VTK_MAJOR_VERSION > 4 || (VTK_MAJOR_VERSION == 4 && VTK_MINOR_VERSION > 0) ! // new style ! int timerId = this->GetCurrentTimerId(); ! this->InvokeEvent(vtkCommand::TimerEvent, &timerId); #else ! // old style ! InteractorStyle->OnTimer(); #endif } *************** *** 375,378 **** --- 391,400 ---- RenderWindow->SetParentId(reinterpret_cast<void *>(this->GetParent()->GetHWND())); #endif //__WXMSW__ + + // This is another hack to prevent the VTK Render Window from closing the display. + // If VTK closes the display, ~wxContext chashes while trying to destroy its + // glContext (because the display is closed). The Get -> Set makes this VTK + // object think someone else is responsible for the display. + this->RenderWindow->SetDisplayId(this->RenderWindow->GetGenericDisplayId()); } // get vtk to render to the wxWindows |
From: Sander N. <svn...@us...> - 2008-12-03 10:31:51
|
Update of /cvsroot/wxvtk/wxVTK/Sample In directory 23jxhf1.ch3.sourceforge.com:/tmp/cvs-serv17726/Sample Modified Files: wxVTKNotebook.cxx Log Message: ENH: Added implementations of InternalCreateTimer and InternalDestroyTimer so timers will again work with VTK 5.2 ENH: To fix display issues with GTK2 (first render fails and incorrect z-ordering), wxVTKRenderWindowInteractor now also derives from wxGLCanvas for wxGTK 2.8. To solve the crashes that result from this change we now explicitly set the DisplayId on the RenderWindow. This will prevent VTK from destroying the X Display (which was the cause of the crashes). As a side result the wxVTKNotebook sample no longer has to call SetDisplayId anymore. Index: wxVTKNotebook.cxx =================================================================== RCS file: /cvsroot/wxvtk/wxVTK/Sample/wxVTKNotebook.cxx,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** wxVTKNotebook.cxx 1 Jul 2008 08:55:40 -0000 1.1 --- wxVTKNotebook.cxx 3 Dec 2008 10:31:46 -0000 1.2 *************** *** 213,217 **** wxPanel *self = notebook_1_pane_1; wxVTKRenderWindowInteractor *renWin = new wxVTKRenderWindowInteractor(self,-1); //, size=(10,10)); - renWin->GetRenderWindow()->SetDisplayId( wxGetDisplay() ); //self._wlist.append( renWin ); renWin->GetRenderWindow()->AddRenderer(ren); --- 213,216 ---- |
From: Sander N. <svn...@us...> - 2008-12-03 10:19:04
|
Update of /cvsroot/wxvtk/wxVTK/Sample In directory 23jxhf1.ch3.sourceforge.com:/tmp/cvs-serv17076 Modified Files: wxImagePlaneWidget.cxx wxImageViewer.cxx wxMedical3.cxx Log Message: COMP: Added include of vtkTestUtilities.h Index: wxImagePlaneWidget.cxx =================================================================== RCS file: /cvsroot/wxvtk/wxVTK/Sample/wxImagePlaneWidget.cxx,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** wxImagePlaneWidget.cxx 20 Oct 2008 12:46:31 -0000 1.8 --- wxImagePlaneWidget.cxx 3 Dec 2008 10:19:00 -0000 1.9 *************** *** 40,43 **** --- 40,44 ---- #include "vtkImageReslice.h" #include "vtkTesting.h" + #include "vtkTestUtilities.h" #include "vtkRegressionTestImage.h" Index: wxImageViewer.cxx =================================================================== RCS file: /cvsroot/wxvtk/wxVTK/Sample/wxImageViewer.cxx,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** wxImageViewer.cxx 20 Oct 2008 12:46:31 -0000 1.7 --- wxImageViewer.cxx 3 Dec 2008 10:19:00 -0000 1.8 *************** *** 30,33 **** --- 30,34 ---- #include "vtkImageData.h" #include "vtkTesting.h" + #include "vtkTestUtilities.h" #include "vtkRegressionTestImage.h" Index: wxMedical3.cxx =================================================================== RCS file: /cvsroot/wxvtk/wxVTK/Sample/wxMedical3.cxx,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** wxMedical3.cxx 20 Oct 2008 12:46:31 -0000 1.7 --- wxMedical3.cxx 3 Dec 2008 10:19:00 -0000 1.8 *************** *** 39,42 **** --- 39,43 ---- #include "vtkImageActor.h" #include "vtkTesting.h" + #include "vtkTestUtilities.h" #include "vtkRegressionTestImage.h" |
From: Mathieu M. <mat...@gm...> - 2008-12-03 08:23:04
|
On Wed, Dec 3, 2008 at 1:08 AM, Sander Niemeijer <nie...@st...> wrote: > > On 3 dec 2008, at 00:11, Mathieu Malaterre wrote: > >> Patch looks ok. I do not understand this part, though: >> >> ... >> -#if (!wxCHECK_VERSION(2, 8, 0)) >> #define USE_WXGLCANVAS >> -#endif >> ... >> >> So you are saying you are using wxGLCanvas in all cases and never see >> any flickering ? I added this case explicitely for ther wx 2.8.x >> release. > > Exactly (but I only use wxGLCanvas for the GTK backend, of course). > I never had any problems with flickering. I actually have display > problems if I _don't_ use wxGLCanvas: > - The first rendering shows a blank window. Only after clicking inside > it does the window render properly > - The z-ordering is completely backward. Ok. Please apply. Let me know if you need help with CVS. Include relevant details in the cvs message. Thanks ! -- Mathieu |