You can subscribe to this list here.
2000 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(4) |
Jul
(1) |
Aug
|
Sep
(15) |
Oct
(32) |
Nov
(35) |
Dec
(48) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2001 |
Jan
(46) |
Feb
(22) |
Mar
(65) |
Apr
(49) |
May
(22) |
Jun
(29) |
Jul
(51) |
Aug
(34) |
Sep
(32) |
Oct
(46) |
Nov
(30) |
Dec
(32) |
2002 |
Jan
(48) |
Feb
(4) |
Mar
(20) |
Apr
(28) |
May
(13) |
Jun
(34) |
Jul
(51) |
Aug
(15) |
Sep
(15) |
Oct
(35) |
Nov
(15) |
Dec
(20) |
2003 |
Jan
(31) |
Feb
(111) |
Mar
(41) |
Apr
(28) |
May
(36) |
Jun
(29) |
Jul
(27) |
Aug
(29) |
Sep
(47) |
Oct
(28) |
Nov
(7) |
Dec
(26) |
2004 |
Jan
(44) |
Feb
(9) |
Mar
(17) |
Apr
(26) |
May
(58) |
Jun
(13) |
Jul
(44) |
Aug
(64) |
Sep
(30) |
Oct
(11) |
Nov
(21) |
Dec
(28) |
2005 |
Jan
(29) |
Feb
(11) |
Mar
(11) |
Apr
(22) |
May
(85) |
Jun
(46) |
Jul
(17) |
Aug
(18) |
Sep
(14) |
Oct
(22) |
Nov
(1) |
Dec
(45) |
2006 |
Jan
(20) |
Feb
(36) |
Mar
(18) |
Apr
(24) |
May
(21) |
Jun
(48) |
Jul
(23) |
Aug
(20) |
Sep
(10) |
Oct
(41) |
Nov
(46) |
Dec
(40) |
2007 |
Jan
(40) |
Feb
(20) |
Mar
(13) |
Apr
(6) |
May
(24) |
Jun
(31) |
Jul
(30) |
Aug
(11) |
Sep
(11) |
Oct
(10) |
Nov
(56) |
Dec
(64) |
2008 |
Jan
(64) |
Feb
(22) |
Mar
(63) |
Apr
(28) |
May
(25) |
Jun
(36) |
Jul
(11) |
Aug
(9) |
Sep
(14) |
Oct
(41) |
Nov
(46) |
Dec
(130) |
2009 |
Jan
(95) |
Feb
(41) |
Mar
(24) |
Apr
(35) |
May
(53) |
Jun
(67) |
Jul
(48) |
Aug
(48) |
Sep
(86) |
Oct
(75) |
Nov
(64) |
Dec
(52) |
2010 |
Jan
(57) |
Feb
(31) |
Mar
(28) |
Apr
(40) |
May
(25) |
Jun
(42) |
Jul
(79) |
Aug
(31) |
Sep
(49) |
Oct
(66) |
Nov
(38) |
Dec
(25) |
2011 |
Jan
(29) |
Feb
(18) |
Mar
(44) |
Apr
(6) |
May
(28) |
Jun
(31) |
Jul
(36) |
Aug
(24) |
Sep
(30) |
Oct
(23) |
Nov
(21) |
Dec
(27) |
2012 |
Jan
(14) |
Feb
(11) |
Mar
(2) |
Apr
(48) |
May
(7) |
Jun
(32) |
Jul
(22) |
Aug
(25) |
Sep
(31) |
Oct
(32) |
Nov
(21) |
Dec
(17) |
2013 |
Jan
(44) |
Feb
(27) |
Mar
(3) |
Apr
(1) |
May
|
Jun
|
Jul
(3) |
Aug
(4) |
Sep
(1) |
Oct
(7) |
Nov
(5) |
Dec
(5) |
2014 |
Jan
|
Feb
|
Mar
|
Apr
(3) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(3) |
Dec
(2) |
2015 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
|
2017 |
Jan
(7) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2019 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: CL <clc...@gm...> - 2009-01-17 02:54:35
|
Hi Shef I've uploaded my version of cvisual.pyd for your testing, if you are interested. You can get it from http://code.google.com/p/vpythonex1 The cvisual.pyd-fix3 contains 3 fixes. Download and overwrite your C:\Python25\Lib\site-packages\visual\cvisual.pyd The three fixes are: 1. Fix the problem of my video card opengl extension library entry. It is not compatible with vpython 5.0. This fix shall not affecting you, I believe. 2. Fix the crash when opacity changed from 1.0 to below 1.0 3. The fix of mouse cursor positioning problem caused by re-parenting in the docking situation. CL |
From: CL <clc...@gm...> - 2009-01-17 02:33:55
|
Hi Stef I've uploaded my version of cvisual.pyd for your testing, if you are interested. You can get it from http://code.google.com/p/vpythonex1 The cvisual.pyd-fix3 contains 3 fixes. Download and overwrite your C:\Python25\Lib\site-packages\visual\cvisual.pyd The three fixes are: 1. Fix the problem of my video card opengl extension library entry. It is not compatible with vpython 5.0. This fix shall not affecting you, I believe. 2. Fix the crash when opacity changed from 1.0 to below 1.0 3. The fix of mouse cursor positioning problem caused by re-parenting in the docking situation. CL |
From: symion <sy...@pr...> - 2009-01-16 18:26:15
|
I have been looking workarounds and found that by including opacity during a box definition, with any value Except 1.0 allows opacity to work! Also, if you have nested frames then a pause before connecting the main frame from the sub frames works! Another problem that has just popped up. Any keyboard input that requires holding down a key for long periods seems to cause some programs to freeze, but not all! Here are 3 examples, they all use cursor keys to move or spin objects. result-1.py <http://home.primusonline.com.au/knoware/python/result-1.py> This one crashes easily. Spincube.py <http://home.primusonline.com.au/knoware/python/Spincube.py> This one does not crash at all (at least on my machine) Wiregrid-0.py <http://home.primusonline.com.au/knoware/python/Wiregrid-0.py> This one crashes after a while. You have to move the cursor a fair way before it locks up. It acts like a keyboard buffer overflow, but that's just a guess. Also, vpython programs seem to take a long time to exit. I'm on a PC and with Task Manager set to monitor processes, it takes as much as 11 seconds for the pythonw.exe to be removed from the list. Now maybe it's just my slow system, (I'm running Vista Home Edition) but if I try running another script before the old one has been cleared out then the threads get jumbled and I either get a 'blocked by firewall' message or a 'bad socket' message. Symion |
From: Stef M. <s.m...@ru...> - 2009-01-16 16:18:12
|
CL wrote: > Hi Shef > > Now I understand more about the problem you described. > > Actually vPython uses client windows coordinates in its mouse > management, but it has the assumption that it is the top-level window > when restoring the mouse cursor position after dragging. Somehow it > will cause a crash in some cases. I've fixed that portion and I am not > able to crash it any more. (May be I am not trying hard enough 8-) > > that's great news !! And I would love to try it, but the code below looks like C to me, and that's beyond my knowledge :-( cheers, Stef > In windisplay.cpp > > LRESULT > display::on_mouse( WPARAM wParam, LPARAM lParam) > ... > if (mouse.is_mouse_locked() && ( mouse_x < 20 || mouse_x > view_width > - 20 || mouse_y < 20 || mouse_y > view_height - 20 ) ) { > mouse.report_setcursor( view_width/2, view_height/2 ); > SetCursorPos( view_x + view_width/2, view_y + view_height/2 ); > } > if (was_locked && !mouse.is_mouse_locked()) { > mouse.report_setcursor( old_x, old_y ); > SetCursorPos( view_x + old_x, view_y + old_y ); > } > ... > > > Both SetCursorPos call will move the mouse to an incorrect coordinate. > It is because WM_MOVE message is not sending to vPython any more after > it is reparented. (also, may be window_x and window_y shall be used > instead of view_x, view_y). > > Changing it to: > > if (mouse.is_mouse_locked() && ( mouse_x < 20 || mouse_x > view_width > - 20 || mouse_y < 20 || mouse_y > view_height - 20 ) ) { > mouse.report_setcursor( view_width/2, view_height/2 ); > //SetCursorPos( view_x + view_width/2, view_y + view_height/2 ); > POINT pt; > pt.x = pt.y = 0; > ClientToScreen(widget_handle, &pt); > SetCursorPos( pt.x + view_width/2, pt.y + view_height/2 ); > } > if (was_locked && !mouse.is_mouse_locked()) { > mouse.report_setcursor( old_x, old_y ); > //SetCursorPos( view_x + old_x, view_y + old_y ); > POINT pt; > pt.x = pt.y = 0; > ClientToScreen(widget_handle, &pt); > SetCursorPos( pt.x + old_x, pt.y + old_y ); > } > > Now the mouse cursor is correctly positioned after dragging, no matter > if it has been reparented or not. Seems no more crashes now. > > CL > > > Het UMC St Radboud staat geregistreerd bij de Kamer van Koophandel in het handelsregister onder nummer 41055629. The Radboud University Nijmegen Medical Centre is listed in the Commercial Register of the Chamber of Commerce under file number 41055629. |
From: CL <clc...@gm...> - 2009-01-16 13:52:12
|
Hi Shef Now I understand more about the problem you described. Actually vPython uses client windows coordinates in its mouse management, but it has the assumption that it is the top-level window when restoring the mouse cursor position after dragging. Somehow it will cause a crash in some cases. I've fixed that portion and I am not able to crash it any more. (May be I am not trying hard enough 8-) In windisplay.cpp LRESULT display::on_mouse( WPARAM wParam, LPARAM lParam) ... if (mouse.is_mouse_locked() && ( mouse_x < 20 || mouse_x > view_width - 20 || mouse_y < 20 || mouse_y > view_height - 20 ) ) { mouse.report_setcursor( view_width/2, view_height/2 ); SetCursorPos( view_x + view_width/2, view_y + view_height/2 ); } if (was_locked && !mouse.is_mouse_locked()) { mouse.report_setcursor( old_x, old_y ); SetCursorPos( view_x + old_x, view_y + old_y ); } ... Both SetCursorPos call will move the mouse to an incorrect coordinate. It is because WM_MOVE message is not sending to vPython any more after it is reparented. (also, may be window_x and window_y shall be used instead of view_x, view_y). Changing it to: if (mouse.is_mouse_locked() && ( mouse_x < 20 || mouse_x > view_width - 20 || mouse_y < 20 || mouse_y > view_height - 20 ) ) { mouse.report_setcursor( view_width/2, view_height/2 ); //SetCursorPos( view_x + view_width/2, view_y + view_height/2 ); POINT pt; pt.x = pt.y = 0; ClientToScreen(widget_handle, &pt); SetCursorPos( pt.x + view_width/2, pt.y + view_height/2 ); } if (was_locked && !mouse.is_mouse_locked()) { mouse.report_setcursor( old_x, old_y ); //SetCursorPos( view_x + old_x, view_y + old_y ); POINT pt; pt.x = pt.y = 0; ClientToScreen(widget_handle, &pt); SetCursorPos( pt.x + old_x, pt.y + old_y ); } Now the mouse cursor is correctly positioned after dragging, no matter if it has been reparented or not. Seems no more crashes now. CL > > > Looks something like VPython 5 is using absolute mouse coordinates instead > of translating them to the position in the parent. > > I tried SetWindowPos but it looks like it has no effect after the > > scene window is created, so I change it to MoveWindow. It works very > > well on my PC. > > > Now try this: > - start the program > - move the window more to the top of your screen > - click and drag, from a bottom position in the VPython window, downwards > in such a way that you virtual (you can't see the cursor) will leave the > window, > and I expect you get the following error: > VPython ***CRITICAL ERROR***: ..\src\core\display_kernel.cpp:535: > cvisual::display_kernel::world_to_view_transform: VPython degenerate > projection: 1.#INF 1.#INF 0.57735 0.494872 > > cheers, > Stef > > > > Het UMC St Radboud staat geregistreerd bij de Kamer van Koophandel in het handelsregister onder nummer 41055629. > The Radboud University Nijmegen Medical Centre is listed in the Commercial Register of the Chamber of Commerce under file number 41055629. |
From: Stef M. <s.m...@ru...> - 2009-01-16 09:18:57
|
hi Che ? CL wrote: > Hi Shef > > Since I only have one PC, I am not sure if my sample programs working > well or not on other hardware. Are you able to run my sample programs > on your side (or it also crashes) ? Anyone else can report the result > if you have tried it ? > aha, so you didn't try hard enough ;-) > About the crashes, can you show a bit more about the python code to do > SetWindowPos / MoveWindow ? Technically speaking, I can see no reason > why using these API will cause a crash in general. > > Looks something like VPython 5 is using absolute mouse coordinates instead of translating them to the position in the parent. > I tried SetWindowPos but it looks like it has no effect after the > scene window is created, so I change it to MoveWindow. It works very > well on my PC. > Now try this: - start the program - move the window more to the top of your screen - click and drag, from a bottom position in the VPython window, downwards in such a way that you virtual (you can't see the cursor) will leave the window, and I expect you get the following error: VPython ***CRITICAL ERROR***: ..\src\core\display_kernel.cpp:535: cvisual::display_kernel::world_to_view_transform: VPython degenerate projection: 1.#INF 1.#INF 0.57735 0.494872 cheers, Stef Het UMC St Radboud staat geregistreerd bij de Kamer van Koophandel in het handelsregister onder nummer 41055629. The Radboud University Nijmegen Medical Centre is listed in the Commercial Register of the Chamber of Commerce under file number 41055629. |
From: Stef M. <s.m...@ru...> - 2009-01-16 09:09:54
|
hi Bruce, Bruce Sherwood wrote: > No, You might be completely right, but the final result from my viewpoint is the same: "I can't use it for this purpose for a long period of time" > the issue there was that there isn't any way for me to debug that very > complex program, since I know nothing about wxpython. It has nothing to do wxPython. And as I suspected that you didn't use wxPython, I attached a little autoit-executable (which is written directly on the windows APIs), so you reproduce the bug without wxPython. The fact that this autoit program shows the same problem, also proves that it's not wxPython to blame. cheers, Stef Het UMC St Radboud staat geregistreerd bij de Kamer van Koophandel in het handelsregister onder nummer 41055629. The Radboud University Nijmegen Medical Centre is listed in the Commercial Register of the Chamber of Commerce under file number 41055629. |
From: CL <clc...@gm...> - 2009-01-16 00:54:40
|
Hi Shef Since I only have one PC, I am not sure if my sample programs working well or not on other hardware. Are you able to run my sample programs on your side (or it also crashes) ? Anyone else can report the result if you have tried it ? About the crashes, can you show a bit more about the python code to do SetWindowPos / MoveWindow ? Technically speaking, I can see no reason why using these API will cause a crash in general. I tried SetWindowPos but it looks like it has no effect after the scene window is created, so I change it to MoveWindow. It works very well on my PC. best regards, CL > I just tried MoveWindow instead of SetWindowPos, but it crashes just as > hard with VPython-5. > Here is the essential part of the code: > > # get the handle of the dock container > PP = self.p1.GetHandle () > > # Set Position and Size of the VPython window, > # Before Docking it !! > flags = win32con.SWP_SHOWWINDOW or \ > win32con.SWP_FRAMECHANGED > win32gui.SetWindowPos ( self.VP, win32con.HWND_TOPMOST, > -4, -22, w+8, h+26, flags ) > #win32gui.MoveWindow ( self.VP, -4, -22, w+8, h+26, True ) > <===JUST AS BAD > > # Dock the VPython window > win32gui.SetParent ( self.VP, PP ) > > Am I doing something wrong, > or are you not testing hard enough ? > > cheers, > Stef > > > This examples only work on Windows platform because the docking > > technique is depending on win32 api. You can change it to non-docking > > version easily by removing some code in vWorld object. > > > > Example 1 is just the bounce2 sample program implemented in a wxdialog box. > > Example 2 is four bounce2 windows in a wxdialog box. > > > > Hope this can help you. > > > > ------------------------------------------------------------------------------ > > This SF.net email is sponsored by: > > SourcForge Community > > SourceForge wants to tell your story. > > http://p.sf.net/sfu/sf-spreadtheword > > _______________________________________________ > > Visualpython-users mailing list > > Vis...@li... > > https://lists.sourceforge.net/lists/listinfo/visualpython-users > > > > > > > > > > ------------------------------ > > ------------------------------------------------------------------------------ > This SF.net email is sponsored by: > SourcForge Community > SourceForge wants to tell your story. > http://p.sf.net/sfu/sf-spreadtheword > > ------------------------------ > > _______________________________________________ > Visualpython-users mailing list > Vis...@li... > https://lists.sourceforge.net/lists/listinfo/visualpython-users > > > End of Visualpython-users Digest, Vol 32, Issue 11 > ************************************************** > |
From: CL <clc...@gm...> - 2009-01-16 00:36:59
|
Hi Bruce Not at all. Unfortunately I am not very experienced in low level graphics/opengl development, I can only help at surface level / minor logic bug level. CL On 1/15/09, Bruce Sherwood <Bru...@nc...> wrote: > Many thanks for looking into this! I'll try it. > > More generally, it would be a much healthier situation for VPython if more > users would/could get involved at this level. Such help is greatly > appreciated by everyone in the community. > > Bruce Sherwood > > CL wrote: > > > > About the opacity problem (crash when changing from opacity 1.0 to > > lower), it looks like it is a bug in frame.cpp > > > > void frame::gl_render( const view& v) > > > > .... > > > > for (child_iterator i = children.begin(); i != > > child_iterator(children.end()); ++i) { > > if (i->translucent()) { > > // See display_kernel::draw(). > > trans_children.push_back( *i.base()); > > i = children.erase(i.base()); > > continue; > > } > > > > i->outer_render(local); > > } > > > > The code is trying to move a renderable from a list to another list > > when the opacity of the renderable is changing from 1.0 to something > > else. But children.erase() function returns the pointer after > > deletion, not the pointer before deletion. > > > > Following similar logic in display_kernel::draw, replace the code with : > > > > child_iterator i(children.begin()); > > child_iterator i_end(children.end()); > > while (i != i_end) { > > if (i->translucent()) { > > // See display_kernel::draw(). > > trans_children.push_back( *i.base()); > > i = children.erase(i.base()); > > continue; > > } > > i->outer_render(local); > > i++; > > > > It seems working on my simple test cases. > > > > > > > > > Don't I wish it were that simple. No, objects are created with > > > opacity=1.0 by default. That's why a scene contains opaque objects if > > > you don't explicitly set the opacity to something different. > > > > > > > > > > b = box() > > > print b.opacity # shows 1.0 > > > > > > > > > > Bruce Sherwood > > > > > > > > ------------------------------------------------------------------------------ > > This SF.net email is sponsored by: > > SourcForge Community > > SourceForge wants to tell your story. > > http://p.sf.net/sfu/sf-spreadtheword > > _______________________________________________ > > Visualpython-users mailing list > > Vis...@li... > > > https://lists.sourceforge.net/lists/listinfo/visualpython-users > > > |
From: Bruce S. <Bru...@nc...> - 2009-01-15 23:51:18
|
No, the issue there was that there isn't any way for me to debug that very complex program, since I know nothing about wxpython. In the case of Mac Tk, the issue is known: Carbon wants to be the primary thread. I don't know what property of Visual 5 interferes with trying to embed it in wxpython on Windows. Bruce Sherwood Stef Mientki wrote: > hi Bruce, > > Bruce Sherwood wrote: >> I know about the limitation of Visual 5 that on the Mac it's not >> possible to invoke Tk, due to conflicts over who is the primary >> thread, but what's the nature of the issue with wxpython on Windows? I >> don't recall saying anything about features of Visual 5 that would >> prevent doing something with wxpython. (I wouldn't be surprised if >> there were problems, given the architecture of Visual, it's just that >> I don't know anything about wxpython, nor what aspects of Visual 5 >> would cause problems.) > Well you gave the answer (in which the "features" were mentioned) off list, > the problem was docking VPython-5, after moving or resizing the window, > VPython crashed. > > cheers, > Stef > > > ------------------------------------------------------------------------------ > This SF.net email is sponsored by: > SourcForge Community > SourceForge wants to tell your story. > http://p.sf.net/sfu/sf-spreadtheword > _______________________________________________ > Visualpython-users mailing list > Vis...@li... > https://lists.sourceforge.net/lists/listinfo/visualpython-users |
From: Stef M. <s.m...@ru...> - 2009-01-15 20:30:52
|
Emanuele Gissi wrote: > Thanks Stef for your reply, but my application has to be multiplatform. > I think that your solution is for Windows only. > > I don't need wxpython in particular, but the vpython controls are not > enough for me. Now the Qt license will change, it might be interesting to take a look at Qt, seems to have a dock feature for windows and linux ( don't know for MAC). cheers, Stef |
From: Stef M. <s.m...@ru...> - 2009-01-15 20:27:43
|
hi Bruce, Bruce Sherwood wrote: > I know about the limitation of Visual 5 that on the Mac it's not > possible to invoke Tk, due to conflicts over who is the primary > thread, but what's the nature of the issue with wxpython on Windows? I > don't recall saying anything about features of Visual 5 that would > prevent doing something with wxpython. (I wouldn't be surprised if > there were problems, given the architecture of Visual, it's just that > I don't know anything about wxpython, nor what aspects of Visual 5 > would cause problems.) Well you gave the answer (in which the "features" were mentioned) off list, the problem was docking VPython-5, after moving or resizing the window, VPython crashed. cheers, Stef |
From: Stef M. <s.m...@ru...> - 2009-01-15 20:24:06
|
CL wrote: > It seems there are quite a number of developers looking for simple > examples showing an integration of wxpython and vpython, I have just > written two examples and put it here: > http://code.google.com/p/vpythonex1/ (as my robot simulator is quite > complicated). > > In these examples, I try to use the docking technique described in > http://mientki.ruhosting.nl/data_www/pylab_works/pw_vpython_docking.html > > I use MoveWindow instead of SetWindowPos, in order to make it work on > the new version of vPython. I have not tested them on previous verion > of vPython. > > I just tried MoveWindow instead of SetWindowPos, but it crashes just as hard with VPython-5. Here is the essential part of the code: # get the handle of the dock container PP = self.p1.GetHandle () # Set Position and Size of the VPython window, # Before Docking it !! flags = win32con.SWP_SHOWWINDOW or \ win32con.SWP_FRAMECHANGED win32gui.SetWindowPos ( self.VP, win32con.HWND_TOPMOST, -4, -22, w+8, h+26, flags ) #win32gui.MoveWindow ( self.VP, -4, -22, w+8, h+26, True ) <===JUST AS BAD # Dock the VPython window win32gui.SetParent ( self.VP, PP ) Am I doing something wrong, or are you not testing hard enough ? cheers, Stef > This examples only work on Windows platform because the docking > technique is depending on win32 api. You can change it to non-docking > version easily by removing some code in vWorld object. > > Example 1 is just the bounce2 sample program implemented in a wxdialog box. > Example 2 is four bounce2 windows in a wxdialog box. > > Hope this can help you. > > ------------------------------------------------------------------------------ > This SF.net email is sponsored by: > SourcForge Community > SourceForge wants to tell your story. > http://p.sf.net/sfu/sf-spreadtheword > _______________________________________________ > Visualpython-users mailing list > Vis...@li... > https://lists.sourceforge.net/lists/listinfo/visualpython-users > > > |
From: Bruce S. <Bru...@nc...> - 2009-01-15 14:59:30
|
This is probably a naive notion, but this sounds like a somewhat straight-forward VPython program, in which you show a tree of the displayed objects (probably the nodes of the tree are miniature versions of those objects). I assume by tree you mean that objects would be grouped under frames. I have the vague notion that someone once built some kind of visual tree structure in VPython....? Or that there exist Python modules for creating/analyzing tree structures? I also draw everyone's attention to the new component of Visual 5, filedialog.py, which is an example of pure platform-independent Python code which provides basic file dialog services. It also works with Visual 3. Maybe there are elements there of the additional controls you seek. Bruce Sherwood Emanuele Gissi wrote: > Thanks Stef for your reply, but my application has to be multiplatform. > I think that your solution is for Windows only. > > I don't need wxpython in particular, but the vpython controls are not > enough for me. > I would like to show a tree of the displayed objects, so that the user > can select them and edit their properties. This could be in another > window, thought I would prefer it integrated in the 3dview window. > > Can someone suggest a tool to obtain such an effect? > Thanks once more. > Emanuele Gissi > > > ------------------------------------------------------------------------ > > ------------------------------------------------------------------------------ > This SF.net email is sponsored by: > SourcForge Community > SourceForge wants to tell your story. > http://p.sf.net/sfu/sf-spreadtheword > > > ------------------------------------------------------------------------ > > _______________________________________________ > Visualpython-users mailing list > Vis...@li... > https://lists.sourceforge.net/lists/listinfo/visualpython-users |
From: Bruce S. <Bru...@nc...> - 2009-01-15 14:53:10
|
Many thanks for looking into this! I'll try it. More generally, it would be a much healthier situation for VPython if more users would/could get involved at this level. Such help is greatly appreciated by everyone in the community. Bruce Sherwood CL wrote: > About the opacity problem (crash when changing from opacity 1.0 to > lower), it looks like it is a bug in frame.cpp > > void frame::gl_render( const view& v) > > .... > > for (child_iterator i = children.begin(); i != > child_iterator(children.end()); ++i) { > if (i->translucent()) { > // See display_kernel::draw(). > trans_children.push_back( *i.base()); > i = children.erase(i.base()); > continue; > } > > i->outer_render(local); > } > > The code is trying to move a renderable from a list to another list > when the opacity of the renderable is changing from 1.0 to something > else. But children.erase() function returns the pointer after > deletion, not the pointer before deletion. > > Following similar logic in display_kernel::draw, replace the code with : > > child_iterator i(children.begin()); > child_iterator i_end(children.end()); > while (i != i_end) { > if (i->translucent()) { > // See display_kernel::draw(). > trans_children.push_back( *i.base()); > i = children.erase(i.base()); > continue; > } > i->outer_render(local); > i++; > > It seems working on my simple test cases. > > >> Don't I wish it were that simple. No, objects are created with >> opacity=1.0 by default. That's why a scene contains opaque objects if >> you don't explicitly set the opacity to something different. > >> b = box() >> print b.opacity # shows 1.0 > >> Bruce Sherwood > > ------------------------------------------------------------------------------ > This SF.net email is sponsored by: > SourcForge Community > SourceForge wants to tell your story. > http://p.sf.net/sfu/sf-spreadtheword > _______________________________________________ > Visualpython-users mailing list > Vis...@li... > https://lists.sourceforge.net/lists/listinfo/visualpython-users |
From: Suman C. <su...@ss...> - 2009-01-15 12:53:10
|
Bruce Sherwood wrote: > You might not have to compile it. Isn't there already a Ubuntu package > "python-visual"? Or is the issue that your machine is 64 bit? Thank you very much! I had no idea about the package name, so first I tried the compilation as I do with any other new package. I have installed python-visual successfully, but of course that is version 3.2.9. There might still be some problem with the version 5. But in any case it will serve my purpose for the time being. Thanks and regards, Suman Chakrabarty. -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. |
From: Emanuele G. <ema...@gm...> - 2009-01-15 11:06:55
|
Thanks Stef for your reply, but my application has to be multiplatform. I think that your solution is for Windows only. I don't need wxpython in particular, but the vpython controls are not enough for me. I would like to show a tree of the displayed objects, so that the user can select them and edit their properties. This could be in another window, thought I would prefer it integrated in the 3dview window. Can someone suggest a tool to obtain such an effect? Thanks once more. Emanuele Gissi |
From: CL <clc...@gm...> - 2009-01-15 10:01:03
|
About the opacity problem (crash when changing from opacity 1.0 to lower), it looks like it is a bug in frame.cpp void frame::gl_render( const view& v) .... for (child_iterator i = children.begin(); i != child_iterator(children.end()); ++i) { if (i->translucent()) { // See display_kernel::draw(). trans_children.push_back( *i.base()); i = children.erase(i.base()); continue; } i->outer_render(local); } The code is trying to move a renderable from a list to another list when the opacity of the renderable is changing from 1.0 to something else. But children.erase() function returns the pointer after deletion, not the pointer before deletion. Following similar logic in display_kernel::draw, replace the code with : child_iterator i(children.begin()); child_iterator i_end(children.end()); while (i != i_end) { if (i->translucent()) { // See display_kernel::draw(). trans_children.push_back( *i.base()); i = children.erase(i.base()); continue; } i->outer_render(local); i++; It seems working on my simple test cases. >Don't I wish it were that simple. No, objects are created with >opacity=1.0 by default. That's why a scene contains opaque objects if >you don't explicitly set the opacity to something different. >b = box() >print b.opacity # shows 1.0 >Bruce Sherwood |
From: CL <clc...@gm...> - 2009-01-15 05:54:48
|
It seems there are quite a number of developers looking for simple examples showing an integration of wxpython and vpython, I have just written two examples and put it here: http://code.google.com/p/vpythonex1/ (as my robot simulator is quite complicated). In these examples, I try to use the docking technique described in http://mientki.ruhosting.nl/data_www/pylab_works/pw_vpython_docking.html I use MoveWindow instead of SetWindowPos, in order to make it work on the new version of vPython. I have not tested them on previous verion of vPython. This examples only work on Windows platform because the docking technique is depending on win32 api. You can change it to non-docking version easily by removing some code in vWorld object. Example 1 is just the bounce2 sample program implemented in a wxdialog box. Example 2 is four bounce2 windows in a wxdialog box. Hope this can help you. |
From: CL <clc...@gm...> - 2009-01-15 01:26:28
|
If you are looking for integration with separated windows (not embedding vpython into a child window in wxpython, you can see if this can help: http://code.google.com/p/clrobotsim/ Basically you can just create a separated thread for the vpython object, use standard communication methods between wxpython and vpython. Dead lock may happen in the wxpython GUI thread if you do not handle it properly. You can check the code at the "robot executor" of the above simulator. > From: "Emanuele Gissi" <ema...@gm...> > Subject: [Visualpython-users] vpython and wxpython integration > To: vis...@li... > Message-ID: > <e00...@ma...> > Content-Type: text/plain; charset="iso-8859-1" > > I am developing a small multiplatform application for data visualisation. > Could someone point me to a simple example on how to integrate a wxpython > GUI with vpython 3d visualisation? > Thank you. > Emanuele Gissi |
From: Bruce S. <Bru...@nc...> - 2009-01-14 21:22:21
|
Thanks for reporting this! Bruce Sherwood David Roundy wrote: > On Wed, Jan 14, 2009 at 11:57 AM, Bruce Sherwood wrote: >> You might not have to compile it. Isn't there already a Ubuntu package >> "python-visual"? Or is the issue that your machine is 64 bit? > > I can confirm that the python-visual package for ubuntu works fine on > 64 bit machines, for what it's worth... > > David |
From: David R. <ro...@ph...> - 2009-01-14 21:20:32
|
On Wed, Jan 14, 2009 at 11:57 AM, Bruce Sherwood wrote: > You might not have to compile it. Isn't there already a Ubuntu package > "python-visual"? Or is the issue that your machine is 64 bit? I can confirm that the python-visual package for ubuntu works fine on 64 bit machines, for what it's worth... David |
From: Bruce S. <Bru...@nc...> - 2009-01-14 20:48:06
|
I know about the limitation of Visual 5 that on the Mac it's not possible to invoke Tk, due to conflicts over who is the primary thread, but what's the nature of the issue with wxpython on Windows? I don't recall saying anything about features of Visual 5 that would prevent doing something with wxpython. (I wouldn't be surprised if there were problems, given the architecture of Visual, it's just that I don't know anything about wxpython, nor what aspects of Visual 5 would cause problems.) Bruce Sherwood Stef Mientki wrote: > > Emanuele Gissi wrote: >> I am developing a small multiplatform application for data visualisation. >> Could someone point me to a simple example on how to integrate a >> wxpython GUI with vpython 3d visualisation? > look here, > > http://mientki.ruhosting.nl/data_www/pylab_works/pw_vpython_docking.html > > but it will only work for VPython-3. > In VPython-5 there are "features" that will crash the application, > and from Bruce I understood that these "features" will not be removed > on a short term. > > cheers, > Stef > >> Thank you. >> Emanuele Gissi >> ------------------------------------------------------------------------ >> >> ------------------------------------------------------------------------------ >> This SF.net email is sponsored by: >> SourcForge Community >> SourceForge wants to tell your story. >> http://p.sf.net/sfu/sf-spreadtheword >> ------------------------------------------------------------------------ >> >> _______________________________________________ >> Visualpython-users mailing list >> Vis...@li... >> https://lists.sourceforge.net/lists/listinfo/visualpython-users >> > > ------------------------------------------------------------------------------ > This SF.net email is sponsored by: > SourcForge Community > SourceForge wants to tell your story. > http://p.sf.net/sfu/sf-spreadtheword > _______________________________________________ > Visualpython-users mailing list > Vis...@li... > https://lists.sourceforge.net/lists/listinfo/visualpython-users |
From: Bruce S. <Bru...@nc...> - 2009-01-14 20:44:50
|
The issue is that there has been very little experience of people building Visual with 64-bit Linux. I myself don't have access to a 64-bit machine. Looking at a build on 32-bit Ubuntu, I don't see anything in your build.log or config.log that explains why there's some incompatibility with the includes. I do however see something that makes me wonder. In config.log at the start of the section labeled "Cache variables" you have ac_cv_build=x86_64-unknown-linux-gnu ac_cv_build_alias=x86_64-unknown-linux-gnu while I see this: ac_cv_build=i686-pc-linux-gnu Makes me wonder about the "unknown" in your listing, though maybe that's irrelevant. One other thing: What I have on my Ubuntu machine is libboost-python1.34.1, which is the only version I see in the synaptic package manager. All I can hope is that someone else on this list has experience with 64-bit Ubuntu and can offer some help. Bruce Sherwood Suman Chakrabarty wrote: > Dear all, > > I am trying to compile visual-3.2.9 on a 64 bit Ubuntu 8.10 and getting > the following problem at the "make" step: > > ============================================================================= > <snip> > Updating dependancy information for ../../visual-3.2.9/src/arrow.cpp ... > make[1]: Leaving directory `/home/suman/Softwares/VPython/src' > make[1]: Entering directory `/home/suman/Softwares/VPython/src' > This is a quiet Makefile. If make exits with an error, check > src/build.log to see the complete error message(s). In the event of an > error that you cannot debug, please send a message to > vis...@li..., including the files config.log > and src/build.log, requesting assistance. > Compiling ../../visual-3.2.9/src/arrow.cpp ... > make[1]: *** [arrow.lo] Error 1 > make[1]: Leaving directory `/home/suman/Softwares/VPython/src' > make: *** [all-recursive] Error 1 > ============================================================================== > > Last two lines containing error messages in build.log: > > ../../visual-3.2.9/include/platlinux.h:27: error: declaration of > 'typedef class visual::lock<visual::mutex> visual::mutex::lock' > ../../visual-3.2.9/include/vthread.h:13: error: changes meaning of > 'lock' from 'class visual::lock<visual::mutex>' > =============================================================================== > > Since I have no clue about how to debug this problem, I have attached > the config.log and build.log files. It will be much appreciated if > somebody can help me get through this. > > > Thanks and regards, > Suman Chakrabarty. > > > > > > > ------------------------------------------------------------------------ > > ------------------------------------------------------------------------------ > This SF.net email is sponsored by: > SourcForge Community > SourceForge wants to tell your story. > http://p.sf.net/sfu/sf-spreadtheword > > > ------------------------------------------------------------------------ > > _______________________________________________ > Visualpython-users mailing list > Vis...@li... > https://lists.sourceforge.net/lists/listinfo/visualpython-users |
From: Bruce S. <Bru...@nc...> - 2009-01-14 19:57:20
|
You might not have to compile it. Isn't there already a Ubuntu package "python-visual"? Or is the issue that your machine is 64 bit? Bruce Sherwood Suman Chakrabarty wrote: > Dear all, > > I am trying to compile visual-3.2.9 on a 64 bit Ubuntu 8.10 and getting > the following problem at the "make" step: > > ============================================================================= > <snip> > Updating dependancy information for ../../visual-3.2.9/src/arrow.cpp ... > make[1]: Leaving directory `/home/suman/Softwares/VPython/src' > make[1]: Entering directory `/home/suman/Softwares/VPython/src' > This is a quiet Makefile. If make exits with an error, check > src/build.log to see the complete error message(s). In the event of an > error that you cannot debug, please send a message to > vis...@li..., including the files config.log > and src/build.log, requesting assistance. > Compiling ../../visual-3.2.9/src/arrow.cpp ... > make[1]: *** [arrow.lo] Error 1 > make[1]: Leaving directory `/home/suman/Softwares/VPython/src' > make: *** [all-recursive] Error 1 > ============================================================================== > > Last two lines containing error messages in build.log: > > ../../visual-3.2.9/include/platlinux.h:27: error: declaration of > 'typedef class visual::lock<visual::mutex> visual::mutex::lock' > ../../visual-3.2.9/include/vthread.h:13: error: changes meaning of > 'lock' from 'class visual::lock<visual::mutex>' > =============================================================================== > > Since I have no clue about how to debug this problem, I have attached > the config.log and build.log files. It will be much appreciated if > somebody can help me get through this. > > > Thanks and regards, > Suman Chakrabarty. > > > > > > > ------------------------------------------------------------------------ > > ------------------------------------------------------------------------------ > This SF.net email is sponsored by: > SourcForge Community > SourceForge wants to tell your story. > http://p.sf.net/sfu/sf-spreadtheword > > > ------------------------------------------------------------------------ > > _______________________________________________ > Visualpython-users mailing list > Vis...@li... > https://lists.sourceforge.net/lists/listinfo/visualpython-users |