I'd like to be able to make plsurf3d or plplot3d plots of complex data where 
the Z axis is the magnitude and the color is the phase of the complex values.  
Currently, these methods only offer a "MAG_COLOR" option.  I think this colors 
the plots based on the real (i.e. signed) value rather than the absolute value. 
 That semantical distinction aside, the point is that the 3D plots can only be 
colored, if at all, based on the z axis displacement of the surface (or line) 
plot rather than some other attribute of the 2D data field being plotted.

I think this would be best implemented by creating enhanced versions of these 
functions that accept an additional 2D data field whose values would be used to 
determine colors.  Here is the current declaration of plfplot3dcl...

void
plfplot3dcl( PLFLT *x, PLFLT *y, PLF2OPS zops, PLPointer zp,
             PLINT nx, PLINT ny, PLINT opt,
             PLFLT *clevel, PLINT nlevel,
             PLINT ixstart, PLINT ixn, PLINT *indexymin, PLINT *indexymax );

The enhanced, arbitrary color version would be this...

void
plfplot3dcl2( PLFLT *x, PLFLT *y, PLF2OPS zops, PLPointer zp,
             PLF2OPS cops, PLPointer cp, // <---- NEW PARAMETERS
             PLINT nx, PLINT ny, PLINT opt,
             PLFLT *clevel, PLINT nlevel,
             PLINT ixstart, PLINT ixn, PLINT *indexymin, PLINT *indexymax );

...where the two new parameters, cops and cp, would represent the 2D data field 
to be used to determine colors.  cops==NULL would be the same as not specifying 
MAG_COLOR, and the MAG_COLOR flag of opt would be ignored.

Using this approach to make the 3D plots of complex data described above, I 
would pass the pointer to the 2D complex data for both zp and cp.  zops would 
point to a plf2ops structure whose "get" function returns the magnitude of the 
desired point and cops would point to a plf2ops structure whose "get" function 
returns the phase of the desired point.

I'd like to get some feedback/encouragement/lack-of-discouragement before I 
embark on this change, so if you have any of the above please let me know.

Thanks,
Dave


------------------------------------------------------------------------------
Gaining the trust of online customers is vital for the success of any company
that requires sensitive data to be transmitted over the Web.   Learn how to 
best implement a security strategy that keeps consumers' information secure 
and instills the confidence they need to proceed with transactions.
http://p.sf.net/sfu/oracle-sfdevnl 
_______________________________________________
Plplot-devel mailing list
Plplot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/plplot-devel

Reply via email to