As I said in an earlier message, I'm working on Ruby bindings to PLplot that are analogous to the Ruby bindings to PGPLOT. Like the PGPLOT Ruby bindings, I've chosen to use/support the Ruby "NArray" extension (http://narray.rubyforge.org/) for data arrays. I just implemented the plsurf3d function and it works great, but...
NArray stores 2D data (like the z data for plsurf3d) in a nx*ny element 1D array in (I think) FORTRAN ordering (I think it's known as "column major" ordering, but I always seem to suffer from row/column dyslexia when it comes to remembering which is which). So to get the plots in example 8 to look right, I have to index the NArray z data as z[j,i] rather than z[i,j] (where i is the index in the "x dimension" and j is the index in the "y dimension"). I also have to dimension the z array "backwards" (so I can use the indexes "backwards"). To interface NArray's 2D data with plsurf3d, I have to allocate and populate an array of nx pointers to arrays of ny values. Since the y values have to be contiguous in memory for plsurf3d, using the "backwards" indexing scheme (perhaps "pre-transposed" is a more apt term?) with NArray's 2D data saves a lot of memory copying. While this is a little odd feeling, I don't think this will be a "problem" per se, so the following is a low priority feature request: It would be nice if plsurf3d (and presumably other 3D functions that I haven't gotten to yet) supported an option (e.g. "TRANSPOSED_Z") that would indicate z is being given as an array of ny pointers to arrays of nx values rather than the other way around. Is there some existing way to accomplish the same thing? How does the FORTRAN interface to plsurf3d work? Thanks, Dave ------------------------------------------------------------------------------ This SF.Net email is sponsored by the Verizon Developer Community Take advantage of Verizon's best-in-class app development support A streamlined, 14 day to market process makes app distribution fast and easy Join now and get one step closer to millions of Verizon customers http://p.sf.net/sfu/verizon-dev2dev _______________________________________________ Plplot-devel mailing list Plplot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/plplot-devel