Dear all, One of the great advantages of the current mplot3d design is that it produces complete vector based graphics with the same look-and-feel as your 2d plots. Integration with OpenGL will certainly change this, as the rendering will always give you (as far as I know) a bitmap. I think this is what matlab does, and I consider it a major weakness. I therefore believe that the mplot3d approach is good for what it is designed for (which means not being a complete 3d rendering engine).
The drawback, of course, is that you have to do more 3d stuff yourself. There are some good reasons why some problems are *very* hard to solve, but others are doable, such as z-ordering all the polygons (and perhaps splitting them if that's required). Gouraud shading is something else that should be possible. Getting dashed 3d lines z-sorted in a good-looking way sounds very hard to me, but for solid lines it should be ok. As a comment to a previous post, by Gael if I'm not mistaken: mplot3d internally has all info in 3d. In the end you have to go 2d somewhere, and I personally think that we do this at the correct level. Let me mention some more areas of improvement. Currently the Axis3D code does some magic to draw the axes lines and ticks in the correct location. It would be better to rewrite this class to use actual Line3D instances to reduce duplicate code. This brings me to my last remark, which is about the fact that Axes3D currently inherits from Axes. The reason why this was is of course to reduce code duplication. However, I can see why this can be very confusing to the user since it is indeed not clear what is and what is not supposed to work. I need to think a bit about the solution; indeed it might be better to not inherit from Axes. But do not call that all too soon, since Axes is still doing some work under the hood. On the other hand, many of the functions probably don't really make sense. I think restarting from scratch is almost never a good plan... Cheers, Reinier PS: John, I would be interested in mentoring a gsoc student. On Thu, Feb 25, 2010 at 7:26 PM, Eric Firing <efir...@hawaii.edu> wrote: > John Hunter wrote: > [...] >> >> It looks like we have enough 3D projects to justify a google summer of >> code student. Would those of you with an interest in mplot3d and some >> knowledge of the internals be interested in helping mentor a student? >> > > http://www.mail-archive.com/matplotlib-de...@lists.sourceforge.net/msg01343.html > > Is it time for some re-thinking of the approach to 3-D? I am a > bystander, but I have the uneasy sense that trying to turn mplot3d into > a first-class 3-D plotting tool may be a misapplication of effort. > Might the effort be more productive if applied to mayavi, or built on > mayavi, so that the 3-D engine is already taken care of? > > Eric > > ------------------------------------------------------------------------------ > Download Intel® Parallel Studio Eval > Try the new software tools for yourself. Speed compiling, find bugs > proactively, and fine-tune applications for parallel performance. > See why Intel Parallel Studio got high marks during beta. > http://p.sf.net/sfu/intel-sw-dev > _______________________________________________ > Matplotlib-users mailing list > Matplotlib-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/matplotlib-users > -- Reinier Heeres Tel: +31 6 10852639 ------------------------------------------------------------------------------ Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev _______________________________________________ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users