summaryrefslogtreecommitdiff
path: root/libs/cairo-1.16.0/doc/public/html/cairo-Paths.html
diff options
context:
space:
mode:
authorsanine <sanine.not@pm.me>2023-02-12 23:53:22 -0600
committersanine <sanine.not@pm.me>2023-02-12 23:53:22 -0600
commitf1fe73d1909a2448a004a88362a1a532d0d4f7c3 (patch)
treeab37ae3837e2f858de2932bcee9f26e69fab3db1 /libs/cairo-1.16.0/doc/public/html/cairo-Paths.html
parentf567ea1e2798fd3156a416e61f083ea3e6b95719 (diff)
switch to tinyobj and nanovg from assimp and cairo
Diffstat (limited to 'libs/cairo-1.16.0/doc/public/html/cairo-Paths.html')
-rw-r--r--libs/cairo-1.16.0/doc/public/html/cairo-Paths.html1550
1 files changed, 0 insertions, 1550 deletions
diff --git a/libs/cairo-1.16.0/doc/public/html/cairo-Paths.html b/libs/cairo-1.16.0/doc/public/html/cairo-Paths.html
deleted file mode 100644
index 5525a19..0000000
--- a/libs/cairo-1.16.0/doc/public/html/cairo-Paths.html
+++ /dev/null
@@ -1,1550 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Paths: Cairo: A Vector Graphics Library</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
-<link rel="home" href="index.html" title="Cairo: A Vector Graphics Library">
-<link rel="up" href="cairo-drawing.html" title="Drawing">
-<link rel="prev" href="cairo-cairo-t.html" title="cairo_t">
-<link rel="next" href="cairo-cairo-pattern-t.html" title="cairo_pattern_t">
-<meta name="generator" content="GTK-Doc V1.27 (XML mode)">
-<link rel="stylesheet" href="style.css" type="text/css">
-</head>
-<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
-<td width="100%" align="left" class="shortcuts">
-<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
- <a href="#cairo-Paths.description" class="shortcut">Description</a></span>
-</td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<td><a accesskey="u" href="cairo-drawing.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
-<td><a accesskey="p" href="cairo-cairo-t.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="n" href="cairo-cairo-pattern-t.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
-</tr></table>
-<div class="refentry">
-<a name="cairo-Paths"></a><div class="titlepage"></div>
-<div class="refnamediv"><table width="100%"><tr>
-<td valign="top">
-<h2><span class="refentrytitle"><a name="cairo-Paths.top_of_page"></a>Paths</span></h2>
-<p>Paths — Creating paths and manipulating path data</p>
-</td>
-<td class="gallery_image" valign="top" align="right"></td>
-</tr></table></div>
-<div class="refsect1">
-<a name="cairo-Paths.functions"></a><h2>Functions</h2>
-<div class="informaltable"><table class="informaltable" width="100%" border="0">
-<colgroup>
-<col width="150px" class="functions_return">
-<col class="functions_name">
-</colgroup>
-<tbody>
-<tr>
-<td class="function_type">
-<a class="link" href="cairo-Paths.html#cairo-path-t" title="cairo_path_t"><span class="returnvalue">cairo_path_t</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="cairo-Paths.html#cairo-copy-path" title="cairo_copy_path ()">cairo_copy_path</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="cairo-Paths.html#cairo-path-t" title="cairo_path_t"><span class="returnvalue">cairo_path_t</span></a> *
-</td>
-<td class="function_name">
-<a class="link" href="cairo-Paths.html#cairo-copy-path-flat" title="cairo_copy_path_flat ()">cairo_copy_path_flat</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="cairo-Paths.html#cairo-path-destroy" title="cairo_path_destroy ()">cairo_path_destroy</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="cairo-Paths.html#cairo-append-path" title="cairo_append_path ()">cairo_append_path</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<a class="link" href="cairo-Types.html#cairo-bool-t" title="cairo_bool_t"><span class="returnvalue">cairo_bool_t</span></a>
-</td>
-<td class="function_name">
-<a class="link" href="cairo-Paths.html#cairo-has-current-point" title="cairo_has_current_point ()">cairo_has_current_point</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="cairo-Paths.html#cairo-get-current-point" title="cairo_get_current_point ()">cairo_get_current_point</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="cairo-Paths.html#cairo-new-path" title="cairo_new_path ()">cairo_new_path</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="cairo-Paths.html#cairo-new-sub-path" title="cairo_new_sub_path ()">cairo_new_sub_path</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="cairo-Paths.html#cairo-close-path" title="cairo_close_path ()">cairo_close_path</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="cairo-Paths.html#cairo-arc" title="cairo_arc ()">cairo_arc</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="cairo-Paths.html#cairo-arc-negative" title="cairo_arc_negative ()">cairo_arc_negative</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="cairo-Paths.html#cairo-curve-to" title="cairo_curve_to ()">cairo_curve_to</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="cairo-Paths.html#cairo-line-to" title="cairo_line_to ()">cairo_line_to</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="cairo-Paths.html#cairo-move-to" title="cairo_move_to ()">cairo_move_to</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="cairo-Paths.html#cairo-rectangle" title="cairo_rectangle ()">cairo_rectangle</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="cairo-Paths.html#cairo-glyph-path" title="cairo_glyph_path ()">cairo_glyph_path</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="cairo-Paths.html#cairo-text-path" title="cairo_text_path ()">cairo_text_path</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="cairo-Paths.html#cairo-rel-curve-to" title="cairo_rel_curve_to ()">cairo_rel_curve_to</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="cairo-Paths.html#cairo-rel-line-to" title="cairo_rel_line_to ()">cairo_rel_line_to</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="cairo-Paths.html#cairo-rel-move-to" title="cairo_rel_move_to ()">cairo_rel_move_to</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-<tr>
-<td class="function_type">
-<span class="returnvalue">void</span>
-</td>
-<td class="function_name">
-<a class="link" href="cairo-Paths.html#cairo-path-extents" title="cairo_path_extents ()">cairo_path_extents</a> <span class="c_punctuation">()</span>
-</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect1">
-<a name="cairo-Paths.other"></a><h2>Types and Values</h2>
-<div class="informaltable"><table class="informaltable" width="100%" border="0">
-<colgroup>
-<col width="150px" class="name">
-<col class="description">
-</colgroup>
-<tbody>
-<tr>
-<td class="datatype_keyword"> </td>
-<td class="function_name"><a class="link" href="cairo-Paths.html#cairo-path-t" title="cairo_path_t">cairo_path_t</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword">union</td>
-<td class="function_name"><a class="link" href="cairo-Paths.html#cairo-path-data-t" title="union cairo_path_data_t">cairo_path_data_t</a></td>
-</tr>
-<tr>
-<td class="datatype_keyword">enum</td>
-<td class="function_name"><a class="link" href="cairo-Paths.html#cairo-path-data-type-t" title="enum cairo_path_data_type_t">cairo_path_data_type_t</a></td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<div class="refsect1">
-<a name="cairo-Paths.description"></a><h2>Description</h2>
-<p>Paths are the most basic drawing tools and are primarily used to implicitly
-generate simple masks.</p>
-</div>
-<div class="refsect1">
-<a name="cairo-Paths.functions_details"></a><h2>Functions</h2>
-<div class="refsect2">
-<a name="cairo-copy-path"></a><h3>cairo_copy_path ()</h3>
-<pre class="programlisting"><a class="link" href="cairo-Paths.html#cairo-path-t" title="cairo_path_t"><span class="returnvalue">cairo_path_t</span></a> *
-cairo_copy_path (<em class="parameter"><code><a class="link" href="cairo-cairo-t.html#cairo-t" title="cairo_t"><span class="type">cairo_t</span></a> *cr</code></em>);</pre>
-<p>Creates a copy of the current path and returns it to the user as a
-<a class="link" href="cairo-Paths.html#cairo-path-t" title="cairo_path_t"><span class="type">cairo_path_t</span></a>. See <a class="link" href="cairo-Paths.html#cairo-path-data-t" title="union cairo_path_data_t"><span class="type">cairo_path_data_t</span></a> for hints on how to iterate
-over the returned data structure.</p>
-<p>This function will always return a valid pointer, but the result
-will have no data (<code class="literal">data==<a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></code> and
-<code class="literal">num_data==0</code>), if either of the following
-conditions hold:</p>
-<div class="orderedlist"><ol class="orderedlist" type="1">
-<li class="listitem">If there is insufficient memory to copy the path. In this
- case <code class="literal">path-&gt;status</code> will be set to
- <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-NO-MEMORY:CAPS"><code class="literal">CAIRO_STATUS_NO_MEMORY</code></a>.</li>
-<li class="listitem">If <em class="parameter"><code>cr</code></em> is already in an error state. In this case
- <code class="literal">path-&gt;status</code> will contain the same status that
- would be returned by <a class="link" href="cairo-cairo-t.html#cairo-status" title="cairo_status ()"><code class="function">cairo_status()</code></a>.</li>
-</ol></div>
-<div class="refsect3">
-<a name="cairo-copy-path.parameters"></a><h4>Parameters</h4>
-<div class="informaltable"><table class="informaltable" width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>cr</p></td>
-<td class="parameter_description"><p>a cairo context</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="cairo-copy-path.returns"></a><h4>Returns</h4>
-<p> the copy of the current path. The caller owns the
-returned object and should call <a class="link" href="cairo-Paths.html#cairo-path-destroy" title="cairo_path_destroy ()"><code class="function">cairo_path_destroy()</code></a> when finished
-with it.</p>
-</div>
-<p class="since">Since: 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="cairo-copy-path-flat"></a><h3>cairo_copy_path_flat ()</h3>
-<pre class="programlisting"><a class="link" href="cairo-Paths.html#cairo-path-t" title="cairo_path_t"><span class="returnvalue">cairo_path_t</span></a> *
-cairo_copy_path_flat (<em class="parameter"><code><a class="link" href="cairo-cairo-t.html#cairo-t" title="cairo_t"><span class="type">cairo_t</span></a> *cr</code></em>);</pre>
-<p>Gets a flattened copy of the current path and returns it to the
-user as a <a class="link" href="cairo-Paths.html#cairo-path-t" title="cairo_path_t"><span class="type">cairo_path_t</span></a>. See <a class="link" href="cairo-Paths.html#cairo-path-data-t" title="union cairo_path_data_t"><span class="type">cairo_path_data_t</span></a> for hints on
-how to iterate over the returned data structure.</p>
-<p>This function is like <a class="link" href="cairo-Paths.html#cairo-copy-path" title="cairo_copy_path ()"><code class="function">cairo_copy_path()</code></a> except that any curves
-in the path will be approximated with piecewise-linear
-approximations, (accurate to within the current tolerance
-value). That is, the result is guaranteed to not have any elements
-of type <a class="link" href="cairo-Paths.html#CAIRO-PATH-CURVE-TO:CAPS"><code class="literal">CAIRO_PATH_CURVE_TO</code></a> which will instead be replaced by a
-series of <a class="link" href="cairo-Paths.html#CAIRO-PATH-LINE-TO:CAPS"><code class="literal">CAIRO_PATH_LINE_TO</code></a> elements.</p>
-<p>This function will always return a valid pointer, but the result
-will have no data (<code class="literal">data==<a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></code> and
-<code class="literal">num_data==0</code>), if either of the following
-conditions hold:</p>
-<div class="orderedlist"><ol class="orderedlist" type="1">
-<li class="listitem">If there is insufficient memory to copy the path. In this
- case <code class="literal">path-&gt;status</code> will be set to
- <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-NO-MEMORY:CAPS"><code class="literal">CAIRO_STATUS_NO_MEMORY</code></a>.</li>
-<li class="listitem">If <em class="parameter"><code>cr</code></em> is already in an error state. In this case
- <code class="literal">path-&gt;status</code> will contain the same status that
- would be returned by <a class="link" href="cairo-cairo-t.html#cairo-status" title="cairo_status ()"><code class="function">cairo_status()</code></a>.</li>
-</ol></div>
-<div class="refsect3">
-<a name="cairo-copy-path-flat.parameters"></a><h4>Parameters</h4>
-<div class="informaltable"><table class="informaltable" width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>cr</p></td>
-<td class="parameter_description"><p>a cairo context</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="cairo-copy-path-flat.returns"></a><h4>Returns</h4>
-<p> the copy of the current path. The caller owns the
-returned object and should call <a class="link" href="cairo-Paths.html#cairo-path-destroy" title="cairo_path_destroy ()"><code class="function">cairo_path_destroy()</code></a> when finished
-with it.</p>
-</div>
-<p class="since">Since: 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="cairo-path-destroy"></a><h3>cairo_path_destroy ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-cairo_path_destroy (<em class="parameter"><code><a class="link" href="cairo-Paths.html#cairo-path-t" title="cairo_path_t"><span class="type">cairo_path_t</span></a> *path</code></em>);</pre>
-<p>Immediately releases all memory associated with <em class="parameter"><code>path</code></em>
-. After a call
-to <a class="link" href="cairo-Paths.html#cairo-path-destroy" title="cairo_path_destroy ()"><code class="function">cairo_path_destroy()</code></a> the <em class="parameter"><code>path</code></em>
- pointer is no longer valid and
-should not be used further.</p>
-<p>Note: <a class="link" href="cairo-Paths.html#cairo-path-destroy" title="cairo_path_destroy ()"><code class="function">cairo_path_destroy()</code></a> should only be called with a
-pointer to a <a class="link" href="cairo-Paths.html#cairo-path-t" title="cairo_path_t"><span class="type">cairo_path_t</span></a> returned by a cairo function. Any path
-that is created manually (ie. outside of cairo) should be destroyed
-manually as well.</p>
-<div class="refsect3">
-<a name="cairo-path-destroy.parameters"></a><h4>Parameters</h4>
-<div class="informaltable"><table class="informaltable" width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>path</p></td>
-<td class="parameter_description"><p>a path previously returned by either <a class="link" href="cairo-Paths.html#cairo-copy-path" title="cairo_copy_path ()"><code class="function">cairo_copy_path()</code></a> or
-<a class="link" href="cairo-Paths.html#cairo-copy-path-flat" title="cairo_copy_path_flat ()"><code class="function">cairo_copy_path_flat()</code></a>.</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<p class="since">Since: 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="cairo-append-path"></a><h3>cairo_append_path ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-cairo_append_path (<em class="parameter"><code><a class="link" href="cairo-cairo-t.html#cairo-t" title="cairo_t"><span class="type">cairo_t</span></a> *cr</code></em>,
- <em class="parameter"><code>const <a class="link" href="cairo-Paths.html#cairo-path-t" title="cairo_path_t"><span class="type">cairo_path_t</span></a> *path</code></em>);</pre>
-<p>Append the <em class="parameter"><code>path</code></em>
- onto the current path. The <em class="parameter"><code>path</code></em>
- may be either the
-return value from one of <a class="link" href="cairo-Paths.html#cairo-copy-path" title="cairo_copy_path ()"><code class="function">cairo_copy_path()</code></a> or
-<a class="link" href="cairo-Paths.html#cairo-copy-path-flat" title="cairo_copy_path_flat ()"><code class="function">cairo_copy_path_flat()</code></a> or it may be constructed manually. See
-<a class="link" href="cairo-Paths.html#cairo-path-t" title="cairo_path_t"><span class="type">cairo_path_t</span></a> for details on how the path data structure should be
-initialized, and note that <code class="literal">path-&gt;status</code> must be
-initialized to <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-SUCCESS:CAPS"><code class="literal">CAIRO_STATUS_SUCCESS</code></a>.</p>
-<div class="refsect3">
-<a name="cairo-append-path.parameters"></a><h4>Parameters</h4>
-<div class="informaltable"><table class="informaltable" width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>cr</p></td>
-<td class="parameter_description"><p>a cairo context</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>path</p></td>
-<td class="parameter_description"><p>path to be appended</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<p class="since">Since: 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="cairo-has-current-point"></a><h3>cairo_has_current_point ()</h3>
-<pre class="programlisting"><a class="link" href="cairo-Types.html#cairo-bool-t" title="cairo_bool_t"><span class="returnvalue">cairo_bool_t</span></a>
-cairo_has_current_point (<em class="parameter"><code><a class="link" href="cairo-cairo-t.html#cairo-t" title="cairo_t"><span class="type">cairo_t</span></a> *cr</code></em>);</pre>
-<p>Returns whether a current point is defined on the current path.
-See <a class="link" href="cairo-Paths.html#cairo-get-current-point" title="cairo_get_current_point ()"><code class="function">cairo_get_current_point()</code></a> for details on the current point.</p>
-<div class="refsect3">
-<a name="cairo-has-current-point.parameters"></a><h4>Parameters</h4>
-<div class="informaltable"><table class="informaltable" width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>cr</p></td>
-<td class="parameter_description"><p>a cairo context</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<div class="refsect3">
-<a name="cairo-has-current-point.returns"></a><h4>Returns</h4>
-<p> whether a current point is defined.</p>
-</div>
-<p class="since">Since: 1.6</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="cairo-get-current-point"></a><h3>cairo_get_current_point ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-cairo_get_current_point (<em class="parameter"><code><a class="link" href="cairo-cairo-t.html#cairo-t" title="cairo_t"><span class="type">cairo_t</span></a> *cr</code></em>,
- <em class="parameter"><code><span class="type">double</span> *x</code></em>,
- <em class="parameter"><code><span class="type">double</span> *y</code></em>);</pre>
-<p>Gets the current point of the current path, which is
-conceptually the final point reached by the path so far.</p>
-<p>The current point is returned in the user-space coordinate
-system. If there is no defined current point or if <em class="parameter"><code>cr</code></em>
- is in an
-error status, <em class="parameter"><code>x</code></em>
- and <em class="parameter"><code>y</code></em>
- will both be set to 0.0. It is possible to
-check this in advance with <a class="link" href="cairo-Paths.html#cairo-has-current-point" title="cairo_has_current_point ()"><code class="function">cairo_has_current_point()</code></a>.</p>
-<p>Most path construction functions alter the current point. See the
-following for details on how they affect the current point:
-<a class="link" href="cairo-Paths.html#cairo-new-path" title="cairo_new_path ()"><code class="function">cairo_new_path()</code></a>, <a class="link" href="cairo-Paths.html#cairo-new-sub-path" title="cairo_new_sub_path ()"><code class="function">cairo_new_sub_path()</code></a>,
-<a class="link" href="cairo-Paths.html#cairo-append-path" title="cairo_append_path ()"><code class="function">cairo_append_path()</code></a>, <a class="link" href="cairo-Paths.html#cairo-close-path" title="cairo_close_path ()"><code class="function">cairo_close_path()</code></a>,
-<a class="link" href="cairo-Paths.html#cairo-move-to" title="cairo_move_to ()"><code class="function">cairo_move_to()</code></a>, <a class="link" href="cairo-Paths.html#cairo-line-to" title="cairo_line_to ()"><code class="function">cairo_line_to()</code></a>, <a class="link" href="cairo-Paths.html#cairo-curve-to" title="cairo_curve_to ()"><code class="function">cairo_curve_to()</code></a>,
-<a class="link" href="cairo-Paths.html#cairo-rel-move-to" title="cairo_rel_move_to ()"><code class="function">cairo_rel_move_to()</code></a>, <a class="link" href="cairo-Paths.html#cairo-rel-line-to" title="cairo_rel_line_to ()"><code class="function">cairo_rel_line_to()</code></a>, <a class="link" href="cairo-Paths.html#cairo-rel-curve-to" title="cairo_rel_curve_to ()"><code class="function">cairo_rel_curve_to()</code></a>,
-<a class="link" href="cairo-Paths.html#cairo-arc" title="cairo_arc ()"><code class="function">cairo_arc()</code></a>, <a class="link" href="cairo-Paths.html#cairo-arc-negative" title="cairo_arc_negative ()"><code class="function">cairo_arc_negative()</code></a>, <a class="link" href="cairo-Paths.html#cairo-rectangle" title="cairo_rectangle ()"><code class="function">cairo_rectangle()</code></a>,
-<a class="link" href="cairo-Paths.html#cairo-text-path" title="cairo_text_path ()"><code class="function">cairo_text_path()</code></a>, <a class="link" href="cairo-Paths.html#cairo-glyph-path" title="cairo_glyph_path ()"><code class="function">cairo_glyph_path()</code></a>, <code class="function">cairo_stroke_to_path()</code>.</p>
-<p>Some functions use and alter the current point but do not
-otherwise change current path:
-<a class="link" href="cairo-text.html#cairo-show-text" title="cairo_show_text ()"><code class="function">cairo_show_text()</code></a>.</p>
-<p>Some functions unset the current path and as a result, current point:
-<a class="link" href="cairo-cairo-t.html#cairo-fill" title="cairo_fill ()"><code class="function">cairo_fill()</code></a>, <a class="link" href="cairo-cairo-t.html#cairo-stroke" title="cairo_stroke ()"><code class="function">cairo_stroke()</code></a>.</p>
-<div class="refsect3">
-<a name="cairo-get-current-point.parameters"></a><h4>Parameters</h4>
-<div class="informaltable"><table class="informaltable" width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>cr</p></td>
-<td class="parameter_description"><p>a cairo context</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>x</p></td>
-<td class="parameter_description"><p>return value for X coordinate of the current point</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>y</p></td>
-<td class="parameter_description"><p>return value for Y coordinate of the current point</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<p class="since">Since: 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="cairo-new-path"></a><h3>cairo_new_path ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-cairo_new_path (<em class="parameter"><code><a class="link" href="cairo-cairo-t.html#cairo-t" title="cairo_t"><span class="type">cairo_t</span></a> *cr</code></em>);</pre>
-<p>Clears the current path. After this call there will be no path and
-no current point.</p>
-<div class="refsect3">
-<a name="cairo-new-path.parameters"></a><h4>Parameters</h4>
-<div class="informaltable"><table class="informaltable" width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>cr</p></td>
-<td class="parameter_description"><p>a cairo context</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<p class="since">Since: 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="cairo-new-sub-path"></a><h3>cairo_new_sub_path ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-cairo_new_sub_path (<em class="parameter"><code><a class="link" href="cairo-cairo-t.html#cairo-t" title="cairo_t"><span class="type">cairo_t</span></a> *cr</code></em>);</pre>
-<p>Begin a new sub-path. Note that the existing path is not
-affected. After this call there will be no current point.</p>
-<p>In many cases, this call is not needed since new sub-paths are
-frequently started with <a class="link" href="cairo-Paths.html#cairo-move-to" title="cairo_move_to ()"><code class="function">cairo_move_to()</code></a>.</p>
-<p>A call to <a class="link" href="cairo-Paths.html#cairo-new-sub-path" title="cairo_new_sub_path ()"><code class="function">cairo_new_sub_path()</code></a> is particularly useful when
-beginning a new sub-path with one of the <a class="link" href="cairo-Paths.html#cairo-arc" title="cairo_arc ()"><code class="function">cairo_arc()</code></a> calls. This
-makes things easier as it is no longer necessary to manually
-compute the arc's initial coordinates for a call to
-<a class="link" href="cairo-Paths.html#cairo-move-to" title="cairo_move_to ()"><code class="function">cairo_move_to()</code></a>.</p>
-<div class="refsect3">
-<a name="cairo-new-sub-path.parameters"></a><h4>Parameters</h4>
-<div class="informaltable"><table class="informaltable" width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>cr</p></td>
-<td class="parameter_description"><p>a cairo context</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<p class="since">Since: 1.2</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="cairo-close-path"></a><h3>cairo_close_path ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-cairo_close_path (<em class="parameter"><code><a class="link" href="cairo-cairo-t.html#cairo-t" title="cairo_t"><span class="type">cairo_t</span></a> *cr</code></em>);</pre>
-<p>Adds a line segment to the path from the current point to the
-beginning of the current sub-path, (the most recent point passed to
-<a class="link" href="cairo-Paths.html#cairo-move-to" title="cairo_move_to ()"><code class="function">cairo_move_to()</code></a>), and closes this sub-path. After this call the
-current point will be at the joined endpoint of the sub-path.</p>
-<p>The behavior of <a class="link" href="cairo-Paths.html#cairo-close-path" title="cairo_close_path ()"><code class="function">cairo_close_path()</code></a> is distinct from simply calling
-<a class="link" href="cairo-Paths.html#cairo-line-to" title="cairo_line_to ()"><code class="function">cairo_line_to()</code></a> with the equivalent coordinate in the case of
-stroking. When a closed sub-path is stroked, there are no caps on
-the ends of the sub-path. Instead, there is a line join connecting
-the final and initial segments of the sub-path.</p>
-<p>If there is no current point before the call to <a class="link" href="cairo-Paths.html#cairo-close-path" title="cairo_close_path ()"><code class="function">cairo_close_path()</code></a>,
-this function will have no effect.</p>
-<p>Note: As of cairo version 1.2.4 any call to <a class="link" href="cairo-Paths.html#cairo-close-path" title="cairo_close_path ()"><code class="function">cairo_close_path()</code></a> will
-place an explicit MOVE_TO element into the path immediately after
-the CLOSE_PATH element, (which can be seen in <a class="link" href="cairo-Paths.html#cairo-copy-path" title="cairo_copy_path ()"><code class="function">cairo_copy_path()</code></a> for
-example). This can simplify path processing in some cases as it may
-not be necessary to save the "last move_to point" during processing
-as the MOVE_TO immediately after the CLOSE_PATH will provide that
-point.</p>
-<div class="refsect3">
-<a name="cairo-close-path.parameters"></a><h4>Parameters</h4>
-<div class="informaltable"><table class="informaltable" width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody><tr>
-<td class="parameter_name"><p>cr</p></td>
-<td class="parameter_description"><p>a cairo context</p></td>
-<td class="parameter_annotations"> </td>
-</tr></tbody>
-</table></div>
-</div>
-<p class="since">Since: 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="cairo-arc"></a><h3>cairo_arc ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-cairo_arc (<em class="parameter"><code><a class="link" href="cairo-cairo-t.html#cairo-t" title="cairo_t"><span class="type">cairo_t</span></a> *cr</code></em>,
- <em class="parameter"><code><span class="type">double</span> xc</code></em>,
- <em class="parameter"><code><span class="type">double</span> yc</code></em>,
- <em class="parameter"><code><span class="type">double</span> radius</code></em>,
- <em class="parameter"><code><span class="type">double</span> angle1</code></em>,
- <em class="parameter"><code><span class="type">double</span> angle2</code></em>);</pre>
-<p>Adds a circular arc of the given <em class="parameter"><code>radius</code></em>
- to the current path. The
-arc is centered at (<em class="parameter"><code>xc</code></em>
-, <em class="parameter"><code>yc</code></em>
-), begins at <em class="parameter"><code>angle1</code></em>
- and proceeds in
-the direction of increasing angles to end at <em class="parameter"><code>angle2</code></em>
-. If <em class="parameter"><code>angle2</code></em>
- is
-less than <em class="parameter"><code>angle1</code></em>
- it will be progressively increased by
-<code class="literal">2*M_PI</code> until it is greater than <em class="parameter"><code>angle1</code></em>
-.</p>
-<p>If there is a current point, an initial line segment will be added
-to the path to connect the current point to the beginning of the
-arc. If this initial line is undesired, it can be avoided by
-calling <a class="link" href="cairo-Paths.html#cairo-new-sub-path" title="cairo_new_sub_path ()"><code class="function">cairo_new_sub_path()</code></a> before calling <a class="link" href="cairo-Paths.html#cairo-arc" title="cairo_arc ()"><code class="function">cairo_arc()</code></a>.</p>
-<p>Angles are measured in radians. An angle of 0.0 is in the direction
-of the positive X axis (in user space). An angle of
-<code class="literal">M_PI/2.0</code> radians (90 degrees) is in the
-direction of the positive Y axis (in user space). Angles increase
-in the direction from the positive X axis toward the positive Y
-axis. So with the default transformation matrix, angles increase in
-a clockwise direction.</p>
-<p>(To convert from degrees to radians, use <code class="literal">degrees * (M_PI /
-180.)</code>.)</p>
-<p>This function gives the arc in the direction of increasing angles;
-see <a class="link" href="cairo-Paths.html#cairo-arc-negative" title="cairo_arc_negative ()"><code class="function">cairo_arc_negative()</code></a> to get the arc in the direction of
-decreasing angles.</p>
-<p>The arc is circular in user space. To achieve an elliptical arc,
-you can scale the current transformation matrix by different
-amounts in the X and Y directions. For example, to draw an ellipse
-in the box given by <em class="parameter"><code>x</code></em>
-, <em class="parameter"><code>y</code></em>
-, <em class="parameter"><code>width</code></em>
-, <em class="parameter"><code>height</code></em>
-:</p>
-<div class="informalexample">
- <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
- <tbody>
- <tr>
- <td class="listing_lines" align="right"><pre>1
-2
-3
-4
-5</pre></td>
- <td class="listing_code"><pre class="programlisting"><span class="function"><a href="cairo-cairo-t.html#cairo-save">cairo_save</a></span> <span class="gtkdoc opt">(</span>cr<span class="gtkdoc opt">);</span>
-<span class="function"><a href="cairo-Transformations.html#cairo-translate">cairo_translate</a></span> <span class="gtkdoc opt">(</span>cr<span class="gtkdoc opt">,</span> x <span class="gtkdoc opt">+</span> width <span class="gtkdoc opt">/</span> <span class="number">2</span><span class="gtkdoc opt">.,</span> y <span class="gtkdoc opt">+</span> height <span class="gtkdoc opt">/</span> <span class="number">2</span><span class="gtkdoc opt">.);</span>
-<span class="function"><a href="cairo-Transformations.html#cairo-scale">cairo_scale</a></span> <span class="gtkdoc opt">(</span>cr<span class="gtkdoc opt">,</span> width <span class="gtkdoc opt">/</span> <span class="number">2</span><span class="gtkdoc opt">.,</span> height <span class="gtkdoc opt">/</span> <span class="number">2</span><span class="gtkdoc opt">.);</span>
-<span class="function"><a href="cairo-Paths.html#cairo-arc">cairo_arc</a></span> <span class="gtkdoc opt">(</span>cr<span class="gtkdoc opt">,</span> <span class="number">0</span><span class="gtkdoc opt">.,</span> <span class="number">0</span><span class="gtkdoc opt">.,</span> <span class="number">1</span><span class="gtkdoc opt">.,</span> <span class="number">0</span><span class="gtkdoc opt">.,</span> <span class="number">2</span> <span class="gtkdoc opt">*</span> M_PI<span class="gtkdoc opt">);</span>
-<span class="function"><a href="cairo-cairo-t.html#cairo-restore">cairo_restore</a></span> <span class="gtkdoc opt">(</span>cr<span class="gtkdoc opt">);</span></pre></td>
- </tr>
- </tbody>
- </table>
-</div>
-
-<div class="refsect3">
-<a name="cairo-arc.parameters"></a><h4>Parameters</h4>
-<div class="informaltable"><table class="informaltable" width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>cr</p></td>
-<td class="parameter_description"><p>a cairo context</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>xc</p></td>
-<td class="parameter_description"><p>X position of the center of the arc</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>yc</p></td>
-<td class="parameter_description"><p>Y position of the center of the arc</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>radius</p></td>
-<td class="parameter_description"><p>the radius of the arc</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>angle1</p></td>
-<td class="parameter_description"><p>the start angle, in radians</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>angle2</p></td>
-<td class="parameter_description"><p>the end angle, in radians</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<p class="since">Since: 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="cairo-arc-negative"></a><h3>cairo_arc_negative ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-cairo_arc_negative (<em class="parameter"><code><a class="link" href="cairo-cairo-t.html#cairo-t" title="cairo_t"><span class="type">cairo_t</span></a> *cr</code></em>,
- <em class="parameter"><code><span class="type">double</span> xc</code></em>,
- <em class="parameter"><code><span class="type">double</span> yc</code></em>,
- <em class="parameter"><code><span class="type">double</span> radius</code></em>,
- <em class="parameter"><code><span class="type">double</span> angle1</code></em>,
- <em class="parameter"><code><span class="type">double</span> angle2</code></em>);</pre>
-<p>Adds a circular arc of the given <em class="parameter"><code>radius</code></em>
- to the current path. The
-arc is centered at (<em class="parameter"><code>xc</code></em>
-, <em class="parameter"><code>yc</code></em>
-), begins at <em class="parameter"><code>angle1</code></em>
- and proceeds in
-the direction of decreasing angles to end at <em class="parameter"><code>angle2</code></em>
-. If <em class="parameter"><code>angle2</code></em>
- is
-greater than <em class="parameter"><code>angle1</code></em>
- it will be progressively decreased by
-<code class="literal">2*M_PI</code> until it is less than <em class="parameter"><code>angle1</code></em>
-.</p>
-<p>See <a class="link" href="cairo-Paths.html#cairo-arc" title="cairo_arc ()"><code class="function">cairo_arc()</code></a> for more details. This function differs only in the
-direction of the arc between the two angles.</p>
-<div class="refsect3">
-<a name="cairo-arc-negative.parameters"></a><h4>Parameters</h4>
-<div class="informaltable"><table class="informaltable" width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>cr</p></td>
-<td class="parameter_description"><p>a cairo context</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>xc</p></td>
-<td class="parameter_description"><p>X position of the center of the arc</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>yc</p></td>
-<td class="parameter_description"><p>Y position of the center of the arc</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>radius</p></td>
-<td class="parameter_description"><p>the radius of the arc</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>angle1</p></td>
-<td class="parameter_description"><p>the start angle, in radians</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>angle2</p></td>
-<td class="parameter_description"><p>the end angle, in radians</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<p class="since">Since: 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="cairo-curve-to"></a><h3>cairo_curve_to ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-cairo_curve_to (<em class="parameter"><code><a class="link" href="cairo-cairo-t.html#cairo-t" title="cairo_t"><span class="type">cairo_t</span></a> *cr</code></em>,
- <em class="parameter"><code><span class="type">double</span> x1</code></em>,
- <em class="parameter"><code><span class="type">double</span> y1</code></em>,
- <em class="parameter"><code><span class="type">double</span> x2</code></em>,
- <em class="parameter"><code><span class="type">double</span> y2</code></em>,
- <em class="parameter"><code><span class="type">double</span> x3</code></em>,
- <em class="parameter"><code><span class="type">double</span> y3</code></em>);</pre>
-<p>Adds a cubic Bézier spline to the path from the current point to
-position (<em class="parameter"><code>x3</code></em>
-, <em class="parameter"><code>y3</code></em>
-) in user-space coordinates, using (<em class="parameter"><code>x1</code></em>
-, <em class="parameter"><code>y1</code></em>
-) and
-(<em class="parameter"><code>x2</code></em>
-, <em class="parameter"><code>y2</code></em>
-) as the control points. After this call the current point
-will be (<em class="parameter"><code>x3</code></em>
-, <em class="parameter"><code>y3</code></em>
-).</p>
-<p>If there is no current point before the call to <a class="link" href="cairo-Paths.html#cairo-curve-to" title="cairo_curve_to ()"><code class="function">cairo_curve_to()</code></a>
-this function will behave as if preceded by a call to
-cairo_move_to(<em class="parameter"><code>cr</code></em>
-, <em class="parameter"><code>x1</code></em>
-, <em class="parameter"><code>y1</code></em>
-).</p>
-<div class="refsect3">
-<a name="cairo-curve-to.parameters"></a><h4>Parameters</h4>
-<div class="informaltable"><table class="informaltable" width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>cr</p></td>
-<td class="parameter_description"><p>a cairo context</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>x1</p></td>
-<td class="parameter_description"><p>the X coordinate of the first control point</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>y1</p></td>
-<td class="parameter_description"><p>the Y coordinate of the first control point</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>x2</p></td>
-<td class="parameter_description"><p>the X coordinate of the second control point</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>y2</p></td>
-<td class="parameter_description"><p>the Y coordinate of the second control point</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>x3</p></td>
-<td class="parameter_description"><p>the X coordinate of the end of the curve</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>y3</p></td>
-<td class="parameter_description"><p>the Y coordinate of the end of the curve</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<p class="since">Since: 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="cairo-line-to"></a><h3>cairo_line_to ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-cairo_line_to (<em class="parameter"><code><a class="link" href="cairo-cairo-t.html#cairo-t" title="cairo_t"><span class="type">cairo_t</span></a> *cr</code></em>,
- <em class="parameter"><code><span class="type">double</span> x</code></em>,
- <em class="parameter"><code><span class="type">double</span> y</code></em>);</pre>
-<p>Adds a line to the path from the current point to position (<em class="parameter"><code>x</code></em>
-, <em class="parameter"><code>y</code></em>
-)
-in user-space coordinates. After this call the current point
-will be (<em class="parameter"><code>x</code></em>
-, <em class="parameter"><code>y</code></em>
-).</p>
-<p>If there is no current point before the call to <a class="link" href="cairo-Paths.html#cairo-line-to" title="cairo_line_to ()"><code class="function">cairo_line_to()</code></a>
-this function will behave as cairo_move_to(<em class="parameter"><code>cr</code></em>
-, <em class="parameter"><code>x</code></em>
-, <em class="parameter"><code>y</code></em>
-).</p>
-<div class="refsect3">
-<a name="cairo-line-to.parameters"></a><h4>Parameters</h4>
-<div class="informaltable"><table class="informaltable" width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>cr</p></td>
-<td class="parameter_description"><p>a cairo context</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>x</p></td>
-<td class="parameter_description"><p>the X coordinate of the end of the new line</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>y</p></td>
-<td class="parameter_description"><p>the Y coordinate of the end of the new line</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<p class="since">Since: 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="cairo-move-to"></a><h3>cairo_move_to ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-cairo_move_to (<em class="parameter"><code><a class="link" href="cairo-cairo-t.html#cairo-t" title="cairo_t"><span class="type">cairo_t</span></a> *cr</code></em>,
- <em class="parameter"><code><span class="type">double</span> x</code></em>,
- <em class="parameter"><code><span class="type">double</span> y</code></em>);</pre>
-<p>Begin a new sub-path. After this call the current point will be (<em class="parameter"><code>x</code></em>
-,
-<em class="parameter"><code>y</code></em>
-).</p>
-<div class="refsect3">
-<a name="cairo-move-to.parameters"></a><h4>Parameters</h4>
-<div class="informaltable"><table class="informaltable" width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>cr</p></td>
-<td class="parameter_description"><p>a cairo context</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>x</p></td>
-<td class="parameter_description"><p>the X coordinate of the new position</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>y</p></td>
-<td class="parameter_description"><p>the Y coordinate of the new position</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<p class="since">Since: 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="cairo-rectangle"></a><h3>cairo_rectangle ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-cairo_rectangle (<em class="parameter"><code><a class="link" href="cairo-cairo-t.html#cairo-t" title="cairo_t"><span class="type">cairo_t</span></a> *cr</code></em>,
- <em class="parameter"><code><span class="type">double</span> x</code></em>,
- <em class="parameter"><code><span class="type">double</span> y</code></em>,
- <em class="parameter"><code><span class="type">double</span> width</code></em>,
- <em class="parameter"><code><span class="type">double</span> height</code></em>);</pre>
-<p>Adds a closed sub-path rectangle of the given size to the current
-path at position (<em class="parameter"><code>x</code></em>
-, <em class="parameter"><code>y</code></em>
-) in user-space coordinates.</p>
-<p>This function is logically equivalent to:</p>
-<div class="informalexample">
- <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
- <tbody>
- <tr>
- <td class="listing_lines" align="right"><pre>1
-2
-3
-4
-5</pre></td>
- <td class="listing_code"><pre class="programlisting"><span class="function"><a href="cairo-Paths.html#cairo-move-to">cairo_move_to</a></span> <span class="gtkdoc opt">(</span>cr<span class="gtkdoc opt">,</span> x<span class="gtkdoc opt">,</span> y<span class="gtkdoc opt">);</span>
-<span class="function"><a href="cairo-Paths.html#cairo-rel-line-to">cairo_rel_line_to</a></span> <span class="gtkdoc opt">(</span>cr<span class="gtkdoc opt">,</span> width<span class="gtkdoc opt">,</span> <span class="number">0</span><span class="gtkdoc opt">);</span>
-<span class="function"><a href="cairo-Paths.html#cairo-rel-line-to">cairo_rel_line_to</a></span> <span class="gtkdoc opt">(</span>cr<span class="gtkdoc opt">,</span> <span class="number">0</span><span class="gtkdoc opt">,</span> height<span class="gtkdoc opt">);</span>
-<span class="function"><a href="cairo-Paths.html#cairo-rel-line-to">cairo_rel_line_to</a></span> <span class="gtkdoc opt">(</span>cr<span class="gtkdoc opt">, -</span>width<span class="gtkdoc opt">,</span> <span class="number">0</span><span class="gtkdoc opt">);</span>
-<span class="function"><a href="cairo-Paths.html#cairo-close-path">cairo_close_path</a></span> <span class="gtkdoc opt">(</span>cr<span class="gtkdoc opt">);</span></pre></td>
- </tr>
- </tbody>
- </table>
-</div>
-
-<div class="refsect3">
-<a name="cairo-rectangle.parameters"></a><h4>Parameters</h4>
-<div class="informaltable"><table class="informaltable" width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>cr</p></td>
-<td class="parameter_description"><p>a cairo context</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>x</p></td>
-<td class="parameter_description"><p>the X coordinate of the top left corner of the rectangle</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>y</p></td>
-<td class="parameter_description"><p>the Y coordinate to the top left corner of the rectangle</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>width</p></td>
-<td class="parameter_description"><p>the width of the rectangle</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>height</p></td>
-<td class="parameter_description"><p>the height of the rectangle</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<p class="since">Since: 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="cairo-glyph-path"></a><h3>cairo_glyph_path ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-cairo_glyph_path (<em class="parameter"><code><a class="link" href="cairo-cairo-t.html#cairo-t" title="cairo_t"><span class="type">cairo_t</span></a> *cr</code></em>,
- <em class="parameter"><code>const <a class="link" href="cairo-text.html#cairo-glyph-t" title="cairo_glyph_t"><span class="type">cairo_glyph_t</span></a> *glyphs</code></em>,
- <em class="parameter"><code><span class="type">int</span> num_glyphs</code></em>);</pre>
-<p>Adds closed paths for the glyphs to the current path. The generated
-path if filled, achieves an effect similar to that of
-<a class="link" href="cairo-text.html#cairo-show-glyphs" title="cairo_show_glyphs ()"><code class="function">cairo_show_glyphs()</code></a>.</p>
-<div class="refsect3">
-<a name="cairo-glyph-path.parameters"></a><h4>Parameters</h4>
-<div class="informaltable"><table class="informaltable" width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>cr</p></td>
-<td class="parameter_description"><p>a cairo context</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>glyphs</p></td>
-<td class="parameter_description"><p>array of glyphs to show</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>num_glyphs</p></td>
-<td class="parameter_description"><p>number of glyphs to show</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<p class="since">Since: 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="cairo-text-path"></a><h3>cairo_text_path ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-cairo_text_path (<em class="parameter"><code><a class="link" href="cairo-cairo-t.html#cairo-t" title="cairo_t"><span class="type">cairo_t</span></a> *cr</code></em>,
- <em class="parameter"><code>const <span class="type">char</span> *utf8</code></em>);</pre>
-<p>Adds closed paths for text to the current path. The generated
-path if filled, achieves an effect similar to that of
-<a class="link" href="cairo-text.html#cairo-show-text" title="cairo_show_text ()"><code class="function">cairo_show_text()</code></a>.</p>
-<p>Text conversion and positioning is done similar to <a class="link" href="cairo-text.html#cairo-show-text" title="cairo_show_text ()"><code class="function">cairo_show_text()</code></a>.</p>
-<p>Like <a class="link" href="cairo-text.html#cairo-show-text" title="cairo_show_text ()"><code class="function">cairo_show_text()</code></a>, After this call the current point is
-moved to the origin of where the next glyph would be placed in
-this same progression. That is, the current point will be at
-the origin of the final glyph offset by its advance values.
-This allows for chaining multiple calls to to <a class="link" href="cairo-Paths.html#cairo-text-path" title="cairo_text_path ()"><code class="function">cairo_text_path()</code></a>
-without having to set current point in between.</p>
-<p>Note: The <a class="link" href="cairo-Paths.html#cairo-text-path" title="cairo_text_path ()"><code class="function">cairo_text_path()</code></a> function call is part of what the cairo
-designers call the "toy" text API. It is convenient for short demos
-and simple programs, but it is not expected to be adequate for
-serious text-using applications. See <a class="link" href="cairo-Paths.html#cairo-glyph-path" title="cairo_glyph_path ()"><code class="function">cairo_glyph_path()</code></a> for the
-"real" text path API in cairo.</p>
-<div class="refsect3">
-<a name="cairo-text-path.parameters"></a><h4>Parameters</h4>
-<div class="informaltable"><table class="informaltable" width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>cr</p></td>
-<td class="parameter_description"><p>a cairo context</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>utf8</p></td>
-<td class="parameter_description"><p>a NUL-terminated string of text encoded in UTF-8, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<p class="since">Since: 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="cairo-rel-curve-to"></a><h3>cairo_rel_curve_to ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-cairo_rel_curve_to (<em class="parameter"><code><a class="link" href="cairo-cairo-t.html#cairo-t" title="cairo_t"><span class="type">cairo_t</span></a> *cr</code></em>,
- <em class="parameter"><code><span class="type">double</span> dx1</code></em>,
- <em class="parameter"><code><span class="type">double</span> dy1</code></em>,
- <em class="parameter"><code><span class="type">double</span> dx2</code></em>,
- <em class="parameter"><code><span class="type">double</span> dy2</code></em>,
- <em class="parameter"><code><span class="type">double</span> dx3</code></em>,
- <em class="parameter"><code><span class="type">double</span> dy3</code></em>);</pre>
-<p>Relative-coordinate version of <a class="link" href="cairo-Paths.html#cairo-curve-to" title="cairo_curve_to ()"><code class="function">cairo_curve_to()</code></a>. All offsets are
-relative to the current point. Adds a cubic Bézier spline to the
-path from the current point to a point offset from the current
-point by (<em class="parameter"><code>dx3</code></em>
-, <em class="parameter"><code>dy3</code></em>
-), using points offset by (<em class="parameter"><code>dx1</code></em>
-, <em class="parameter"><code>dy1</code></em>
-) and
-(<em class="parameter"><code>dx2</code></em>
-, <em class="parameter"><code>dy2</code></em>
-) as the control points. After this call the current
-point will be offset by (<em class="parameter"><code>dx3</code></em>
-, <em class="parameter"><code>dy3</code></em>
-).</p>
-<p>Given a current point of (x, y), cairo_rel_curve_to(<em class="parameter"><code>cr</code></em>
-, <em class="parameter"><code>dx1</code></em>
-,
-<em class="parameter"><code>dy1</code></em>
-, <em class="parameter"><code>dx2</code></em>
-, <em class="parameter"><code>dy2</code></em>
-, <em class="parameter"><code>dx3</code></em>
-, <em class="parameter"><code>dy3</code></em>
-) is logically equivalent to
-cairo_curve_to(<em class="parameter"><code>cr</code></em>
-, x+<em class="parameter"><code>dx1</code></em>
-, y+<em class="parameter"><code>dy1</code></em>
-, x+<em class="parameter"><code>dx2</code></em>
-, y+<em class="parameter"><code>dy2</code></em>
-, x+<em class="parameter"><code>dx3</code></em>
-, y+<em class="parameter"><code>dy3</code></em>
-).</p>
-<p>It is an error to call this function with no current point. Doing
-so will cause <em class="parameter"><code>cr</code></em>
- to shutdown with a status of
-<a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-NO-CURRENT-POINT:CAPS"><code class="literal">CAIRO_STATUS_NO_CURRENT_POINT</code></a>.</p>
-<div class="refsect3">
-<a name="cairo-rel-curve-to.parameters"></a><h4>Parameters</h4>
-<div class="informaltable"><table class="informaltable" width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>cr</p></td>
-<td class="parameter_description"><p>a cairo context</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>dx1</p></td>
-<td class="parameter_description"><p>the X offset to the first control point</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>dy1</p></td>
-<td class="parameter_description"><p>the Y offset to the first control point</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>dx2</p></td>
-<td class="parameter_description"><p>the X offset to the second control point</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>dy2</p></td>
-<td class="parameter_description"><p>the Y offset to the second control point</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>dx3</p></td>
-<td class="parameter_description"><p>the X offset to the end of the curve</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>dy3</p></td>
-<td class="parameter_description"><p>the Y offset to the end of the curve</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<p class="since">Since: 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="cairo-rel-line-to"></a><h3>cairo_rel_line_to ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-cairo_rel_line_to (<em class="parameter"><code><a class="link" href="cairo-cairo-t.html#cairo-t" title="cairo_t"><span class="type">cairo_t</span></a> *cr</code></em>,
- <em class="parameter"><code><span class="type">double</span> dx</code></em>,
- <em class="parameter"><code><span class="type">double</span> dy</code></em>);</pre>
-<p>Relative-coordinate version of <a class="link" href="cairo-Paths.html#cairo-line-to" title="cairo_line_to ()"><code class="function">cairo_line_to()</code></a>. Adds a line to the
-path from the current point to a point that is offset from the
-current point by (<em class="parameter"><code>dx</code></em>
-, <em class="parameter"><code>dy</code></em>
-) in user space. After this call the
-current point will be offset by (<em class="parameter"><code>dx</code></em>
-, <em class="parameter"><code>dy</code></em>
-).</p>
-<p>Given a current point of (x, y), cairo_rel_line_to(<em class="parameter"><code>cr</code></em>
-, <em class="parameter"><code>dx</code></em>
-, <em class="parameter"><code>dy</code></em>
-)
-is logically equivalent to cairo_line_to(<em class="parameter"><code>cr</code></em>
-, x + <em class="parameter"><code>dx</code></em>
-, y + <em class="parameter"><code>dy</code></em>
-).</p>
-<p>It is an error to call this function with no current point. Doing
-so will cause <em class="parameter"><code>cr</code></em>
- to shutdown with a status of
-<a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-NO-CURRENT-POINT:CAPS"><code class="literal">CAIRO_STATUS_NO_CURRENT_POINT</code></a>.</p>
-<div class="refsect3">
-<a name="cairo-rel-line-to.parameters"></a><h4>Parameters</h4>
-<div class="informaltable"><table class="informaltable" width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>cr</p></td>
-<td class="parameter_description"><p>a cairo context</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>dx</p></td>
-<td class="parameter_description"><p>the X offset to the end of the new line</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>dy</p></td>
-<td class="parameter_description"><p>the Y offset to the end of the new line</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<p class="since">Since: 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="cairo-rel-move-to"></a><h3>cairo_rel_move_to ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-cairo_rel_move_to (<em class="parameter"><code><a class="link" href="cairo-cairo-t.html#cairo-t" title="cairo_t"><span class="type">cairo_t</span></a> *cr</code></em>,
- <em class="parameter"><code><span class="type">double</span> dx</code></em>,
- <em class="parameter"><code><span class="type">double</span> dy</code></em>);</pre>
-<p>Begin a new sub-path. After this call the current point will offset
-by (<em class="parameter"><code>x</code></em>
-, <em class="parameter"><code>y</code></em>
-).</p>
-<p>Given a current point of (x, y), cairo_rel_move_to(<em class="parameter"><code>cr</code></em>
-, <em class="parameter"><code>dx</code></em>
-, <em class="parameter"><code>dy</code></em>
-)
-is logically equivalent to cairo_move_to(<em class="parameter"><code>cr</code></em>
-, x + <em class="parameter"><code>dx</code></em>
-, y + <em class="parameter"><code>dy</code></em>
-).</p>
-<p>It is an error to call this function with no current point. Doing
-so will cause <em class="parameter"><code>cr</code></em>
- to shutdown with a status of
-<a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-NO-CURRENT-POINT:CAPS"><code class="literal">CAIRO_STATUS_NO_CURRENT_POINT</code></a>.</p>
-<div class="refsect3">
-<a name="cairo-rel-move-to.parameters"></a><h4>Parameters</h4>
-<div class="informaltable"><table class="informaltable" width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>cr</p></td>
-<td class="parameter_description"><p>a cairo context</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>dx</p></td>
-<td class="parameter_description"><p>the X offset</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>dy</p></td>
-<td class="parameter_description"><p>the Y offset</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<p class="since">Since: 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="cairo-path-extents"></a><h3>cairo_path_extents ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span>
-cairo_path_extents (<em class="parameter"><code><a class="link" href="cairo-cairo-t.html#cairo-t" title="cairo_t"><span class="type">cairo_t</span></a> *cr</code></em>,
- <em class="parameter"><code><span class="type">double</span> *x1</code></em>,
- <em class="parameter"><code><span class="type">double</span> *y1</code></em>,
- <em class="parameter"><code><span class="type">double</span> *x2</code></em>,
- <em class="parameter"><code><span class="type">double</span> *y2</code></em>);</pre>
-<p>Computes a bounding box in user-space coordinates covering the
-points on the current path. If the current path is empty, returns
-an empty rectangle ((0,0), (0,0)). Stroke parameters, fill rule,
-surface dimensions and clipping are not taken into account.</p>
-<p>Contrast with <a class="link" href="cairo-cairo-t.html#cairo-fill-extents" title="cairo_fill_extents ()"><code class="function">cairo_fill_extents()</code></a> and <a class="link" href="cairo-cairo-t.html#cairo-stroke-extents" title="cairo_stroke_extents ()"><code class="function">cairo_stroke_extents()</code></a> which
-return the extents of only the area that would be "inked" by
-the corresponding drawing operations.</p>
-<p>The result of <a class="link" href="cairo-Paths.html#cairo-path-extents" title="cairo_path_extents ()"><code class="function">cairo_path_extents()</code></a> is defined as equivalent to the
-limit of <a class="link" href="cairo-cairo-t.html#cairo-stroke-extents" title="cairo_stroke_extents ()"><code class="function">cairo_stroke_extents()</code></a> with <a class="link" href="cairo-cairo-t.html#CAIRO-LINE-CAP-ROUND:CAPS"><code class="literal">CAIRO_LINE_CAP_ROUND</code></a> as the
-line width approaches 0.0, (but never reaching the empty-rectangle
-returned by <a class="link" href="cairo-cairo-t.html#cairo-stroke-extents" title="cairo_stroke_extents ()"><code class="function">cairo_stroke_extents()</code></a> for a line width of 0.0).</p>
-<p>Specifically, this means that zero-area sub-paths such as
-<a class="link" href="cairo-Paths.html#cairo-move-to" title="cairo_move_to ()"><code class="function">cairo_move_to()</code></a>;<a class="link" href="cairo-Paths.html#cairo-line-to" title="cairo_line_to ()"><code class="function">cairo_line_to()</code></a> segments, (even degenerate cases
-where the coordinates to both calls are identical), will be
-considered as contributing to the extents. However, a lone
-<a class="link" href="cairo-Paths.html#cairo-move-to" title="cairo_move_to ()"><code class="function">cairo_move_to()</code></a> will not contribute to the results of
-<a class="link" href="cairo-Paths.html#cairo-path-extents" title="cairo_path_extents ()"><code class="function">cairo_path_extents()</code></a>.</p>
-<div class="refsect3">
-<a name="cairo-path-extents.parameters"></a><h4>Parameters</h4>
-<div class="informaltable"><table class="informaltable" width="100%" border="0">
-<colgroup>
-<col width="150px" class="parameters_name">
-<col class="parameters_description">
-<col width="200px" class="parameters_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="parameter_name"><p>cr</p></td>
-<td class="parameter_description"><p>a cairo context</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>x1</p></td>
-<td class="parameter_description"><p>left of the resulting extents</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>y1</p></td>
-<td class="parameter_description"><p>top of the resulting extents</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>x2</p></td>
-<td class="parameter_description"><p>right of the resulting extents</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-<tr>
-<td class="parameter_name"><p>y2</p></td>
-<td class="parameter_description"><p>bottom of the resulting extents</p></td>
-<td class="parameter_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<p class="since">Since: 1.6</p>
-</div>
-</div>
-<div class="refsect1">
-<a name="cairo-Paths.other_details"></a><h2>Types and Values</h2>
-<div class="refsect2">
-<a name="cairo-path-t"></a><h3>cairo_path_t</h3>
-<pre class="programlisting">typedef struct {
- cairo_status_t status;
- cairo_path_data_t *data;
- int num_data;
-} cairo_path_t;
-</pre>
-<p>A data structure for holding a path. This data structure serves as
-the return value for <a class="link" href="cairo-Paths.html#cairo-copy-path" title="cairo_copy_path ()"><code class="function">cairo_copy_path()</code></a> and
-<a class="link" href="cairo-Paths.html#cairo-copy-path-flat" title="cairo_copy_path_flat ()"><code class="function">cairo_copy_path_flat()</code></a> as well the input value for
-<a class="link" href="cairo-Paths.html#cairo-append-path" title="cairo_append_path ()"><code class="function">cairo_append_path()</code></a>.</p>
-<p>See <a class="link" href="cairo-Paths.html#cairo-path-data-t" title="union cairo_path_data_t"><span class="type">cairo_path_data_t</span></a> for hints on how to iterate over the
-actual data within the path.</p>
-<p>The num_data member gives the number of elements in the data
-array. This number is larger than the number of independent path
-portions (defined in <a class="link" href="cairo-Paths.html#cairo-path-data-type-t" title="enum cairo_path_data_type_t"><span class="type">cairo_path_data_type_t</span></a>), since the data
-includes both headers and coordinates for each portion.</p>
-<div class="refsect3">
-<a name="cairo-path-t.members"></a><h4>Members</h4>
-<div class="informaltable"><table class="informaltable" width="100%" border="0">
-<colgroup>
-<col width="300px" class="struct_members_name">
-<col class="struct_members_description">
-<col width="200px" class="struct_members_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="struct_member_name"><p><a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="type">cairo_status_t</span></a> <em class="structfield"><code><a name="cairo-path-t.status"></a>status</code></em>;</p></td>
-<td class="struct_member_description"><p>the current error status</p></td>
-<td class="struct_member_annotations"> </td>
-</tr>
-<tr>
-<td class="struct_member_name"><p><a class="link" href="cairo-Paths.html#cairo-path-data-t" title="union cairo_path_data_t"><span class="type">cairo_path_data_t</span></a> *<em class="structfield"><code><a name="cairo-path-t.data"></a>data</code></em>;</p></td>
-<td class="struct_member_description"><p>the elements in the path</p></td>
-<td class="struct_member_annotations"> </td>
-</tr>
-<tr>
-<td class="struct_member_name"><p><span class="type">int</span> <em class="structfield"><code><a name="cairo-path-t.num-data"></a>num_data</code></em>;</p></td>
-<td class="struct_member_description"><p>the number of elements in the data array</p></td>
-<td class="struct_member_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<p class="since">Since: 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="cairo-path-data-t"></a><h3>union cairo_path_data_t</h3>
-<p><a class="link" href="cairo-Paths.html#cairo-path-data-t" title="union cairo_path_data_t"><span class="type">cairo_path_data_t</span></a> is used to represent the path data inside a
-<a class="link" href="cairo-Paths.html#cairo-path-t" title="cairo_path_t"><span class="type">cairo_path_t</span></a>.</p>
-<p>The data structure is designed to try to balance the demands of
-efficiency and ease-of-use. A path is represented as an array of
-<a class="link" href="cairo-Paths.html#cairo-path-data-t" title="union cairo_path_data_t"><span class="type">cairo_path_data_t</span></a>, which is a union of headers and points.</p>
-<p>Each portion of the path is represented by one or more elements in
-the array, (one header followed by 0 or more points). The length
-value of the header is the number of array elements for the current
-portion including the header, (ie. length == 1 + # of points), and
-where the number of points for each element type is as follows:</p>
-<pre class="programlisting">
- %CAIRO_PATH_MOVE_TO: 1 point
- %CAIRO_PATH_LINE_TO: 1 point
- %CAIRO_PATH_CURVE_TO: 3 points
- %CAIRO_PATH_CLOSE_PATH: 0 points
-</pre>
-<p>The semantics and ordering of the coordinate values are consistent
-with <a class="link" href="cairo-Paths.html#cairo-move-to" title="cairo_move_to ()"><code class="function">cairo_move_to()</code></a>, <a class="link" href="cairo-Paths.html#cairo-line-to" title="cairo_line_to ()"><code class="function">cairo_line_to()</code></a>, <a class="link" href="cairo-Paths.html#cairo-curve-to" title="cairo_curve_to ()"><code class="function">cairo_curve_to()</code></a>, and
-<a class="link" href="cairo-Paths.html#cairo-close-path" title="cairo_close_path ()"><code class="function">cairo_close_path()</code></a>.</p>
-<p>Here is sample code for iterating through a <a class="link" href="cairo-Paths.html#cairo-path-t" title="cairo_path_t"><span class="type">cairo_path_t</span></a>:</p>
-<div class="informalexample">
- <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
- <tbody>
- <tr>
- <td class="listing_lines" align="right"><pre>1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26</pre></td>
- <td class="listing_code"><pre class="programlisting"><span class="gtkdoc kwb">int</span> i<span class="gtkdoc opt">;</span>
-cairo_path_t <span class="gtkdoc opt">*</span>path<span class="gtkdoc opt">;</span>
-cairo_path_data_t <span class="gtkdoc opt">*</span>data<span class="gtkdoc opt">;</span>
-path <span class="gtkdoc opt">=</span> <span class="function"><a href="cairo-Paths.html#cairo-copy-path">cairo_copy_path</a></span> <span class="gtkdoc opt">(</span>cr<span class="gtkdoc opt">);</span>
-<span class="keyword">for</span> <span class="gtkdoc opt">(</span>i<span class="gtkdoc opt">=</span><span class="number">0</span><span class="gtkdoc opt">;</span> i <span class="gtkdoc opt">&lt;</span> path<span class="gtkdoc opt">-&gt;</span>num_data<span class="gtkdoc opt">;</span> i <span class="gtkdoc opt">+=</span> path<span class="gtkdoc opt">-&gt;</span>data<span class="gtkdoc opt">[</span>i<span class="gtkdoc opt">].</span>header<span class="gtkdoc opt">.</span>length<span class="gtkdoc opt">) {</span>
- data <span class="gtkdoc opt">= &amp;</span>path<span class="gtkdoc opt">-&gt;</span>data<span class="gtkdoc opt">[</span>i<span class="gtkdoc opt">];</span>
- <span class="keyword">switch</span> <span class="gtkdoc opt">(</span>data<span class="gtkdoc opt">-&gt;</span>header<span class="gtkdoc opt">.</span>type<span class="gtkdoc opt">) {</span>
- <span class="keyword">case</span> CAIRO_PATH_MOVE_TO<span class="gtkdoc opt">:</span>
- <span class="function">do_move_to_things</span> <span class="gtkdoc opt">(</span>data<span class="gtkdoc opt">[</span><span class="number">1</span><span class="gtkdoc opt">].</span>point<span class="gtkdoc opt">.</span>x<span class="gtkdoc opt">,</span> data<span class="gtkdoc opt">[</span><span class="number">1</span><span class="gtkdoc opt">].</span>point<span class="gtkdoc opt">.</span>y<span class="gtkdoc opt">);</span>
- <span class="keyword">break</span><span class="gtkdoc opt">;</span>
- <span class="keyword">case</span> CAIRO_PATH_LINE_TO<span class="gtkdoc opt">:</span>
- <span class="function">do_line_to_things</span> <span class="gtkdoc opt">(</span>data<span class="gtkdoc opt">[</span><span class="number">1</span><span class="gtkdoc opt">].</span>point<span class="gtkdoc opt">.</span>x<span class="gtkdoc opt">,</span> data<span class="gtkdoc opt">[</span><span class="number">1</span><span class="gtkdoc opt">].</span>point<span class="gtkdoc opt">.</span>y<span class="gtkdoc opt">);</span>
- <span class="keyword">break</span><span class="gtkdoc opt">;</span>
- <span class="keyword">case</span> CAIRO_PATH_CURVE_TO<span class="gtkdoc opt">:</span>
- <span class="function">do_curve_to_things</span> <span class="gtkdoc opt">(</span>data<span class="gtkdoc opt">[</span><span class="number">1</span><span class="gtkdoc opt">].</span>point<span class="gtkdoc opt">.</span>x<span class="gtkdoc opt">,</span> data<span class="gtkdoc opt">[</span><span class="number">1</span><span class="gtkdoc opt">].</span>point<span class="gtkdoc opt">.</span>y<span class="gtkdoc opt">,</span>
- data<span class="gtkdoc opt">[</span><span class="number">2</span><span class="gtkdoc opt">].</span>point<span class="gtkdoc opt">.</span>x<span class="gtkdoc opt">,</span> data<span class="gtkdoc opt">[</span><span class="number">2</span><span class="gtkdoc opt">].</span>point<span class="gtkdoc opt">.</span>y<span class="gtkdoc opt">,</span>
- data<span class="gtkdoc opt">[</span><span class="number">3</span><span class="gtkdoc opt">].</span>point<span class="gtkdoc opt">.</span>x<span class="gtkdoc opt">,</span> data<span class="gtkdoc opt">[</span><span class="number">3</span><span class="gtkdoc opt">].</span>point<span class="gtkdoc opt">.</span>y<span class="gtkdoc opt">);</span>
- <span class="keyword">break</span><span class="gtkdoc opt">;</span>
- <span class="keyword">case</span> CAIRO_PATH_CLOSE_PATH<span class="gtkdoc opt">:</span>
- <span class="function">do_close_path_things</span> <span class="gtkdoc opt">();</span>
- <span class="keyword">break</span><span class="gtkdoc opt">;</span>
- <span class="gtkdoc opt">}</span>
-<span class="gtkdoc opt">}</span>
-<span class="function"><a href="cairo-Paths.html#cairo-path-destroy">cairo_path_destroy</a></span> <span class="gtkdoc opt">(</span>path<span class="gtkdoc opt">);</span></pre></td>
- </tr>
- </tbody>
- </table>
-</div>
-
-<p>As of cairo 1.4, cairo does not mind if there are more elements in
-a portion of the path than needed. Such elements can be used by
-users of the cairo API to hold extra values in the path data
-structure. For this reason, it is recommended that applications
-always use <code class="literal">data-&gt;header.length</code> to
-iterate over the path data, instead of hardcoding the number of
-elements for each element type.</p>
-<p class="since">Since: 1.0</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="cairo-path-data-type-t"></a><h3>enum cairo_path_data_type_t</h3>
-<p><a class="link" href="cairo-Paths.html#cairo-path-data-t" title="union cairo_path_data_t"><span class="type">cairo_path_data_t</span></a> is used to describe the type of one portion
-of a path when represented as a <a class="link" href="cairo-Paths.html#cairo-path-t" title="cairo_path_t"><span class="type">cairo_path_t</span></a>.
-See <a class="link" href="cairo-Paths.html#cairo-path-data-t" title="union cairo_path_data_t"><span class="type">cairo_path_data_t</span></a> for details.</p>
-<div class="refsect3">
-<a name="cairo-path-data-type-t.members"></a><h4>Members</h4>
-<div class="informaltable"><table class="informaltable" width="100%" border="0">
-<colgroup>
-<col width="300px" class="enum_members_name">
-<col class="enum_members_description">
-<col width="200px" class="enum_members_annotations">
-</colgroup>
-<tbody>
-<tr>
-<td class="enum_member_name"><p><a name="CAIRO-PATH-MOVE-TO:CAPS"></a>CAIRO_PATH_MOVE_TO</p></td>
-<td class="enum_member_description">
-<p>A move-to operation, since 1.0</p>
-</td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="CAIRO-PATH-LINE-TO:CAPS"></a>CAIRO_PATH_LINE_TO</p></td>
-<td class="enum_member_description">
-<p>A line-to operation, since 1.0</p>
-</td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="CAIRO-PATH-CURVE-TO:CAPS"></a>CAIRO_PATH_CURVE_TO</p></td>
-<td class="enum_member_description">
-<p>A curve-to operation, since 1.0</p>
-</td>
-<td class="enum_member_annotations"> </td>
-</tr>
-<tr>
-<td class="enum_member_name"><p><a name="CAIRO-PATH-CLOSE-PATH:CAPS"></a>CAIRO_PATH_CLOSE_PATH</p></td>
-<td class="enum_member_description">
-<p>A close-path operation, since 1.0</p>
-</td>
-<td class="enum_member_annotations"> </td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<p class="since">Since: 1.0</p>
-</div>
-</div>
-</div>
-<div class="footer">
-<hr>Generated by GTK-Doc V1.27</div>
-</body>
-</html> \ No newline at end of file