33 #ifdef PL_USE_NAMESPACE
49 xf.
xform( ox, oy, *nx, *ny );
83 PLFLT xll, xlr, xrl, xrr;
84 PLFLT yll, ylr, yrl, yrr;
100 if ( x < xmin || x > xmax || y < ymin || y > ymax )
102 cerr <<
"cxx_pltr2::xform, Invalid coordinates\n";
113 tx =
xg( 0, ny - 1 );
114 ty =
yg( 0, ny - 1 );
123 tx = xll * ( 1 - dv ) + xlr * ( dv );
124 ty = yll * ( 1 - dv ) + ylr * ( dv );
131 tx =
xg( nx - 1, 0 );
132 ty =
yg( nx - 1, 0 );
136 tx =
xg( nx - 1, ny - 1 );
137 ty =
yg( nx - 1, ny - 1 );
141 xll =
xg( nx - 1, vl );
142 yll =
yg( nx - 1, vl );
143 xlr =
xg( nx - 1, vr );
144 ylr =
yg( nx - 1, vr );
146 tx = xll * ( 1 - dv ) + xlr * ( dv );
147 ty = yll * ( 1 - dv ) + ylr * ( dv );
159 tx = xll * ( 1 - du ) + xrl * ( du );
160 ty = yll * ( 1 - du ) + yrl * ( du );
164 xlr =
xg( ul, ny - 1 );
165 xrr =
xg( ur, ny - 1 );
166 ylr =
yg( ul, ny - 1 );
167 yrr =
yg( ur, ny - 1 );
169 tx = xlr * ( 1 - du ) + xrr * ( du );
170 ty = ylr * ( 1 - du ) + yrr * ( du );
187 if ( ur == nx && vr < ny )
192 tx = xll * ( 1 - dv ) + xlr * ( dv );
193 ty = yll * ( 1 - dv ) + ylr * ( dv );
198 else if ( ur < nx && vr == ny )
203 tx = xll * ( 1 - du ) + xrl * ( du );
204 ty = yll * ( 1 - du ) + yrl * ( du );
209 else if ( ur == nx && vr == ny )
227 tx = xll * ( 1 - du ) * ( 1 - dv ) + xlr * ( 1 - du ) * ( dv ) +
228 xrl * ( du ) * ( 1 - dv ) + xrr * ( du ) * ( dv );
230 ty = yll * ( 1 - du ) * ( 1 - dv ) + ylr * ( 1 - du ) * ( dv ) +
231 yrl * ( du ) * ( 1 - dv ) + yrr * ( du ) * ( dv );
252 pltr0( x, y, tx, ty, pltr_data );
260 pltr1( x, y, tx, ty, pltr_data );
269 pltr2( x, y, tx, ty, pltr_data );
278 pltr2p( x, y, tx, ty, pltr_data );
327 const char *driver,
const char *file )
352 #define BONZAI { throw "plstream method not implemented."; }
372 plarc( x, y, a, b, angle1, angle2, rotate, fill );
382 plvect( u, v, nx, ny, scale,
pltr, pltr_data );
411 plaxes( x0, y0, xopt, xtick, nxsub, yopt, ytick, nysub );
420 plbin( nbin, x, y, center );
439 plbox( xopt, xtick, nxsub, yopt, ytick, nysub );
447 const char *yopt,
const char *ylabel,
PLFLT ytick,
PLINT nsuby,
448 const char *zopt,
const char *zlabel,
PLFLT ztick,
PLINT nsubz )
452 plbox3( xopt, xlabel, xtick, nsubx,
453 yopt, ylabel, ytick, nsuby,
454 zopt, zlabel, ztick, nsubz );
463 plbtime( &year, &month, &day, &hour, &min, &sec, ctime );
518 "plstream::col(PLFLT c) : function deprecated. Use plstream::col1(PLFLT c) instead"
533 plconfigtime( scale, offset1, offset2, ccontrol, ifbtime_offset, year,
534 month, day, hour, min, sec );
549 plcont( f, nx, ny, kx, lx, ky, ly, clevel, nlevel,
567 nx, ny, kx, lx, ky, ly, clevel, nlevel,
594 plctime( year, month, day, hour, min, sec, &ctime );
604 pldid2pc( &xmin, &ymin, &xmax, &ymax );
614 pldip2dc( &xmin, &ymin, &xmax, &ymax );
645 plenv( xmin, xmax, ymin, ymax, just, axis );
656 plenv0( xmin, xmax, ymin, ymax, just, axis );
674 plerrx( n, xmin, xmax, y );
683 plerry( n, x, ymin, ymax );
800 plgdidev( &mar, &aspect, &jx, &jy );
818 plgdiplt( &xmin, &ymin, &xmax, &ymax );
836 plgfam( &fam, &num, &bmax );
854 plgfont( &family, &style, &weight );
873 plgpage( &xp, &yp, &xleng, &yleng, &xoff, &yoff );
902 plgriddata( x, y, z, npts, xg, nptsx, yg, nptsy, zg, type, data );
911 plgspa( &xmin, &xmax, &ymin, &ymax );
940 plgvpd( &xmin, &xmax, &ymin, &ymax );
949 plgvpw( &xmin, &xmax, &ymin, &ymax );
958 plgxax( &digmax, &digits );
967 plgyax( &digmax, &digits );
976 plgzax( &digmax, &digits );
986 plhist( n, data, datmin, datmax, nbin, oldwin );
998 #endif // PL_DEPRECATED
1020 pljoin( x1, y1, x2, y2 );
1026 const char *tlabel )
1030 pllab( xlabel, ylabel, tlabel );
1041 PLFLT text_justification,
1042 const PLINT *text_colors,
const char *
const *
text,
1043 const PLINT *box_colors,
const PLINT *box_patterns,
1044 const PLFLT *box_scales,
const PLFLT *box_line_widths,
1045 const PLINT *line_colors,
const PLINT *line_styles,
1046 const PLFLT *line_widths,
1047 const PLINT *symbol_colors,
const PLFLT *symbol_scales,
1048 const PLINT *symbol_numbers,
const char *
const *symbols )
1052 pllegend( p_legend_width, p_legend_height, opt, position, x, y, plot_width,
1053 bg_color, bb_color, bb_style, nrow, ncolumn, nlegend, opt_array,
1054 text_offset, text_scale, text_spacing, text_justification,
1055 text_colors, text, box_colors, box_patterns, box_scales,
1056 box_line_widths, line_colors, line_styles, line_widths,
1057 symbol_colors, symbol_scales, symbol_numbers, symbols );
1066 PLINT n_labels,
PLINT *label_opts,
const char *
const *label,
1067 PLINT n_axes,
const char *
const *axis_opts,
1069 PLINT *n_values,
const PLFLT *
const *values )
1073 plcolorbar( p_colorbar_width, p_colorbar_height, opt, position, x, y,
1074 x_length, y_length, bg_color, bb_color, bb_style,
1075 low_cap_color, high_cap_color, cont_color, cont_width,
1076 n_labels, label_opts, label, n_axes, axis_opts,
1077 ticks, sub_ticks, n_values, values );
1132 const PLINT *plotentries,
PLINT nplotentries )
1136 plmapline(
mapform, name, minx, maxx, miny, maxy, plotentries, nplotentries );
1142 const char *
name,
const char *
string,
1144 const PLINT *plotentries,
PLINT nplotentries )
1148 plmapstring(
mapform, name,
string, minx, maxx, miny, maxy, plotentries, nplotentries );
1160 plmaptex(
mapform, name, dx, dy, just, text, minx, maxx, miny, maxy, plotentry );
1171 plmapfill(
mapform, name, minx, maxx, miny, maxy, plotentries, nplotentries );
1194 plmesh( x, y, z, nx, ny, opt );
1204 plmeshc( x, y, z, nx, ny, opt, clevel, nlevel );
1223 plmtex( side, disp, pos, just, text );
1233 plmtex3( side, disp, pos, just, text );
1244 plsurf3d( x, y, z, nx, ny, opt, clevel, nlevel );
1254 const PLINT *indexymin,
const PLINT *indexymax )
1258 plsurf3dl( x, y, z, nx, ny, opt, clevel, nlevel, ixstart, ixn,
1259 indexymin, indexymax );
1289 ::plot3dc( x, y, z, nx, ny, opt, clevel, nlevel );
1299 const PLINT *indexymin,
const PLINT *indexymax )
1303 ::plot3dcl( x, y, z, nx, ny, opt, clevel, nlevel, ixstart, ixn,
1304 indexymin, indexymax );
1322 plpat( nlin, inc, del );
1331 plpath( n, x1, y1, x2, y2 );
1355 const bool *draw,
bool ifcc )
1358 for (
int i = 0; i < n - 1; i++ )
1360 loc_draw[i] = (
PLBOOL) draw[i];
1375 for (
int i = 0; i < n - 1; i++ )
1377 loc_draw[i] = (
PLBOOL) draw[i];
1412 plptex( x, y, dx, dy, just, text );
1424 plptex3( wx, wy, wz, dx, dy, dz, sx, sy, sz, just, text );
1438 #ifdef PL_DEPRECATED
1445 #endif // PL_DEPRECATED
1449 #ifdef PL_DEPRECATED
1456 #endif // PL_DEPRECATED
1544 const bool *alt_hue_path )
1546 PLBOOL *loc_alt_hue_path = NULL;
1547 if ( alt_hue_path != NULL )
1549 loc_alt_hue_path =
new PLBOOL[npts - 1];
1550 for (
int i = 0; i < npts - 1; i++ )
1552 loc_alt_hue_path[i] = (
PLBOOL) alt_hue_path[i];
1558 plscmap1l( (
PLBOOL) itype, npts, intensity, coord1, coord2, coord3, loc_alt_hue_path );
1560 if ( loc_alt_hue_path != NULL )
1561 delete [] loc_alt_hue_path;
1570 const PLFLT *a,
const bool *alt_hue_path )
1572 PLBOOL *loc_alt_hue_path = NULL;
1573 if ( alt_hue_path != NULL )
1575 loc_alt_hue_path =
new PLBOOL[npts - 1];
1576 for (
int i = 0; i < npts - 1; i++ )
1578 loc_alt_hue_path[i] = (
PLBOOL) alt_hue_path[i];
1585 a, loc_alt_hue_path );
1587 if ( loc_alt_hue_path != NULL )
1588 delete [] loc_alt_hue_path;
1604 const PLINT *alt_hue_path )
1606 PLBOOL *loc_alt_hue_path = NULL;
1607 if ( alt_hue_path != NULL )
1609 loc_alt_hue_path =
new PLBOOL[npts - 1];
1610 for (
int i = 0; i < npts - 1; i++ )
1612 loc_alt_hue_path[i] = (
PLBOOL) alt_hue_path[i];
1618 plscmap1l( (
PLBOOL) itype, npts, intensity, coord1, coord2, coord3, loc_alt_hue_path );
1620 if ( loc_alt_hue_path != NULL )
1621 delete [] loc_alt_hue_path;
1714 plsdimap( dimxmin, dimxmax, dimymin, dimymax, dimxpmm, dimypmm );
1732 plsdiplt( xmin, ymin, xmax, ymax );
1741 plsdiplz( xmin, ymin, xmax, ymax );
1778 plsfam( fam, num, bmax );
1814 plsfont( family, style, weight );
1833 plshade( a, nx, ny, defined, left, right, bottom, top,
1834 shade_min, shade_max,
1835 sh_cmap, sh_color, sh_width,
1836 min_color, min_width, max_color, max_width,
1855 plshade( a, nx, ny, defined, left, right, bottom, top,
1856 shade_min, shade_max,
1857 sh_cmap, sh_color, sh_width,
1858 min_color, min_width, max_color, max_width,
1874 plshades( a, nx, ny, defined, xmin, xmax, ymin, ymax,
1875 clevel, nlevel, fill_width, cont_color, cont_width,
1892 plshades( a, nx, ny, defined, xmin, xmax, ymin, ymax,
1893 clevel, nlevel, fill_width, cont_color, cont_width,
1915 xmin, xmax, ymin, ymax, shade_min, shade_max,
1916 sh_cmap, sh_color, sh_width,
1917 min_color, min_width, max_color, max_width,
1924 xmin, xmax, ymin, ymax, shade_min, shade_max,
1925 sh_cmap, sh_color, sh_width,
1926 min_color, min_width, max_color, max_width,
1949 xmin, xmax, ymin, ymax, shade_min, shade_max,
1950 sh_cmap, sh_color, sh_width,
1951 min_color, min_width, max_color, max_width,
1971 left, right, bottom, top,
1972 shade_min, shade_max,
1973 sh_cmap, sh_color, sh_width,
1974 min_color, min_width, max_color, max_width,
1994 left, right, bottom, top,
1995 shade_min, shade_max,
1996 sh_cmap, sh_color, sh_width,
1997 min_color, min_width, max_color, max_width,
2019 c2eval, c2eval_data,
2020 nx, ny, left, right, bottom, top,
2021 shade_min, shade_max,
2022 sh_cmap, sh_color, sh_width,
2023 min_color, min_width, max_color, max_width,
2046 c2eval, c2eval_data,
2047 nx, ny, left, right, bottom, top,
2048 shade_min, shade_max,
2049 sh_cmap, sh_color, sh_width,
2050 min_color, min_width, max_color, max_width,
2079 plsmem( maxx, maxy, plotmem );
2088 plsmema( maxx, maxy, plotmem );
2116 plspage( xp, yp, xleng, yleng, xoff, yoff );
2206 plstransform( coordinate_transform, coordinate_transform_data );
2240 const PLINT colline[],
const PLINT styline[],
2241 const char *legline[],
const char *labx,
2242 const char *laby,
const char *labtop )
2246 plstripc(
id, xspec, yspec, xmin, xmax, xjump, ymin, ymax, xlpos, ylpos,
2247 (
PLBOOL) y_ascl, (
PLBOOL) acc, colbox, collab, colline, styline,
2248 legline, labx, laby, labtop );
2257 const PLINT colline[],
const PLINT styline[],
2258 const char *legline[],
const char *labx,
2259 const char *laby,
const char *labtop )
2263 plstripc(
id, xspec, yspec, xmin, xmax, xjump, ymin, ymax, xlpos, ylpos,
2264 (
PLBOOL) y_ascl, (
PLBOOL) acc, colbox, collab, colline, styline,
2265 legline, labx, laby, labtop );
2296 plimage( data, nx, ny, xmin, xmax, ymin, ymax, zmin, zmax,
2297 Dxmin, Dxmax, Dymin, Dymax );
2310 plimagefr( data, nx, ny, xmin, xmax, ymin, ymax, zmin, zmax,
2311 valuemin, valuemax,
pltr, pltr_data );
2320 plstyl( nms, mark, space );
2329 plsvpa( xmin, xmax, ymin, ymax );
2338 plsxax( digmax, digits );
2356 plsyax( digmax, digits );
2365 plsym( n, x, y, code );
2374 plszax( digmax, digits );
2413 plvpas( xmin, xmax, ymin, ymax, aspect );
2422 plvpor( xmin, xmax, ymin, ymax );
2443 plw3d( basex, basey, height, xmin0, xmax0, ymin0, ymax0, zmin0, zmax0,
2462 plwind( xmin, xmax, ymin, ymax );
2475 *status = ( loc_status != 0 );
2487 *status = (
PLINT) loc_status;
2633 const char **notes )
2659 #ifdef PL_DEPRECATED
2666 #endif // PL_DEPRECATED
2742 plGetName( dir, subdir, filename, filespec );