PLplot  5.15.0
plplotP.h File Reference
#include "plConfig.h"
#include <ctype.h>
#include <math.h>
#include <string.h>
#include <limits.h>
#include <float.h>
#include <locale.h>
#include "pldll.h"
#include "plplot.h"
#include "plstrm.h"
#include "pldebug.h"

Go to the source code of this file.

Classes

struct  Hershey_to_Unicode_table
 
struct  EscText
 
struct  DrvOpt
 
struct  cont_line
 
struct  cont_level
 
struct  arc_struct
 
struct  IMG_DT
 
struct  FCI_to_FontName_Table
 

Macros

#define M_PI   3.14159265358979323846
 
#define FPOS_T   long
 
#define pl_fsetpos(a, b)   fseek( a, *b, 0 )
 
#define pl_fgetpos(a, b)   ( -1L == ( *b = ftell( a ) ) )
 
#define TRUE   1
 
#define FALSE   0
 
#define free_mem(a)   if ( a != NULL ) { free( (void *) a ); a = NULL; }
 
#define plsetvar(a, b)   if ( b != PL_NOTSET ) a = b;
 
#define MAX(a, b)   ( ( ( a ) > ( b ) ) ? ( a ) : ( b ) )
 
#define MIN(a, b)   ( ( ( a ) < ( b ) ) ? ( a ) : ( b ) )
 
#define ABS(a)   ( ( a ) < 0 ? -( a ) : ( a ) )
 
#define ROUND(a)   (PLINT) ( ( a ) < 0. ? ( ( a ) - .5 ) : ( ( a ) + .5 ) )
 
#define BETW(ix, ia, ib)   ( ( ( ix ) <= ( ia ) && ( ix ) >= ( ib ) ) || ( ( ix ) >= ( ia ) && ( ix ) <= ( ib ) ) )
 
#define SSQR(a, b)   sqrt( ( a ) * ( a ) + ( b ) * ( b ) )
 
#define SIGN(a)   ( ( a ) < 0 ? -1 : 1 )
 
#define TRANSFORM(x, y, xnew, ynew)   if ( plsc->coordinate_transform ) { plsc->coordinate_transform( ( x ), ( y ), ( xnew ), ( ynew ), plsc->coordinate_transform_data ); } else { *xnew = x; *ynew = y; }
 
#define PL_UNDEFINED   -9999999
 
#define snprintf   plsnprintf
 
#define snscanf   plsnscanf
 
#define isnan(x)   ( ( x ) != ( x ) )
 
#define isinf(x)   ( !isnan( x ) && isnan( x - x ) )
 
#define isfinite(x)   ( !isnan( x - x ) )
 
#define HUGE_VAL   ( 1.0 / 0.0 )
 
#define PL_MAXPOLY   256
 
#define PL_NSTREAMS   100
 
#define PL_RGB_COLOR   -1
 
#define TEXT_MODE   0
 
#define GRAPHICS_MODE   1
 
#define PI   3.1415926535897932384
 
#define PIXELS_X   32768
 
#define PIXELS_Y   24576
 
#define DPMM   4.
 
#define VDPMM   ( DPMM * 32 )
 
#define LPAGE_X   ( PIXELS_X / VDPMM )
 
#define LPAGE_Y   ( PIXELS_Y / VDPMM )
 
#define PLPLOT_MM_PER_INCH   25.4
 
#define PLPLOT_POINTS_PER_INCH   72.
 
#define PLPLOT_WIDTH_A4_MM   297.
 
#define PLPLOT_HEIGHT_A4_MM   210.
 
#define PLPLOT_WIDTH_A5_MM   210.
 
#define PLPLOT_HEIGHT_A5_MM   148.
 
#define PLPLOT_DEFAULT_PIXELS_PER_INCH   90.
 
#define PLPLOT_DEFAULT_WIDTH_PIXELS   ( (int) ( PLPLOT_WIDTH_A5_MM * PLPLOT_DEFAULT_PIXELS_PER_INCH / PLPLOT_MM_PER_INCH ) )
 
#define PLPLOT_DEFAULT_HEIGHT_PIXELS   ( (int) ( PLPLOT_HEIGHT_A5_MM * PLPLOT_DEFAULT_PIXELS_PER_INCH / PLPLOT_MM_PER_INCH ) )
 
#define PLPLOT_DEFAULT_WIDTH_MM   ( (int) ( PLPLOT_WIDTH_A4_MM )
 
#define PLPLOT_DEFAULT_HEIGHT_MM   ( (int) ( PLPLOT_HEIGHT_A4_MM )
 
#define PLPLOT_DEFAULT_WIDTH_POINTS   ( (int) ( PLPLOT_WIDTH_A4_MM * PLPLOT_POINTS_PER_INCH / PLPLOT_MM_PER_INCH ) )
 
#define PLPLOT_DEFAULT_HEIGHT_POINTS   ( (int) ( PLPLOT_HEIGHT_A4_MM * PLPLOT_POINTS_PER_INCH / PLPLOT_MM_PER_INCH ) )
 
#define ORIENTATION   3
 
#define PLSTATE_WIDTH   1
 
#define PLSTATE_COLOR0   2
 
#define PLSTATE_COLOR1   3
 
#define PLSTATE_FILL   4
 
#define PLSTATE_CMAP0   5
 
#define PLSTATE_CMAP1   6
 
#define PLSTATE_CHR   7
 
#define PLSTATE_SYM   8
 
#define PLSTATE_EOFILL   9
 
#define PLDI_MAP   0x01
 
#define PLDI_ORI   0x02
 
#define PLDI_PLT   0x04
 
#define PLDI_DEV   0x08
 
#define PL_FILESIZE_KB   1000
 
#define PLPLOT5_FONTS
 
#define PL_XFONT   "plxtnd5.fnt"
 
#define PL_SFONT   "plstnd5.fnt"
 
#define PLPLOT_BIN_ENV   "PLPLOT_BIN"
 
#define PLPLOT_LIB_ENV   "PLPLOT_LIB"
 
#define PLPLOT_TCL_ENV   "PLPLOT_TCL"
 
#define PLPLOT_HOME_ENV   "PLPLOT_HOME"
 
#define PLPLOT_MAX_PATH   1024
 
#define NAFFINE   6
 
#define LINE_ITEMS   20
 

Typedefs

typedef struct cont_line CONT_LINE
 
typedef struct cont_level CONT_LEVEL
 

Enumerations

enum  { AT_BOP, DRAWING, AT_EOP }
 
enum  { DRV_INT, DRV_FLT, DRV_STR }
 

Functions

 PLDLLIMPEXP_DATA (PLStream *) plsc
 
int plsnprintf (char *buffer, int n, PLCHAR_VECTOR format,...)
 
int plsnscanf (PLCHAR_VECTOR buffer, int n, PLCHAR_VECTOR format,...)
 
PLDLLIMPEXP void plP_affine_identity (PLFLT *affine_vector)
 
PLDLLIMPEXP void plP_affine_translate (PLFLT *affine_vector, PLFLT xtranslate, PLFLT ytranslate)
 
PLDLLIMPEXP void plP_affine_scale (PLFLT *affine_vector, PLFLT xscale, PLFLT yscale)
 
PLDLLIMPEXP void plP_affine_rotate (PLFLT *affine_vector, PLFLT angle)
 
PLDLLIMPEXP void plP_affine_xskew (PLFLT *affine_vector, PLFLT angle)
 
PLDLLIMPEXP void plP_affine_yskew (PLFLT *affine_vector, PLFLT angle)
 
PLDLLIMPEXP void plP_affine_multiply (PLFLT *affine_vectorA, PLFLT_VECTOR affine_vectorB, PLFLT_VECTOR affine_vectorC)
 
