<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <meta http-equiv="X-UA-Compatible" content="IE=9"/> <meta name="generator" content="Doxygen 1.8.5"/> <title>MyGUI: MyGUI_PolygonalSkin.cpp Source File</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="dynsections.js"></script> <link href="doxygen.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="top"><!-- do not remove this div, it is closed by doxygen! --> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td style="padding-left: 0.5em;"> <div id="projectname">MyGUI  <span id="projectnumber">3.2.0</span> </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.5 --> <div id="navrow1" class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li><a href="annotated.html"><span>Data Structures</span></a></li> <li class="current"><a href="files.html"><span>Files</span></a></li> <li><a href="examples.html"><span>Examples</span></a></li> </ul> </div> <div id="navrow2" class="tabs2"> <ul class="tablist"> <li><a href="files.html"><span>File List</span></a></li> <li><a href="globals.html"><span>Globals</span></a></li> </ul> </div> <div id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="dir_6ffc83313ac7031dae1aac56ae95e04c.html">MyGUIEngine</a></li><li class="navelem"><a class="el" href="dir_deb6bfddbcac6ef83a5d65512b62ab3f.html">src</a></li> </ul> </div> </div><!-- top --> <div class="header"> <div class="headertitle"> <div class="title">MyGUI_PolygonalSkin.cpp</div> </div> </div><!--header--> <div class="contents"> <a href="_my_g_u_i___polygonal_skin_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> </div> <div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment">/*</span></div> <div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> This file is part of MyGUI.</span></div> <div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"></span></div> <div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> MyGUI is free software: you can redistribute it and/or modify</span></div> <div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> it under the terms of the GNU Lesser General Public License as published by</span></div> <div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> the Free Software Foundation, either version 3 of the License, or</span></div> <div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> (at your option) any later version.</span></div> <div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"></span></div> <div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> MyGUI is distributed in the hope that it will be useful,</span></div> <div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div> <div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div> <div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> GNU Lesser General Public License for more details.</span></div> <div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="comment"></span></div> <div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment"> You should have received a copy of the GNU Lesser General Public License</span></div> <div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="comment"> along with MyGUI. If not, see <http://www.gnu.org/licenses/>.</span></div> <div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="comment">*/</span></div> <div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include "<a class="code" href="_my_g_u_i___precompiled_8h.html">MyGUI_Precompiled.h</a>"</span></div> <div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include "<a class="code" href="_my_g_u_i___polygonal_skin_8h.html">MyGUI_PolygonalSkin.h</a>"</span></div> <div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include "<a class="code" href="_my_g_u_i___render_item_8h.html">MyGUI_RenderItem.h</a>"</span></div> <div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include "<a class="code" href="_my_g_u_i___common_state_info_8h.html">MyGUI_CommonStateInfo.h</a>"</span></div> <div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#include "<a class="code" href="_my_g_u_i___render_manager_8h.html">MyGUI_RenderManager.h</a>"</span></div> <div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#include "<a class="code" href="_my_g_u_i___geometry_utility_8h.html">MyGUI_GeometryUtility.h</a>"</span></div> <div class="line"><a name="l00028"></a><span class="lineno"> 28</span> </div> <div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="keyword">namespace </span>MyGUI</div> <div class="line"><a name="l00030"></a><span class="lineno"> 30</span> {</div> <div class="line"><a name="l00031"></a><span class="lineno"> 31</span> </div> <div class="line"><a name="l00032"></a><span class="lineno"><a class="line" href="class_my_g_u_i_1_1_polygonal_skin.html#a11698247785040cce04dcc028cfd4179"> 32</a></span>  <a class="code" href="class_my_g_u_i_1_1_polygonal_skin.html#a11698247785040cce04dcc028cfd4179">PolygonalSkin::PolygonalSkin</a>() :</div> <div class="line"><a name="l00033"></a><span class="lineno"> 33</span>  mGeometryOutdated(false),</div> <div class="line"><a name="l00034"></a><span class="lineno"> 34</span>  mLineWidth(1.0f),</div> <div class="line"><a name="l00035"></a><span class="lineno"> 35</span>  mLineLength(0.0f),</div> <div class="line"><a name="l00036"></a><span class="lineno"> 36</span>  mVertexCount(0),</div> <div class="line"><a name="l00037"></a><span class="lineno"> 37</span>  mEmptyView(false),</div> <div class="line"><a name="l00038"></a><span class="lineno"> 38</span>  mCurrentColour(0xFFFFFFFF),</div> <div class="line"><a name="l00039"></a><span class="lineno"> 39</span>  mNode(<a class="code" href="_my_g_u_i___prerequest_8h.html#ab979d9d4b4923f7c54d6caa6e1a61936">nullptr</a>),</div> <div class="line"><a name="l00040"></a><span class="lineno"> 40</span>  mRenderItem(<a class="code" href="_my_g_u_i___prerequest_8h.html#ab979d9d4b4923f7c54d6caa6e1a61936">nullptr</a>)</div> <div class="line"><a name="l00041"></a><span class="lineno"> 41</span>  {</div> <div class="line"><a name="l00042"></a><span class="lineno"> 42</span>  mVertexFormat = <a class="code" href="class_my_g_u_i_1_1_singleton.html#a62dffea70e4b1061c1018a3b12d3ecd8">RenderManager::getInstance</a>().<a class="code" href="class_my_g_u_i_1_1_render_manager.html#ae8154746e383c853200738ba3527164e">getVertexFormat</a>();</div> <div class="line"><a name="l00043"></a><span class="lineno"> 43</span>  }</div> <div class="line"><a name="l00044"></a><span class="lineno"> 44</span> </div> <div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="class_my_g_u_i_1_1_polygonal_skin.html#ac4e394705a41873045dc071301877346"> 45</a></span>  <a class="code" href="class_my_g_u_i_1_1_polygonal_skin.html#ac4e394705a41873045dc071301877346">PolygonalSkin::~PolygonalSkin</a>()</div> <div class="line"><a name="l00046"></a><span class="lineno"> 46</span>  {</div> <div class="line"><a name="l00047"></a><span class="lineno"> 47</span>  }</div> <div class="line"><a name="l00048"></a><span class="lineno"> 48</span> </div> <div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="namespace_my_g_u_i.html#aeab5768bb4b329fef1437fdb3e59e996"> 49</a></span>  <span class="keyword">inline</span> <span class="keywordtype">float</span> <a class="code" href="namespace_my_g_u_i.html#aeab5768bb4b329fef1437fdb3e59e996">len</a>(<span class="keywordtype">float</span> x, <span class="keywordtype">float</span> y)</div> <div class="line"><a name="l00050"></a><span class="lineno"> 50</span>  {</div> <div class="line"><a name="l00051"></a><span class="lineno"> 51</span>  <span class="keywordflow">return</span> sqrt(x * x + y * y);</div> <div class="line"><a name="l00052"></a><span class="lineno"> 52</span>  }</div> <div class="line"><a name="l00053"></a><span class="lineno"> 53</span> </div> <div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="class_my_g_u_i_1_1_polygonal_skin.html#a63f3d892e18f6e25da650052f6200ac7"> 54</a></span>  <span class="keywordtype">void</span> <a class="code" href="class_my_g_u_i_1_1_polygonal_skin.html#a63f3d892e18f6e25da650052f6200ac7">PolygonalSkin::setPoints</a>(<span class="keyword">const</span> std::vector<FloatPoint>& _points)</div> <div class="line"><a name="l00055"></a><span class="lineno"> 55</span>  {</div> <div class="line"><a name="l00056"></a><span class="lineno"> 56</span>  <span class="keywordflow">if</span> (_points.size() < 2)</div> <div class="line"><a name="l00057"></a><span class="lineno"> 57</span>  {</div> <div class="line"><a name="l00058"></a><span class="lineno"> 58</span>  mVertexCount = 0;</div> <div class="line"><a name="l00059"></a><span class="lineno"> 59</span>  mResultVerticiesPos.clear();</div> <div class="line"><a name="l00060"></a><span class="lineno"> 60</span>  mResultVerticiesUV.clear();</div> <div class="line"><a name="l00061"></a><span class="lineno"> 61</span>  mLinePoints = _points;</div> <div class="line"><a name="l00062"></a><span class="lineno"> 62</span>  <span class="keywordflow">return</span>;</div> <div class="line"><a name="l00063"></a><span class="lineno"> 63</span>  }</div> <div class="line"><a name="l00064"></a><span class="lineno"> 64</span> </div> <div class="line"><a name="l00065"></a><span class="lineno"> 65</span>  <a class="code" href="namespace_my_g_u_i.html#a60a1273b6fdef7b0c8cecd4cc90b7e5b">VectorFloatPoint</a> finalPoints;</div> <div class="line"><a name="l00066"></a><span class="lineno"> 66</span>  finalPoints.reserve(_points.size());</div> <div class="line"><a name="l00067"></a><span class="lineno"> 67</span> </div> <div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  mLineLength = 0.0f;</div> <div class="line"><a name="l00069"></a><span class="lineno"> 69</span>  <a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html">FloatPoint</a> point = _points[0];</div> <div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  finalPoints.push_back(point);</div> <div class="line"><a name="l00071"></a><span class="lineno"> 71</span>  <span class="comment">// ignore repeating points</span></div> <div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  <span class="keywordflow">for</span> (std::vector<FloatPoint>::const_iterator iter = _points.begin() + 1; iter != _points.end(); ++iter)</div> <div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  {</div> <div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  <span class="keywordflow">if</span> (point != *iter)</div> <div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  {</div> <div class="line"><a name="l00076"></a><span class="lineno"> 76</span>  finalPoints.push_back(*iter);</div> <div class="line"><a name="l00077"></a><span class="lineno"> 77</span>  mLineLength += <a class="code" href="namespace_my_g_u_i.html#aeab5768bb4b329fef1437fdb3e59e996">len</a>(iter->left - point.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#a4145982830e0c6ccb93cd9f003106933">left</a>, iter->top - point.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#adeaf740ccbf49cf5e77de70f941d4ff8">top</a>);</div> <div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  point = *iter;</div> <div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  }</div> <div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  }</div> <div class="line"><a name="l00081"></a><span class="lineno"> 81</span> </div> <div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  mLinePoints = finalPoints;</div> <div class="line"><a name="l00083"></a><span class="lineno"> 83</span> </div> <div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="preprocessor">#ifdef MYGUI_NO_POLYGONAL_SKIN_CROPPING</span></div> <div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="preprocessor"></span> <span class="keywordtype">size_t</span> count = (mLinePoints.size() - 1) * <a class="code" href="struct_my_g_u_i_1_1_vertex_quad.html#a54ce52e924fee273e5647e74378bb536a4dfcc332ca50f3bf0cd7ffe3a7a9495f">VertexQuad::VertexCount</a> * 2;</div> <div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <span class="preprocessor">#else</span></div> <div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <span class="preprocessor"></span> <span class="comment">// it's too hard to calculate maximum possible verticies count and worst</span></div> <div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  <span class="comment">// approximation gives 7 times more verticies than in not cropped geometry</span></div> <div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  <span class="comment">// so we multiply count by 2, because this looks enough</span></div> <div class="line"><a name="l00090"></a><span class="lineno"> 90</span>  <span class="keywordtype">size_t</span> count = (mLinePoints.size() - 1) * <a class="code" href="struct_my_g_u_i_1_1_vertex_quad.html#a54ce52e924fee273e5647e74378bb536a4dfcc332ca50f3bf0cd7ffe3a7a9495f">VertexQuad::VertexCount</a> * 2 * 2;</div> <div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="preprocessor">#endif</span></div> <div class="line"><a name="l00092"></a><span class="lineno"> 92</span> <span class="preprocessor"></span> <span class="keywordflow">if</span> (count > mVertexCount)</div> <div class="line"><a name="l00093"></a><span class="lineno"> 93</span>  {</div> <div class="line"><a name="l00094"></a><span class="lineno"> 94</span>  mVertexCount = count;</div> <div class="line"><a name="l00095"></a><span class="lineno"> 95</span>  <span class="keywordflow">if</span> (<span class="keyword">nullptr</span> != mRenderItem) mRenderItem-><a class="code" href="class_my_g_u_i_1_1_render_item.html#aad2c40f96a5b60a09d318c513a0cf03c">reallockDrawItem</a>(<span class="keyword">this</span>, mVertexCount);</div> <div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  }</div> <div class="line"><a name="l00097"></a><span class="lineno"> 97</span> </div> <div class="line"><a name="l00098"></a><span class="lineno"> 98</span>  <a class="code" href="class_my_g_u_i_1_1_polygonal_skin.html#a0e17106bf07dfb7816d4a6dcc11f24b4">_updateView</a>();</div> <div class="line"><a name="l00099"></a><span class="lineno"> 99</span>  }</div> <div class="line"><a name="l00100"></a><span class="lineno"> 100</span> </div> <div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="class_my_g_u_i_1_1_polygonal_skin.html#aa5cbd5fee8806e8c410a6cb3f3011963"> 101</a></span>  <span class="keywordtype">void</span> <a class="code" href="class_my_g_u_i_1_1_polygonal_skin.html#aa5cbd5fee8806e8c410a6cb3f3011963">PolygonalSkin::setWidth</a>(<span class="keywordtype">float</span> _width)</div> <div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  {</div> <div class="line"><a name="l00103"></a><span class="lineno"> 103</span>  mLineWidth = _width;</div> <div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  <a class="code" href="class_my_g_u_i_1_1_polygonal_skin.html#a0e17106bf07dfb7816d4a6dcc11f24b4">_updateView</a>();</div> <div class="line"><a name="l00105"></a><span class="lineno"> 105</span>  }</div> <div class="line"><a name="l00106"></a><span class="lineno"> 106</span> </div> <div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="class_my_g_u_i_1_1_polygonal_skin.html#a680a0171f9221e6185729388cfe5c04b"> 107</a></span>  <span class="keywordtype">void</span> <a class="code" href="class_my_g_u_i_1_1_polygonal_skin.html#a680a0171f9221e6185729388cfe5c04b">PolygonalSkin::setVisible</a>(<span class="keywordtype">bool</span> _visible)</div> <div class="line"><a name="l00108"></a><span class="lineno"> 108</span>  {</div> <div class="line"><a name="l00109"></a><span class="lineno"> 109</span>  <span class="keywordflow">if</span> (<a class="code" href="class_my_g_u_i_1_1_i_sub_widget.html#aad1a1c35ec62988129fb142ba2fe2b1f">mVisible</a> == _visible)</div> <div class="line"><a name="l00110"></a><span class="lineno"> 110</span>  <span class="keywordflow">return</span>;</div> <div class="line"><a name="l00111"></a><span class="lineno"> 111</span> </div> <div class="line"><a name="l00112"></a><span class="lineno"> 112</span>  <a class="code" href="class_my_g_u_i_1_1_i_sub_widget.html#aad1a1c35ec62988129fb142ba2fe2b1f">mVisible</a> = _visible;</div> <div class="line"><a name="l00113"></a><span class="lineno"> 113</span>  mGeometryOutdated = <span class="keyword">true</span>;</div> <div class="line"><a name="l00114"></a><span class="lineno"> 114</span> </div> <div class="line"><a name="l00115"></a><span class="lineno"> 115</span>  <span class="keywordflow">if</span> (<span class="keyword">nullptr</span> != mNode)</div> <div class="line"><a name="l00116"></a><span class="lineno"> 116</span>  mNode-><a class="code" href="class_my_g_u_i_1_1_i_layer_node.html#ae945eb84e47781d423e5b7c1964ef3ce">outOfDate</a>(mRenderItem);</div> <div class="line"><a name="l00117"></a><span class="lineno"> 117</span>  }</div> <div class="line"><a name="l00118"></a><span class="lineno"> 118</span> </div> <div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="class_my_g_u_i_1_1_polygonal_skin.html#a1f1b5ad2ed3054689ccf964469e26528"> 119</a></span>  <span class="keywordtype">void</span> <a class="code" href="class_my_g_u_i_1_1_polygonal_skin.html#a1f1b5ad2ed3054689ccf964469e26528">PolygonalSkin::setAlpha</a>(<span class="keywordtype">float</span> _alpha)</div> <div class="line"><a name="l00120"></a><span class="lineno"> 120</span>  {</div> <div class="line"><a name="l00121"></a><span class="lineno"> 121</span>  <a class="code" href="namespace_my_g_u_i.html#ae11a5769e2d89121966117b44b09625f">uint32</a> alpha = ((<a class="code" href="namespace_my_g_u_i.html#a56be7d5be0f6d225d7373b0931dac737">uint8</a>)(_alpha * 255) << 24);</div> <div class="line"><a name="l00122"></a><span class="lineno"> 122</span>  mCurrentColour = (mCurrentColour & 0x00FFFFFF) | (alpha & 0xFF000000);</div> <div class="line"><a name="l00123"></a><span class="lineno"> 123</span> </div> <div class="line"><a name="l00124"></a><span class="lineno"> 124</span>  <span class="keywordflow">if</span> (<span class="keyword">nullptr</span> != mNode)</div> <div class="line"><a name="l00125"></a><span class="lineno"> 125</span>  mNode-><a class="code" href="class_my_g_u_i_1_1_i_layer_node.html#ae945eb84e47781d423e5b7c1964ef3ce">outOfDate</a>(mRenderItem);</div> <div class="line"><a name="l00126"></a><span class="lineno"> 126</span>  }</div> <div class="line"><a name="l00127"></a><span class="lineno"> 127</span> </div> <div class="line"><a name="l00128"></a><span class="lineno"><a class="line" href="class_my_g_u_i_1_1_polygonal_skin.html#a8bc9b7347a6542e7abd109b153f6c592"> 128</a></span>  <span class="keywordtype">void</span> <a class="code" href="class_my_g_u_i_1_1_polygonal_skin.html#a8bc9b7347a6542e7abd109b153f6c592">PolygonalSkin::_correctView</a>()</div> <div class="line"><a name="l00129"></a><span class="lineno"> 129</span>  {</div> <div class="line"><a name="l00130"></a><span class="lineno"> 130</span>  mGeometryOutdated = <span class="keyword">true</span>;</div> <div class="line"><a name="l00131"></a><span class="lineno"> 131</span> </div> <div class="line"><a name="l00132"></a><span class="lineno"> 132</span>  <span class="keywordflow">if</span> (<span class="keyword">nullptr</span> != mNode)</div> <div class="line"><a name="l00133"></a><span class="lineno"> 133</span>  mNode-><a class="code" href="class_my_g_u_i_1_1_i_layer_node.html#ae945eb84e47781d423e5b7c1964ef3ce">outOfDate</a>(mRenderItem);</div> <div class="line"><a name="l00134"></a><span class="lineno"> 134</span>  }</div> <div class="line"><a name="l00135"></a><span class="lineno"> 135</span> </div> <div class="line"><a name="l00136"></a><span class="lineno"><a class="line" href="class_my_g_u_i_1_1_polygonal_skin.html#a9cbdbc0049d1d62b91da9eff075f94bd"> 136</a></span>  <span class="keywordtype">void</span> <a class="code" href="class_my_g_u_i_1_1_polygonal_skin.html#a9cbdbc0049d1d62b91da9eff075f94bd">PolygonalSkin::_setAlign</a>(<span class="keyword">const</span> <a class="code" href="struct_my_g_u_i_1_1types_1_1_t_size.html">IntSize</a>& _oldsize)</div> <div class="line"><a name="l00137"></a><span class="lineno"> 137</span>  {</div> <div class="line"><a name="l00138"></a><span class="lineno"> 138</span>  <span class="comment">// необходимо разобраться</span></div> <div class="line"><a name="l00139"></a><span class="lineno"> 139</span>  <span class="keywordtype">bool</span> need_update = <span class="keyword">true</span>;</div> <div class="line"><a name="l00140"></a><span class="lineno"> 140</span> </div> <div class="line"><a name="l00141"></a><span class="lineno"> 141</span>  <span class="comment">// первоначальное выравнивание</span></div> <div class="line"><a name="l00142"></a><span class="lineno"> 142</span>  <span class="keywordflow">if</span> (<a class="code" href="class_my_g_u_i_1_1_i_sub_widget.html#a0a4a9b89c1f23857c487fc89c474eb1e">mAlign</a>.<a class="code" href="struct_my_g_u_i_1_1_align.html#a4fa6f21e0a7fbec3d9a7c6524d50cbb9">isHStretch</a>())</div> <div class="line"><a name="l00143"></a><span class="lineno"> 143</span>  {</div> <div class="line"><a name="l00144"></a><span class="lineno"> 144</span>  <span class="comment">// растягиваем</span></div> <div class="line"><a name="l00145"></a><span class="lineno"> 145</span>  <a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a21be402c76c560b6568dc16c2f1e38a8">mCoord</a>.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_coord.html#a34c2a4a84487c83524c53f996f101382">width</a> = <a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a21be402c76c560b6568dc16c2f1e38a8">mCoord</a>.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_coord.html#a34c2a4a84487c83524c53f996f101382">width</a> + (<a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a5d10640ec8d1a14f75b4a6287d92de12">mCroppedParent</a>-><a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a52c93ea7b7c89b708b855a4924df310b">getWidth</a>() - _oldsize.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_size.html#a02ca00ab866d1905d05d0ba7555a667d">width</a>);</div> <div class="line"><a name="l00146"></a><span class="lineno"> 146</span>  need_update = <span class="keyword">true</span>;</div> <div class="line"><a name="l00147"></a><span class="lineno"> 147</span>  <a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a0f0b7542dde743b020713654c50536ca">mIsMargin</a> = <span class="keyword">true</span>; <span class="comment">// при изменении размеров все пересчитывать</span></div> <div class="line"><a name="l00148"></a><span class="lineno"> 148</span>  }</div> <div class="line"><a name="l00149"></a><span class="lineno"> 149</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="class_my_g_u_i_1_1_i_sub_widget.html#a0a4a9b89c1f23857c487fc89c474eb1e">mAlign</a>.<a class="code" href="struct_my_g_u_i_1_1_align.html#a6e8ccd94a002bbd7409abcfcf739144f">isRight</a>())</div> <div class="line"><a name="l00150"></a><span class="lineno"> 150</span>  {</div> <div class="line"><a name="l00151"></a><span class="lineno"> 151</span>  <span class="comment">// двигаем по правому краю</span></div> <div class="line"><a name="l00152"></a><span class="lineno"> 152</span>  <a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a21be402c76c560b6568dc16c2f1e38a8">mCoord</a>.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_coord.html#ac6eca9c1ea350ee19fc88e94d14c1a84">left</a> = <a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a21be402c76c560b6568dc16c2f1e38a8">mCoord</a>.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_coord.html#ac6eca9c1ea350ee19fc88e94d14c1a84">left</a> + (<a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a5d10640ec8d1a14f75b4a6287d92de12">mCroppedParent</a>-><a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a52c93ea7b7c89b708b855a4924df310b">getWidth</a>() - _oldsize.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_size.html#a02ca00ab866d1905d05d0ba7555a667d">width</a>);</div> <div class="line"><a name="l00153"></a><span class="lineno"> 153</span>  need_update = <span class="keyword">true</span>;</div> <div class="line"><a name="l00154"></a><span class="lineno"> 154</span>  }</div> <div class="line"><a name="l00155"></a><span class="lineno"> 155</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="class_my_g_u_i_1_1_i_sub_widget.html#a0a4a9b89c1f23857c487fc89c474eb1e">mAlign</a>.<a class="code" href="struct_my_g_u_i_1_1_align.html#aa69b5a2cbd6078e542e4f41fc55d2755">isHCenter</a>())</div> <div class="line"><a name="l00156"></a><span class="lineno"> 156</span>  {</div> <div class="line"><a name="l00157"></a><span class="lineno"> 157</span>  <span class="comment">// выравнивание по горизонтали без растяжения</span></div> <div class="line"><a name="l00158"></a><span class="lineno"> 158</span>  <a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a21be402c76c560b6568dc16c2f1e38a8">mCoord</a>.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_coord.html#ac6eca9c1ea350ee19fc88e94d14c1a84">left</a> = (<a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a5d10640ec8d1a14f75b4a6287d92de12">mCroppedParent</a>-><a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a52c93ea7b7c89b708b855a4924df310b">getWidth</a>() - <a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a21be402c76c560b6568dc16c2f1e38a8">mCoord</a>.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_coord.html#a34c2a4a84487c83524c53f996f101382">width</a>) / 2;</div> <div class="line"><a name="l00159"></a><span class="lineno"> 159</span>  need_update = <span class="keyword">true</span>;</div> <div class="line"><a name="l00160"></a><span class="lineno"> 160</span>  }</div> <div class="line"><a name="l00161"></a><span class="lineno"> 161</span> </div> <div class="line"><a name="l00162"></a><span class="lineno"> 162</span>  <span class="keywordflow">if</span> (<a class="code" href="class_my_g_u_i_1_1_i_sub_widget.html#a0a4a9b89c1f23857c487fc89c474eb1e">mAlign</a>.<a class="code" href="struct_my_g_u_i_1_1_align.html#af606d70a6262781810df0fd173429ffd">isVStretch</a>())</div> <div class="line"><a name="l00163"></a><span class="lineno"> 163</span>  {</div> <div class="line"><a name="l00164"></a><span class="lineno"> 164</span>  <span class="comment">// растягиваем</span></div> <div class="line"><a name="l00165"></a><span class="lineno"> 165</span>  <a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a21be402c76c560b6568dc16c2f1e38a8">mCoord</a>.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_coord.html#a048566d42deb6ba6701c81feb49df8d7">height</a> = <a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a21be402c76c560b6568dc16c2f1e38a8">mCoord</a>.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_coord.html#a048566d42deb6ba6701c81feb49df8d7">height</a> + (<a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a5d10640ec8d1a14f75b4a6287d92de12">mCroppedParent</a>-><a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#af5253c6b4dfb1107dd23b23fb1109413">getHeight</a>() - _oldsize.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_size.html#a8a1d35034229c32f6c3d1869db19f3e1">height</a>);</div> <div class="line"><a name="l00166"></a><span class="lineno"> 166</span>  need_update = <span class="keyword">true</span>;</div> <div class="line"><a name="l00167"></a><span class="lineno"> 167</span>  <a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a0f0b7542dde743b020713654c50536ca">mIsMargin</a> = <span class="keyword">true</span>; <span class="comment">// при изменении размеров все пересчитывать</span></div> <div class="line"><a name="l00168"></a><span class="lineno"> 168</span>  }</div> <div class="line"><a name="l00169"></a><span class="lineno"> 169</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="class_my_g_u_i_1_1_i_sub_widget.html#a0a4a9b89c1f23857c487fc89c474eb1e">mAlign</a>.<a class="code" href="struct_my_g_u_i_1_1_align.html#a247b995a128e3d9d38f357bd3bf2f271">isBottom</a>())</div> <div class="line"><a name="l00170"></a><span class="lineno"> 170</span>  {</div> <div class="line"><a name="l00171"></a><span class="lineno"> 171</span>  <span class="comment">// двигаем по нижнему краю</span></div> <div class="line"><a name="l00172"></a><span class="lineno"> 172</span>  <a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a21be402c76c560b6568dc16c2f1e38a8">mCoord</a>.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_coord.html#a5fb8d9e9b6249750e7c794f60ae5fdac">top</a> = <a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a21be402c76c560b6568dc16c2f1e38a8">mCoord</a>.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_coord.html#a5fb8d9e9b6249750e7c794f60ae5fdac">top</a> + (<a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a5d10640ec8d1a14f75b4a6287d92de12">mCroppedParent</a>-><a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#af5253c6b4dfb1107dd23b23fb1109413">getHeight</a>() - _oldsize.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_size.html#a8a1d35034229c32f6c3d1869db19f3e1">height</a>);</div> <div class="line"><a name="l00173"></a><span class="lineno"> 173</span>  need_update = <span class="keyword">true</span>;</div> <div class="line"><a name="l00174"></a><span class="lineno"> 174</span>  }</div> <div class="line"><a name="l00175"></a><span class="lineno"> 175</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="class_my_g_u_i_1_1_i_sub_widget.html#a0a4a9b89c1f23857c487fc89c474eb1e">mAlign</a>.<a class="code" href="struct_my_g_u_i_1_1_align.html#abdd8dbc791e0af8ea3eb1f42a88a2056">isVCenter</a>())</div> <div class="line"><a name="l00176"></a><span class="lineno"> 176</span>  {</div> <div class="line"><a name="l00177"></a><span class="lineno"> 177</span>  <span class="comment">// выравнивание по вертикали без растяжения</span></div> <div class="line"><a name="l00178"></a><span class="lineno"> 178</span>  <a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a21be402c76c560b6568dc16c2f1e38a8">mCoord</a>.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_coord.html#a5fb8d9e9b6249750e7c794f60ae5fdac">top</a> = (<a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a5d10640ec8d1a14f75b4a6287d92de12">mCroppedParent</a>-><a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#af5253c6b4dfb1107dd23b23fb1109413">getHeight</a>() - <a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a21be402c76c560b6568dc16c2f1e38a8">mCoord</a>.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_coord.html#a048566d42deb6ba6701c81feb49df8d7">height</a>) / 2;</div> <div class="line"><a name="l00179"></a><span class="lineno"> 179</span>  need_update = <span class="keyword">true</span>;</div> <div class="line"><a name="l00180"></a><span class="lineno"> 180</span>  }</div> <div class="line"><a name="l00181"></a><span class="lineno"> 181</span> </div> <div class="line"><a name="l00182"></a><span class="lineno"> 182</span>  <span class="keywordflow">if</span> (need_update)</div> <div class="line"><a name="l00183"></a><span class="lineno"> 183</span>  {</div> <div class="line"><a name="l00184"></a><span class="lineno"> 184</span>  mCurrentCoord = <a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a21be402c76c560b6568dc16c2f1e38a8">mCoord</a>;</div> <div class="line"><a name="l00185"></a><span class="lineno"> 185</span>  <a class="code" href="class_my_g_u_i_1_1_polygonal_skin.html#a0e17106bf07dfb7816d4a6dcc11f24b4">_updateView</a>();</div> <div class="line"><a name="l00186"></a><span class="lineno"> 186</span>  }</div> <div class="line"><a name="l00187"></a><span class="lineno"> 187</span>  }</div> <div class="line"><a name="l00188"></a><span class="lineno"> 188</span> </div> <div class="line"><a name="l00189"></a><span class="lineno"><a class="line" href="class_my_g_u_i_1_1_polygonal_skin.html#a0e17106bf07dfb7816d4a6dcc11f24b4"> 189</a></span>  <span class="keywordtype">void</span> <a class="code" href="class_my_g_u_i_1_1_polygonal_skin.html#a0e17106bf07dfb7816d4a6dcc11f24b4">PolygonalSkin::_updateView</a>()</div> <div class="line"><a name="l00190"></a><span class="lineno"> 190</span>  {</div> <div class="line"><a name="l00191"></a><span class="lineno"> 191</span>  <span class="keywordtype">bool</span> margin = <a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a40912f54a25901b779ea49094e5f4ae0">_checkMargin</a>();</div> <div class="line"><a name="l00192"></a><span class="lineno"> 192</span> </div> <div class="line"><a name="l00193"></a><span class="lineno"> 193</span>  mEmptyView = ((0 >= <a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a0fb56854f3bb6d0f7f4f0e8f608fa37a">_getViewWidth</a>()) || (0 >= <a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#aeaa2e53babcc2e3fdc8809f6eb8825bf">_getViewHeight</a>()));</div> <div class="line"><a name="l00194"></a><span class="lineno"> 194</span> </div> <div class="line"><a name="l00195"></a><span class="lineno"> 195</span>  mGeometryOutdated = <span class="keyword">true</span>;</div> <div class="line"><a name="l00196"></a><span class="lineno"> 196</span> </div> <div class="line"><a name="l00197"></a><span class="lineno"> 197</span>  mCurrentCoord.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_coord.html#ac6eca9c1ea350ee19fc88e94d14c1a84">left</a> = <a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a21be402c76c560b6568dc16c2f1e38a8">mCoord</a>.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_coord.html#ac6eca9c1ea350ee19fc88e94d14c1a84">left</a> + <a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a25d27b33aeee62b852dc8009a7b942d7">mMargin</a>.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_rect.html#a869053f141a6ba6576ab5873be947147">left</a>;</div> <div class="line"><a name="l00198"></a><span class="lineno"> 198</span>  mCurrentCoord.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_coord.html#a5fb8d9e9b6249750e7c794f60ae5fdac">top</a> = <a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a21be402c76c560b6568dc16c2f1e38a8">mCoord</a>.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_coord.html#a5fb8d9e9b6249750e7c794f60ae5fdac">top</a> + <a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a25d27b33aeee62b852dc8009a7b942d7">mMargin</a>.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_rect.html#aefdb09abf6eae54ef9d09d24083eb046">top</a>;</div> <div class="line"><a name="l00199"></a><span class="lineno"> 199</span> </div> <div class="line"><a name="l00200"></a><span class="lineno"> 200</span>  <span class="comment">// вьюпорт стал битым</span></div> <div class="line"><a name="l00201"></a><span class="lineno"> 201</span>  <span class="keywordflow">if</span> (margin)</div> <div class="line"><a name="l00202"></a><span class="lineno"> 202</span>  {</div> <div class="line"><a name="l00203"></a><span class="lineno"> 203</span>  <span class="comment">// проверка на полный выход за границу</span></div> <div class="line"><a name="l00204"></a><span class="lineno"> 204</span>  <span class="keywordflow">if</span> (<a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a093bbcae9343e7fe54fb4769652dfc2f">_checkOutside</a>())</div> <div class="line"><a name="l00205"></a><span class="lineno"> 205</span>  {</div> <div class="line"><a name="l00206"></a><span class="lineno"> 206</span>  <span class="comment">// запоминаем текущее состояние</span></div> <div class="line"><a name="l00207"></a><span class="lineno"> 207</span>  <a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a0f0b7542dde743b020713654c50536ca">mIsMargin</a> = margin;</div> <div class="line"><a name="l00208"></a><span class="lineno"> 208</span> </div> <div class="line"><a name="l00209"></a><span class="lineno"> 209</span>  <span class="comment">// обновить перед выходом</span></div> <div class="line"><a name="l00210"></a><span class="lineno"> 210</span>  <span class="keywordflow">if</span> (<span class="keyword">nullptr</span> != mNode) mNode-><a class="code" href="class_my_g_u_i_1_1_i_layer_node.html#ae945eb84e47781d423e5b7c1964ef3ce">outOfDate</a>(mRenderItem);</div> <div class="line"><a name="l00211"></a><span class="lineno"> 211</span>  <span class="keywordflow">return</span>;</div> <div class="line"><a name="l00212"></a><span class="lineno"> 212</span>  }</div> <div class="line"><a name="l00213"></a><span class="lineno"> 213</span>  }</div> <div class="line"><a name="l00214"></a><span class="lineno"> 214</span> </div> <div class="line"><a name="l00215"></a><span class="lineno"> 215</span>  <span class="comment">// мы обрезаны или были обрезаны</span></div> <div class="line"><a name="l00216"></a><span class="lineno"> 216</span>  <span class="keywordflow">if</span> ((<a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a0f0b7542dde743b020713654c50536ca">mIsMargin</a>) || (margin))</div> <div class="line"><a name="l00217"></a><span class="lineno"> 217</span>  {</div> <div class="line"><a name="l00218"></a><span class="lineno"> 218</span>  mCurrentCoord.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_coord.html#a34c2a4a84487c83524c53f996f101382">width</a> = <a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a0fb56854f3bb6d0f7f4f0e8f608fa37a">_getViewWidth</a>();</div> <div class="line"><a name="l00219"></a><span class="lineno"> 219</span>  mCurrentCoord.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_coord.html#a048566d42deb6ba6701c81feb49df8d7">height</a> = <a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#aeaa2e53babcc2e3fdc8809f6eb8825bf">_getViewHeight</a>();</div> <div class="line"><a name="l00220"></a><span class="lineno"> 220</span>  }</div> <div class="line"><a name="l00221"></a><span class="lineno"> 221</span> </div> <div class="line"><a name="l00222"></a><span class="lineno"> 222</span>  <span class="comment">// запоминаем текущее состояние</span></div> <div class="line"><a name="l00223"></a><span class="lineno"> 223</span>  <a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a0f0b7542dde743b020713654c50536ca">mIsMargin</a> = margin;</div> <div class="line"><a name="l00224"></a><span class="lineno"> 224</span> </div> <div class="line"><a name="l00225"></a><span class="lineno"> 225</span>  <span class="keywordflow">if</span> (<span class="keyword">nullptr</span> != mNode)</div> <div class="line"><a name="l00226"></a><span class="lineno"> 226</span>  mNode-><a class="code" href="class_my_g_u_i_1_1_i_layer_node.html#ae945eb84e47781d423e5b7c1964ef3ce">outOfDate</a>(mRenderItem);</div> <div class="line"><a name="l00227"></a><span class="lineno"> 227</span>  }</div> <div class="line"><a name="l00228"></a><span class="lineno"> 228</span> </div> <div class="line"><a name="l00229"></a><span class="lineno"><a class="line" href="class_my_g_u_i_1_1_polygonal_skin.html#a6d9b5e35c4e243dc9e9d20d363d0a0eb"> 229</a></span>  <span class="keywordtype">void</span> <a class="code" href="class_my_g_u_i_1_1_polygonal_skin.html#a6d9b5e35c4e243dc9e9d20d363d0a0eb">PolygonalSkin::createDrawItem</a>(<a class="code" href="class_my_g_u_i_1_1_i_texture.html">ITexture</a>* _texture, <a class="code" href="class_my_g_u_i_1_1_i_layer_node.html">ILayerNode</a>* _node)</div> <div class="line"><a name="l00230"></a><span class="lineno"> 230</span>  {</div> <div class="line"><a name="l00231"></a><span class="lineno"> 231</span>  <a class="code" href="_my_g_u_i___diagnostic_8h.html#a3295dc6a84072a11aa2d316eed55ccf3">MYGUI_ASSERT</a>(!mRenderItem, <span class="stringliteral">"mRenderItem must be nullptr"</span>);</div> <div class="line"><a name="l00232"></a><span class="lineno"> 232</span> </div> <div class="line"><a name="l00233"></a><span class="lineno"> 233</span>  mNode = _node;</div> <div class="line"><a name="l00234"></a><span class="lineno"> 234</span>  mRenderItem = mNode-><a class="code" href="class_my_g_u_i_1_1_i_layer_node.html#aa8386c01b588b19ebe7617b37ca1d9ee">addToRenderItem</a>(_texture, <span class="keyword">true</span>, <span class="keyword">false</span>);</div> <div class="line"><a name="l00235"></a><span class="lineno"> 235</span>  mRenderItem-><a class="code" href="class_my_g_u_i_1_1_render_item.html#a008c2021e356b22551eee865eb16d725">addDrawItem</a>(<span class="keyword">this</span>, mVertexCount);</div> <div class="line"><a name="l00236"></a><span class="lineno"> 236</span>  }</div> <div class="line"><a name="l00237"></a><span class="lineno"> 237</span> </div> <div class="line"><a name="l00238"></a><span class="lineno"><a class="line" href="class_my_g_u_i_1_1_polygonal_skin.html#a7cfce4411521dca88fb88e83eab9baad"> 238</a></span>  <span class="keywordtype">void</span> <a class="code" href="class_my_g_u_i_1_1_polygonal_skin.html#a7cfce4411521dca88fb88e83eab9baad">PolygonalSkin::destroyDrawItem</a>()</div> <div class="line"><a name="l00239"></a><span class="lineno"> 239</span>  {</div> <div class="line"><a name="l00240"></a><span class="lineno"> 240</span>  <a class="code" href="_my_g_u_i___diagnostic_8h.html#a3295dc6a84072a11aa2d316eed55ccf3">MYGUI_ASSERT</a>(mRenderItem, <span class="stringliteral">"mRenderItem must be not nullptr"</span>);</div> <div class="line"><a name="l00241"></a><span class="lineno"> 241</span> </div> <div class="line"><a name="l00242"></a><span class="lineno"> 242</span>  mNode = <span class="keyword">nullptr</span>;</div> <div class="line"><a name="l00243"></a><span class="lineno"> 243</span>  mRenderItem-><a class="code" href="class_my_g_u_i_1_1_render_item.html#adc88d4cc694350cf2c7e90ba2ba84466">removeDrawItem</a>(<span class="keyword">this</span>);</div> <div class="line"><a name="l00244"></a><span class="lineno"> 244</span>  mRenderItem = <span class="keyword">nullptr</span>;</div> <div class="line"><a name="l00245"></a><span class="lineno"> 245</span>  }</div> <div class="line"><a name="l00246"></a><span class="lineno"> 246</span> </div> <div class="line"><a name="l00247"></a><span class="lineno"><a class="line" href="class_my_g_u_i_1_1_polygonal_skin.html#a11f1eb4f203dd65a6f885567fae4b099"> 247</a></span>  <span class="keywordtype">void</span> <a class="code" href="class_my_g_u_i_1_1_polygonal_skin.html#a11f1eb4f203dd65a6f885567fae4b099">PolygonalSkin::doRender</a>()</div> <div class="line"><a name="l00248"></a><span class="lineno"> 248</span>  {</div> <div class="line"><a name="l00249"></a><span class="lineno"> 249</span>  <span class="keywordflow">if</span> ((!<a class="code" href="class_my_g_u_i_1_1_i_sub_widget.html#aad1a1c35ec62988129fb142ba2fe2b1f">mVisible</a>) || mEmptyView)</div> <div class="line"><a name="l00250"></a><span class="lineno"> 250</span>  <span class="keywordflow">return</span>;</div> <div class="line"><a name="l00251"></a><span class="lineno"> 251</span> </div> <div class="line"><a name="l00252"></a><span class="lineno"> 252</span>  <a class="code" href="struct_my_g_u_i_1_1_vertex.html">Vertex</a>* verticies = mRenderItem-><a class="code" href="class_my_g_u_i_1_1_render_item.html#ae09f250318ce13fc95a9aa7d0041e012">getCurrentVertexBuffer</a>();</div> <div class="line"><a name="l00253"></a><span class="lineno"> 253</span> </div> <div class="line"><a name="l00254"></a><span class="lineno"> 254</span>  <span class="keyword">const</span> <a class="code" href="struct_my_g_u_i_1_1_render_target_info.html">RenderTargetInfo</a>& info = mRenderItem-><a class="code" href="class_my_g_u_i_1_1_render_item.html#a1d5cf58dc86704eac59c9727a6faa171">getRenderTarget</a>()-><a class="code" href="class_my_g_u_i_1_1_i_render_target.html#af65cdee0d7963da1e24c9081891ad690">getInfo</a>();</div> <div class="line"><a name="l00255"></a><span class="lineno"> 255</span> </div> <div class="line"><a name="l00256"></a><span class="lineno"> 256</span>  <span class="keywordtype">float</span> vertex_z = info.<a class="code" href="struct_my_g_u_i_1_1_render_target_info.html#ab2a4ef282172ba106d9793b52b28f65d">maximumDepth</a>;</div> <div class="line"><a name="l00257"></a><span class="lineno"> 257</span> </div> <div class="line"><a name="l00258"></a><span class="lineno"> 258</span>  <span class="keywordflow">if</span> (mGeometryOutdated)</div> <div class="line"><a name="l00259"></a><span class="lineno"> 259</span>  {</div> <div class="line"><a name="l00260"></a><span class="lineno"> 260</span>  <a class="code" href="class_my_g_u_i_1_1_polygonal_skin.html#a27080fb346ffd409c15cbbc025ccd255">_rebuildGeometry</a>();</div> <div class="line"><a name="l00261"></a><span class="lineno"> 261</span>  }</div> <div class="line"><a name="l00262"></a><span class="lineno"> 262</span> </div> <div class="line"><a name="l00263"></a><span class="lineno"> 263</span>  <span class="keywordtype">size_t</span> size = mResultVerticiesPos.size();</div> <div class="line"><a name="l00264"></a><span class="lineno"> 264</span> </div> <div class="line"><a name="l00265"></a><span class="lineno"> 265</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i < size; ++i)</div> <div class="line"><a name="l00266"></a><span class="lineno"> 266</span>  {</div> <div class="line"><a name="l00267"></a><span class="lineno"> 267</span>  verticies[i].<a class="code" href="struct_my_g_u_i_1_1_vertex.html#a5d3fa59b901bb44631c8826ca15e9767">set</a>(mResultVerticiesPos[i].left, mResultVerticiesPos[i].top, vertex_z, mResultVerticiesUV[i].left, mResultVerticiesUV[i].top, mCurrentColour);</div> <div class="line"><a name="l00268"></a><span class="lineno"> 268</span>  }</div> <div class="line"><a name="l00269"></a><span class="lineno"> 269</span> </div> <div class="line"><a name="l00270"></a><span class="lineno"> 270</span>  mRenderItem-><a class="code" href="class_my_g_u_i_1_1_render_item.html#aff09bae5e0a6c2da695dde441f3d9652">setLastVertexCount</a>(size);</div> <div class="line"><a name="l00271"></a><span class="lineno"> 271</span>  }</div> <div class="line"><a name="l00272"></a><span class="lineno"> 272</span> </div> <div class="line"><a name="l00273"></a><span class="lineno"><a class="line" href="class_my_g_u_i_1_1_polygonal_skin.html#a62f57f2bf49e4a0c1045cac22419fc82"> 273</a></span>  <span class="keywordtype">void</span> <a class="code" href="class_my_g_u_i_1_1_polygonal_skin.html#a62f57f2bf49e4a0c1045cac22419fc82">PolygonalSkin::_setColour</a>(<span class="keyword">const</span> <a class="code" href="struct_my_g_u_i_1_1_colour.html">Colour</a>& _value)</div> <div class="line"><a name="l00274"></a><span class="lineno"> 274</span>  {</div> <div class="line"><a name="l00275"></a><span class="lineno"> 275</span>  <a class="code" href="namespace_my_g_u_i.html#ae11a5769e2d89121966117b44b09625f">uint32</a> colour = <a class="code" href="namespace_my_g_u_i_1_1texture__utility.html#aa9e5d6c7feaa5c8752b89ce26ca63eef">texture_utility::toColourARGB</a>(_value);</div> <div class="line"><a name="l00276"></a><span class="lineno"> 276</span>  <a class="code" href="namespace_my_g_u_i_1_1texture__utility.html#a8a12de1020d83dfc9530fbf774517fec">texture_utility::convertColour</a>(colour, mVertexFormat);</div> <div class="line"><a name="l00277"></a><span class="lineno"> 277</span>  mCurrentColour = (colour & 0x00FFFFFF) | (mCurrentColour & 0xFF000000);</div> <div class="line"><a name="l00278"></a><span class="lineno"> 278</span> </div> <div class="line"><a name="l00279"></a><span class="lineno"> 279</span>  <span class="keywordflow">if</span> (<span class="keyword">nullptr</span> != mNode)</div> <div class="line"><a name="l00280"></a><span class="lineno"> 280</span>  mNode-><a class="code" href="class_my_g_u_i_1_1_i_layer_node.html#ae945eb84e47781d423e5b7c1964ef3ce">outOfDate</a>(mRenderItem);</div> <div class="line"><a name="l00281"></a><span class="lineno"> 281</span>  }</div> <div class="line"><a name="l00282"></a><span class="lineno"> 282</span> </div> <div class="line"><a name="l00283"></a><span class="lineno"><a class="line" href="class_my_g_u_i_1_1_polygonal_skin.html#a14cc739661f9f237c5e55b6b69729d2d"> 283</a></span>  <span class="keywordtype">void</span> <a class="code" href="class_my_g_u_i_1_1_polygonal_skin.html#a14cc739661f9f237c5e55b6b69729d2d">PolygonalSkin::setStateData</a>(<a class="code" href="class_my_g_u_i_1_1_i_state_info.html">IStateInfo</a>* _data)</div> <div class="line"><a name="l00284"></a><span class="lineno"> 284</span>  {</div> <div class="line"><a name="l00285"></a><span class="lineno"> 285</span>  <a class="code" href="class_my_g_u_i_1_1_polygonal_skin.html#a6384f936fc9cf0de451d2a95dd6f5545">_setUVSet</a>(_data-><a class="code" href="class_my_g_u_i_1_1_i_object.html#a45ac01b52ae0c38c767eff122cb66010">castType</a><<a class="code" href="class_my_g_u_i_1_1_sub_skin_state_info.html">SubSkinStateInfo</a>>()-><a class="code" href="class_my_g_u_i_1_1_sub_skin_state_info.html#ab0b4de6d06a71c103e56dad7a77f2a6a">getRect</a>());</div> <div class="line"><a name="l00286"></a><span class="lineno"> 286</span>  }</div> <div class="line"><a name="l00287"></a><span class="lineno"> 287</span> </div> <div class="line"><a name="l00288"></a><span class="lineno"><a class="line" href="class_my_g_u_i_1_1_polygonal_skin.html#a6384f936fc9cf0de451d2a95dd6f5545"> 288</a></span>  <span class="keywordtype">void</span> <a class="code" href="class_my_g_u_i_1_1_polygonal_skin.html#a6384f936fc9cf0de451d2a95dd6f5545">PolygonalSkin::_setUVSet</a>(<span class="keyword">const</span> <a class="code" href="struct_my_g_u_i_1_1types_1_1_t_rect.html">FloatRect</a>& _rect)</div> <div class="line"><a name="l00289"></a><span class="lineno"> 289</span>  {</div> <div class="line"><a name="l00290"></a><span class="lineno"> 290</span>  mCurrentTexture = _rect;</div> <div class="line"><a name="l00291"></a><span class="lineno"> 291</span> </div> <div class="line"><a name="l00292"></a><span class="lineno"> 292</span>  mGeometryOutdated = <span class="keyword">true</span>;</div> <div class="line"><a name="l00293"></a><span class="lineno"> 293</span> </div> <div class="line"><a name="l00294"></a><span class="lineno"> 294</span>  <span class="keywordflow">if</span> (<span class="keyword">nullptr</span> != mNode)</div> <div class="line"><a name="l00295"></a><span class="lineno"> 295</span>  mNode-><a class="code" href="class_my_g_u_i_1_1_i_layer_node.html#ae945eb84e47781d423e5b7c1964ef3ce">outOfDate</a>(mRenderItem);</div> <div class="line"><a name="l00296"></a><span class="lineno"> 296</span>  }</div> <div class="line"><a name="l00297"></a><span class="lineno"> 297</span> </div> <div class="line"><a name="l00298"></a><span class="lineno"><a class="line" href="class_my_g_u_i_1_1_polygonal_skin.html#a27080fb346ffd409c15cbbc025ccd255"> 298</a></span>  <span class="keywordtype">void</span> <a class="code" href="class_my_g_u_i_1_1_polygonal_skin.html#a27080fb346ffd409c15cbbc025ccd255">PolygonalSkin::_rebuildGeometry</a>()</div> <div class="line"><a name="l00299"></a><span class="lineno"> 299</span>  {</div> <div class="line"><a name="l00300"></a><span class="lineno"> 300</span>  <span class="keywordflow">if</span> (mLinePoints.size() < 2) <span class="keywordflow">return</span>;</div> <div class="line"><a name="l00301"></a><span class="lineno"> 301</span>  <span class="keywordflow">if</span> (!mRenderItem || !mRenderItem-><a class="code" href="class_my_g_u_i_1_1_render_item.html#a1d5cf58dc86704eac59c9727a6faa171">getRenderTarget</a>()) <span class="keywordflow">return</span>;</div> <div class="line"><a name="l00302"></a><span class="lineno"> 302</span> </div> <div class="line"><a name="l00303"></a><span class="lineno"> 303</span>  mGeometryOutdated = <span class="keyword">false</span>;</div> <div class="line"><a name="l00304"></a><span class="lineno"> 304</span> </div> <div class="line"><a name="l00305"></a><span class="lineno"> 305</span>  <span class="comment">// using mCurrentCoord as rectangle where we draw polygons</span></div> <div class="line"><a name="l00306"></a><span class="lineno"> 306</span> </div> <div class="line"><a name="l00307"></a><span class="lineno"> 307</span>  <span class="comment">// base texture coordinates</span></div> <div class="line"><a name="l00308"></a><span class="lineno"> 308</span>  <a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html">FloatPoint</a> baseVerticiesUV[4] =</div> <div class="line"><a name="l00309"></a><span class="lineno"> 309</span>  {</div> <div class="line"><a name="l00310"></a><span class="lineno"> 310</span>  <a class="code" href="namespace_my_g_u_i.html#a36ccc28061ff6221ebab1aaa160cbb60">FloatPoint</a>(mCurrentTexture.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_rect.html#a869053f141a6ba6576ab5873be947147">left</a>, mCurrentTexture.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_rect.html#aefdb09abf6eae54ef9d09d24083eb046">top</a>),</div> <div class="line"><a name="l00311"></a><span class="lineno"> 311</span>  <a class="code" href="namespace_my_g_u_i.html#a36ccc28061ff6221ebab1aaa160cbb60">FloatPoint</a>(mCurrentTexture.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_rect.html#a1679f2f87a97799e4a153fc6ff0ab796">right</a>, mCurrentTexture.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_rect.html#aefdb09abf6eae54ef9d09d24083eb046">top</a>),</div> <div class="line"><a name="l00312"></a><span class="lineno"> 312</span>  <a class="code" href="namespace_my_g_u_i.html#a36ccc28061ff6221ebab1aaa160cbb60">FloatPoint</a>(mCurrentTexture.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_rect.html#a1679f2f87a97799e4a153fc6ff0ab796">right</a>, mCurrentTexture.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_rect.html#aba8aa2f756035199f10632a22ff0ec6a">bottom</a>),</div> <div class="line"><a name="l00313"></a><span class="lineno"> 313</span>  <a class="code" href="namespace_my_g_u_i.html#a36ccc28061ff6221ebab1aaa160cbb60">FloatPoint</a>(mCurrentTexture.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_rect.html#a869053f141a6ba6576ab5873be947147">left</a>, mCurrentTexture.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_rect.html#aba8aa2f756035199f10632a22ff0ec6a">bottom</a>)</div> <div class="line"><a name="l00314"></a><span class="lineno"> 314</span>  };</div> <div class="line"><a name="l00315"></a><span class="lineno"> 315</span> </div> <div class="line"><a name="l00316"></a><span class="lineno"> 316</span>  <span class="comment">// UV vectors</span></div> <div class="line"><a name="l00317"></a><span class="lineno"> 317</span>  <a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html">FloatPoint</a> vectorU = baseVerticiesUV[1] - baseVerticiesUV[0];</div> <div class="line"><a name="l00318"></a><span class="lineno"> 318</span>  <a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html">FloatPoint</a> vectorV = baseVerticiesUV[3] - baseVerticiesUV[0];</div> <div class="line"><a name="l00319"></a><span class="lineno"> 319</span> </div> <div class="line"><a name="l00320"></a><span class="lineno"> 320</span>  <a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html">FloatPoint</a> vertex1;</div> <div class="line"><a name="l00321"></a><span class="lineno"> 321</span>  <a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html">FloatPoint</a> vertex2;</div> <div class="line"><a name="l00322"></a><span class="lineno"> 322</span>  mResultVerticiesPos.clear();</div> <div class="line"><a name="l00323"></a><span class="lineno"> 323</span>  mResultVerticiesUV.clear();</div> <div class="line"><a name="l00324"></a><span class="lineno"> 324</span>  <span class="comment">// add first two verticies</span></div> <div class="line"><a name="l00325"></a><span class="lineno"> 325</span>  <a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html">FloatPoint</a> normal = <a class="code" href="class_my_g_u_i_1_1_polygonal_skin.html#a4b2d31744985577103926dbbf5a7ef28">_getPerpendicular</a>(mLinePoints[0], mLinePoints[1]);</div> <div class="line"><a name="l00326"></a><span class="lineno"> 326</span> </div> <div class="line"><a name="l00327"></a><span class="lineno"> 327</span>  <a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html">FloatPoint</a> points[2] = {mLinePoints[0] + normal, mLinePoints[0] - normal};</div> <div class="line"><a name="l00328"></a><span class="lineno"> 328</span>  <a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html">FloatPoint</a> pointsUV[2] = {baseVerticiesUV[0], baseVerticiesUV[3]};</div> <div class="line"><a name="l00329"></a><span class="lineno"> 329</span>  <span class="comment">// add other verticies</span></div> <div class="line"><a name="l00330"></a><span class="lineno"> 330</span>  <span class="keywordtype">float</span> currentLength = 0.0f;</div> <div class="line"><a name="l00331"></a><span class="lineno"> 331</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 1; i < mLinePoints.size(); ++i)</div> <div class="line"><a name="l00332"></a><span class="lineno"> 332</span>  {</div> <div class="line"><a name="l00333"></a><span class="lineno"> 333</span>  currentLength += <a class="code" href="namespace_my_g_u_i.html#aeab5768bb4b329fef1437fdb3e59e996">len</a>(mLinePoints[i - 1].left - mLinePoints[i].left, mLinePoints[i - 1].top - mLinePoints[i].top);</div> <div class="line"><a name="l00334"></a><span class="lineno"> 334</span> </div> <div class="line"><a name="l00335"></a><span class="lineno"> 335</span>  <span class="comment">// getting normal between previous and next point</span></div> <div class="line"><a name="l00336"></a><span class="lineno"> 336</span>  <span class="keywordflow">if</span> (i != mLinePoints.size() - 1)</div> <div class="line"><a name="l00337"></a><span class="lineno"> 337</span>  normal = <a class="code" href="class_my_g_u_i_1_1_polygonal_skin.html#a6255e43bad6e9a3b31facfcd415a661e">_getMiddleLine</a>(mLinePoints[i - 1], mLinePoints[i + 1], mLinePoints[i]);</div> <div class="line"><a name="l00338"></a><span class="lineno"> 338</span>  <span class="keywordflow">else</span></div> <div class="line"><a name="l00339"></a><span class="lineno"> 339</span>  normal = <a class="code" href="class_my_g_u_i_1_1_polygonal_skin.html#a4b2d31744985577103926dbbf5a7ef28">_getPerpendicular</a>(mLinePoints[i - 1], mLinePoints[i]);</div> <div class="line"><a name="l00340"></a><span class="lineno"> 340</span> </div> <div class="line"><a name="l00341"></a><span class="lineno"> 341</span>  <span class="keywordtype">bool</span> edge = <span class="keyword">false</span>;</div> <div class="line"><a name="l00342"></a><span class="lineno"> 342</span>  <span class="keywordtype">bool</span> sharp = <span class="keyword">false</span>;</div> <div class="line"><a name="l00343"></a><span class="lineno"> 343</span>  <span class="keywordflow">if</span> (normal == <a class="code" href="namespace_my_g_u_i.html#a36ccc28061ff6221ebab1aaa160cbb60">FloatPoint</a>() <span class="comment">/*|| len(normal.left, normal.top) > mLineWidth * 2*/</span>)</div> <div class="line"><a name="l00344"></a><span class="lineno"> 344</span>  {</div> <div class="line"><a name="l00345"></a><span class="lineno"> 345</span>  edge = <span class="keyword">true</span>;</div> <div class="line"><a name="l00346"></a><span class="lineno"> 346</span>  normal = <a class="code" href="class_my_g_u_i_1_1_polygonal_skin.html#a4b2d31744985577103926dbbf5a7ef28">_getPerpendicular</a>(mLinePoints[i - 1], mLinePoints[i]);</div> <div class="line"><a name="l00347"></a><span class="lineno"> 347</span>  }</div> <div class="line"><a name="l00348"></a><span class="lineno"> 348</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="namespace_my_g_u_i.html#aeab5768bb4b329fef1437fdb3e59e996">len</a>(normal.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#a4145982830e0c6ccb93cd9f003106933">left</a>, normal.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#adeaf740ccbf49cf5e77de70f941d4ff8">top</a>) > mLineWidth * 1.5)</div> <div class="line"><a name="l00349"></a><span class="lineno"> 349</span>  {</div> <div class="line"><a name="l00350"></a><span class="lineno"> 350</span>  sharp = <span class="keyword">true</span>;</div> <div class="line"><a name="l00351"></a><span class="lineno"> 351</span>  normal = <a class="code" href="class_my_g_u_i_1_1_polygonal_skin.html#a4b2d31744985577103926dbbf5a7ef28">_getPerpendicular</a>(mLinePoints[i - 1], mLinePoints[i]);</div> <div class="line"><a name="l00352"></a><span class="lineno"> 352</span>  }</div> <div class="line"><a name="l00353"></a><span class="lineno"> 353</span> </div> <div class="line"><a name="l00354"></a><span class="lineno"> 354</span>  <span class="comment">// check orientation</span></div> <div class="line"><a name="l00355"></a><span class="lineno"> 355</span>  <a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html">FloatPoint</a> lineDir = mLinePoints[i] - mLinePoints[i - 1];</div> <div class="line"><a name="l00356"></a><span class="lineno"> 356</span>  <span class="keywordflow">if</span> (lineDir.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#a4145982830e0c6ccb93cd9f003106933">left</a> * normal.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#adeaf740ccbf49cf5e77de70f941d4ff8">top</a> - lineDir.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#adeaf740ccbf49cf5e77de70f941d4ff8">top</a> * normal.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#a4145982830e0c6ccb93cd9f003106933">left</a> < 0)</div> <div class="line"><a name="l00357"></a><span class="lineno"> 357</span>  {</div> <div class="line"><a name="l00358"></a><span class="lineno"> 358</span>  normal.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#a4145982830e0c6ccb93cd9f003106933">left</a> = -normal.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#a4145982830e0c6ccb93cd9f003106933">left</a>;</div> <div class="line"><a name="l00359"></a><span class="lineno"> 359</span>  normal.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#adeaf740ccbf49cf5e77de70f941d4ff8">top</a> = -normal.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#adeaf740ccbf49cf5e77de70f941d4ff8">top</a>;</div> <div class="line"><a name="l00360"></a><span class="lineno"> 360</span>  }</div> <div class="line"><a name="l00361"></a><span class="lineno"> 361</span> </div> <div class="line"><a name="l00362"></a><span class="lineno"> 362</span>  <a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html">FloatPoint</a> UVoffset(currentLength / mLineLength * vectorU.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#a4145982830e0c6ccb93cd9f003106933">left</a>, currentLength / mLineLength * vectorU.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#adeaf740ccbf49cf5e77de70f941d4ff8">top</a>);</div> <div class="line"><a name="l00363"></a><span class="lineno"> 363</span> </div> <div class="line"><a name="l00364"></a><span class="lineno"> 364</span>  mResultVerticiesPos.push_back(points[0]);</div> <div class="line"><a name="l00365"></a><span class="lineno"> 365</span>  mResultVerticiesPos.push_back(points[1]);</div> <div class="line"><a name="l00366"></a><span class="lineno"> 366</span>  mResultVerticiesPos.push_back(mLinePoints[i] + normal);</div> <div class="line"><a name="l00367"></a><span class="lineno"> 367</span>  mResultVerticiesUV.push_back(pointsUV[0]);</div> <div class="line"><a name="l00368"></a><span class="lineno"> 368</span>  mResultVerticiesUV.push_back(pointsUV[1]);</div> <div class="line"><a name="l00369"></a><span class="lineno"> 369</span>  mResultVerticiesUV.push_back(baseVerticiesUV[0] + UVoffset);</div> <div class="line"><a name="l00370"></a><span class="lineno"> 370</span> </div> <div class="line"><a name="l00371"></a><span class="lineno"> 371</span>  mResultVerticiesPos.push_back(points[1]);</div> <div class="line"><a name="l00372"></a><span class="lineno"> 372</span>  mResultVerticiesPos.push_back(mLinePoints[i] - normal);</div> <div class="line"><a name="l00373"></a><span class="lineno"> 373</span>  mResultVerticiesPos.push_back(mLinePoints[i] + normal);</div> <div class="line"><a name="l00374"></a><span class="lineno"> 374</span>  mResultVerticiesUV.push_back(pointsUV[1]);</div> <div class="line"><a name="l00375"></a><span class="lineno"> 375</span>  mResultVerticiesUV.push_back(baseVerticiesUV[3] + UVoffset);</div> <div class="line"><a name="l00376"></a><span class="lineno"> 376</span>  mResultVerticiesUV.push_back(baseVerticiesUV[0] + UVoffset);</div> <div class="line"><a name="l00377"></a><span class="lineno"> 377</span> </div> <div class="line"><a name="l00378"></a><span class="lineno"> 378</span>  points[edge ? 1 : 0] = mLinePoints[i] + normal;</div> <div class="line"><a name="l00379"></a><span class="lineno"> 379</span>  points[edge ? 0 : 1] = mLinePoints[i] - normal;</div> <div class="line"><a name="l00380"></a><span class="lineno"> 380</span>  pointsUV[0] = baseVerticiesUV[0] + UVoffset;</div> <div class="line"><a name="l00381"></a><span class="lineno"> 381</span>  pointsUV[1] = baseVerticiesUV[3] + UVoffset;</div> <div class="line"><a name="l00382"></a><span class="lineno"> 382</span> </div> <div class="line"><a name="l00383"></a><span class="lineno"> 383</span>  <span class="keywordflow">if</span> (sharp)</div> <div class="line"><a name="l00384"></a><span class="lineno"> 384</span>  {</div> <div class="line"><a name="l00385"></a><span class="lineno"> 385</span>  normal = <a class="code" href="class_my_g_u_i_1_1_polygonal_skin.html#a6255e43bad6e9a3b31facfcd415a661e">_getMiddleLine</a>(mLinePoints[i - 1], mLinePoints[i + 1], mLinePoints[i]);</div> <div class="line"><a name="l00386"></a><span class="lineno"> 386</span> </div> <div class="line"><a name="l00387"></a><span class="lineno"> 387</span>  <span class="keywordtype">float</span> sharpness = <a class="code" href="namespace_my_g_u_i.html#aeab5768bb4b329fef1437fdb3e59e996">len</a>(normal.left, normal.top) / mLineWidth;</div> <div class="line"><a name="l00388"></a><span class="lineno"> 388</span> </div> <div class="line"><a name="l00389"></a><span class="lineno"> 389</span>  <span class="keywordtype">float</span> length = <a class="code" href="namespace_my_g_u_i.html#aeab5768bb4b329fef1437fdb3e59e996">len</a>(normal.left, normal.top);</div> <div class="line"><a name="l00390"></a><span class="lineno"> 390</span>  normal.left *= 2 * mLineWidth / length / (sharpness - 0.5f);</div> <div class="line"><a name="l00391"></a><span class="lineno"> 391</span>  normal.top *= 2 * mLineWidth / length / (sharpness - 0.5f);</div> <div class="line"><a name="l00392"></a><span class="lineno"> 392</span> </div> <div class="line"><a name="l00393"></a><span class="lineno"> 393</span>  <span class="comment">// check orientation</span></div> <div class="line"><a name="l00394"></a><span class="lineno"> 394</span>  lineDir = mLinePoints[i] - mLinePoints[i - 1];</div> <div class="line"><a name="l00395"></a><span class="lineno"> 395</span>  <span class="keywordflow">if</span> (lineDir.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#a4145982830e0c6ccb93cd9f003106933">left</a> * normal.top - lineDir.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#adeaf740ccbf49cf5e77de70f941d4ff8">top</a> * normal.left < 0)</div> <div class="line"><a name="l00396"></a><span class="lineno"> 396</span>  {</div> <div class="line"><a name="l00397"></a><span class="lineno"> 397</span>  normal.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#a4145982830e0c6ccb93cd9f003106933">left</a> = -normal.left;</div> <div class="line"><a name="l00398"></a><span class="lineno"> 398</span>  normal.top = -normal.top;</div> <div class="line"><a name="l00399"></a><span class="lineno"> 399</span>  }</div> <div class="line"><a name="l00400"></a><span class="lineno"> 400</span>  <a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html">FloatPoint</a> lineDir1 = mLinePoints[i] - mLinePoints[i - 1];</div> <div class="line"><a name="l00401"></a><span class="lineno"> 401</span>  <a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html">FloatPoint</a> lineDir2 = mLinePoints[i + 1] - mLinePoints[i];</div> <div class="line"><a name="l00402"></a><span class="lineno"> 402</span>  <span class="keywordflow">if</span> (lineDir1.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#a4145982830e0c6ccb93cd9f003106933">left</a> * lineDir2.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#adeaf740ccbf49cf5e77de70f941d4ff8">top</a> - lineDir1.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#adeaf740ccbf49cf5e77de70f941d4ff8">top</a> * lineDir2.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#a4145982830e0c6ccb93cd9f003106933">left</a> > 0)</div> <div class="line"><a name="l00403"></a><span class="lineno"> 403</span>  {</div> <div class="line"><a name="l00404"></a><span class="lineno"> 404</span>  normal.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#a4145982830e0c6ccb93cd9f003106933">left</a> = -normal.left;</div> <div class="line"><a name="l00405"></a><span class="lineno"> 405</span>  normal.top = -normal.top;</div> <div class="line"><a name="l00406"></a><span class="lineno"> 406</span>  }</div> <div class="line"><a name="l00407"></a><span class="lineno"> 407</span> </div> <div class="line"><a name="l00408"></a><span class="lineno"> 408</span>  <span class="comment">// check orientation</span></div> <div class="line"><a name="l00409"></a><span class="lineno"> 409</span>  <a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html">FloatPoint</a> normal2 = <a class="code" href="class_my_g_u_i_1_1_polygonal_skin.html#a4b2d31744985577103926dbbf5a7ef28">_getPerpendicular</a>(mLinePoints[i], mLinePoints[i + 1]);</div> <div class="line"><a name="l00410"></a><span class="lineno"> 410</span>  lineDir = mLinePoints[i - 1] - mLinePoints[i];</div> <div class="line"><a name="l00411"></a><span class="lineno"> 411</span>  <span class="keywordflow">if</span> ((lineDir.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#a4145982830e0c6ccb93cd9f003106933">left</a> * normal2.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#adeaf740ccbf49cf5e77de70f941d4ff8">top</a> - lineDir.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#adeaf740ccbf49cf5e77de70f941d4ff8">top</a> * normal2.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#a4145982830e0c6ccb93cd9f003106933">left</a> < 0))</div> <div class="line"><a name="l00412"></a><span class="lineno"> 412</span>  {</div> <div class="line"><a name="l00413"></a><span class="lineno"> 413</span>  normal2.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#a4145982830e0c6ccb93cd9f003106933">left</a> = -normal2.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#a4145982830e0c6ccb93cd9f003106933">left</a>;</div> <div class="line"><a name="l00414"></a><span class="lineno"> 414</span>  normal2.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#adeaf740ccbf49cf5e77de70f941d4ff8">top</a> = -normal2.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#adeaf740ccbf49cf5e77de70f941d4ff8">top</a>;</div> <div class="line"><a name="l00415"></a><span class="lineno"> 415</span>  }</div> <div class="line"><a name="l00416"></a><span class="lineno"> 416</span> </div> <div class="line"><a name="l00417"></a><span class="lineno"> 417</span>  <a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html">FloatPoint</a> UVcenter((baseVerticiesUV[0].left + baseVerticiesUV[3].left) / 2, (baseVerticiesUV[0].top + baseVerticiesUV[3].top) / 2);</div> <div class="line"><a name="l00418"></a><span class="lineno"> 418</span>  mResultVerticiesPos.push_back(points[0]);</div> <div class="line"><a name="l00419"></a><span class="lineno"> 419</span>  mResultVerticiesPos.push_back(mLinePoints[i] + normal);</div> <div class="line"><a name="l00420"></a><span class="lineno"> 420</span>  mResultVerticiesPos.push_back(mLinePoints[i]);</div> <div class="line"><a name="l00421"></a><span class="lineno"> 421</span>  mResultVerticiesUV.push_back(pointsUV[0]);</div> <div class="line"><a name="l00422"></a><span class="lineno"> 422</span>  mResultVerticiesUV.push_back(baseVerticiesUV[0] + UVoffset);</div> <div class="line"><a name="l00423"></a><span class="lineno"> 423</span>  mResultVerticiesUV.push_back(UVcenter + UVoffset);</div> <div class="line"><a name="l00424"></a><span class="lineno"> 424</span> </div> <div class="line"><a name="l00425"></a><span class="lineno"> 425</span>  mResultVerticiesPos.push_back(mLinePoints[i] + normal);</div> <div class="line"><a name="l00426"></a><span class="lineno"> 426</span>  mResultVerticiesPos.push_back(mLinePoints[i] + normal2);</div> <div class="line"><a name="l00427"></a><span class="lineno"> 427</span>  mResultVerticiesPos.push_back(mLinePoints[i]);</div> <div class="line"><a name="l00428"></a><span class="lineno"> 428</span>  mResultVerticiesUV.push_back(baseVerticiesUV[0] + UVoffset);</div> <div class="line"><a name="l00429"></a><span class="lineno"> 429</span>  mResultVerticiesUV.push_back(baseVerticiesUV[0] + UVoffset);</div> <div class="line"><a name="l00430"></a><span class="lineno"> 430</span>  mResultVerticiesUV.push_back(UVcenter + UVoffset);</div> <div class="line"><a name="l00431"></a><span class="lineno"> 431</span> </div> <div class="line"><a name="l00432"></a><span class="lineno"> 432</span>  points[0] = mLinePoints[i] + normal2;</div> <div class="line"><a name="l00433"></a><span class="lineno"> 433</span>  points[1] = mLinePoints[i] - normal2;</div> <div class="line"><a name="l00434"></a><span class="lineno"> 434</span>  pointsUV[0] = baseVerticiesUV[0] + UVoffset;</div> <div class="line"><a name="l00435"></a><span class="lineno"> 435</span>  pointsUV[1] = baseVerticiesUV[3] + UVoffset;</div> <div class="line"><a name="l00436"></a><span class="lineno"> 436</span>  }</div> <div class="line"><a name="l00437"></a><span class="lineno"> 437</span>  }</div> <div class="line"><a name="l00438"></a><span class="lineno"> 438</span> </div> <div class="line"><a name="l00439"></a><span class="lineno"> 439</span> </div> <div class="line"><a name="l00440"></a><span class="lineno"> 440</span> <span class="preprocessor">#ifndef MYGUI_NO_POLYGONAL_SKIN_CROPPING</span></div> <div class="line"><a name="l00441"></a><span class="lineno"> 441</span> <span class="preprocessor"></span> <span class="comment">// crop triangles</span></div> <div class="line"><a name="l00442"></a><span class="lineno"> 442</span>  <a class="code" href="struct_my_g_u_i_1_1types_1_1_t_coord.html">IntCoord</a> cropRectangle(</div> <div class="line"><a name="l00443"></a><span class="lineno"> 443</span>  mCurrentCoord.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_coord.html#ac6eca9c1ea350ee19fc88e94d14c1a84">left</a>,</div> <div class="line"><a name="l00444"></a><span class="lineno"> 444</span>  mCurrentCoord.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_coord.html#a5fb8d9e9b6249750e7c794f60ae5fdac">top</a>,</div> <div class="line"><a name="l00445"></a><span class="lineno"> 445</span>  mCurrentCoord.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_coord.html#a34c2a4a84487c83524c53f996f101382">width</a>,</div> <div class="line"><a name="l00446"></a><span class="lineno"> 446</span>  mCurrentCoord.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_coord.html#a048566d42deb6ba6701c81feb49df8d7">height</a></div> <div class="line"><a name="l00447"></a><span class="lineno"> 447</span>  );</div> <div class="line"><a name="l00448"></a><span class="lineno"> 448</span> </div> <div class="line"><a name="l00449"></a><span class="lineno"> 449</span>  <a class="code" href="namespace_my_g_u_i.html#a60a1273b6fdef7b0c8cecd4cc90b7e5b">VectorFloatPoint</a> newResultVerticiesPos;</div> <div class="line"><a name="l00450"></a><span class="lineno"> 450</span>  <a class="code" href="namespace_my_g_u_i.html#a60a1273b6fdef7b0c8cecd4cc90b7e5b">VectorFloatPoint</a> newResultVerticiesUV;</div> <div class="line"><a name="l00451"></a><span class="lineno"> 451</span>  newResultVerticiesPos.reserve(mResultVerticiesPos.size());</div> <div class="line"><a name="l00452"></a><span class="lineno"> 452</span>  newResultVerticiesUV.reserve(mResultVerticiesPos.size());</div> <div class="line"><a name="l00453"></a><span class="lineno"> 453</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i < mResultVerticiesPos.size(); i += 3)</div> <div class="line"><a name="l00454"></a><span class="lineno"> 454</span>  {</div> <div class="line"><a name="l00455"></a><span class="lineno"> 455</span>  <a class="code" href="namespace_my_g_u_i.html#a60a1273b6fdef7b0c8cecd4cc90b7e5b">VectorFloatPoint</a> croppedTriangle =</div> <div class="line"><a name="l00456"></a><span class="lineno"> 456</span>  <a class="code" href="namespace_my_g_u_i_1_1geometry__utility.html#aa57731cdbb0d1cc61a2dd71bfa1e153d">geometry_utility::cropPolygon</a>(&mResultVerticiesPos[i], 3, cropRectangle);</div> <div class="line"><a name="l00457"></a><span class="lineno"> 457</span>  <span class="keywordflow">if</span> (!croppedTriangle.empty())</div> <div class="line"><a name="l00458"></a><span class="lineno"> 458</span>  {</div> <div class="line"><a name="l00459"></a><span class="lineno"> 459</span>  <a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html">FloatPoint</a> v0 = mResultVerticiesUV[i + 2] - mResultVerticiesUV[i];</div> <div class="line"><a name="l00460"></a><span class="lineno"> 460</span>  <a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html">FloatPoint</a> v1 = mResultVerticiesUV[i + 1] - mResultVerticiesUV[i];</div> <div class="line"><a name="l00461"></a><span class="lineno"> 461</span> </div> <div class="line"><a name="l00462"></a><span class="lineno"> 462</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> j = 1; j < croppedTriangle.size() - 1; ++j)</div> <div class="line"><a name="l00463"></a><span class="lineno"> 463</span>  {</div> <div class="line"><a name="l00464"></a><span class="lineno"> 464</span>  newResultVerticiesPos.push_back(croppedTriangle[0]);</div> <div class="line"><a name="l00465"></a><span class="lineno"> 465</span>  newResultVerticiesPos.push_back(croppedTriangle[j]);</div> <div class="line"><a name="l00466"></a><span class="lineno"> 466</span>  newResultVerticiesPos.push_back(croppedTriangle[j + 1]);</div> <div class="line"><a name="l00467"></a><span class="lineno"> 467</span> </div> <div class="line"><a name="l00468"></a><span class="lineno"> 468</span>  <span class="comment">// calculate UV</span></div> <div class="line"><a name="l00469"></a><span class="lineno"> 469</span>  <a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html">FloatPoint</a> point;</div> <div class="line"><a name="l00470"></a><span class="lineno"> 470</span>  point = <a class="code" href="namespace_my_g_u_i_1_1geometry__utility.html#a5b4962ede2d90dbda03a51b1f9a3047f">geometry_utility::getPositionInsideRect</a>(croppedTriangle[0], mResultVerticiesPos[i], mResultVerticiesPos[i + 1], mResultVerticiesPos[i + 2]);</div> <div class="line"><a name="l00471"></a><span class="lineno"> 471</span>  newResultVerticiesUV.push_back(<a class="code" href="namespace_my_g_u_i_1_1geometry__utility.html#a1e5d96fabfb69c45538d994d8a5140fe">geometry_utility::getUVFromPositionInsideRect</a>(point, v0, v1, mResultVerticiesUV[i]));</div> <div class="line"><a name="l00472"></a><span class="lineno"> 472</span>  point = <a class="code" href="namespace_my_g_u_i_1_1geometry__utility.html#a5b4962ede2d90dbda03a51b1f9a3047f">geometry_utility::getPositionInsideRect</a>(croppedTriangle[j], mResultVerticiesPos[i], mResultVerticiesPos[i + 1], mResultVerticiesPos[i + 2]);</div> <div class="line"><a name="l00473"></a><span class="lineno"> 473</span>  newResultVerticiesUV.push_back(<a class="code" href="namespace_my_g_u_i_1_1geometry__utility.html#a1e5d96fabfb69c45538d994d8a5140fe">geometry_utility::getUVFromPositionInsideRect</a>(point, v0, v1, mResultVerticiesUV[i]));</div> <div class="line"><a name="l00474"></a><span class="lineno"> 474</span>  point = <a class="code" href="namespace_my_g_u_i_1_1geometry__utility.html#a5b4962ede2d90dbda03a51b1f9a3047f">geometry_utility::getPositionInsideRect</a>(croppedTriangle[j + 1], mResultVerticiesPos[i], mResultVerticiesPos[i + 1], mResultVerticiesPos[i + 2]);</div> <div class="line"><a name="l00475"></a><span class="lineno"> 475</span>  newResultVerticiesUV.push_back(<a class="code" href="namespace_my_g_u_i_1_1geometry__utility.html#a1e5d96fabfb69c45538d994d8a5140fe">geometry_utility::getUVFromPositionInsideRect</a>(point, v0, v1, mResultVerticiesUV[i]));</div> <div class="line"><a name="l00476"></a><span class="lineno"> 476</span>  }</div> <div class="line"><a name="l00477"></a><span class="lineno"> 477</span>  }</div> <div class="line"><a name="l00478"></a><span class="lineno"> 478</span>  }</div> <div class="line"><a name="l00479"></a><span class="lineno"> 479</span>  std::swap(mResultVerticiesPos, newResultVerticiesPos);</div> <div class="line"><a name="l00480"></a><span class="lineno"> 480</span>  std::swap(mResultVerticiesUV, newResultVerticiesUV);</div> <div class="line"><a name="l00481"></a><span class="lineno"> 481</span> <span class="preprocessor">#endif</span></div> <div class="line"><a name="l00482"></a><span class="lineno"> 482</span> <span class="preprocessor"></span></div> <div class="line"><a name="l00483"></a><span class="lineno"> 483</span> </div> <div class="line"><a name="l00484"></a><span class="lineno"> 484</span>  <span class="comment">// now calculate widget base offset and then resulting position in screen coordinates</span></div> <div class="line"><a name="l00485"></a><span class="lineno"> 485</span>  <span class="keyword">const</span> <a class="code" href="struct_my_g_u_i_1_1_render_target_info.html">RenderTargetInfo</a>& info = mRenderItem-><a class="code" href="class_my_g_u_i_1_1_render_item.html#a1d5cf58dc86704eac59c9727a6faa171">getRenderTarget</a>()-><a class="code" href="class_my_g_u_i_1_1_i_render_target.html#af65cdee0d7963da1e24c9081891ad690">getInfo</a>();</div> <div class="line"><a name="l00486"></a><span class="lineno"> 486</span>  <span class="keywordtype">float</span> vertex_left_base = ((info.<a class="code" href="struct_my_g_u_i_1_1_render_target_info.html#a68d50c4859509d229ef748f824f76d74">pixScaleX</a> * (float)(<a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a5d10640ec8d1a14f75b4a6287d92de12">mCroppedParent</a>-><a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a9ac46efa204752d3d4a8495feaade9a0">getAbsoluteLeft</a>()) + info.<a class="code" href="struct_my_g_u_i_1_1_render_target_info.html#a62c85ad6b5cd2cef41076ae9ed3de200">hOffset</a>) * 2) - 1;</div> <div class="line"><a name="l00487"></a><span class="lineno"> 487</span>  <span class="keywordtype">float</span> vertex_top_base = -(((info.<a class="code" href="struct_my_g_u_i_1_1_render_target_info.html#ae90f966f51cd1bc131daeff1e87216b8">pixScaleY</a> * (float)(<a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a5d10640ec8d1a14f75b4a6287d92de12">mCroppedParent</a>-><a class="code" href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a08f36d963cb1bbcc853ffaf8f576d306">getAbsoluteTop</a>()) + info.<a class="code" href="struct_my_g_u_i_1_1_render_target_info.html#a02ced58ed89b042635d20a632172d0ae">vOffset</a>) * 2) - 1);</div> <div class="line"><a name="l00488"></a><span class="lineno"> 488</span> </div> <div class="line"><a name="l00489"></a><span class="lineno"> 489</span>  <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i < mResultVerticiesPos.size(); ++i)</div> <div class="line"><a name="l00490"></a><span class="lineno"> 490</span>  {</div> <div class="line"><a name="l00491"></a><span class="lineno"> 491</span>  mResultVerticiesPos[i].left = vertex_left_base + mResultVerticiesPos[i].left * info.<a class="code" href="struct_my_g_u_i_1_1_render_target_info.html#a68d50c4859509d229ef748f824f76d74">pixScaleX</a> * 2;</div> <div class="line"><a name="l00492"></a><span class="lineno"> 492</span>  mResultVerticiesPos[i].top = vertex_top_base + mResultVerticiesPos[i].top * info.<a class="code" href="struct_my_g_u_i_1_1_render_target_info.html#ae90f966f51cd1bc131daeff1e87216b8">pixScaleY</a> * -2;</div> <div class="line"><a name="l00493"></a><span class="lineno"> 493</span>  }</div> <div class="line"><a name="l00494"></a><span class="lineno"> 494</span>  }</div> <div class="line"><a name="l00495"></a><span class="lineno"> 495</span> </div> <div class="line"><a name="l00496"></a><span class="lineno"><a class="line" href="class_my_g_u_i_1_1_polygonal_skin.html#a4b2d31744985577103926dbbf5a7ef28"> 496</a></span>  <a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html">FloatPoint</a> <a class="code" href="class_my_g_u_i_1_1_polygonal_skin.html#a4b2d31744985577103926dbbf5a7ef28">PolygonalSkin::_getPerpendicular</a>(<span class="keyword">const</span> <a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html">FloatPoint</a>& _point1, <span class="keyword">const</span> <a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html">FloatPoint</a>& _point2)</div> <div class="line"><a name="l00497"></a><span class="lineno"> 497</span>  {</div> <div class="line"><a name="l00498"></a><span class="lineno"> 498</span>  <span class="comment">// dy, -dx</span></div> <div class="line"><a name="l00499"></a><span class="lineno"> 499</span>  <a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html">FloatPoint</a> result(_point1.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#adeaf740ccbf49cf5e77de70f941d4ff8">top</a> - _point2.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#adeaf740ccbf49cf5e77de70f941d4ff8">top</a>, -(_point1.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#a4145982830e0c6ccb93cd9f003106933">left</a> - _point2.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#a4145982830e0c6ccb93cd9f003106933">left</a>));</div> <div class="line"><a name="l00500"></a><span class="lineno"> 500</span>  <span class="comment">// normalise</span></div> <div class="line"><a name="l00501"></a><span class="lineno"> 501</span>  <span class="keywordtype">float</span> length = <a class="code" href="namespace_my_g_u_i.html#aeab5768bb4b329fef1437fdb3e59e996">len</a>(result.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#adeaf740ccbf49cf5e77de70f941d4ff8">top</a>, result.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#a4145982830e0c6ccb93cd9f003106933">left</a>);</div> <div class="line"><a name="l00502"></a><span class="lineno"> 502</span>  result.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#a4145982830e0c6ccb93cd9f003106933">left</a> /= length;</div> <div class="line"><a name="l00503"></a><span class="lineno"> 503</span>  result.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#adeaf740ccbf49cf5e77de70f941d4ff8">top</a> /= length;</div> <div class="line"><a name="l00504"></a><span class="lineno"> 504</span>  result.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#a4145982830e0c6ccb93cd9f003106933">left</a> *= mLineWidth / 2;</div> <div class="line"><a name="l00505"></a><span class="lineno"> 505</span>  result.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#adeaf740ccbf49cf5e77de70f941d4ff8">top</a> *= mLineWidth / 2;</div> <div class="line"><a name="l00506"></a><span class="lineno"> 506</span>  <span class="keywordflow">return</span> result;</div> <div class="line"><a name="l00507"></a><span class="lineno"> 507</span>  }</div> <div class="line"><a name="l00508"></a><span class="lineno"> 508</span> </div> <div class="line"><a name="l00509"></a><span class="lineno"><a class="line" href="class_my_g_u_i_1_1_polygonal_skin.html#a6255e43bad6e9a3b31facfcd415a661e"> 509</a></span>  <a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html">FloatPoint</a> <a class="code" href="class_my_g_u_i_1_1_polygonal_skin.html#a6255e43bad6e9a3b31facfcd415a661e">PolygonalSkin::_getMiddleLine</a>(<span class="keyword">const</span> <a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html">FloatPoint</a>& _point1, <span class="keyword">const</span> <a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html">FloatPoint</a>& _point2, <span class="keyword">const</span> <a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html">FloatPoint</a>& _point3)</div> <div class="line"><a name="l00510"></a><span class="lineno"> 510</span>  {</div> <div class="line"><a name="l00511"></a><span class="lineno"> 511</span>  <span class="comment">// bisectrix</span></div> <div class="line"><a name="l00512"></a><span class="lineno"> 512</span>  <a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html">FloatPoint</a> line1 = _point3 - _point1;</div> <div class="line"><a name="l00513"></a><span class="lineno"> 513</span>  <a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html">FloatPoint</a> line2 = _point3 - _point2;</div> <div class="line"><a name="l00514"></a><span class="lineno"> 514</span>  <span class="keywordtype">float</span> length = <a class="code" href="namespace_my_g_u_i.html#aeab5768bb4b329fef1437fdb3e59e996">len</a>(line1.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#adeaf740ccbf49cf5e77de70f941d4ff8">top</a>, line1.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#a4145982830e0c6ccb93cd9f003106933">left</a>);</div> <div class="line"><a name="l00515"></a><span class="lineno"> 515</span>  line1.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#a4145982830e0c6ccb93cd9f003106933">left</a> /= length;</div> <div class="line"><a name="l00516"></a><span class="lineno"> 516</span>  line1.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#adeaf740ccbf49cf5e77de70f941d4ff8">top</a> /= length;</div> <div class="line"><a name="l00517"></a><span class="lineno"> 517</span>  length = <a class="code" href="namespace_my_g_u_i.html#aeab5768bb4b329fef1437fdb3e59e996">len</a>(line2.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#adeaf740ccbf49cf5e77de70f941d4ff8">top</a>, line2.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#a4145982830e0c6ccb93cd9f003106933">left</a>);</div> <div class="line"><a name="l00518"></a><span class="lineno"> 518</span>  line2.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#a4145982830e0c6ccb93cd9f003106933">left</a> /= length;</div> <div class="line"><a name="l00519"></a><span class="lineno"> 519</span>  line2.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#adeaf740ccbf49cf5e77de70f941d4ff8">top</a> /= length;</div> <div class="line"><a name="l00520"></a><span class="lineno"> 520</span>  <a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html">FloatPoint</a> result = line1 + line2;</div> <div class="line"><a name="l00521"></a><span class="lineno"> 521</span>  <span class="comment">// normalise</span></div> <div class="line"><a name="l00522"></a><span class="lineno"> 522</span>  length = <a class="code" href="namespace_my_g_u_i.html#aeab5768bb4b329fef1437fdb3e59e996">len</a>(result.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#adeaf740ccbf49cf5e77de70f941d4ff8">top</a>, result.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#a4145982830e0c6ccb93cd9f003106933">left</a>);</div> <div class="line"><a name="l00523"></a><span class="lineno"> 523</span>  <span class="keywordflow">if</span> (length < 1e-6)</div> <div class="line"><a name="l00524"></a><span class="lineno"> 524</span>  {</div> <div class="line"><a name="l00525"></a><span class="lineno"> 525</span>  <span class="keywordflow">return</span> <a class="code" href="class_my_g_u_i_1_1_polygonal_skin.html#a4b2d31744985577103926dbbf5a7ef28">_getPerpendicular</a>(_point1, _point2);</div> <div class="line"><a name="l00526"></a><span class="lineno"> 526</span>  }</div> <div class="line"><a name="l00527"></a><span class="lineno"> 527</span>  result.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#a4145982830e0c6ccb93cd9f003106933">left</a> /= length;</div> <div class="line"><a name="l00528"></a><span class="lineno"> 528</span>  result.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#adeaf740ccbf49cf5e77de70f941d4ff8">top</a> /= length;</div> <div class="line"><a name="l00529"></a><span class="lineno"> 529</span> </div> <div class="line"><a name="l00530"></a><span class="lineno"> 530</span>  <span class="keywordtype">float</span> cos = result.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#a4145982830e0c6ccb93cd9f003106933">left</a> * line1.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#a4145982830e0c6ccb93cd9f003106933">left</a> + result.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#adeaf740ccbf49cf5e77de70f941d4ff8">top</a> * line1.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#adeaf740ccbf49cf5e77de70f941d4ff8">top</a>;</div> <div class="line"><a name="l00531"></a><span class="lineno"> 531</span>  <span class="keywordtype">float</span> angle = acos(cos);</div> <div class="line"><a name="l00532"></a><span class="lineno"> 532</span> </div> <div class="line"><a name="l00533"></a><span class="lineno"> 533</span>  <span class="comment">// too sharp angle</span></div> <div class="line"><a name="l00534"></a><span class="lineno"> 534</span>  <span class="keywordflow">if</span> (fabs(angle) < 1e-6 <span class="comment">/*< 0.2f*/</span>)</div> <div class="line"><a name="l00535"></a><span class="lineno"> 535</span>  <span class="keywordflow">return</span> <a class="code" href="namespace_my_g_u_i.html#a36ccc28061ff6221ebab1aaa160cbb60">FloatPoint</a>();</div> <div class="line"><a name="l00536"></a><span class="lineno"> 536</span> </div> <div class="line"><a name="l00537"></a><span class="lineno"> 537</span>  <span class="keywordtype">float</span> width = mLineWidth / 2 / sin(angle);</div> <div class="line"><a name="l00538"></a><span class="lineno"> 538</span>  result.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#a4145982830e0c6ccb93cd9f003106933">left</a> *= width;</div> <div class="line"><a name="l00539"></a><span class="lineno"> 539</span>  result.<a class="code" href="struct_my_g_u_i_1_1types_1_1_t_point.html#adeaf740ccbf49cf5e77de70f941d4ff8">top</a> *= width;</div> <div class="line"><a name="l00540"></a><span class="lineno"> 540</span>  <span class="keywordflow">return</span> result;</div> <div class="line"><a name="l00541"></a><span class="lineno"> 541</span>  }</div> <div class="line"><a name="l00542"></a><span class="lineno"> 542</span> </div> <div class="line"><a name="l00543"></a><span class="lineno"> 543</span> } <span class="comment">// namespace MyGUI</span></div> <div class="ttc" id="class_my_g_u_i_1_1_i_cropped_rectangle_html_a9ac46efa204752d3d4a8495feaade9a0"><div class="ttname"><a href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a9ac46efa204752d3d4a8495feaade9a0">MyGUI::ICroppedRectangle::getAbsoluteLeft</a></div><div class="ttdeci">int getAbsoluteLeft() const </div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___i_cropped_rectangle_8h_source.html#l00098">MyGUI_ICroppedRectangle.h:98</a></div></div> <div class="ttc" id="struct_my_g_u_i_1_1types_1_1_t_coord_html"><div class="ttname"><a href="struct_my_g_u_i_1_1types_1_1_t_coord.html">MyGUI::types::TCoord< int ></a></div></div> <div class="ttc" id="struct_my_g_u_i_1_1_align_html_af606d70a6262781810df0fd173429ffd"><div class="ttname"><a href="struct_my_g_u_i_1_1_align.html#af606d70a6262781810df0fd173429ffd">MyGUI::Align::isVStretch</a></div><div class="ttdeci">bool isVStretch() const </div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___align_8h_source.html#l00099">MyGUI_Align.h:99</a></div></div> <div class="ttc" id="namespace_my_g_u_i_1_1geometry__utility_html_a5b4962ede2d90dbda03a51b1f9a3047f"><div class="ttname"><a href="namespace_my_g_u_i_1_1geometry__utility.html#a5b4962ede2d90dbda03a51b1f9a3047f">MyGUI::geometry_utility::getPositionInsideRect</a></div><div class="ttdeci">FloatPoint getPositionInsideRect(const FloatPoint &_point, const FloatPoint &_corner0, const FloatPoint &_corner1, const FloatPoint &_corner2)</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___geometry_utility_8cpp_source.html#l00104">MyGUI_GeometryUtility.cpp:104</a></div></div> <div class="ttc" id="namespace_my_g_u_i_html_ae11a5769e2d89121966117b44b09625f"><div class="ttname"><a href="namespace_my_g_u_i.html#ae11a5769e2d89121966117b44b09625f">MyGUI::uint32</a></div><div class="ttdeci">unsigned int uint32</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___types_8h_source.html#l00063">MyGUI_Types.h:63</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_i_layer_node_html_ae945eb84e47781d423e5b7c1964ef3ce"><div class="ttname"><a href="class_my_g_u_i_1_1_i_layer_node.html#ae945eb84e47781d423e5b7c1964ef3ce">MyGUI::ILayerNode::outOfDate</a></div><div class="ttdeci">virtual void outOfDate(RenderItem *_item)=0</div></div> <div class="ttc" id="struct_my_g_u_i_1_1types_1_1_t_point_html"><div class="ttname"><a href="struct_my_g_u_i_1_1types_1_1_t_point.html">MyGUI::types::TPoint</a></div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___t_point_8h_source.html#l00033">MyGUI_TPoint.h:33</a></div></div> <div class="ttc" id="struct_my_g_u_i_1_1_render_target_info_html_ae90f966f51cd1bc131daeff1e87216b8"><div class="ttname"><a href="struct_my_g_u_i_1_1_render_target_info.html#ae90f966f51cd1bc131daeff1e87216b8">MyGUI::RenderTargetInfo::pixScaleY</a></div><div class="ttdeci">float pixScaleY</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___render_target_info_8h_source.html#l00054">MyGUI_RenderTargetInfo.h:54</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_i_layer_node_html"><div class="ttname"><a href="class_my_g_u_i_1_1_i_layer_node.html">MyGUI::ILayerNode</a></div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___i_layer_node_8h_source.html#l00042">MyGUI_ILayerNode.h:42</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_render_item_html_adc88d4cc694350cf2c7e90ba2ba84466"><div class="ttname"><a href="class_my_g_u_i_1_1_render_item.html#adc88d4cc694350cf2c7e90ba2ba84466">MyGUI::RenderItem::removeDrawItem</a></div><div class="ttdeci">void removeDrawItem(ISubWidget *_item)</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___render_item_8cpp_source.html#l00113">MyGUI_RenderItem.cpp:113</a></div></div> <div class="ttc" id="struct_my_g_u_i_1_1_render_target_info_html_ab2a4ef282172ba106d9793b52b28f65d"><div class="ttname"><a href="struct_my_g_u_i_1_1_render_target_info.html#ab2a4ef282172ba106d9793b52b28f65d">MyGUI::RenderTargetInfo::maximumDepth</a></div><div class="ttdeci">float maximumDepth</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___render_target_info_8h_source.html#l00052">MyGUI_RenderTargetInfo.h:52</a></div></div> <div class="ttc" id="struct_my_g_u_i_1_1types_1_1_t_rect_html_aefdb09abf6eae54ef9d09d24083eb046"><div class="ttname"><a href="struct_my_g_u_i_1_1types_1_1_t_rect.html#aefdb09abf6eae54ef9d09d24083eb046">MyGUI::types::TRect::top</a></div><div class="ttdeci">T top</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___t_rect_8h_source.html#l00036">MyGUI_TRect.h:36</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_render_item_html_a008c2021e356b22551eee865eb16d725"><div class="ttname"><a href="class_my_g_u_i_1_1_render_item.html#a008c2021e356b22551eee865eb16d725">MyGUI::RenderItem::addDrawItem</a></div><div class="ttdeci">void addDrawItem(ISubWidget *_item, size_t _count)</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___render_item_8cpp_source.html#l00138">MyGUI_RenderItem.cpp:138</a></div></div> <div class="ttc" id="namespace_my_g_u_i_1_1geometry__utility_html_aa57731cdbb0d1cc61a2dd71bfa1e153d"><div class="ttname"><a href="namespace_my_g_u_i_1_1geometry__utility.html#aa57731cdbb0d1cc61a2dd71bfa1e153d">MyGUI::geometry_utility::cropPolygon</a></div><div class="ttdeci">VectorFloatPoint cropPolygon(FloatPoint *_baseVerticiesPos, size_t _size, const IntCoord &_cropRectangle)</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___geometry_utility_8cpp_source.html#l00031">MyGUI_GeometryUtility.cpp:31</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_polygonal_skin_html_ac4e394705a41873045dc071301877346"><div class="ttname"><a href="class_my_g_u_i_1_1_polygonal_skin.html#ac4e394705a41873045dc071301877346">MyGUI::PolygonalSkin::~PolygonalSkin</a></div><div class="ttdeci">virtual ~PolygonalSkin()</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___polygonal_skin_8cpp_source.html#l00045">MyGUI_PolygonalSkin.cpp:45</a></div></div> <div class="ttc" id="_my_g_u_i___precompiled_8h_html"><div class="ttname"><a href="_my_g_u_i___precompiled_8h.html">MyGUI_Precompiled.h</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_i_cropped_rectangle_html_aeaa2e53babcc2e3fdc8809f6eb8825bf"><div class="ttname"><a href="class_my_g_u_i_1_1_i_cropped_rectangle.html#aeaa2e53babcc2e3fdc8809f6eb8825bf">MyGUI::ICroppedRectangle::_getViewHeight</a></div><div class="ttdeci">int _getViewHeight() const </div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___i_cropped_rectangle_8h_source.html#l00168">MyGUI_ICroppedRectangle.h:168</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_i_cropped_rectangle_html_a0f0b7542dde743b020713654c50536ca"><div class="ttname"><a href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a0f0b7542dde743b020713654c50536ca">MyGUI::ICroppedRectangle::mIsMargin</a></div><div class="ttdeci">bool mIsMargin</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___i_cropped_rectangle_8h_source.html#l00263">MyGUI_ICroppedRectangle.h:263</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_polygonal_skin_html_a8bc9b7347a6542e7abd109b153f6c592"><div class="ttname"><a href="class_my_g_u_i_1_1_polygonal_skin.html#a8bc9b7347a6542e7abd109b153f6c592">MyGUI::PolygonalSkin::_correctView</a></div><div class="ttdeci">virtual void _correctView()</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___polygonal_skin_8cpp_source.html#l00128">MyGUI_PolygonalSkin.cpp:128</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_i_cropped_rectangle_html_af5253c6b4dfb1107dd23b23fb1109413"><div class="ttname"><a href="class_my_g_u_i_1_1_i_cropped_rectangle.html#af5253c6b4dfb1107dd23b23fb1109413">MyGUI::ICroppedRectangle::getHeight</a></div><div class="ttdeci">int getHeight() const </div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___i_cropped_rectangle_8h_source.html#l00134">MyGUI_ICroppedRectangle.h:134</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_render_item_html_a1d5cf58dc86704eac59c9727a6faa171"><div class="ttname"><a href="class_my_g_u_i_1_1_render_item.html#a1d5cf58dc86704eac59c9727a6faa171">MyGUI::RenderItem::getRenderTarget</a></div><div class="ttdeci">IRenderTarget * getRenderTarget()</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___render_item_8cpp_source.html#l00250">MyGUI_RenderItem.cpp:250</a></div></div> <div class="ttc" id="struct_my_g_u_i_1_1_align_html_a247b995a128e3d9d38f357bd3bf2f271"><div class="ttname"><a href="struct_my_g_u_i_1_1_align.html#a247b995a128e3d9d38f357bd3bf2f271">MyGUI::Align::isBottom</a></div><div class="ttdeci">bool isBottom() const </div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___align_8h_source.html#l00094">MyGUI_Align.h:94</a></div></div> <div class="ttc" id="namespace_my_g_u_i_1_1texture__utility_html_a8a12de1020d83dfc9530fbf774517fec"><div class="ttname"><a href="namespace_my_g_u_i_1_1texture__utility.html#a8a12de1020d83dfc9530fbf774517fec">MyGUI::texture_utility::convertColour</a></div><div class="ttdeci">__inline void convertColour(uint32 &_colour, VertexColourType _format)</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___texture_utility_8h_source.html#l00038">MyGUI_TextureUtility.h:38</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_i_state_info_html"><div class="ttname"><a href="class_my_g_u_i_1_1_i_state_info.html">MyGUI::IStateInfo</a></div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___i_state_info_8h_source.html#l00031">MyGUI_IStateInfo.h:31</a></div></div> <div class="ttc" id="struct_my_g_u_i_1_1types_1_1_t_size_html"><div class="ttname"><a href="struct_my_g_u_i_1_1types_1_1_t_size.html">MyGUI::types::TSize< int ></a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_polygonal_skin_html_a6384f936fc9cf0de451d2a95dd6f5545"><div class="ttname"><a href="class_my_g_u_i_1_1_polygonal_skin.html#a6384f936fc9cf0de451d2a95dd6f5545">MyGUI::PolygonalSkin::_setUVSet</a></div><div class="ttdeci">virtual void _setUVSet(const FloatRect &_rect)</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___polygonal_skin_8cpp_source.html#l00288">MyGUI_PolygonalSkin.cpp:288</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_singleton_html_a62dffea70e4b1061c1018a3b12d3ecd8"><div class="ttname"><a href="class_my_g_u_i_1_1_singleton.html#a62dffea70e4b1061c1018a3b12d3ecd8">MyGUI::Singleton< RenderManager >::getInstance</a></div><div class="ttdeci">static RenderManager & getInstance()</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___singleton_8h_source.html#l00053">MyGUI_Singleton.h:53</a></div></div> <div class="ttc" id="struct_my_g_u_i_1_1_align_html_abdd8dbc791e0af8ea3eb1f42a88a2056"><div class="ttname"><a href="struct_my_g_u_i_1_1_align.html#abdd8dbc791e0af8ea3eb1f42a88a2056">MyGUI::Align::isVCenter</a></div><div class="ttdeci">bool isVCenter() const </div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___align_8h_source.html#l00064">MyGUI_Align.h:64</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_polygonal_skin_html_a1f1b5ad2ed3054689ccf964469e26528"><div class="ttname"><a href="class_my_g_u_i_1_1_polygonal_skin.html#a1f1b5ad2ed3054689ccf964469e26528">MyGUI::PolygonalSkin::setAlpha</a></div><div class="ttdeci">virtual void setAlpha(float _alpha)</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___polygonal_skin_8cpp_source.html#l00119">MyGUI_PolygonalSkin.cpp:119</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_i_cropped_rectangle_html_a5d10640ec8d1a14f75b4a6287d92de12"><div class="ttname"><a href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a5d10640ec8d1a14f75b4a6287d92de12">MyGUI::ICroppedRectangle::mCroppedParent</a></div><div class="ttdeci">ICroppedRectangle * mCroppedParent</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___i_cropped_rectangle_8h_source.html#l00264">MyGUI_ICroppedRectangle.h:264</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_render_manager_html_ae8154746e383c853200738ba3527164e"><div class="ttname"><a href="class_my_g_u_i_1_1_render_manager.html#ae8154746e383c853200738ba3527164e">MyGUI::RenderManager::getVertexFormat</a></div><div class="ttdeci">virtual VertexColourType getVertexFormat()=0</div></div> <div class="ttc" id="class_my_g_u_i_1_1_i_cropped_rectangle_html_a08f36d963cb1bbcc853ffaf8f576d306"><div class="ttname"><a href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a08f36d963cb1bbcc853ffaf8f576d306">MyGUI::ICroppedRectangle::getAbsoluteTop</a></div><div class="ttdeci">int getAbsoluteTop() const </div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___i_cropped_rectangle_8h_source.html#l00103">MyGUI_ICroppedRectangle.h:103</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_polygonal_skin_html_a11f1eb4f203dd65a6f885567fae4b099"><div class="ttname"><a href="class_my_g_u_i_1_1_polygonal_skin.html#a11f1eb4f203dd65a6f885567fae4b099">MyGUI::PolygonalSkin::doRender</a></div><div class="ttdeci">virtual void doRender()</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___polygonal_skin_8cpp_source.html#l00247">MyGUI_PolygonalSkin.cpp:247</a></div></div> <div class="ttc" id="_my_g_u_i___geometry_utility_8h_html"><div class="ttname"><a href="_my_g_u_i___geometry_utility_8h.html">MyGUI_GeometryUtility.h</a></div></div> <div class="ttc" id="_my_g_u_i___prerequest_8h_html_ab979d9d4b4923f7c54d6caa6e1a61936"><div class="ttname"><a href="_my_g_u_i___prerequest_8h.html#ab979d9d4b4923f7c54d6caa6e1a61936">nullptr</a></div><div class="ttdeci">#define nullptr</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___prerequest_8h_source.html#l00047">MyGUI_Prerequest.h:47</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_polygonal_skin_html_a14cc739661f9f237c5e55b6b69729d2d"><div class="ttname"><a href="class_my_g_u_i_1_1_polygonal_skin.html#a14cc739661f9f237c5e55b6b69729d2d">MyGUI::PolygonalSkin::setStateData</a></div><div class="ttdeci">virtual void setStateData(IStateInfo *_data)</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___polygonal_skin_8cpp_source.html#l00283">MyGUI_PolygonalSkin.cpp:283</a></div></div> <div class="ttc" id="struct_my_g_u_i_1_1_align_html_aa69b5a2cbd6078e542e4f41fc55d2755"><div class="ttname"><a href="struct_my_g_u_i_1_1_align.html#aa69b5a2cbd6078e542e4f41fc55d2755">MyGUI::Align::isHCenter</a></div><div class="ttdeci">bool isHCenter() const </div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___align_8h_source.html#l00059">MyGUI_Align.h:59</a></div></div> <div class="ttc" id="struct_my_g_u_i_1_1types_1_1_t_point_html_adeaf740ccbf49cf5e77de70f941d4ff8"><div class="ttname"><a href="struct_my_g_u_i_1_1types_1_1_t_point.html#adeaf740ccbf49cf5e77de70f941d4ff8">MyGUI::types::TPoint::top</a></div><div class="ttdeci">T top</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___t_point_8h_source.html#l00036">MyGUI_TPoint.h:36</a></div></div> <div class="ttc" id="namespace_my_g_u_i_html_a60a1273b6fdef7b0c8cecd4cc90b7e5b"><div class="ttname"><a href="namespace_my_g_u_i.html#a60a1273b6fdef7b0c8cecd4cc90b7e5b">MyGUI::VectorFloatPoint</a></div><div class="ttdeci">std::vector< FloatPoint > VectorFloatPoint</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___geometry_utility_8h_source.html#l00030">MyGUI_GeometryUtility.h:30</a></div></div> <div class="ttc" id="struct_my_g_u_i_1_1types_1_1_t_coord_html_a34c2a4a84487c83524c53f996f101382"><div class="ttname"><a href="struct_my_g_u_i_1_1types_1_1_t_coord.html#a34c2a4a84487c83524c53f996f101382">MyGUI::types::TCoord::width</a></div><div class="ttdeci">T width</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___t_coord_8h_source.html#l00039">MyGUI_TCoord.h:39</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_i_layer_node_html_aa8386c01b588b19ebe7617b37ca1d9ee"><div class="ttname"><a href="class_my_g_u_i_1_1_i_layer_node.html#aa8386c01b588b19ebe7617b37ca1d9ee">MyGUI::ILayerNode::addToRenderItem</a></div><div class="ttdeci">virtual RenderItem * addToRenderItem(ITexture *_texture, bool _firstQueue, bool _separate)=0</div></div> <div class="ttc" id="class_my_g_u_i_1_1_i_cropped_rectangle_html_a21be402c76c560b6568dc16c2f1e38a8"><div class="ttname"><a href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a21be402c76c560b6568dc16c2f1e38a8">MyGUI::ICroppedRectangle::mCoord</a></div><div class="ttdeci">IntCoord mCoord</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___i_cropped_rectangle_8h_source.html#l00260">MyGUI_ICroppedRectangle.h:260</a></div></div> <div class="ttc" id="struct_my_g_u_i_1_1types_1_1_t_coord_html_a5fb8d9e9b6249750e7c794f60ae5fdac"><div class="ttname"><a href="struct_my_g_u_i_1_1types_1_1_t_coord.html#a5fb8d9e9b6249750e7c794f60ae5fdac">MyGUI::types::TCoord::top</a></div><div class="ttdeci">T top</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___t_coord_8h_source.html#l00038">MyGUI_TCoord.h:38</a></div></div> <div class="ttc" id="struct_my_g_u_i_1_1types_1_1_t_rect_html_a869053f141a6ba6576ab5873be947147"><div class="ttname"><a href="struct_my_g_u_i_1_1types_1_1_t_rect.html#a869053f141a6ba6576ab5873be947147">MyGUI::types::TRect::left</a></div><div class="ttdeci">T left</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___t_rect_8h_source.html#l00035">MyGUI_TRect.h:35</a></div></div> <div class="ttc" id="_my_g_u_i___polygonal_skin_8h_html"><div class="ttname"><a href="_my_g_u_i___polygonal_skin_8h.html">MyGUI_PolygonalSkin.h</a></div></div> <div class="ttc" id="namespace_my_g_u_i_1_1geometry__utility_html_a1e5d96fabfb69c45538d994d8a5140fe"><div class="ttname"><a href="namespace_my_g_u_i_1_1geometry__utility.html#a1e5d96fabfb69c45538d994d8a5140fe">MyGUI::geometry_utility::getUVFromPositionInsideRect</a></div><div class="ttdeci">FloatPoint getUVFromPositionInsideRect(const FloatPoint &_point, const FloatPoint &_v0, const FloatPoint &_v1, const FloatPoint &_baseUV)</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___geometry_utility_8cpp_source.html#l00121">MyGUI_GeometryUtility.cpp:121</a></div></div> <div class="ttc" id="_my_g_u_i___render_manager_8h_html"><div class="ttname"><a href="_my_g_u_i___render_manager_8h.html">MyGUI_RenderManager.h</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_i_cropped_rectangle_html_a25d27b33aeee62b852dc8009a7b942d7"><div class="ttname"><a href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a25d27b33aeee62b852dc8009a7b942d7">MyGUI::ICroppedRectangle::mMargin</a></div><div class="ttdeci">IntRect mMargin</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___i_cropped_rectangle_8h_source.html#l00259">MyGUI_ICroppedRectangle.h:259</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_polygonal_skin_html_a6d9b5e35c4e243dc9e9d20d363d0a0eb"><div class="ttname"><a href="class_my_g_u_i_1_1_polygonal_skin.html#a6d9b5e35c4e243dc9e9d20d363d0a0eb">MyGUI::PolygonalSkin::createDrawItem</a></div><div class="ttdeci">virtual void createDrawItem(ITexture *_texture, ILayerNode *_node)</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___polygonal_skin_8cpp_source.html#l00229">MyGUI_PolygonalSkin.cpp:229</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_render_item_html_ae09f250318ce13fc95a9aa7d0041e012"><div class="ttname"><a href="class_my_g_u_i_1_1_render_item.html#ae09f250318ce13fc95a9aa7d0041e012">MyGUI::RenderItem::getCurrentVertexBuffer</a></div><div class="ttdeci">Vertex * getCurrentVertexBuffer() const </div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___render_item_8cpp_source.html#l00240">MyGUI_RenderItem.cpp:240</a></div></div> <div class="ttc" id="struct_my_g_u_i_1_1_vertex_quad_html_a54ce52e924fee273e5647e74378bb536a4dfcc332ca50f3bf0cd7ffe3a7a9495f"><div class="ttname"><a href="struct_my_g_u_i_1_1_vertex_quad.html#a54ce52e924fee273e5647e74378bb536a4dfcc332ca50f3bf0cd7ffe3a7a9495f">MyGUI::VertexQuad::VertexCount</a></div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___vertex_data_8h_source.html#l00058">MyGUI_VertexData.h:58</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_polygonal_skin_html_a0e17106bf07dfb7816d4a6dcc11f24b4"><div class="ttname"><a href="class_my_g_u_i_1_1_polygonal_skin.html#a0e17106bf07dfb7816d4a6dcc11f24b4">MyGUI::PolygonalSkin::_updateView</a></div><div class="ttdeci">virtual void _updateView()</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___polygonal_skin_8cpp_source.html#l00189">MyGUI_PolygonalSkin.cpp:189</a></div></div> <div class="ttc" id="struct_my_g_u_i_1_1types_1_1_t_point_html_a4145982830e0c6ccb93cd9f003106933"><div class="ttname"><a href="struct_my_g_u_i_1_1types_1_1_t_point.html#a4145982830e0c6ccb93cd9f003106933">MyGUI::types::TPoint::left</a></div><div class="ttdeci">T left</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___t_point_8h_source.html#l00035">MyGUI_TPoint.h:35</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_i_cropped_rectangle_html_a52c93ea7b7c89b708b855a4924df310b"><div class="ttname"><a href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a52c93ea7b7c89b708b855a4924df310b">MyGUI::ICroppedRectangle::getWidth</a></div><div class="ttdeci">int getWidth() const </div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___i_cropped_rectangle_8h_source.html#l00129">MyGUI_ICroppedRectangle.h:129</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_polygonal_skin_html_a7cfce4411521dca88fb88e83eab9baad"><div class="ttname"><a href="class_my_g_u_i_1_1_polygonal_skin.html#a7cfce4411521dca88fb88e83eab9baad">MyGUI::PolygonalSkin::destroyDrawItem</a></div><div class="ttdeci">virtual void destroyDrawItem()</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___polygonal_skin_8cpp_source.html#l00238">MyGUI_PolygonalSkin.cpp:238</a></div></div> <div class="ttc" id="struct_my_g_u_i_1_1types_1_1_t_rect_html"><div class="ttname"><a href="struct_my_g_u_i_1_1types_1_1_t_rect.html">MyGUI::types::TRect< float ></a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_i_cropped_rectangle_html_a0fb56854f3bb6d0f7f4f0e8f608fa37a"><div class="ttname"><a href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a0fb56854f3bb6d0f7f4f0e8f608fa37a">MyGUI::ICroppedRectangle::_getViewWidth</a></div><div class="ttdeci">int _getViewWidth() const </div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___i_cropped_rectangle_8h_source.html#l00164">MyGUI_ICroppedRectangle.h:164</a></div></div> <div class="ttc" id="struct_my_g_u_i_1_1types_1_1_t_size_html_a02ca00ab866d1905d05d0ba7555a667d"><div class="ttname"><a href="struct_my_g_u_i_1_1types_1_1_t_size.html#a02ca00ab866d1905d05d0ba7555a667d">MyGUI::types::TSize::width</a></div><div class="ttdeci">T width</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___t_size_8h_source.html#l00035">MyGUI_TSize.h:35</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_i_sub_widget_html_aad1a1c35ec62988129fb142ba2fe2b1f"><div class="ttname"><a href="class_my_g_u_i_1_1_i_sub_widget.html#aad1a1c35ec62988129fb142ba2fe2b1f">MyGUI::ISubWidget::mVisible</a></div><div class="ttdeci">bool mVisible</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___i_sub_widget_8h_source.html#l00076">MyGUI_ISubWidget.h:76</a></div></div> <div class="ttc" id="struct_my_g_u_i_1_1_render_target_info_html_a68d50c4859509d229ef748f824f76d74"><div class="ttname"><a href="struct_my_g_u_i_1_1_render_target_info.html#a68d50c4859509d229ef748f824f76d74">MyGUI::RenderTargetInfo::pixScaleX</a></div><div class="ttdeci">float pixScaleX</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___render_target_info_8h_source.html#l00053">MyGUI_RenderTargetInfo.h:53</a></div></div> <div class="ttc" id="_my_g_u_i___common_state_info_8h_html"><div class="ttname"><a href="_my_g_u_i___common_state_info_8h.html">MyGUI_CommonStateInfo.h</a></div></div> <div class="ttc" id="_my_g_u_i___render_item_8h_html"><div class="ttname"><a href="_my_g_u_i___render_item_8h.html">MyGUI_RenderItem.h</a></div></div> <div class="ttc" id="struct_my_g_u_i_1_1_align_html_a6e8ccd94a002bbd7409abcfcf739144f"><div class="ttname"><a href="struct_my_g_u_i_1_1_align.html#a6e8ccd94a002bbd7409abcfcf739144f">MyGUI::Align::isRight</a></div><div class="ttdeci">bool isRight() const </div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___align_8h_source.html#l00079">MyGUI_Align.h:79</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_render_item_html_aad2c40f96a5b60a09d318c513a0cf03c"><div class="ttname"><a href="class_my_g_u_i_1_1_render_item.html#aad2c40f96a5b60a09d318c513a0cf03c">MyGUI::RenderItem::reallockDrawItem</a></div><div class="ttdeci">void reallockDrawItem(ISubWidget *_item, size_t _count)</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___render_item_8cpp_source.html#l00156">MyGUI_RenderItem.cpp:156</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_i_cropped_rectangle_html_a093bbcae9343e7fe54fb4769652dfc2f"><div class="ttname"><a href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a093bbcae9343e7fe54fb4769652dfc2f">MyGUI::ICroppedRectangle::_checkOutside</a></div><div class="ttdeci">bool _checkOutside() const </div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___i_cropped_rectangle_8h_source.html#l00250">MyGUI_ICroppedRectangle.h:250</a></div></div> <div class="ttc" id="_my_g_u_i___diagnostic_8h_html_a3295dc6a84072a11aa2d316eed55ccf3"><div class="ttname"><a href="_my_g_u_i___diagnostic_8h.html#a3295dc6a84072a11aa2d316eed55ccf3">MYGUI_ASSERT</a></div><div class="ttdeci">#define MYGUI_ASSERT(exp, dest)</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___diagnostic_8h_source.html#l00058">MyGUI_Diagnostic.h:58</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_i_texture_html"><div class="ttname"><a href="class_my_g_u_i_1_1_i_texture.html">MyGUI::ITexture</a></div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___i_texture_8h_source.html#l00041">MyGUI_ITexture.h:41</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_i_render_target_html_af65cdee0d7963da1e24c9081891ad690"><div class="ttname"><a href="class_my_g_u_i_1_1_i_render_target.html#af65cdee0d7963da1e24c9081891ad690">MyGUI::IRenderTarget::getInfo</a></div><div class="ttdeci">virtual const RenderTargetInfo & getInfo()=0</div></div> <div class="ttc" id="namespace_my_g_u_i_1_1texture__utility_html_aa9e5d6c7feaa5c8752b89ce26ca63eef"><div class="ttname"><a href="namespace_my_g_u_i_1_1texture__utility.html#aa9e5d6c7feaa5c8752b89ce26ca63eef">MyGUI::texture_utility::toColourARGB</a></div><div class="ttdeci">uint32 toColourARGB(const Colour &_colour)</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___texture_utility_8cpp_source.html#l00083">MyGUI_TextureUtility.cpp:83</a></div></div> <div class="ttc" id="struct_my_g_u_i_1_1_render_target_info_html_a62c85ad6b5cd2cef41076ae9ed3de200"><div class="ttname"><a href="struct_my_g_u_i_1_1_render_target_info.html#a62c85ad6b5cd2cef41076ae9ed3de200">MyGUI::RenderTargetInfo::hOffset</a></div><div class="ttdeci">float hOffset</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___render_target_info_8h_source.html#l00055">MyGUI_RenderTargetInfo.h:55</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_i_object_html_a45ac01b52ae0c38c767eff122cb66010"><div class="ttname"><a href="class_my_g_u_i_1_1_i_object.html#a45ac01b52ae0c38c767eff122cb66010">MyGUI::IObject::castType</a></div><div class="ttdeci">Type * castType(bool _throw=true)</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___i_object_8h_source.html#l00033">MyGUI_IObject.h:33</a></div></div> <div class="ttc" id="struct_my_g_u_i_1_1_vertex_html_a5d3fa59b901bb44631c8826ca15e9767"><div class="ttname"><a href="struct_my_g_u_i_1_1_vertex.html#a5d3fa59b901bb44631c8826ca15e9767">MyGUI::Vertex::set</a></div><div class="ttdeci">void set(float _x, float _y, float _z, float _u, float _v, uint32 _colour)</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___vertex_data_8h_source.html#l00033">MyGUI_VertexData.h:33</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_sub_skin_state_info_html"><div class="ttname"><a href="class_my_g_u_i_1_1_sub_skin_state_info.html">MyGUI::SubSkinStateInfo</a></div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___common_state_info_8h_source.html#l00034">MyGUI_CommonStateInfo.h:34</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_i_sub_widget_html_a0a4a9b89c1f23857c487fc89c474eb1e"><div class="ttname"><a href="class_my_g_u_i_1_1_i_sub_widget.html#a0a4a9b89c1f23857c487fc89c474eb1e">MyGUI::ISubWidget::mAlign</a></div><div class="ttdeci">Align mAlign</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___i_sub_widget_8h_source.html#l00075">MyGUI_ISubWidget.h:75</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_polygonal_skin_html_a4b2d31744985577103926dbbf5a7ef28"><div class="ttname"><a href="class_my_g_u_i_1_1_polygonal_skin.html#a4b2d31744985577103926dbbf5a7ef28">MyGUI::PolygonalSkin::_getPerpendicular</a></div><div class="ttdeci">FloatPoint _getPerpendicular(const FloatPoint &_point1, const FloatPoint &_point2)</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___polygonal_skin_8cpp_source.html#l00496">MyGUI_PolygonalSkin.cpp:496</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_polygonal_skin_html_a6255e43bad6e9a3b31facfcd415a661e"><div class="ttname"><a href="class_my_g_u_i_1_1_polygonal_skin.html#a6255e43bad6e9a3b31facfcd415a661e">MyGUI::PolygonalSkin::_getMiddleLine</a></div><div class="ttdeci">FloatPoint _getMiddleLine(const FloatPoint &_point1, const FloatPoint &_point2, const FloatPoint &_point3)</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___polygonal_skin_8cpp_source.html#l00509">MyGUI_PolygonalSkin.cpp:509</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_sub_skin_state_info_html_ab0b4de6d06a71c103e56dad7a77f2a6a"><div class="ttname"><a href="class_my_g_u_i_1_1_sub_skin_state_info.html#ab0b4de6d06a71c103e56dad7a77f2a6a">MyGUI::SubSkinStateInfo::getRect</a></div><div class="ttdeci">const FloatRect & getRect() const </div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___common_state_info_8h_source.html#l00042">MyGUI_CommonStateInfo.h:42</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_polygonal_skin_html_a680a0171f9221e6185729388cfe5c04b"><div class="ttname"><a href="class_my_g_u_i_1_1_polygonal_skin.html#a680a0171f9221e6185729388cfe5c04b">MyGUI::PolygonalSkin::setVisible</a></div><div class="ttdeci">virtual void setVisible(bool _visible)</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___polygonal_skin_8cpp_source.html#l00107">MyGUI_PolygonalSkin.cpp:107</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_polygonal_skin_html_a27080fb346ffd409c15cbbc025ccd255"><div class="ttname"><a href="class_my_g_u_i_1_1_polygonal_skin.html#a27080fb346ffd409c15cbbc025ccd255">MyGUI::PolygonalSkin::_rebuildGeometry</a></div><div class="ttdeci">void _rebuildGeometry()</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___polygonal_skin_8cpp_source.html#l00298">MyGUI_PolygonalSkin.cpp:298</a></div></div> <div class="ttc" id="namespace_my_g_u_i_html_a36ccc28061ff6221ebab1aaa160cbb60"><div class="ttname"><a href="namespace_my_g_u_i.html#a36ccc28061ff6221ebab1aaa160cbb60">MyGUI::FloatPoint</a></div><div class="ttdeci">types::TPoint< float > FloatPoint</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___types_8h_source.html#l00042">MyGUI_Types.h:42</a></div></div> <div class="ttc" id="struct_my_g_u_i_1_1_render_target_info_html"><div class="ttname"><a href="struct_my_g_u_i_1_1_render_target_info.html">MyGUI::RenderTargetInfo</a></div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___render_target_info_8h_source.html#l00030">MyGUI_RenderTargetInfo.h:30</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_polygonal_skin_html_a9cbdbc0049d1d62b91da9eff075f94bd"><div class="ttname"><a href="class_my_g_u_i_1_1_polygonal_skin.html#a9cbdbc0049d1d62b91da9eff075f94bd">MyGUI::PolygonalSkin::_setAlign</a></div><div class="ttdeci">virtual void _setAlign(const IntSize &_oldsize)</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___polygonal_skin_8cpp_source.html#l00136">MyGUI_PolygonalSkin.cpp:136</a></div></div> <div class="ttc" id="struct_my_g_u_i_1_1_colour_html"><div class="ttname"><a href="struct_my_g_u_i_1_1_colour.html">MyGUI::Colour</a></div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___colour_8h_source.html#l00031">MyGUI_Colour.h:31</a></div></div> <div class="ttc" id="struct_my_g_u_i_1_1_vertex_html"><div class="ttname"><a href="struct_my_g_u_i_1_1_vertex.html">MyGUI::Vertex</a></div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___vertex_data_8h_source.html#l00031">MyGUI_VertexData.h:31</a></div></div> <div class="ttc" id="struct_my_g_u_i_1_1_render_target_info_html_a02ced58ed89b042635d20a632172d0ae"><div class="ttname"><a href="struct_my_g_u_i_1_1_render_target_info.html#a02ced58ed89b042635d20a632172d0ae">MyGUI::RenderTargetInfo::vOffset</a></div><div class="ttdeci">float vOffset</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___render_target_info_8h_source.html#l00056">MyGUI_RenderTargetInfo.h:56</a></div></div> <div class="ttc" id="struct_my_g_u_i_1_1types_1_1_t_size_html_a8a1d35034229c32f6c3d1869db19f3e1"><div class="ttname"><a href="struct_my_g_u_i_1_1types_1_1_t_size.html#a8a1d35034229c32f6c3d1869db19f3e1">MyGUI::types::TSize::height</a></div><div class="ttdeci">T height</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___t_size_8h_source.html#l00036">MyGUI_TSize.h:36</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_polygonal_skin_html_a63f3d892e18f6e25da650052f6200ac7"><div class="ttname"><a href="class_my_g_u_i_1_1_polygonal_skin.html#a63f3d892e18f6e25da650052f6200ac7">MyGUI::PolygonalSkin::setPoints</a></div><div class="ttdeci">void setPoints(const std::vector< FloatPoint > &_points)</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___polygonal_skin_8cpp_source.html#l00054">MyGUI_PolygonalSkin.cpp:54</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_polygonal_skin_html_aa5cbd5fee8806e8c410a6cb3f3011963"><div class="ttname"><a href="class_my_g_u_i_1_1_polygonal_skin.html#aa5cbd5fee8806e8c410a6cb3f3011963">MyGUI::PolygonalSkin::setWidth</a></div><div class="ttdeci">void setWidth(float _width)</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___polygonal_skin_8cpp_source.html#l00101">MyGUI_PolygonalSkin.cpp:101</a></div></div> <div class="ttc" id="struct_my_g_u_i_1_1types_1_1_t_coord_html_ac6eca9c1ea350ee19fc88e94d14c1a84"><div class="ttname"><a href="struct_my_g_u_i_1_1types_1_1_t_coord.html#ac6eca9c1ea350ee19fc88e94d14c1a84">MyGUI::types::TCoord::left</a></div><div class="ttdeci">T left</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___t_coord_8h_source.html#l00037">MyGUI_TCoord.h:37</a></div></div> <div class="ttc" id="struct_my_g_u_i_1_1types_1_1_t_rect_html_a1679f2f87a97799e4a153fc6ff0ab796"><div class="ttname"><a href="struct_my_g_u_i_1_1types_1_1_t_rect.html#a1679f2f87a97799e4a153fc6ff0ab796">MyGUI::types::TRect::right</a></div><div class="ttdeci">T right</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___t_rect_8h_source.html#l00037">MyGUI_TRect.h:37</a></div></div> <div class="ttc" id="struct_my_g_u_i_1_1_align_html_a4fa6f21e0a7fbec3d9a7c6524d50cbb9"><div class="ttname"><a href="struct_my_g_u_i_1_1_align.html#a4fa6f21e0a7fbec3d9a7c6524d50cbb9">MyGUI::Align::isHStretch</a></div><div class="ttdeci">bool isHStretch() const </div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___align_8h_source.html#l00084">MyGUI_Align.h:84</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_polygonal_skin_html_a11698247785040cce04dcc028cfd4179"><div class="ttname"><a href="class_my_g_u_i_1_1_polygonal_skin.html#a11698247785040cce04dcc028cfd4179">MyGUI::PolygonalSkin::PolygonalSkin</a></div><div class="ttdeci">PolygonalSkin()</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___polygonal_skin_8cpp_source.html#l00032">MyGUI_PolygonalSkin.cpp:32</a></div></div> <div class="ttc" id="namespace_my_g_u_i_html_a56be7d5be0f6d225d7373b0931dac737"><div class="ttname"><a href="namespace_my_g_u_i.html#a56be7d5be0f6d225d7373b0931dac737">MyGUI::uint8</a></div><div class="ttdeci">unsigned char uint8</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___types_8h_source.html#l00061">MyGUI_Types.h:61</a></div></div> <div class="ttc" id="struct_my_g_u_i_1_1types_1_1_t_rect_html_aba8aa2f756035199f10632a22ff0ec6a"><div class="ttname"><a href="struct_my_g_u_i_1_1types_1_1_t_rect.html#aba8aa2f756035199f10632a22ff0ec6a">MyGUI::types::TRect::bottom</a></div><div class="ttdeci">T bottom</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___t_rect_8h_source.html#l00038">MyGUI_TRect.h:38</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_i_cropped_rectangle_html_a40912f54a25901b779ea49094e5f4ae0"><div class="ttname"><a href="class_my_g_u_i_1_1_i_cropped_rectangle.html#a40912f54a25901b779ea49094e5f4ae0">MyGUI::ICroppedRectangle::_checkMargin</a></div><div class="ttdeci">bool _checkMargin()</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___i_cropped_rectangle_8h_source.html#l00200">MyGUI_ICroppedRectangle.h:200</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_render_item_html_aff09bae5e0a6c2da695dde441f3d9652"><div class="ttname"><a href="class_my_g_u_i_1_1_render_item.html#aff09bae5e0a6c2da695dde441f3d9652">MyGUI::RenderItem::setLastVertexCount</a></div><div class="ttdeci">void setLastVertexCount(size_t _count)</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___render_item_8cpp_source.html#l00245">MyGUI_RenderItem.cpp:245</a></div></div> <div class="ttc" id="class_my_g_u_i_1_1_polygonal_skin_html_a62f57f2bf49e4a0c1045cac22419fc82"><div class="ttname"><a href="class_my_g_u_i_1_1_polygonal_skin.html#a62f57f2bf49e4a0c1045cac22419fc82">MyGUI::PolygonalSkin::_setColour</a></div><div class="ttdeci">virtual void _setColour(const Colour &_value)</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___polygonal_skin_8cpp_source.html#l00273">MyGUI_PolygonalSkin.cpp:273</a></div></div> <div class="ttc" id="struct_my_g_u_i_1_1types_1_1_t_coord_html_a048566d42deb6ba6701c81feb49df8d7"><div class="ttname"><a href="struct_my_g_u_i_1_1types_1_1_t_coord.html#a048566d42deb6ba6701c81feb49df8d7">MyGUI::types::TCoord::height</a></div><div class="ttdeci">T height</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___t_coord_8h_source.html#l00040">MyGUI_TCoord.h:40</a></div></div> <div class="ttc" id="namespace_my_g_u_i_html_aeab5768bb4b329fef1437fdb3e59e996"><div class="ttname"><a href="namespace_my_g_u_i.html#aeab5768bb4b329fef1437fdb3e59e996">MyGUI::len</a></div><div class="ttdeci">float len(float x, float y)</div><div class="ttdef"><b>Definition:</b> <a href="_my_g_u_i___polygonal_skin_8cpp_source.html#l00049">MyGUI_PolygonalSkin.cpp:49</a></div></div> </div><!-- fragment --></div><!-- contents --> <!-- start footer part --> <hr class="footer"/><address class="footer"><small> Generated on Sat Oct 19 2013 12:37:13 for MyGUI by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/> </a> 1.8.5 </small></address> </body> </html>