1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2 <html xmlns="http://www.w3.org/1999/xhtml">
4 <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5 <meta http-equiv="X-UA-Compatible" content="IE=9"/>
6 <meta name="generator" content="Doxygen 1.8.13"/>
7 <meta name="viewport" content="width=device-width, initial-scale=1"/>
8 <title>ThorVG: Gradient</title>
9 <link href="tabs.css" rel="stylesheet" type="text/css"/>
10 <script type="text/javascript" src="jquery.js"></script>
11 <script type="text/javascript" src="dynsections.js"></script>
12 <link href="navtree.css" rel="stylesheet" type="text/css"/>
13 <script type="text/javascript" src="resize.js"></script>
14 <script type="text/javascript" src="navtreedata.js"></script>
15 <script type="text/javascript" src="navtree.js"></script>
16 <script type="text/javascript">
17 $(document).ready(initResizable);
19 <link href="search/search.css" rel="stylesheet" type="text/css"/>
20 <script type="text/javascript" src="search/searchdata.js"></script>
21 <script type="text/javascript" src="search/search.js"></script>
22 <link href="doxygen.css" rel="stylesheet" type="text/css" />
23 <link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
26 <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
28 <table cellspacing="0" cellpadding="0">
30 <tr style="height: 56px;">
31 <td id="projectlogo"><img alt="Logo" src="docs_logo.svg"/></td>
32 <td id="projectalign" style="padding-left: 0.5em;">
33 <div id="projectname">ThorVG
34  <span id="projectnumber">v0.1</span>
36 <div id="projectbrief">ThorVG is a platform-independent portable library for drawing vector-based scene and animation. It's an open-source software that is freely used by a variety of software platforms and applications. ThorVG provides neat and easy APIs, its library has no dependencies and keeps cheap and super compact size. It serves as the vector graphics engine for Tizen OS that powers many products.</div>
42 <!-- end header part -->
43 <!-- Generated by Doxygen 1.8.13 -->
44 <script type="text/javascript">
45 var searchBox = new SearchBox("searchBox", "search",false,'Search');
47 <script type="text/javascript" src="menudata.js"></script>
48 <script type="text/javascript" src="menu.js"></script>
49 <script type="text/javascript">
51 initMenu('',true,false,'search.php','Search');
52 $(document).ready(function() { init_search(); });
55 <div id="main-nav"></div>
57 <div id="side-nav" class="ui-resizable side-nav-resizable">
59 <div id="nav-tree-contents">
60 <div id="nav-sync" class="sync"></div>
63 <div id="splitbar" style="-moz-user-select:none;"
64 class="ui-resizable-handle">
67 <script type="text/javascript">
68 $(document).ready(function(){initNavTree('group__ThorVGCapi__Gradient.html','');});
70 <div id="doc-content">
71 <!-- window showing the filter options -->
72 <div id="MSearchSelectWindow"
73 onmouseover="return searchBox.OnSearchSelectShow()"
74 onmouseout="return searchBox.OnSearchSelectHide()"
75 onkeydown="return searchBox.OnSearchSelectKey(event)">
78 <!-- iframe showing the search results (closed by default) -->
79 <div id="MSearchResultsWindow">
80 <iframe src="javascript:void(0)" frameborder="0"
81 name="MSearchResults" id="MSearchResults">
87 <a href="#nested-classes">Classes</a> |
88 <a href="#func-members">Functions</a> </div>
89 <div class="headertitle">
90 <div class="title">Gradient<div class="ingroups"><a class="el" href="group__ThorVG__CAPI.html">ThorVG_CAPI (BETA version)</a></div></div> </div>
92 <div class="contents">
94 <p>A module managing the gradient fill of objects.
95 <a href="#details">More...</a></p>
96 <div class="dynheader">
97 Collaboration diagram for Gradient:</div>
98 <div class="dyncontent">
99 <center><table><tr><td><img src="group__ThorVGCapi__Gradient.png" border="0" alt="" usemap="#group____ThorVGCapi____Gradient"/>
100 <map name="group____ThorVGCapi____Gradient" id="group____ThorVGCapi____Gradient">
101 <area shape="rect" id="node1" href="group__ThorVG__CAPI.html" title="ThorVG C language binding APIs. " alt="" coords="5,5,204,32"/>
103 </td></tr></table></center>
105 <table class="memberdecls">
106 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
107 Classes</h2></td></tr>
108 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structTvg__Color__Stop.html">Tvg_Color_Stop</a></td></tr>
109 <tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">A data structure storing the information about the color and its relative position inside the gradient bounds. <a href="structTvg__Color__Stop.html#details">More...</a><br /></td></tr>
110 <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
111 </table><table class="memberdecls">
112 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
113 Functions</h2></td></tr>
114 <tr class="memitem:gab77d80df3c269fa531e7b81c8e8410d2"><td class="memItemLeft" align="right" valign="top">TVG_EXPORT <a class="el" href="group__ThorVG__CAPI.html#gafc8e0d01812127260d0753eceb056181">Tvg_Gradient</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ThorVGCapi__Gradient.html#gab77d80df3c269fa531e7b81c8e8410d2">tvg_linear_gradient_new</a> ()</td></tr>
115 <tr class="memdesc:gab77d80df3c269fa531e7b81c8e8410d2"><td class="mdescLeft"> </td><td class="mdescRight">Creates a new linear gradient object. <a href="#gab77d80df3c269fa531e7b81c8e8410d2">More...</a><br /></td></tr>
116 <tr class="separator:gab77d80df3c269fa531e7b81c8e8410d2"><td class="memSeparator" colspan="2"> </td></tr>
117 <tr class="memitem:ga7dc487e5d1557961cd2cc31a42daeb28"><td class="memItemLeft" align="right" valign="top">TVG_EXPORT <a class="el" href="group__ThorVG__CAPI.html#gafc8e0d01812127260d0753eceb056181">Tvg_Gradient</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ThorVGCapi__Gradient.html#ga7dc487e5d1557961cd2cc31a42daeb28">tvg_radial_gradient_new</a> ()</td></tr>
118 <tr class="memdesc:ga7dc487e5d1557961cd2cc31a42daeb28"><td class="mdescLeft"> </td><td class="mdescRight">Creates a new radial gradient object. <a href="#ga7dc487e5d1557961cd2cc31a42daeb28">More...</a><br /></td></tr>
119 <tr class="separator:ga7dc487e5d1557961cd2cc31a42daeb28"><td class="memSeparator" colspan="2"> </td></tr>
120 <tr class="memitem:ga00590e1313394b75b8619ff27ddd233b"><td class="memItemLeft" align="right" valign="top">TVG_EXPORT <a class="el" href="group__ThorVG__CAPI.html#gad980f552658dcbbe42a0168f35c27781">Tvg_Result</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ThorVGCapi__Gradient.html#ga00590e1313394b75b8619ff27ddd233b">tvg_linear_gradient_set</a> (<a class="el" href="group__ThorVG__CAPI.html#gafc8e0d01812127260d0753eceb056181">Tvg_Gradient</a> *grad, float x1, float y1, float x2, float y2)</td></tr>
121 <tr class="memdesc:ga00590e1313394b75b8619ff27ddd233b"><td class="mdescLeft"> </td><td class="mdescRight">Sets the linear gradient bounds. <a href="#ga00590e1313394b75b8619ff27ddd233b">More...</a><br /></td></tr>
122 <tr class="separator:ga00590e1313394b75b8619ff27ddd233b"><td class="memSeparator" colspan="2"> </td></tr>
123 <tr class="memitem:gaa503fc8455eb63acda4b3ff0737f4d4e"><td class="memItemLeft" align="right" valign="top">TVG_EXPORT <a class="el" href="group__ThorVG__CAPI.html#gad980f552658dcbbe42a0168f35c27781">Tvg_Result</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ThorVGCapi__Gradient.html#gaa503fc8455eb63acda4b3ff0737f4d4e">tvg_linear_gradient_get</a> (<a class="el" href="group__ThorVG__CAPI.html#gafc8e0d01812127260d0753eceb056181">Tvg_Gradient</a> *grad, float *x1, float *y1, float *x2, float *y2)</td></tr>
124 <tr class="memdesc:gaa503fc8455eb63acda4b3ff0737f4d4e"><td class="mdescLeft"> </td><td class="mdescRight">Gets the linear gradient bounds. <a href="#gaa503fc8455eb63acda4b3ff0737f4d4e">More...</a><br /></td></tr>
125 <tr class="separator:gaa503fc8455eb63acda4b3ff0737f4d4e"><td class="memSeparator" colspan="2"> </td></tr>
126 <tr class="memitem:ga321045b5fda8e8e002c4837bd03ccdac"><td class="memItemLeft" align="right" valign="top">TVG_EXPORT <a class="el" href="group__ThorVG__CAPI.html#gad980f552658dcbbe42a0168f35c27781">Tvg_Result</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ThorVGCapi__Gradient.html#ga321045b5fda8e8e002c4837bd03ccdac">tvg_radial_gradient_set</a> (<a class="el" href="group__ThorVG__CAPI.html#gafc8e0d01812127260d0753eceb056181">Tvg_Gradient</a> *grad, float cx, float cy, float radius)</td></tr>
127 <tr class="memdesc:ga321045b5fda8e8e002c4837bd03ccdac"><td class="mdescLeft"> </td><td class="mdescRight">Sets the radial gradient bounds. <a href="#ga321045b5fda8e8e002c4837bd03ccdac">More...</a><br /></td></tr>
128 <tr class="separator:ga321045b5fda8e8e002c4837bd03ccdac"><td class="memSeparator" colspan="2"> </td></tr>
129 <tr class="memitem:gaabab5eabf6d11b95b96e9c543a341199"><td class="memItemLeft" align="right" valign="top">TVG_EXPORT <a class="el" href="group__ThorVG__CAPI.html#gad980f552658dcbbe42a0168f35c27781">Tvg_Result</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ThorVGCapi__Gradient.html#gaabab5eabf6d11b95b96e9c543a341199">tvg_radial_gradient_get</a> (<a class="el" href="group__ThorVG__CAPI.html#gafc8e0d01812127260d0753eceb056181">Tvg_Gradient</a> *grad, float *cx, float *cy, float *radius)</td></tr>
130 <tr class="memdesc:gaabab5eabf6d11b95b96e9c543a341199"><td class="mdescLeft"> </td><td class="mdescRight">The function gets radial gradient center point ant radius. <a href="#gaabab5eabf6d11b95b96e9c543a341199">More...</a><br /></td></tr>
131 <tr class="separator:gaabab5eabf6d11b95b96e9c543a341199"><td class="memSeparator" colspan="2"> </td></tr>
132 <tr class="memitem:ga8d5755566bb7281984a44c9c687f2b48"><td class="memItemLeft" align="right" valign="top">TVG_EXPORT <a class="el" href="group__ThorVG__CAPI.html#gad980f552658dcbbe42a0168f35c27781">Tvg_Result</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ThorVGCapi__Gradient.html#ga8d5755566bb7281984a44c9c687f2b48">tvg_gradient_set_color_stops</a> (<a class="el" href="group__ThorVG__CAPI.html#gafc8e0d01812127260d0753eceb056181">Tvg_Gradient</a> *grad, const <a class="el" href="structTvg__Color__Stop.html">Tvg_Color_Stop</a> *color_stop, uint32_t cnt)</td></tr>
133 <tr class="memdesc:ga8d5755566bb7281984a44c9c687f2b48"><td class="mdescLeft"> </td><td class="mdescRight">Sets the parameters of the colors of the gradient and their position. <a href="#ga8d5755566bb7281984a44c9c687f2b48">More...</a><br /></td></tr>
134 <tr class="separator:ga8d5755566bb7281984a44c9c687f2b48"><td class="memSeparator" colspan="2"> </td></tr>
135 <tr class="memitem:ga65df721ba27a51ef09c64f91fe78f3ac"><td class="memItemLeft" align="right" valign="top">TVG_EXPORT <a class="el" href="group__ThorVG__CAPI.html#gad980f552658dcbbe42a0168f35c27781">Tvg_Result</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ThorVGCapi__Gradient.html#ga65df721ba27a51ef09c64f91fe78f3ac">tvg_gradient_get_color_stops</a> (<a class="el" href="group__ThorVG__CAPI.html#gafc8e0d01812127260d0753eceb056181">Tvg_Gradient</a> *grad, const <a class="el" href="structTvg__Color__Stop.html">Tvg_Color_Stop</a> **color_stop, uint32_t *cnt)</td></tr>
136 <tr class="memdesc:ga65df721ba27a51ef09c64f91fe78f3ac"><td class="mdescLeft"> </td><td class="mdescRight">Gets the parameters of the colors of the gradient, their position and number. <a href="#ga65df721ba27a51ef09c64f91fe78f3ac">More...</a><br /></td></tr>
137 <tr class="separator:ga65df721ba27a51ef09c64f91fe78f3ac"><td class="memSeparator" colspan="2"> </td></tr>
138 <tr class="memitem:gad800cb39d78429089adba8f0952ba433"><td class="memItemLeft" align="right" valign="top">TVG_EXPORT <a class="el" href="group__ThorVG__CAPI.html#gad980f552658dcbbe42a0168f35c27781">Tvg_Result</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ThorVGCapi__Gradient.html#gad800cb39d78429089adba8f0952ba433">tvg_gradient_set_spread</a> (<a class="el" href="group__ThorVG__CAPI.html#gafc8e0d01812127260d0753eceb056181">Tvg_Gradient</a> *grad, const <a class="el" href="group__ThorVGCapi__Shape.html#ga9ac44e712782a9b2a5a36a49b2ae52c7">Tvg_Stroke_Fill</a> spread)</td></tr>
139 <tr class="memdesc:gad800cb39d78429089adba8f0952ba433"><td class="mdescLeft"> </td><td class="mdescRight">Sets the Tvg_Stroke_Fill value, which specifies how to fill the area outside the gradient bounds. <a href="#gad800cb39d78429089adba8f0952ba433">More...</a><br /></td></tr>
140 <tr class="separator:gad800cb39d78429089adba8f0952ba433"><td class="memSeparator" colspan="2"> </td></tr>
141 <tr class="memitem:gaa6be4ea40b68b3939d916b242a13374b"><td class="memItemLeft" align="right" valign="top">TVG_EXPORT <a class="el" href="group__ThorVG__CAPI.html#gad980f552658dcbbe42a0168f35c27781">Tvg_Result</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ThorVGCapi__Gradient.html#gaa6be4ea40b68b3939d916b242a13374b">tvg_gradient_get_spread</a> (<a class="el" href="group__ThorVG__CAPI.html#gafc8e0d01812127260d0753eceb056181">Tvg_Gradient</a> *grad, <a class="el" href="group__ThorVGCapi__Shape.html#ga9ac44e712782a9b2a5a36a49b2ae52c7">Tvg_Stroke_Fill</a> *spread)</td></tr>
142 <tr class="memdesc:gaa6be4ea40b68b3939d916b242a13374b"><td class="mdescLeft"> </td><td class="mdescRight">Gets the FillSpread value of the gradient object. <a href="#gaa6be4ea40b68b3939d916b242a13374b">More...</a><br /></td></tr>
143 <tr class="separator:gaa6be4ea40b68b3939d916b242a13374b"><td class="memSeparator" colspan="2"> </td></tr>
144 <tr class="memitem:gad267b161f306064cc3c0082ec7906a95"><td class="memItemLeft" align="right" valign="top">TVG_EXPORT <a class="el" href="group__ThorVG__CAPI.html#gad980f552658dcbbe42a0168f35c27781">Tvg_Result</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__ThorVGCapi__Gradient.html#gad267b161f306064cc3c0082ec7906a95">tvg_gradient_del</a> (<a class="el" href="group__ThorVG__CAPI.html#gafc8e0d01812127260d0753eceb056181">Tvg_Gradient</a> *grad)</td></tr>
145 <tr class="memdesc:gad267b161f306064cc3c0082ec7906a95"><td class="mdescLeft"> </td><td class="mdescRight">Deletes the given gradient object. <a href="#gad267b161f306064cc3c0082ec7906a95">More...</a><br /></td></tr>
146 <tr class="separator:gad267b161f306064cc3c0082ec7906a95"><td class="memSeparator" colspan="2"> </td></tr>
148 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
149 <p>A module managing the gradient fill of objects. </p>
150 <p>The module enables to set and to get the gradient colors and their arrangement inside the gradient bounds, to specify the gradient bounds and the gradient behavior in case the area defined by the gradient bounds is smaller than the area to be filled. </p>
151 <h2 class="groupheader">Function Documentation</h2>
152 <a id="gad267b161f306064cc3c0082ec7906a95"></a>
153 <h2 class="memtitle"><span class="permalink"><a href="#gad267b161f306064cc3c0082ec7906a95">◆ </a></span>tvg_gradient_del()</h2>
155 <div class="memitem">
156 <div class="memproto">
157 <table class="memname">
159 <td class="memname">TVG_EXPORT <a class="el" href="group__ThorVG__CAPI.html#gad980f552658dcbbe42a0168f35c27781">Tvg_Result</a> tvg_gradient_del </td>
161 <td class="paramtype"><a class="el" href="group__ThorVG__CAPI.html#gafc8e0d01812127260d0753eceb056181">Tvg_Gradient</a> * </td>
162 <td class="paramname"><em>grad</em></td><td>)</td>
166 </div><div class="memdoc">
168 <p>Deletes the given gradient object. </p>
169 <dl class="params"><dt>Parameters</dt><dd>
170 <table class="params">
171 <tr><td class="paramdir">[in]</td><td class="paramname">grad</td><td>The gradient object to be deleted.</td></tr>
175 <dl class="section return"><dt>Returns</dt><dd>Tvg_Result enumeration. </dd></dl>
176 <dl class="retval"><dt>Return values</dt><dd>
177 <table class="retval">
178 <tr><td class="paramname">TVG_RESULT_SUCCESS</td><td>Succeed. </td></tr>
179 <tr><td class="paramname">TVG_RESULT_INVALID_ARGUMENT</td><td>An invalid Tvg_Gradient pointer. </td></tr>
186 <a id="ga65df721ba27a51ef09c64f91fe78f3ac"></a>
187 <h2 class="memtitle"><span class="permalink"><a href="#ga65df721ba27a51ef09c64f91fe78f3ac">◆ </a></span>tvg_gradient_get_color_stops()</h2>
189 <div class="memitem">
190 <div class="memproto">
191 <table class="memname">
193 <td class="memname">TVG_EXPORT <a class="el" href="group__ThorVG__CAPI.html#gad980f552658dcbbe42a0168f35c27781">Tvg_Result</a> tvg_gradient_get_color_stops </td>
195 <td class="paramtype"><a class="el" href="group__ThorVG__CAPI.html#gafc8e0d01812127260d0753eceb056181">Tvg_Gradient</a> * </td>
196 <td class="paramname"><em>grad</em>, </td>
199 <td class="paramkey"></td>
201 <td class="paramtype">const <a class="el" href="structTvg__Color__Stop.html">Tvg_Color_Stop</a> ** </td>
202 <td class="paramname"><em>color_stop</em>, </td>
205 <td class="paramkey"></td>
207 <td class="paramtype">uint32_t * </td>
208 <td class="paramname"><em>cnt</em> </td>
216 </div><div class="memdoc">
218 <p>Gets the parameters of the colors of the gradient, their position and number. </p>
219 <p>The function does not allocate any memory.</p>
220 <dl class="params"><dt>Parameters</dt><dd>
221 <table class="params">
222 <tr><td class="paramdir">[in]</td><td class="paramname">grad</td><td>The Tvg_Gradient object of which to get the color information. </td></tr>
223 <tr><td class="paramdir">[out]</td><td class="paramname">color_stop</td><td>An array of <a class="el" href="structTvg__Color__Stop.html" title="A data structure storing the information about the color and its relative position inside the gradien...">Tvg_Color_Stop</a> data structure. </td></tr>
224 <tr><td class="paramdir">[out]</td><td class="paramname">cnt</td><td>The size of the <code>color_stop</code> array equal to the colors number used in the gradient.</td></tr>
228 <dl class="section return"><dt>Returns</dt><dd>Tvg_Result enumeration. </dd></dl>
229 <dl class="retval"><dt>Return values</dt><dd>
230 <table class="retval">
231 <tr><td class="paramname">TVG_RESULT_SUCCESS</td><td>Succeed. </td></tr>
232 <tr><td class="paramname">TVG_RESULT_INVALID_ARGUMENT</td><td>A <code>nullptr</code> passed as the argument. </td></tr>
239 <a id="gaa6be4ea40b68b3939d916b242a13374b"></a>
240 <h2 class="memtitle"><span class="permalink"><a href="#gaa6be4ea40b68b3939d916b242a13374b">◆ </a></span>tvg_gradient_get_spread()</h2>
242 <div class="memitem">
243 <div class="memproto">
244 <table class="memname">
246 <td class="memname">TVG_EXPORT <a class="el" href="group__ThorVG__CAPI.html#gad980f552658dcbbe42a0168f35c27781">Tvg_Result</a> tvg_gradient_get_spread </td>
248 <td class="paramtype"><a class="el" href="group__ThorVG__CAPI.html#gafc8e0d01812127260d0753eceb056181">Tvg_Gradient</a> * </td>
249 <td class="paramname"><em>grad</em>, </td>
252 <td class="paramkey"></td>
254 <td class="paramtype"><a class="el" href="group__ThorVGCapi__Shape.html#ga9ac44e712782a9b2a5a36a49b2ae52c7">Tvg_Stroke_Fill</a> * </td>
255 <td class="paramname"><em>spread</em> </td>
263 </div><div class="memdoc">
265 <p>Gets the FillSpread value of the gradient object. </p>
266 <dl class="params"><dt>Parameters</dt><dd>
267 <table class="params">
268 <tr><td class="paramdir">[in]</td><td class="paramname">grad</td><td>The Tvg_Gradient object. </td></tr>
269 <tr><td class="paramdir">[out]</td><td class="paramname">spread</td><td>The FillSpread value.</td></tr>
273 <dl class="section return"><dt>Returns</dt><dd>Tvg_Result enumeration. </dd></dl>
274 <dl class="retval"><dt>Return values</dt><dd>
275 <table class="retval">
276 <tr><td class="paramname">TVG_RESULT_SUCCESS</td><td>Succeed. </td></tr>
277 <tr><td class="paramname">TVG_RESULT_INVALID_ARGUMENT</td><td>A <code>nullptr</code> passed as the argument. </td></tr>
284 <a id="ga8d5755566bb7281984a44c9c687f2b48"></a>
285 <h2 class="memtitle"><span class="permalink"><a href="#ga8d5755566bb7281984a44c9c687f2b48">◆ </a></span>tvg_gradient_set_color_stops()</h2>
287 <div class="memitem">
288 <div class="memproto">
289 <table class="memname">
291 <td class="memname">TVG_EXPORT <a class="el" href="group__ThorVG__CAPI.html#gad980f552658dcbbe42a0168f35c27781">Tvg_Result</a> tvg_gradient_set_color_stops </td>
293 <td class="paramtype"><a class="el" href="group__ThorVG__CAPI.html#gafc8e0d01812127260d0753eceb056181">Tvg_Gradient</a> * </td>
294 <td class="paramname"><em>grad</em>, </td>
297 <td class="paramkey"></td>
299 <td class="paramtype">const <a class="el" href="structTvg__Color__Stop.html">Tvg_Color_Stop</a> * </td>
300 <td class="paramname"><em>color_stop</em>, </td>
303 <td class="paramkey"></td>
305 <td class="paramtype">uint32_t </td>
306 <td class="paramname"><em>cnt</em> </td>
314 </div><div class="memdoc">
316 <p>Sets the parameters of the colors of the gradient and their position. </p>
317 <dl class="params"><dt>Parameters</dt><dd>
318 <table class="params">
319 <tr><td class="paramdir">[in]</td><td class="paramname">grad</td><td>The Tvg_Gradient object of which the color information is to be set. </td></tr>
320 <tr><td class="paramdir">[in]</td><td class="paramname">color_stop</td><td>An array of <a class="el" href="structTvg__Color__Stop.html" title="A data structure storing the information about the color and its relative position inside the gradien...">Tvg_Color_Stop</a> data structure. </td></tr>
321 <tr><td class="paramdir">[in]</td><td class="paramname">cnt</td><td>The size of the <code>color_stop</code> array equal to the colors number used in the gradient.</td></tr>
325 <dl class="section return"><dt>Returns</dt><dd>Tvg_Result enumeration. </dd></dl>
326 <dl class="retval"><dt>Return values</dt><dd>
327 <table class="retval">
328 <tr><td class="paramname">TVG_RESULT_SUCCESS</td><td>Succeed. </td></tr>
329 <tr><td class="paramname">TVG_RESULT_INVALID_ARGUMENT</td><td>An invalid Tvg_Gradient pointer. </td></tr>
336 <a id="gad800cb39d78429089adba8f0952ba433"></a>
337 <h2 class="memtitle"><span class="permalink"><a href="#gad800cb39d78429089adba8f0952ba433">◆ </a></span>tvg_gradient_set_spread()</h2>
339 <div class="memitem">
340 <div class="memproto">
341 <table class="memname">
343 <td class="memname">TVG_EXPORT <a class="el" href="group__ThorVG__CAPI.html#gad980f552658dcbbe42a0168f35c27781">Tvg_Result</a> tvg_gradient_set_spread </td>
345 <td class="paramtype"><a class="el" href="group__ThorVG__CAPI.html#gafc8e0d01812127260d0753eceb056181">Tvg_Gradient</a> * </td>
346 <td class="paramname"><em>grad</em>, </td>
349 <td class="paramkey"></td>
351 <td class="paramtype">const <a class="el" href="group__ThorVGCapi__Shape.html#ga9ac44e712782a9b2a5a36a49b2ae52c7">Tvg_Stroke_Fill</a> </td>
352 <td class="paramname"><em>spread</em> </td>
360 </div><div class="memdoc">
362 <p>Sets the Tvg_Stroke_Fill value, which specifies how to fill the area outside the gradient bounds. </p>
363 <dl class="params"><dt>Parameters</dt><dd>
364 <table class="params">
365 <tr><td class="paramdir">[in]</td><td class="paramname">grad</td><td>The Tvg_Gradient object. </td></tr>
366 <tr><td class="paramdir">[in]</td><td class="paramname">spread</td><td>The FillSpread value.</td></tr>
370 <dl class="section return"><dt>Returns</dt><dd>Tvg_Result enumeration. </dd></dl>
371 <dl class="retval"><dt>Return values</dt><dd>
372 <table class="retval">
373 <tr><td class="paramname">TVG_RESULT_SUCCESS</td><td>Succeed. </td></tr>
374 <tr><td class="paramname">TVG_RESULT_INVALID_ARGUMENT</td><td>An invalid Tvg_Gradient pointer. </td></tr>
381 <a id="gaa503fc8455eb63acda4b3ff0737f4d4e"></a>
382 <h2 class="memtitle"><span class="permalink"><a href="#gaa503fc8455eb63acda4b3ff0737f4d4e">◆ </a></span>tvg_linear_gradient_get()</h2>
384 <div class="memitem">
385 <div class="memproto">
386 <table class="memname">
388 <td class="memname">TVG_EXPORT <a class="el" href="group__ThorVG__CAPI.html#gad980f552658dcbbe42a0168f35c27781">Tvg_Result</a> tvg_linear_gradient_get </td>
390 <td class="paramtype"><a class="el" href="group__ThorVG__CAPI.html#gafc8e0d01812127260d0753eceb056181">Tvg_Gradient</a> * </td>
391 <td class="paramname"><em>grad</em>, </td>
394 <td class="paramkey"></td>
396 <td class="paramtype">float * </td>
397 <td class="paramname"><em>x1</em>, </td>
400 <td class="paramkey"></td>
402 <td class="paramtype">float * </td>
403 <td class="paramname"><em>y1</em>, </td>
406 <td class="paramkey"></td>
408 <td class="paramtype">float * </td>
409 <td class="paramname"><em>x2</em>, </td>
412 <td class="paramkey"></td>
414 <td class="paramtype">float * </td>
415 <td class="paramname"><em>y2</em> </td>
423 </div><div class="memdoc">
425 <p>Gets the linear gradient bounds. </p>
426 <p>The bounds of the linear gradient are defined as a surface constrained by two parallel lines crossing the given points (<code>x1</code>, <code>y1</code>) and (<code>x2</code>, <code>y2</code>), respectively. Both lines are perpendicular to the line linking (<code>x1</code>, <code>y1</code>) and (<code>x2</code>, <code>y2</code>).</p>
427 <dl class="params"><dt>Parameters</dt><dd>
428 <table class="params">
429 <tr><td class="paramdir">[in]</td><td class="paramname">grad</td><td>The Tvg_Gradient object of which to get the bounds. </td></tr>
430 <tr><td class="paramdir">[out]</td><td class="paramname">x1</td><td>The horizontal coordinate of the first point used to determine the gradient bounds. </td></tr>
431 <tr><td class="paramdir">[out]</td><td class="paramname">y1</td><td>The vertical coordinate of the first point used to determine the gradient bounds. </td></tr>
432 <tr><td class="paramdir">[out]</td><td class="paramname">x2</td><td>The horizontal coordinate of the second point used to determine the gradient bounds. </td></tr>
433 <tr><td class="paramdir">[out]</td><td class="paramname">y2</td><td>The vertical coordinate of the second point used to determine the gradient bounds.</td></tr>
437 <dl class="section return"><dt>Returns</dt><dd>Tvg_Result enumeration. </dd></dl>
438 <dl class="retval"><dt>Return values</dt><dd>
439 <table class="retval">
440 <tr><td class="paramname">TVG_RESULT_SUCCESS</td><td>Succeed. </td></tr>
441 <tr><td class="paramname">TVG_RESULT_INVALID_ARGUMENT</td><td>An invalid Tvg_Gradient pointer. </td></tr>
448 <a id="gab77d80df3c269fa531e7b81c8e8410d2"></a>
449 <h2 class="memtitle"><span class="permalink"><a href="#gab77d80df3c269fa531e7b81c8e8410d2">◆ </a></span>tvg_linear_gradient_new()</h2>
451 <div class="memitem">
452 <div class="memproto">
453 <table class="memname">
455 <td class="memname">TVG_EXPORT <a class="el" href="group__ThorVG__CAPI.html#gafc8e0d01812127260d0753eceb056181">Tvg_Gradient</a>* tvg_linear_gradient_new </td>
457 <td class="paramname"></td><td>)</td>
461 </div><div class="memdoc">
463 <p>Creates a new linear gradient object. </p>
464 <div class="fragment"><div class="line"><a class="code" href="group__ThorVG__CAPI.html#ga98af7c3fe18afa8ad65ea6a6e097a292">Tvg_Paint</a> shape = <a class="code" href="group__ThorVGCapi__Shape.html#ga9c0423ae5b7747a9b6b086a93504bd8d">tvg_shape_new</a>();</div><div class="line"><a class="code" href="group__ThorVGCapi__Shape.html#gac1af7237c282fc0269e65a3ba6609291">tvg_shape_append_rect</a>(shape, 700, 700, 100, 100, 20, 20);</div><div class="line"><a class="code" href="group__ThorVG__CAPI.html#gafc8e0d01812127260d0753eceb056181">Tvg_Gradient</a>* grad = <a class="code" href="group__ThorVGCapi__Gradient.html#gab77d80df3c269fa531e7b81c8e8410d2">tvg_linear_gradient_new</a>();</div><div class="line"><a class="code" href="group__ThorVGCapi__Gradient.html#ga00590e1313394b75b8619ff27ddd233b">tvg_linear_gradient_set</a>(grad, 700, 700, 800, 800);</div><div class="line"><a class="code" href="structTvg__Color__Stop.html">Tvg_Color_Stop</a> color_stops[2] =</div><div class="line">{</div><div class="line"> {.<a class="code" href="structTvg__Color__Stop.html#a3e60b3c561be982d7c8e23f14c01fd5b">offset</a>=0, .r=0, .g=0, .b=0, .a=255},</div><div class="line"> {.offset=1, .r=0, .g=255, .b=0, .a=255},</div><div class="line">};</div><div class="line"><a class="code" href="group__ThorVGCapi__Gradient.html#ga8d5755566bb7281984a44c9c687f2b48">tvg_gradient_set_color_stops</a>(grad, color_stops, 2);</div><div class="line"><a class="code" href="group__ThorVGCapi__Shape.html#ga02aa5aa9a017270ce0375b1b9db75d57">tvg_shape_set_linear_gradient</a>(shape, grad);</div></div><!-- fragment --><dl class="section return"><dt>Returns</dt><dd>A new linear gradient object. </dd></dl>
468 <a id="ga00590e1313394b75b8619ff27ddd233b"></a>
469 <h2 class="memtitle"><span class="permalink"><a href="#ga00590e1313394b75b8619ff27ddd233b">◆ </a></span>tvg_linear_gradient_set()</h2>
471 <div class="memitem">
472 <div class="memproto">
473 <table class="memname">
475 <td class="memname">TVG_EXPORT <a class="el" href="group__ThorVG__CAPI.html#gad980f552658dcbbe42a0168f35c27781">Tvg_Result</a> tvg_linear_gradient_set </td>
477 <td class="paramtype"><a class="el" href="group__ThorVG__CAPI.html#gafc8e0d01812127260d0753eceb056181">Tvg_Gradient</a> * </td>
478 <td class="paramname"><em>grad</em>, </td>
481 <td class="paramkey"></td>
483 <td class="paramtype">float </td>
484 <td class="paramname"><em>x1</em>, </td>
487 <td class="paramkey"></td>
489 <td class="paramtype">float </td>
490 <td class="paramname"><em>y1</em>, </td>
493 <td class="paramkey"></td>
495 <td class="paramtype">float </td>
496 <td class="paramname"><em>x2</em>, </td>
499 <td class="paramkey"></td>
501 <td class="paramtype">float </td>
502 <td class="paramname"><em>y2</em> </td>
510 </div><div class="memdoc">
512 <p>Sets the linear gradient bounds. </p>
513 <p>The bounds of the linear gradient are defined as a surface constrained by two parallel lines crossing the given points (<code>x1</code>, <code>y1</code>) and (<code>x2</code>, <code>y2</code>), respectively. Both lines are perpendicular to the line linking (<code>x1</code>, <code>y1</code>) and (<code>x2</code>, <code>y2</code>).</p>
514 <dl class="params"><dt>Parameters</dt><dd>
515 <table class="params">
516 <tr><td class="paramdir">[in]</td><td class="paramname">grad</td><td>The Tvg_Gradient object of which bounds are to be set. </td></tr>
517 <tr><td class="paramdir">[in]</td><td class="paramname">x1</td><td>The horizontal coordinate of the first point used to determine the gradient bounds. </td></tr>
518 <tr><td class="paramdir">[in]</td><td class="paramname">y1</td><td>The vertical coordinate of the first point used to determine the gradient bounds. </td></tr>
519 <tr><td class="paramdir">[in]</td><td class="paramname">x2</td><td>The horizontal coordinate of the second point used to determine the gradient bounds. </td></tr>
520 <tr><td class="paramdir">[in]</td><td class="paramname">y2</td><td>The vertical coordinate of the second point used to determine the gradient bounds.</td></tr>
524 <dl class="section return"><dt>Returns</dt><dd>Tvg_Result enumeration. </dd></dl>
525 <dl class="retval"><dt>Return values</dt><dd>
526 <table class="retval">
527 <tr><td class="paramname">TVG_RESULT_SUCCESS</td><td>Succeed. </td></tr>
528 <tr><td class="paramname">TVG_RESULT_INVALID_ARGUMENT</td><td>An invalid Tvg_Gradient pointer or the first and the second points are equal. </td></tr>
535 <a id="gaabab5eabf6d11b95b96e9c543a341199"></a>
536 <h2 class="memtitle"><span class="permalink"><a href="#gaabab5eabf6d11b95b96e9c543a341199">◆ </a></span>tvg_radial_gradient_get()</h2>
538 <div class="memitem">
539 <div class="memproto">
540 <table class="memname">
542 <td class="memname">TVG_EXPORT <a class="el" href="group__ThorVG__CAPI.html#gad980f552658dcbbe42a0168f35c27781">Tvg_Result</a> tvg_radial_gradient_get </td>
544 <td class="paramtype"><a class="el" href="group__ThorVG__CAPI.html#gafc8e0d01812127260d0753eceb056181">Tvg_Gradient</a> * </td>
545 <td class="paramname"><em>grad</em>, </td>
548 <td class="paramkey"></td>
550 <td class="paramtype">float * </td>
551 <td class="paramname"><em>cx</em>, </td>
554 <td class="paramkey"></td>
556 <td class="paramtype">float * </td>
557 <td class="paramname"><em>cy</em>, </td>
560 <td class="paramkey"></td>
562 <td class="paramtype">float * </td>
563 <td class="paramname"><em>radius</em> </td>
571 </div><div class="memdoc">
573 <p>The function gets radial gradient center point ant radius. </p>
574 <dl class="params"><dt>Parameters</dt><dd>
575 <table class="params">
576 <tr><td class="paramdir">[in]</td><td class="paramname">grad</td><td>The Tvg_Gradient object of which bounds are to be set. </td></tr>
577 <tr><td class="paramdir">[out]</td><td class="paramname">cx</td><td>The horizontal coordinate of the center of the bounding circle. </td></tr>
578 <tr><td class="paramdir">[out]</td><td class="paramname">cy</td><td>The vertical coordinate of the center of the bounding circle. </td></tr>
579 <tr><td class="paramdir">[out]</td><td class="paramname">radius</td><td>The radius of the bounding circle.</td></tr>
583 <dl class="section return"><dt>Returns</dt><dd>Tvg_Result enumeration. </dd></dl>
584 <dl class="retval"><dt>Return values</dt><dd>
585 <table class="retval">
586 <tr><td class="paramname">TVG_RESULT_SUCCESS</td><td>Succeed. </td></tr>
587 <tr><td class="paramname">TVG_RESULT_INVALID_ARGUMENT</td><td>An invalid Tvg_Gradient pointer. </td></tr>
594 <a id="ga7dc487e5d1557961cd2cc31a42daeb28"></a>
595 <h2 class="memtitle"><span class="permalink"><a href="#ga7dc487e5d1557961cd2cc31a42daeb28">◆ </a></span>tvg_radial_gradient_new()</h2>
597 <div class="memitem">
598 <div class="memproto">
599 <table class="memname">
601 <td class="memname">TVG_EXPORT <a class="el" href="group__ThorVG__CAPI.html#gafc8e0d01812127260d0753eceb056181">Tvg_Gradient</a>* tvg_radial_gradient_new </td>
603 <td class="paramname"></td><td>)</td>
607 </div><div class="memdoc">
609 <p>Creates a new radial gradient object. </p>
610 <div class="fragment"><div class="line"><a class="code" href="group__ThorVG__CAPI.html#ga98af7c3fe18afa8ad65ea6a6e097a292">Tvg_Paint</a> shape = <a class="code" href="group__ThorVGCapi__Shape.html#ga9c0423ae5b7747a9b6b086a93504bd8d">tvg_shape_new</a>();</div><div class="line"><a class="code" href="group__ThorVGCapi__Shape.html#gac1af7237c282fc0269e65a3ba6609291">tvg_shape_append_rect</a>(shape, 700, 700, 100, 100, 20, 20);</div><div class="line"><a class="code" href="group__ThorVG__CAPI.html#gafc8e0d01812127260d0753eceb056181">Tvg_Gradient</a>* grad = <a class="code" href="group__ThorVGCapi__Gradient.html#ga7dc487e5d1557961cd2cc31a42daeb28">tvg_radial_gradient_new</a>();</div><div class="line"><a class="code" href="group__ThorVGCapi__Gradient.html#ga00590e1313394b75b8619ff27ddd233b">tvg_linear_gradient_set</a>(grad, 550, 550, 50);</div><div class="line"><a class="code" href="structTvg__Color__Stop.html">Tvg_Color_Stop</a> color_stops[2] =</div><div class="line">{</div><div class="line"> {.<a class="code" href="structTvg__Color__Stop.html#a3e60b3c561be982d7c8e23f14c01fd5b">offset</a>=0, .r=0, .g=0, .b=0, .a=255},</div><div class="line"> {.offset=1, .r=0, .g=255, .b=0, .a=255},</div><div class="line">};</div><div class="line"><a class="code" href="group__ThorVGCapi__Gradient.html#ga8d5755566bb7281984a44c9c687f2b48">tvg_gradient_set_color_stops</a>(grad, color_stops, 2);</div><div class="line"><a class="code" href="group__ThorVGCapi__Shape.html#gabd7b9020f1058aa9e9fae9b683265ef8">tvg_shape_set_radial_gradient</a>(shape, grad);</div></div><!-- fragment --><dl class="section return"><dt>Returns</dt><dd>A new radial gradient object. </dd></dl>
614 <a id="ga321045b5fda8e8e002c4837bd03ccdac"></a>
615 <h2 class="memtitle"><span class="permalink"><a href="#ga321045b5fda8e8e002c4837bd03ccdac">◆ </a></span>tvg_radial_gradient_set()</h2>
617 <div class="memitem">
618 <div class="memproto">
619 <table class="memname">
621 <td class="memname">TVG_EXPORT <a class="el" href="group__ThorVG__CAPI.html#gad980f552658dcbbe42a0168f35c27781">Tvg_Result</a> tvg_radial_gradient_set </td>
623 <td class="paramtype"><a class="el" href="group__ThorVG__CAPI.html#gafc8e0d01812127260d0753eceb056181">Tvg_Gradient</a> * </td>
624 <td class="paramname"><em>grad</em>, </td>
627 <td class="paramkey"></td>
629 <td class="paramtype">float </td>
630 <td class="paramname"><em>cx</em>, </td>
633 <td class="paramkey"></td>
635 <td class="paramtype">float </td>
636 <td class="paramname"><em>cy</em>, </td>
639 <td class="paramkey"></td>
641 <td class="paramtype">float </td>
642 <td class="paramname"><em>radius</em> </td>
650 </div><div class="memdoc">
652 <p>Sets the radial gradient bounds. </p>
653 <p>The radial gradient bounds are defined as a circle centered in a given point (<code>cx</code>, <code>cy</code>) of a given radius.</p>
654 <dl class="params"><dt>Parameters</dt><dd>
655 <table class="params">
656 <tr><td class="paramdir">[in]</td><td class="paramname">grad</td><td>The Tvg_Gradient object of which bounds are to be set. </td></tr>
657 <tr><td class="paramdir">[in]</td><td class="paramname">cx</td><td>The horizontal coordinate of the center of the bounding circle. </td></tr>
658 <tr><td class="paramdir">[in]</td><td class="paramname">cy</td><td>The vertical coordinate of the center of the bounding circle. </td></tr>
659 <tr><td class="paramdir">[in]</td><td class="paramname">radius</td><td>The radius of the bounding circle.</td></tr>
663 <dl class="section return"><dt>Returns</dt><dd>Tvg_Result enumeration. </dd></dl>
664 <dl class="retval"><dt>Return values</dt><dd>
665 <table class="retval">
666 <tr><td class="paramname">TVG_RESULT_SUCCESS</td><td>Succeed. </td></tr>
667 <tr><td class="paramname">TVG_RESULT_INVALID_ARGUMENT</td><td>An invalid Tvg_Gradient pointer or the <code>radius</code> value less than zero. </td></tr>
674 </div><!-- contents -->
675 </div><!-- doc-content -->
676 <!-- start footer part -->
677 <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
679 <li class="footer">Generated by
680 <a href="http://www.doxygen.org/index.html">
681 <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>