void pldtik (PLFLT vmin, PLFLT vmax, PLFLT *tick, PLINT *nsubt, PLBOOL ld)
 
void label_box_custom (PLCHAR_VECTOR xopt, PLINT n_xticks, PLFLT_VECTOR xticks, PLCHAR_VECTOR yopt, PLINT n_yticks, PLFLT_VECTOR yticks)
 
void pldtfac (PLFLT vmin, PLFLT vmax, PLFLT *factor, PLFLT *tstart)
 
void pldprec (PLFLT vmin, PLFLT vmax, PLFLT tick, PLINT lf, PLINT *mode, PLINT *prec, PLINT digmax, PLINT *scale)
 
void plP_pllclp (PLINT *x, PLINT *y, PLINT npts, PLINT xmin, PLINT xmax, PLINT ymin, PLINT ymax, void(*draw)(short *, short *, PLINT))
 
void plP_plfclp (PLINT *x, PLINT *y, PLINT npts, PLINT xmin, PLINT xmax, PLINT ymin, PLINT ymax, void(*draw)(short *, short *, PLINT))
 
int plP_clip_poly (int Ni, PLFLT *Vi[3], int axis, PLFLT dir, PLFLT offset)
 
int plP_clipline (PLINT *p_x1, PLINT *p_y1, PLINT *p_x2, PLINT *p_y2, PLINT xmin, PLINT xmax, PLINT ymin, PLINT ymax)
 
void plP_hex2fci (unsigned char hexdigit, unsigned char hexpower, PLUNICODE *pfci)
 
PLDLLIMPEXP void plP_fci2hex (PLUNICODE fci, unsigned char *phexdigit, unsigned char hexpower)
 
PLDLLIMPEXP void plfill_soft (short *x, short *y, PLINT npts)
 
PLDLLIMPEXP void plexit (PLCHAR_VECTOR errormsg)
 
void pl_exit (void)
 
PLDLLIMPEXP void plwarn (PLCHAR_VECTOR errormsg)
 
PLDLLIMPEXP void plabort (PLCHAR_VECTOR errormsg)
 
void plfntld (PLINT fnt)
 
void plfontrel (void)
 
PLDLLIMPEXP char * plstrdup (PLCHAR_VECTOR src)
 
PLDLLIMPEXP void plcmap1_calc (void)
 Bin up cmap 1 space and assign colors to make inverse mapping easy. More...
 
void plstik (PLFLT mx, PLFLT my, PLFLT dx, PLFLT dy)
 
void plstr (PLINT base, PLFLT *xform, PLINT refx, PLINT refy, PLCHAR_VECTOR string)
 
void plxtik (PLINT x, PLINT y, PLINT below, PLINT above)
 
void plytik (PLINT x, PLINT y, PLINT left, PLINT right)
 
PLDLLIMPEXP void difilt (PLINT *, PLINT *, PLINT, PLINT *, PLINT *, PLINT *, PLINT *)
 
PLDLLIMPEXP void difilt_clip (PLINT *, PLINT *)
 
PLDLLIMPEXP void plP_script_scale (PLBOOL ifupper, PLINT *level, PLFLT *old_scale, PLFLT *scale, PLFLT *old_offset, PLFLT *offset)
 
void plP_text (PLINT base, PLFLT just, PLFLT *xform, PLINT x, PLINT y, PLINT refx, PLINT refy, PLCHAR_VECTOR string)
 
PLDLLIMPEXP char * plsave_set_locale (void)
 
PLDLLIMPEXP void plrestore_locale (char *save_lc_numeric_locale)
 
void plhrsh (PLINT ch, PLINT x, PLINT y)
 
PLDLLIMPEXP int plParseDrvOpts (DrvOpt *)
 
void plHelpDrvOpts (DrvOpt *)
 
void cont_store (PLFLT_MATRIX f, PLINT nx, PLINT ny, PLINT kx, PLINT lx, PLINT ky, PLINT ly, PLFLT_VECTOR clevel, PLINT nlevel, void(*pltr)(PLFLT, PLFLT, PLFLT *, PLFLT *, PLPointer), PLPointer pltr_data, CONT_LEVEL **contour)
 
void cont_clean_store (CONT_LEVEL *ct)
 
void plP_xgvpw (PLFLT *p_xmin, PLFLT *p_xmax, PLFLT *p_ymin, PLFLT *p_ymax)
 
void plP_gdom (PLFLT *p_xmin, PLFLT *p_xmax, PLFLT *p_ymin, PLFLT *p_ymax)
 
void plP_grange (PLFLT *p_zscl, PLFLT *p_zmin, PLFLT *p_zmax)
 
void plP_gw3wc (PLFLT *p_dxx, PLFLT *p_dxy, PLFLT *p_dyx, PLFLT *p_dyy, PLFLT *p_dyz)
 
void plP_gclp (PLINT *p_ixmin, PLINT *p_ixmax, PLINT *p_iymin, PLINT *p_iymax)
 
void plP_sclp (PLINT ixmin, PLINT ixmax, PLINT iymin, PLINT iymax)
 
PLDLLIMPEXP void plP_gphy (PLINT *p_ixmin, PLINT *p_ixmax, PLINT *p_iymin, PLINT *p_iymax)
 
PLDLLIMPEXP void plP_gsub (PLINT *p_nx, PLINT *p_ny, PLINT *p_cs)
 
PLDLLIMPEXP void plP_ssub (PLINT nx, PLINT ny, PLINT cs)
 
void plP_subpInit (void)
 
PLDLLIMPEXP void plP_gpixmm (PLFLT *p_x, PLFLT *p_y)
 
PLDLLIMPEXP void plP_setpxl (PLFLT xpmm0, PLFLT ypmm0)
 
void plP_gzback (PLINT **zbf, PLINT **zbc, PLFLT **zbt, PLFLT **zbw)
 
void plP_movphy (PLINT x, PLINT y)
 
void plP_draphy (PLINT x, PLINT y)
 
void plP_movwor (PLFLT x, PLFLT y)
 
void plP_drawor (PLFLT x, PLFLT y)
 
void plP_draphy_poly (PLINT *x, PLINT *y, PLINT n)
 
void plP_drawor_poly (PLFLT_VECTOR x, PLFLT_VECTOR y, PLINT n)
 
PLDLLIMPEXP void plP_setphy (PLINT xmin, PLINT xmax, PLINT ymin, PLINT ymax)
 
PLDLLIMPEXP void plP_setsub (void)
 
void plP_gprec (PLINT *p_setp, PLINT *p_prec)
 
const char * plP_gtimefmt (void)
 
PLFLT plstrl (PLCHAR_VECTOR string)
 
PLINT plP_stindex (PLCHAR_VECTOR str1, PLCHAR_VECTOR str2)
 
PLDLLIMPEXP PLINT plP_strpos (PLCHAR_VECTOR str, int chr)
 
PLBOOL plP_stsearch (PLCHAR_VECTOR str, int chr)
 
PLINT plP_dcpcx (PLFLT x)
 
PLINT plP_dcpcy (PLFLT y)
 
PLINT plP_mmpcx (PLFLT x)
 
PLINT plP_mmpcy (PLFLT y)
 
PLINT plP_wcpcx (PLFLT x)
 
PLINT plP_wcpcy (PLFLT y)
 
PLFLT plP_pcdcx (PLINT x)
 
PLFLT plP_pcdcy (PLINT y)
 
PLFLT plP_mmdcx (PLFLT x)
 
PLFLT plP_mmdcy (PLFLT y)
 
PLFLT plP_wcdcx (PLFLT x)
 
PLFLT plP_wcdcy (PLFLT y)
 
PLFLT plP_scdcx (PLFLT x)
 
