GooCanvas Reference Manual | ||||
---|---|---|---|---|
Top | Description | Object Hierarchy | Implemented Interfaces | Properties |
Synopsis
GooCanvasPath; GooCanvasItem* goo_canvas_path_new (GooCanvasItem *parent
,const gchar *path_data
,...
);
Properties
"data" gchar* : Write "height" gdouble : Read / Write "width" gdouble : Read / Write "x" gdouble : Read / Write "y" gdouble : Read / Write
Description
GooCanvasPath represents a path item, which is a series of one or more lines, bezier curves, or elliptical arcs.
It is a subclass of GooCanvasItemSimple and so inherits all of the style properties such as "stroke-color", "fill-color" and "line-width".
It also implements the GooCanvasItem interface, so you can use the
GooCanvasItem functions such as goo_canvas_item_raise()
and
goo_canvas_item_rotate()
.
GooCanvasPath uses the same path specification strings as the Scalable Vector Graphics (SVG) path element. For details see the SVG specification.
To create a GooCanvasPath use goo_canvas_path_new()
.
To get or set the properties of an existing GooCanvasPath, use
g_object_get()
and g_object_set()
.
Details
GooCanvasPath
typedef struct _GooCanvasPath GooCanvasPath;
The GooCanvasPath struct contains private data only.
goo_canvas_path_new ()
GooCanvasItem* goo_canvas_path_new (GooCanvasItem *parent
,const gchar *path_data
,...
);
Creates a new path item.
|
the parent item, or NULL . If a parent is specified, it will assume
ownership of the item, and the item will automatically be freed when it is
removed from the parent. Otherwise call g_object_unref() to free it.
|
|
the sequence of path commands, specified as a string using the same syntax as in the Scalable Vector Graphics (SVG) path element. |
|
optional pairs of property names and values, and a terminating NULL .
|
Returns : |
a new path item. |
Here's an example showing how to create a red line from (20,20) to (40,40):
1 2 3 4 |
GooCanvasItem *path = goo_canvas_path_new (mygroup, "M 20 20 L 40 40", "stroke-color", "red", NULL); |
This example creates a cubic bezier curve from (20,100) to (100,100) with the control points at (20,50) and (100,50):
1 2 3 4 |
GooCanvasItem *path = goo_canvas_path_new (mygroup, "M20,100 C20,50 100,50 100,100", "stroke-color", "blue", NULL); |
This example uses an elliptical arc to create a filled circle with one quarter missing:
1 2 3 4 5 6 |
GooCanvasItem *path = goo_canvas_path_new (mygroup, "M200,500 h-150 a150,150 0 1,0 150,-150 z", "fill-color", "red", "stroke-color", "blue", "line-width", 5.0, NULL); |
Property Details
The "data"
property
"data" gchar* : Write
The sequence of path commands, specified as a string using the same syntax as in the Scalable Vector Graphics (SVG) path element.
Default value: NULL
The "height"
property
"height" gdouble : Read / Write
The height of the path.
Allowed values: >= 0
Default value: 0
The "width"
property
"width" gdouble : Read / Write
The width of the path.
Allowed values: >= 0
Default value: 0