GRASS GIS 8 Programmer's Manual  8.5.0dev(2024)-4d852dd394
path.h
Go to the documentation of this file.
1 #ifndef DRIVERLIB_PATH_H
2 #define DRIVERLIB_PATH_H
3 
4 enum path_mode {
8 };
9 
10 struct vertex {
11  double x, y;
12  int mode;
13 };
14 
15 struct path {
16  struct vertex *vertices;
17  int count;
18  int alloc;
19  int start;
20 };
21 
22 void path_init(struct path *);
23 void path_free(struct path *);
24 void path_alloc(struct path *, int);
25 void path_reset(struct path *);
26 void path_append(struct path *, double, double, int);
27 void path_copy(struct path *, const struct path *);
28 void path_begin(struct path *);
29 void path_move(struct path *, double, double);
30 void path_cont(struct path *, double, double);
31 void path_close(struct path *);
32 void path_stroke(struct path *, void (*)(double, double, double, double));
33 
34 #endif
void path_cont(struct path *, double, double)
Definition: driver/path.c:78
void path_init(struct path *)
Definition: driver/path.c:4
void path_alloc(struct path *, int)
Definition: driver/path.c:22
void path_append(struct path *, double, double, int)
Definition: driver/path.c:37
void path_reset(struct path *)
Definition: driver/path.c:31
path_mode
Definition: path.h:4
@ P_CONT
Definition: path.h:6
@ P_MOVE
Definition: path.h:5
@ P_CLOSE
Definition: path.h:7
void path_close(struct path *)
Definition: driver/path.c:83
void path_move(struct path *, double, double)
Definition: driver/path.c:72
void path_begin(struct path *)
Definition: driver/path.c:66
void path_free(struct path *)
Definition: driver/path.c:12
void path_stroke(struct path *, void(*)(double, double, double, double))
Definition: driver/path.c:96
void path_copy(struct path *, const struct path *)
Definition: driver/path.c:51
Definition: path.h:15
int count
Definition: path.h:17
int start
Definition: path.h:19
struct vertex * vertices
Definition: path.h:16
int alloc
Definition: path.h:18
Definition: path.h:10
int mode
Definition: path.h:12
double x
Definition: path.h:11
double y
Definition: path.h:11