PLFLT plP_scdcy (PLFLT y)
 
PLFLT plP_dcmmx (PLFLT x)
 
PLFLT plP_dcmmy (PLFLT y)
 
PLFLT plP_wcmmx (PLFLT x)
 
PLFLT plP_wcmmy (PLFLT y)
 
PLFLT plP_dcscx (PLFLT x)
 
PLFLT plP_dcscy (PLFLT y)
 
PLFLT plP_w3wcx (PLFLT x, PLFLT y, PLFLT z)
 
PLFLT plP_w3wcy (PLFLT x, PLFLT y, PLFLT z)
 
PLFLT plP_w3wcz (PLFLT x, PLFLT y, PLFLT z)
 
PLDLLIMPEXP void plRotationShear (PLFLT *xFormMatrix, PLFLT *rotation, PLFLT *shear, PLFLT *stride)
 
int plP_pointinpolygon (PLINT n, PLFLT_VECTOR x, PLFLT_VECTOR y, PLFLT xp, PLFLT yp)
 
void plP_init (void)
 
void plP_line (short *x, short *y)
 
void plP_polyline (short *x, short *y, PLINT npts)
 
PLDLLIMPEXP void plP_fill (short *x, short *y, PLINT npts)
 
void plP_gradient (short *x, short *y, PLINT npts)
 
void plP_image (PLFLT *z, PLINT nx, PLINT ny, PLFLT xmin, PLFLT ymin, PLFLT dx, PLFLT dy, void(*pltr)(PLFLT, PLFLT, PLFLT *, PLFLT *, PLPointer), PLPointer pltr_data)
 
PLDLLIMPEXP void plP_eop (void)
 
PLDLLIMPEXP void plP_bop (void)
 
void plP_tidy (void)
 
PLDLLIMPEXP void plP_state (PLINT op)
 
PLDLLIMPEXP void plP_esc (PLINT op, void *ptr)
 
void plP_swin (PLWindow *plwin)
 
PLDLLIMPEXP void plP_wait (void)
 
FILE * plLibOpen (PLCHAR_VECTOR fn)
 
PLDLLIMPEXP void pllib_init (void)
 
PLDLLIMPEXP void pllib_devinit (void)
 
PLDLLIMPEXP void pl_cpcolor (PLColor *to, PLColor *from)
 
void plstrm_init (void)
 
void PLDLLIMPEXP plP_getinitdriverlist (char *names)
 
PLINT plP_checkdriverinit (char *names)
 
void NoBufferNoPixmap (void)
 
void RestoreWrite2BufferPixmap (void)
 
void grimage (short *x, short *y, unsigned short *z, PLINT nx, PLINT ny)
 
PLDLLIMPEXP int plInBuildTree (void)
 
void plimageslow (PLFLT *idata, PLINT nx, PLINT ny, PLFLT xmin, PLFLT ymin, PLFLT dx, PLFLT dy, void(*pltr)(PLFLT, PLFLT, PLFLT *, PLFLT *, PLPointer), PLPointer pltr_data)
 
PLDLLIMPEXP void plfvect (PLFLT(*plf2eval)(PLINT, PLINT, PLPointer), PLPointer f2evalv_data, PLPointer f2evalc_data, PLINT nx, PLINT ny, PLFLT scale, void(*pltr)(PLFLT, PLFLT, PLFLT *, PLFLT *, PLPointer), PLPointer pltr_data)
 
int plhershey2unicode (int in)
 
PLDLLIMPEXP const char * plP_FCI2FontName (PLUNICODE fci, const FCI_to_FontName_Table lookup[], const int nlookup)
 
void plP_FreeDrvOpts (void)
 
PLDLLIMPEXP int ucs4_to_utf8 (PLUNICODE unichar, char *ptr)
 
void plio_fwrite (void *, size_t, size_t, FILE *)
 
void plio_fread (void *, size_t, size_t, FILE *)
 
void plio_fgets (char *, int, FILE *)
 
void plwxtik (PLFLT x, PLFLT y, PLBOOL minor, PLBOOL invert)
 
void plwytik (PLFLT x, PLFLT y, PLBOOL minor, PLBOOL invert)
 
PLDLLIMPEXP FILE * pl_create_tempfile (char **fname)
 
PLDLLIMPEXP char * pl_create_tempfifo (const char **p_fifoname, const char **p_dirname)
 
PLDLLIMPEXP void plreadmetafile (char *infile)
 

Variables

int number_of_entries_in_hershey_to_unicode_table
 
Hershey_to_Unicode_table hershey_to_unicode_lookup_table []
 
const char plP_greek_mnemonic []
 

Macro Definition Documentation

◆ ABS

#define ABS (   a)    ( ( a ) < 0 ? -( a ) : ( a ) )

Definition at line 199 of file plplotP.h.

◆ BETW

#define BETW (   ix,
  ia,
  ib 
)    ( ( ( ix ) <= ( ia ) && ( ix ) >= ( ib ) ) || ( ( ix ) >= ( ia ) && ( ix ) <= ( ib ) ) )

Definition at line 205 of file plplotP.h.

◆ DPMM

#define DPMM   4.

Definition at line 306 of file plplotP.h.

◆ FALSE

#define FALSE   0

Definition at line 177 of file plplotP.h.

◆ FPOS_T

#define FPOS_T   long

Definition at line 141 of file plplotP.h.

◆ free_mem

#define free_mem (   a)    if ( a != NULL ) { free( (void *) a ); a = NULL; }

Definition at line 182 of file plplotP.h.

◆ GRAPHICS_MODE

#define GRAPHICS_MODE   1

Definition at line 288 of file plplotP.h.

◆ HUGE_VAL

#define HUGE_VAL   ( 1.0 / 0.0 )

Definition at line 274 of file plplotP.h.

◆ isfinite

#define isfinite (   x)    ( !isnan( x - x ) )

Definition at line 268 of file plplotP.h.

◆ isinf

#define isinf (   x)    ( !isnan( x ) && isnan( x - x ) )

Definition at line 265 of file plplotP.h.

◆ isnan

#define isnan (   x)    ( ( x ) != ( x ) )

Definition at line 262 of file plplotP.h.

◆ LINE_ITEMS

#define LINE_ITEMS   20

Definition at line 774 of file plplotP.h.

◆ LPAGE_X

#define LPAGE_X   ( PIXELS_X / VDPMM )

Definition at line 308 of file plplotP.h.

◆ LPAGE_Y

#define LPAGE_Y   ( PIXELS_Y / VDPMM )

Definition at line 309 of file plplotP.h.

◆ M_PI

#define M_PI   3.14159265358979323846

Definition at line 119 of file plplotP.h.

◆ MAX

#define MAX (   a,
 
)    ( ( ( a ) > ( b ) ) ? ( a ) : ( b ) )

Definition at line 193 of file plplotP.h.

◆ MIN

#define MIN (   a,
 
)    ( ( ( a ) < ( b ) ) ? ( a ) : ( b ) )

Definition at line 196 of file plplotP.h.

◆ NAFFINE

#define NAFFINE   6

Definition at line 484 of file plplotP.h.

◆ ORIENTATION

#define ORIENTATION   3

Definition at line 358 of file plplotP.h.

◆ PI

#define PI   3.1415926535897932384

Definition at line 290 of file plplotP.h.

◆ PIXELS_X

#define PIXELS_X   32768

Definition at line 304 of file plplotP.h.

◆ PIXELS_Y

#define PIXELS_Y   24576

Definition at line 305 of file plplotP.h.

◆ pl_fgetpos

#define pl_fgetpos (   a,
 
)    ( -1L == ( *b = ftell( a ) ) )

Definition at line 143 of file plplotP.h.

◆ PL_FILESIZE_KB

