4 private import std.string;
5 private import std.array;
6 private import std.algorithm;
7 private import std.stdio;
8 private import std.conv;
43 size_t ny = a[0].length;
46 for (
size_t i = 0; i < nx; i++ )
48 assert( ny == a[i].length,
"convert_array(): Array must be 2 dimensional!" );
58 char*[] c_args =
new char*[args.length];
59 foreach (
size_t i,
char[] arg; args )
60 c_args[i] = cast(
char *) toStringz( arg );
61 int argc = cast(
int) c_args.length;
70 assert( nx == v.length,
"plvect(): Arrays must be of same length!" );
71 assert( ny == v[0].length,
"plvect(): Arrays must be of same length!" );
80 assert( nx == v.length,
"plvect(): Arrays must be of same length!" );
81 assert( ny == v[0].length,
"plvect(): Arrays must be of same length!" );
85 c.nx = cast(
PLINT) cgrid.xg.length;
87 c.ny = cast(
PLINT) cgrid.yg.length;
89 c.nz = cast(
PLINT) cgrid.zg.length;
98 assert( nx == v.length,
"plvect(): Arrays must be of same length!" );
99 assert( ny == v[0].length,
"plvect(): Arrays must be of same length!" );
105 c2.nx = cast(
PLINT) cgrid2.xg.length;
106 c2.ny = cast(
PLINT) cgrid2.xg[0].length;
109 assert( c2.nx == cgrid2.yg.length,
"plvect(): Arrays must be of same length!" );
110 assert( c2.ny == cgrid2.yg[0].length,
"plvect(): Arrays must be of same length!" );
114 assert( c2.nx == cgrid2.zg.length,
"plvect(): Arrays must be of same length!" );
115 assert( c2.ny == cgrid2.zg[0].length,
"plvect(): Arrays must be of same length!" );
124 assert( npts == arrowy.length,
"plsvect(): Arrays must be of same length!" );
125 c_plsvect( arrowx.ptr, arrowy.ptr, npts, fill );
133 c_plaxes( x0, y0, toStringz( xopt ), xtick, nxsub, toStringz( yopt ), ytick, nysub );
140 assert( nbin == y.length,
"plbin(): Arrays must be of same length!" );
141 c_plbin( nbin, x.ptr, y.ptr, opt );
147 c_plbox( toStringz( xopt ), xtick, nxsub, toStringz( yopt ), ytick, nysub );
152 string yopt,
string ylabel,
PLFLT ytick,
PLINT nsuby,
153 string zopt,
string zlabel,
PLFLT ztick,
PLINT nsubz )
155 c_plbox3( toStringz( xopt ), toStringz( xlabel ), xtick, nsubx,
156 toStringz( yopt ), toStringz( ylabel ), ytick, nsuby,
157 toStringz( zopt ), toStringz( zlabel ), ztick, nsubz );
167 PLINT[] label_opts,
string[] label,
172 PLINT n_labels = cast(
PLINT) label_opts.length;
175 for (
size_t i = 0; i < values.length; i++ )
177 n_values[i] = cast(
PLINT) values[i].length;
179 immutable(
char ) * *labelz = array( map!toStringz( label ) ).ptr;
180 immutable(
char ) * *axis_optsz = array( map!toStringz( axis_opts ) ).ptr;
181 assert( n_labels == label.length,
"plcolorbar(): Arrays must be of same length!" );
182 assert( n_labels == label_opts.length,
"plcolorbar(): Arrays must be of same length!" );
183 assert( n_axes == axis_opts.length,
"plcolorbar(): Arrays must be of same length!" );
184 assert( n_axes == ticks.length,
"plcolorbar(): Arrays must be of same length!" );
185 assert( n_axes == sub_ticks.length,
"plcolorbar(): Arrays must be of same length!" );
190 bg_color, bb_color, bb_style,
191 low_cap_color, high_cap_color,
192 cont_color, cont_width,
193 n_labels, label_opts.ptr, labelz,
195 ticks.ptr, sub_ticks.ptr,
220 c.nx = cast(
PLINT) cgrid.xg.length;
222 c.ny = cast(
PLINT) cgrid.yg.length;
224 c.nz = cast(
PLINT) cgrid.zg.length;
240 c2.nx = cast(
PLINT) cgrid2.xg.length;
241 c2.ny = cast(
PLINT) cgrid2.xg[0].length;
244 assert( c2.nx == cgrid2.yg.length,
"plcont(): Arrays must be of same length!" );
245 assert( c2.ny == cgrid2.yg[0].length,
"plcont(): Arrays must be of same length!" );
249 assert( c2.nx == cgrid2.zg.length,
"plcont(): Arrays must be of same length!" );
250 assert( c2.ny == cgrid2.zg[0].length,
"plcont(): Arrays must be of same length!" );
267 assert( n == xmin.length,
"plerrx(): Arrays must be of same length!" );
268 assert( n == xmax.length,
"plerrx(): Arrays must be of same length!" );
269 c_plerrx( n, xmin.ptr, xmax.ptr, y.ptr );
276 assert( n == ymin.length,
"plerry(): Arrays must be of same length!" );
277 assert( n == ymax.length,
"plerry(): Arrays must be of same length!" );
278 c_plerry( n, x.ptr, ymin.ptr, ymax.ptr );
285 assert( n == y.length,
"plfill(): Arrays must be of same length!" );
293 assert( n == y.length,
"plfill3(): Arrays must be of same length!" );
294 assert( n == z.length,
"plfill3(): Arrays must be of same length!" );
303 p_dev = to!string( cdev.ptr );
311 fnam = to!string( cfnam.ptr );
318 assert( n == y.length,
"plgradient(): Arrays must be of same length!" );
326 assert( npts == y.length,
"plgriddata(): Arrays must be of same length!" );
327 assert( npts == z.length,
"plgriddata(): Arrays must be of same length!" );
331 assert( nxg == zg.length,
"plgriddata(): Arrays must be of same length!" );
332 assert( nyg == zg[0].length,
"plgriddata(): Arrays must be of same length!" );
334 c_plgriddata( x.ptr, y.ptr, z.ptr, npts, xg.ptr, nxg, yg.ptr, nyg,
convert_array( zg ), type, data );
342 p_ver = to!string( cver.ptr );
348 c_plhist( cast(
PLINT) data.length, data.ptr, datmin, datmax, nbin, opt );
352 void pllab(
string xlabel,
string ylabel,
string tlabel )
354 c_pllab( toStringz( xlabel ), toStringz( ylabel ), toStringz( tlabel ) );
364 PLFLT text_justification,
365 PLINT[] text_colors,
string[] text,
371 PLINT[] symbol_numbers,
string[] symbols )
374 immutable(
char ) * *textz = array( map!toStringz( text ) ).ptr;
375 immutable(
char ) * *symbolsz = array( map!toStringz( symbols ) ).ptr;
376 assert( nlegend == text_colors.length,
"pllegend(): Arrays must be of same length!" );
377 assert( nlegend == text.length,
"pllegend(): Arrays must be of same length!" );
378 assert( box_colors == null || nlegend == box_colors.length,
"pllegend(): Arrays must be of same length!" );
379 assert( box_patterns == null || nlegend == box_patterns.length,
"pllegend(): Arrays must be of same length!" );
380 assert( box_scales == null || nlegend == box_scales.length,
"pllegend(): Arrays must be of same length!" );
381 assert( box_line_widths == null || nlegend == box_line_widths.length,
"pllegend(): Arrays must be of same length!" );
382 assert( line_colors == null || nlegend == line_colors.length,
"pllegend(): Arrays must be of same length!" );
383 assert( line_styles == null || nlegend == line_styles.length,
"pllegend(): Arrays must be of same length!" );
384 assert( line_widths == null || nlegend == line_widths.length,
"pllegend(): Arrays must be of same length!" );
385 assert( symbol_colors == null || nlegend == symbol_colors.length,
"pllegend(): Arrays must be of same length!" );
386 assert( symbol_scales == null || nlegend == symbol_scales.length,
"pllegend(): Arrays must be of same length!" );
387 assert( symbol_numbers == null || nlegend == symbol_numbers.length,
"pllegend(): Arrays must be of same length!" );
388 assert( symbols == null || nlegend == symbols.length,
"pllegend(): Arrays must be of same length!" );
390 opt, position, x, y, plot_width,
391 bg_color, bb_color, bb_style,
393 nlegend, opt_array.ptr,
394 text_offset, text_scale, text_spacing,
396 text_colors.ptr, textz,
397 box_colors.ptr, box_patterns.ptr,
398 box_scales.ptr, box_line_widths.ptr,
399 line_colors.ptr, line_styles.ptr,
401 symbol_colors.ptr, symbol_scales.ptr,
402 symbol_numbers.ptr, symbolsz );
409 assert( n == y.length,
"plline(): Arrays must be of same length!" );
417 assert( n == y.length,
"plline3(): Arrays must be of same length!" );
418 assert( n == z.length,
"plline3(): Arrays must be of same length!" );
426 c_plmap( mapform, toStringz( type ), minlong, maxlong, minlat, maxlat );
433 const PLINT[] plotentries )
436 c_plmapline( mapform, toStringz( name ), minx, maxx, miny, maxy, plotentries.ptr, n );
445 c_plmapstring( mapform, toStringz( name ), toStringz(
string ), minx, maxx, miny, maxy, plotentries.ptr, n );
453 c_plmaptex( mapform, toStringz( name ), dx, dy, just, toStringz( text ), minx, maxx, miny, maxy, plotentry );
458 const PLINT[] plotentries )
461 c_plmapfill( mapform, toStringz( name ), minx, maxx, miny, maxy, plotentries.ptr, n );
469 assert( nx == x.length,
"plmesh(): Arrays must be of same length!" );
470 assert( ny == y.length,
"plmesh(): Arrays must be of same length!" );
481 assert( nx == x.length,
"plmeshc(): Arrays must be of same length!" );
482 assert( ny == y.length,
"plmeshc(): Arrays must be of same length!" );
490 c_plmtex( toStringz( side ), disp, pos, just, toStringz( text ) );
496 c_plmtex3( toStringz( side ), disp, pos, just, toStringz( text ) );
505 assert( nx == x.length,
"plot3d(): Arrays must be of same length!" );
506 assert( ny == y.length,
"plot3d(): Arrays must be of same length!" );
517 assert( nx == x.length,
"plot3dc(): Arrays must be of same length!" );
518 assert( ny == y.length,
"plot3dc(): Arrays must be of same length!" );
531 assert( nx == x.length,
"plot3dcl(): Arrays must be of same length!" );
532 assert( ny == y.length,
"plot3dcl(): Arrays must be of same length!" );
535 ixstart, ixn, indexymin.ptr, indexymax.ptr );
542 assert( nlin == del.length,
"plpat(): Arrays must be of same length!" );
543 c_plpat( nlin, inc.ptr, del.ptr );
550 assert( n == y.length,
"plpoin(): Arrays must be of same length!" );
558 assert( n == y.length,
"plpoin3(): Arrays must be of same length!" );
559 assert( n == z.length,
"plpoin3(): Arrays must be of same length!" );
560 c_plpoin3( n, x.ptr, y.ptr, z.ptr, code );
567 assert( n == y.length,
"plstring(): Arrays must be of same length!" );
568 c_plstring( n, x.ptr, y.ptr, toStringz( text ) );
575 assert( n == y.length,
"plstring3(): Arrays must be of same length!" );
576 assert( n == z.length,
"plstring3(): Arrays must be of same length!" );
577 c_plstring3( n, x.ptr, y.ptr, z.ptr, toStringz( text ) );
584 assert( n == y.length,
"plpoly3(): Arrays must be of same length!" );
585 assert( n == z.length,
"plpoly3(): Arrays must be of same length!" );
586 assert( n - 1 == draw.length,
"plpoly3(): Array draw must be of same length then other arrays minus 1!" );
587 c_plpoly3( n, x.ptr, y.ptr, z.ptr, draw.ptr, ifcc );
593 c_plptex( x, y, dx, dy, just, toStringz( text ) );
600 c_plptex3( wx, wy, wz, dx, dy, dz, sx, sy, sz, just, toStringz( text ) );
612 c_plspal1( toStringz( filename ), interpolate );
619 assert( ncol0 == g.length,
"plscmap0(): Arrays must be of same length!" );
620 assert( ncol0 == b.length,
"plscmap0(): Arrays must be of same length!" );
628 assert( ncol0 == g.length,
"plscmap0a(): Arrays must be of same length!" );
629 assert( ncol0 == b.length,
"plscmap0a(): Arrays must be of same length!" );
630 assert( ncol0 == a.length,
"plscmap0a(): Arrays must be of same length!" );
638 assert( ncol1 == g.length,
"plscmap1(): Arrays must be of same length!" );
639 assert( ncol1 == b.length,
"plscmap1(): Arrays must be of same length!" );
647 assert( ncol1 == g.length,
"plscmap1a(): Arrays must be of same length!" );
648 assert( ncol1 == b.length,
"plscmap1a(): Arrays must be of same length!" );
649 assert( ncol1 == a.length,
"plscmap1a(): Arrays must be of same length!" );
659 assert( npts == coord1.length,
"plscmap1l(): Arrays must be of same length!" );
660 assert( npts == coord2.length,
"plscmap1l(): Arrays must be of same length!" );
661 assert( npts == coord3.length,
"plscmap1l(): Arrays must be of same length!" );
662 if ( alt_hue_path != null )
664 assert( npts - 1 == alt_hue_path.length,
"plscmap1l(): Array alt_hue_path must be of same length then other arrays minus 1!" );
665 c_plscmap1l( itype, npts, intensity.ptr, coord1.ptr, coord2.ptr, coord3.ptr, alt_hue_path.ptr );
668 c_plscmap1l( itype, npts, intensity.ptr, coord1.ptr, coord2.ptr, coord3.ptr, null );
679 assert( npts == coord1.length,
"plscmap1la(): Arrays must be of same length!" );
680 assert( npts == coord2.length,
"plscmap1la(): Arrays must be of same length!" );
681 assert( npts == coord3.length,
"plscmap1la(): Arrays must be of same length!" );
682 assert( npts == a.length,
"plscmap1la(): Arrays must be of same length!" );
683 if ( alt_hue_path != null )
685 assert( npts - 1 == alt_hue_path.length,
"plscmap1la(): Array alt_hue_path must be of same length then other arrays minus 1!" );
686 c_plscmap1la( itype, npts, intensity.ptr, coord1.ptr, coord2.ptr, coord3.ptr, a.ptr, alt_hue_path.ptr );
689 c_plscmap1la( itype, npts, intensity.ptr, coord1.ptr, coord2.ptr, coord3.ptr, a.ptr, null );
714 c_plshade(
convert_array( a ), nx, ny, defined, left, right, bottom, top, shade_min, shade_max, sh_cmap,
715 sh_color, sh_width, min_color, min_width, max_color, max_width, &
c_plfill,
716 rectangular, pltr, pltr_data );
726 c_plshades(
convert_array( a ), nx, ny, defined, xmin, xmax, ymin, ymax, clevel.ptr, cast(
PLINT) clevel.length,
727 fill_width, cont_color, cont_width, &
c_plfill, rectangular, pltr, pltr_data );
739 c.nx = cast(
PLINT) cgrid.xg.length;
741 c.ny = cast(
PLINT) cgrid.yg.length;
743 c.nz = cast(
PLINT) cgrid.zg.length;
745 c_plshades(
convert_array( a ), nx, ny, defined, xmin, xmax, ymin, ymax, clevel.ptr, cast(
PLINT) clevel.length,
746 fill_width, cont_color, cont_width, &
c_plfill, rectangular, &
pltr1, &c );
760 c2.nx = cast(
PLINT) cgrid2.xg.length;
761 c2.ny = cast(
PLINT) cgrid2.xg[0].length;
764 assert( c2.nx == cgrid2.yg.length,
"plcont(): Arrays must be of same length!" );
765 assert( c2.ny == cgrid2.yg[0].length,
"plcont(): Arrays must be of same length!" );
769 assert( c2.nx == cgrid2.zg.length,
"plcont(): Arrays must be of same length!" );
770 assert( c2.ny == cgrid2.zg[0].length,
"plcont(): Arrays must be of same length!" );
773 c_plshades(
convert_array( a ), nx, ny, defined, xmin, xmax, ymin, ymax, clevel.ptr, cast(
PLINT) clevel.length,
774 fill_width, cont_color, cont_width, &
c_plfill, rectangular, &
pltr2, &c2 );
780 c_plstart( toStringz( devname ), nx, ny );
787 string labx,
string laby,
string labtop )
789 assert( 4 == colline.length,
"plstripc(): Arrays must be of length 4!" );
790 assert( 4 == styline.length,
"plstripc(): Arrays must be of length 4!" );
791 assert( 4 == legline.length,
"plstripc(): Arrays must be of length 4!" );
793 immutable(
char ) * *leglinez = array( map!toStringz( legline ) ).ptr;
799 c_plstripc(
id, toStringz( xspec ), toStringz( yspec ), xmin, xmax, xjump, ymin, ymax,
800 xlpos, ylpos, y_ascl, acc, colbox, collab, colline.ptr, styline.ptr, leglinez,
801 toStringz( labx ), toStringz( laby ), toStringz( labtop ) );
813 valuemin, valuemax, pltr, pltr_data );
825 c.nx = cast(
PLINT) cgrid.
xg.length;
827 c.ny = cast(
PLINT) cgrid.
yg.length;
829 c.nz = cast(
PLINT) cgrid.
zg.length;
832 valuemin, valuemax, &
pltr1, &c );
846 c2.nx = cast(
PLINT) cgrid2.
xg.length;
847 c2.ny = cast(
PLINT) cgrid2.
xg[0].length;
850 assert( c2.nx == cgrid2.
yg.length,
"plcont(): Arrays must be of same length!" );
851 assert( c2.ny == cgrid2.
yg[0].length,
"plcont(): Arrays must be of same length!" );
855 assert( c2.nx == cgrid2.
zg.length,
"plcont(): Arrays must be of same length!" );
856 assert( c2.ny == cgrid2.
zg[0].length,
"plcont(): Arrays must be of same length!" );
860 valuemin, valuemax, &
pltr2, &c2 );
871 c_plimage(
convert_array( idata ), nx, ny, xmin, xmax, ymin, ymax, zmin, zmax, Dxmin, Dxmax,
879 assert( nms == space.length,
"plstyl(): Arrays must be of same length!" );
880 c_plstyl( nms, mark.ptr, space.ptr );
888 assert( nx == x.length,
"plsurf3d(): Arrays must be of same length!" );
889 assert( ny == y.length,
"plsurf3d(): Arrays must be of same length!" );
904 assert( nx == x.length,
"plsurf3d(): Arrays must be of same length!" );
905 assert( ny == y.length,
"plsurf3d(): Arrays must be of same length!" );
908 ixstart, ixn, indexymin.ptr, indexymax.ptr );
915 assert( n == y.length,
"plsym(): Arrays must be of same length!" );
916 c_plsym( n, x.ptr, y.ptr, code );
983 return c_plsetopt( toStringz( opt ), toStringz( optarg ) );
1152 int function(
char *,
char *,
void * ) handler;
1589 const char *yopt,
PLFLT ytick,
PLINT nysub );
1607 void c_plbox3(
const char *xopt,
const char *xlabel,
PLFLT xtick,
PLINT nsubx,
const char *yopt,
1608 const char *ylabel,
PLFLT ytick,
PLINT nsuby,
const char *zopt,
const char *zlabel,
1826 void c_pllab(
const char *xlabel,
const char *ylabel,
const char *tlabel );
1875 PLFLT text_justification,
1876 PLINT *text_colors,
const char **text,
1882 PLINT *symbol_numbers,
const char **symbols );
1891 PLINT n_labels,
const PLINT *label_opts,
const char **label,
1892 PLINT n_axes,
const char ** axis_opts,
1894 const PLINT *n_values,
const PLFLT **values );
1915 const PLINT *plotentries,
PLINT nplotentries );
1919 const char *
name,
const char *
string,
1921 const PLINT *plotentries,
PLINT nplotentries );
1932 const PLINT *plotentries,
PLINT nplotentries );
2025 void c_plptex3(
PLFLT wx,
PLFLT wy,
PLFLT wz,
PLFLT dx,
PLFLT dy,
PLFLT dz,
PLFLT sx,
PLFLT sy,
PLFLT sz,
PLFLT just,
const char *text );
2103 void c_plsdev(
const char *devname );
2159 void plfshade(
PLFLT function(
PLINT,
PLINT,
PLPointer ) f2eval,
PLPointer f2eval_data,
PLFLT function(
PLINT,
PLINT,
PLPointer ) c2eval,
PLPointer c2eval_data,
PLINT nx,
PLINT ny,
PLFLT left,
PLFLT right,
PLFLT bottom,
PLFLT top,
PLFLT shade_min,
PLFLT shade_max,
PLINT sh_cmap,
PLFLT sh_color,
PLFLT sh_width,
PLINT min_color,
PLFLT min_width,
PLINT max_color,
PLFLT max_width,
void function(
PLINT,
PLFLT *,
PLFLT * )
fill,
PLBOOL rectangular,
void function(
PLFLT,
PLFLT,
PLFLT *,
PLFLT *,
PLPointer ) pltr,
PLPointer pltr_data );
2214 void c_plstripc(
PLINT *
id,
const char *xspec,
const char *yspec,
PLFLT xmin,
PLFLT xmax,
PLFLT xjump,
PLFLT ymin,
PLFLT ymax,
PLFLT xlpos,
PLFLT ylpos,
PLBOOL y_ascl,
PLBOOL acc,
PLINT colbox,
PLINT collab,
PLINT *colline,
PLINT *styline,
const char **legline,
const char *labx,
const char *laby,
const char *labtop );
2288 void c_plw3d(
PLFLT basex,
PLFLT basey,
PLFLT height,
PLFLT xmin0,
PLFLT xmax0,
PLFLT ymin0,
PLFLT ymax0,
PLFLT zmin0,
PLFLT zmax0,
PLFLT alt,
PLFLT az );
2307 void plgFileDevs(
char ***p_menustr,
char ***p_devname,
int *p_ndev );
2311 void plgDevs(
char ***p_menustr,
char ***p_devname,
int *p_ndev );
2323 void plsbopH(
void function(
void *,
int * ) handler,
void *handler_data );
2327 void plseopH(
void function(
void *,
int * ) handler,
void *handler_data );
2335 void plsexit(
int function(
const char * ) handler );
2339 void plsabort(
void function(
const char * ) handler );
2394 void plSetUsage(
const char *program_string,
const char *usage_string );
2410 void plgesc(
char *p_esc );
2427 void plGetName(
const char *dir,
const char *subdir,
const char *filename,
char **filespec );
void c_plaxes(PLFLT x0, PLFLT y0, const char *xopt, PLFLT xtick, PLINT nxsub, const char *yopt, PLFLT ytick, PLINT nysub)
void c_plgfam(PLINT *p_fam, PLINT *p_num, PLINT *p_bmax)
void c_plconfigtime(PLFLT scale, PLFLT offset1, PLFLT offset2, PLINT ccontrol, PLBOOL ifbtime_offset, PLINT year, PLINT month, PLINT day, PLINT hour, PLINT min, PLFLT sec)
alias c_plgdidev plgdidev
void c_pl_setcontlabelformat(PLINT lexp, PLINT sigdig)
void c_plptex3(PLFLT wx, PLFLT wy, PLFLT wz, PLFLT dx, PLFLT dy, PLFLT dz, PLFLT sx, PLFLT sy, PLFLT sz, PLFLT just, const char *text)
void c_plscmap1l(PLBOOL itype, PLINT npts, PLFLT *intensity, PLFLT *coord1, PLFLT *coord2, PLFLT *coord3, PLBOOL *alt_hue_path)
void c_plgcolbga(PLINT *r, PLINT *g, PLINT *b, PLFLT *a)
#define PL_PARSE_NOPROGRAM
void(* ct_func)(PLFLT, PLFLT, PLFLT *, PLFLT *, PLPointer)
void c_plgchr(PLFLT *p_def, PLFLT *p_ht)
void c_plsfci(PLUNICODE fci)
void c_plpsty(PLINT patt)
void c_plssym(PLFLT def, PLFLT scale)
void c_plmkstrm(PLINT *p_strm)
#define PLESC_DOUBLEBUFFERING_ENABLE
void pldid2pc(PLFLT *xmin, PLFLT *ymin, PLFLT *xmax, PLFLT *ymax)
#define PLESC_DOUBLEBUFFERING_QUERY
void c_plsmin(PLFLT def, PLFLT scale)
void c_plstripd(PLINT id)
void c_plscol0a(PLINT icol0, PLINT r, PLINT g, PLINT b, PLFLT a)
alias c_plgdiplt plgdiplt
void c_plgver(char *p_ver)
#define PL_COLORBAR_LABEL_TOP
void c_plstripc(PLINT *id, const char *xspec, const char *yspec, PLFLT xmin, PLFLT xmax, PLFLT xjump, PLFLT ymin, PLFLT ymax, PLFLT xlpos, PLFLT ylpos, PLBOOL y_ascl, PLBOOL acc, PLINT colbox, PLINT collab, PLINT *colline, PLINT *styline, const char **legline, const char *labx, const char *laby, const char *labtop)
PLDLLIMPEXP void c_plmap(PLMAPFORM_callback mapform, PLCHAR_VECTOR name, PLFLT minx, PLFLT maxx, PLFLT miny, PLFLT maxy)
void c_plgdidev(PLFLT *p_mar, PLFLT *p_aspect, PLFLT *p_jx, PLFLT *p_jy)
void c_plsstrm(PLINT strm)
void c_plcol0(PLINT icol0)
void c_plcont(PLFLT **f, PLINT nx, PLINT ny, PLINT kx, PLINT lx, PLINT ky, PLINT ly, PLFLT *clevel, PLINT nlevel, void function(PLFLT, PLFLT, PLFLT *, PLFLT *, PLPointer) pltr, PLPointer pltr_data)
void c_plscmap1la(PLBOOL itype, PLINT npts, PLFLT *intensity, PLFLT *coord1, PLFLT *coord2, PLFLT *coord3, PLFLT *a, PLBOOL *alt_hue_path)
void c_plspause(PLBOOL pause)
void c_plot3dc(PLFLT *x, PLFLT *y, PLFLT **z, PLINT nx, PLINT ny, PLINT opt, PLFLT *clevel, PLINT nlevel)
void c_plenv(PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax, PLINT just, PLINT axis)
alias c_plreplot plreplot
#define PLESC_DOUBLEBUFFERING
void mapform(PLINT n, PLFLT *x, PLFLT *y)
void c_plline3(PLINT n, PLFLT *x, PLFLT *y, PLFLT *z)
void c_plhlsrgb(PLFLT h, PLFLT l, PLFLT s, PLFLT *p_r, PLFLT *p_g, PLFLT *p_b)
void c_plscompression(PLINT compression)
void c_plot3dcl(PLFLT *x, PLFLT *y, PLFLT **z, PLINT nx, PLINT ny, PLINT opt, PLFLT *clevel, PLINT nlevel, PLINT ixstart, PLINT ixn, PLINT *indexymin, PLINT *indexymax)
void c_plgcmap1_range(PLFLT *min_color, PLFLT *max_color)
alias plMinMax2dGrid MinMax2dGrid
void c_plstring(PLINT n, PLFLT *x, PLFLT *y, const char *text)
void pltr2f(PLFLT x, PLFLT y, PLFLT *tx, PLFLT *ty, void *pltr_data)
void plseopH(void function(void *, int *) handler, void *handler_data)
void c_plschr(PLFLT def, PLFLT scale)
void c_plszax(PLINT digmax, PLINT digits)
#define PL_POSITION_BOTTOM
void c_plot3d(PLFLT *x, PLFLT *y, PLFLT **z, PLINT nx, PLINT ny, PLINT opt, PLBOOL side)
alias c_plsdiori plsdiori
void plmapline(PLMAPFORM_callback mapform, PLCHAR_VECTOR name, PLFLT minx, PLFLT maxx, PLFLT miny, PLFLT maxy, PLINT_VECTOR plotentries, PLINT nplotentries)
#define PL_LEGEND_BACKGROUND
char * plFindCommand(const char *fn)
void c_plgcompression(PLINT *compression)
alias c_plscmap1n plscmap1n
void plFree2dGrid(PLFLT **f, PLINT nx, PLINT ny)
void c_plsmaj(PLFLT def, PLFLT scale)
PLDLLIMPEXP void c_plmeridians(PLMAPFORM_callback mapform, PLFLT dlong, PLFLT dlat, PLFLT minlong, PLFLT maxlong, PLFLT minlat, PLFLT maxlat)
void c_plmeshc(PLFLT *x, PLFLT *y, PLFLT **z, PLINT nx, PLINT ny, PLINT opt, PLFLT *clevel, PLINT nlevel)
void c_plwidth(PLFLT width)
alias c_plcpstrm plcpstrm
void c_plscmap1n(PLINT ncol1)
void c_plgradient(PLINT n, PLFLT *x, PLFLT *y, PLFLT angle)
PLDLLIMPEXP void c_plmaptex(PLMAPFORM_callback mapform, PLCHAR_VECTOR name, PLFLT dx, PLFLT dy, PLFLT just, PLCHAR_VECTOR text, PLFLT minx, PLFLT maxx, PLFLT miny, PLFLT maxy, PLINT plotentry)
#define PL_COLORBAR_ORIENT_TOP
void c_plspal0(const char *filename)
alias c_plhlsrgb plhlsrgb
void c_plarc(PLFLT x, PLFLT y, PLFLT a, PLFLT b, PLFLT angle1, PLFLT angle2, PLFLT rotate, PLBOOL fill)
#define PL_COLORBAR_BACKGROUND
alias c_pl_setcontlabelformat pl_setcontlabelformat
#define PL_FCI_HEXPOWER_MASK
alias c_plfontld plfontld
#define PL_PARSE_NODELETE
void c_plrgb1(PLINT r, PLINT g, PLINT b)
void c_plstransform(ct_func coordinate_transform=null, PLPointer coordinate_transform_data=null)
#define PL_FCI_IMPOSSIBLE
void c_plscmap0a(PLINT *r, PLINT *g, PLINT *b, PLFLT *a, PLINT ncol0)
void plSetUsage(const char *program_string, const char *usage_string)
void c_plpath(PLINT n, PLFLT x1, PLFLT y1, PLFLT x2, PLFLT y2)
alias c_plfamadv plfamadv
void plmaptex(PLMAPFORM_callback mapform, PLCHAR_VECTOR name, PLFLT dx, PLFLT dy, PLFLT just, PLCHAR_VECTOR text, PLFLT minx, PLFLT maxx, PLFLT miny, PLFLT maxy, PLINT plotentry)
void c_plscol0(PLINT icol0, PLINT r, PLINT g, PLINT b)
void plsbopH(void function(void *, int *) handler, void *handler_data)
alias c_plstripa plstripa
void pltr1(PLFLT x, PLFLT y, PLFLT *tx, PLFLT *ty, PLPointer pltr_data)
void c_plscmap0(PLINT *r, PLINT *g, PLINT *b, PLINT ncol0)
alias c_plmkstrm plmkstrm
void c_plfont(PLINT ifont)
void plsabort(void function(const char *) handler)
void plGetName(const char *dir, const char *subdir, const char *filename, char **filespec)
void c_plline(PLINT n, PLFLT *x, PLFLT *y)
void c_plsurf3dl(PLFLT *x, PLFLT *y, PLFLT **z, PLINT nx, PLINT ny, PLINT opt, PLFLT *clevel, PLINT nlevel, PLINT ixstart, PLINT ixn, PLINT *indexymin, PLINT *indexymax)
alias c_plsdidev plsdidev
alias c_plcalc_world plcalc_world
#define PL_COLORBAR_SHADE
PLINT plGetCursor(PLGraphicsIn *gin)
void c_plprec(PLINT setp, PLINT prec)
void c_plbox(const char *xopt, PLFLT xtick, PLINT nxsub, const char *yopt, PLFLT ytick, PLINT nysub)
#define PL_HIST_NOSCALING
void c_plgriddata(PLFLT *x, PLFLT *y, PLFLT *z, PLINT npts, PLFLT *xg, PLINT nptsx, PLFLT *yg, PLINT nptsy, PLFLT **zg, PLINT type, PLFLT data)
void c_plsdiori(PLFLT rot)
PLINT c_plsetopt(const char *opt, const char *optarg)
void c_plpoin3(PLINT n, PLFLT *x, PLFLT *y, PLFLT *z, PLINT code)
alias c_plgdiori plgdiori
void plsKeyEH(void function(PLGraphicsIn *, void *, int *) KeyEH, void *KeyEH_data)
void c_pllegend(PLFLT *p_legend_width, PLFLT *p_legend_height, PLINT opt, PLINT position, PLFLT x, PLFLT y, PLFLT plot_width, PLINT bg_color, PLINT bb_color, PLINT bb_style, PLINT nrow, PLINT ncolumn, PLINT nlegend, PLINT *opt_array, PLFLT text_offset, PLFLT text_scale, PLFLT text_spacing, PLFLT text_justification, PLINT *text_colors, const char **text, PLINT *box_colors, PLINT *box_patterns, PLFLT *box_scales, PLFLT *box_line_widths, PLINT *line_colors, PLINT *line_styles, PLFLT *line_widths, PLINT *symbol_colors, PLFLT *symbol_scales, PLINT *symbol_numbers, const char **symbols)
alias c_plrgbhls plrgbhls
void plsError(PLINT *errcode, const char *errmsg)
#define PL_LEGEND_BOUNDING_BOX
void plsButtonEH(void function(PLGraphicsIn *, void *, int *) ButtonEH, void *ButtonEH_data)
alias c_plmeridians plmeridians
void c_plmtex3(const char *side, PLFLT disp, PLFLT pos, PLFLT just, const char *text)
alias c_plstripd plstripd
void plsexit(int function(const char *) handler)
void c_plsfnam(const char *fnam)
void plMinMax2dGrid(PLFLT **f, PLINT nx, PLINT ny, PLFLT *fmax, PLFLT *fmin)
alias c_plsdiplt plsdiplt
#define PL_POSITION_OUTSIDE
#define PL_POSITION_RIGHT
void c_plgzax(PLINT *p_digmax, PLINT *p_digits)
void(* fill_func)(PLINT, const PLFLT *, const PLFLT *)
void c_plsurf3d(PLFLT *x, PLFLT *y, PLFLT **z, PLINT nx, PLINT ny, PLINT opt, PLFLT *clevel, PLINT nlevel)
void c_plgdev(char *p_dev)
void c_plgvpw(PLFLT *p_xmin, PLFLT *p_xmax, PLFLT *p_ymin, PLFLT *p_ymax)
void c_plsvpa(PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax)
void plfcont(PLFLT function(PLINT, PLINT, PLPointer) f2eval, PLPointer f2eval_data, PLINT nx, PLINT ny, PLINT kx, PLINT lx, PLINT ky, PLINT ly, PLFLT *clevel, PLINT nlevel, void function(PLFLT, PLFLT, PLFLT *, PLFLT *, PLPointer) pltr, PLPointer pltr_data)
#define PL_COLORBAR_LABEL_LEFT
#define PL_LEGEND_ROW_MAJOR
void pldip2dc(PLFLT *xmin, PLFLT *ymin, PLFLT *xmax, PLFLT *ymax)
void c_plcolorbar(PLFLT *p_colorbar_width, PLFLT *p_colorbar_height, PLINT opt, PLINT position, PLFLT x, PLFLT y, PLFLT x_length, PLFLT y_length, PLINT bg_color, PLINT bb_color, PLINT bb_style, PLFLT low_cap_color, PLFLT high_cap_color, PLINT cont_color, PLFLT cont_width, PLINT n_labels, const PLINT *label_opts, const char **label, PLINT n_axes, const char **axis_opts, const PLFLT *ticks, const PLINT *sub_ticks, const PLINT *n_values, const PLFLT **values)
void c_plgfnam(char *fnam)
void c_plgxax(PLINT *p_digmax, PLINT *p_digits)
void c_plscolbg(PLINT r, PLINT g, PLINT b)
void c_plstar(PLINT nx, PLINT ny)
void c_plptex(PLFLT x, PLFLT y, PLFLT dx, PLFLT dy, PLFLT just, const char *text)
void c_plscmap1_range(PLFLT min_color, PLFLT max_color)
void c_plfill3(PLINT n, PLFLT *x, PLFLT *y, PLFLT *z)
void c_plw3d(PLFLT basex, PLFLT basey, PLFLT height, PLFLT xmin0, PLFLT xmax0, PLFLT ymin0, PLFLT ymax0, PLFLT zmin0, PLFLT zmax0, PLFLT alt, PLFLT az)
void c_plbin(PLINT nbin, PLFLT *x, PLFLT *y, PLINT opt)
void c_plmtex(const char *side, PLFLT disp, PLFLT pos, PLFLT just, const char *text)
void(* pltr_func)(PLFLT, PLFLT, PLFLT *, PLFLT *, PLPointer)
#define PL_COLORBAR_SHADE_LABEL
void c_plsxax(PLINT digmax, PLINT digits)
void c_plhist(PLINT n, PLFLT *data, PLFLT datmin, PLFLT datmax, PLINT nbin, PLINT opt)
void c_plsdiplz(PLFLT xmin, PLFLT ymin, PLFLT xmax, PLFLT ymax)
alias c_plscmap1_range plscmap1_range
#define PL_COLORBAR_ORIENT_BOTTOM
#define PL_POSITION_VIEWPORT
void c_plbtime(PLINT *year, PLINT *month, PLINT *day, PLINT *hour, PLINT *min, PLFLT *sec, PLFLT ctime)
#define PL_COLORBAR_GRADIENT
PLINT plTranslateCursor(PLGraphicsIn *gin)
void c_plstripa(PLINT id, PLINT pen, PLFLT x, PLFLT y)
void c_plcpstrm(PLINT iplsr, PLBOOL flags)
alias c_plscompression plscompression
void c_plcol1(PLFLT col1)
alias c_plspause plspause
#define PLESC_SET_COMPRESSION
void c_plmesh(PLFLT *x, PLFLT *y, PLFLT **z, PLINT nx, PLINT ny, PLINT opt)
void plfshade(PLFLT function(PLINT, PLINT, PLPointer) f2eval, PLPointer f2eval_data, PLFLT function(PLINT, PLINT, PLPointer) c2eval, PLPointer c2eval_data, PLINT nx, PLINT ny, PLFLT left, PLFLT right, PLFLT bottom, PLFLT top, PLFLT shade_min, PLFLT shade_max, PLINT sh_cmap, PLFLT sh_color, PLFLT sh_width, PLINT min_color, PLFLT min_width, PLINT max_color, PLFLT max_width, void function(PLINT, PLFLT *, PLFLT *) fill, PLBOOL rectangular, void function(PLFLT, PLFLT, PLFLT *, PLFLT *, PLPointer) pltr, PLPointer pltr_data)
void c_plsyax(PLINT digmax, PLINT digits)
void c_plgspa(PLFLT *xmin, PLFLT *xmax, PLFLT *ymin, PLFLT *ymax)
#define PL_POSITION_SUBPAGE
PLDLLIMPEXP void c_plmapstring(PLMAPFORM_callback mapform, PLCHAR_VECTOR name, PLCHAR_VECTOR string, PLFLT minx, PLFLT maxx, PLFLT miny, PLFLT maxy, PLINT_VECTOR plotentries, PLINT nplotentries)
alias c_plslabelfunc plslabelfunc
alias c_plconfigtime plconfigtime
void c_plrgbhls(PLFLT r, PLFLT g, PLFLT b, PLFLT *p_h, PLFLT *p_l, PLFLT *p_s)
#define PL_COLORBAR_CAP_NONE
void c_plcalc_world(PLFLT rx, PLFLT ry, PLFLT *wx, PLFLT *wy, PLINT *window)
void c_plstyl(PLINT nms, PLINT *mark, PLINT *space)
void c_plssub(PLINT nx, PLINT ny)
void c_plsdev(const char *devname)
void c_plvpas(PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax, PLFLT aspect)
void c_plvpor(PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax)
alias c_plglevel plglevel
alias c_plscolor plscolor
alias c_plsdiplz plsdiplz
void c_plsdidev(PLFLT mar, PLFLT aspect, PLFLT jx, PLFLT jy)
void plgFileDevs(char ***p_menustr, char ***p_devname, int *p_ndev)
void pltr2p(PLFLT x, PLFLT y, PLFLT *tx, PLFLT *ty, PLPointer pltr_data)
void pltr2(PLFLT x, PLFLT y, PLFLT *tx, PLFLT *ty, PLPointer pltr_data)
#define PL_COLORBAR_ORIENT_LEFT
#define PL_HIST_IGNORE_OUTLIERS
void c_plgcolbg(PLINT *r, PLINT *g, PLINT *b)
void c_pl_setcontlabelparam(PLFLT offset, PLFLT size, PLFLT spacing, PLINT active)
void c_pljoin(PLFLT x1, PLFLT y1, PLFLT x2, PLFLT y2)
void c_plgvpd(PLFLT *p_xmin, PLFLT *p_xmax, PLFLT *p_ymin, PLFLT *p_ymax)
PLFLT plf2evalr(PLINT ix, PLINT iy, PLPointer plf2eval_data)
void c_plsfam(PLINT fam, PLINT num, PLINT bmax)
void plsxwin(PLINT window_id)
alias c_plscolbga plscolbga
void c_plglevel(PLINT *p_level)
#define PL_POSITION_INSIDE
alias c_plscolbg plscolbg
void c_plsdimap(PLINT dimxmin, PLINT dimxmax, PLINT dimymin, PLINT dimymax, PLFLT dimxpmm, PLFLT dimypmm)
void c_plimage(PLFLT **idata, PLINT nx, PLINT ny, PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax, PLFLT zmin, PLFLT zmax, PLFLT Dxmin, PLFLT Dxmax, PLFLT Dymin, PLFLT Dymax)
void c_plctime(PLINT year, PLINT month, PLINT day, PLINT hour, PLINT min, PLFLT sec, PLFLT *ctime)
void c_plshade(PLFLT **a, PLINT nx, PLINT ny, PLINT function(PLFLT, PLFLT) defined, PLFLT left, PLFLT right, PLFLT bottom, PLFLT top, PLFLT shade_min, PLFLT shade_max, PLINT sh_cmap, PLFLT sh_color, PLFLT sh_width, PLINT min_color, PLFLT min_width, PLINT max_color, PLFLT max_width, void function(PLINT, PLFLT *, PLFLT *) fill, PLBOOL rectangular, void function(PLFLT, PLFLT, PLFLT *, PLFLT *, PLPointer) pltr, PLPointer pltr_data)
void(* mapform_func)(PLINT, PLFLT *, PLFLT *)
void c_plrgb(PLFLT r, PLFLT g, PLFLT b)
void c_plstart(const char *devname, PLINT nx, PLINT ny)
PLDLLIMPEXP void c_plmapfill(PLMAPFORM_callback mapform, PLCHAR_VECTOR name, PLFLT minx, PLFLT maxx, PLFLT miny, PLFLT maxy, PLINT_VECTOR plotentries, PLINT nplotentries)
void c_plgfont(PLINT *p_family, PLINT *p_style, PLINT *p_weight)
alias c_plxormod plxormod
void c_plsfont(PLINT family, PLINT style, PLINT weight)
void plmapfill(PLMAPFORM_callback mapform, PLCHAR_VECTOR name, PLFLT minx, PLFLT maxx, PLFLT miny, PLFLT maxy, PLINT_VECTOR plotentries, PLINT nplotentries)
void c_plsdiplt(PLFLT xmin, PLFLT ymin, PLFLT xmax, PLFLT ymax)
void c_plfontld(PLINT fnt)
void c_plpoin(PLINT n, PLFLT *x, PLFLT *y, PLINT code)
PLFLT plGetFlt(const char *s)
static PLOptionTable options[]
void c_pllightsource(PLFLT x, PLFLT y, PLFLT z)
PLFLT plf2eval(PLINT ix, PLINT iy, PLPointer plf2eval_data)
void c_pltext()
Switches to text screen.
void c_plimagefr(PLFLT **idata, PLINT nx, PLINT ny, PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax, PLFLT zmin, PLFLT zmax, PLFLT valuemin, PLFLT valuemax, void function(PLFLT, PLFLT, PLFLT *, PLFLT *, PLPointer), PLPointer pltr_data)
PLFLT plf2eval2(PLINT ix, PLINT iy, PLPointer plf2eval_data)
#define PL_COLORBAR_CAP_HIGH
alias c_plscol0a plscol0a
void c_plxormod(PLBOOL mode, PLBOOL *status)
void c_pltimefmt(const char *fmt)
void c_plhls(PLFLT h, PLFLT l, PLFLT s)
void c_plsym(PLINT n, PLFLT *x, PLFLT *y, PLINT code)
#define PL_COLORBAR_ORIENT_RIGHT
void c_plsmem(PLINT maxx, PLINT maxy, void *plotmem)
PLINT plMergeOpts(PLOptionTable *options, const char *name, const char **notes)
void c_plscmap1(PLINT *r, PLINT *g, PLINT *b, PLINT ncol1)
void c_plgdiori(PLFLT *p_rot)
#define PL_LEGEND_TEXT_LEFT
#define PLESC_DOUBLEBUFFERING_DISABLE
void pltr0(PLFLT x, PLFLT y, PLFLT *tx, PLFLT *ty, PLPointer pltr_data)
void c_plscmap1a(PLINT *r, PLINT *g, PLINT *b, PLFLT *a, PLINT ncol1)
void c_plspage(PLFLT xp, PLFLT yp, PLINT xleng, PLINT yleng, PLINT xoff, PLINT yoff)
alias plAlloc2dGrid Alloc2dGrid
#define PL_COLORBAR_CAP_LOW
void c_plslabelfunc(void function(PLINT, PLFLT, char *, PLINT, PLPointer) labelfunc, PLPointer label_data)
void c_plspal1(const char *filename, PLBOOL interpolate)
void plAlloc2dGrid(PLFLT ***f, PLINT nx, PLINT ny)
PLFLT ** convert_array(PLFLT[][] a)
void c_plgyax(PLINT *p_digmax, PLINT *p_digits)
void plgDevs(char ***p_menustr, char ***p_devname, int *p_ndev)
void c_plerrx(PLINT n, PLFLT *xmin, PLFLT *xmax, PLFLT *y)
alias c_plstransform plstransform
void c_plgpage(PLFLT *p_xp, PLFLT *p_yp, PLINT *p_xleng, PLINT *p_yleng, PLINT *p_xoff, PLINT *p_yoff)
alias c_plgcolbga plgcolbga
void c_plerry(PLINT n, PLFLT *x, PLFLT *ymin, PLFLT *ymax)
alias c_pllightsource pllightsource
alias c_plgradient plgrdient
void c_plgstrm(PLINT *p_strm)
void pltr0f(PLFLT x, PLFLT y, PLFLT *tx, PLFLT *ty, void *pltr_data)
void c_plwind(PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax)
alias c_plgcolbg plgcolbg
void c_pllab(const char *xlabel, const char *ylabel, const char *tlabel)
void plmap(PLMAPFORM_callback mapform, PLCHAR_VECTOR name, PLFLT minx, PLFLT maxx, PLFLT miny, PLFLT maxy)
void c_plenv0(PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax, PLINT just, PLINT axis)
PLDLLIMPEXP void c_plmapline(PLMAPFORM_callback mapform, PLCHAR_VECTOR name, PLFLT minx, PLFLT maxx, PLFLT miny, PLFLT maxy, PLINT_VECTOR plotentries, PLINT nplotentries)
#define PL_LEGEND_COLOR_BOX
#define PL_FCI_HEXDIGIT_MASK
void c_plscmap0n(PLINT ncol0)
alias c_plgcol0a plgcol0a
#define PL_COLORBAR_LABEL_BOTTOM
void pl_cmd(PLINT op, void *ptr)
void c_plvasp(PLFLT aspect)
#define PL_PARSE_OVERRIDE
alias c_pl_setcontlabelparam pl_setcontlabelparam
void c_plgdiplt(PLFLT *p_xmin, PLFLT *p_ymin, PLFLT *p_xmax, PLFLT *p_ymax)
void c_plscolbga(PLINT r, PLINT g, PLINT b, PLFLT a)
void c_plscolor(PLINT color)
#define PL_COLORBAR_BOUNDING_BOX
void c_plgcol0(PLINT icol0, PLINT *r, PLINT *g, PLINT *b)
void c_plstring3(PLINT n, PLFLT *x, PLFLT *y, PLFLT *z, const char *text)
void c_plpat(PLINT nlin, PLINT *inc, PLINT *del)
void c_plgcol0a(PLINT icol0, PLINT *r, PLINT *g, PLINT *b, PLFLT *a)
alias c_plsdimap plsdimap
#define PL_COLORBAR_IMAGE
void c_plshades(PLFLT **a, PLINT nx, PLINT ny, PLINT function(PLFLT, PLFLT) defined, PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax, PLFLT *clevel, PLINT nlevel, PLFLT fill_width, PLINT cont_color, PLFLT cont_width, void function(PLINT, PLFLT *, PLFLT *) fill, PLBOOL rectangular, void function(PLFLT, PLFLT, PLFLT *, PLFLT *, PLPointer) pltr, PLPointer pltr_data)
void plmapstring(PLMAPFORM_callback mapform, PLCHAR_VECTOR name, PLCHAR_VECTOR string, PLFLT minx, PLFLT maxx, PLFLT miny, PLFLT maxy, PLINT_VECTOR plotentries, PLINT nplotentries)
void c_plgfci(PLUNICODE *pfci)
void c_plpoly3(PLINT n, PLFLT *x, PLFLT *y, PLFLT *z, PLBOOL *draw, PLBOOL ifcc)
PLINT plFindName(char *p)
#define PL_FCI_HEXPOWER_IMPOSSIBLE
#define PL_COLORBAR_LABEL_RIGHT
void c_plbox3(const char *xopt, const char *xlabel, PLFLT xtick, PLINT nsubx, const char *yopt, const char *ylabel, PLFLT ytick, PLINT nsuby, const char *zopt, const char *zlabel, PLFLT ztick, PLINT nsubz)
alias c_plgcompression plgcompression
PLINT c_plparseopts(int *p_argc, char **argv, PLINT mode)
void c_plvect(PLFLT **u, PLFLT **v, PLINT nx, PLINT ny, PLFLT scale, void function(PLFLT, PLFLT, PLFLT *, PLFLT *, PLPointer) pltr, PLPointer pltr_data)
void c_plsvect(PLFLT *arrowx, PLFLT *arrowy, PLINT npts, PLBOOL fill)
PLDLLIMPEXP_CXX void fill(PLINT n, const PLFLT *x, const PLFLT *y)
alias c_plscmap0n plscmap0n
void c_plfill(PLINT n, PLFLT *x, PLFLT *y)
alias plFree2dGrid Free2dGrid
PLINT plGetInt(const char *s)