EFL graphics path object interface
Append an arc that enclosed in the given rectangle (x, y, w, h). The angle is defined in counter clock wise , use -ve angle for clockwise arc.
void efl_gfx_path_append_arc(Eo *obj, double x, double y, double w, double h, double start_angle, double sweep_length);
Append an arc that connects from the current point int the point list to the given point (x,y). The arc is defined by the given radius in x-direction (rx) and radius in y direction (ry).
void efl_gfx_path_append_arc_to(Eo *obj, double x, double y, double rx, double ry, double angle, Eina_Bool large_arc, Eina_Bool sweep);
Append a circle with given center and radius.
void efl_gfx_path_append_circle(Eo *obj, double x, double y, double radius);
Closes the current subpath by drawing a line to the beginning of the subpath, automatically starting a new path. The current point of the new path is (0, 0).
void efl_gfx_path_append_close(Eo *obj);
Adds a cubic Bezier curve between the current position and the given end point (x,y) using the control points specified by (ctrl_x0, ctrl_y0), and (ctrl_x1, ctrl_y1). After the path is drawn, the current position is updated to be at the end point of the path.
void efl_gfx_path_append_cubic_to(Eo *obj, double ctrl_x0, double ctrl_y0, double ctrl_x1, double ctrl_y1, double x, double y);
Adds a straight line from the current position to the given end point. After the line is drawn, the current position is updated to be at the end point of the line.
void efl_gfx_path_append_line_to(Eo *obj, double x, double y);
Moves the current point to the given point, implicitly starting a new subpath and closing the previous one.
void efl_gfx_path_append_move_to(Eo *obj, double x, double y);
Adds a quadratic Bezier curve between the current position and the given end point (x,y) using the control points specified by (ctrl_x, ctrl_y). After the path is drawn, the current position is updated to be at the end point of the path.
void efl_gfx_path_append_quadratic_to(Eo *obj, double x, double y, double ctrl_x, double ctrl_y);
Append the given rectangle with rounded corner to the path.
void efl_gfx_path_append_rect(Eo *obj, double x, double y, double w, double h, double rx, double ry);
Same as Efl.Gfx.Path.append_cubic_to api only difference is that it uses the current control point to draw the bezier.
void efl_gfx_path_append_scubic_to(Eo *obj, double x, double y, double ctrl_x, double ctrl_y);
Same as Efl.Gfx.Path.append_quadratic_to api only difference is that it uses the current control point to draw the bezier.
void efl_gfx_path_append_squadratic_to(Eo *obj, double x, double y);
Append SVG path data
void efl_gfx_path_append_svg_path(Eo *obj, const char *svg_path_data);
Compute and return the bounding box of the currently set path
void efl_gfx_path_bounds_get(const Eo *obj, Eina_Rect *r);
Request to update the path object.
void efl_gfx_path_commit(Eo *obj);
Copy the path data from the object specified.
void efl_gfx_path_copy_from(Eo *obj, const Efl_Object *dup_from);
current (get)
void efl_gfx_path_current_get(const Eo *obj, double *x, double *y);
current_ctrl (get)
void efl_gfx_path_current_ctrl_get(const Eo *obj, double *x, double *y);
destructor [Overridden from Efl.Object]
void efl_destructor(Eo *obj);
Equal commands in object
Eina_Bool efl_gfx_path_equal_commands(Eo *obj, const Efl_Object *with);
Creates intermediary path part-way between two paths
Eina_Bool efl_gfx_path_interpolate(Eo *obj, const Efl_Object *from, const Efl_Object *to, double pos_map);
length (get)
void efl_gfx_path_length_get(const Eo *obj, unsigned int *commands, unsigned int *points);
path (get, set)
Set the list of commands and points to be used to create the content of path.
void efl_gfx_path_get(const Eo *obj, const Efl_Gfx_Path_Command_Type **op, const double **points); void efl_gfx_path_set(Eo *obj, const Efl_Gfx_Path_Command_Type *op, const double *points);
Reserve path commands buffer in advance. If you know the count of path commands coming, you can reserve commands buffer in advance to avoid buffer growing job.
void efl_gfx_path_reserve(Eo *obj, unsigned int cmd_count, unsigned int pts_count);
Reset the path data of the path object.
void efl_gfx_path_reset(Eo *obj);