#define PL_FILESIZE_KB   1000

Definition at line 386 of file plplotP.h.

◆ pl_fsetpos

#define pl_fsetpos (   a,
 
)    fseek( a, *b, 0 )

Definition at line 142 of file plplotP.h.

◆ PL_MAXPOLY

#define PL_MAXPOLY   256

Definition at line 283 of file plplotP.h.

◆ PL_NSTREAMS

#define PL_NSTREAMS   100

Definition at line 284 of file plplotP.h.

◆ PL_RGB_COLOR

#define PL_RGB_COLOR   -1

Definition at line 285 of file plplotP.h.

◆ PL_SFONT

#define PL_SFONT   "plstnd5.fnt"

Definition at line 395 of file plplotP.h.

◆ PL_UNDEFINED

#define PL_UNDEFINED   -9999999

Definition at line 219 of file plplotP.h.

◆ PL_XFONT

#define PL_XFONT   "plxtnd5.fnt"

Definition at line 394 of file plplotP.h.

◆ PLDI_DEV

#define PLDI_DEV   0x08

Definition at line 381 of file plplotP.h.

◆ PLDI_MAP

#define PLDI_MAP   0x01

Definition at line 378 of file plplotP.h.

◆ PLDI_ORI

#define PLDI_ORI   0x02

Definition at line 379 of file plplotP.h.

◆ PLDI_PLT

#define PLDI_PLT   0x04

Definition at line 380 of file plplotP.h.

◆ PLPLOT5_FONTS

#define PLPLOT5_FONTS

Definition at line 391 of file plplotP.h.

◆ PLPLOT_BIN_ENV

#define PLPLOT_BIN_ENV   "PLPLOT_BIN"

Definition at line 440 of file plplotP.h.

◆ PLPLOT_DEFAULT_HEIGHT_MM

#define PLPLOT_DEFAULT_HEIGHT_MM   ( (int) ( PLPLOT_HEIGHT_A4_MM )

Definition at line 342 of file plplotP.h.

◆ PLPLOT_DEFAULT_HEIGHT_PIXELS

#define PLPLOT_DEFAULT_HEIGHT_PIXELS   ( (int) ( PLPLOT_HEIGHT_A5_MM * PLPLOT_DEFAULT_PIXELS_PER_INCH / PLPLOT_MM_PER_INCH ) )

Definition at line 330 of file plplotP.h.

◆ PLPLOT_DEFAULT_HEIGHT_POINTS

#define PLPLOT_DEFAULT_HEIGHT_POINTS   ( (int) ( PLPLOT_HEIGHT_A4_MM * PLPLOT_POINTS_PER_INCH / PLPLOT_MM_PER_INCH ) )

Definition at line 347 of file plplotP.h.

◆ PLPLOT_DEFAULT_PIXELS_PER_INCH

#define PLPLOT_DEFAULT_PIXELS_PER_INCH   90.

Definition at line 326 of file plplotP.h.

◆ PLPLOT_DEFAULT_WIDTH_MM

#define PLPLOT_DEFAULT_WIDTH_MM   ( (int) ( PLPLOT_WIDTH_A4_MM )

Definition at line 341 of file plplotP.h.

◆ PLPLOT_DEFAULT_WIDTH_PIXELS

#define PLPLOT_DEFAULT_WIDTH_PIXELS   ( (int) ( PLPLOT_WIDTH_A5_MM * PLPLOT_DEFAULT_PIXELS_PER_INCH / PLPLOT_MM_PER_INCH ) )

Definition at line 329 of file plplotP.h.

◆ PLPLOT_DEFAULT_WIDTH_POINTS

#define PLPLOT_DEFAULT_WIDTH_POINTS   ( (int) ( PLPLOT_WIDTH_A4_MM * PLPLOT_POINTS_PER_INCH / PLPLOT_MM_PER_INCH ) )

Definition at line 346 of file plplotP.h.

◆ PLPLOT_HEIGHT_A4_MM

#define PLPLOT_HEIGHT_A4_MM   210.

Definition at line 316 of file plplotP.h.

◆ PLPLOT_HEIGHT_A5_MM

#define PLPLOT_HEIGHT_A5_MM   148.

Definition at line 318 of file plplotP.h.

◆ PLPLOT_HOME_ENV

#define PLPLOT_HOME_ENV   "PLPLOT_HOME"

Definition at line 443 of file plplotP.h.

◆ PLPLOT_LIB_ENV

#define PLPLOT_LIB_ENV   "PLPLOT_LIB"

Definition at line 441 of file plplotP.h.

◆ PLPLOT_MAX_PATH

#define PLPLOT_MAX_PATH   1024

Definition at line 446 of file plplotP.h.

◆ PLPLOT_MM_PER_INCH

#define PLPLOT_MM_PER_INCH   25.4

Definition at line 313 of file plplotP.h.

◆ PLPLOT_POINTS_PER_INCH

#define PLPLOT_POINTS_PER_INCH   72.

Definition at line 314 of file plplotP.h.

◆ PLPLOT_TCL_ENV

#define PLPLOT_TCL_ENV   "PLPLOT_TCL"

Definition at line 442 of file plplotP.h.

◆ PLPLOT_WIDTH_A4_MM

#define PLPLOT_WIDTH_A4_MM   297.

Definition at line 315 of file plplotP.h.

◆ PLPLOT_WIDTH_A5_MM

#define PLPLOT_WIDTH_A5_MM   210.

Definition at line 317 of file plplotP.h.

◆ plsetvar

#define plsetvar (   a,
 
)    if ( b != PL_NOTSET ) a = b;

Definition at line 187 of file plplotP.h.

◆ PLSTATE_CHR

#define PLSTATE_CHR   7

Definition at line 368 of file plplotP.h.

◆ PLSTATE_CMAP0

#define PLSTATE_CMAP0   5

Definition at line 366 of file plplotP.h.

◆ PLSTATE_CMAP1

#define PLSTATE_CMAP1   6

Definition at line 367 of file plplotP.h.

◆ PLSTATE_COLOR0

#define PLSTATE_COLOR0   2

Definition at line 363 of file plplotP.h.

◆ PLSTATE_COLOR1

#define PLSTATE_COLOR1   3

Definition at line 364 of file plplotP.h.

◆ PLSTATE_EOFILL

#define PLSTATE_EOFILL   9

Definition at line 370 of file plplotP.h.

◆ PLSTATE_FILL

#define PLSTATE_FILL   4

Definition at line 365 of file plplotP.h.

◆ PLSTATE_SYM

#define PLSTATE_SYM   8

Definition at line 369 of file plplotP.h.

◆ PLSTATE_WIDTH

#define PLSTATE_WIDTH   1

Definition at line 362 of file plplotP.h.

◆ ROUND

#define ROUND (   a)    (PLINT) ( ( a ) < 0. ? ( ( a ) - .5 ) : ( ( a ) + .5 ) )

Definition at line 202 of file plplotP.h.

◆ SIGN

#define SIGN (   a)    ( ( a ) < 0 ? -1 : 1 )

Definition at line 211 of file plplotP.h.

◆ snprintf

#define snprintf   plsnprintf

Definition at line 235 of file plplotP.h.

◆ snscanf

#define snscanf   plsnscanf

Definition at line 236 of file plplotP.h.

◆ SSQR

#define SSQR (   a,
 
)    sqrt( ( a ) * ( a ) + ( b ) * ( b ) )

Definition at line 208 of file plplotP.h.

◆ TEXT_MODE

#define TEXT_MODE   0

Definition at line 287 of file plplotP.h.

◆ TRANSFORM

