|  |  |  | Goffice Reference Manual |  | 
|---|---|---|---|---|
| Top | Description | ||||
                    GOPath;
enum                GOPathDirection;
enum                GOPathOptions;
                    GOPathPoint;
GOPath *            go_path_new                         (void);
void                go_path_set_options                 (GOPath *path,
                                                         GOPathOptions options);
GOPathOptions       go_path_get_options                 (GOPath const *path);
void                go_path_arc                         (GOPath *path,
                                                         double cx,
                                                         double cy,
                                                         double rx,
                                                         double ry,
                                                         double th0,
                                                         double th1);
void                go_path_arc_to                      (GOPath *path,
                                                         double cx,
                                                         double cy,
                                                         double rx,
                                                         double ry,
                                                         double th0,
                                                         double th1);
void                go_path_clear                       (GOPath *path);
void                go_path_close                       (GOPath *path);
void                go_path_curve_to                    (GOPath *path,
                                                         double x0,
                                                         double y0,
                                                         double x1,
                                                         double y1,
                                                         double x2,
                                                         double y2);
void                go_path_free                        (GOPath *path);
void                go_path_line_to                     (GOPath *path,
                                                         double x,
                                                         double y);
void                go_path_move_to                     (GOPath *path,
                                                         double x,
                                                         double y);
void                go_path_pie_wedge                   (GOPath *path,
                                                         double cx,
                                                         double cy,
                                                         double rx,
                                                         double ry,
                                                         double th0,
                                                         double th1);
void                go_path_rectangle                   (GOPath *path,
                                                         double x,
                                                         double y,
                                                         double width,
                                                         double height);
void                go_path_ring_wedge                  (GOPath *path,
                                                         double cx,
                                                         double cy,
                                                         double rx_out,
                                                         double ry_out,
                                                         double rx_in,
                                                         double ry_in,
                                                         double th0,
                                                         double th1);
void                go_path_interpret                   (GOPath const *path,
                                                         GOPathDirection direction,
                                                         GOPathMoveToFunc *move_to,
                                                         GOPathLineToFunc *line_to,
                                                         GOPathCurveToFunc *curve_to,
                                                         GOPathClosePathFunc *close_path,
                                                         void *closure);
void                go_path_to_cairo                    (GOPath const *path,
                                                         GOPathDirection direction,
                                                         cairo_t *cr);
GOPath *            go_path_copy                        (GOPath const *path);
GOPath *            go_path_append                      (GOPath *path1,
                                                         GOPath const *path2);
typedef enum {
	GO_PATH_DIRECTION_FORWARD,
	GO_PATH_DIRECTION_BACKWARD
} GOPathDirection;
typedef enum {
	GO_PATH_OPTIONS_SNAP_COORDINATES 	= 1<<0,
	GO_PATH_OPTIONS_SNAP_WIDTH		= 1<<1,
	GO_PATH_OPTIONS_SHARP			= 3
} GOPathOptions;
void go_path_set_options (GOPath *path, GOPathOptions options);
Change the rendering options for path using
GO_PATH_OPTIONS_SNAP_COORDINATES
GO_PATH_OPTIONS_SNAP_WIDTH
GO_PATH_OPTIONS_SHARP
| 
 | a GOPath | 
| 
 | GOPathOptions | 
void go_path_arc (GOPath *path, double cx, double cy, double rx, double ry, double th0, double th1);
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | 
void go_path_arc_to (GOPath *path, double cx, double cy, double rx, double ry, double th0, double th1);
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | 
void go_path_curve_to (GOPath *path, double x0, double y0, double x1, double y1, double x2, double y2);
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | 
void go_path_free (GOPath *path);
Decrements references count and frees all memory allocated for path if
references count reaches 0.
| 
 | a GOPath | 
void go_path_pie_wedge (GOPath *path, double cx, double cy, double rx, double ry, double th0, double th1);
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | 
void go_path_rectangle (GOPath *path, double x, double y, double width, double height);
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | 
void go_path_ring_wedge (GOPath *path, double cx, double cy, double rx_out, double ry_out, double rx_in, double ry_in, double th0, double th1);
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | 
void go_path_interpret (GOPath const *path, GOPathDirection direction, GOPathMoveToFunc *move_to, GOPathLineToFunc *line_to, GOPathCurveToFunc *curve_to, GOPathClosePathFunc *close_path, void *closure);
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | 
void go_path_to_cairo (GOPath const *path, GOPathDirection direction, cairo_t *cr);
| 
 | |
| 
 | |
| 
 |