PLplot 5.15.0
Loading...
Searching...
No Matches
plfill.c File Reference
#include "plplotP.h"

Go to the source code of this file.

Classes

struct  point
 

Macros

#define INSIDE(ix, iy)
 
#define DTOR   ( PI / 180. )
 
#define BINC   50
 
#define PL_NBCC   2
 
#define BETW_NBCC(ix, ia, ib)
 
#define NEW_NOTPOINTINPOLYGON_CODE
 
#define MAX_RECURSION_DEPTH   10
 

Enumerations

enum  PL_CrossedStatus {
  PL_NOT_CROSSED = 0x1 , PL_NEAR_A1 = 0x2 , PL_NEAR_A2 = 0x4 , PL_NEAR_B1 = 0x8 ,
  PL_NEAR_B2 = 0x10 , PL_NEAR_PARALLEL = 0x20 , PL_PARALLEL = 0x40
}
 

Functions

static int compar (const void *, const void *)
 
static void addcoord (PLINT, PLINT)
 
static void tran (PLINT *, PLINT *, PLFLT, PLFLT)
 
static void buildlist (PLINT, PLINT, PLINT, PLINT, PLINT, PLINT, PLINT)
 
static int notpointinpolygon (PLINT n, PLINT_VECTOR x, PLINT_VECTOR y, PLINT xp, PLINT yp)
 
static int circulation (PLINT *x, PLINT *y, PLINT npts)
 
static int notcrossed (PLINT *xintersect, PLINT *yintersect, PLINT xA1, PLINT yA1, PLINT xA2, PLINT yA2, PLINT xB1, PLINT yB1, PLINT xB2, PLINT yB2)
 
void c_plfill (PLINT n, PLFLT_VECTOR x, PLFLT_VECTOR y)
 
void c_plfill3 (PLINT n, PLFLT_VECTOR x, PLFLT_VECTOR y, PLFLT_VECTOR z)
 
void plfill_soft (short *x, short *y, PLINT n)
 
void buildlist (PLINT xp1, PLINT yp1, PLINT xp2, PLINT yp2, PLINT PL_UNUSED(xp3), PLINT yp3, PLINT dinc)
 
void plP_plfclp (PLINT *x, PLINT *y, PLINT npts, PLINT xmin, PLINT xmax, PLINT ymin, PLINT ymax, void(*draw)(short *, short *, PLINT))
 
int plP_pointinpolygon (PLINT n, PLFLT_VECTOR x, PLFLT_VECTOR y, PLFLT xp, PLFLT yp)
 

Variables

static PLINT bufferleng
 
static PLINT buffersize
 
static PLINTbuffer
 

Macro Definition Documentation

◆ BETW_NBCC

#define BETW_NBCC ( ix,
ia,
ib )
Value:
( ( ( ix ) <= ( ia + PL_NBCC ) && ( ix ) >= ( ib - PL_NBCC ) ) || ( ( ix ) >= ( ia - PL_NBCC ) && ( ix ) <= ( ib + PL_NBCC ) ) )
#define PL_NBCC
Definition plfill.c:31

Definition at line 33 of file plfill.c.

◆ BINC

#define BINC   50

Definition at line 29 of file plfill.c.

◆ DTOR

#define DTOR   ( PI / 180. )

Definition at line 28 of file plfill.c.

◆ INSIDE

#define INSIDE ( ix,
iy )
Value:
( BETW( ix, xmin, xmax ) && BETW( iy, ymin, ymax ) )
#define BETW(ix, ia, ib)
Definition plplotP.h:205

Definition at line 26 of file plfill.c.

◆ MAX_RECURSION_DEPTH

#define MAX_RECURSION_DEPTH   10

Definition at line 1410 of file plfill.c.

◆ NEW_NOTPOINTINPOLYGON_CODE

#define NEW_NOTPOINTINPOLYGON_CODE

Definition at line 1256 of file plfill.c.

◆ PL_NBCC

#define PL_NBCC   2

Definition at line 31 of file plfill.c.

Enumeration Type Documentation

◆ PL_CrossedStatus

Enumerator
PL_NOT_CROSSED 
PL_NEAR_A1 
PL_NEAR_A2 
PL_NEAR_B1 
PL_NEAR_B2 
PL_NEAR_PARALLEL 
PL_PARALLEL 

Definition at line 59 of file plfill.c.

Function Documentation

◆ addcoord()

void addcoord ( PLINT xp1,
PLINT yp1 )
static

Definition at line 487 of file plfill.c.

◆ buildlist() [1/2]

void buildlist ( PLINT xp1,
PLINT yp1,
PLINT xp2,
PLINT yp2,
PLINT PL_UNUSEDxp3,
PLINT yp3,
PLINT dinc )

Definition at line 431 of file plfill.c.

◆ buildlist() [2/2]

static void buildlist ( PLINT ,
PLINT ,
PLINT ,
PLINT ,
PLINT ,
PLINT ,
PLINT  )
static

◆ c_plfill()

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

Definition at line 132 of file plfill.c.

◆ c_plfill3()

void c_plfill3 ( PLINT n,
PLFLT_VECTOR x,
PLFLT_VECTOR y,
PLFLT_VECTOR z )

Definition at line 202 of file plfill.c.

◆ circulation()

int circulation ( PLINT * x,
PLINT * y,
PLINT npts )
static

Definition at line 1183 of file plfill.c.

◆ compar()

int compar ( const void * pnum1,
const void * pnum2 )
static

Definition at line 509 of file plfill.c.

◆ notcrossed()

int notcrossed ( PLINT * xintersect,
PLINT * yintersect,
PLINT xA1,
PLINT yA1,
PLINT xA2,
PLINT yA2,
PLINT xB1,
PLINT yB1,
PLINT xB2,
PLINT yB2 )
static

Definition at line 1939 of file plfill.c.

◆ notpointinpolygon()

static int notpointinpolygon ( PLINT n,
PLINT_VECTOR x,
PLINT_VECTOR y,
PLINT xp,
PLINT yp )
static

Definition at line 1258 of file plfill.c.

◆ plfill_soft()

void plfill_soft ( short * x,
short * y,
PLINT n )

Definition at line 307 of file plfill.c.

◆ plP_plfclp()

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

Definition at line 538 of file plfill.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.

◆ tran()

void tran ( PLINT * a,
PLINT * b,
PLFLT c,
PLFLT d )
static

Definition at line 419 of file plfill.c.

Variable Documentation

◆ buffer

PLINT * buffer
static

Definition at line 74 of file plfill.c.

◆ bufferleng

PLINT bufferleng
static

Definition at line 74 of file plfill.c.

◆ buffersize

PLINT buffersize
static

Definition at line 74 of file plfill.c.