#define TRANSFORM (   x,
  y,
  xnew,
  ynew 
)    if ( plsc->coordinate_transform ) { plsc->coordinate_transform( ( x ), ( y ), ( xnew ), ( ynew ), plsc->coordinate_transform_data ); } else { *xnew = x; *ynew = y; }

Definition at line 214 of file plplotP.h.

◆ TRUE

#define TRUE   1

Definition at line 176 of file plplotP.h.

◆ VDPMM

#define VDPMM   ( DPMM * 32 )

Definition at line 307 of file plplotP.h.

Typedef Documentation

◆ CONT_LEVEL

typedef struct cont_level CONT_LEVEL

◆ CONT_LINE

typedef struct cont_line CONT_LINE

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
AT_BOP 
DRAWING 
AT_EOP 

Definition at line 373 of file plplotP.h.

◆ anonymous enum

anonymous enum
Enumerator
DRV_INT 
DRV_FLT 
DRV_STR 

Definition at line 758 of file plplotP.h.

Function Documentation

◆ cont_clean_store()

void cont_clean_store ( CONT_LEVEL ct)

Definition at line 173 of file plcont.c.

◆ cont_store()

void cont_store ( PLFLT_MATRIX  f,
PLINT  nx,
PLINT  ny,
PLINT  kx,
PLINT  lx,
PLINT  ky,
PLINT  ly,
PLFLT_VECTOR  clevel,
PLINT  nlevel,
void(*)(PLFLT, PLFLT, PLFLT *, PLFLT *, PLPointer pltr,
PLPointer  pltr_data,
CONT_LEVEL **  contour 
)

◆ difilt()

PLDLLIMPEXP void difilt ( PLINT ,
PLINT ,
PLINT  ,
PLINT ,
PLINT ,
PLINT ,
PLINT  
)

Definition at line 1460 of file plcore.c.

◆ difilt_clip()

PLDLLIMPEXP void difilt_clip ( PLINT ,
PLINT  
)

Definition at line 1603 of file plcore.c.

◆ grimage()

void grimage ( short *  x,
short *  y,
unsigned short *  z,
PLINT  nx,
PLINT  ny 
)

Definition at line 150 of file plimage.c.

◆ label_box_custom()

void label_box_custom ( PLCHAR_VECTOR  xopt,
PLINT  n_xticks,
PLFLT_VECTOR  xticks,
PLCHAR_VECTOR  yopt,
PLINT  n_yticks,
PLFLT_VECTOR  yticks 
)

Definition at line 1925 of file plbox.c.

◆ NoBufferNoPixmap()

void NoBufferNoPixmap ( void  )

Definition at line 41 of file plimage.c.

◆ pl_cpcolor()

PLDLLIMPEXP void pl_cpcolor ( PLColor to,
PLColor from 
)

Definition at line 2738 of file plcore.c.

◆ pl_create_tempfifo()

PLDLLIMPEXP char* pl_create_tempfifo ( const char **  p_fifoname,
const char **  p_dirname 
)

Definition at line 344 of file plstdio.c.

◆ pl_create_tempfile()

PLDLLIMPEXP FILE* pl_create_tempfile ( char **  fname)

Definition at line 240 of file plstdio.c.

◆ pl_exit()

void pl_exit ( void  )

◆ plabort()

PLDLLIMPEXP void plabort ( PLCHAR_VECTOR  errormsg)

Much the same as plwarn(), but appends ", aborting operation" to the error message. Helps to keep source code uncluttered and provides a convention for error aborts.

If cleanup needs to be done in the main program, the user should write his/her own exit handler and pass it in via plsabort().

Parameters
errormsgThe error message.

Definition at line 1894 of file plctrl.c.

◆ plcmap1_calc()

PLDLLIMPEXP void plcmap1_calc ( void  )

Bin up cmap 1 space and assign colors to make inverse mapping easy.

Definition at line 764 of file plctrl.c.

◆ PLDLLIMPEXP_DATA()

PLDLLIMPEXP_DATA ( PLStream )

◆ pldprec()

void pldprec ( PLFLT  vmin,
PLFLT  vmax,
PLFLT  tick,
PLINT  lf,
PLINT mode,
PLINT prec,
PLINT  digmax,
PLINT scale 
)

Definition at line 251 of file pldtik.c.

◆ pldtfac()

void pldtfac ( PLFLT  vmin,
PLFLT  vmax,
PLFLT factor,
PLFLT tstart 
)

Definition at line 122 of file pldtik.c.

◆ pldtik()

void pldtik ( PLFLT  vmin,
PLFLT  vmax,
PLFLT tick,
PLINT nsubt,
PLBOOL  ld 
)

Definition at line 36 of file pldtik.c.

◆ plexit()

PLDLLIMPEXP void plexit ( PLCHAR_VECTOR  errormsg)

In case of an abort this routine is called. It just prints out an error message and tries to clean up as much as possible. It's best to turn off pause and then restore previous setting before returning.

If cleanup needs to be done in the main program, the user should write his/her own exit handler and pass it in via plsexit(). This function should should either call plend() before exiting, or simply return.

Parameters
errormsgThe error message.

Definition at line 1958 of file plctrl.c.

◆ plfill_soft()

PLDLLIMPEXP void plfill_soft ( short *  x,
short *  y,
PLINT  npts 
)

Definition at line 307 of file plfill.c.

◆ plfntld()

void plfntld ( PLINT  fnt)

Definition at line 1394 of file plsym.c.

◆ plfontrel()

void plfontrel ( void  )

Definition at line 1463 of file plsym.c.

◆ plfvect()

PLDLLIMPEXP void plfvect ( PLFLT(*)(PLINT, PLINT, PLPointer plf2eval,
PLPointer  f2evalv_data,
PLPointer  f2evalc_data,
PLINT  nx,
PLINT  ny,
PLFLT  scale,
void(*)(PLFLT, PLFLT, PLFLT *, PLFLT *, PLPointer pltr,
PLPointer  pltr_data 
)

◆ plHelpDrvOpts()

void plHelpDrvOpts ( DrvOpt acc_opt)

Give driver specific help

Parameters
acc_opt?

Definition at line 1540 of file plargs.c.

◆ plhershey2unicode()

int plhershey2unicode ( int  in)

Definition at line 1490 of file plsym.c.

◆ plhrsh()

void plhrsh ( PLINT  ch,
PLINT  x,
PLINT  y 
)

Definition at line 359 of file plsym.c.

◆ plimageslow()

void plimageslow ( PLFLT idata,
PLINT  nx,
PLINT  ny,
PLFLT  xmin,
PLFLT  ymin,
PLFLT  dx,
PLFLT  dy,
void(*)(PLFLT, PLFLT, PLFLT *, PLFLT *, PLPointer pltr,
PLPointer  pltr_data 
)

◆ plInBuildTree()

PLDLLIMPEXP int plInBuildTree ( void  )

Definition at line 2888 of file plcore.c.

◆ plio_fgets()

void plio_fgets ( char *  ,
int  ,
FILE *   
)

Definition at line 142 of file plstdio.c.

◆ plio_fread()

void plio_fread ( void *  ,
size_t  ,
size_t  ,
FILE *   
)

Definition at line 98 of file plstdio.c.

◆ plio_fwrite()

void plio_fwrite ( void *  ,
size_t  ,
size_t  ,
FILE *   
)

Definition at line 68 of file plstdio.c.

◆ pllib_devinit()

PLDLLIMPEXP void pllib_devinit ( void  )

Definition at line 2874 of file plcore.c.

◆ pllib_init()

PLDLLIMPEXP void pllib_init ( void  )

Definition at line 2262 of file plcore.c.

◆ plLibOpen()

FILE* plLibOpen ( PLCHAR_VECTOR  fn)

Return file pointer to library file (such as a colormap palette). Locations checked: PLPLOT_LIB_ENV = current directory PLPLOT_HOME_ENV/lib = /lib DATA_DIR PLLIBDEV

Parameters
fnName of the file.
Returns
A open file pointer (if successful).

Definition at line 2229 of file plctrl.c.

◆ plP_affine_identity()

PLDLLIMPEXP void plP_affine_identity ( PLFLT affine_vector)

Returns affine identity matrix

Parameters
affine_vectorInitialize a (pre-allocated) transform matrix.

Definition at line 56 of file plaffine.c.

◆ plP_affine_multiply()

PLDLLIMPEXP void plP_affine_multiply ( PLFLT affine_vectorA,
PLFLT_VECTOR  affine_vectorB,
PLFLT_VECTOR  affine_vectorC 
)

Multiply two affine transformation matrices to form a third.

A = B * C

Parameters
affine_vectorAPre-allocated storage for the result of multiplying matrix affine_vectorB by matrix affine_vectorC.
affine_vectorBFirst matrix to multiply.
affine_vectorCSecond matrix to multiply.

Definition at line 184 of file plaffine.c.

◆ plP_affine_rotate()

PLDLLIMPEXP void plP_affine_rotate ( PLFLT affine_vector,
PLFLT  angle 
)

Rotate new coordinate system axes relative to the old. angle is in degrees.

Parameters
affine_vectorPre-allocated storage for a rotation matrix.
angleAmount to rotate in degrees.

Definition at line 123 of file plaffine.c.

◆ plP_affine_scale()

PLDLLIMPEXP void plP_affine_scale ( PLFLT affine_vector,
PLFLT  xscale,
PLFLT  yscale 
)

Scale new coordinate system axes relative to the old.

Parameters
affine_vectorPre-allocate storage for a scale matrix.
xscaleAmount to scale in x.
yscaleAmount to scale in y.

Definition at line 93 of file plaffine.c.

◆ plP_affine_translate()

PLDLLIMPEXP void plP_affine_translate ( PLFLT affine_vector,
PLFLT  xtranslate,
PLFLT  ytranslate 
)

Translate new coordinate system axes relative to the old.

Parameters
affine_vectorPre-allocated storage for a translation matrix.
xtranslateAmount to translate in x.
ytranslateAmount to translate in y.

Definition at line 73 of file plaffine.c.

◆ plP_affine_xskew()

PLDLLIMPEXP void plP_affine_xskew ( PLFLT affine_vector,
PLFLT  angle 
)

Skew new X coordinate axis relative to the old. angle is in degrees.

Parameters
affine_vectorPre-allocated storage for a skew (in x) matrix.
angleAmount to skew in degrees.

Definition at line 143 of file plaffine.c.

◆ plP_affine_yskew()

PLDLLIMPEXP void plP_affine_yskew ( PLFLT affine_vector,
PLFLT  angle 
)

Skew new Y coordinate axis relative to the old. angle is in degrees.

Parameters
affine_vectorPre-allocated storage for a skew (in y) matrix.
angleAmount to skew in degrees.

Definition at line 162 of file plaffine.c.

◆ plP_bop()

PLDLLIMPEXP void plP_bop ( void  )

Definition at line 198 of file plcore.c.

◆ plP_checkdriverinit()

PLINT plP_checkdriverinit ( char *  names)

Definition at line 4332 of file plcore.c.

◆ plP_clip_poly()

int plP_clip_poly ( int  Ni,
PLFLT Vi[3],
int  axis,
PLFLT  dir,
PLFLT  offset 
)

Definition at line 166 of file plot3d.c.

◆ plP_clipline()

int plP_clipline ( PLINT p_x1,
PLINT p_y1,
PLINT p_x2,
PLINT p_y2,
PLINT  xmin,
PLINT  xmax,
PLINT  ymin,
PLINT  ymax 
)

Definition at line 697 of file plline.c.

◆ plP_dcmmx()

PLFLT plP_dcmmx ( PLFLT  x)

Definition at line 155 of file plcvt.c.

◆ plP_dcmmy()

PLFLT plP_dcmmy ( PLFLT  y)

Definition at line 163 of file plcvt.c.

◆ plP_dcpcx()

PLINT plP_dcpcx ( PLFLT  x)

Definition at line 31 of file plcvt.c.

◆ plP_dcpcy()

PLINT plP_dcpcy ( PLFLT  y)

Definition at line 39 of file plcvt.c.

◆ plP_dcscx()

PLFLT plP_dcscx ( PLFLT  x)

Definition at line 191 of file plcvt.c.

◆ plP_dcscy()

PLFLT plP_dcscy ( PLFLT  y)

Definition at line 199 of file plcvt.c.

◆ plP_draphy()

void plP_draphy ( PLINT  x,
PLINT  y 
)

Definition at line 472 of file plline.c.

◆ plP_draphy_poly()

void plP_draphy_poly ( PLINT x,
PLINT y,
PLINT  n 
)

Definition at line 527 of file plline.c.

◆ plP_drawor()

void plP_drawor ( PLFLT  x,
PLFLT  y 
)

Definition at line 505 of file plline.c.

◆ plP_drawor_poly()

void plP_drawor_poly ( PLFLT_VECTOR  x,
PLFLT_VECTOR  y,
PLINT  n 
)

Definition at line 554 of file plline.c.

◆ plP_eop()

PLDLLIMPEXP void plP_eop ( void  )

Definition at line 164 of file plcore.c.

◆ plP_esc()

PLDLLIMPEXP void plP_esc ( PLINT  op,
void *  ptr 
)

Definition at line 273 of file plcore.c.

◆ plP_FCI2FontName()

PLDLLIMPEXP const char* plP_FCI2FontName ( PLUNICODE  fci,
const FCI_to_FontName_Table  lookup[],
const int  nlookup 
)

Definition at line 1548 of file plsym.c.

◆ plP_fci2hex()

PLDLLIMPEXP void plP_fci2hex ( PLUNICODE  fci,
unsigned char *  phexdigit,
unsigned char  hexpower 
)

Definition at line 3958 of file plcore.c.

◆ plP_fill()

PLDLLIMPEXP void plP_fill ( short *  x,
short *  y,
PLINT  npts 
)

Definition at line 451 of file plcore.c.

◆ plP_FreeDrvOpts()

void plP_FreeDrvOpts ( void  )

Tidy up and free memory associated with driver options

Definition at line 1560 of file plargs.c.

◆ plP_gclp()

void plP_gclp ( PLINT p_ixmin,
PLINT p_ixmax,
PLINT p_iymin,
PLINT p_iymax 
)

Definition at line 4174 of file plcore.c.

◆ plP_gdom()

void plP_gdom ( PLFLT p_xmin,
PLFLT p_xmax,
PLFLT p_ymin,
PLFLT p_ymax 
)

Definition at line 4141 of file plcore.c.

◆ plP_getinitdriverlist()

void PLDLLIMPEXP plP_getinitdriverlist ( char *  names)

Definition at line 4302 of file plcore.c.

◆ plP_gphy()

PLDLLIMPEXP void plP_gphy ( PLINT p_ixmin,
PLINT p_ixmax,
PLINT p_iymin,
PLINT p_iymax 
)

Definition at line 4198 of file plcore.c.

◆ plP_gpixmm()

PLDLLIMPEXP void plP_gpixmm ( PLFLT p_x,
PLFLT p_y 
)

Definition at line 4229 of file plcore.c.

◆ plP_gprec()

void plP_gprec ( PLINT p_setp,
PLINT p_prec 
)

Definition at line 3869 of file plcore.c.

◆ plP_gradient()

void plP_gradient ( short *  x,
short *  y,
PLINT  npts 
)

Definition at line 516 of file plcore.c.

◆ plP_grange()

void plP_grange ( PLFLT p_zscl,
PLFLT p_zmin,
PLFLT p_zmax 
)

Definition at line 4152 of file plcore.c.

◆ plP_gsub()

PLDLLIMPEXP void plP_gsub ( PLINT p_nx,
PLINT p_ny,
PLINT p_cs 
)

Definition at line 4209 of file plcore.c.

◆ plP_gtimefmt()

const char* plP_gtimefmt ( void  )

Definition at line 3876 of file plcore.c.

◆ plP_gw3wc()

void plP_gw3wc ( PLFLT p_dxx,
PLFLT p_dxy,
PLFLT p_dyx,
PLFLT p_dyy,
PLFLT p_dyz 
)

Definition at line 4162 of file plcore.c.

◆ plP_gzback()

void plP_gzback ( PLINT **  zbf,
PLINT **  zbc,
PLFLT **  zbt,
PLFLT **  zbw 
)

Definition at line 1551 of file plot3d.c.

◆ plP_hex2fci()

void plP_hex2fci ( unsigned char  hexdigit,
unsigned char  hexpower,
PLUNICODE pfci 
)

Definition at line 3945 of file plcore.c.

◆ plP_image()

void plP_image ( PLFLT z,
PLINT  nx,
PLINT  ny,
PLFLT  xmin,
PLFLT  ymin,
PLFLT  dx,
PLFLT  dy,
void(*)(PLFLT, PLFLT, PLFLT *, PLFLT *, PLPointer pltr,
PLPointer  pltr_data 
)

Definition at line 4375 of file plcore.c.

◆ plP_init()

void plP_init ( void  )

Definition at line 145 of file plcore.c.

◆ plP_line()

void plP_line ( short *  x,
short *  y 
)

Definition at line 388 of file plcore.c.

◆ plP_mmdcx()

PLFLT plP_mmdcx ( PLFLT  x)

Definition at line 103 of file plcvt.c.

◆ plP_mmdcy()

PLFLT plP_mmdcy ( PLFLT  y)

Definition at line 111 of file plcvt.c.

◆ plP_mmpcx()

PLINT plP_mmpcx ( PLFLT  x)

Definition at line 47 of file plcvt.c.

◆ plP_mmpcy()

PLINT plP_mmpcy ( PLFLT  y)

Definition at line 55 of file plcvt.c.

◆ plP_movphy()

void plP_movphy ( PLINT  x,
PLINT  y 
)

Definition at line 459 of file plline.c.

◆ plP_movwor()

void plP_movwor ( PLFLT  x,
PLFLT  y 
)

Definition at line 489 of file plline.c.

◆ plP_pcdcx()

PLFLT plP_pcdcx ( PLINT  x)

Definition at line 87 of file plcvt.c.

◆ plP_pcdcy()

PLFLT plP_pcdcy ( PLINT  y)

Definition at line 95 of file plcvt.c.

◆ plP_plfclp()

void plP_plfclp ( PLINT x,
PLINT y,
PLINT  npts,
PLINT  xmin,
PLINT  xmax,
PLINT  ymin,
PLINT  ymax,
void(*)(short *, short *, PLINT draw 
)

Definition at line 538 of file plfill.c.

◆ plP_pllclp()

void plP_pllclp ( PLINT x,
PLINT y,
PLINT  npts,
PLINT  xmin,
PLINT  xmax,
PLINT  ymin,
PLINT  ymax,
void(*)(short *, short *, PLINT draw 
)

Definition at line 599 of file plline.c.

◆ plP_pointinpolygon()

int plP_pointinpolygon ( PLINT  n,
PLFLT_VECTOR  x,
PLFLT_VECTOR  y,
PLFLT  xp,
PLFLT  yp 
)

Definition at line 1212 of file plfill.c.

◆ plP_polyline()

void plP_polyline ( short *  x,
short *  y,
PLINT  npts 
)

Definition at line 417 of file plcore.c.

◆ plP_scdcx()

PLFLT plP_scdcx ( PLFLT  x)

Definition at line 135 of file plcvt.c.

◆ plP_scdcy()

PLFLT plP_scdcy ( PLFLT  y)

Definition at line 143 of file plcvt.c.

◆ plP_sclp()

void plP_sclp ( PLINT  ixmin,
PLINT  ixmax,
PLINT  iymin,
PLINT  iymax 
)

Definition at line 4185 of file plcore.c.

◆ plP_script_scale()

PLDLLIMPEXP void plP_script_scale ( PLBOOL  ifupper,
PLINT level,
PLFLT old_scale,
PLFLT scale,
PLFLT old_offset,
PLFLT offset 
)

Calculate scale of font size and scale of magnitude of vertical offset associated with superscripts and subscripts. Notes on arguments: ifupper must be either TRUE or FALSE on every call to plP_script_scale. The contents of the location pointed to by the level pointer must be zero on the first call to plP_script_scale, but not modified externally from then on. The contents of the locations pointed to by all other pointer arguments are initialized internally, and should not be modified externally.

Parameters
ifupperValue which is TRUE if superscripting, i.e., if incrementing the previous level, and FALSE if subscripting, i.e., decrementing the previous level.
levelPointer to a location which contains the value of the superscript/subscript level. That value is 0, +-1, +-2, etc., for no superscript/subscript, the first level of superscript/subscript, the second level of superscript/subscript, etc. Before the call the value is the old level, and after the call the value will be incremented (ifupper TRUE) or decremented (ifupper FALSE) from the previous value.
old_scaleA pointer to a location that contains after the call the old font size scale value.
scaleA pointer to a location that contains after the call the font size scale value. This value is 0.75^{|level|} where |level| is the magnitude of the value of the superscript/subscript level after the call.
old_offsetA pointer to a location that contains after the call the old value of the magnitude of the superscript/subscript offset.
offsetA pointer to a location that contains after the call the value of the magnitude of the superscript/subscript offset which is zero for |level|=0 and sum_{i=1}^{i=|level|} 0.75^{i-1}, otherwise.

Definition at line 1302 of file plsym.c.

◆ plP_setphy()

PLDLLIMPEXP void plP_setphy ( PLINT  xmin,
PLINT  xmax,
PLINT  ymin,
PLINT  ymax 
)

Definition at line 4249 of file plcore.c.

◆ plP_setpxl()

PLDLLIMPEXP void plP_setpxl ( PLFLT  xpmm0,
PLFLT  ypmm0 
)

Definition at line 4238 of file plcore.c.

◆ plP_setsub()

PLDLLIMPEXP void plP_setsub ( void  )

Set up the subpage boundaries according to the current subpage selected.

Definition at line 189 of file plpage.c.

◆ plP_ssub()

PLDLLIMPEXP void plP_ssub ( PLINT  nx,
PLINT  ny,
PLINT  cs 
)

Definition at line 4219 of file plcore.c.

◆ plP_state()

PLDLLIMPEXP void plP_state ( PLINT  op)

Definition at line 256 of file plcore.c.

◆ plP_stindex()

PLINT plP_stindex ( PLCHAR_VECTOR  str1,
PLCHAR_VECTOR  str2 
)

Definition at line 1233 of file plsym.c.

◆ plP_strpos()

PLDLLIMPEXP PLINT plP_strpos ( PLCHAR_VECTOR  str,
int  chr 
)

Definition at line 1216 of file plsym.c.

◆ plP_stsearch()

PLBOOL plP_stsearch ( PLCHAR_VECTOR  str,
int  chr 
)

Definition at line 1256 of file plsym.c.

◆ plP_subpInit()

void plP_subpInit ( void  )

Set up plot parameters according to the number of subpages.

Definition at line 134 of file plpage.c.

◆ plP_swin()

void plP_swin ( PLWindow plwin)

Definition at line 308 of file plcore.c.

◆ plP_text()

void plP_text ( PLINT  base,
PLFLT  just,
PLFLT xform,
PLINT  x,
PLINT  y,
PLINT  refx,
PLINT  refy,
PLCHAR_VECTOR  string 
)

Definition at line 1186 of file plcore.c.

◆ plP_tidy()

void plP_tidy ( void  )

Definition at line 231 of file plcore.c.

◆ plP_w3wcx()

PLFLT plP_w3wcx ( PLFLT  x,
PLFLT  y,
PLFLT  z 
)

◆ plP_w3wcy()

PLFLT plP_w3wcy ( PLFLT  x,
PLFLT  y,
PLFLT  z 
)

Definition at line 222 of file plcvt.c.

◆ plP_w3wcz()

PLFLT plP_w3wcz ( PLFLT  x,
PLFLT  y,
PLFLT  z 
)

Definition at line 233 of file plcvt.c.

◆ plP_wait()

PLDLLIMPEXP void plP_wait ( void  )

Definition at line 365 of file plcore.c.

◆ plP_wcdcx()

PLFLT plP_wcdcx ( PLFLT  x)

Definition at line 119 of file plcvt.c.

◆ plP_wcdcy()

PLFLT plP_wcdcy ( PLFLT  y)

Definition at line 127 of file plcvt.c.

◆ plP_wcmmx()

PLFLT plP_wcmmx ( PLFLT  x)

Definition at line 171 of file plcvt.c.

◆ plP_wcmmy()

PLFLT plP_wcmmy ( PLFLT  y)

Definition at line 179 of file plcvt.c.

◆ plP_wcpcx()

PLINT plP_wcpcx ( PLFLT  x)

Definition at line 63 of file plcvt.c.

◆ plP_wcpcy()

PLINT plP_wcpcy ( PLFLT  y)

Definition at line 73 of file plcvt.c.

◆ plP_xgvpw()

void plP_xgvpw ( PLFLT p_xmin,
PLFLT p_xmax,
PLFLT p_ymin,
PLFLT p_ymax 
)

Definition at line 4118 of file plcore.c.

◆ plParseDrvOpts()

PLDLLIMPEXP int plParseDrvOpts ( DrvOpt acc_opt)

Parse driver specific options

Parameters
acc_opt?
Returns
0 if successful.

Definition at line 1461 of file plargs.c.

◆ plreadmetafile()

PLDLLIMPEXP void plreadmetafile ( char *  infile)

Reads a PLplot metafile and uses the current plot stream to display the contents. If the plot stream has not been initialized, this routine will attempt to intialize the plot stream via a plinit() call. For an initialized plot stream, the metafile will start at the current page/subpage.

Parameters
infileInput PLplot metafile name.

Pass NULL for infile to use the filename passed from the command line option -mfi.

Returns void

Definition at line 1122 of file plmetafile.c.

◆ plrestore_locale()

PLDLLIMPEXP void plrestore_locale ( char *  saved_lc_numeric_locale)

Restore LC_NUMERIC locale string that was determined by plsave_set_locale with the pointer to that string as the argument. Also, free the memory for that string.

Parameters
saved_lc_numeric_localeThe saved numeric locale..

Definition at line 3145 of file plctrl.c.

◆ plRotationShear()

PLDLLIMPEXP void plRotationShear ( PLFLT xFormMatrix,
PLFLT rotation,
PLFLT shear,
PLFLT stride 
)

Definition at line 2767 of file plot3d.c.

◆ plsave_set_locale()

PLDLLIMPEXP char* plsave_set_locale ( void  )

Save LC_NUMERIC locale in a string. The pointer to that string is returned. Then set LC_NUMERIC to "C" locale. n.b. plsave_set_locale and plrestore_locale should always be used as a pair to surround PLplot code that absolutely requires the LC_NUMERIC "C" locale to be in effect. It is one of plrestore_locale's responsibilities to free the memory allocated here for the locale string.

Returns
The LC_NUMERIC locale.

Definition at line 3101 of file plctrl.c.

◆ plsnprintf()

int plsnprintf ( char *  buffer,
int  n,
PLCHAR_VECTOR  format,
  ... 
)

Dummy function for snprintf(). This function just calls the unsafe function ignoring the string size. This function will rarely be needed if ever.

Parameters
bufferString output buffer.
nSize of buffer.
formatThe format string.
...The values that go in the format string (...)
Returns
The length of buffer that is actually used.

Definition at line 3013 of file plctrl.c.

◆ plsnscanf()

int plsnscanf ( PLCHAR_VECTOR  buffer,
int  n,
PLCHAR_VECTOR  format,
  ... 
)

Dummy function for snscanf(). This function just calls the unsafe function ignoring the string size. This function will rarely be needed if ever.

Parameters
bufferString output buffer.
nSize of buffer.
formatThe format string.
...The values that go in the format string (...)
Returns
The length of buffer that is actually used.

Definition at line 3045 of file plctrl.c.

◆ plstik()

void plstik ( PLFLT  mx,
PLFLT  my,
PLFLT  dx,
PLFLT  dy 
)

Definition at line 130 of file pltick.c.

◆ plstr()

void plstr ( PLINT  base,
PLFLT xform,
PLINT  refx,
PLINT  refy,
PLCHAR_VECTOR  string 
)

Definition at line 810 of file plsym.c.

◆ plstrdup()

PLDLLIMPEXP char* plstrdup ( PLCHAR_VECTOR  src)

A replacement for strdup(), which isn't portable. Caller responsible for freeing the allocated memory.

Parameters
srcThe string to duplicate.
Returns
A copy of the string src.

Definition at line 2985 of file plctrl.c.

◆ plstrl()

PLFLT plstrl ( PLCHAR_VECTOR  string)

Definition at line 976 of file plsym.c.

◆ plstrm_init()

void plstrm_init ( void  )

Definition at line 2711 of file plcore.c.

◆ plwarn()

PLDLLIMPEXP void plwarn ( PLCHAR_VECTOR  errormsg)

A handy way to issue warnings, if need be.

Parameters
errormsgThe error message.

Definition at line 1863 of file plctrl.c.

◆ plwxtik()

void plwxtik ( PLFLT  x,
PLFLT  y,
PLBOOL  minor,
PLBOOL  invert 
)

Definition at line 30 of file pltick.c.

◆ plwytik()

void plwytik ( PLFLT  x,
PLFLT  y,
PLBOOL  minor,
PLBOOL  invert 
)

Definition at line 66 of file pltick.c.

◆ plxtik()

void plxtik ( PLINT  x,
PLINT  y,
PLINT  below,
PLINT  above 
)

Definition at line 103 of file pltick.c.

◆ plytik()

void plytik ( PLINT  x,
PLINT  y,
PLINT  left,
PLINT  right 
)

Definition at line 116 of file pltick.c.

◆ RestoreWrite2BufferPixmap()

void RestoreWrite2BufferPixmap ( void  )

Definition at line 51 of file plimage.c.

◆ ucs4_to_utf8()

PLDLLIMPEXP int ucs4_to_utf8 ( PLUNICODE  unichar,
char *  ptr 
)

Definition at line 1329 of file plcore.c.

Variable Documentation

◆ hershey_to_unicode_lookup_table

Hershey_to_Unicode_table hershey_to_unicode_lookup_table[]

Definition at line 48 of file plhershey-unicode.h.

◆ number_of_entries_in_hershey_to_unicode_table

int number_of_entries_in_hershey_to_unicode_table

Definition at line 40 of file plhershey-unicode.h.

◆ plP_greek_mnemonic

const char plP_greek_mnemonic[]

Definition at line 142 of file plcore.c.