|
From: V. <gae...@en...> - 2005-04-11 16:36:27
|
I have had a good look at gnuplot's source code to try to figure out
what need to be done to build a 3d terminal interface.
My conclusion is that there is a quite large amount of work. As I
really would like this to happen I am ready to give it a try, even though
this is way beyond any project I have ever tackled yet. I will of course
need some coaching in the process, as I am new to gnuplot's code and I do
not know what is the development policy.
I think our first goal should be to build a working 3d interface, even
if it does not implement all of gnuplot's possibility. Here are a few
random ideas I collected.=20
I think we should define a term3d api (the terminal code file .trm
could go in a separate directory, term3d for instance). It would
reproduce as much as possible the current terminal api, but in 3d
(positions would be given in 3d).
The plotting code in gnuplot's main source file would have to be
modified to use this api. As a temporary solution I suggested to tamper
only with the code called by splot and leave plot out for 3d terminals
A flag could say weather the current terminal is 3d or not. In the
different functions called by splot a switch could call the 3d
function's when needed. Something like :
#ifdef TERM3D
if (term_is_3d) {
}
else
{
#endif=20
#ifdef TERM3D
}
#endif=20
The functions that will require modification are all that call
map3d_xy and map3d_xyz, all that do direct calls to term->move
term->vector (I am forgetting other evil 2d calls ?).
That's the current state of my projects. To implement those ideas I
will need some support and guidance from a gnuplot developer. What do
you think of this plan of action ? can you give me some support ? I will
be very slow at working on this project : my work does not give me a lot
of free time.
I must stress that I am totally unexperienced as far as working on a
real project goes.
--
Ga=EBl
|