annotate CSP2/CSP2_env/env-d9b9114564458d9d-741b3de822f2aaca6c6caa4325c4afce/share/gtk-doc/html/cairo/cairo-cairo-pattern-t.html @ 68:5028fdace37b

planemo upload commit 2e9511a184a1ca667c7be0c6321a36dc4e3d116d
author jpayne
date Tue, 18 Mar 2025 16:23:26 -0400
parents
children
rev   line source
jpayne@68 1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
jpayne@68 2 <html>
jpayne@68 3 <head>
jpayne@68 4 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
jpayne@68 5 <title>cairo_pattern_t: Cairo: A Vector Graphics Library</title>
jpayne@68 6 <meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
jpayne@68 7 <link rel="home" href="index.html" title="Cairo: A Vector Graphics Library">
jpayne@68 8 <link rel="up" href="cairo-drawing.html" title="Drawing">
jpayne@68 9 <link rel="prev" href="cairo-Paths.html" title="Paths">
jpayne@68 10 <link rel="next" href="cairo-Regions.html" title="Regions">
jpayne@68 11 <meta name="generator" content="GTK-Doc V1.27 (XML mode)">
jpayne@68 12 <link rel="stylesheet" href="style.css" type="text/css">
jpayne@68 13 </head>
jpayne@68 14 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
jpayne@68 15 <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
jpayne@68 16 <td width="100%" align="left" class="shortcuts">
jpayne@68 17 <a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
jpayne@68 18 <a href="#cairo-cairo-pattern-t.description" class="shortcut">Description</a></span>
jpayne@68 19 </td>
jpayne@68 20 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
jpayne@68 21 <td><a accesskey="u" href="cairo-drawing.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
jpayne@68 22 <td><a accesskey="p" href="cairo-Paths.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
jpayne@68 23 <td><a accesskey="n" href="cairo-Regions.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
jpayne@68 24 </tr></table>
jpayne@68 25 <div class="refentry">
jpayne@68 26 <a name="cairo-cairo-pattern-t"></a><div class="titlepage"></div>
jpayne@68 27 <div class="refnamediv"><table width="100%"><tr>
jpayne@68 28 <td valign="top">
jpayne@68 29 <h2><span class="refentrytitle"><a name="cairo-cairo-pattern-t.top_of_page"></a>cairo_pattern_t</span></h2>
jpayne@68 30 <p>cairo_pattern_t — Sources for drawing</p>
jpayne@68 31 </td>
jpayne@68 32 <td class="gallery_image" valign="top" align="right"></td>
jpayne@68 33 </tr></table></div>
jpayne@68 34 <div class="refsect1">
jpayne@68 35 <a name="cairo-cairo-pattern-t.functions"></a><h2>Functions</h2>
jpayne@68 36 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 37 <colgroup>
jpayne@68 38 <col width="150px" class="functions_return">
jpayne@68 39 <col class="functions_name">
jpayne@68 40 </colgroup>
jpayne@68 41 <tbody>
jpayne@68 42 <tr>
jpayne@68 43 <td class="function_type">
jpayne@68 44 <span class="returnvalue">void</span>
jpayne@68 45 </td>
jpayne@68 46 <td class="function_name">
jpayne@68 47 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-add-color-stop-rgb" title="cairo_pattern_add_color_stop_rgb ()">cairo_pattern_add_color_stop_rgb</a> <span class="c_punctuation">()</span>
jpayne@68 48 </td>
jpayne@68 49 </tr>
jpayne@68 50 <tr>
jpayne@68 51 <td class="function_type">
jpayne@68 52 <span class="returnvalue">void</span>
jpayne@68 53 </td>
jpayne@68 54 <td class="function_name">
jpayne@68 55 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-add-color-stop-rgba" title="cairo_pattern_add_color_stop_rgba ()">cairo_pattern_add_color_stop_rgba</a> <span class="c_punctuation">()</span>
jpayne@68 56 </td>
jpayne@68 57 </tr>
jpayne@68 58 <tr>
jpayne@68 59 <td class="function_type">
jpayne@68 60 <a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a>
jpayne@68 61 </td>
jpayne@68 62 <td class="function_name">
jpayne@68 63 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-get-color-stop-count" title="cairo_pattern_get_color_stop_count ()">cairo_pattern_get_color_stop_count</a> <span class="c_punctuation">()</span>
jpayne@68 64 </td>
jpayne@68 65 </tr>
jpayne@68 66 <tr>
jpayne@68 67 <td class="function_type">
jpayne@68 68 <a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a>
jpayne@68 69 </td>
jpayne@68 70 <td class="function_name">
jpayne@68 71 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-get-color-stop-rgba" title="cairo_pattern_get_color_stop_rgba ()">cairo_pattern_get_color_stop_rgba</a> <span class="c_punctuation">()</span>
jpayne@68 72 </td>
jpayne@68 73 </tr>
jpayne@68 74 <tr>
jpayne@68 75 <td class="function_type">
jpayne@68 76 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="returnvalue">cairo_pattern_t</span></a> *
jpayne@68 77 </td>
jpayne@68 78 <td class="function_name">
jpayne@68 79 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-create-rgb" title="cairo_pattern_create_rgb ()">cairo_pattern_create_rgb</a> <span class="c_punctuation">()</span>
jpayne@68 80 </td>
jpayne@68 81 </tr>
jpayne@68 82 <tr>
jpayne@68 83 <td class="function_type">
jpayne@68 84 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="returnvalue">cairo_pattern_t</span></a> *
jpayne@68 85 </td>
jpayne@68 86 <td class="function_name">
jpayne@68 87 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-create-rgba" title="cairo_pattern_create_rgba ()">cairo_pattern_create_rgba</a> <span class="c_punctuation">()</span>
jpayne@68 88 </td>
jpayne@68 89 </tr>
jpayne@68 90 <tr>
jpayne@68 91 <td class="function_type">
jpayne@68 92 <a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a>
jpayne@68 93 </td>
jpayne@68 94 <td class="function_name">
jpayne@68 95 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-get-rgba" title="cairo_pattern_get_rgba ()">cairo_pattern_get_rgba</a> <span class="c_punctuation">()</span>
jpayne@68 96 </td>
jpayne@68 97 </tr>
jpayne@68 98 <tr>
jpayne@68 99 <td class="function_type">
jpayne@68 100 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="returnvalue">cairo_pattern_t</span></a> *
jpayne@68 101 </td>
jpayne@68 102 <td class="function_name">
jpayne@68 103 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-create-for-surface" title="cairo_pattern_create_for_surface ()">cairo_pattern_create_for_surface</a> <span class="c_punctuation">()</span>
jpayne@68 104 </td>
jpayne@68 105 </tr>
jpayne@68 106 <tr>
jpayne@68 107 <td class="function_type">
jpayne@68 108 <a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a>
jpayne@68 109 </td>
jpayne@68 110 <td class="function_name">
jpayne@68 111 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-get-surface" title="cairo_pattern_get_surface ()">cairo_pattern_get_surface</a> <span class="c_punctuation">()</span>
jpayne@68 112 </td>
jpayne@68 113 </tr>
jpayne@68 114 <tr>
jpayne@68 115 <td class="function_type">
jpayne@68 116 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="returnvalue">cairo_pattern_t</span></a> *
jpayne@68 117 </td>
jpayne@68 118 <td class="function_name">
jpayne@68 119 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-create-linear" title="cairo_pattern_create_linear ()">cairo_pattern_create_linear</a> <span class="c_punctuation">()</span>
jpayne@68 120 </td>
jpayne@68 121 </tr>
jpayne@68 122 <tr>
jpayne@68 123 <td class="function_type">
jpayne@68 124 <a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a>
jpayne@68 125 </td>
jpayne@68 126 <td class="function_name">
jpayne@68 127 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-get-linear-points" title="cairo_pattern_get_linear_points ()">cairo_pattern_get_linear_points</a> <span class="c_punctuation">()</span>
jpayne@68 128 </td>
jpayne@68 129 </tr>
jpayne@68 130 <tr>
jpayne@68 131 <td class="function_type">
jpayne@68 132 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="returnvalue">cairo_pattern_t</span></a> *
jpayne@68 133 </td>
jpayne@68 134 <td class="function_name">
jpayne@68 135 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-create-radial" title="cairo_pattern_create_radial ()">cairo_pattern_create_radial</a> <span class="c_punctuation">()</span>
jpayne@68 136 </td>
jpayne@68 137 </tr>
jpayne@68 138 <tr>
jpayne@68 139 <td class="function_type">
jpayne@68 140 <a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a>
jpayne@68 141 </td>
jpayne@68 142 <td class="function_name">
jpayne@68 143 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-get-radial-circles" title="cairo_pattern_get_radial_circles ()">cairo_pattern_get_radial_circles</a> <span class="c_punctuation">()</span>
jpayne@68 144 </td>
jpayne@68 145 </tr>
jpayne@68 146 <tr>
jpayne@68 147 <td class="function_type">
jpayne@68 148 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="returnvalue">cairo_pattern_t</span></a> *
jpayne@68 149 </td>
jpayne@68 150 <td class="function_name">
jpayne@68 151 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-create-mesh" title="cairo_pattern_create_mesh ()">cairo_pattern_create_mesh</a> <span class="c_punctuation">()</span>
jpayne@68 152 </td>
jpayne@68 153 </tr>
jpayne@68 154 <tr>
jpayne@68 155 <td class="function_type">
jpayne@68 156 <span class="returnvalue">void</span>
jpayne@68 157 </td>
jpayne@68 158 <td class="function_name">
jpayne@68 159 <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-begin-patch" title="cairo_mesh_pattern_begin_patch ()">cairo_mesh_pattern_begin_patch</a> <span class="c_punctuation">()</span>
jpayne@68 160 </td>
jpayne@68 161 </tr>
jpayne@68 162 <tr>
jpayne@68 163 <td class="function_type">
jpayne@68 164 <span class="returnvalue">void</span>
jpayne@68 165 </td>
jpayne@68 166 <td class="function_name">
jpayne@68 167 <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-end-patch" title="cairo_mesh_pattern_end_patch ()">cairo_mesh_pattern_end_patch</a> <span class="c_punctuation">()</span>
jpayne@68 168 </td>
jpayne@68 169 </tr>
jpayne@68 170 <tr>
jpayne@68 171 <td class="function_type">
jpayne@68 172 <span class="returnvalue">void</span>
jpayne@68 173 </td>
jpayne@68 174 <td class="function_name">
jpayne@68 175 <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-move-to" title="cairo_mesh_pattern_move_to ()">cairo_mesh_pattern_move_to</a> <span class="c_punctuation">()</span>
jpayne@68 176 </td>
jpayne@68 177 </tr>
jpayne@68 178 <tr>
jpayne@68 179 <td class="function_type">
jpayne@68 180 <span class="returnvalue">void</span>
jpayne@68 181 </td>
jpayne@68 182 <td class="function_name">
jpayne@68 183 <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-line-to" title="cairo_mesh_pattern_line_to ()">cairo_mesh_pattern_line_to</a> <span class="c_punctuation">()</span>
jpayne@68 184 </td>
jpayne@68 185 </tr>
jpayne@68 186 <tr>
jpayne@68 187 <td class="function_type">
jpayne@68 188 <span class="returnvalue">void</span>
jpayne@68 189 </td>
jpayne@68 190 <td class="function_name">
jpayne@68 191 <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-curve-to" title="cairo_mesh_pattern_curve_to ()">cairo_mesh_pattern_curve_to</a> <span class="c_punctuation">()</span>
jpayne@68 192 </td>
jpayne@68 193 </tr>
jpayne@68 194 <tr>
jpayne@68 195 <td class="function_type">
jpayne@68 196 <span class="returnvalue">void</span>
jpayne@68 197 </td>
jpayne@68 198 <td class="function_name">
jpayne@68 199 <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-set-control-point" title="cairo_mesh_pattern_set_control_point ()">cairo_mesh_pattern_set_control_point</a> <span class="c_punctuation">()</span>
jpayne@68 200 </td>
jpayne@68 201 </tr>
jpayne@68 202 <tr>
jpayne@68 203 <td class="function_type">
jpayne@68 204 <span class="returnvalue">void</span>
jpayne@68 205 </td>
jpayne@68 206 <td class="function_name">
jpayne@68 207 <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-set-corner-color-rgb" title="cairo_mesh_pattern_set_corner_color_rgb ()">cairo_mesh_pattern_set_corner_color_rgb</a> <span class="c_punctuation">()</span>
jpayne@68 208 </td>
jpayne@68 209 </tr>
jpayne@68 210 <tr>
jpayne@68 211 <td class="function_type">
jpayne@68 212 <span class="returnvalue">void</span>
jpayne@68 213 </td>
jpayne@68 214 <td class="function_name">
jpayne@68 215 <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-set-corner-color-rgba" title="cairo_mesh_pattern_set_corner_color_rgba ()">cairo_mesh_pattern_set_corner_color_rgba</a> <span class="c_punctuation">()</span>
jpayne@68 216 </td>
jpayne@68 217 </tr>
jpayne@68 218 <tr>
jpayne@68 219 <td class="function_type">
jpayne@68 220 <a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a>
jpayne@68 221 </td>
jpayne@68 222 <td class="function_name">
jpayne@68 223 <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-get-patch-count" title="cairo_mesh_pattern_get_patch_count ()">cairo_mesh_pattern_get_patch_count</a> <span class="c_punctuation">()</span>
jpayne@68 224 </td>
jpayne@68 225 </tr>
jpayne@68 226 <tr>
jpayne@68 227 <td class="function_type">
jpayne@68 228 <a class="link" href="cairo-Paths.html#cairo-path-t" title="cairo_path_t"><span class="returnvalue">cairo_path_t</span></a> *
jpayne@68 229 </td>
jpayne@68 230 <td class="function_name">
jpayne@68 231 <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-get-path" title="cairo_mesh_pattern_get_path ()">cairo_mesh_pattern_get_path</a> <span class="c_punctuation">()</span>
jpayne@68 232 </td>
jpayne@68 233 </tr>
jpayne@68 234 <tr>
jpayne@68 235 <td class="function_type">
jpayne@68 236 <a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a>
jpayne@68 237 </td>
jpayne@68 238 <td class="function_name">
jpayne@68 239 <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-get-control-point" title="cairo_mesh_pattern_get_control_point ()">cairo_mesh_pattern_get_control_point</a> <span class="c_punctuation">()</span>
jpayne@68 240 </td>
jpayne@68 241 </tr>
jpayne@68 242 <tr>
jpayne@68 243 <td class="function_type">
jpayne@68 244 <a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a>
jpayne@68 245 </td>
jpayne@68 246 <td class="function_name">
jpayne@68 247 <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-get-corner-color-rgba" title="cairo_mesh_pattern_get_corner_color_rgba ()">cairo_mesh_pattern_get_corner_color_rgba</a> <span class="c_punctuation">()</span>
jpayne@68 248 </td>
jpayne@68 249 </tr>
jpayne@68 250 <tr>
jpayne@68 251 <td class="function_type">
jpayne@68 252 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="returnvalue">cairo_pattern_t</span></a> *
jpayne@68 253 </td>
jpayne@68 254 <td class="function_name">
jpayne@68 255 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-reference" title="cairo_pattern_reference ()">cairo_pattern_reference</a> <span class="c_punctuation">()</span>
jpayne@68 256 </td>
jpayne@68 257 </tr>
jpayne@68 258 <tr>
jpayne@68 259 <td class="function_type">
jpayne@68 260 <span class="returnvalue">void</span>
jpayne@68 261 </td>
jpayne@68 262 <td class="function_name">
jpayne@68 263 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-destroy" title="cairo_pattern_destroy ()">cairo_pattern_destroy</a> <span class="c_punctuation">()</span>
jpayne@68 264 </td>
jpayne@68 265 </tr>
jpayne@68 266 <tr>
jpayne@68 267 <td class="function_type">
jpayne@68 268 <a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a>
jpayne@68 269 </td>
jpayne@68 270 <td class="function_name">
jpayne@68 271 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-status" title="cairo_pattern_status ()">cairo_pattern_status</a> <span class="c_punctuation">()</span>
jpayne@68 272 </td>
jpayne@68 273 </tr>
jpayne@68 274 <tr>
jpayne@68 275 <td class="function_type">
jpayne@68 276 <span class="returnvalue">void</span>
jpayne@68 277 </td>
jpayne@68 278 <td class="function_name">
jpayne@68 279 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-set-extend" title="cairo_pattern_set_extend ()">cairo_pattern_set_extend</a> <span class="c_punctuation">()</span>
jpayne@68 280 </td>
jpayne@68 281 </tr>
jpayne@68 282 <tr>
jpayne@68 283 <td class="function_type">
jpayne@68 284 <a class="link" href="cairo-cairo-pattern-t.html#cairo-extend-t" title="enum cairo_extend_t"><span class="returnvalue">cairo_extend_t</span></a>
jpayne@68 285 </td>
jpayne@68 286 <td class="function_name">
jpayne@68 287 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-get-extend" title="cairo_pattern_get_extend ()">cairo_pattern_get_extend</a> <span class="c_punctuation">()</span>
jpayne@68 288 </td>
jpayne@68 289 </tr>
jpayne@68 290 <tr>
jpayne@68 291 <td class="function_type">
jpayne@68 292 <span class="returnvalue">void</span>
jpayne@68 293 </td>
jpayne@68 294 <td class="function_name">
jpayne@68 295 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-set-filter" title="cairo_pattern_set_filter ()">cairo_pattern_set_filter</a> <span class="c_punctuation">()</span>
jpayne@68 296 </td>
jpayne@68 297 </tr>
jpayne@68 298 <tr>
jpayne@68 299 <td class="function_type">
jpayne@68 300 <a class="link" href="cairo-cairo-pattern-t.html#cairo-filter-t" title="enum cairo_filter_t"><span class="returnvalue">cairo_filter_t</span></a>
jpayne@68 301 </td>
jpayne@68 302 <td class="function_name">
jpayne@68 303 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-get-filter" title="cairo_pattern_get_filter ()">cairo_pattern_get_filter</a> <span class="c_punctuation">()</span>
jpayne@68 304 </td>
jpayne@68 305 </tr>
jpayne@68 306 <tr>
jpayne@68 307 <td class="function_type">
jpayne@68 308 <span class="returnvalue">void</span>
jpayne@68 309 </td>
jpayne@68 310 <td class="function_name">
jpayne@68 311 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-set-matrix" title="cairo_pattern_set_matrix ()">cairo_pattern_set_matrix</a> <span class="c_punctuation">()</span>
jpayne@68 312 </td>
jpayne@68 313 </tr>
jpayne@68 314 <tr>
jpayne@68 315 <td class="function_type">
jpayne@68 316 <span class="returnvalue">void</span>
jpayne@68 317 </td>
jpayne@68 318 <td class="function_name">
jpayne@68 319 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-get-matrix" title="cairo_pattern_get_matrix ()">cairo_pattern_get_matrix</a> <span class="c_punctuation">()</span>
jpayne@68 320 </td>
jpayne@68 321 </tr>
jpayne@68 322 <tr>
jpayne@68 323 <td class="function_type">
jpayne@68 324 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-type-t" title="enum cairo_pattern_type_t"><span class="returnvalue">cairo_pattern_type_t</span></a>
jpayne@68 325 </td>
jpayne@68 326 <td class="function_name">
jpayne@68 327 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-get-type" title="cairo_pattern_get_type ()">cairo_pattern_get_type</a> <span class="c_punctuation">()</span>
jpayne@68 328 </td>
jpayne@68 329 </tr>
jpayne@68 330 <tr>
jpayne@68 331 <td class="function_type">unsigned <span class="returnvalue">int</span>
jpayne@68 332 </td>
jpayne@68 333 <td class="function_name">
jpayne@68 334 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-get-reference-count" title="cairo_pattern_get_reference_count ()">cairo_pattern_get_reference_count</a> <span class="c_punctuation">()</span>
jpayne@68 335 </td>
jpayne@68 336 </tr>
jpayne@68 337 <tr>
jpayne@68 338 <td class="function_type">
jpayne@68 339 <a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a>
jpayne@68 340 </td>
jpayne@68 341 <td class="function_name">
jpayne@68 342 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-set-user-data" title="cairo_pattern_set_user_data ()">cairo_pattern_set_user_data</a> <span class="c_punctuation">()</span>
jpayne@68 343 </td>
jpayne@68 344 </tr>
jpayne@68 345 <tr>
jpayne@68 346 <td class="function_type">
jpayne@68 347 <span class="returnvalue">void</span> *
jpayne@68 348 </td>
jpayne@68 349 <td class="function_name">
jpayne@68 350 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-get-user-data" title="cairo_pattern_get_user_data ()">cairo_pattern_get_user_data</a> <span class="c_punctuation">()</span>
jpayne@68 351 </td>
jpayne@68 352 </tr>
jpayne@68 353 </tbody>
jpayne@68 354 </table></div>
jpayne@68 355 </div>
jpayne@68 356 <div class="refsect1">
jpayne@68 357 <a name="cairo-cairo-pattern-t.other"></a><h2>Types and Values</h2>
jpayne@68 358 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 359 <colgroup>
jpayne@68 360 <col width="150px" class="name">
jpayne@68 361 <col class="description">
jpayne@68 362 </colgroup>
jpayne@68 363 <tbody>
jpayne@68 364 <tr>
jpayne@68 365 <td class="typedef_keyword">typedef</td>
jpayne@68 366 <td class="function_name"><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t">cairo_pattern_t</a></td>
jpayne@68 367 </tr>
jpayne@68 368 <tr>
jpayne@68 369 <td class="datatype_keyword">enum</td>
jpayne@68 370 <td class="function_name"><a class="link" href="cairo-cairo-pattern-t.html#cairo-extend-t" title="enum cairo_extend_t">cairo_extend_t</a></td>
jpayne@68 371 </tr>
jpayne@68 372 <tr>
jpayne@68 373 <td class="datatype_keyword">enum</td>
jpayne@68 374 <td class="function_name"><a class="link" href="cairo-cairo-pattern-t.html#cairo-filter-t" title="enum cairo_filter_t">cairo_filter_t</a></td>
jpayne@68 375 </tr>
jpayne@68 376 <tr>
jpayne@68 377 <td class="datatype_keyword">enum</td>
jpayne@68 378 <td class="function_name"><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-type-t" title="enum cairo_pattern_type_t">cairo_pattern_type_t</a></td>
jpayne@68 379 </tr>
jpayne@68 380 </tbody>
jpayne@68 381 </table></div>
jpayne@68 382 </div>
jpayne@68 383 <div class="refsect1">
jpayne@68 384 <a name="cairo-cairo-pattern-t.description"></a><h2>Description</h2>
jpayne@68 385 <p><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> is the paint with which cairo draws.
jpayne@68 386 The primary use of patterns is as the source for all cairo drawing
jpayne@68 387 operations, although they can also be used as masks, that is, as the
jpayne@68 388 brush too.</p>
jpayne@68 389 <p>A cairo pattern is created by using one of the many constructors,
jpayne@68 390 of the form
jpayne@68 391 <code class="function">cairo_pattern_create_<span class="emphasis"><em>type</em></span>()</code>
jpayne@68 392 or implicitly through
jpayne@68 393 <code class="function">cairo_set_source_<span class="emphasis"><em>type</em></span>()</code>
jpayne@68 394 functions.</p>
jpayne@68 395 </div>
jpayne@68 396 <div class="refsect1">
jpayne@68 397 <a name="cairo-cairo-pattern-t.functions_details"></a><h2>Functions</h2>
jpayne@68 398 <div class="refsect2">
jpayne@68 399 <a name="cairo-pattern-add-color-stop-rgb"></a><h3>cairo_pattern_add_color_stop_rgb ()</h3>
jpayne@68 400 <pre class="programlisting"><span class="returnvalue">void</span>
jpayne@68 401 cairo_pattern_add_color_stop_rgb (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
jpayne@68 402 <em class="parameter"><code><span class="type">double</span> offset</code></em>,
jpayne@68 403 <em class="parameter"><code><span class="type">double</span> red</code></em>,
jpayne@68 404 <em class="parameter"><code><span class="type">double</span> green</code></em>,
jpayne@68 405 <em class="parameter"><code><span class="type">double</span> blue</code></em>);</pre>
jpayne@68 406 <p>Adds an opaque color stop to a gradient pattern. The offset
jpayne@68 407 specifies the location along the gradient's control vector. For
jpayne@68 408 example, a linear gradient's control vector is from (x0,y0) to
jpayne@68 409 (x1,y1) while a radial gradient's control vector is from any point
jpayne@68 410 on the start circle to the corresponding point on the end circle.</p>
jpayne@68 411 <p>The color is specified in the same way as in <a class="link" href="cairo-cairo-t.html#cairo-set-source-rgb" title="cairo_set_source_rgb ()"><code class="function">cairo_set_source_rgb()</code></a>.</p>
jpayne@68 412 <p>If two (or more) stops are specified with identical offset values,
jpayne@68 413 they will be sorted according to the order in which the stops are
jpayne@68 414 added, (stops added earlier will compare less than stops added
jpayne@68 415 later). This can be useful for reliably making sharp color
jpayne@68 416 transitions instead of the typical blend.</p>
jpayne@68 417 <p>Note: If the pattern is not a gradient pattern, (eg. a linear or
jpayne@68 418 radial pattern), then the pattern will be put into an error status
jpayne@68 419 with a status of <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a>.</p>
jpayne@68 420 <div class="refsect3">
jpayne@68 421 <a name="cairo-pattern-add-color-stop-rgb.parameters"></a><h4>Parameters</h4>
jpayne@68 422 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 423 <colgroup>
jpayne@68 424 <col width="150px" class="parameters_name">
jpayne@68 425 <col class="parameters_description">
jpayne@68 426 <col width="200px" class="parameters_annotations">
jpayne@68 427 </colgroup>
jpayne@68 428 <tbody>
jpayne@68 429 <tr>
jpayne@68 430 <td class="parameter_name"><p>pattern</p></td>
jpayne@68 431 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 432 <td class="parameter_annotations"> </td>
jpayne@68 433 </tr>
jpayne@68 434 <tr>
jpayne@68 435 <td class="parameter_name"><p>offset</p></td>
jpayne@68 436 <td class="parameter_description"><p>an offset in the range [0.0 .. 1.0]</p></td>
jpayne@68 437 <td class="parameter_annotations"> </td>
jpayne@68 438 </tr>
jpayne@68 439 <tr>
jpayne@68 440 <td class="parameter_name"><p>red</p></td>
jpayne@68 441 <td class="parameter_description"><p>red component of color</p></td>
jpayne@68 442 <td class="parameter_annotations"> </td>
jpayne@68 443 </tr>
jpayne@68 444 <tr>
jpayne@68 445 <td class="parameter_name"><p>green</p></td>
jpayne@68 446 <td class="parameter_description"><p>green component of color</p></td>
jpayne@68 447 <td class="parameter_annotations"> </td>
jpayne@68 448 </tr>
jpayne@68 449 <tr>
jpayne@68 450 <td class="parameter_name"><p>blue</p></td>
jpayne@68 451 <td class="parameter_description"><p>blue component of color</p></td>
jpayne@68 452 <td class="parameter_annotations"> </td>
jpayne@68 453 </tr>
jpayne@68 454 </tbody>
jpayne@68 455 </table></div>
jpayne@68 456 </div>
jpayne@68 457 <p class="since">Since: 1.0</p>
jpayne@68 458 </div>
jpayne@68 459 <hr>
jpayne@68 460 <div class="refsect2">
jpayne@68 461 <a name="cairo-pattern-add-color-stop-rgba"></a><h3>cairo_pattern_add_color_stop_rgba ()</h3>
jpayne@68 462 <pre class="programlisting"><span class="returnvalue">void</span>
jpayne@68 463 cairo_pattern_add_color_stop_rgba (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
jpayne@68 464 <em class="parameter"><code><span class="type">double</span> offset</code></em>,
jpayne@68 465 <em class="parameter"><code><span class="type">double</span> red</code></em>,
jpayne@68 466 <em class="parameter"><code><span class="type">double</span> green</code></em>,
jpayne@68 467 <em class="parameter"><code><span class="type">double</span> blue</code></em>,
jpayne@68 468 <em class="parameter"><code><span class="type">double</span> alpha</code></em>);</pre>
jpayne@68 469 <p>Adds a translucent color stop to a gradient pattern. The offset
jpayne@68 470 specifies the location along the gradient's control vector. For
jpayne@68 471 example, a linear gradient's control vector is from (x0,y0) to
jpayne@68 472 (x1,y1) while a radial gradient's control vector is from any point
jpayne@68 473 on the start circle to the corresponding point on the end circle.</p>
jpayne@68 474 <p>The color is specified in the same way as in <a class="link" href="cairo-cairo-t.html#cairo-set-source-rgba" title="cairo_set_source_rgba ()"><code class="function">cairo_set_source_rgba()</code></a>.</p>
jpayne@68 475 <p>If two (or more) stops are specified with identical offset values,
jpayne@68 476 they will be sorted according to the order in which the stops are
jpayne@68 477 added, (stops added earlier will compare less than stops added
jpayne@68 478 later). This can be useful for reliably making sharp color
jpayne@68 479 transitions instead of the typical blend.</p>
jpayne@68 480 <p>Note: If the pattern is not a gradient pattern, (eg. a linear or
jpayne@68 481 radial pattern), then the pattern will be put into an error status
jpayne@68 482 with a status of <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a>.</p>
jpayne@68 483 <div class="refsect3">
jpayne@68 484 <a name="cairo-pattern-add-color-stop-rgba.parameters"></a><h4>Parameters</h4>
jpayne@68 485 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 486 <colgroup>
jpayne@68 487 <col width="150px" class="parameters_name">
jpayne@68 488 <col class="parameters_description">
jpayne@68 489 <col width="200px" class="parameters_annotations">
jpayne@68 490 </colgroup>
jpayne@68 491 <tbody>
jpayne@68 492 <tr>
jpayne@68 493 <td class="parameter_name"><p>pattern</p></td>
jpayne@68 494 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 495 <td class="parameter_annotations"> </td>
jpayne@68 496 </tr>
jpayne@68 497 <tr>
jpayne@68 498 <td class="parameter_name"><p>offset</p></td>
jpayne@68 499 <td class="parameter_description"><p>an offset in the range [0.0 .. 1.0]</p></td>
jpayne@68 500 <td class="parameter_annotations"> </td>
jpayne@68 501 </tr>
jpayne@68 502 <tr>
jpayne@68 503 <td class="parameter_name"><p>red</p></td>
jpayne@68 504 <td class="parameter_description"><p>red component of color</p></td>
jpayne@68 505 <td class="parameter_annotations"> </td>
jpayne@68 506 </tr>
jpayne@68 507 <tr>
jpayne@68 508 <td class="parameter_name"><p>green</p></td>
jpayne@68 509 <td class="parameter_description"><p>green component of color</p></td>
jpayne@68 510 <td class="parameter_annotations"> </td>
jpayne@68 511 </tr>
jpayne@68 512 <tr>
jpayne@68 513 <td class="parameter_name"><p>blue</p></td>
jpayne@68 514 <td class="parameter_description"><p>blue component of color</p></td>
jpayne@68 515 <td class="parameter_annotations"> </td>
jpayne@68 516 </tr>
jpayne@68 517 <tr>
jpayne@68 518 <td class="parameter_name"><p>alpha</p></td>
jpayne@68 519 <td class="parameter_description"><p>alpha component of color</p></td>
jpayne@68 520 <td class="parameter_annotations"> </td>
jpayne@68 521 </tr>
jpayne@68 522 </tbody>
jpayne@68 523 </table></div>
jpayne@68 524 </div>
jpayne@68 525 <p class="since">Since: 1.0</p>
jpayne@68 526 </div>
jpayne@68 527 <hr>
jpayne@68 528 <div class="refsect2">
jpayne@68 529 <a name="cairo-pattern-get-color-stop-count"></a><h3>cairo_pattern_get_color_stop_count ()</h3>
jpayne@68 530 <pre class="programlisting"><a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a>
jpayne@68 531 cairo_pattern_get_color_stop_count (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
jpayne@68 532 <em class="parameter"><code><span class="type">int</span> *count</code></em>);</pre>
jpayne@68 533 <p>Gets the number of color stops specified in the given gradient
jpayne@68 534 pattern.</p>
jpayne@68 535 <div class="refsect3">
jpayne@68 536 <a name="cairo-pattern-get-color-stop-count.parameters"></a><h4>Parameters</h4>
jpayne@68 537 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 538 <colgroup>
jpayne@68 539 <col width="150px" class="parameters_name">
jpayne@68 540 <col class="parameters_description">
jpayne@68 541 <col width="200px" class="parameters_annotations">
jpayne@68 542 </colgroup>
jpayne@68 543 <tbody>
jpayne@68 544 <tr>
jpayne@68 545 <td class="parameter_name"><p>pattern</p></td>
jpayne@68 546 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 547 <td class="parameter_annotations"> </td>
jpayne@68 548 </tr>
jpayne@68 549 <tr>
jpayne@68 550 <td class="parameter_name"><p>count</p></td>
jpayne@68 551 <td class="parameter_description"><p>return value for the number of color stops, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
jpayne@68 552 <td class="parameter_annotations"> </td>
jpayne@68 553 </tr>
jpayne@68 554 </tbody>
jpayne@68 555 </table></div>
jpayne@68 556 </div>
jpayne@68 557 <div class="refsect3">
jpayne@68 558 <a name="cairo-pattern-get-color-stop-count.returns"></a><h4>Returns</h4>
jpayne@68 559 <p> <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-SUCCESS:CAPS"><code class="literal">CAIRO_STATUS_SUCCESS</code></a>, or
jpayne@68 560 <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a> if <em class="parameter"><code>pattern</code></em>
jpayne@68 561 is not a gradient
jpayne@68 562 pattern.</p>
jpayne@68 563 </div>
jpayne@68 564 <p class="since">Since: 1.4</p>
jpayne@68 565 </div>
jpayne@68 566 <hr>
jpayne@68 567 <div class="refsect2">
jpayne@68 568 <a name="cairo-pattern-get-color-stop-rgba"></a><h3>cairo_pattern_get_color_stop_rgba ()</h3>
jpayne@68 569 <pre class="programlisting"><a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a>
jpayne@68 570 cairo_pattern_get_color_stop_rgba (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
jpayne@68 571 <em class="parameter"><code><span class="type">int</span> index</code></em>,
jpayne@68 572 <em class="parameter"><code><span class="type">double</span> *offset</code></em>,
jpayne@68 573 <em class="parameter"><code><span class="type">double</span> *red</code></em>,
jpayne@68 574 <em class="parameter"><code><span class="type">double</span> *green</code></em>,
jpayne@68 575 <em class="parameter"><code><span class="type">double</span> *blue</code></em>,
jpayne@68 576 <em class="parameter"><code><span class="type">double</span> *alpha</code></em>);</pre>
jpayne@68 577 <p>Gets the color and offset information at the given <em class="parameter"><code>index</code></em>
jpayne@68 578 for a
jpayne@68 579 gradient pattern. Values of <em class="parameter"><code>index</code></em>
jpayne@68 580 range from 0 to n-1
jpayne@68 581 where n is the number returned
jpayne@68 582 by <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-get-color-stop-count" title="cairo_pattern_get_color_stop_count ()"><code class="function">cairo_pattern_get_color_stop_count()</code></a>.</p>
jpayne@68 583 <div class="refsect3">
jpayne@68 584 <a name="cairo-pattern-get-color-stop-rgba.parameters"></a><h4>Parameters</h4>
jpayne@68 585 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 586 <colgroup>
jpayne@68 587 <col width="150px" class="parameters_name">
jpayne@68 588 <col class="parameters_description">
jpayne@68 589 <col width="200px" class="parameters_annotations">
jpayne@68 590 </colgroup>
jpayne@68 591 <tbody>
jpayne@68 592 <tr>
jpayne@68 593 <td class="parameter_name"><p>pattern</p></td>
jpayne@68 594 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 595 <td class="parameter_annotations"> </td>
jpayne@68 596 </tr>
jpayne@68 597 <tr>
jpayne@68 598 <td class="parameter_name"><p>index</p></td>
jpayne@68 599 <td class="parameter_description"><p>index of the stop to return data for</p></td>
jpayne@68 600 <td class="parameter_annotations"> </td>
jpayne@68 601 </tr>
jpayne@68 602 <tr>
jpayne@68 603 <td class="parameter_name"><p>offset</p></td>
jpayne@68 604 <td class="parameter_description"><p>return value for the offset of the stop, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
jpayne@68 605 <td class="parameter_annotations"> </td>
jpayne@68 606 </tr>
jpayne@68 607 <tr>
jpayne@68 608 <td class="parameter_name"><p>red</p></td>
jpayne@68 609 <td class="parameter_description"><p>return value for red component of color, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
jpayne@68 610 <td class="parameter_annotations"> </td>
jpayne@68 611 </tr>
jpayne@68 612 <tr>
jpayne@68 613 <td class="parameter_name"><p>green</p></td>
jpayne@68 614 <td class="parameter_description"><p>return value for green component of color, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
jpayne@68 615 <td class="parameter_annotations"> </td>
jpayne@68 616 </tr>
jpayne@68 617 <tr>
jpayne@68 618 <td class="parameter_name"><p>blue</p></td>
jpayne@68 619 <td class="parameter_description"><p>return value for blue component of color, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
jpayne@68 620 <td class="parameter_annotations"> </td>
jpayne@68 621 </tr>
jpayne@68 622 <tr>
jpayne@68 623 <td class="parameter_name"><p>alpha</p></td>
jpayne@68 624 <td class="parameter_description"><p>return value for alpha component of color, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
jpayne@68 625 <td class="parameter_annotations"> </td>
jpayne@68 626 </tr>
jpayne@68 627 </tbody>
jpayne@68 628 </table></div>
jpayne@68 629 </div>
jpayne@68 630 <div class="refsect3">
jpayne@68 631 <a name="cairo-pattern-get-color-stop-rgba.returns"></a><h4>Returns</h4>
jpayne@68 632 <p> <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-SUCCESS:CAPS"><code class="literal">CAIRO_STATUS_SUCCESS</code></a>, or <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-INVALID-INDEX:CAPS"><code class="literal">CAIRO_STATUS_INVALID_INDEX</code></a>
jpayne@68 633 if <em class="parameter"><code>index</code></em>
jpayne@68 634 is not valid for the given pattern. If the pattern is
jpayne@68 635 not a gradient pattern, <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a> is
jpayne@68 636 returned.</p>
jpayne@68 637 </div>
jpayne@68 638 <p class="since">Since: 1.4</p>
jpayne@68 639 </div>
jpayne@68 640 <hr>
jpayne@68 641 <div class="refsect2">
jpayne@68 642 <a name="cairo-pattern-create-rgb"></a><h3>cairo_pattern_create_rgb ()</h3>
jpayne@68 643 <pre class="programlisting"><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="returnvalue">cairo_pattern_t</span></a> *
jpayne@68 644 cairo_pattern_create_rgb (<em class="parameter"><code><span class="type">double</span> red</code></em>,
jpayne@68 645 <em class="parameter"><code><span class="type">double</span> green</code></em>,
jpayne@68 646 <em class="parameter"><code><span class="type">double</span> blue</code></em>);</pre>
jpayne@68 647 <p>Creates a new <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> corresponding to an opaque color. The
jpayne@68 648 color components are floating point numbers in the range 0 to 1.
jpayne@68 649 If the values passed in are outside that range, they will be
jpayne@68 650 clamped.</p>
jpayne@68 651 <div class="refsect3">
jpayne@68 652 <a name="cairo-pattern-create-rgb.parameters"></a><h4>Parameters</h4>
jpayne@68 653 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 654 <colgroup>
jpayne@68 655 <col width="150px" class="parameters_name">
jpayne@68 656 <col class="parameters_description">
jpayne@68 657 <col width="200px" class="parameters_annotations">
jpayne@68 658 </colgroup>
jpayne@68 659 <tbody>
jpayne@68 660 <tr>
jpayne@68 661 <td class="parameter_name"><p>red</p></td>
jpayne@68 662 <td class="parameter_description"><p>red component of the color</p></td>
jpayne@68 663 <td class="parameter_annotations"> </td>
jpayne@68 664 </tr>
jpayne@68 665 <tr>
jpayne@68 666 <td class="parameter_name"><p>green</p></td>
jpayne@68 667 <td class="parameter_description"><p>green component of the color</p></td>
jpayne@68 668 <td class="parameter_annotations"> </td>
jpayne@68 669 </tr>
jpayne@68 670 <tr>
jpayne@68 671 <td class="parameter_name"><p>blue</p></td>
jpayne@68 672 <td class="parameter_description"><p>blue component of the color</p></td>
jpayne@68 673 <td class="parameter_annotations"> </td>
jpayne@68 674 </tr>
jpayne@68 675 </tbody>
jpayne@68 676 </table></div>
jpayne@68 677 </div>
jpayne@68 678 <div class="refsect3">
jpayne@68 679 <a name="cairo-pattern-create-rgb.returns"></a><h4>Returns</h4>
jpayne@68 680 <p> the newly created <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> if successful, or
jpayne@68 681 an error pattern in case of no memory. The caller owns the
jpayne@68 682 returned object and should call <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-destroy" title="cairo_pattern_destroy ()"><code class="function">cairo_pattern_destroy()</code></a> when
jpayne@68 683 finished with it.</p>
jpayne@68 684 <p>This function will always return a valid pointer, but if an error
jpayne@68 685 occurred the pattern status will be set to an error. To inspect
jpayne@68 686 the status of a pattern use <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-status" title="cairo_pattern_status ()"><code class="function">cairo_pattern_status()</code></a>.</p>
jpayne@68 687 </div>
jpayne@68 688 <p class="since">Since: 1.0</p>
jpayne@68 689 </div>
jpayne@68 690 <hr>
jpayne@68 691 <div class="refsect2">
jpayne@68 692 <a name="cairo-pattern-create-rgba"></a><h3>cairo_pattern_create_rgba ()</h3>
jpayne@68 693 <pre class="programlisting"><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="returnvalue">cairo_pattern_t</span></a> *
jpayne@68 694 cairo_pattern_create_rgba (<em class="parameter"><code><span class="type">double</span> red</code></em>,
jpayne@68 695 <em class="parameter"><code><span class="type">double</span> green</code></em>,
jpayne@68 696 <em class="parameter"><code><span class="type">double</span> blue</code></em>,
jpayne@68 697 <em class="parameter"><code><span class="type">double</span> alpha</code></em>);</pre>
jpayne@68 698 <p>Creates a new <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> corresponding to a translucent color.
jpayne@68 699 The color components are floating point numbers in the range 0 to</p>
jpayne@68 700 <div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><p>If the values passed in are outside that range, they will be
jpayne@68 701 clamped.</p></li></ol></div>
jpayne@68 702 <div class="refsect3">
jpayne@68 703 <a name="cairo-pattern-create-rgba.parameters"></a><h4>Parameters</h4>
jpayne@68 704 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 705 <colgroup>
jpayne@68 706 <col width="150px" class="parameters_name">
jpayne@68 707 <col class="parameters_description">
jpayne@68 708 <col width="200px" class="parameters_annotations">
jpayne@68 709 </colgroup>
jpayne@68 710 <tbody>
jpayne@68 711 <tr>
jpayne@68 712 <td class="parameter_name"><p>red</p></td>
jpayne@68 713 <td class="parameter_description"><p>red component of the color</p></td>
jpayne@68 714 <td class="parameter_annotations"> </td>
jpayne@68 715 </tr>
jpayne@68 716 <tr>
jpayne@68 717 <td class="parameter_name"><p>green</p></td>
jpayne@68 718 <td class="parameter_description"><p>green component of the color</p></td>
jpayne@68 719 <td class="parameter_annotations"> </td>
jpayne@68 720 </tr>
jpayne@68 721 <tr>
jpayne@68 722 <td class="parameter_name"><p>blue</p></td>
jpayne@68 723 <td class="parameter_description"><p>blue component of the color</p></td>
jpayne@68 724 <td class="parameter_annotations"> </td>
jpayne@68 725 </tr>
jpayne@68 726 <tr>
jpayne@68 727 <td class="parameter_name"><p>alpha</p></td>
jpayne@68 728 <td class="parameter_description"><p>alpha component of the color</p></td>
jpayne@68 729 <td class="parameter_annotations"> </td>
jpayne@68 730 </tr>
jpayne@68 731 </tbody>
jpayne@68 732 </table></div>
jpayne@68 733 </div>
jpayne@68 734 <div class="refsect3">
jpayne@68 735 <a name="cairo-pattern-create-rgba.returns"></a><h4>Returns</h4>
jpayne@68 736 <p> the newly created <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> if successful, or
jpayne@68 737 an error pattern in case of no memory. The caller owns the
jpayne@68 738 returned object and should call <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-destroy" title="cairo_pattern_destroy ()"><code class="function">cairo_pattern_destroy()</code></a> when
jpayne@68 739 finished with it.</p>
jpayne@68 740 <p>This function will always return a valid pointer, but if an error
jpayne@68 741 occurred the pattern status will be set to an error. To inspect
jpayne@68 742 the status of a pattern use <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-status" title="cairo_pattern_status ()"><code class="function">cairo_pattern_status()</code></a>.</p>
jpayne@68 743 </div>
jpayne@68 744 <p class="since">Since: 1.0</p>
jpayne@68 745 </div>
jpayne@68 746 <hr>
jpayne@68 747 <div class="refsect2">
jpayne@68 748 <a name="cairo-pattern-get-rgba"></a><h3>cairo_pattern_get_rgba ()</h3>
jpayne@68 749 <pre class="programlisting"><a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a>
jpayne@68 750 cairo_pattern_get_rgba (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
jpayne@68 751 <em class="parameter"><code><span class="type">double</span> *red</code></em>,
jpayne@68 752 <em class="parameter"><code><span class="type">double</span> *green</code></em>,
jpayne@68 753 <em class="parameter"><code><span class="type">double</span> *blue</code></em>,
jpayne@68 754 <em class="parameter"><code><span class="type">double</span> *alpha</code></em>);</pre>
jpayne@68 755 <p>Gets the solid color for a solid color pattern.</p>
jpayne@68 756 <div class="refsect3">
jpayne@68 757 <a name="cairo-pattern-get-rgba.parameters"></a><h4>Parameters</h4>
jpayne@68 758 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 759 <colgroup>
jpayne@68 760 <col width="150px" class="parameters_name">
jpayne@68 761 <col class="parameters_description">
jpayne@68 762 <col width="200px" class="parameters_annotations">
jpayne@68 763 </colgroup>
jpayne@68 764 <tbody>
jpayne@68 765 <tr>
jpayne@68 766 <td class="parameter_name"><p>pattern</p></td>
jpayne@68 767 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 768 <td class="parameter_annotations"> </td>
jpayne@68 769 </tr>
jpayne@68 770 <tr>
jpayne@68 771 <td class="parameter_name"><p>red</p></td>
jpayne@68 772 <td class="parameter_description"><p>return value for red component of color, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
jpayne@68 773 <td class="parameter_annotations"> </td>
jpayne@68 774 </tr>
jpayne@68 775 <tr>
jpayne@68 776 <td class="parameter_name"><p>green</p></td>
jpayne@68 777 <td class="parameter_description"><p>return value for green component of color, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
jpayne@68 778 <td class="parameter_annotations"> </td>
jpayne@68 779 </tr>
jpayne@68 780 <tr>
jpayne@68 781 <td class="parameter_name"><p>blue</p></td>
jpayne@68 782 <td class="parameter_description"><p>return value for blue component of color, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
jpayne@68 783 <td class="parameter_annotations"> </td>
jpayne@68 784 </tr>
jpayne@68 785 <tr>
jpayne@68 786 <td class="parameter_name"><p>alpha</p></td>
jpayne@68 787 <td class="parameter_description"><p>return value for alpha component of color, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
jpayne@68 788 <td class="parameter_annotations"> </td>
jpayne@68 789 </tr>
jpayne@68 790 </tbody>
jpayne@68 791 </table></div>
jpayne@68 792 </div>
jpayne@68 793 <div class="refsect3">
jpayne@68 794 <a name="cairo-pattern-get-rgba.returns"></a><h4>Returns</h4>
jpayne@68 795 <p> <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-SUCCESS:CAPS"><code class="literal">CAIRO_STATUS_SUCCESS</code></a>, or
jpayne@68 796 <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a> if the pattern is not a solid
jpayne@68 797 color pattern.</p>
jpayne@68 798 </div>
jpayne@68 799 <p class="since">Since: 1.4</p>
jpayne@68 800 </div>
jpayne@68 801 <hr>
jpayne@68 802 <div class="refsect2">
jpayne@68 803 <a name="cairo-pattern-create-for-surface"></a><h3>cairo_pattern_create_for_surface ()</h3>
jpayne@68 804 <pre class="programlisting"><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="returnvalue">cairo_pattern_t</span></a> *
jpayne@68 805 cairo_pattern_create_for_surface (<em class="parameter"><code><a class="link" href="cairo-cairo-surface-t.html#cairo-surface-t" title="cairo_surface_t"><span class="type">cairo_surface_t</span></a> *surface</code></em>);</pre>
jpayne@68 806 <p>Create a new <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> for the given surface.</p>
jpayne@68 807 <div class="refsect3">
jpayne@68 808 <a name="cairo-pattern-create-for-surface.parameters"></a><h4>Parameters</h4>
jpayne@68 809 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 810 <colgroup>
jpayne@68 811 <col width="150px" class="parameters_name">
jpayne@68 812 <col class="parameters_description">
jpayne@68 813 <col width="200px" class="parameters_annotations">
jpayne@68 814 </colgroup>
jpayne@68 815 <tbody><tr>
jpayne@68 816 <td class="parameter_name"><p>surface</p></td>
jpayne@68 817 <td class="parameter_description"><p>the surface</p></td>
jpayne@68 818 <td class="parameter_annotations"> </td>
jpayne@68 819 </tr></tbody>
jpayne@68 820 </table></div>
jpayne@68 821 </div>
jpayne@68 822 <div class="refsect3">
jpayne@68 823 <a name="cairo-pattern-create-for-surface.returns"></a><h4>Returns</h4>
jpayne@68 824 <p> the newly created <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> if successful, or
jpayne@68 825 an error pattern in case of no memory. The caller owns the
jpayne@68 826 returned object and should call <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-destroy" title="cairo_pattern_destroy ()"><code class="function">cairo_pattern_destroy()</code></a> when
jpayne@68 827 finished with it.</p>
jpayne@68 828 <p>This function will always return a valid pointer, but if an error
jpayne@68 829 occurred the pattern status will be set to an error. To inspect
jpayne@68 830 the status of a pattern use <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-status" title="cairo_pattern_status ()"><code class="function">cairo_pattern_status()</code></a>.</p>
jpayne@68 831 </div>
jpayne@68 832 <p class="since">Since: 1.0</p>
jpayne@68 833 </div>
jpayne@68 834 <hr>
jpayne@68 835 <div class="refsect2">
jpayne@68 836 <a name="cairo-pattern-get-surface"></a><h3>cairo_pattern_get_surface ()</h3>
jpayne@68 837 <pre class="programlisting"><a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a>
jpayne@68 838 cairo_pattern_get_surface (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
jpayne@68 839 <em class="parameter"><code><a class="link" href="cairo-cairo-surface-t.html#cairo-surface-t" title="cairo_surface_t"><span class="type">cairo_surface_t</span></a> **surface</code></em>);</pre>
jpayne@68 840 <p>Gets the surface of a surface pattern. The reference returned in
jpayne@68 841 <em class="parameter"><code>surface</code></em>
jpayne@68 842 is owned by the pattern; the caller should call
jpayne@68 843 <a class="link" href="cairo-cairo-surface-t.html#cairo-surface-reference" title="cairo_surface_reference ()"><code class="function">cairo_surface_reference()</code></a> if the surface is to be retained.</p>
jpayne@68 844 <div class="refsect3">
jpayne@68 845 <a name="cairo-pattern-get-surface.parameters"></a><h4>Parameters</h4>
jpayne@68 846 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 847 <colgroup>
jpayne@68 848 <col width="150px" class="parameters_name">
jpayne@68 849 <col class="parameters_description">
jpayne@68 850 <col width="200px" class="parameters_annotations">
jpayne@68 851 </colgroup>
jpayne@68 852 <tbody>
jpayne@68 853 <tr>
jpayne@68 854 <td class="parameter_name"><p>pattern</p></td>
jpayne@68 855 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 856 <td class="parameter_annotations"> </td>
jpayne@68 857 </tr>
jpayne@68 858 <tr>
jpayne@68 859 <td class="parameter_name"><p>surface</p></td>
jpayne@68 860 <td class="parameter_description"><p>return value for surface of pattern, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
jpayne@68 861 <td class="parameter_annotations"> </td>
jpayne@68 862 </tr>
jpayne@68 863 </tbody>
jpayne@68 864 </table></div>
jpayne@68 865 </div>
jpayne@68 866 <div class="refsect3">
jpayne@68 867 <a name="cairo-pattern-get-surface.returns"></a><h4>Returns</h4>
jpayne@68 868 <p> <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-SUCCESS:CAPS"><code class="literal">CAIRO_STATUS_SUCCESS</code></a>, or
jpayne@68 869 <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a> if the pattern is not a surface
jpayne@68 870 pattern.</p>
jpayne@68 871 </div>
jpayne@68 872 <p class="since">Since: 1.4</p>
jpayne@68 873 </div>
jpayne@68 874 <hr>
jpayne@68 875 <div class="refsect2">
jpayne@68 876 <a name="cairo-pattern-create-linear"></a><h3>cairo_pattern_create_linear ()</h3>
jpayne@68 877 <pre class="programlisting"><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="returnvalue">cairo_pattern_t</span></a> *
jpayne@68 878 cairo_pattern_create_linear (<em class="parameter"><code><span class="type">double</span> x0</code></em>,
jpayne@68 879 <em class="parameter"><code><span class="type">double</span> y0</code></em>,
jpayne@68 880 <em class="parameter"><code><span class="type">double</span> x1</code></em>,
jpayne@68 881 <em class="parameter"><code><span class="type">double</span> y1</code></em>);</pre>
jpayne@68 882 <p>Create a new linear gradient <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> along the line defined
jpayne@68 883 by (x0, y0) and (x1, y1). Before using the gradient pattern, a
jpayne@68 884 number of color stops should be defined using
jpayne@68 885 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-add-color-stop-rgb" title="cairo_pattern_add_color_stop_rgb ()"><code class="function">cairo_pattern_add_color_stop_rgb()</code></a> or
jpayne@68 886 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-add-color-stop-rgba" title="cairo_pattern_add_color_stop_rgba ()"><code class="function">cairo_pattern_add_color_stop_rgba()</code></a>.</p>
jpayne@68 887 <p>Note: The coordinates here are in pattern space. For a new pattern,
jpayne@68 888 pattern space is identical to user space, but the relationship
jpayne@68 889 between the spaces can be changed with <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-set-matrix" title="cairo_pattern_set_matrix ()"><code class="function">cairo_pattern_set_matrix()</code></a>.</p>
jpayne@68 890 <div class="refsect3">
jpayne@68 891 <a name="cairo-pattern-create-linear.parameters"></a><h4>Parameters</h4>
jpayne@68 892 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 893 <colgroup>
jpayne@68 894 <col width="150px" class="parameters_name">
jpayne@68 895 <col class="parameters_description">
jpayne@68 896 <col width="200px" class="parameters_annotations">
jpayne@68 897 </colgroup>
jpayne@68 898 <tbody>
jpayne@68 899 <tr>
jpayne@68 900 <td class="parameter_name"><p>x0</p></td>
jpayne@68 901 <td class="parameter_description"><p>x coordinate of the start point</p></td>
jpayne@68 902 <td class="parameter_annotations"> </td>
jpayne@68 903 </tr>
jpayne@68 904 <tr>
jpayne@68 905 <td class="parameter_name"><p>y0</p></td>
jpayne@68 906 <td class="parameter_description"><p>y coordinate of the start point</p></td>
jpayne@68 907 <td class="parameter_annotations"> </td>
jpayne@68 908 </tr>
jpayne@68 909 <tr>
jpayne@68 910 <td class="parameter_name"><p>x1</p></td>
jpayne@68 911 <td class="parameter_description"><p>x coordinate of the end point</p></td>
jpayne@68 912 <td class="parameter_annotations"> </td>
jpayne@68 913 </tr>
jpayne@68 914 <tr>
jpayne@68 915 <td class="parameter_name"><p>y1</p></td>
jpayne@68 916 <td class="parameter_description"><p>y coordinate of the end point</p></td>
jpayne@68 917 <td class="parameter_annotations"> </td>
jpayne@68 918 </tr>
jpayne@68 919 </tbody>
jpayne@68 920 </table></div>
jpayne@68 921 </div>
jpayne@68 922 <div class="refsect3">
jpayne@68 923 <a name="cairo-pattern-create-linear.returns"></a><h4>Returns</h4>
jpayne@68 924 <p> the newly created <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> if successful, or
jpayne@68 925 an error pattern in case of no memory. The caller owns the
jpayne@68 926 returned object and should call <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-destroy" title="cairo_pattern_destroy ()"><code class="function">cairo_pattern_destroy()</code></a> when
jpayne@68 927 finished with it.</p>
jpayne@68 928 <p>This function will always return a valid pointer, but if an error
jpayne@68 929 occurred the pattern status will be set to an error. To inspect
jpayne@68 930 the status of a pattern use <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-status" title="cairo_pattern_status ()"><code class="function">cairo_pattern_status()</code></a>.</p>
jpayne@68 931 </div>
jpayne@68 932 <p class="since">Since: 1.0</p>
jpayne@68 933 </div>
jpayne@68 934 <hr>
jpayne@68 935 <div class="refsect2">
jpayne@68 936 <a name="cairo-pattern-get-linear-points"></a><h3>cairo_pattern_get_linear_points ()</h3>
jpayne@68 937 <pre class="programlisting"><a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a>
jpayne@68 938 cairo_pattern_get_linear_points (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
jpayne@68 939 <em class="parameter"><code><span class="type">double</span> *x0</code></em>,
jpayne@68 940 <em class="parameter"><code><span class="type">double</span> *y0</code></em>,
jpayne@68 941 <em class="parameter"><code><span class="type">double</span> *x1</code></em>,
jpayne@68 942 <em class="parameter"><code><span class="type">double</span> *y1</code></em>);</pre>
jpayne@68 943 <p>Gets the gradient endpoints for a linear gradient.</p>
jpayne@68 944 <div class="refsect3">
jpayne@68 945 <a name="cairo-pattern-get-linear-points.parameters"></a><h4>Parameters</h4>
jpayne@68 946 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 947 <colgroup>
jpayne@68 948 <col width="150px" class="parameters_name">
jpayne@68 949 <col class="parameters_description">
jpayne@68 950 <col width="200px" class="parameters_annotations">
jpayne@68 951 </colgroup>
jpayne@68 952 <tbody>
jpayne@68 953 <tr>
jpayne@68 954 <td class="parameter_name"><p>pattern</p></td>
jpayne@68 955 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 956 <td class="parameter_annotations"> </td>
jpayne@68 957 </tr>
jpayne@68 958 <tr>
jpayne@68 959 <td class="parameter_name"><p>x0</p></td>
jpayne@68 960 <td class="parameter_description"><p>return value for the x coordinate of the first point, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
jpayne@68 961 <td class="parameter_annotations"> </td>
jpayne@68 962 </tr>
jpayne@68 963 <tr>
jpayne@68 964 <td class="parameter_name"><p>y0</p></td>
jpayne@68 965 <td class="parameter_description"><p>return value for the y coordinate of the first point, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
jpayne@68 966 <td class="parameter_annotations"> </td>
jpayne@68 967 </tr>
jpayne@68 968 <tr>
jpayne@68 969 <td class="parameter_name"><p>x1</p></td>
jpayne@68 970 <td class="parameter_description"><p>return value for the x coordinate of the second point, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
jpayne@68 971 <td class="parameter_annotations"> </td>
jpayne@68 972 </tr>
jpayne@68 973 <tr>
jpayne@68 974 <td class="parameter_name"><p>y1</p></td>
jpayne@68 975 <td class="parameter_description"><p>return value for the y coordinate of the second point, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
jpayne@68 976 <td class="parameter_annotations"> </td>
jpayne@68 977 </tr>
jpayne@68 978 </tbody>
jpayne@68 979 </table></div>
jpayne@68 980 </div>
jpayne@68 981 <div class="refsect3">
jpayne@68 982 <a name="cairo-pattern-get-linear-points.returns"></a><h4>Returns</h4>
jpayne@68 983 <p> <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-SUCCESS:CAPS"><code class="literal">CAIRO_STATUS_SUCCESS</code></a>, or
jpayne@68 984 <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a> if <em class="parameter"><code>pattern</code></em>
jpayne@68 985 is not a linear
jpayne@68 986 gradient pattern.</p>
jpayne@68 987 </div>
jpayne@68 988 <p class="since">Since: 1.4</p>
jpayne@68 989 </div>
jpayne@68 990 <hr>
jpayne@68 991 <div class="refsect2">
jpayne@68 992 <a name="cairo-pattern-create-radial"></a><h3>cairo_pattern_create_radial ()</h3>
jpayne@68 993 <pre class="programlisting"><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="returnvalue">cairo_pattern_t</span></a> *
jpayne@68 994 cairo_pattern_create_radial (<em class="parameter"><code><span class="type">double</span> cx0</code></em>,
jpayne@68 995 <em class="parameter"><code><span class="type">double</span> cy0</code></em>,
jpayne@68 996 <em class="parameter"><code><span class="type">double</span> radius0</code></em>,
jpayne@68 997 <em class="parameter"><code><span class="type">double</span> cx1</code></em>,
jpayne@68 998 <em class="parameter"><code><span class="type">double</span> cy1</code></em>,
jpayne@68 999 <em class="parameter"><code><span class="type">double</span> radius1</code></em>);</pre>
jpayne@68 1000 <p>Creates a new radial gradient <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> between the two
jpayne@68 1001 circles defined by (cx0, cy0, radius0) and (cx1, cy1, radius1). Before using the
jpayne@68 1002 gradient pattern, a number of color stops should be defined using
jpayne@68 1003 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-add-color-stop-rgb" title="cairo_pattern_add_color_stop_rgb ()"><code class="function">cairo_pattern_add_color_stop_rgb()</code></a> or
jpayne@68 1004 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-add-color-stop-rgba" title="cairo_pattern_add_color_stop_rgba ()"><code class="function">cairo_pattern_add_color_stop_rgba()</code></a>.</p>
jpayne@68 1005 <p>Note: The coordinates here are in pattern space. For a new pattern,
jpayne@68 1006 pattern space is identical to user space, but the relationship
jpayne@68 1007 between the spaces can be changed with <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-set-matrix" title="cairo_pattern_set_matrix ()"><code class="function">cairo_pattern_set_matrix()</code></a>.</p>
jpayne@68 1008 <div class="refsect3">
jpayne@68 1009 <a name="cairo-pattern-create-radial.parameters"></a><h4>Parameters</h4>
jpayne@68 1010 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 1011 <colgroup>
jpayne@68 1012 <col width="150px" class="parameters_name">
jpayne@68 1013 <col class="parameters_description">
jpayne@68 1014 <col width="200px" class="parameters_annotations">
jpayne@68 1015 </colgroup>
jpayne@68 1016 <tbody>
jpayne@68 1017 <tr>
jpayne@68 1018 <td class="parameter_name"><p>cx0</p></td>
jpayne@68 1019 <td class="parameter_description"><p>x coordinate for the center of the start circle</p></td>
jpayne@68 1020 <td class="parameter_annotations"> </td>
jpayne@68 1021 </tr>
jpayne@68 1022 <tr>
jpayne@68 1023 <td class="parameter_name"><p>cy0</p></td>
jpayne@68 1024 <td class="parameter_description"><p>y coordinate for the center of the start circle</p></td>
jpayne@68 1025 <td class="parameter_annotations"> </td>
jpayne@68 1026 </tr>
jpayne@68 1027 <tr>
jpayne@68 1028 <td class="parameter_name"><p>radius0</p></td>
jpayne@68 1029 <td class="parameter_description"><p>radius of the start circle</p></td>
jpayne@68 1030 <td class="parameter_annotations"> </td>
jpayne@68 1031 </tr>
jpayne@68 1032 <tr>
jpayne@68 1033 <td class="parameter_name"><p>cx1</p></td>
jpayne@68 1034 <td class="parameter_description"><p>x coordinate for the center of the end circle</p></td>
jpayne@68 1035 <td class="parameter_annotations"> </td>
jpayne@68 1036 </tr>
jpayne@68 1037 <tr>
jpayne@68 1038 <td class="parameter_name"><p>cy1</p></td>
jpayne@68 1039 <td class="parameter_description"><p>y coordinate for the center of the end circle</p></td>
jpayne@68 1040 <td class="parameter_annotations"> </td>
jpayne@68 1041 </tr>
jpayne@68 1042 <tr>
jpayne@68 1043 <td class="parameter_name"><p>radius1</p></td>
jpayne@68 1044 <td class="parameter_description"><p>radius of the end circle</p></td>
jpayne@68 1045 <td class="parameter_annotations"> </td>
jpayne@68 1046 </tr>
jpayne@68 1047 </tbody>
jpayne@68 1048 </table></div>
jpayne@68 1049 </div>
jpayne@68 1050 <div class="refsect3">
jpayne@68 1051 <a name="cairo-pattern-create-radial.returns"></a><h4>Returns</h4>
jpayne@68 1052 <p> the newly created <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> if successful, or
jpayne@68 1053 an error pattern in case of no memory. The caller owns the
jpayne@68 1054 returned object and should call <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-destroy" title="cairo_pattern_destroy ()"><code class="function">cairo_pattern_destroy()</code></a> when
jpayne@68 1055 finished with it.</p>
jpayne@68 1056 <p>This function will always return a valid pointer, but if an error
jpayne@68 1057 occurred the pattern status will be set to an error. To inspect
jpayne@68 1058 the status of a pattern use <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-status" title="cairo_pattern_status ()"><code class="function">cairo_pattern_status()</code></a>.</p>
jpayne@68 1059 </div>
jpayne@68 1060 <p class="since">Since: 1.0</p>
jpayne@68 1061 </div>
jpayne@68 1062 <hr>
jpayne@68 1063 <div class="refsect2">
jpayne@68 1064 <a name="cairo-pattern-get-radial-circles"></a><h3>cairo_pattern_get_radial_circles ()</h3>
jpayne@68 1065 <pre class="programlisting"><a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a>
jpayne@68 1066 cairo_pattern_get_radial_circles (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
jpayne@68 1067 <em class="parameter"><code><span class="type">double</span> *x0</code></em>,
jpayne@68 1068 <em class="parameter"><code><span class="type">double</span> *y0</code></em>,
jpayne@68 1069 <em class="parameter"><code><span class="type">double</span> *r0</code></em>,
jpayne@68 1070 <em class="parameter"><code><span class="type">double</span> *x1</code></em>,
jpayne@68 1071 <em class="parameter"><code><span class="type">double</span> *y1</code></em>,
jpayne@68 1072 <em class="parameter"><code><span class="type">double</span> *r1</code></em>);</pre>
jpayne@68 1073 <p>Gets the gradient endpoint circles for a radial gradient, each
jpayne@68 1074 specified as a center coordinate and a radius.</p>
jpayne@68 1075 <div class="refsect3">
jpayne@68 1076 <a name="cairo-pattern-get-radial-circles.parameters"></a><h4>Parameters</h4>
jpayne@68 1077 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 1078 <colgroup>
jpayne@68 1079 <col width="150px" class="parameters_name">
jpayne@68 1080 <col class="parameters_description">
jpayne@68 1081 <col width="200px" class="parameters_annotations">
jpayne@68 1082 </colgroup>
jpayne@68 1083 <tbody>
jpayne@68 1084 <tr>
jpayne@68 1085 <td class="parameter_name"><p>pattern</p></td>
jpayne@68 1086 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 1087 <td class="parameter_annotations"> </td>
jpayne@68 1088 </tr>
jpayne@68 1089 <tr>
jpayne@68 1090 <td class="parameter_name"><p>x0</p></td>
jpayne@68 1091 <td class="parameter_description"><p>return value for the x coordinate of the center of the first circle, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
jpayne@68 1092 <td class="parameter_annotations"> </td>
jpayne@68 1093 </tr>
jpayne@68 1094 <tr>
jpayne@68 1095 <td class="parameter_name"><p>y0</p></td>
jpayne@68 1096 <td class="parameter_description"><p>return value for the y coordinate of the center of the first circle, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
jpayne@68 1097 <td class="parameter_annotations"> </td>
jpayne@68 1098 </tr>
jpayne@68 1099 <tr>
jpayne@68 1100 <td class="parameter_name"><p>r0</p></td>
jpayne@68 1101 <td class="parameter_description"><p>return value for the radius of the first circle, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
jpayne@68 1102 <td class="parameter_annotations"> </td>
jpayne@68 1103 </tr>
jpayne@68 1104 <tr>
jpayne@68 1105 <td class="parameter_name"><p>x1</p></td>
jpayne@68 1106 <td class="parameter_description"><p>return value for the x coordinate of the center of the second circle, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
jpayne@68 1107 <td class="parameter_annotations"> </td>
jpayne@68 1108 </tr>
jpayne@68 1109 <tr>
jpayne@68 1110 <td class="parameter_name"><p>y1</p></td>
jpayne@68 1111 <td class="parameter_description"><p>return value for the y coordinate of the center of the second circle, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
jpayne@68 1112 <td class="parameter_annotations"> </td>
jpayne@68 1113 </tr>
jpayne@68 1114 <tr>
jpayne@68 1115 <td class="parameter_name"><p>r1</p></td>
jpayne@68 1116 <td class="parameter_description"><p>return value for the radius of the second circle, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
jpayne@68 1117 <td class="parameter_annotations"> </td>
jpayne@68 1118 </tr>
jpayne@68 1119 </tbody>
jpayne@68 1120 </table></div>
jpayne@68 1121 </div>
jpayne@68 1122 <div class="refsect3">
jpayne@68 1123 <a name="cairo-pattern-get-radial-circles.returns"></a><h4>Returns</h4>
jpayne@68 1124 <p> <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-SUCCESS:CAPS"><code class="literal">CAIRO_STATUS_SUCCESS</code></a>, or
jpayne@68 1125 <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a> if <em class="parameter"><code>pattern</code></em>
jpayne@68 1126 is not a radial
jpayne@68 1127 gradient pattern.</p>
jpayne@68 1128 </div>
jpayne@68 1129 <p class="since">Since: 1.4</p>
jpayne@68 1130 </div>
jpayne@68 1131 <hr>
jpayne@68 1132 <div class="refsect2">
jpayne@68 1133 <a name="cairo-pattern-create-mesh"></a><h3>cairo_pattern_create_mesh ()</h3>
jpayne@68 1134 <pre class="programlisting"><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="returnvalue">cairo_pattern_t</span></a> *
jpayne@68 1135 cairo_pattern_create_mesh (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
jpayne@68 1136 <p>Create a new mesh pattern.</p>
jpayne@68 1137 <p>Mesh patterns are tensor-product patch meshes (type 7 shadings in
jpayne@68 1138 PDF). Mesh patterns may also be used to create other types of
jpayne@68 1139 shadings that are special cases of tensor-product patch meshes such
jpayne@68 1140 as Coons patch meshes (type 6 shading in PDF) and Gouraud-shaded
jpayne@68 1141 triangle meshes (type 4 and 5 shadings in PDF).</p>
jpayne@68 1142 <p>Mesh patterns consist of one or more tensor-product patches, which
jpayne@68 1143 should be defined before using the mesh pattern. Using a mesh
jpayne@68 1144 pattern with a partially defined patch as source or mask will put
jpayne@68 1145 the context in an error status with a status of
jpayne@68 1146 <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-INVALID-MESH-CONSTRUCTION:CAPS"><code class="literal">CAIRO_STATUS_INVALID_MESH_CONSTRUCTION</code></a>.</p>
jpayne@68 1147 <p>A tensor-product patch is defined by 4 Bézier curves (side 0, 1, 2,
jpayne@68 1148 3) and by 4 additional control points (P0, P1, P2, P3) that provide
jpayne@68 1149 further control over the patch and complete the definition of the
jpayne@68 1150 tensor-product patch. The corner C0 is the first point of the
jpayne@68 1151 patch.</p>
jpayne@68 1152 <p>Degenerate sides are permitted so straight lines may be used. A
jpayne@68 1153 zero length line on one side may be used to create 3 sided patches.</p>
jpayne@68 1154 <div class="informalexample"><pre class="screen">
jpayne@68 1155 C1 Side 1 C2
jpayne@68 1156 +---------------+
jpayne@68 1157 | |
jpayne@68 1158 | P1 P2 |
jpayne@68 1159 | |
jpayne@68 1160 Side 0 | | Side 2
jpayne@68 1161 | |
jpayne@68 1162 | |
jpayne@68 1163 | P0 P3 |
jpayne@68 1164 | |
jpayne@68 1165 +---------------+
jpayne@68 1166 C0 Side 3 C3
jpayne@68 1167 </pre></div>
jpayne@68 1168 <p>Each patch is constructed by first calling
jpayne@68 1169 <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-begin-patch" title="cairo_mesh_pattern_begin_patch ()"><code class="function">cairo_mesh_pattern_begin_patch()</code></a>, then <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-move-to" title="cairo_mesh_pattern_move_to ()"><code class="function">cairo_mesh_pattern_move_to()</code></a>
jpayne@68 1170 to specify the first point in the patch (C0). Then the sides are
jpayne@68 1171 specified with calls to <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-curve-to" title="cairo_mesh_pattern_curve_to ()"><code class="function">cairo_mesh_pattern_curve_to()</code></a> and
jpayne@68 1172 <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-line-to" title="cairo_mesh_pattern_line_to ()"><code class="function">cairo_mesh_pattern_line_to()</code></a>.</p>
jpayne@68 1173 <p>The four additional control points (P0, P1, P2, P3) in a patch can
jpayne@68 1174 be specified with <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-set-control-point" title="cairo_mesh_pattern_set_control_point ()"><code class="function">cairo_mesh_pattern_set_control_point()</code></a>.</p>
jpayne@68 1175 <p>At each corner of the patch (C0, C1, C2, C3) a color may be
jpayne@68 1176 specified with <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-set-corner-color-rgb" title="cairo_mesh_pattern_set_corner_color_rgb ()"><code class="function">cairo_mesh_pattern_set_corner_color_rgb()</code></a> or
jpayne@68 1177 <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-set-corner-color-rgba" title="cairo_mesh_pattern_set_corner_color_rgba ()"><code class="function">cairo_mesh_pattern_set_corner_color_rgba()</code></a>. Any corner whose color
jpayne@68 1178 is not explicitly specified defaults to transparent black.</p>
jpayne@68 1179 <p>A Coons patch is a special case of the tensor-product patch where
jpayne@68 1180 the control points are implicitly defined by the sides of the
jpayne@68 1181 patch. The default value for any control point not specified is the
jpayne@68 1182 implicit value for a Coons patch, i.e. if no control points are
jpayne@68 1183 specified the patch is a Coons patch.</p>
jpayne@68 1184 <p>A triangle is a special case of the tensor-product patch where the
jpayne@68 1185 control points are implicitly defined by the sides of the patch,
jpayne@68 1186 all the sides are lines and one of them has length 0, i.e. if the
jpayne@68 1187 patch is specified using just 3 lines, it is a triangle. If the
jpayne@68 1188 corners connected by the 0-length side have the same color, the
jpayne@68 1189 patch is a Gouraud-shaded triangle.</p>
jpayne@68 1190 <p>Patches may be oriented differently to the above diagram. For
jpayne@68 1191 example the first point could be at the top left. The diagram only
jpayne@68 1192 shows the relationship between the sides, corners and control
jpayne@68 1193 points. Regardless of where the first point is located, when
jpayne@68 1194 specifying colors, corner 0 will always be the first point, corner
jpayne@68 1195 1 the point between side 0 and side 1 etc.</p>
jpayne@68 1196 <p>Calling <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-end-patch" title="cairo_mesh_pattern_end_patch ()"><code class="function">cairo_mesh_pattern_end_patch()</code></a> completes the current
jpayne@68 1197 patch. If less than 4 sides have been defined, the first missing
jpayne@68 1198 side is defined as a line from the current point to the first point
jpayne@68 1199 of the patch (C0) and the other sides are degenerate lines from C0
jpayne@68 1200 to C0. The corners between the added sides will all be coincident
jpayne@68 1201 with C0 of the patch and their color will be set to be the same as
jpayne@68 1202 the color of C0.</p>
jpayne@68 1203 <p>Additional patches may be added with additional calls to
jpayne@68 1204 <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-begin-patch" title="cairo_mesh_pattern_begin_patch ()"><code class="function">cairo_mesh_pattern_begin_patch()</code></a>/<a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-end-patch" title="cairo_mesh_pattern_end_patch ()"><code class="function">cairo_mesh_pattern_end_patch()</code></a>.</p>
jpayne@68 1205 <div class="informalexample">
jpayne@68 1206 <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
jpayne@68 1207 <tbody>
jpayne@68 1208 <tr>
jpayne@68 1209 <td class="listing_lines" align="right"><pre>1
jpayne@68 1210 2
jpayne@68 1211 3
jpayne@68 1212 4
jpayne@68 1213 5
jpayne@68 1214 6
jpayne@68 1215 7
jpayne@68 1216 8
jpayne@68 1217 9
jpayne@68 1218 10
jpayne@68 1219 11
jpayne@68 1220 12
jpayne@68 1221 13
jpayne@68 1222 14
jpayne@68 1223 15
jpayne@68 1224 16
jpayne@68 1225 17
jpayne@68 1226 18
jpayne@68 1227 19
jpayne@68 1228 20
jpayne@68 1229 21
jpayne@68 1230 22
jpayne@68 1231 23
jpayne@68 1232 24</pre></td>
jpayne@68 1233 <td class="listing_code"><pre class="programlisting">cairo_pattern_t <span class="gtkdoc opt">*</span>pattern <span class="gtkdoc opt">=</span> <span class="function"><a href="cairo-cairo-pattern-t.html#cairo-pattern-create-mesh">cairo_pattern_create_mesh</a></span> <span class="gtkdoc opt">();</span>
jpayne@68 1234
jpayne@68 1235 <span class="comment">/* Add a Coons patch */</span>
jpayne@68 1236 <span class="function"><a href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-begin-patch">cairo_mesh_pattern_begin_patch</a></span> <span class="gtkdoc opt">(</span>pattern<span class="gtkdoc opt">);</span>
jpayne@68 1237 <span class="function"><a href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-move-to">cairo_mesh_pattern_move_to</a></span> <span class="gtkdoc opt">(</span>pattern<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>
jpayne@68 1238 <span class="function"><a href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-curve-to">cairo_mesh_pattern_curve_to</a></span> <span class="gtkdoc opt">(</span>pattern<span class="gtkdoc opt">,</span> <span class="number">30</span><span class="gtkdoc opt">, -</span><span class="number">30</span><span class="gtkdoc opt">,</span> <span class="number">60</span><span class="gtkdoc opt">,</span> <span class="number">30</span><span class="gtkdoc opt">,</span> <span class="number">100</span><span class="gtkdoc opt">,</span> <span class="number">0</span><span class="gtkdoc opt">);</span>
jpayne@68 1239 <span class="function"><a href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-curve-to">cairo_mesh_pattern_curve_to</a></span> <span class="gtkdoc opt">(</span>pattern<span class="gtkdoc opt">,</span> <span class="number">60</span><span class="gtkdoc opt">,</span> <span class="number">30</span><span class="gtkdoc opt">,</span> <span class="number">130</span><span class="gtkdoc opt">,</span> <span class="number">60</span><span class="gtkdoc opt">,</span> <span class="number">100</span><span class="gtkdoc opt">,</span> <span class="number">100</span><span class="gtkdoc opt">);</span>
jpayne@68 1240 <span class="function"><a href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-curve-to">cairo_mesh_pattern_curve_to</a></span> <span class="gtkdoc opt">(</span>pattern<span class="gtkdoc opt">,</span> <span class="number">60</span><span class="gtkdoc opt">,</span> <span class="number">70</span><span class="gtkdoc opt">,</span> <span class="number">30</span><span class="gtkdoc opt">,</span> <span class="number">130</span><span class="gtkdoc opt">,</span> <span class="number">0</span><span class="gtkdoc opt">,</span> <span class="number">100</span><span class="gtkdoc opt">);</span>
jpayne@68 1241 <span class="function"><a href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-curve-to">cairo_mesh_pattern_curve_to</a></span> <span class="gtkdoc opt">(</span>pattern<span class="gtkdoc opt">,</span> <span class="number">30</span><span class="gtkdoc opt">,</span> <span class="number">70</span><span class="gtkdoc opt">, -</span><span class="number">30</span><span class="gtkdoc opt">,</span> <span class="number">30</span><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>
jpayne@68 1242 <span class="function"><a href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-set-corner-color-rgb">cairo_mesh_pattern_set_corner_color_rgb</a></span> <span class="gtkdoc opt">(</span>pattern<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">0</span><span class="gtkdoc opt">);</span>
jpayne@68 1243 <span class="function"><a href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-set-corner-color-rgb">cairo_mesh_pattern_set_corner_color_rgb</a></span> <span class="gtkdoc opt">(</span>pattern<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">1</span><span class="gtkdoc opt">,</span> <span class="number">0</span><span class="gtkdoc opt">);</span>
jpayne@68 1244 <span class="function"><a href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-set-corner-color-rgb">cairo_mesh_pattern_set_corner_color_rgb</a></span> <span class="gtkdoc opt">(</span>pattern<span class="gtkdoc opt">,</span> <span class="number">2</span><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>
jpayne@68 1245 <span class="function"><a href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-set-corner-color-rgb">cairo_mesh_pattern_set_corner_color_rgb</a></span> <span class="gtkdoc opt">(</span>pattern<span class="gtkdoc opt">,</span> <span class="number">3</span><span class="gtkdoc opt">,</span> <span class="number">1</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>
jpayne@68 1246 <span class="function"><a href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-end-patch">cairo_mesh_pattern_end_patch</a></span> <span class="gtkdoc opt">(</span>pattern<span class="gtkdoc opt">);</span>
jpayne@68 1247
jpayne@68 1248 <span class="comment">/* Add a Gouraud-shaded triangle */</span>
jpayne@68 1249 <span class="function"><a href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-begin-patch">cairo_mesh_pattern_begin_patch</a></span> <span class="gtkdoc opt">(</span>pattern<span class="gtkdoc opt">)</span>
jpayne@68 1250 <span class="function"><a href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-move-to">cairo_mesh_pattern_move_to</a></span> <span class="gtkdoc opt">(</span>pattern<span class="gtkdoc opt">,</span> <span class="number">100</span><span class="gtkdoc opt">,</span> <span class="number">100</span><span class="gtkdoc opt">);</span>
jpayne@68 1251 <span class="function"><a href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-line-to">cairo_mesh_pattern_line_to</a></span> <span class="gtkdoc opt">(</span>pattern<span class="gtkdoc opt">,</span> <span class="number">130</span><span class="gtkdoc opt">,</span> <span class="number">130</span><span class="gtkdoc opt">);</span>
jpayne@68 1252 <span class="function"><a href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-line-to">cairo_mesh_pattern_line_to</a></span> <span class="gtkdoc opt">(</span>pattern<span class="gtkdoc opt">,</span> <span class="number">130</span><span class="gtkdoc opt">,</span> <span class="number">70</span><span class="gtkdoc opt">);</span>
jpayne@68 1253 <span class="function"><a href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-set-corner-color-rgb">cairo_mesh_pattern_set_corner_color_rgb</a></span> <span class="gtkdoc opt">(</span>pattern<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">0</span><span class="gtkdoc opt">);</span>
jpayne@68 1254 <span class="function"><a href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-set-corner-color-rgb">cairo_mesh_pattern_set_corner_color_rgb</a></span> <span class="gtkdoc opt">(</span>pattern<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">1</span><span class="gtkdoc opt">,</span> <span class="number">0</span><span class="gtkdoc opt">);</span>
jpayne@68 1255 <span class="function"><a href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-set-corner-color-rgb">cairo_mesh_pattern_set_corner_color_rgb</a></span> <span class="gtkdoc opt">(</span>pattern<span class="gtkdoc opt">,</span> <span class="number">2</span><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>
jpayne@68 1256 <span class="function"><a href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-end-patch">cairo_mesh_pattern_end_patch</a></span> <span class="gtkdoc opt">(</span>pattern<span class="gtkdoc opt">)</span></pre></td>
jpayne@68 1257 </tr>
jpayne@68 1258 </tbody>
jpayne@68 1259 </table>
jpayne@68 1260 </div>
jpayne@68 1261
jpayne@68 1262 <p>When two patches overlap, the last one that has been added is drawn
jpayne@68 1263 over the first one.</p>
jpayne@68 1264 <p>When a patch folds over itself, points are sorted depending on
jpayne@68 1265 their parameter coordinates inside the patch. The v coordinate
jpayne@68 1266 ranges from 0 to 1 when moving from side 3 to side 1; the u
jpayne@68 1267 coordinate ranges from 0 to 1 when going from side 0 to side</p>
jpayne@68 1268 <div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><p>Points with higher v coordinate hide points with lower v
jpayne@68 1269 coordinate. When two points have the same v coordinate, the one
jpayne@68 1270 with higher u coordinate is above. This means that points nearer to
jpayne@68 1271 side 1 are above points nearer to side 3; when this is not
jpayne@68 1272 sufficient to decide which point is above (for example when both
jpayne@68 1273 points belong to side 1 or side 3) points nearer to side 2 are
jpayne@68 1274 above points nearer to side 0.</p></li></ol></div>
jpayne@68 1275 <p>For a complete definition of tensor-product patches, see the PDF
jpayne@68 1276 specification (ISO32000), which describes the parametrization in
jpayne@68 1277 detail.</p>
jpayne@68 1278 <p>Note: The coordinates are always in pattern space. For a new
jpayne@68 1279 pattern, pattern space is identical to user space, but the
jpayne@68 1280 relationship between the spaces can be changed with
jpayne@68 1281 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-set-matrix" title="cairo_pattern_set_matrix ()"><code class="function">cairo_pattern_set_matrix()</code></a>.</p>
jpayne@68 1282 <div class="refsect3">
jpayne@68 1283 <a name="cairo-pattern-create-mesh.returns"></a><h4>Returns</h4>
jpayne@68 1284 <p> the newly created <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> if successful, or
jpayne@68 1285 an error pattern in case of no memory. The caller owns the returned
jpayne@68 1286 object and should call <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-destroy" title="cairo_pattern_destroy ()"><code class="function">cairo_pattern_destroy()</code></a> when finished with
jpayne@68 1287 it.</p>
jpayne@68 1288 <p>This function will always return a valid pointer, but if an error
jpayne@68 1289 occurred the pattern status will be set to an error. To inspect the
jpayne@68 1290 status of a pattern use <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-status" title="cairo_pattern_status ()"><code class="function">cairo_pattern_status()</code></a>.</p>
jpayne@68 1291 </div>
jpayne@68 1292 <p class="since">Since: 1.12</p>
jpayne@68 1293 </div>
jpayne@68 1294 <hr>
jpayne@68 1295 <div class="refsect2">
jpayne@68 1296 <a name="cairo-mesh-pattern-begin-patch"></a><h3>cairo_mesh_pattern_begin_patch ()</h3>
jpayne@68 1297 <pre class="programlisting"><span class="returnvalue">void</span>
jpayne@68 1298 cairo_mesh_pattern_begin_patch (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>);</pre>
jpayne@68 1299 <p>Begin a patch in a mesh pattern.</p>
jpayne@68 1300 <p>After calling this function, the patch shape should be defined with
jpayne@68 1301 <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-move-to" title="cairo_mesh_pattern_move_to ()"><code class="function">cairo_mesh_pattern_move_to()</code></a>, <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-line-to" title="cairo_mesh_pattern_line_to ()"><code class="function">cairo_mesh_pattern_line_to()</code></a> and
jpayne@68 1302 <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-curve-to" title="cairo_mesh_pattern_curve_to ()"><code class="function">cairo_mesh_pattern_curve_to()</code></a>.</p>
jpayne@68 1303 <p>After defining the patch, <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-end-patch" title="cairo_mesh_pattern_end_patch ()"><code class="function">cairo_mesh_pattern_end_patch()</code></a> must be
jpayne@68 1304 called before using <em class="parameter"><code>pattern</code></em>
jpayne@68 1305 as a source or mask.</p>
jpayne@68 1306 <p>Note: If <em class="parameter"><code>pattern</code></em>
jpayne@68 1307 is not a mesh pattern then <em class="parameter"><code>pattern</code></em>
jpayne@68 1308 will be put
jpayne@68 1309 into an error status with a status of
jpayne@68 1310 <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a>. If <em class="parameter"><code>pattern</code></em>
jpayne@68 1311 already has a
jpayne@68 1312 current patch, it will be put into an error status with a status of
jpayne@68 1313 <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-INVALID-MESH-CONSTRUCTION:CAPS"><code class="literal">CAIRO_STATUS_INVALID_MESH_CONSTRUCTION</code></a>.</p>
jpayne@68 1314 <div class="refsect3">
jpayne@68 1315 <a name="cairo-mesh-pattern-begin-patch.parameters"></a><h4>Parameters</h4>
jpayne@68 1316 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 1317 <colgroup>
jpayne@68 1318 <col width="150px" class="parameters_name">
jpayne@68 1319 <col class="parameters_description">
jpayne@68 1320 <col width="200px" class="parameters_annotations">
jpayne@68 1321 </colgroup>
jpayne@68 1322 <tbody><tr>
jpayne@68 1323 <td class="parameter_name"><p>pattern</p></td>
jpayne@68 1324 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 1325 <td class="parameter_annotations"> </td>
jpayne@68 1326 </tr></tbody>
jpayne@68 1327 </table></div>
jpayne@68 1328 </div>
jpayne@68 1329 <p class="since">Since: 1.12</p>
jpayne@68 1330 </div>
jpayne@68 1331 <hr>
jpayne@68 1332 <div class="refsect2">
jpayne@68 1333 <a name="cairo-mesh-pattern-end-patch"></a><h3>cairo_mesh_pattern_end_patch ()</h3>
jpayne@68 1334 <pre class="programlisting"><span class="returnvalue">void</span>
jpayne@68 1335 cairo_mesh_pattern_end_patch (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>);</pre>
jpayne@68 1336 <p>Indicates the end of the current patch in a mesh pattern.</p>
jpayne@68 1337 <p>If the current patch has less than 4 sides, it is closed with a
jpayne@68 1338 straight line from the current point to the first point of the
jpayne@68 1339 patch as if <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-line-to" title="cairo_mesh_pattern_line_to ()"><code class="function">cairo_mesh_pattern_line_to()</code></a> was used.</p>
jpayne@68 1340 <p>Note: If <em class="parameter"><code>pattern</code></em>
jpayne@68 1341 is not a mesh pattern then <em class="parameter"><code>pattern</code></em>
jpayne@68 1342 will be put
jpayne@68 1343 into an error status with a status of
jpayne@68 1344 <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a>. If <em class="parameter"><code>pattern</code></em>
jpayne@68 1345 has no current
jpayne@68 1346 patch or the current patch has no current point, <em class="parameter"><code>pattern</code></em>
jpayne@68 1347 will be
jpayne@68 1348 put into an error status with a status of
jpayne@68 1349 <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-INVALID-MESH-CONSTRUCTION:CAPS"><code class="literal">CAIRO_STATUS_INVALID_MESH_CONSTRUCTION</code></a>.</p>
jpayne@68 1350 <div class="refsect3">
jpayne@68 1351 <a name="cairo-mesh-pattern-end-patch.parameters"></a><h4>Parameters</h4>
jpayne@68 1352 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 1353 <colgroup>
jpayne@68 1354 <col width="150px" class="parameters_name">
jpayne@68 1355 <col class="parameters_description">
jpayne@68 1356 <col width="200px" class="parameters_annotations">
jpayne@68 1357 </colgroup>
jpayne@68 1358 <tbody><tr>
jpayne@68 1359 <td class="parameter_name"><p>pattern</p></td>
jpayne@68 1360 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 1361 <td class="parameter_annotations"> </td>
jpayne@68 1362 </tr></tbody>
jpayne@68 1363 </table></div>
jpayne@68 1364 </div>
jpayne@68 1365 <p class="since">Since: 1.12</p>
jpayne@68 1366 </div>
jpayne@68 1367 <hr>
jpayne@68 1368 <div class="refsect2">
jpayne@68 1369 <a name="cairo-mesh-pattern-move-to"></a><h3>cairo_mesh_pattern_move_to ()</h3>
jpayne@68 1370 <pre class="programlisting"><span class="returnvalue">void</span>
jpayne@68 1371 cairo_mesh_pattern_move_to (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
jpayne@68 1372 <em class="parameter"><code><span class="type">double</span> x</code></em>,
jpayne@68 1373 <em class="parameter"><code><span class="type">double</span> y</code></em>);</pre>
jpayne@68 1374 <p>Define the first point of the current patch in a mesh pattern.</p>
jpayne@68 1375 <p>After this call the current point will be (<em class="parameter"><code>x</code></em>
jpayne@68 1376 , <em class="parameter"><code>y</code></em>
jpayne@68 1377 ).</p>
jpayne@68 1378 <p>Note: If <em class="parameter"><code>pattern</code></em>
jpayne@68 1379 is not a mesh pattern then <em class="parameter"><code>pattern</code></em>
jpayne@68 1380 will be put
jpayne@68 1381 into an error status with a status of
jpayne@68 1382 <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a>. If <em class="parameter"><code>pattern</code></em>
jpayne@68 1383 has no current
jpayne@68 1384 patch or the current patch already has at least one side, <em class="parameter"><code>pattern</code></em>
jpayne@68 1385
jpayne@68 1386 will be put into an error status with a status of
jpayne@68 1387 <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-INVALID-MESH-CONSTRUCTION:CAPS"><code class="literal">CAIRO_STATUS_INVALID_MESH_CONSTRUCTION</code></a>.</p>
jpayne@68 1388 <div class="refsect3">
jpayne@68 1389 <a name="cairo-mesh-pattern-move-to.parameters"></a><h4>Parameters</h4>
jpayne@68 1390 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 1391 <colgroup>
jpayne@68 1392 <col width="150px" class="parameters_name">
jpayne@68 1393 <col class="parameters_description">
jpayne@68 1394 <col width="200px" class="parameters_annotations">
jpayne@68 1395 </colgroup>
jpayne@68 1396 <tbody>
jpayne@68 1397 <tr>
jpayne@68 1398 <td class="parameter_name"><p>pattern</p></td>
jpayne@68 1399 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 1400 <td class="parameter_annotations"> </td>
jpayne@68 1401 </tr>
jpayne@68 1402 <tr>
jpayne@68 1403 <td class="parameter_name"><p>x</p></td>
jpayne@68 1404 <td class="parameter_description"><p>the X coordinate of the new position</p></td>
jpayne@68 1405 <td class="parameter_annotations"> </td>
jpayne@68 1406 </tr>
jpayne@68 1407 <tr>
jpayne@68 1408 <td class="parameter_name"><p>y</p></td>
jpayne@68 1409 <td class="parameter_description"><p>the Y coordinate of the new position</p></td>
jpayne@68 1410 <td class="parameter_annotations"> </td>
jpayne@68 1411 </tr>
jpayne@68 1412 </tbody>
jpayne@68 1413 </table></div>
jpayne@68 1414 </div>
jpayne@68 1415 <p class="since">Since: 1.12</p>
jpayne@68 1416 </div>
jpayne@68 1417 <hr>
jpayne@68 1418 <div class="refsect2">
jpayne@68 1419 <a name="cairo-mesh-pattern-line-to"></a><h3>cairo_mesh_pattern_line_to ()</h3>
jpayne@68 1420 <pre class="programlisting"><span class="returnvalue">void</span>
jpayne@68 1421 cairo_mesh_pattern_line_to (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
jpayne@68 1422 <em class="parameter"><code><span class="type">double</span> x</code></em>,
jpayne@68 1423 <em class="parameter"><code><span class="type">double</span> y</code></em>);</pre>
jpayne@68 1424 <p>Adds a line to the current patch from the current point to position
jpayne@68 1425 (<em class="parameter"><code>x</code></em>
jpayne@68 1426 , <em class="parameter"><code>y</code></em>
jpayne@68 1427 ) in pattern-space coordinates.</p>
jpayne@68 1428 <p>If there is no current point before the call to
jpayne@68 1429 <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-line-to" title="cairo_mesh_pattern_line_to ()"><code class="function">cairo_mesh_pattern_line_to()</code></a> this function will behave as
jpayne@68 1430 cairo_mesh_pattern_move_to(<em class="parameter"><code>pattern</code></em>
jpayne@68 1431 , <em class="parameter"><code>x</code></em>
jpayne@68 1432 , <em class="parameter"><code>y</code></em>
jpayne@68 1433 ).</p>
jpayne@68 1434 <p>After this call the current point will be (<em class="parameter"><code>x</code></em>
jpayne@68 1435 , <em class="parameter"><code>y</code></em>
jpayne@68 1436 ).</p>
jpayne@68 1437 <p>Note: If <em class="parameter"><code>pattern</code></em>
jpayne@68 1438 is not a mesh pattern then <em class="parameter"><code>pattern</code></em>
jpayne@68 1439 will be put
jpayne@68 1440 into an error status with a status of
jpayne@68 1441 <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a>. If <em class="parameter"><code>pattern</code></em>
jpayne@68 1442 has no current
jpayne@68 1443 patch or the current patch already has 4 sides, <em class="parameter"><code>pattern</code></em>
jpayne@68 1444 will be
jpayne@68 1445 put into an error status with a status of
jpayne@68 1446 <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-INVALID-MESH-CONSTRUCTION:CAPS"><code class="literal">CAIRO_STATUS_INVALID_MESH_CONSTRUCTION</code></a>.</p>
jpayne@68 1447 <div class="refsect3">
jpayne@68 1448 <a name="cairo-mesh-pattern-line-to.parameters"></a><h4>Parameters</h4>
jpayne@68 1449 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 1450 <colgroup>
jpayne@68 1451 <col width="150px" class="parameters_name">
jpayne@68 1452 <col class="parameters_description">
jpayne@68 1453 <col width="200px" class="parameters_annotations">
jpayne@68 1454 </colgroup>
jpayne@68 1455 <tbody>
jpayne@68 1456 <tr>
jpayne@68 1457 <td class="parameter_name"><p>pattern</p></td>
jpayne@68 1458 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 1459 <td class="parameter_annotations"> </td>
jpayne@68 1460 </tr>
jpayne@68 1461 <tr>
jpayne@68 1462 <td class="parameter_name"><p>x</p></td>
jpayne@68 1463 <td class="parameter_description"><p>the X coordinate of the end of the new line</p></td>
jpayne@68 1464 <td class="parameter_annotations"> </td>
jpayne@68 1465 </tr>
jpayne@68 1466 <tr>
jpayne@68 1467 <td class="parameter_name"><p>y</p></td>
jpayne@68 1468 <td class="parameter_description"><p>the Y coordinate of the end of the new line</p></td>
jpayne@68 1469 <td class="parameter_annotations"> </td>
jpayne@68 1470 </tr>
jpayne@68 1471 </tbody>
jpayne@68 1472 </table></div>
jpayne@68 1473 </div>
jpayne@68 1474 <p class="since">Since: 1.12</p>
jpayne@68 1475 </div>
jpayne@68 1476 <hr>
jpayne@68 1477 <div class="refsect2">
jpayne@68 1478 <a name="cairo-mesh-pattern-curve-to"></a><h3>cairo_mesh_pattern_curve_to ()</h3>
jpayne@68 1479 <pre class="programlisting"><span class="returnvalue">void</span>
jpayne@68 1480 cairo_mesh_pattern_curve_to (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
jpayne@68 1481 <em class="parameter"><code><span class="type">double</span> x1</code></em>,
jpayne@68 1482 <em class="parameter"><code><span class="type">double</span> y1</code></em>,
jpayne@68 1483 <em class="parameter"><code><span class="type">double</span> x2</code></em>,
jpayne@68 1484 <em class="parameter"><code><span class="type">double</span> y2</code></em>,
jpayne@68 1485 <em class="parameter"><code><span class="type">double</span> x3</code></em>,
jpayne@68 1486 <em class="parameter"><code><span class="type">double</span> y3</code></em>);</pre>
jpayne@68 1487 <p>Adds a cubic Bézier spline to the current patch from the current
jpayne@68 1488 point to position (<em class="parameter"><code>x3</code></em>
jpayne@68 1489 , <em class="parameter"><code>y3</code></em>
jpayne@68 1490 ) in pattern-space coordinates, using
jpayne@68 1491 (<em class="parameter"><code>x1</code></em>
jpayne@68 1492 , <em class="parameter"><code>y1</code></em>
jpayne@68 1493 ) and (<em class="parameter"><code>x2</code></em>
jpayne@68 1494 , <em class="parameter"><code>y2</code></em>
jpayne@68 1495 ) as the control points.</p>
jpayne@68 1496 <p>If the current patch has no current point before the call to
jpayne@68 1497 <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-curve-to" title="cairo_mesh_pattern_curve_to ()"><code class="function">cairo_mesh_pattern_curve_to()</code></a>, this function will behave as if
jpayne@68 1498 preceded by a call to cairo_mesh_pattern_move_to(<em class="parameter"><code>pattern</code></em>
jpayne@68 1499 , <em class="parameter"><code>x1</code></em>
jpayne@68 1500 ,
jpayne@68 1501 <em class="parameter"><code>y1</code></em>
jpayne@68 1502 ).</p>
jpayne@68 1503 <p>After this call the current point will be (<em class="parameter"><code>x3</code></em>
jpayne@68 1504 , <em class="parameter"><code>y3</code></em>
jpayne@68 1505 ).</p>
jpayne@68 1506 <p>Note: If <em class="parameter"><code>pattern</code></em>
jpayne@68 1507 is not a mesh pattern then <em class="parameter"><code>pattern</code></em>
jpayne@68 1508 will be put
jpayne@68 1509 into an error status with a status of
jpayne@68 1510 <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a>. If <em class="parameter"><code>pattern</code></em>
jpayne@68 1511 has no current
jpayne@68 1512 patch or the current patch already has 4 sides, <em class="parameter"><code>pattern</code></em>
jpayne@68 1513 will be
jpayne@68 1514 put into an error status with a status of
jpayne@68 1515 <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-INVALID-MESH-CONSTRUCTION:CAPS"><code class="literal">CAIRO_STATUS_INVALID_MESH_CONSTRUCTION</code></a>.</p>
jpayne@68 1516 <div class="refsect3">
jpayne@68 1517 <a name="cairo-mesh-pattern-curve-to.parameters"></a><h4>Parameters</h4>
jpayne@68 1518 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 1519 <colgroup>
jpayne@68 1520 <col width="150px" class="parameters_name">
jpayne@68 1521 <col class="parameters_description">
jpayne@68 1522 <col width="200px" class="parameters_annotations">
jpayne@68 1523 </colgroup>
jpayne@68 1524 <tbody>
jpayne@68 1525 <tr>
jpayne@68 1526 <td class="parameter_name"><p>pattern</p></td>
jpayne@68 1527 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 1528 <td class="parameter_annotations"> </td>
jpayne@68 1529 </tr>
jpayne@68 1530 <tr>
jpayne@68 1531 <td class="parameter_name"><p>x1</p></td>
jpayne@68 1532 <td class="parameter_description"><p>the X coordinate of the first control point</p></td>
jpayne@68 1533 <td class="parameter_annotations"> </td>
jpayne@68 1534 </tr>
jpayne@68 1535 <tr>
jpayne@68 1536 <td class="parameter_name"><p>y1</p></td>
jpayne@68 1537 <td class="parameter_description"><p>the Y coordinate of the first control point</p></td>
jpayne@68 1538 <td class="parameter_annotations"> </td>
jpayne@68 1539 </tr>
jpayne@68 1540 <tr>
jpayne@68 1541 <td class="parameter_name"><p>x2</p></td>
jpayne@68 1542 <td class="parameter_description"><p>the X coordinate of the second control point</p></td>
jpayne@68 1543 <td class="parameter_annotations"> </td>
jpayne@68 1544 </tr>
jpayne@68 1545 <tr>
jpayne@68 1546 <td class="parameter_name"><p>y2</p></td>
jpayne@68 1547 <td class="parameter_description"><p>the Y coordinate of the second control point</p></td>
jpayne@68 1548 <td class="parameter_annotations"> </td>
jpayne@68 1549 </tr>
jpayne@68 1550 <tr>
jpayne@68 1551 <td class="parameter_name"><p>x3</p></td>
jpayne@68 1552 <td class="parameter_description"><p>the X coordinate of the end of the curve</p></td>
jpayne@68 1553 <td class="parameter_annotations"> </td>
jpayne@68 1554 </tr>
jpayne@68 1555 <tr>
jpayne@68 1556 <td class="parameter_name"><p>y3</p></td>
jpayne@68 1557 <td class="parameter_description"><p>the Y coordinate of the end of the curve</p></td>
jpayne@68 1558 <td class="parameter_annotations"> </td>
jpayne@68 1559 </tr>
jpayne@68 1560 </tbody>
jpayne@68 1561 </table></div>
jpayne@68 1562 </div>
jpayne@68 1563 <p class="since">Since: 1.12</p>
jpayne@68 1564 </div>
jpayne@68 1565 <hr>
jpayne@68 1566 <div class="refsect2">
jpayne@68 1567 <a name="cairo-mesh-pattern-set-control-point"></a><h3>cairo_mesh_pattern_set_control_point ()</h3>
jpayne@68 1568 <pre class="programlisting"><span class="returnvalue">void</span>
jpayne@68 1569 cairo_mesh_pattern_set_control_point (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
jpayne@68 1570 <em class="parameter"><code>unsigned <span class="type">int</span> point_num</code></em>,
jpayne@68 1571 <em class="parameter"><code><span class="type">double</span> x</code></em>,
jpayne@68 1572 <em class="parameter"><code><span class="type">double</span> y</code></em>);</pre>
jpayne@68 1573 <p>Set an internal control point of the current patch.</p>
jpayne@68 1574 <p>Valid values for <em class="parameter"><code>point_num</code></em>
jpayne@68 1575 are from 0 to 3 and identify the
jpayne@68 1576 control points as explained in <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-create-mesh" title="cairo_pattern_create_mesh ()"><code class="function">cairo_pattern_create_mesh()</code></a>.</p>
jpayne@68 1577 <p>Note: If <em class="parameter"><code>pattern</code></em>
jpayne@68 1578 is not a mesh pattern then <em class="parameter"><code>pattern</code></em>
jpayne@68 1579 will be put
jpayne@68 1580 into an error status with a status of
jpayne@68 1581 <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a>. If <em class="parameter"><code>point_num</code></em>
jpayne@68 1582 is not valid,
jpayne@68 1583 <em class="parameter"><code>pattern</code></em>
jpayne@68 1584 will be put into an error status with a status of
jpayne@68 1585 <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-INVALID-INDEX:CAPS"><code class="literal">CAIRO_STATUS_INVALID_INDEX</code></a>. If <em class="parameter"><code>pattern</code></em>
jpayne@68 1586 has no current patch,
jpayne@68 1587 <em class="parameter"><code>pattern</code></em>
jpayne@68 1588 will be put into an error status with a status of
jpayne@68 1589 <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-INVALID-MESH-CONSTRUCTION:CAPS"><code class="literal">CAIRO_STATUS_INVALID_MESH_CONSTRUCTION</code></a>.</p>
jpayne@68 1590 <div class="refsect3">
jpayne@68 1591 <a name="cairo-mesh-pattern-set-control-point.parameters"></a><h4>Parameters</h4>
jpayne@68 1592 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 1593 <colgroup>
jpayne@68 1594 <col width="150px" class="parameters_name">
jpayne@68 1595 <col class="parameters_description">
jpayne@68 1596 <col width="200px" class="parameters_annotations">
jpayne@68 1597 </colgroup>
jpayne@68 1598 <tbody>
jpayne@68 1599 <tr>
jpayne@68 1600 <td class="parameter_name"><p>pattern</p></td>
jpayne@68 1601 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 1602 <td class="parameter_annotations"> </td>
jpayne@68 1603 </tr>
jpayne@68 1604 <tr>
jpayne@68 1605 <td class="parameter_name"><p>point_num</p></td>
jpayne@68 1606 <td class="parameter_description"><p>the control point to set the position for</p></td>
jpayne@68 1607 <td class="parameter_annotations"> </td>
jpayne@68 1608 </tr>
jpayne@68 1609 <tr>
jpayne@68 1610 <td class="parameter_name"><p>x</p></td>
jpayne@68 1611 <td class="parameter_description"><p>the X coordinate of the control point</p></td>
jpayne@68 1612 <td class="parameter_annotations"> </td>
jpayne@68 1613 </tr>
jpayne@68 1614 <tr>
jpayne@68 1615 <td class="parameter_name"><p>y</p></td>
jpayne@68 1616 <td class="parameter_description"><p>the Y coordinate of the control point</p></td>
jpayne@68 1617 <td class="parameter_annotations"> </td>
jpayne@68 1618 </tr>
jpayne@68 1619 </tbody>
jpayne@68 1620 </table></div>
jpayne@68 1621 </div>
jpayne@68 1622 <p class="since">Since: 1.12</p>
jpayne@68 1623 </div>
jpayne@68 1624 <hr>
jpayne@68 1625 <div class="refsect2">
jpayne@68 1626 <a name="cairo-mesh-pattern-set-corner-color-rgb"></a><h3>cairo_mesh_pattern_set_corner_color_rgb ()</h3>
jpayne@68 1627 <pre class="programlisting"><span class="returnvalue">void</span>
jpayne@68 1628 cairo_mesh_pattern_set_corner_color_rgb
jpayne@68 1629 (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
jpayne@68 1630 <em class="parameter"><code>unsigned <span class="type">int</span> corner_num</code></em>,
jpayne@68 1631 <em class="parameter"><code><span class="type">double</span> red</code></em>,
jpayne@68 1632 <em class="parameter"><code><span class="type">double</span> green</code></em>,
jpayne@68 1633 <em class="parameter"><code><span class="type">double</span> blue</code></em>);</pre>
jpayne@68 1634 <p>Sets the color of a corner of the current patch in a mesh pattern.</p>
jpayne@68 1635 <p>The color is specified in the same way as in <a class="link" href="cairo-cairo-t.html#cairo-set-source-rgb" title="cairo_set_source_rgb ()"><code class="function">cairo_set_source_rgb()</code></a>.</p>
jpayne@68 1636 <p>Valid values for <em class="parameter"><code>corner_num</code></em>
jpayne@68 1637 are from 0 to 3 and identify the
jpayne@68 1638 corners as explained in <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-create-mesh" title="cairo_pattern_create_mesh ()"><code class="function">cairo_pattern_create_mesh()</code></a>.</p>
jpayne@68 1639 <p>Note: If <em class="parameter"><code>pattern</code></em>
jpayne@68 1640 is not a mesh pattern then <em class="parameter"><code>pattern</code></em>
jpayne@68 1641 will be put
jpayne@68 1642 into an error status with a status of
jpayne@68 1643 <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a>. If <em class="parameter"><code>corner_num</code></em>
jpayne@68 1644 is not valid,
jpayne@68 1645 <em class="parameter"><code>pattern</code></em>
jpayne@68 1646 will be put into an error status with a status of
jpayne@68 1647 <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-INVALID-INDEX:CAPS"><code class="literal">CAIRO_STATUS_INVALID_INDEX</code></a>. If <em class="parameter"><code>pattern</code></em>
jpayne@68 1648 has no current patch,
jpayne@68 1649 <em class="parameter"><code>pattern</code></em>
jpayne@68 1650 will be put into an error status with a status of
jpayne@68 1651 <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-INVALID-MESH-CONSTRUCTION:CAPS"><code class="literal">CAIRO_STATUS_INVALID_MESH_CONSTRUCTION</code></a>.</p>
jpayne@68 1652 <div class="refsect3">
jpayne@68 1653 <a name="cairo-mesh-pattern-set-corner-color-rgb.parameters"></a><h4>Parameters</h4>
jpayne@68 1654 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 1655 <colgroup>
jpayne@68 1656 <col width="150px" class="parameters_name">
jpayne@68 1657 <col class="parameters_description">
jpayne@68 1658 <col width="200px" class="parameters_annotations">
jpayne@68 1659 </colgroup>
jpayne@68 1660 <tbody>
jpayne@68 1661 <tr>
jpayne@68 1662 <td class="parameter_name"><p>pattern</p></td>
jpayne@68 1663 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 1664 <td class="parameter_annotations"> </td>
jpayne@68 1665 </tr>
jpayne@68 1666 <tr>
jpayne@68 1667 <td class="parameter_name"><p>corner_num</p></td>
jpayne@68 1668 <td class="parameter_description"><p>the corner to set the color for</p></td>
jpayne@68 1669 <td class="parameter_annotations"> </td>
jpayne@68 1670 </tr>
jpayne@68 1671 <tr>
jpayne@68 1672 <td class="parameter_name"><p>red</p></td>
jpayne@68 1673 <td class="parameter_description"><p>red component of color</p></td>
jpayne@68 1674 <td class="parameter_annotations"> </td>
jpayne@68 1675 </tr>
jpayne@68 1676 <tr>
jpayne@68 1677 <td class="parameter_name"><p>green</p></td>
jpayne@68 1678 <td class="parameter_description"><p>green component of color</p></td>
jpayne@68 1679 <td class="parameter_annotations"> </td>
jpayne@68 1680 </tr>
jpayne@68 1681 <tr>
jpayne@68 1682 <td class="parameter_name"><p>blue</p></td>
jpayne@68 1683 <td class="parameter_description"><p>blue component of color</p></td>
jpayne@68 1684 <td class="parameter_annotations"> </td>
jpayne@68 1685 </tr>
jpayne@68 1686 </tbody>
jpayne@68 1687 </table></div>
jpayne@68 1688 </div>
jpayne@68 1689 <p class="since">Since: 1.12</p>
jpayne@68 1690 </div>
jpayne@68 1691 <hr>
jpayne@68 1692 <div class="refsect2">
jpayne@68 1693 <a name="cairo-mesh-pattern-set-corner-color-rgba"></a><h3>cairo_mesh_pattern_set_corner_color_rgba ()</h3>
jpayne@68 1694 <pre class="programlisting"><span class="returnvalue">void</span>
jpayne@68 1695 cairo_mesh_pattern_set_corner_color_rgba
jpayne@68 1696 (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
jpayne@68 1697 <em class="parameter"><code>unsigned <span class="type">int</span> corner_num</code></em>,
jpayne@68 1698 <em class="parameter"><code><span class="type">double</span> red</code></em>,
jpayne@68 1699 <em class="parameter"><code><span class="type">double</span> green</code></em>,
jpayne@68 1700 <em class="parameter"><code><span class="type">double</span> blue</code></em>,
jpayne@68 1701 <em class="parameter"><code><span class="type">double</span> alpha</code></em>);</pre>
jpayne@68 1702 <p>Sets the color of a corner of the current patch in a mesh pattern.</p>
jpayne@68 1703 <p>The color is specified in the same way as in <a class="link" href="cairo-cairo-t.html#cairo-set-source-rgba" title="cairo_set_source_rgba ()"><code class="function">cairo_set_source_rgba()</code></a>.</p>
jpayne@68 1704 <p>Valid values for <em class="parameter"><code>corner_num</code></em>
jpayne@68 1705 are from 0 to 3 and identify the
jpayne@68 1706 corners as explained in <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-create-mesh" title="cairo_pattern_create_mesh ()"><code class="function">cairo_pattern_create_mesh()</code></a>.</p>
jpayne@68 1707 <p>Note: If <em class="parameter"><code>pattern</code></em>
jpayne@68 1708 is not a mesh pattern then <em class="parameter"><code>pattern</code></em>
jpayne@68 1709 will be put
jpayne@68 1710 into an error status with a status of
jpayne@68 1711 <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a>. If <em class="parameter"><code>corner_num</code></em>
jpayne@68 1712 is not valid,
jpayne@68 1713 <em class="parameter"><code>pattern</code></em>
jpayne@68 1714 will be put into an error status with a status of
jpayne@68 1715 <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-INVALID-INDEX:CAPS"><code class="literal">CAIRO_STATUS_INVALID_INDEX</code></a>. If <em class="parameter"><code>pattern</code></em>
jpayne@68 1716 has no current patch,
jpayne@68 1717 <em class="parameter"><code>pattern</code></em>
jpayne@68 1718 will be put into an error status with a status of
jpayne@68 1719 <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-INVALID-MESH-CONSTRUCTION:CAPS"><code class="literal">CAIRO_STATUS_INVALID_MESH_CONSTRUCTION</code></a>.</p>
jpayne@68 1720 <div class="refsect3">
jpayne@68 1721 <a name="cairo-mesh-pattern-set-corner-color-rgba.parameters"></a><h4>Parameters</h4>
jpayne@68 1722 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 1723 <colgroup>
jpayne@68 1724 <col width="150px" class="parameters_name">
jpayne@68 1725 <col class="parameters_description">
jpayne@68 1726 <col width="200px" class="parameters_annotations">
jpayne@68 1727 </colgroup>
jpayne@68 1728 <tbody>
jpayne@68 1729 <tr>
jpayne@68 1730 <td class="parameter_name"><p>pattern</p></td>
jpayne@68 1731 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 1732 <td class="parameter_annotations"> </td>
jpayne@68 1733 </tr>
jpayne@68 1734 <tr>
jpayne@68 1735 <td class="parameter_name"><p>corner_num</p></td>
jpayne@68 1736 <td class="parameter_description"><p>the corner to set the color for</p></td>
jpayne@68 1737 <td class="parameter_annotations"> </td>
jpayne@68 1738 </tr>
jpayne@68 1739 <tr>
jpayne@68 1740 <td class="parameter_name"><p>red</p></td>
jpayne@68 1741 <td class="parameter_description"><p>red component of color</p></td>
jpayne@68 1742 <td class="parameter_annotations"> </td>
jpayne@68 1743 </tr>
jpayne@68 1744 <tr>
jpayne@68 1745 <td class="parameter_name"><p>green</p></td>
jpayne@68 1746 <td class="parameter_description"><p>green component of color</p></td>
jpayne@68 1747 <td class="parameter_annotations"> </td>
jpayne@68 1748 </tr>
jpayne@68 1749 <tr>
jpayne@68 1750 <td class="parameter_name"><p>blue</p></td>
jpayne@68 1751 <td class="parameter_description"><p>blue component of color</p></td>
jpayne@68 1752 <td class="parameter_annotations"> </td>
jpayne@68 1753 </tr>
jpayne@68 1754 <tr>
jpayne@68 1755 <td class="parameter_name"><p>alpha</p></td>
jpayne@68 1756 <td class="parameter_description"><p>alpha component of color</p></td>
jpayne@68 1757 <td class="parameter_annotations"> </td>
jpayne@68 1758 </tr>
jpayne@68 1759 </tbody>
jpayne@68 1760 </table></div>
jpayne@68 1761 </div>
jpayne@68 1762 <p class="since">Since: 1.12</p>
jpayne@68 1763 </div>
jpayne@68 1764 <hr>
jpayne@68 1765 <div class="refsect2">
jpayne@68 1766 <a name="cairo-mesh-pattern-get-patch-count"></a><h3>cairo_mesh_pattern_get_patch_count ()</h3>
jpayne@68 1767 <pre class="programlisting"><a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a>
jpayne@68 1768 cairo_mesh_pattern_get_patch_count (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
jpayne@68 1769 <em class="parameter"><code>unsigned <span class="type">int</span> *count</code></em>);</pre>
jpayne@68 1770 <p>Gets the number of patches specified in the given mesh pattern.</p>
jpayne@68 1771 <p>The number only includes patches which have been finished by
jpayne@68 1772 calling <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-end-patch" title="cairo_mesh_pattern_end_patch ()"><code class="function">cairo_mesh_pattern_end_patch()</code></a>. For example it will be 0
jpayne@68 1773 during the definition of the first patch.</p>
jpayne@68 1774 <div class="refsect3">
jpayne@68 1775 <a name="cairo-mesh-pattern-get-patch-count.parameters"></a><h4>Parameters</h4>
jpayne@68 1776 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 1777 <colgroup>
jpayne@68 1778 <col width="150px" class="parameters_name">
jpayne@68 1779 <col class="parameters_description">
jpayne@68 1780 <col width="200px" class="parameters_annotations">
jpayne@68 1781 </colgroup>
jpayne@68 1782 <tbody>
jpayne@68 1783 <tr>
jpayne@68 1784 <td class="parameter_name"><p>pattern</p></td>
jpayne@68 1785 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 1786 <td class="parameter_annotations"> </td>
jpayne@68 1787 </tr>
jpayne@68 1788 <tr>
jpayne@68 1789 <td class="parameter_name"><p>count</p></td>
jpayne@68 1790 <td class="parameter_description"><p>return value for the number patches, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
jpayne@68 1791 <td class="parameter_annotations"> </td>
jpayne@68 1792 </tr>
jpayne@68 1793 </tbody>
jpayne@68 1794 </table></div>
jpayne@68 1795 </div>
jpayne@68 1796 <div class="refsect3">
jpayne@68 1797 <a name="cairo-mesh-pattern-get-patch-count.returns"></a><h4>Returns</h4>
jpayne@68 1798 <p> <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-SUCCESS:CAPS"><code class="literal">CAIRO_STATUS_SUCCESS</code></a>, or
jpayne@68 1799 <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a> if <em class="parameter"><code>pattern</code></em>
jpayne@68 1800 is not a mesh
jpayne@68 1801 pattern.</p>
jpayne@68 1802 </div>
jpayne@68 1803 <p class="since">Since: 1.12</p>
jpayne@68 1804 </div>
jpayne@68 1805 <hr>
jpayne@68 1806 <div class="refsect2">
jpayne@68 1807 <a name="cairo-mesh-pattern-get-path"></a><h3>cairo_mesh_pattern_get_path ()</h3>
jpayne@68 1808 <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> *
jpayne@68 1809 cairo_mesh_pattern_get_path (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
jpayne@68 1810 <em class="parameter"><code>unsigned <span class="type">int</span> patch_num</code></em>);</pre>
jpayne@68 1811 <p>Gets path defining the patch <em class="parameter"><code>patch_num</code></em>
jpayne@68 1812 for a mesh
jpayne@68 1813 pattern.</p>
jpayne@68 1814 <p><em class="parameter"><code>patch_num</code></em>
jpayne@68 1815 can range from 0 to n-1 where n is the number returned by
jpayne@68 1816 <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-get-patch-count" title="cairo_mesh_pattern_get_patch_count ()"><code class="function">cairo_mesh_pattern_get_patch_count()</code></a>.</p>
jpayne@68 1817 <div class="refsect3">
jpayne@68 1818 <a name="cairo-mesh-pattern-get-path.parameters"></a><h4>Parameters</h4>
jpayne@68 1819 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 1820 <colgroup>
jpayne@68 1821 <col width="150px" class="parameters_name">
jpayne@68 1822 <col class="parameters_description">
jpayne@68 1823 <col width="200px" class="parameters_annotations">
jpayne@68 1824 </colgroup>
jpayne@68 1825 <tbody>
jpayne@68 1826 <tr>
jpayne@68 1827 <td class="parameter_name"><p>pattern</p></td>
jpayne@68 1828 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 1829 <td class="parameter_annotations"> </td>
jpayne@68 1830 </tr>
jpayne@68 1831 <tr>
jpayne@68 1832 <td class="parameter_name"><p>patch_num</p></td>
jpayne@68 1833 <td class="parameter_description"><p>the patch number to return data for</p></td>
jpayne@68 1834 <td class="parameter_annotations"> </td>
jpayne@68 1835 </tr>
jpayne@68 1836 </tbody>
jpayne@68 1837 </table></div>
jpayne@68 1838 </div>
jpayne@68 1839 <div class="refsect3">
jpayne@68 1840 <a name="cairo-mesh-pattern-get-path.returns"></a><h4>Returns</h4>
jpayne@68 1841 <p> the path defining the patch, or a path with status
jpayne@68 1842 <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-INVALID-INDEX:CAPS"><code class="literal">CAIRO_STATUS_INVALID_INDEX</code></a> if <em class="parameter"><code>patch_num</code></em>
jpayne@68 1843 or <em class="parameter"><code>point_num</code></em>
jpayne@68 1844 is not
jpayne@68 1845 valid for <em class="parameter"><code>pattern</code></em>
jpayne@68 1846 . If <em class="parameter"><code>pattern</code></em>
jpayne@68 1847 is not a mesh pattern, a path with
jpayne@68 1848 status <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a> is returned.</p>
jpayne@68 1849 </div>
jpayne@68 1850 <p class="since">Since: 1.12</p>
jpayne@68 1851 </div>
jpayne@68 1852 <hr>
jpayne@68 1853 <div class="refsect2">
jpayne@68 1854 <a name="cairo-mesh-pattern-get-control-point"></a><h3>cairo_mesh_pattern_get_control_point ()</h3>
jpayne@68 1855 <pre class="programlisting"><a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a>
jpayne@68 1856 cairo_mesh_pattern_get_control_point (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
jpayne@68 1857 <em class="parameter"><code>unsigned <span class="type">int</span> patch_num</code></em>,
jpayne@68 1858 <em class="parameter"><code>unsigned <span class="type">int</span> point_num</code></em>,
jpayne@68 1859 <em class="parameter"><code><span class="type">double</span> *x</code></em>,
jpayne@68 1860 <em class="parameter"><code><span class="type">double</span> *y</code></em>);</pre>
jpayne@68 1861 <p>Gets the control point <em class="parameter"><code>point_num</code></em>
jpayne@68 1862 of patch <em class="parameter"><code>patch_num</code></em>
jpayne@68 1863 for a mesh
jpayne@68 1864 pattern.</p>
jpayne@68 1865 <p><em class="parameter"><code>patch_num</code></em>
jpayne@68 1866 can range from 0 to n-1 where n is the number returned by
jpayne@68 1867 <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-get-patch-count" title="cairo_mesh_pattern_get_patch_count ()"><code class="function">cairo_mesh_pattern_get_patch_count()</code></a>.</p>
jpayne@68 1868 <p>Valid values for <em class="parameter"><code>point_num</code></em>
jpayne@68 1869 are from 0 to 3 and identify the
jpayne@68 1870 control points as explained in <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-create-mesh" title="cairo_pattern_create_mesh ()"><code class="function">cairo_pattern_create_mesh()</code></a>.</p>
jpayne@68 1871 <div class="refsect3">
jpayne@68 1872 <a name="cairo-mesh-pattern-get-control-point.parameters"></a><h4>Parameters</h4>
jpayne@68 1873 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 1874 <colgroup>
jpayne@68 1875 <col width="150px" class="parameters_name">
jpayne@68 1876 <col class="parameters_description">
jpayne@68 1877 <col width="200px" class="parameters_annotations">
jpayne@68 1878 </colgroup>
jpayne@68 1879 <tbody>
jpayne@68 1880 <tr>
jpayne@68 1881 <td class="parameter_name"><p>pattern</p></td>
jpayne@68 1882 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 1883 <td class="parameter_annotations"> </td>
jpayne@68 1884 </tr>
jpayne@68 1885 <tr>
jpayne@68 1886 <td class="parameter_name"><p>patch_num</p></td>
jpayne@68 1887 <td class="parameter_description"><p>the patch number to return data for</p></td>
jpayne@68 1888 <td class="parameter_annotations"> </td>
jpayne@68 1889 </tr>
jpayne@68 1890 <tr>
jpayne@68 1891 <td class="parameter_name"><p>point_num</p></td>
jpayne@68 1892 <td class="parameter_description"><p>the control point number to return data for</p></td>
jpayne@68 1893 <td class="parameter_annotations"> </td>
jpayne@68 1894 </tr>
jpayne@68 1895 <tr>
jpayne@68 1896 <td class="parameter_name"><p>x</p></td>
jpayne@68 1897 <td class="parameter_description"><p>return value for the x coordinate of the control point, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
jpayne@68 1898 <td class="parameter_annotations"> </td>
jpayne@68 1899 </tr>
jpayne@68 1900 <tr>
jpayne@68 1901 <td class="parameter_name"><p>y</p></td>
jpayne@68 1902 <td class="parameter_description"><p>return value for the y coordinate of the control point, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
jpayne@68 1903 <td class="parameter_annotations"> </td>
jpayne@68 1904 </tr>
jpayne@68 1905 </tbody>
jpayne@68 1906 </table></div>
jpayne@68 1907 </div>
jpayne@68 1908 <div class="refsect3">
jpayne@68 1909 <a name="cairo-mesh-pattern-get-control-point.returns"></a><h4>Returns</h4>
jpayne@68 1910 <p> <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-SUCCESS:CAPS"><code class="literal">CAIRO_STATUS_SUCCESS</code></a>, or <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-INVALID-INDEX:CAPS"><code class="literal">CAIRO_STATUS_INVALID_INDEX</code></a>
jpayne@68 1911 if <em class="parameter"><code>patch_num</code></em>
jpayne@68 1912 or <em class="parameter"><code>point_num</code></em>
jpayne@68 1913 is not valid for <em class="parameter"><code>pattern</code></em>
jpayne@68 1914 . If <em class="parameter"><code>pattern</code></em>
jpayne@68 1915 is not a mesh pattern, <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a> is
jpayne@68 1916 returned.</p>
jpayne@68 1917 </div>
jpayne@68 1918 <p class="since">Since: 1.12</p>
jpayne@68 1919 </div>
jpayne@68 1920 <hr>
jpayne@68 1921 <div class="refsect2">
jpayne@68 1922 <a name="cairo-mesh-pattern-get-corner-color-rgba"></a><h3>cairo_mesh_pattern_get_corner_color_rgba ()</h3>
jpayne@68 1923 <pre class="programlisting"><a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a>
jpayne@68 1924 cairo_mesh_pattern_get_corner_color_rgba
jpayne@68 1925 (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
jpayne@68 1926 <em class="parameter"><code>unsigned <span class="type">int</span> patch_num</code></em>,
jpayne@68 1927 <em class="parameter"><code>unsigned <span class="type">int</span> corner_num</code></em>,
jpayne@68 1928 <em class="parameter"><code><span class="type">double</span> *red</code></em>,
jpayne@68 1929 <em class="parameter"><code><span class="type">double</span> *green</code></em>,
jpayne@68 1930 <em class="parameter"><code><span class="type">double</span> *blue</code></em>,
jpayne@68 1931 <em class="parameter"><code><span class="type">double</span> *alpha</code></em>);</pre>
jpayne@68 1932 <p>Gets the color information in corner <em class="parameter"><code>corner_num</code></em>
jpayne@68 1933 of patch
jpayne@68 1934 <em class="parameter"><code>patch_num</code></em>
jpayne@68 1935 for a mesh pattern.</p>
jpayne@68 1936 <p><em class="parameter"><code>patch_num</code></em>
jpayne@68 1937 can range from 0 to n-1 where n is the number returned by
jpayne@68 1938 <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-get-patch-count" title="cairo_mesh_pattern_get_patch_count ()"><code class="function">cairo_mesh_pattern_get_patch_count()</code></a>.</p>
jpayne@68 1939 <p>Valid values for <em class="parameter"><code>corner_num</code></em>
jpayne@68 1940 are from 0 to 3 and identify the
jpayne@68 1941 corners as explained in <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-create-mesh" title="cairo_pattern_create_mesh ()"><code class="function">cairo_pattern_create_mesh()</code></a>.</p>
jpayne@68 1942 <div class="refsect3">
jpayne@68 1943 <a name="cairo-mesh-pattern-get-corner-color-rgba.parameters"></a><h4>Parameters</h4>
jpayne@68 1944 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 1945 <colgroup>
jpayne@68 1946 <col width="150px" class="parameters_name">
jpayne@68 1947 <col class="parameters_description">
jpayne@68 1948 <col width="200px" class="parameters_annotations">
jpayne@68 1949 </colgroup>
jpayne@68 1950 <tbody>
jpayne@68 1951 <tr>
jpayne@68 1952 <td class="parameter_name"><p>pattern</p></td>
jpayne@68 1953 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 1954 <td class="parameter_annotations"> </td>
jpayne@68 1955 </tr>
jpayne@68 1956 <tr>
jpayne@68 1957 <td class="parameter_name"><p>patch_num</p></td>
jpayne@68 1958 <td class="parameter_description"><p>the patch number to return data for</p></td>
jpayne@68 1959 <td class="parameter_annotations"> </td>
jpayne@68 1960 </tr>
jpayne@68 1961 <tr>
jpayne@68 1962 <td class="parameter_name"><p>corner_num</p></td>
jpayne@68 1963 <td class="parameter_description"><p>the corner number to return data for</p></td>
jpayne@68 1964 <td class="parameter_annotations"> </td>
jpayne@68 1965 </tr>
jpayne@68 1966 <tr>
jpayne@68 1967 <td class="parameter_name"><p>red</p></td>
jpayne@68 1968 <td class="parameter_description"><p>return value for red component of color, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
jpayne@68 1969 <td class="parameter_annotations"> </td>
jpayne@68 1970 </tr>
jpayne@68 1971 <tr>
jpayne@68 1972 <td class="parameter_name"><p>green</p></td>
jpayne@68 1973 <td class="parameter_description"><p>return value for green component of color, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
jpayne@68 1974 <td class="parameter_annotations"> </td>
jpayne@68 1975 </tr>
jpayne@68 1976 <tr>
jpayne@68 1977 <td class="parameter_name"><p>blue</p></td>
jpayne@68 1978 <td class="parameter_description"><p>return value for blue component of color, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
jpayne@68 1979 <td class="parameter_annotations"> </td>
jpayne@68 1980 </tr>
jpayne@68 1981 <tr>
jpayne@68 1982 <td class="parameter_name"><p>alpha</p></td>
jpayne@68 1983 <td class="parameter_description"><p>return value for alpha component of color, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td>
jpayne@68 1984 <td class="parameter_annotations"> </td>
jpayne@68 1985 </tr>
jpayne@68 1986 </tbody>
jpayne@68 1987 </table></div>
jpayne@68 1988 </div>
jpayne@68 1989 <div class="refsect3">
jpayne@68 1990 <a name="cairo-mesh-pattern-get-corner-color-rgba.returns"></a><h4>Returns</h4>
jpayne@68 1991 <p> <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-SUCCESS:CAPS"><code class="literal">CAIRO_STATUS_SUCCESS</code></a>, or <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-INVALID-INDEX:CAPS"><code class="literal">CAIRO_STATUS_INVALID_INDEX</code></a>
jpayne@68 1992 if <em class="parameter"><code>patch_num</code></em>
jpayne@68 1993 or <em class="parameter"><code>corner_num</code></em>
jpayne@68 1994 is not valid for <em class="parameter"><code>pattern</code></em>
jpayne@68 1995 . If
jpayne@68 1996 <em class="parameter"><code>pattern</code></em>
jpayne@68 1997 is not a mesh pattern, <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a>
jpayne@68 1998 is returned.</p>
jpayne@68 1999 </div>
jpayne@68 2000 <p class="since">Since: 1.12</p>
jpayne@68 2001 </div>
jpayne@68 2002 <hr>
jpayne@68 2003 <div class="refsect2">
jpayne@68 2004 <a name="cairo-pattern-reference"></a><h3>cairo_pattern_reference ()</h3>
jpayne@68 2005 <pre class="programlisting"><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="returnvalue">cairo_pattern_t</span></a> *
jpayne@68 2006 cairo_pattern_reference (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>);</pre>
jpayne@68 2007 <p>Increases the reference count on <em class="parameter"><code>pattern</code></em>
jpayne@68 2008 by one. This prevents
jpayne@68 2009 <em class="parameter"><code>pattern</code></em>
jpayne@68 2010 from being destroyed until a matching call to
jpayne@68 2011 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-destroy" title="cairo_pattern_destroy ()"><code class="function">cairo_pattern_destroy()</code></a> is made.</p>
jpayne@68 2012 <p>Use <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-get-reference-count" title="cairo_pattern_get_reference_count ()"><code class="function">cairo_pattern_get_reference_count()</code></a> to get the number of
jpayne@68 2013 references to a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>.</p>
jpayne@68 2014 <div class="refsect3">
jpayne@68 2015 <a name="cairo-pattern-reference.parameters"></a><h4>Parameters</h4>
jpayne@68 2016 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 2017 <colgroup>
jpayne@68 2018 <col width="150px" class="parameters_name">
jpayne@68 2019 <col class="parameters_description">
jpayne@68 2020 <col width="200px" class="parameters_annotations">
jpayne@68 2021 </colgroup>
jpayne@68 2022 <tbody><tr>
jpayne@68 2023 <td class="parameter_name"><p>pattern</p></td>
jpayne@68 2024 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 2025 <td class="parameter_annotations"> </td>
jpayne@68 2026 </tr></tbody>
jpayne@68 2027 </table></div>
jpayne@68 2028 </div>
jpayne@68 2029 <div class="refsect3">
jpayne@68 2030 <a name="cairo-pattern-reference.returns"></a><h4>Returns</h4>
jpayne@68 2031 <p> the referenced <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>.</p>
jpayne@68 2032 </div>
jpayne@68 2033 <p class="since">Since: 1.0</p>
jpayne@68 2034 </div>
jpayne@68 2035 <hr>
jpayne@68 2036 <div class="refsect2">
jpayne@68 2037 <a name="cairo-pattern-destroy"></a><h3>cairo_pattern_destroy ()</h3>
jpayne@68 2038 <pre class="programlisting"><span class="returnvalue">void</span>
jpayne@68 2039 cairo_pattern_destroy (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>);</pre>
jpayne@68 2040 <p>Decreases the reference count on <em class="parameter"><code>pattern</code></em>
jpayne@68 2041 by one. If the result is
jpayne@68 2042 zero, then <em class="parameter"><code>pattern</code></em>
jpayne@68 2043 and all associated resources are freed. See
jpayne@68 2044 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-reference" title="cairo_pattern_reference ()"><code class="function">cairo_pattern_reference()</code></a>.</p>
jpayne@68 2045 <div class="refsect3">
jpayne@68 2046 <a name="cairo-pattern-destroy.parameters"></a><h4>Parameters</h4>
jpayne@68 2047 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 2048 <colgroup>
jpayne@68 2049 <col width="150px" class="parameters_name">
jpayne@68 2050 <col class="parameters_description">
jpayne@68 2051 <col width="200px" class="parameters_annotations">
jpayne@68 2052 </colgroup>
jpayne@68 2053 <tbody><tr>
jpayne@68 2054 <td class="parameter_name"><p>pattern</p></td>
jpayne@68 2055 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 2056 <td class="parameter_annotations"> </td>
jpayne@68 2057 </tr></tbody>
jpayne@68 2058 </table></div>
jpayne@68 2059 </div>
jpayne@68 2060 <p class="since">Since: 1.0</p>
jpayne@68 2061 </div>
jpayne@68 2062 <hr>
jpayne@68 2063 <div class="refsect2">
jpayne@68 2064 <a name="cairo-pattern-status"></a><h3>cairo_pattern_status ()</h3>
jpayne@68 2065 <pre class="programlisting"><a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a>
jpayne@68 2066 cairo_pattern_status (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>);</pre>
jpayne@68 2067 <p>Checks whether an error has previously occurred for this
jpayne@68 2068 pattern.</p>
jpayne@68 2069 <div class="refsect3">
jpayne@68 2070 <a name="cairo-pattern-status.parameters"></a><h4>Parameters</h4>
jpayne@68 2071 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 2072 <colgroup>
jpayne@68 2073 <col width="150px" class="parameters_name">
jpayne@68 2074 <col class="parameters_description">
jpayne@68 2075 <col width="200px" class="parameters_annotations">
jpayne@68 2076 </colgroup>
jpayne@68 2077 <tbody><tr>
jpayne@68 2078 <td class="parameter_name"><p>pattern</p></td>
jpayne@68 2079 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 2080 <td class="parameter_annotations"> </td>
jpayne@68 2081 </tr></tbody>
jpayne@68 2082 </table></div>
jpayne@68 2083 </div>
jpayne@68 2084 <div class="refsect3">
jpayne@68 2085 <a name="cairo-pattern-status.returns"></a><h4>Returns</h4>
jpayne@68 2086 <p> <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-SUCCESS:CAPS"><code class="literal">CAIRO_STATUS_SUCCESS</code></a>, <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-NO-MEMORY:CAPS"><code class="literal">CAIRO_STATUS_NO_MEMORY</code></a>,
jpayne@68 2087 <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-INVALID-MATRIX:CAPS"><code class="literal">CAIRO_STATUS_INVALID_MATRIX</code></a>, <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a>,
jpayne@68 2088 or <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-INVALID-MESH-CONSTRUCTION:CAPS"><code class="literal">CAIRO_STATUS_INVALID_MESH_CONSTRUCTION</code></a>.</p>
jpayne@68 2089 </div>
jpayne@68 2090 <p class="since">Since: 1.0</p>
jpayne@68 2091 </div>
jpayne@68 2092 <hr>
jpayne@68 2093 <div class="refsect2">
jpayne@68 2094 <a name="cairo-pattern-set-extend"></a><h3>cairo_pattern_set_extend ()</h3>
jpayne@68 2095 <pre class="programlisting"><span class="returnvalue">void</span>
jpayne@68 2096 cairo_pattern_set_extend (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
jpayne@68 2097 <em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-extend-t" title="enum cairo_extend_t"><span class="type">cairo_extend_t</span></a> extend</code></em>);</pre>
jpayne@68 2098 <p>Sets the mode to be used for drawing outside the area of a pattern.
jpayne@68 2099 See <a class="link" href="cairo-cairo-pattern-t.html#cairo-extend-t" title="enum cairo_extend_t"><span class="type">cairo_extend_t</span></a> for details on the semantics of each extend
jpayne@68 2100 strategy.</p>
jpayne@68 2101 <p>The default extend mode is <a class="link" href="cairo-cairo-pattern-t.html#CAIRO-EXTEND-NONE:CAPS"><code class="literal">CAIRO_EXTEND_NONE</code></a> for surface patterns
jpayne@68 2102 and <a class="link" href="cairo-cairo-pattern-t.html#CAIRO-EXTEND-PAD:CAPS"><code class="literal">CAIRO_EXTEND_PAD</code></a> for gradient patterns.</p>
jpayne@68 2103 <div class="refsect3">
jpayne@68 2104 <a name="cairo-pattern-set-extend.parameters"></a><h4>Parameters</h4>
jpayne@68 2105 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 2106 <colgroup>
jpayne@68 2107 <col width="150px" class="parameters_name">
jpayne@68 2108 <col class="parameters_description">
jpayne@68 2109 <col width="200px" class="parameters_annotations">
jpayne@68 2110 </colgroup>
jpayne@68 2111 <tbody>
jpayne@68 2112 <tr>
jpayne@68 2113 <td class="parameter_name"><p>pattern</p></td>
jpayne@68 2114 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 2115 <td class="parameter_annotations"> </td>
jpayne@68 2116 </tr>
jpayne@68 2117 <tr>
jpayne@68 2118 <td class="parameter_name"><p>extend</p></td>
jpayne@68 2119 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-extend-t" title="enum cairo_extend_t"><span class="type">cairo_extend_t</span></a> describing how the area outside of the
jpayne@68 2120 pattern will be drawn</p></td>
jpayne@68 2121 <td class="parameter_annotations"> </td>
jpayne@68 2122 </tr>
jpayne@68 2123 </tbody>
jpayne@68 2124 </table></div>
jpayne@68 2125 </div>
jpayne@68 2126 <p class="since">Since: 1.0</p>
jpayne@68 2127 </div>
jpayne@68 2128 <hr>
jpayne@68 2129 <div class="refsect2">
jpayne@68 2130 <a name="cairo-pattern-get-extend"></a><h3>cairo_pattern_get_extend ()</h3>
jpayne@68 2131 <pre class="programlisting"><a class="link" href="cairo-cairo-pattern-t.html#cairo-extend-t" title="enum cairo_extend_t"><span class="returnvalue">cairo_extend_t</span></a>
jpayne@68 2132 cairo_pattern_get_extend (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>);</pre>
jpayne@68 2133 <p>Gets the current extend mode for a pattern. See <a class="link" href="cairo-cairo-pattern-t.html#cairo-extend-t" title="enum cairo_extend_t"><span class="type">cairo_extend_t</span></a>
jpayne@68 2134 for details on the semantics of each extend strategy.</p>
jpayne@68 2135 <div class="refsect3">
jpayne@68 2136 <a name="cairo-pattern-get-extend.parameters"></a><h4>Parameters</h4>
jpayne@68 2137 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 2138 <colgroup>
jpayne@68 2139 <col width="150px" class="parameters_name">
jpayne@68 2140 <col class="parameters_description">
jpayne@68 2141 <col width="200px" class="parameters_annotations">
jpayne@68 2142 </colgroup>
jpayne@68 2143 <tbody><tr>
jpayne@68 2144 <td class="parameter_name"><p>pattern</p></td>
jpayne@68 2145 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 2146 <td class="parameter_annotations"> </td>
jpayne@68 2147 </tr></tbody>
jpayne@68 2148 </table></div>
jpayne@68 2149 </div>
jpayne@68 2150 <div class="refsect3">
jpayne@68 2151 <a name="cairo-pattern-get-extend.returns"></a><h4>Returns</h4>
jpayne@68 2152 <p> the current extend strategy used for drawing the
jpayne@68 2153 pattern.</p>
jpayne@68 2154 </div>
jpayne@68 2155 <p class="since">Since: 1.0</p>
jpayne@68 2156 </div>
jpayne@68 2157 <hr>
jpayne@68 2158 <div class="refsect2">
jpayne@68 2159 <a name="cairo-pattern-set-filter"></a><h3>cairo_pattern_set_filter ()</h3>
jpayne@68 2160 <pre class="programlisting"><span class="returnvalue">void</span>
jpayne@68 2161 cairo_pattern_set_filter (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
jpayne@68 2162 <em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-filter-t" title="enum cairo_filter_t"><span class="type">cairo_filter_t</span></a> filter</code></em>);</pre>
jpayne@68 2163 <p>Sets the filter to be used for resizing when using this pattern.
jpayne@68 2164 See <a class="link" href="cairo-cairo-pattern-t.html#cairo-filter-t" title="enum cairo_filter_t"><span class="type">cairo_filter_t</span></a> for details on each filter.</p>
jpayne@68 2165 <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Note that you might want to control filtering even when you do not
jpayne@68 2166 have an explicit <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> object, (for example when using
jpayne@68 2167 <a class="link" href="cairo-cairo-t.html#cairo-set-source-surface" title="cairo_set_source_surface ()"><code class="function">cairo_set_source_surface()</code></a>). In these cases, it is convenient to
jpayne@68 2168 use <a class="link" href="cairo-cairo-t.html#cairo-get-source" title="cairo_get_source ()"><code class="function">cairo_get_source()</code></a> to get access to the pattern that cairo
jpayne@68 2169 creates implicitly. For example:</p></li></ul></div>
jpayne@68 2170 <div class="informalexample">
jpayne@68 2171 <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
jpayne@68 2172 <tbody>
jpayne@68 2173 <tr>
jpayne@68 2174 <td class="listing_lines" align="right"><pre>1
jpayne@68 2175 2</pre></td>
jpayne@68 2176 <td class="listing_code"><pre class="programlisting"><span class="function"><a href="cairo-cairo-t.html#cairo-set-source-surface">cairo_set_source_surface</a></span> <span class="gtkdoc opt">(</span>cr<span class="gtkdoc opt">,</span> image<span class="gtkdoc opt">,</span> x<span class="gtkdoc opt">,</span> y<span class="gtkdoc opt">);</span>
jpayne@68 2177 <span class="function"><a href="cairo-cairo-pattern-t.html#cairo-pattern-set-filter">cairo_pattern_set_filter</a></span> <span class="gtkdoc opt">(</span><span class="function"><a href="cairo-cairo-t.html#cairo-get-source">cairo_get_source</a></span> <span class="gtkdoc opt">(</span>cr<span class="gtkdoc opt">),</span> CAIRO_FILTER_NEAREST<span class="gtkdoc opt">);</span></pre></td>
jpayne@68 2178 </tr>
jpayne@68 2179 </tbody>
jpayne@68 2180 </table>
jpayne@68 2181 </div>
jpayne@68 2182
jpayne@68 2183 <div class="refsect3">
jpayne@68 2184 <a name="cairo-pattern-set-filter.parameters"></a><h4>Parameters</h4>
jpayne@68 2185 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 2186 <colgroup>
jpayne@68 2187 <col width="150px" class="parameters_name">
jpayne@68 2188 <col class="parameters_description">
jpayne@68 2189 <col width="200px" class="parameters_annotations">
jpayne@68 2190 </colgroup>
jpayne@68 2191 <tbody>
jpayne@68 2192 <tr>
jpayne@68 2193 <td class="parameter_name"><p>pattern</p></td>
jpayne@68 2194 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 2195 <td class="parameter_annotations"> </td>
jpayne@68 2196 </tr>
jpayne@68 2197 <tr>
jpayne@68 2198 <td class="parameter_name"><p>filter</p></td>
jpayne@68 2199 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-filter-t" title="enum cairo_filter_t"><span class="type">cairo_filter_t</span></a> describing the filter to use for resizing
jpayne@68 2200 the pattern</p></td>
jpayne@68 2201 <td class="parameter_annotations"> </td>
jpayne@68 2202 </tr>
jpayne@68 2203 </tbody>
jpayne@68 2204 </table></div>
jpayne@68 2205 </div>
jpayne@68 2206 <p class="since">Since: 1.0</p>
jpayne@68 2207 </div>
jpayne@68 2208 <hr>
jpayne@68 2209 <div class="refsect2">
jpayne@68 2210 <a name="cairo-pattern-get-filter"></a><h3>cairo_pattern_get_filter ()</h3>
jpayne@68 2211 <pre class="programlisting"><a class="link" href="cairo-cairo-pattern-t.html#cairo-filter-t" title="enum cairo_filter_t"><span class="returnvalue">cairo_filter_t</span></a>
jpayne@68 2212 cairo_pattern_get_filter (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>);</pre>
jpayne@68 2213 <p>Gets the current filter for a pattern. See <a class="link" href="cairo-cairo-pattern-t.html#cairo-filter-t" title="enum cairo_filter_t"><span class="type">cairo_filter_t</span></a>
jpayne@68 2214 for details on each filter.</p>
jpayne@68 2215 <div class="refsect3">
jpayne@68 2216 <a name="cairo-pattern-get-filter.parameters"></a><h4>Parameters</h4>
jpayne@68 2217 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 2218 <colgroup>
jpayne@68 2219 <col width="150px" class="parameters_name">
jpayne@68 2220 <col class="parameters_description">
jpayne@68 2221 <col width="200px" class="parameters_annotations">
jpayne@68 2222 </colgroup>
jpayne@68 2223 <tbody><tr>
jpayne@68 2224 <td class="parameter_name"><p>pattern</p></td>
jpayne@68 2225 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 2226 <td class="parameter_annotations"> </td>
jpayne@68 2227 </tr></tbody>
jpayne@68 2228 </table></div>
jpayne@68 2229 </div>
jpayne@68 2230 <div class="refsect3">
jpayne@68 2231 <a name="cairo-pattern-get-filter.returns"></a><h4>Returns</h4>
jpayne@68 2232 <p> the current filter used for resizing the pattern.</p>
jpayne@68 2233 </div>
jpayne@68 2234 <p class="since">Since: 1.0</p>
jpayne@68 2235 </div>
jpayne@68 2236 <hr>
jpayne@68 2237 <div class="refsect2">
jpayne@68 2238 <a name="cairo-pattern-set-matrix"></a><h3>cairo_pattern_set_matrix ()</h3>
jpayne@68 2239 <pre class="programlisting"><span class="returnvalue">void</span>
jpayne@68 2240 cairo_pattern_set_matrix (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
jpayne@68 2241 <em class="parameter"><code>const <a class="link" href="cairo-cairo-matrix-t.html#cairo-matrix-t" title="cairo_matrix_t"><span class="type">cairo_matrix_t</span></a> *matrix</code></em>);</pre>
jpayne@68 2242 <p>Sets the pattern's transformation matrix to <em class="parameter"><code>matrix</code></em>
jpayne@68 2243 . This matrix is
jpayne@68 2244 a transformation from user space to pattern space.</p>
jpayne@68 2245 <p>When a pattern is first created it always has the identity matrix
jpayne@68 2246 for its transformation matrix, which means that pattern space is
jpayne@68 2247 initially identical to user space.</p>
jpayne@68 2248 <p>Important: Please note that the direction of this transformation
jpayne@68 2249 matrix is from user space to pattern space. This means that if you
jpayne@68 2250 imagine the flow from a pattern to user space (and on to device
jpayne@68 2251 space), then coordinates in that flow will be transformed by the
jpayne@68 2252 inverse of the pattern matrix.</p>
jpayne@68 2253 <p>For example, if you want to make a pattern appear twice as large as
jpayne@68 2254 it does by default the correct code to use is:</p>
jpayne@68 2255 <div class="informalexample">
jpayne@68 2256 <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
jpayne@68 2257 <tbody>
jpayne@68 2258 <tr>
jpayne@68 2259 <td class="listing_lines" align="right"><pre>1
jpayne@68 2260 2</pre></td>
jpayne@68 2261 <td class="listing_code"><pre class="programlisting"><span class="function"><a href="cairo-cairo-matrix-t.html#cairo-matrix-init-scale">cairo_matrix_init_scale</a></span> <span class="gtkdoc opt">(&amp;</span>matrix<span class="gtkdoc opt">,</span> <span class="number">0.5</span><span class="gtkdoc opt">,</span> <span class="number">0.5</span><span class="gtkdoc opt">);</span>
jpayne@68 2262 <span class="function"><a href="cairo-cairo-pattern-t.html#cairo-pattern-set-matrix">cairo_pattern_set_matrix</a></span> <span class="gtkdoc opt">(</span>pattern<span class="gtkdoc opt">, &amp;</span>matrix<span class="gtkdoc opt">);</span></pre></td>
jpayne@68 2263 </tr>
jpayne@68 2264 </tbody>
jpayne@68 2265 </table>
jpayne@68 2266 </div>
jpayne@68 2267
jpayne@68 2268 <p>Meanwhile, using values of 2.0 rather than 0.5 in the code above
jpayne@68 2269 would cause the pattern to appear at half of its default size.</p>
jpayne@68 2270 <p>Also, please note the discussion of the user-space locking
jpayne@68 2271 semantics of <a class="link" href="cairo-cairo-t.html#cairo-set-source" title="cairo_set_source ()"><code class="function">cairo_set_source()</code></a>.</p>
jpayne@68 2272 <div class="refsect3">
jpayne@68 2273 <a name="cairo-pattern-set-matrix.parameters"></a><h4>Parameters</h4>
jpayne@68 2274 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 2275 <colgroup>
jpayne@68 2276 <col width="150px" class="parameters_name">
jpayne@68 2277 <col class="parameters_description">
jpayne@68 2278 <col width="200px" class="parameters_annotations">
jpayne@68 2279 </colgroup>
jpayne@68 2280 <tbody>
jpayne@68 2281 <tr>
jpayne@68 2282 <td class="parameter_name"><p>pattern</p></td>
jpayne@68 2283 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 2284 <td class="parameter_annotations"> </td>
jpayne@68 2285 </tr>
jpayne@68 2286 <tr>
jpayne@68 2287 <td class="parameter_name"><p>matrix</p></td>
jpayne@68 2288 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-matrix-t.html#cairo-matrix-t" title="cairo_matrix_t"><span class="type">cairo_matrix_t</span></a></p></td>
jpayne@68 2289 <td class="parameter_annotations"> </td>
jpayne@68 2290 </tr>
jpayne@68 2291 </tbody>
jpayne@68 2292 </table></div>
jpayne@68 2293 </div>
jpayne@68 2294 <p class="since">Since: 1.0</p>
jpayne@68 2295 </div>
jpayne@68 2296 <hr>
jpayne@68 2297 <div class="refsect2">
jpayne@68 2298 <a name="cairo-pattern-get-matrix"></a><h3>cairo_pattern_get_matrix ()</h3>
jpayne@68 2299 <pre class="programlisting"><span class="returnvalue">void</span>
jpayne@68 2300 cairo_pattern_get_matrix (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
jpayne@68 2301 <em class="parameter"><code><a class="link" href="cairo-cairo-matrix-t.html#cairo-matrix-t" title="cairo_matrix_t"><span class="type">cairo_matrix_t</span></a> *matrix</code></em>);</pre>
jpayne@68 2302 <p>Stores the pattern's transformation matrix into <em class="parameter"><code>matrix</code></em>
jpayne@68 2303 .</p>
jpayne@68 2304 <div class="refsect3">
jpayne@68 2305 <a name="cairo-pattern-get-matrix.parameters"></a><h4>Parameters</h4>
jpayne@68 2306 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 2307 <colgroup>
jpayne@68 2308 <col width="150px" class="parameters_name">
jpayne@68 2309 <col class="parameters_description">
jpayne@68 2310 <col width="200px" class="parameters_annotations">
jpayne@68 2311 </colgroup>
jpayne@68 2312 <tbody>
jpayne@68 2313 <tr>
jpayne@68 2314 <td class="parameter_name"><p>pattern</p></td>
jpayne@68 2315 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 2316 <td class="parameter_annotations"> </td>
jpayne@68 2317 </tr>
jpayne@68 2318 <tr>
jpayne@68 2319 <td class="parameter_name"><p>matrix</p></td>
jpayne@68 2320 <td class="parameter_description"><p>return value for the matrix</p></td>
jpayne@68 2321 <td class="parameter_annotations"> </td>
jpayne@68 2322 </tr>
jpayne@68 2323 </tbody>
jpayne@68 2324 </table></div>
jpayne@68 2325 </div>
jpayne@68 2326 <p class="since">Since: 1.0</p>
jpayne@68 2327 </div>
jpayne@68 2328 <hr>
jpayne@68 2329 <div class="refsect2">
jpayne@68 2330 <a name="cairo-pattern-get-type"></a><h3>cairo_pattern_get_type ()</h3>
jpayne@68 2331 <pre class="programlisting"><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-type-t" title="enum cairo_pattern_type_t"><span class="returnvalue">cairo_pattern_type_t</span></a>
jpayne@68 2332 cairo_pattern_get_type (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>);</pre>
jpayne@68 2333 <p>Get the pattern's type. See <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-type-t" title="enum cairo_pattern_type_t"><span class="type">cairo_pattern_type_t</span></a> for available
jpayne@68 2334 types.</p>
jpayne@68 2335 <div class="refsect3">
jpayne@68 2336 <a name="cairo-pattern-get-type.parameters"></a><h4>Parameters</h4>
jpayne@68 2337 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 2338 <colgroup>
jpayne@68 2339 <col width="150px" class="parameters_name">
jpayne@68 2340 <col class="parameters_description">
jpayne@68 2341 <col width="200px" class="parameters_annotations">
jpayne@68 2342 </colgroup>
jpayne@68 2343 <tbody><tr>
jpayne@68 2344 <td class="parameter_name"><p>pattern</p></td>
jpayne@68 2345 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 2346 <td class="parameter_annotations"> </td>
jpayne@68 2347 </tr></tbody>
jpayne@68 2348 </table></div>
jpayne@68 2349 </div>
jpayne@68 2350 <div class="refsect3">
jpayne@68 2351 <a name="cairo-pattern-get-type.returns"></a><h4>Returns</h4>
jpayne@68 2352 <p> The type of <em class="parameter"><code>pattern</code></em>
jpayne@68 2353 .</p>
jpayne@68 2354 </div>
jpayne@68 2355 <p class="since">Since: 1.2</p>
jpayne@68 2356 </div>
jpayne@68 2357 <hr>
jpayne@68 2358 <div class="refsect2">
jpayne@68 2359 <a name="cairo-pattern-get-reference-count"></a><h3>cairo_pattern_get_reference_count ()</h3>
jpayne@68 2360 <pre class="programlisting">unsigned <span class="returnvalue">int</span>
jpayne@68 2361 cairo_pattern_get_reference_count (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>);</pre>
jpayne@68 2362 <p>Returns the current reference count of <em class="parameter"><code>pattern</code></em>
jpayne@68 2363 .</p>
jpayne@68 2364 <div class="refsect3">
jpayne@68 2365 <a name="cairo-pattern-get-reference-count.parameters"></a><h4>Parameters</h4>
jpayne@68 2366 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 2367 <colgroup>
jpayne@68 2368 <col width="150px" class="parameters_name">
jpayne@68 2369 <col class="parameters_description">
jpayne@68 2370 <col width="200px" class="parameters_annotations">
jpayne@68 2371 </colgroup>
jpayne@68 2372 <tbody><tr>
jpayne@68 2373 <td class="parameter_name"><p>pattern</p></td>
jpayne@68 2374 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 2375 <td class="parameter_annotations"> </td>
jpayne@68 2376 </tr></tbody>
jpayne@68 2377 </table></div>
jpayne@68 2378 </div>
jpayne@68 2379 <div class="refsect3">
jpayne@68 2380 <a name="cairo-pattern-get-reference-count.returns"></a><h4>Returns</h4>
jpayne@68 2381 <p> the current reference count of <em class="parameter"><code>pattern</code></em>
jpayne@68 2382 . If the
jpayne@68 2383 object is a nil object, 0 will be returned.</p>
jpayne@68 2384 </div>
jpayne@68 2385 <p class="since">Since: 1.4</p>
jpayne@68 2386 </div>
jpayne@68 2387 <hr>
jpayne@68 2388 <div class="refsect2">
jpayne@68 2389 <a name="cairo-pattern-set-user-data"></a><h3>cairo_pattern_set_user_data ()</h3>
jpayne@68 2390 <pre class="programlisting"><a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a>
jpayne@68 2391 cairo_pattern_set_user_data (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
jpayne@68 2392 <em class="parameter"><code>const <a class="link" href="cairo-Types.html#cairo-user-data-key-t" title="cairo_user_data_key_t"><span class="type">cairo_user_data_key_t</span></a> *key</code></em>,
jpayne@68 2393 <em class="parameter"><code><span class="type">void</span> *user_data</code></em>,
jpayne@68 2394 <em class="parameter"><code><a class="link" href="cairo-Types.html#cairo-destroy-func-t" title="cairo_destroy_func_t ()"><span class="type">cairo_destroy_func_t</span></a> destroy</code></em>);</pre>
jpayne@68 2395 <p>Attach user data to <em class="parameter"><code>pattern</code></em>
jpayne@68 2396 . To remove user data from a surface,
jpayne@68 2397 call this function with the key that was used to set it and <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
jpayne@68 2398 for <em class="parameter"><code>data</code></em>
jpayne@68 2399 .</p>
jpayne@68 2400 <div class="refsect3">
jpayne@68 2401 <a name="cairo-pattern-set-user-data.parameters"></a><h4>Parameters</h4>
jpayne@68 2402 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 2403 <colgroup>
jpayne@68 2404 <col width="150px" class="parameters_name">
jpayne@68 2405 <col class="parameters_description">
jpayne@68 2406 <col width="200px" class="parameters_annotations">
jpayne@68 2407 </colgroup>
jpayne@68 2408 <tbody>
jpayne@68 2409 <tr>
jpayne@68 2410 <td class="parameter_name"><p>pattern</p></td>
jpayne@68 2411 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 2412 <td class="parameter_annotations"> </td>
jpayne@68 2413 </tr>
jpayne@68 2414 <tr>
jpayne@68 2415 <td class="parameter_name"><p>key</p></td>
jpayne@68 2416 <td class="parameter_description"><p>the address of a <a class="link" href="cairo-Types.html#cairo-user-data-key-t" title="cairo_user_data_key_t"><span class="type">cairo_user_data_key_t</span></a> to attach the user data to</p></td>
jpayne@68 2417 <td class="parameter_annotations"> </td>
jpayne@68 2418 </tr>
jpayne@68 2419 <tr>
jpayne@68 2420 <td class="parameter_name"><p>user_data</p></td>
jpayne@68 2421 <td class="parameter_description"><p>the user data to attach to the <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 2422 <td class="parameter_annotations"> </td>
jpayne@68 2423 </tr>
jpayne@68 2424 <tr>
jpayne@68 2425 <td class="parameter_name"><p>destroy</p></td>
jpayne@68 2426 <td class="parameter_description"><p>a <a class="link" href="cairo-Types.html#cairo-destroy-func-t" title="cairo_destroy_func_t ()"><span class="type">cairo_destroy_func_t</span></a> which will be called when the
jpayne@68 2427 <a class="link" href="cairo-cairo-t.html#cairo-t" title="cairo_t"><span class="type">cairo_t</span></a> is destroyed or when new user data is attached using the
jpayne@68 2428 same key.</p></td>
jpayne@68 2429 <td class="parameter_annotations"> </td>
jpayne@68 2430 </tr>
jpayne@68 2431 </tbody>
jpayne@68 2432 </table></div>
jpayne@68 2433 </div>
jpayne@68 2434 <div class="refsect3">
jpayne@68 2435 <a name="cairo-pattern-set-user-data.returns"></a><h4>Returns</h4>
jpayne@68 2436 <p> <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-SUCCESS:CAPS"><code class="literal">CAIRO_STATUS_SUCCESS</code></a> or <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-NO-MEMORY:CAPS"><code class="literal">CAIRO_STATUS_NO_MEMORY</code></a> if a
jpayne@68 2437 slot could not be allocated for the user data.</p>
jpayne@68 2438 </div>
jpayne@68 2439 <p class="since">Since: 1.4</p>
jpayne@68 2440 </div>
jpayne@68 2441 <hr>
jpayne@68 2442 <div class="refsect2">
jpayne@68 2443 <a name="cairo-pattern-get-user-data"></a><h3>cairo_pattern_get_user_data ()</h3>
jpayne@68 2444 <pre class="programlisting"><span class="returnvalue">void</span> *
jpayne@68 2445 cairo_pattern_get_user_data (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
jpayne@68 2446 <em class="parameter"><code>const <a class="link" href="cairo-Types.html#cairo-user-data-key-t" title="cairo_user_data_key_t"><span class="type">cairo_user_data_key_t</span></a> *key</code></em>);</pre>
jpayne@68 2447 <p>Return user data previously attached to <em class="parameter"><code>pattern</code></em>
jpayne@68 2448 using the
jpayne@68 2449 specified key. If no user data has been attached with the given
jpayne@68 2450 key this function returns <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
jpayne@68 2451 <div class="refsect3">
jpayne@68 2452 <a name="cairo-pattern-get-user-data.parameters"></a><h4>Parameters</h4>
jpayne@68 2453 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 2454 <colgroup>
jpayne@68 2455 <col width="150px" class="parameters_name">
jpayne@68 2456 <col class="parameters_description">
jpayne@68 2457 <col width="200px" class="parameters_annotations">
jpayne@68 2458 </colgroup>
jpayne@68 2459 <tbody>
jpayne@68 2460 <tr>
jpayne@68 2461 <td class="parameter_name"><p>pattern</p></td>
jpayne@68 2462 <td class="parameter_description"><p>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a></p></td>
jpayne@68 2463 <td class="parameter_annotations"> </td>
jpayne@68 2464 </tr>
jpayne@68 2465 <tr>
jpayne@68 2466 <td class="parameter_name"><p>key</p></td>
jpayne@68 2467 <td class="parameter_description"><p>the address of the <a class="link" href="cairo-Types.html#cairo-user-data-key-t" title="cairo_user_data_key_t"><span class="type">cairo_user_data_key_t</span></a> the user data was
jpayne@68 2468 attached to</p></td>
jpayne@68 2469 <td class="parameter_annotations"> </td>
jpayne@68 2470 </tr>
jpayne@68 2471 </tbody>
jpayne@68 2472 </table></div>
jpayne@68 2473 </div>
jpayne@68 2474 <div class="refsect3">
jpayne@68 2475 <a name="cairo-pattern-get-user-data.returns"></a><h4>Returns</h4>
jpayne@68 2476 <p> the user data previously attached or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
jpayne@68 2477 </div>
jpayne@68 2478 <p class="since">Since: 1.4</p>
jpayne@68 2479 </div>
jpayne@68 2480 </div>
jpayne@68 2481 <div class="refsect1">
jpayne@68 2482 <a name="cairo-cairo-pattern-t.other_details"></a><h2>Types and Values</h2>
jpayne@68 2483 <div class="refsect2">
jpayne@68 2484 <a name="cairo-pattern-t"></a><h3>cairo_pattern_t</h3>
jpayne@68 2485 <pre class="programlisting">typedef struct _cairo_pattern cairo_pattern_t;
jpayne@68 2486 </pre>
jpayne@68 2487 <p>A <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> represents a source when drawing onto a
jpayne@68 2488 surface. There are different subtypes of <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>,
jpayne@68 2489 for different types of sources; for example,
jpayne@68 2490 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-create-rgb" title="cairo_pattern_create_rgb ()"><code class="function">cairo_pattern_create_rgb()</code></a> creates a pattern for a solid
jpayne@68 2491 opaque color.</p>
jpayne@68 2492 <p>Other than various
jpayne@68 2493 <code class="function">cairo_pattern_create_<span class="emphasis"><em>type</em></span>()</code>
jpayne@68 2494 functions, some of the pattern types can be implicitly created using various
jpayne@68 2495 <code class="function">cairo_set_source_<span class="emphasis"><em>type</em></span>()</code> functions;
jpayne@68 2496 for example <a class="link" href="cairo-cairo-t.html#cairo-set-source-rgb" title="cairo_set_source_rgb ()"><code class="function">cairo_set_source_rgb()</code></a>.</p>
jpayne@68 2497 <p>The type of a pattern can be queried with <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-get-type" title="cairo_pattern_get_type ()"><code class="function">cairo_pattern_get_type()</code></a>.</p>
jpayne@68 2498 <p>Memory management of <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> is done with
jpayne@68 2499 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-reference" title="cairo_pattern_reference ()"><code class="function">cairo_pattern_reference()</code></a> and <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-destroy" title="cairo_pattern_destroy ()"><code class="function">cairo_pattern_destroy()</code></a>.</p>
jpayne@68 2500 <p class="since">Since: 1.0</p>
jpayne@68 2501 </div>
jpayne@68 2502 <hr>
jpayne@68 2503 <div class="refsect2">
jpayne@68 2504 <a name="cairo-extend-t"></a><h3>enum cairo_extend_t</h3>
jpayne@68 2505 <p><a class="link" href="cairo-cairo-pattern-t.html#cairo-extend-t" title="enum cairo_extend_t"><span class="type">cairo_extend_t</span></a> is used to describe how pattern color/alpha will be
jpayne@68 2506 determined for areas "outside" the pattern's natural area, (for
jpayne@68 2507 example, outside the surface bounds or outside the gradient
jpayne@68 2508 geometry).</p>
jpayne@68 2509 <p>Mesh patterns are not affected by the extend mode.</p>
jpayne@68 2510 <p>The default extend mode is <a class="link" href="cairo-cairo-pattern-t.html#CAIRO-EXTEND-NONE:CAPS"><code class="literal">CAIRO_EXTEND_NONE</code></a> for surface patterns
jpayne@68 2511 and <a class="link" href="cairo-cairo-pattern-t.html#CAIRO-EXTEND-PAD:CAPS"><code class="literal">CAIRO_EXTEND_PAD</code></a> for gradient patterns.</p>
jpayne@68 2512 <p>New entries may be added in future versions.</p>
jpayne@68 2513 <div class="refsect3">
jpayne@68 2514 <a name="cairo-extend-t.members"></a><h4>Members</h4>
jpayne@68 2515 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 2516 <colgroup>
jpayne@68 2517 <col width="300px" class="enum_members_name">
jpayne@68 2518 <col class="enum_members_description">
jpayne@68 2519 <col width="200px" class="enum_members_annotations">
jpayne@68 2520 </colgroup>
jpayne@68 2521 <tbody>
jpayne@68 2522 <tr>
jpayne@68 2523 <td class="enum_member_name"><p><a name="CAIRO-EXTEND-NONE:CAPS"></a>CAIRO_EXTEND_NONE</p></td>
jpayne@68 2524 <td class="enum_member_description">
jpayne@68 2525 <p>pixels outside of the source pattern
jpayne@68 2526 are fully transparent (Since 1.0)</p>
jpayne@68 2527 </td>
jpayne@68 2528 <td class="enum_member_annotations"> </td>
jpayne@68 2529 </tr>
jpayne@68 2530 <tr>
jpayne@68 2531 <td class="enum_member_name"><p><a name="CAIRO-EXTEND-REPEAT:CAPS"></a>CAIRO_EXTEND_REPEAT</p></td>
jpayne@68 2532 <td class="enum_member_description">
jpayne@68 2533 <p>the pattern is tiled by repeating (Since 1.0)</p>
jpayne@68 2534 </td>
jpayne@68 2535 <td class="enum_member_annotations"> </td>
jpayne@68 2536 </tr>
jpayne@68 2537 <tr>
jpayne@68 2538 <td class="enum_member_name"><p><a name="CAIRO-EXTEND-REFLECT:CAPS"></a>CAIRO_EXTEND_REFLECT</p></td>
jpayne@68 2539 <td class="enum_member_description">
jpayne@68 2540 <p>the pattern is tiled by reflecting
jpayne@68 2541 at the edges (Since 1.0; but only implemented for surface patterns since 1.6)</p>
jpayne@68 2542 </td>
jpayne@68 2543 <td class="enum_member_annotations"> </td>
jpayne@68 2544 </tr>
jpayne@68 2545 <tr>
jpayne@68 2546 <td class="enum_member_name"><p><a name="CAIRO-EXTEND-PAD:CAPS"></a>CAIRO_EXTEND_PAD</p></td>
jpayne@68 2547 <td class="enum_member_description">
jpayne@68 2548 <p>pixels outside of the pattern copy
jpayne@68 2549 the closest pixel from the source (Since 1.2; but only
jpayne@68 2550 implemented for surface patterns since 1.6)</p>
jpayne@68 2551 </td>
jpayne@68 2552 <td class="enum_member_annotations"> </td>
jpayne@68 2553 </tr>
jpayne@68 2554 </tbody>
jpayne@68 2555 </table></div>
jpayne@68 2556 </div>
jpayne@68 2557 <p class="since">Since: 1.0</p>
jpayne@68 2558 </div>
jpayne@68 2559 <hr>
jpayne@68 2560 <div class="refsect2">
jpayne@68 2561 <a name="cairo-filter-t"></a><h3>enum cairo_filter_t</h3>
jpayne@68 2562 <p><a class="link" href="cairo-cairo-pattern-t.html#cairo-filter-t" title="enum cairo_filter_t"><span class="type">cairo_filter_t</span></a> is used to indicate what filtering should be
jpayne@68 2563 applied when reading pixel values from patterns. See
jpayne@68 2564 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-set-filter" title="cairo_pattern_set_filter ()"><code class="function">cairo_pattern_set_filter()</code></a> for indicating the desired filter to be
jpayne@68 2565 used with a particular pattern.</p>
jpayne@68 2566 <div class="refsect3">
jpayne@68 2567 <a name="cairo-filter-t.members"></a><h4>Members</h4>
jpayne@68 2568 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 2569 <colgroup>
jpayne@68 2570 <col width="300px" class="enum_members_name">
jpayne@68 2571 <col class="enum_members_description">
jpayne@68 2572 <col width="200px" class="enum_members_annotations">
jpayne@68 2573 </colgroup>
jpayne@68 2574 <tbody>
jpayne@68 2575 <tr>
jpayne@68 2576 <td class="enum_member_name"><p><a name="CAIRO-FILTER-FAST:CAPS"></a>CAIRO_FILTER_FAST</p></td>
jpayne@68 2577 <td class="enum_member_description">
jpayne@68 2578 <p>A high-performance filter, with quality similar
jpayne@68 2579 to <a class="link" href="cairo-cairo-pattern-t.html#CAIRO-FILTER-NEAREST:CAPS"><code class="literal">CAIRO_FILTER_NEAREST</code></a> (Since 1.0)</p>
jpayne@68 2580 </td>
jpayne@68 2581 <td class="enum_member_annotations"> </td>
jpayne@68 2582 </tr>
jpayne@68 2583 <tr>
jpayne@68 2584 <td class="enum_member_name"><p><a name="CAIRO-FILTER-GOOD:CAPS"></a>CAIRO_FILTER_GOOD</p></td>
jpayne@68 2585 <td class="enum_member_description">
jpayne@68 2586 <p>A reasonable-performance filter, with quality
jpayne@68 2587 similar to <a class="link" href="cairo-cairo-pattern-t.html#CAIRO-FILTER-BILINEAR:CAPS"><code class="literal">CAIRO_FILTER_BILINEAR</code></a> (Since 1.0)</p>
jpayne@68 2588 </td>
jpayne@68 2589 <td class="enum_member_annotations"> </td>
jpayne@68 2590 </tr>
jpayne@68 2591 <tr>
jpayne@68 2592 <td class="enum_member_name"><p><a name="CAIRO-FILTER-BEST:CAPS"></a>CAIRO_FILTER_BEST</p></td>
jpayne@68 2593 <td class="enum_member_description">
jpayne@68 2594 <p>The highest-quality available, performance may
jpayne@68 2595 not be suitable for interactive use. (Since 1.0)</p>
jpayne@68 2596 </td>
jpayne@68 2597 <td class="enum_member_annotations"> </td>
jpayne@68 2598 </tr>
jpayne@68 2599 <tr>
jpayne@68 2600 <td class="enum_member_name"><p><a name="CAIRO-FILTER-NEAREST:CAPS"></a>CAIRO_FILTER_NEAREST</p></td>
jpayne@68 2601 <td class="enum_member_description">
jpayne@68 2602 <p>Nearest-neighbor filtering (Since 1.0)</p>
jpayne@68 2603 </td>
jpayne@68 2604 <td class="enum_member_annotations"> </td>
jpayne@68 2605 </tr>
jpayne@68 2606 <tr>
jpayne@68 2607 <td class="enum_member_name"><p><a name="CAIRO-FILTER-BILINEAR:CAPS"></a>CAIRO_FILTER_BILINEAR</p></td>
jpayne@68 2608 <td class="enum_member_description">
jpayne@68 2609 <p>Linear interpolation in two dimensions (Since 1.0)</p>
jpayne@68 2610 </td>
jpayne@68 2611 <td class="enum_member_annotations"> </td>
jpayne@68 2612 </tr>
jpayne@68 2613 <tr>
jpayne@68 2614 <td class="enum_member_name"><p><a name="CAIRO-FILTER-GAUSSIAN:CAPS"></a>CAIRO_FILTER_GAUSSIAN</p></td>
jpayne@68 2615 <td class="enum_member_description">
jpayne@68 2616 <p>This filter value is currently
jpayne@68 2617 unimplemented, and should not be used in current code. (Since 1.0)</p>
jpayne@68 2618 </td>
jpayne@68 2619 <td class="enum_member_annotations"> </td>
jpayne@68 2620 </tr>
jpayne@68 2621 </tbody>
jpayne@68 2622 </table></div>
jpayne@68 2623 </div>
jpayne@68 2624 <p class="since">Since: 1.0</p>
jpayne@68 2625 </div>
jpayne@68 2626 <hr>
jpayne@68 2627 <div class="refsect2">
jpayne@68 2628 <a name="cairo-pattern-type-t"></a><h3>enum cairo_pattern_type_t</h3>
jpayne@68 2629 <p><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-type-t" title="enum cairo_pattern_type_t"><span class="type">cairo_pattern_type_t</span></a> is used to describe the type of a given pattern.</p>
jpayne@68 2630 <p>The type of a pattern is determined by the function used to create
jpayne@68 2631 it. The <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-create-rgb" title="cairo_pattern_create_rgb ()"><code class="function">cairo_pattern_create_rgb()</code></a> and <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-create-rgba" title="cairo_pattern_create_rgba ()"><code class="function">cairo_pattern_create_rgba()</code></a>
jpayne@68 2632 functions create SOLID patterns. The remaining
jpayne@68 2633 cairo_pattern_create functions map to pattern types in obvious
jpayne@68 2634 ways.</p>
jpayne@68 2635 <p>The pattern type can be queried with <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-get-type" title="cairo_pattern_get_type ()"><code class="function">cairo_pattern_get_type()</code></a></p>
jpayne@68 2636 <p>Most <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> functions can be called with a pattern of any
jpayne@68 2637 type, (though trying to change the extend or filter for a solid
jpayne@68 2638 pattern will have no effect). A notable exception is
jpayne@68 2639 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-add-color-stop-rgb" title="cairo_pattern_add_color_stop_rgb ()"><code class="function">cairo_pattern_add_color_stop_rgb()</code></a> and
jpayne@68 2640 <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-add-color-stop-rgba" title="cairo_pattern_add_color_stop_rgba ()"><code class="function">cairo_pattern_add_color_stop_rgba()</code></a> which must only be called with
jpayne@68 2641 gradient patterns (either LINEAR or RADIAL). Otherwise the pattern
jpayne@68 2642 will be shutdown and put into an error state.</p>
jpayne@68 2643 <p>New entries may be added in future versions.</p>
jpayne@68 2644 <div class="refsect3">
jpayne@68 2645 <a name="cairo-pattern-type-t.members"></a><h4>Members</h4>
jpayne@68 2646 <div class="informaltable"><table class="informaltable" width="100%" border="0">
jpayne@68 2647 <colgroup>
jpayne@68 2648 <col width="300px" class="enum_members_name">
jpayne@68 2649 <col class="enum_members_description">
jpayne@68 2650 <col width="200px" class="enum_members_annotations">
jpayne@68 2651 </colgroup>
jpayne@68 2652 <tbody>
jpayne@68 2653 <tr>
jpayne@68 2654 <td class="enum_member_name"><p><a name="CAIRO-PATTERN-TYPE-SOLID:CAPS"></a>CAIRO_PATTERN_TYPE_SOLID</p></td>
jpayne@68 2655 <td class="enum_member_description">
jpayne@68 2656 <p>The pattern is a solid (uniform)
jpayne@68 2657 color. It may be opaque or translucent, since 1.2.</p>
jpayne@68 2658 </td>
jpayne@68 2659 <td class="enum_member_annotations"> </td>
jpayne@68 2660 </tr>
jpayne@68 2661 <tr>
jpayne@68 2662 <td class="enum_member_name"><p><a name="CAIRO-PATTERN-TYPE-SURFACE:CAPS"></a>CAIRO_PATTERN_TYPE_SURFACE</p></td>
jpayne@68 2663 <td class="enum_member_description">
jpayne@68 2664 <p>The pattern is a based on a surface (an image), since 1.2.</p>
jpayne@68 2665 </td>
jpayne@68 2666 <td class="enum_member_annotations"> </td>
jpayne@68 2667 </tr>
jpayne@68 2668 <tr>
jpayne@68 2669 <td class="enum_member_name"><p><a name="CAIRO-PATTERN-TYPE-LINEAR:CAPS"></a>CAIRO_PATTERN_TYPE_LINEAR</p></td>
jpayne@68 2670 <td class="enum_member_description">
jpayne@68 2671 <p>The pattern is a linear gradient, since 1.2.</p>
jpayne@68 2672 </td>
jpayne@68 2673 <td class="enum_member_annotations"> </td>
jpayne@68 2674 </tr>
jpayne@68 2675 <tr>
jpayne@68 2676 <td class="enum_member_name"><p><a name="CAIRO-PATTERN-TYPE-RADIAL:CAPS"></a>CAIRO_PATTERN_TYPE_RADIAL</p></td>
jpayne@68 2677 <td class="enum_member_description">
jpayne@68 2678 <p>The pattern is a radial gradient, since 1.2.</p>
jpayne@68 2679 </td>
jpayne@68 2680 <td class="enum_member_annotations"> </td>
jpayne@68 2681 </tr>
jpayne@68 2682 <tr>
jpayne@68 2683 <td class="enum_member_name"><p><a name="CAIRO-PATTERN-TYPE-MESH:CAPS"></a>CAIRO_PATTERN_TYPE_MESH</p></td>
jpayne@68 2684 <td class="enum_member_description">
jpayne@68 2685 <p>The pattern is a mesh, since 1.12.</p>
jpayne@68 2686 </td>
jpayne@68 2687 <td class="enum_member_annotations"> </td>
jpayne@68 2688 </tr>
jpayne@68 2689 <tr>
jpayne@68 2690 <td class="enum_member_name"><p><a name="CAIRO-PATTERN-TYPE-RASTER-SOURCE:CAPS"></a>CAIRO_PATTERN_TYPE_RASTER_SOURCE</p></td>
jpayne@68 2691 <td class="enum_member_description">
jpayne@68 2692 <p>The pattern is a user pattern providing raster data, since 1.12.</p>
jpayne@68 2693 </td>
jpayne@68 2694 <td class="enum_member_annotations"> </td>
jpayne@68 2695 </tr>
jpayne@68 2696 </tbody>
jpayne@68 2697 </table></div>
jpayne@68 2698 </div>
jpayne@68 2699 <p class="since">Since: 1.2</p>
jpayne@68 2700 </div>
jpayne@68 2701 </div>
jpayne@68 2702 <div class="refsect1">
jpayne@68 2703 <a name="cairo-cairo-pattern-t.see-also"></a><h2>See Also</h2>
jpayne@68 2704 <p><a class="link" href="cairo-cairo-t.html#cairo-t" title="cairo_t"><span class="type">cairo_t</span></a>, <a class="link" href="cairo-cairo-surface-t.html#cairo-surface-t" title="cairo_surface_t"><span class="type">cairo_surface_t</span></a></p>
jpayne@68 2705 </div>
jpayne@68 2706 </div>
jpayne@68 2707 <div class="footer">
jpayne@68 2708 <hr>Generated by GTK-Doc V1.27</div>
jpayne@68 2709 </body>
jpayne@68 2710 </html>