4private import std.string;
5private import std.array;
6private import std.algorithm;
7private import std.stdio;
8private 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 );
352void pllab(
string xlabel,
string ylabel,
string tlabel )
354 c_pllab( toStringz( xlabel ), toStringz( ylabel ), toStringz( tlabel ) );
364 PLFLT text_justification,
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 )
453 c_plmaptex(
mapform, toStringz(
name ), dx, dy, just, toStringz(
text ), minx, maxx, miny, maxy, plotentry );
458 const PLINT[] plotentries )
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!" );
575 assert( n == y.length,
"plstring3(): Arrays must be of same length!" );
576 assert( n == z.length,
"plstring3(): Arrays must be of same length!" );
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 );
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 ) );
1235 int function(
char *,
char *,
void * ) handler;
1643 const char *yopt,
PLFLT ytick,
PLINT nysub );
1656 const char *ylabel,
PLFLT ytick,
PLINT nsuby,
const char *zopt,
const char *zlabel,
1855void c_pllab(
const char *xlabel,
const char *ylabel,
const char *tlabel );
1864 PLFLT text_justification,
1871 PLINT *symbol_numbers,
const char **symbols );
1880 PLINT n_labels,
const PLINT *label_opts,
const char **label,
1881 PLINT n_axes,
const char ** axis_opts,
1883 const PLINT *n_values,
const PLFLT **values );
1904 const PLINT *plotentries,
PLINT nplotentries );
1908 const char *
name,
const char *
string,
1910 const PLINT *plotentries,
PLINT nplotentries );
1921 const PLINT *plotentries,
PLINT nplotentries );
1998void 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 );
2124void 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 );
2179void 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 );
2253void c_plw3d(
PLFLT basex,
PLFLT basey,
PLFLT height,
PLFLT xmin0,
PLFLT xmax0,
PLFLT ymin0,
PLFLT ymax0,
PLFLT zmin0,
PLFLT zmax0,
PLFLT alt,
PLFLT az );
2276void plgDevs(
char ***p_menustr,
char ***p_devname,
int *p_ndev );
2288void plsbopH(
void function(
void *,
int * ) handler,
void *handler_data );
2292void plseopH(
void function(
void *,
int * ) handler,
void *handler_data );
2300void plsexit(
int function(
const char * ) handler );
2359void plSetUsage(
const char *program_string,
const char *usage_string );
2392void plGetName(
const char *dir,
const char *subdir,
const char *filename,
char **filespec );
const PL_DRAWMODE_DEFAULT
void c_plglevel(PLINT *p_level)
const PL_COLORBAR_LABEL_TOP
const PL_COLORBAR_ORIENT_LEFT
const PL_FCI_HEXPOWER_IMPOSSIBLE
void c_plarc(PLFLT x, PLFLT y, PLFLT a, PLFLT b, PLFLT angle1, PLFLT angle2, PLFLT rotate, PLBOOL fill)
void c_plgdidev(PLFLT *p_mar, PLFLT *p_aspect, PLFLT *p_jx, PLFLT *p_jy)
void c_plscmap0n(PLINT ncol0)
void c_plgfont(PLINT *p_family, PLINT *p_style, PLINT *p_weight)
const PL_LEGEND_COLOR_BOX
void c_plgzax(PLINT *p_digmax, PLINT *p_digits)
void c_plenv0(PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax, PLINT just, PLINT axis)
void c_pllightsource(PLFLT x, PLFLT y, PLFLT z)
void c_plstripa(PLINT id, PLINT pen, PLFLT x, PLFLT y)
void c_plgcolbga(PLINT *r, PLINT *g, PLINT *b, PLFLT *a)
void pltr1(PLFLT x, PLFLT y, PLFLT *tx, PLFLT *ty, PLPointer pltr_data)
void c_plmkstrm(PLINT *p_strm)
void c_plschr(PLFLT def, PLFLT scale)
void c_plsdiplt(PLFLT xmin, PLFLT ymin, PLFLT xmax, PLFLT ymax)
void pltr2(PLFLT x, PLFLT y, PLFLT *tx, PLFLT *ty, PLPointer pltr_data)
void c_plgdiori(PLFLT *p_rot)
const PL_COLORBAR_BACKGROUND
const PLESC_DOUBLEBUFFERING_ENABLE
void c_plstransform(ct_func coordinate_transform=null, PLPointer coordinate_transform_data=null)
const PL_FCI_HEXPOWER_MASK
void c_plscmap1_range(PLFLT min_color, PLFLT max_color)
void c_plfill(PLINT n, PLFLT *x, PLFLT *y)
void c_plsvpa(PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax)
void c_plgvpd(PLFLT *p_xmin, PLFLT *p_xmax, PLFLT *p_ymin, PLFLT *p_ymax)
alias c_plcalc_world plcalc_world
void c_plcol1(PLFLT col1)
void c_plbtime(PLINT *year, PLINT *month, PLINT *day, PLINT *hour, PLINT *min, PLFLT *sec, PLFLT ctime)
void c_plfontld(PLINT fnt)
const PL_LEGEND_BOUNDING_BOX
void c_plslabelfunc(void function(PLINT, PLFLT, char *, PLINT, PLPointer) labelfunc, PLPointer label_data)
const PL_COLORBAR_LABEL_RIGHT
const PL_LEGEND_BACKGROUND
void c_plcol0(PLINT icol0)
const PL_COLORBAR_GRADIENT
void c_plscol0a(PLINT icol0, PLINT r, PLINT g, PLINT b, PLFLT a)
void c_plpsty(PLINT patt)
const PL_COLORBAR_CAP_HIGH
const PL_COLORBAR_ORIENT_BOTTOM
void c_plxormod(PLBOOL mode, PLBOOL *status)
void c_plfont(PLINT ifont)
void c_plgspa(PLFLT *xmin, PLFLT *xmax, PLFLT *ymin, PLFLT *ymax)
void c_plscolbga(PLINT r, PLINT g, PLINT b, PLFLT a)
void c_plmeridians(void function(PLINT, PLFLT *, PLFLT *) mapform, PLFLT dlong, PLFLT dlat, PLFLT minlong, PLFLT maxlong, PLFLT minlat, PLFLT maxlat)
void c_plsfont(PLINT family, PLINT style, PLINT weight)
alias c_plgcolbga plgcolbga
void c_plspage(PLFLT xp, PLFLT yp, PLINT xleng, PLINT yleng, PLINT xoff, PLINT yoff)
void pltr0f(PLFLT x, PLFLT y, PLFLT *tx, PLFLT *ty, void *pltr_data)
alias c_plgdidev plgdidev
void c_plcalc_world(PLFLT rx, PLFLT ry, PLFLT *wx, PLFLT *wy, PLINT *window)
alias c_plsdiori plsdiori
alias c_plsdidev plsdidev
void c_plscmap1n(PLINT ncol1)
alias c_pl_setcontlabelparam pl_setcontlabelparam
void c_plcpstrm(PLINT iplsr, PLBOOL flags)
const PL_LEGEND_TEXT_LEFT
alias c_plgradient plgrdient
void c_plscompression(PLINT compression)
const PL_FCI_HEXDIGIT_MASK
const PL_HIST_IGNORE_OUTLIERS
alias c_plsdimap plsdimap
alias c_plsdiplz plsdiplz
const PLESC_DOUBLEBUFFERING
void c_plszax(PLINT digmax, PLINT digits)
const PLESC_APPEND_BUFFER
void c_plstar(PLINT nx, PLINT ny)
const PL_POSITION_OUTSIDE
void c_plgyax(PLINT *p_digmax, PLINT *p_digits)
alias c_plmeridians plmeridians
void c_plsyax(PLINT digmax, PLINT digits)
void c_plstripd(PLINT id)
const PLESC_SET_COMPRESSION
void c_plsfci(PLUNICODE fci)
void c_plsmem(PLINT maxx, PLINT maxy, void *plotmem)
const PL_LEGEND_ROW_MAJOR
void c_plctime(PLINT year, PLINT month, PLINT day, PLINT hour, PLINT min, PLFLT sec, PLFLT *ctime)
alias c_plconfigtime plconfigtime
void c_plscolor(PLINT color)
PLFLT ** convert_array(PLFLT[][] a)
void c_plgfci(PLUNICODE *pfci)
void c_plgcompression(PLINT *compression)
const PLESC_START_RASTERIZE
const PLESC_END_RASTERIZE
void c_plgcol0a(PLINT icol0, PLINT *r, PLINT *g, PLINT *b, PLFLT *a)
void c_plhlsrgb(PLFLT h, PLFLT l, PLFLT s, PLFLT *p_r, PLFLT *p_g, PLFLT *p_b)
void c_plvpas(PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax, PLFLT aspect)
const PL_COLORBAR_BOUNDING_BOX
void c_plprec(PLINT setp, PLINT prec)
void c_plgdiplt(PLFLT *p_xmin, PLFLT *p_ymin, PLFLT *p_xmax, PLFLT *p_ymax)
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_plrgbhls(PLFLT r, PLFLT g, PLFLT b, PLFLT *p_h, PLFLT *p_l, PLFLT *p_s)
void c_plenv(PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax, PLINT just, PLINT axis)
const PL_POSITION_SUBPAGE
const PL_DRAWMODE_UNKNOWN
void c_plgvpw(PLFLT *p_xmin, PLFLT *p_xmax, PLFLT *p_ymin, PLFLT *p_ymax)
alias c_plstripa plstripa
void c_plspause(PLBOOL pause)
void c_plgradient(PLINT n, PLFLT *x, PLFLT *y, PLFLT angle)
void c_plvpor(PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax)
const PLESC_DOUBLEBUFFERING_DISABLE
void c_plsdimap(PLINT dimxmin, PLINT dimxmax, PLINT dimymin, PLINT dimymax, PLFLT dimxpmm, PLFLT dimypmm)
alias c_plsdiplt plsdiplt
alias c_plrgbhls plrgbhls
void c_plsdiori(PLFLT rot)
const PL_COLORBAR_LABEL_LEFT
const PL_COLORBAR_ORIENT_RIGHT
void c_plwind(PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax)
alias c_plscmap1_range plscmap1_range
alias c_plgcol0a plgcol0a
alias c_plgdiplt plgdiplt
void c_plwidth(PLFLT width)
void c_pljoin(PLFLT x1, PLFLT y1, PLFLT x2, PLFLT y2)
const PLESC_FLUSH_REMAINING_BUFFER
void c_plscol0(PLINT icol0, PLINT r, PLINT g, PLINT b)
void c_plpath(PLINT n, PLFLT x1, PLFLT y1, PLFLT x2, PLFLT y2)
void c_plsdidev(PLFLT mar, PLFLT aspect, PLFLT jx, PLFLT jy)
void c_plgcol0(PLINT icol0, PLINT *r, PLINT *g, PLINT *b)
void c_plgchr(PLFLT *p_def, PLFLT *p_ht)
alias c_plscol0a plscol0a
const PL_COLORBAR_ORIENT_TOP
void c_pl_setcontlabelparam(PLFLT offset, PLFLT size, PLFLT spacing, PLINT active)
void c_plssub(PLINT nx, PLINT ny)
void c_plsstrm(PLINT strm)
void c_plgxax(PLINT *p_digmax, PLINT *p_digits)
void c_plssym(PLFLT def, PLFLT scale)
void c_plsfam(PLINT fam, PLINT num, PLINT bmax)
const PLESC_IMPORT_BUFFER
void c_plsdiplz(PLFLT xmin, PLFLT ymin, PLFLT xmax, PLFLT ymax)
const PL_COLORBAR_SHADE_LABEL
alias c_pllightsource pllightsource
void c_plgfam(PLINT *p_fam, PLINT *p_num, PLINT *p_bmax)
void c_plgpage(PLFLT *p_xp, PLFLT *p_yp, PLINT *p_xleng, PLINT *p_yleng, PLINT *p_xoff, PLINT *p_yoff)
const PL_COLORBAR_CAP_NONE
void c_plsmaj(PLFLT def, PLFLT scale)
void c_pl_setcontlabelformat(PLINT lexp, PLINT sigdig)
alias c_plhlsrgb plhlsrgb
void c_plvasp(PLFLT aspect)
const PLESC_DOUBLEBUFFERING_QUERY
void c_plgcolbg(PLINT *r, PLINT *g, PLINT *b)
const PL_DRAWMODE_REPLACE
alias c_plscolbga plscolbga
const PL_COLORBAR_CAP_LOW
alias c_plgdiori plgdiori
void c_plsxax(PLINT digmax, PLINT digits)
void c_plsmin(PLFLT def, PLFLT scale)
const PL_COLORBAR_LABEL_BOTTOM
void c_plscolbg(PLINT r, PLINT g, PLINT b)
const PL_POSITION_VIEWPORT
void c_plgstrm(PLINT *p_strm)
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)
void c_plarc(PLFLT x, PLFLT y, PLFLT a, PLFLT b, PLFLT angle1, PLFLT angle2, PLFLT rotate, PLBOOL fill)
PLINT c_plsetopt(PLCHAR_VECTOR opt, PLCHAR_VECTOR opt_arg)
PLINT c_plparseopts(int *p_argc, char **argv, PLINT mode)
PLINT plMergeOpts(PLOptionTable *options, PLCHAR_VECTOR name, PLCHAR_VECTOR *notes)
void plSetUsage(PLCHAR_VECTOR program_string, PLCHAR_VECTOR usage_string)
void c_plslabelfunc(PLLABEL_FUNC_callback label_func, PLPointer label_data)
void c_plbox(PLCHAR_VECTOR xopt, PLFLT xtick, PLINT nxsub, PLCHAR_VECTOR yopt, PLFLT ytick, PLINT nysub)
void c_plbox3(PLCHAR_VECTOR xopt, PLCHAR_VECTOR xlabel, PLFLT xtick, PLINT nxsub, PLCHAR_VECTOR yopt, PLCHAR_VECTOR ylabel, PLFLT ytick, PLINT nysub, PLCHAR_VECTOR zopt, PLCHAR_VECTOR zlabel, PLFLT ztick, PLINT nzsub)
void c_plaxes(PLFLT x0, PLFLT y0, PLCHAR_VECTOR xopt, PLFLT xtick, PLINT nxsub, PLCHAR_VECTOR yopt, PLFLT ytick, PLINT nysub)
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)
PLFLT plf2eval(PLINT ix, PLINT iy, PLPointer plf2eval_data)
void c_pl_setcontlabelparam(PLFLT offset, PLFLT size, PLFLT spacing, PLINT active)
void c_plcont(PLFLT_MATRIX f, PLINT nx, PLINT ny, PLINT kx, PLINT lx, PLINT ky, PLINT ly, PLFLT_VECTOR clevel, PLINT nlevel, PLTRANSFORM_callback pltr, PLPointer pltr_data)
PLFLT plf2evalr(PLINT ix, PLINT iy, PLPointer plf2eval_data)
void plfcont(PLF2EVAL_callback f2eval, PLPointer f2eval_data, PLINT nx, PLINT ny, PLINT kx, PLINT lx, PLINT ky, PLINT ly, PLFLT_VECTOR clevel, PLINT nlevel, PLTRANSFORM_callback pltr, PLPointer pltr_data)
PLFLT plf2eval2(PLINT ix, PLINT iy, PLPointer plf2eval_data)
void pltr2f(PLFLT x, PLFLT y, PLFLT *tx, PLFLT *ty, void *pltr_data)
void c_pl_setcontlabelformat(PLINT lexp, PLINT sigdig)
void pltr1(PLFLT x, PLFLT y, PLFLT *tx, PLFLT *ty, PLPointer pltr_data)
void pltr0(PLFLT x, PLFLT y, PLFLT *tx, PLFLT *ty, PLPointer PL_UNUSED(pltr_data))
void plgDevs(const char ***p_menustr, const char ***p_devname, int *p_ndev)
void plsButtonEH(void(*ButtonEH)(PLGraphicsIn *, void *, int *), void *ButtonEH_data)
void c_plglevel(PLINT *p_level)
void c_plgdidev(PLFLT *p_mar, PLFLT *p_aspect, PLFLT *p_jx, PLFLT *p_jy)
void c_plscompression(PLINT compression)
void pldip2dc(PLFLT *xmin, PLFLT *ymin, PLFLT *xmax, PLFLT *ymax)
void c_plsfam(PLINT fam, PLINT num, PLINT bmax)
void c_plgver(char *p_ver)
void c_plstart(PLCHAR_VECTOR devname, PLINT nx, PLINT ny)
void c_plszax(PLINT digmax, PLINT digits)
void c_plsdidev(PLFLT mar, PLFLT aspect, PLFLT jx, PLFLT jy)
void c_plsdiplt(PLFLT xmin, PLFLT ymin, PLFLT xmax, PLFLT ymax)
void c_plstar(PLINT nx, PLINT ny)
void c_plssub(PLINT nx, PLINT ny)
void c_plstransform(PLTRANSFORM_callback coordinate_transform, PLPointer coordinate_transform_data)
void c_plsdimap(PLINT dimxmin, PLINT dimxmax, PLINT dimymin, PLINT dimymax, PLFLT dimxpmm, PLFLT dimypmm)
void c_plsmem(PLINT maxx, PLINT maxy, void *plotmem)
void c_plgchr(PLFLT *p_def, PLFLT *p_ht)
void c_plgvpw(PLFLT *p_xmin, PLFLT *p_xmax, PLFLT *p_ymin, PLFLT *p_ymax)
void plsxwin(PLINT window_id)
void c_plgzax(PLINT *p_digmax, PLINT *p_digits)
void c_plgdev(char *p_dev)
void plsError(PLINT *errcode, char *errmsg)
void c_plgfnam(char *fnam)
void c_plgfam(PLINT *p_fam, PLINT *p_num, PLINT *p_bmax)
void c_plwidth(PLFLT width)
void c_plgxax(PLINT *p_digmax, PLINT *p_digits)
void c_plcpstrm(PLINT iplsr, PLINT flags)
void c_plgfci(PLUNICODE *p_fci)
void c_plgcompression(PLINT *compression)
void c_plsstrm(PLINT strm)
void c_plgstrm(PLINT *p_strm)
void plsbopH(void(*handler)(void *, int *), void *handler_data)
void c_plsyax(PLINT digmax, PLINT digits)
void c_plprec(PLINT setp, PLINT prec)
void c_plgdiplt(PLFLT *p_xmin, PLFLT *p_ymin, PLFLT *p_xmax, PLFLT *p_ymax)
void pldid2pc(PLFLT *xmin, PLFLT *ymin, PLFLT *xmax, PLFLT *ymax)
void plseopH(void(*handler)(void *, int *), void *handler_data)
void c_plsfci(PLUNICODE fci)
void c_plsxax(PLINT digmax, PLINT digits)
void c_plsdiori(PLFLT rot)
void c_plspage(PLFLT xp, PLFLT yp, PLINT xleng, PLINT yleng, PLINT xoff, PLINT yoff)
void c_plmkstrm(PLINT *p_strm)
void c_plgpage(PLFLT *p_xp, PLFLT *p_yp, PLINT *p_xleng, PLINT *p_yleng, PLINT *p_xoff, PLINT *p_yoff)
void c_plfontld(PLINT ifont)
void plgFileDevs(const char ***p_menustr, const char ***p_devname, int *p_ndev)
void c_plgyax(PLINT *p_digmax, PLINT *p_digits)
void c_plsdiplz(PLFLT xmin, PLFLT ymin, PLFLT xmax, PLFLT ymax)
void c_plsdev(PLCHAR_VECTOR devname)
void c_plsfnam(PLCHAR_VECTOR fnam)
void c_plgvpd(PLFLT *p_xmin, PLFLT *p_xmax, PLFLT *p_ymin, PLFLT *p_ymax)
void plsKeyEH(void(*KeyEH)(PLGraphicsIn *, void *, int *), void *KeyEH_data)
void c_plgdiori(PLFLT *p_rot)
void c_plscmap1la(PLINT itype, PLINT npts, PLFLT_VECTOR intensity, PLFLT_VECTOR coord1, PLFLT_VECTOR coord2, PLFLT_VECTOR coord3, PLFLT_VECTOR alpha, PLINT_VECTOR alt_hue_path)
void c_plgcolbga(PLINT *r, PLINT *g, PLINT *b, PLFLT *alpha)
void c_plgcmap1_range(PLFLT *min_color, PLFLT *max_color)
void plsexit(int(*handler)(PLCHAR_VECTOR))
void c_plxormod(PLINT mode, PLINT *status)
PLFLT plGetFlt(PLCHAR_VECTOR s)
void c_plgcol0(PLINT icol0, PLINT *r, PLINT *g, PLINT *b)
void c_plspal1(PLCHAR_VECTOR filename, PLBOOL interpolate)
void c_plcol0(PLINT icol0)
void c_plscmap1_range(PLFLT min_color, PLFLT max_color)
void c_plscmap1l(PLINT itype, PLINT npts, PLFLT_VECTOR intensity, PLFLT_VECTOR coord1, PLFLT_VECTOR coord2, PLFLT_VECTOR coord3, PLINT_VECTOR alt_hue_path)
void c_pltext(void)
Switches to text screen.
void c_plscolbga(PLINT r, PLINT g, PLINT b, PLFLT alpha)
void c_plcol1(PLFLT col1)
void c_plscmap0a(PLINT_VECTOR r, PLINT_VECTOR g, PLINT_VECTOR b, PLFLT_VECTOR alpha, PLINT ncol0)
void c_plrgbhls(PLFLT r, PLFLT g, PLFLT b, PLFLT *p_h, PLFLT *p_l, PLFLT *p_s)
char * plFindCommand(PLCHAR_VECTOR fn)
PLINT plFindName(char *p)
void plGetName(PLCHAR_VECTOR dir, PLCHAR_VECTOR subdir, PLCHAR_VECTOR filename, char **filespec)
void pl_cmd(PLINT op, void *ptr)
void c_plscmap0(PLINT_VECTOR r, PLINT_VECTOR g, PLINT_VECTOR b, PLINT ncol0)
void c_plgcol0a(PLINT icol0, PLINT *r, PLINT *g, PLINT *b, PLFLT *alpha)
void c_plscmap1(PLINT_VECTOR r, PLINT_VECTOR g, PLINT_VECTOR b, PLINT ncol1)
void c_plscol0a(PLINT icol0, PLINT r, PLINT g, PLINT b, PLFLT alpha)
void c_plscol0(PLINT icol0, PLINT r, PLINT g, PLINT b)
void c_plseed(unsigned int seed)
void c_plscmap1a(PLINT_VECTOR r, PLINT_VECTOR g, PLINT_VECTOR b, PLFLT_VECTOR alpha, PLINT ncol1)
void c_plscolbg(PLINT r, PLINT g, PLINT b)
void c_plscolor(PLINT color)
void c_plscmap0n(PLINT ncol0)
void c_plscmap1n(PLINT ncol1)
void c_plspal0(PLCHAR_VECTOR filename)
void plsabort(void(*handler)(PLCHAR_VECTOR))
void c_plgcolbg(PLINT *r, PLINT *g, PLINT *b)
PLINT plGetInt(PLCHAR_VECTOR s)
void c_plhlsrgb(PLFLT h, PLFLT l, PLFLT s, PLFLT *p_r, PLFLT *p_g, PLFLT *p_b)
void c_plfill3(PLINT n, PLFLT_VECTOR x, PLFLT_VECTOR y, PLFLT_VECTOR z)
void c_plfill(PLINT n, PLFLT_VECTOR x, PLFLT_VECTOR y)
void c_plgradient(PLINT n, PLFLT_VECTOR x, PLFLT_VECTOR y, PLFLT angle)
void c_plgriddata(PLFLT_VECTOR x, PLFLT_VECTOR y, PLFLT_VECTOR z, PLINT npts, PLFLT_VECTOR xg, PLINT nptsx, PLFLT_VECTOR yg, PLINT nptsy, PLFLT **zg, PLINT type, PLFLT data)
void c_plhist(PLINT n, PLFLT_VECTOR data, PLFLT datmin, PLFLT datmax, PLINT nbin, PLINT flags)
void c_plbin(PLINT nbin, PLFLT_VECTOR x, PLFLT_VECTOR y, PLINT flags)
void c_plimagefr(PLFLT_MATRIX idata, PLINT nx, PLINT ny, PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax, PLFLT zmin, PLFLT zmax, PLFLT valuemin, PLFLT valuemax, PLTRANSFORM_callback pltr, PLPointer pltr_data)
void c_plimage(PLFLT_MATRIX 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_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_VECTOR opt_array, PLFLT text_offset, PLFLT text_scale, PLFLT text_spacing, PLFLT text_justification, PLINT_VECTOR text_colors, PLCHAR_MATRIX text, PLINT_VECTOR box_colors, PLINT_VECTOR box_patterns, PLFLT_VECTOR box_scales, PLFLT_VECTOR box_line_widths, PLINT_VECTOR line_colors, PLINT_VECTOR line_styles, PLFLT_VECTOR line_widths, PLINT_VECTOR symbol_colors, PLFLT_VECTOR symbol_scales, PLINT_VECTOR symbol_numbers, PLCHAR_MATRIX symbols)
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, PLINT_VECTOR label_opts, PLCHAR_MATRIX labels, PLINT n_axes, PLCHAR_MATRIX axis_opts, PLFLT_VECTOR ticks, PLINT_VECTOR sub_ticks, PLINT_VECTOR n_values, PLFLT_MATRIX values)
void c_plpoly3(PLINT n, PLFLT_VECTOR x, PLFLT_VECTOR y, PLFLT_VECTOR z, PLBOOL_VECTOR draw, PLBOOL ifcc)
void c_plline(PLINT n, PLFLT_VECTOR x, PLFLT_VECTOR y)
void c_plline3(PLINT n, PLFLT_VECTOR x, PLFLT_VECTOR y, PLFLT_VECTOR z)
void c_plpath(PLINT n, PLFLT x1, PLFLT y1, PLFLT x2, PLFLT y2)
void c_plstyl(PLINT nms, PLINT_VECTOR mark, PLINT_VECTOR space)
void c_pljoin(PLFLT x1, PLFLT y1, PLFLT x2, PLFLT y2)
void plFree2dGrid(PLFLT **f, PLINT nx, PLINT PL_UNUSED(ny))
void plMinMax2dGrid(PLFLT_MATRIX f, PLINT nx, PLINT ny, PLFLT *fnmax, PLFLT *fnmin)
void plAlloc2dGrid(PLFLT ***f, PLINT nx, PLINT ny)
void c_plsurf3d(PLFLT_VECTOR x, PLFLT_VECTOR y, PLFLT_MATRIX z, PLINT nx, PLINT ny, PLINT opt, PLFLT_VECTOR clevel, PLINT nlevel)
void c_plmeshc(PLFLT_VECTOR x, PLFLT_VECTOR y, PLFLT_MATRIX z, PLINT nx, PLINT ny, PLINT opt, PLFLT_VECTOR clevel, PLINT nlevel)
void c_plot3dcl(PLFLT_VECTOR x, PLFLT_VECTOR y, PLFLT_MATRIX z, PLINT nx, PLINT ny, PLINT opt, PLFLT_VECTOR clevel, PLINT nlevel, PLINT indexxmin, PLINT indexxmax, PLINT_VECTOR indexymin, PLINT_VECTOR indexymax)
void c_plsurf3dl(PLFLT_VECTOR x, PLFLT_VECTOR y, PLFLT_MATRIX z, PLINT nx, PLINT ny, PLINT opt, PLFLT_VECTOR clevel, PLINT nlevel, PLINT indexxmin, PLINT indexxmax, PLINT_VECTOR indexymin, PLINT_VECTOR indexymax)
void c_plmesh(PLFLT_VECTOR x, PLFLT_VECTOR y, PLFLT_MATRIX z, PLINT nx, PLINT ny, PLINT opt)
void c_plot3d(PLFLT_VECTOR x, PLFLT_VECTOR y, PLFLT_MATRIX z, PLINT nx, PLINT ny, PLINT opt, PLBOOL side)
void c_plot3dc(PLFLT_VECTOR x, PLFLT_VECTOR y, PLFLT_MATRIX z, PLINT nx, PLINT ny, PLINT opt, PLFLT_VECTOR clevel, PLINT nlevel)
void c_pllightsource(PLFLT x, PLFLT y, PLFLT z)
PLINT plTranslateCursor(PLGraphicsIn *plg)
PLINT plGetCursor(PLGraphicsIn *plg)
void c_plcalc_world(PLFLT rx, PLFLT ry, PLFLT *wx, PLFLT *wy, PLINT *window)
void c_plgspa(PLFLT *xmin, PLFLT *xmax, PLFLT *ymin, PLFLT *ymax)
PLDLLIMPEXP void c_plmeridians(PLMAPFORM_callback mapform, PLFLT dlong, PLFLT dlat, PLFLT minlong, PLFLT maxlong, PLFLT minlat, PLFLT maxlat)
PLDLLIMPEXP void c_plmapfill(PLMAPFORM_callback mapform, PLCHAR_VECTOR name, PLFLT minx, PLFLT maxx, PLFLT miny, PLFLT maxy, PLINT_VECTOR plotentries, PLINT nplotentries)
PLDLLIMPEXP void c_plmapline(PLMAPFORM_callback mapform, PLCHAR_VECTOR name, PLFLT minx, PLFLT maxx, PLFLT miny, PLFLT maxy, PLINT_VECTOR plotentries, PLINT nplotentries)
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)
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)
PLDLLIMPEXP void c_plmap(PLMAPFORM_callback mapform, PLCHAR_VECTOR name, PLFLT minx, PLFLT maxx, PLFLT miny, PLFLT maxy)
plgriddata(x, y, z, xg, yg, type, data)\n\ \n\ \n\ This function is used in example 21.\n\ \n\ \n\ \n\ SYNOPSIS:\n\ \n\ plgriddata(x, y, z, npts, xg, nptsx, yg, nptsy, zg, type, data)\n\ \n\ ARGUMENTS:\n\ \n\ x(PLFLT_VECTOR, input) : The input x vector.\n\ \n\ y(PLFLT_VECTOR, input) : The input y vector.\n\ \n\ z(PLFLT_VECTOR, input) : The input z vector. Each triple x[i],\n\ y[i], z[i] represents one data sample coordinate.\n\ \n\ npts(PLINT, input) : The number of data samples in the x, y and z\n\ vectors.\n\ \n\ xg(PLFLT_VECTOR, input) : A vector that specifies the grid spacing\n\ in the x direction. Usually xg has nptsx equally spaced values\n\ from the minimum to the maximum values of the x input vector.\n\ \n\ nptsx(PLINT, input) : The number of points in the xg vector.\n\ \n\ yg(PLFLT_VECTOR, input) : A vector that specifies the grid spacing\n\ in the y direction. Similar to the xg parameter.\n\ \n\ nptsy(PLINT, input) : The number of points in the yg vector.\n\ \n\ zg(PLFLT_NC_MATRIX, output) : The matrix of interpolated results\n\ where data lies in the grid specified by xg and yg. Therefore the\n\ zg matrix must be dimensioned\n\ nptsx by\n\ nptsy.\n\ \n\ type(PLINT, input) : The type of grid interpolation algorithm to\n\ use, which can be:GRID_CSA:Bivariate Cubic Spline approximation\n\ GRID_DTLI:Delaunay Triangulation Linear Interpolation\n\ GRID_NNI:Natural Neighbors Interpolation\n\ GRID_NNIDW:Nearest Neighbors Inverse Distance Weighted\n\ GRID_NNLI:Nearest Neighbors Linear Interpolation\n\ GRID_NNAIDW: Nearest Neighbors Around Inverse Distance\n\ Weighted\n\ For details of the algorithms read the source file plgridd.c.\n\ \n\ data(PLFLT, input) : Some gridding algorithms require extra data,\n\ which can be specified through this argument. Currently, for\n\ algorithm:GRID_NNIDW, data specifies the number of neighbors to\n\ use, the lower the value, the noisier(more local) the\n\ approximation is.\n\ GRID_NNLI, data specifies what a thin triangle is, in the\n\ range[1. .. 2.]. High values enable the usage of very thin\n\ triangles for interpolation, possibly resulting in error in\n\ the approximation.\n\ GRID_NNI, only weights greater than data will be accepted. If\n\ 0, all weights will be accepted.\n\ " zg
static const char shade or gradient plots n n or n gradient plots(See pllegend for similar functionality for creating\n\ legends with discrete elements). The arguments of plcolorbar provide\n\ control over the location and size of the color bar as well as the\n\ location and characteristics of the elements(most of which are\n\ optional) within that color bar. The resulting color bar is clipped\n\ at the boundaries of the current subpage.(N.B. the adopted coordinate\n\ system used for some of the parameters is defined in the documentation\n\ of the position parameter.)\n\ \n\ Redacted form reads the desired grid location from the input vectors n xg[nptsx] and yg[nptsy]
void(* mapform_func)(PLINT, PLFLT *, PLFLT *)
void(* pltr_func)(PLFLT, PLFLT, PLFLT *, PLFLT *, PLPointer)
void(* ct_func)(PLFLT, PLFLT, PLFLT *, PLFLT *, PLPointer)
void(* fill_func)(PLINT, const PLFLT *, const PLFLT *)
void c_plsmin(PLFLT def, PLFLT scale)
void c_plssym(PLFLT def, PLFLT scale)
void c_plpsty(PLINT patt)
void c_plpat(PLINT nlin, PLINT_VECTOR inc, PLINT_VECTOR del)
void c_plschr(PLFLT def, PLFLT scale)
void c_plsmaj(PLFLT def, PLFLT scale)
void plfshade(PLF2EVAL_callback f2eval, PLPointer f2eval_data, PLF2EVAL_callback c2eval, PLPointer c2eval_data, PLINT nx, PLINT ny, PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax, 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, PLFILL_callback fill, PLINT rectangular, PLTRANSFORM_callback pltr, PLPointer pltr_data)
void c_plshades(PLFLT_MATRIX a, PLINT nx, PLINT ny, PLDEFINED_callback defined, PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax, PLFLT_VECTOR clevel, PLINT nlevel, PLFLT fill_width, PLINT cont_color, PLFLT cont_width, PLFILL_callback fill, PLINT rectangular, PLTRANSFORM_callback pltr, PLPointer pltr_data)
void c_plshade(PLFLT_MATRIX a, PLINT nx, PLINT ny, PLDEFINED_callback defined, PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax, 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, PLFILL_callback fill, PLINT rectangular, PLTRANSFORM_callback pltr, PLPointer pltr_data)
void c_plstripd(PLINT id)
void c_plstripc(PLINT *id, PLCHAR_VECTOR xspec, PLCHAR_VECTOR yspec, PLFLT xmin, PLFLT xmax, PLFLT xjump, PLFLT ymin, PLFLT ymax, PLFLT xlpos, PLFLT ylpos, PLINT y_ascl, PLINT acc, PLINT colbox, PLINT collab, PLINT_VECTOR colline, PLINT_VECTOR styline, PLCHAR_MATRIX legline, PLCHAR_VECTOR labx, PLCHAR_VECTOR laby, PLCHAR_VECTOR labtop)
void c_plstripa(PLINT id, PLINT p, PLFLT x, PLFLT y)
void c_plpoin3(PLINT n, PLFLT_VECTOR x, PLFLT_VECTOR y, PLFLT_VECTOR z, PLINT code)
void c_plsym(PLINT n, PLFLT_VECTOR x, PLFLT_VECTOR y, PLINT code)
void c_plmtex3(PLCHAR_VECTOR side, PLFLT disp, PLFLT pos, PLFLT just, PLCHAR_VECTOR text)
void c_plpoin(PLINT n, PLFLT_VECTOR x, PLFLT_VECTOR y, PLINT code)
void c_plstring(PLINT n, PLFLT_VECTOR x, PLFLT_VECTOR y, PLCHAR_VECTOR string)
void c_plstring3(PLINT n, PLFLT_VECTOR x, PLFLT_VECTOR y, PLFLT_VECTOR z, PLCHAR_VECTOR string)
void c_pllab(PLCHAR_VECTOR xlabel, PLCHAR_VECTOR ylabel, PLCHAR_VECTOR tlabel)
void c_plfont(PLINT ifont)
void c_plgfont(PLINT *p_family, PLINT *p_style, PLINT *p_weight)
void c_plmtex(PLCHAR_VECTOR side, PLFLT disp, PLFLT pos, PLFLT just, PLCHAR_VECTOR text)
void c_plsfont(PLINT family, PLINT style, PLINT weight)
void c_plptex3(PLFLT wx, PLFLT wy, PLFLT wz, PLFLT dx, PLFLT dy, PLFLT dz, PLFLT sx, PLFLT sy, PLFLT sz, PLFLT just, PLCHAR_VECTOR text)
void c_plptex(PLFLT wx, PLFLT wy, PLFLT dx, PLFLT dy, PLFLT just, PLCHAR_VECTOR text)
void c_plerry(PLINT n, PLFLT_VECTOR x, PLFLT_VECTOR ymin, PLFLT_VECTOR ymax)
void c_plerrx(PLINT n, PLFLT_VECTOR xmin, PLFLT_VECTOR xmax, PLFLT_VECTOR y)
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)
void c_plbtime(PLINT *year, PLINT *month, PLINT *day, PLINT *hour, PLINT *min, PLFLT *sec, PLFLT ctime)
void c_pltimefmt(PLCHAR_VECTOR fmt)
void c_plctime(PLINT year, PLINT month, PLINT day, PLINT hour, PLINT min, PLFLT sec, PLFLT *ctime)
void c_plsvect(PLFLT_VECTOR arrowx, PLFLT_VECTOR arrowy, PLINT npts, PLBOOL fill)
void c_plvect(PLFLT_MATRIX u, PLFLT_MATRIX v, PLINT nx, PLINT ny, PLFLT scale, PLTRANSFORM_callback pltr, PLPointer pltr_data)
void c_plvpor(PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax)
void c_plvasp(PLFLT aspect)
void c_plsvpa(PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax)
void c_plvpas(PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax, PLFLT aspect)
void c_plenv(PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax, PLINT just, PLINT axis)
void c_plenv0(PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax, PLINT just, PLINT axis)
void c_plwind(PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax)
void c_plw3d(PLFLT basex, PLFLT basey, PLFLT height, PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax, PLFLT zmin, PLFLT zmax, PLFLT alt, PLFLT az)
void mapform(PLINT n, PLFLT *x, PLFLT *y)
static PLOptionTable options[]