aboutsummaryrefslogtreecommitdiffstats
path: root/doc/html/HSV_8hpp_source.html
diff options
context:
space:
mode:
Diffstat (limited to 'doc/html/HSV_8hpp_source.html')
-rw-r--r--doc/html/HSV_8hpp_source.html250
1 files changed, 250 insertions, 0 deletions
diff --git a/doc/html/HSV_8hpp_source.html b/doc/html/HSV_8hpp_source.html
new file mode 100644
index 0000000..44c5f20
--- /dev/null
+++ b/doc/html/HSV_8hpp_source.html
@@ -0,0 +1,250 @@
+<!-- HTML header for doxygen 1.8.3.1-->
+<!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.6"/>
+<title>Templates -- Meow: meowpp/colors/HSV.hpp 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="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+ $(window).load(resizeHeight);
+</script>
+<link href="stylesheet.css" rel="stylesheet" type="text/css" />
+<link href="custom.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 id="projectlogo"><img alt="Logo" src="logo.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">Templates -- Meow
+ &#160;<span id="projectnumber">1.1.4</span>
+ </div>
+ <div id="projectbrief">A C++ template which is unable and also not allowed to compile to obj-file first.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('HSV_8hpp_source.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">HSV.hpp</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="HSV_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="HSV_8h.html">HSV.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="RGB_8h.html">RGB.h</a>&quot;</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="YUV_8h.html">YUV.h</a>&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="HSL_8h.html">HSL.h</a>&quot;</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;</div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="preprocessor">#include &quot;../utility.h&quot;</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;</div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="keyword">namespace </span>meow{</div>
+<div class="line"><a name="l00010"></a><span class="lineno"><a class="line" href="classmeow_1_1HSV.html#a7b6274bb5ade15a133d9c9628049df7e"> 10</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">inline</span> <a class="code" href="classmeow_1_1HSV.html#a7b6274bb5ade15a133d9c9628049df7e">HSV&lt;T&gt;::HSV</a>(){ }</div>
+<div class="line"><a name="l00011"></a><span class="lineno"><a class="line" href="classmeow_1_1HSV.html#a48d51fa1895272009f7b30d6b1774db7"> 11</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">inline</span> <a class="code" href="classmeow_1_1HSV.html#a7b6274bb5ade15a133d9c9628049df7e">HSV&lt;T&gt;::HSV</a>(T <span class="keyword">const</span>&amp; h, T <span class="keyword">const</span>&amp; s, T <span class="keyword">const</span>&amp; v){</div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160; hsv_[0] = h; hsv_[1] = s; hsv_[2] = v;</div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160; }</div>
+<div class="line"><a name="l00014"></a><span class="lineno"><a class="line" href="classmeow_1_1HSV.html#a5d448c64b3bab700e1f3202a483fafe5"> 14</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">inline</span> <a class="code" href="classmeow_1_1HSV.html#a7b6274bb5ade15a133d9c9628049df7e">HSV&lt;T&gt;::HSV</a>(T <span class="keyword">const</span>* hsv){</div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">int</span> i = 0; i &lt; 3; i++) hsv_[i] = hsv[i];</div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160; }</div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160; </div>
+<div class="line"><a name="l00018"></a><span class="lineno"><a class="line" href="classmeow_1_1HSV.html#a5a35504836c489a15c146750107cf73a"> 18</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">inline</span> T <a class="code" href="classmeow_1_1HSV.html#a5a35504836c489a15c146750107cf73a">HSV&lt;T&gt;::h</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> hsv_[0]; }</div>
+<div class="line"><a name="l00019"></a><span class="lineno"><a class="line" href="classmeow_1_1HSV.html#aa7a09adb410bb0955a16c52ad816f124"> 19</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">inline</span> T <a class="code" href="classmeow_1_1HSV.html#aa7a09adb410bb0955a16c52ad816f124">HSV&lt;T&gt;::s</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> hsv_[1]; }</div>
+<div class="line"><a name="l00020"></a><span class="lineno"><a class="line" href="classmeow_1_1HSV.html#aeef19a9dacc066f08e1405ccdef1f5d4"> 20</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">inline</span> T <a class="code" href="classmeow_1_1HSV.html#aeef19a9dacc066f08e1405ccdef1f5d4">HSV&lt;T&gt;::v</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> hsv_[2]; }</div>
+<div class="line"><a name="l00021"></a><span class="lineno"><a class="line" href="classmeow_1_1HSV.html#a628956c8133c225a2b9ba4a6a34e8e03"> 21</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">inline</span> T <a class="code" href="classmeow_1_1HSV.html#a628956c8133c225a2b9ba4a6a34e8e03">HSV&lt;T&gt;::hsv</a>(<span class="keywordtype">size_t</span> i)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; <span class="keywordflow">return</span> hsv_[std::min((<span class="keywordtype">size_t</span>)3 - 1, i)];</div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; }</div>
+<div class="line"><a name="l00024"></a><span class="lineno"><a class="line" href="classmeow_1_1HSV.html#a7f4c430084f4b8431b3c4ac80d61c959"> 24</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">inline</span> T <a class="code" href="classmeow_1_1HSV.html#a7f4c430084f4b8431b3c4ac80d61c959">HSV&lt;T&gt;::vsh</a>(<span class="keywordtype">size_t</span> i)<span class="keyword">const</span>{<span class="keywordflow">return</span> hsv(2-i);}</div>
+<div class="line"><a name="l00025"></a><span class="lineno"><a class="line" href="classmeow_1_1HSV.html#a8c55c893746a2d5596cee11a0f330dc9"> 25</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">inline</span> T <a class="code" href="classmeow_1_1HSV.html#a5a35504836c489a15c146750107cf73a">HSV&lt;T&gt;::h</a>(T <span class="keyword">const</span>&amp; val){<span class="keywordflow">return</span> (hsv_[0]=val);}</div>
+<div class="line"><a name="l00026"></a><span class="lineno"><a class="line" href="classmeow_1_1HSV.html#a906b364f3812999001c7fdd276afcff2"> 26</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">inline</span> T <a class="code" href="classmeow_1_1HSV.html#aa7a09adb410bb0955a16c52ad816f124">HSV&lt;T&gt;::s</a>(T <span class="keyword">const</span>&amp; val){<span class="keywordflow">return</span> (hsv_[1]=val);}</div>
+<div class="line"><a name="l00027"></a><span class="lineno"><a class="line" href="classmeow_1_1HSV.html#a134df2de37192c1a594e90c050e990e6"> 27</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">inline</span> T <a class="code" href="classmeow_1_1HSV.html#aeef19a9dacc066f08e1405ccdef1f5d4">HSV&lt;T&gt;::v</a>(T <span class="keyword">const</span>&amp; val){<span class="keywordflow">return</span> (hsv_[2]=val);}</div>
+<div class="line"><a name="l00028"></a><span class="lineno"><a class="line" href="classmeow_1_1HSV.html#a75b1556393e540d68759d0dcf32ceada"> 28</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">inline</span> T <a class="code" href="classmeow_1_1HSV.html#a628956c8133c225a2b9ba4a6a34e8e03">HSV&lt;T&gt;::hsv</a>(<span class="keywordtype">size_t</span> i, T <span class="keyword">const</span>&amp; val){</div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; <span class="keywordflow">return</span> (hsv_[std::min((<span class="keywordtype">size_t</span>)3 - 1, i)] = val);</div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; }</div>
+<div class="line"><a name="l00031"></a><span class="lineno"><a class="line" href="classmeow_1_1HSV.html#ac11478a77e1964944eee005a2066cc2f"> 31</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">inline</span> T <a class="code" href="classmeow_1_1HSV.html#a7f4c430084f4b8431b3c4ac80d61c959">HSV&lt;T&gt;::vsh</a>(<span class="keywordtype">size_t</span> i, T <span class="keyword">const</span>&amp; val){</div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; <span class="keywordflow">return</span> hsv(2 - i, val);</div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; }</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; </div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; </div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; </div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; </div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; </div>
+<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="classmeow_1_1HSVf.html#a592341f47599f4e46a315c6057a78a20"> 39</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="classmeow_1_1HSVf.html#a592341f47599f4e46a315c6057a78a20">HSVf:: HSVf</a>(): <a class="code" href="classmeow_1_1HSV.html">HSV</a>(){ }</div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="classmeow_1_1HSVf.html#a39e1b89abb63dcb35664130a18956d46"> 40</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="classmeow_1_1HSVf.html#a39e1b89abb63dcb35664130a18956d46">HSVf::~HSVf</a>(){ }</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="classmeow_1_1HSVf.html#a67add742dcf4bf226102cd30a92c2192"> 41</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="classmeow_1_1HSVf.html#a592341f47599f4e46a315c6057a78a20">HSVf::HSVf</a>(<span class="keywordtype">double</span> <span class="keyword">const</span>&amp;h,<span class="keywordtype">double</span> <span class="keyword">const</span>&amp;s,<span class="keywordtype">double</span> <span class="keyword">const</span>&amp;v):<a class="code" href="classmeow_1_1HSV.html">HSV</a>(h,s,v){}</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="classmeow_1_1HSVf.html#a87d3b0f879d2dae49135f051c944b35a"> 42</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="classmeow_1_1HSVf.html#a592341f47599f4e46a315c6057a78a20">HSVf::HSVf</a>(<span class="keywordtype">double</span> <span class="keyword">const</span>* hsv):<a class="code" href="classmeow_1_1HSV.html">HSV</a>(hsv){}</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="classmeow_1_1HSVf.html#a11dc3c29ef8fea571c27dff0605e6409"> 43</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="classmeow_1_1HSVf.html#a11dc3c29ef8fea571c27dff0605e6409">HSVf::hMin</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> 0.0; }</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="classmeow_1_1HSVf.html#a5e3e3f683820ba8c1aaf01e5c2267532"> 44</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="classmeow_1_1HSVf.html#a5e3e3f683820ba8c1aaf01e5c2267532">HSVf::hMax</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> 2.0 * <a class="code" href="namespacemeow.html#aa86d5920087a4e73078b759bc3996f76">PI</a>; }</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="classmeow_1_1HSVf.html#ab4fb9eac15c9dd67d937038c2d72af06"> 45</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="classmeow_1_1HSVf.html#ab4fb9eac15c9dd67d937038c2d72af06">HSVf::sMin</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> 0.0; }</div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="classmeow_1_1HSVf.html#a2e521602deaab25eff709edc1c380f82"> 46</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="classmeow_1_1HSVf.html#a2e521602deaab25eff709edc1c380f82">HSVf::sMax</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> 1.0; }</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="classmeow_1_1HSVf.html#abe13652f9d29453dbc998eb6ccddb237"> 47</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="classmeow_1_1HSVf.html#abe13652f9d29453dbc998eb6ccddb237">HSVf::vMin</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> 0.0; }</div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="classmeow_1_1HSVf.html#ae6eea3ef9b9948f3f8292c1c461b8fb1"> 48</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="classmeow_1_1HSVf.html#ae6eea3ef9b9948f3f8292c1c461b8fb1">HSVf::vMax</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> 1.0; }</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; </div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; </div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; </div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; </div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="namespacemeow.html#a58776e88aeb6bec45c2201cb70edda5d"> 53</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> RGB_T, <span class="keyword">class</span> HSV_T&gt; <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="namespacemeow.html#a58776e88aeb6bec45c2201cb70edda5d">RGB_to_HSV</a>(</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <a class="code" href="classmeow_1_1RGB.html">RGB&lt;RGB_T&gt;</a> <span class="keyword">const</span>&amp; rgb,</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <a class="code" href="classmeow_1_1HSV.html">HSV&lt;HSV_T&gt;</a> * hsv){</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordtype">double</span> r = <a class="code" href="namespacemeow.html#aebe1ad335556790c578c4cf7836fd9ca">normalize</a>(rgb.<a class="code" href="classmeow_1_1RGB.html#a348908dfe16b5a77e30c69d2126fb010">rMin</a>(), rgb.<a class="code" href="classmeow_1_1RGB.html#acf1e98a92ee1415e1278420c48976398">rMax</a>(), rgb.<a class="code" href="classmeow_1_1RGB.html#af404b8c2793659741bf4dcd3f9599c74">r</a>());</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keywordtype">double</span> g = <a class="code" href="namespacemeow.html#aebe1ad335556790c578c4cf7836fd9ca">normalize</a>(rgb.<a class="code" href="classmeow_1_1RGB.html#abc9f6654db5515946b10c7d593fc49cd">gMin</a>(), rgb.<a class="code" href="classmeow_1_1RGB.html#ac1e1bd0f904c0bc4d68d117ec9a88932">gMax</a>(), rgb.<a class="code" href="classmeow_1_1RGB.html#ad427ada53b9a14dfc46150d54e983cfb">g</a>());</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keywordtype">double</span> b = <a class="code" href="namespacemeow.html#aebe1ad335556790c578c4cf7836fd9ca">normalize</a>(rgb.<a class="code" href="classmeow_1_1RGB.html#ab9f74cc384f67615ad172e994a645de9">bMin</a>(), rgb.<a class="code" href="classmeow_1_1RGB.html#aa040fb899d8ecf152d95a6f7a4b3b066">bMax</a>(), rgb.<a class="code" href="classmeow_1_1RGB.html#aebff34ce6c558095ae73164a84f2e4c3">b</a>());</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordtype">double</span> mx = std::max(std::max(r, g), b);</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordtype">double</span> mn = std::min(std::min(r, g), b);</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keywordtype">double</span> h, s, v;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keywordflow">if</span> (mx == mn ) h = 0;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(mx == r &amp;&amp; g &gt;= b) h = <a class="code" href="namespacemeow.html#aa86d5920087a4e73078b759bc3996f76">PI</a>/3.0 * (g-b) / (mx-mn);</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(mx == r &amp;&amp; g &lt; b) h = <a class="code" href="namespacemeow.html#aa86d5920087a4e73078b759bc3996f76">PI</a>/3.0 * (g-b) / (mx-mn) + <a class="code" href="namespacemeow.html#aa86d5920087a4e73078b759bc3996f76">PI</a> * 2.0;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(mx == g ) h = <a class="code" href="namespacemeow.html#aa86d5920087a4e73078b759bc3996f76">PI</a>/3.0 * (b-r) / (mx-mn) + <a class="code" href="namespacemeow.html#aa86d5920087a4e73078b759bc3996f76">PI</a>/3.0*2.0;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordflow">else</span> h = <a class="code" href="namespacemeow.html#aa86d5920087a4e73078b759bc3996f76">PI</a>/3.0 * (r-g) / (mx-mn) + <a class="code" href="namespacemeow.html#aa86d5920087a4e73078b759bc3996f76">PI</a>/3.0*4.0;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordflow">if</span>(mx == 0) s = 0;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordflow">else</span> s = 1 - mn / mx;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; v = mx;</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; hsv-&gt;<a class="code" href="classmeow_1_1HSV.html#a5a35504836c489a15c146750107cf73a">h</a>(h);</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; hsv-&gt;<a class="code" href="classmeow_1_1HSV.html#aa7a09adb410bb0955a16c52ad816f124">s</a>(s);</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; hsv-&gt;<a class="code" href="classmeow_1_1HSV.html#aeef19a9dacc066f08e1405ccdef1f5d4">v</a>(v);</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; }</div>
+<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="namespacemeow.html#a5500d712d9a2fb7efcc1574474e94f67"> 74</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> HSV_T, <span class="keyword">class</span> RGB_T&gt; <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="namespacemeow.html#a5500d712d9a2fb7efcc1574474e94f67">HSV_to_RGB</a>(</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <a class="code" href="classmeow_1_1HSV.html">HSV&lt;HSV_T&gt;</a> <span class="keyword">const</span>&amp; hsv,</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <a class="code" href="classmeow_1_1RGB.html">RGB&lt;RGB_T&gt;</a> * rgb){</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordtype">double</span> h = <a class="code" href="namespacemeow.html#aebe1ad335556790c578c4cf7836fd9ca">normalize</a>(hsv.<a class="code" href="classmeow_1_1HSV.html#afd6308bfe34a833e31d75a91959a38a9">hMin</a>(), hsv.<a class="code" href="classmeow_1_1HSV.html#a587dfd1cf14ca12838d6e1da55880547">hMax</a>(), hsv.<a class="code" href="classmeow_1_1HSV.html#a5a35504836c489a15c146750107cf73a">h</a>()) * 360;</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordtype">double</span> s = <a class="code" href="namespacemeow.html#aebe1ad335556790c578c4cf7836fd9ca">normalize</a>(hsv.<a class="code" href="classmeow_1_1HSV.html#a5f94dc2d37503ade2fd61fb431625d02">sMin</a>(), hsv.<a class="code" href="classmeow_1_1HSV.html#af4fb1008dcab65cba05d6b4ce6d06b39">sMax</a>(), hsv.<a class="code" href="classmeow_1_1HSV.html#aa7a09adb410bb0955a16c52ad816f124">s</a>());</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordtype">double</span> v = <a class="code" href="namespacemeow.html#aebe1ad335556790c578c4cf7836fd9ca">normalize</a>(hsv.<a class="code" href="classmeow_1_1HSV.html#a57a874e92fb01404d4ae33179950e63b">vMin</a>(), hsv.<a class="code" href="classmeow_1_1HSV.html#a987ddab561832b5dd69adec27b6464de">vMax</a>(), hsv.<a class="code" href="classmeow_1_1HSV.html#aeef19a9dacc066f08e1405ccdef1f5d4">v</a>());</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keywordtype">int</span> hi = (<a class="code" href="classint.html">int</a>)h / 60 % 6;</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keywordtype">double</span> f = h / 60.0 - hi;</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordtype">double</span> p = v * (1 - s);</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordtype">double</span> q = v * (1 - f * s);</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordtype">double</span> t = v * (1 - (1 - f) * s);</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordtype">double</span> r, g, b;</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="keywordflow">if</span> (hi == 0){ r = v; g = t; b = p; }</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(hi == 1){ r = q; g = v; b = p; }</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(hi == 2){ r = p; g = v; b = t; }</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(hi == 3){ r = p; g = q; b = v; }</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(hi == 4){ r = t; g = p; b = v; }</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordflow">else</span> { r = v; g = p; b = q; }</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; rgb-&gt;<a class="code" href="classmeow_1_1RGB.html#af404b8c2793659741bf4dcd3f9599c74">r</a>(<a class="code" href="namespacemeow.html#af95cfca15ad7a51ed4d07b06e1296080">denormalize</a>(rgb-&gt;<a class="code" href="classmeow_1_1RGB.html#a348908dfe16b5a77e30c69d2126fb010">rMin</a>(), rgb-&gt;<a class="code" href="classmeow_1_1RGB.html#acf1e98a92ee1415e1278420c48976398">rMax</a>(), r));</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; rgb-&gt;<a class="code" href="classmeow_1_1RGB.html#ad427ada53b9a14dfc46150d54e983cfb">g</a>(<a class="code" href="namespacemeow.html#af95cfca15ad7a51ed4d07b06e1296080">denormalize</a>(rgb-&gt;<a class="code" href="classmeow_1_1RGB.html#abc9f6654db5515946b10c7d593fc49cd">gMin</a>(), rgb-&gt;<a class="code" href="classmeow_1_1RGB.html#ac1e1bd0f904c0bc4d68d117ec9a88932">gMax</a>(), g));</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; rgb-&gt;<a class="code" href="classmeow_1_1RGB.html#aebff34ce6c558095ae73164a84f2e4c3">b</a>(<a class="code" href="namespacemeow.html#af95cfca15ad7a51ed4d07b06e1296080">denormalize</a>(rgb-&gt;<a class="code" href="classmeow_1_1RGB.html#ab9f74cc384f67615ad172e994a645de9">bMin</a>(), rgb-&gt;<a class="code" href="classmeow_1_1RGB.html#aa040fb899d8ecf152d95a6f7a4b3b066">bMax</a>(), b));</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; }</div>
+<div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="namespacemeow.html#afc93890f332ecc0a7c081a1a1343d656"> 96</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> YUV_T, <span class="keyword">class</span> HSV_T&gt; <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="namespacemeow.html#afc93890f332ecc0a7c081a1a1343d656">YUV_to_HSV</a>(</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <a class="code" href="classmeow_1_1YUV.html">YUV&lt;YUV_T&gt;</a> <span class="keyword">const</span>&amp; yuv,</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <a class="code" href="classmeow_1_1HSV.html">HSV&lt;HSV_T&gt;</a> * hsv){</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <a class="code" href="classmeow_1_1RGBf.html">RGBf</a> tmp;</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <a class="code" href="namespacemeow.html#ace828526337b865be410d3a78d07d8b0">YUV_to_RGB</a>(yuv, &amp;tmp);</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <a class="code" href="namespacemeow.html#a58776e88aeb6bec45c2201cb70edda5d">RGB_to_HSV</a>(tmp, hsv);</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; }</div>
+<div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="namespacemeow.html#a74a4a3629d0406ef3d0e8bbb73dfaaeb"> 103</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> HSV_T, <span class="keyword">class</span> YUV_T&gt; <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="namespacemeow.html#a74a4a3629d0406ef3d0e8bbb73dfaaeb">HSV_to_YUV</a>(</div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <a class="code" href="classmeow_1_1HSV.html">HSV&lt;HSV_T&gt;</a> <span class="keyword">const</span>&amp; hsv,</div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <a class="code" href="classmeow_1_1YUV.html">YUV&lt;YUV_T&gt;</a> * yuv){</div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <a class="code" href="classmeow_1_1RGBf.html">RGBf</a> tmp;</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <a class="code" href="namespacemeow.html#a5500d712d9a2fb7efcc1574474e94f67">HSV_to_RGB</a>(hsv, &amp;tmp);</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <a class="code" href="namespacemeow.html#a9682162b4b67148649d87c2049175820">RGB_to_YUV</a>(tmp, yuv);</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; }</div>
+<div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="namespacemeow.html#a7c7d8533654e56cfd37a1ce22e76cde8"> 110</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> HSL_T, <span class="keyword">class</span> HSV_T&gt; <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="namespacemeow.html#a7c7d8533654e56cfd37a1ce22e76cde8">HSL_to_HSV</a>(</div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <a class="code" href="classmeow_1_1HSL.html">HSL&lt;HSL_T&gt;</a> <span class="keyword">const</span>&amp; hsl,</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <a class="code" href="classmeow_1_1HSV.html">HSV&lt;HSV_T&gt;</a> * hsv){</div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <a class="code" href="classmeow_1_1RGBf.html">RGBf</a> tmp;</div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <a class="code" href="namespacemeow.html#a0ef9dd19ef8613c009398be225d7dba5">HSL_to_RGB</a>(hsl, &amp;tmp);</div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <a class="code" href="namespacemeow.html#a58776e88aeb6bec45c2201cb70edda5d">RGB_to_HSV</a>(tmp, hsv);</div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; }</div>
+<div class="line"><a name="l00117"></a><span class="lineno"><a class="line" href="namespacemeow.html#a0ba8115cbe1d3c7bc41899a0035f9003"> 117</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> HSV_T, <span class="keyword">class</span> HSL_T&gt; <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="namespacemeow.html#a0ba8115cbe1d3c7bc41899a0035f9003">HSV_to_HSL</a>(</div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <a class="code" href="classmeow_1_1HSV.html">HSV&lt;HSV_T&gt;</a> <span class="keyword">const</span>&amp; hsv,</div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <a class="code" href="classmeow_1_1HSL.html">HSL&lt;HSL_T&gt;</a> * hsl){</div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <a class="code" href="classmeow_1_1RGBf.html">RGBf</a> tmp;</div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <a class="code" href="namespacemeow.html#a5500d712d9a2fb7efcc1574474e94f67">HSV_to_RGB</a>(hsv, &amp;tmp);</div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <a class="code" href="namespacemeow.html#ab5a740e832854cb4edd4db00b0550b03">RGB_to_HSL</a>(tmp, hsl);</div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; }</div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;}</div>
+<div class="ttc" id="HSL_8h_html"><div class="ttname"><a href="HSL_8h.html">HSL.h</a></div></div>
+<div class="ttc" id="classmeow_1_1RGB_html_acf1e98a92ee1415e1278420c48976398"><div class="ttname"><a href="classmeow_1_1RGB.html#acf1e98a92ee1415e1278420c48976398">meow::RGB::rMax</a></div><div class="ttdeci">virtual T rMax() const =0</div></div>
+<div class="ttc" id="classmeow_1_1HSV_html_a5a35504836c489a15c146750107cf73a"><div class="ttname"><a href="classmeow_1_1HSV.html#a5a35504836c489a15c146750107cf73a">meow::HSV::h</a></div><div class="ttdeci">T h() const </div><div class="ttdef"><b>Definition:</b> <a href="HSV_8hpp_source.html#l00018">HSV.hpp:18</a></div></div>
+<div class="ttc" id="namespacemeow_html_aebe1ad335556790c578c4cf7836fd9ca"><div class="ttname"><a href="namespacemeow.html#aebe1ad335556790c578c4cf7836fd9ca">meow::normalize</a></div><div class="ttdeci">T normalize(T lower, T upper, T value)</div><div class="ttdoc">(value-lower)/(upper-lower) </div><div class="ttdef"><b>Definition:</b> <a href="math_2utility_8h_source.html#l00027">utility.h:27</a></div></div>
+<div class="ttc" id="namespacemeow_html_a58776e88aeb6bec45c2201cb70edda5d"><div class="ttname"><a href="namespacemeow.html#a58776e88aeb6bec45c2201cb70edda5d">meow::RGB_to_HSV</a></div><div class="ttdeci">void RGB_to_HSV(RGB&lt; RGB_T &gt; const &amp;rgb, HSV&lt; HSV_T &gt; *hsv)</div><div class="ttdef"><b>Definition:</b> <a href="HSV_8hpp_source.html#l00053">HSV.hpp:53</a></div></div>
+<div class="ttc" id="RGB_8h_html"><div class="ttname"><a href="RGB_8h.html">RGB.h</a></div></div>
+<div class="ttc" id="classmeow_1_1HSV_html_aa7a09adb410bb0955a16c52ad816f124"><div class="ttname"><a href="classmeow_1_1HSV.html#aa7a09adb410bb0955a16c52ad816f124">meow::HSV::s</a></div><div class="ttdeci">T s() const </div><div class="ttdef"><b>Definition:</b> <a href="HSV_8hpp_source.html#l00019">HSV.hpp:19</a></div></div>
+<div class="ttc" id="classmeow_1_1HSV_html_a587dfd1cf14ca12838d6e1da55880547"><div class="ttname"><a href="classmeow_1_1HSV.html#a587dfd1cf14ca12838d6e1da55880547">meow::HSV::hMax</a></div><div class="ttdeci">virtual T hMax() const =0</div></div>
+<div class="ttc" id="namespacemeow_html_a74a4a3629d0406ef3d0e8bbb73dfaaeb"><div class="ttname"><a href="namespacemeow.html#a74a4a3629d0406ef3d0e8bbb73dfaaeb">meow::HSV_to_YUV</a></div><div class="ttdeci">void HSV_to_YUV(HSV&lt; HSV_T &gt; const &amp;hsv, YUV&lt; YUV_T &gt; *yuv)</div><div class="ttdef"><b>Definition:</b> <a href="HSV_8hpp_source.html#l00103">HSV.hpp:103</a></div></div>
+<div class="ttc" id="classmeow_1_1HSV_html_a5f94dc2d37503ade2fd61fb431625d02"><div class="ttname"><a href="classmeow_1_1HSV.html#a5f94dc2d37503ade2fd61fb431625d02">meow::HSV::sMin</a></div><div class="ttdeci">virtual T sMin() const =0</div></div>
+<div class="ttc" id="classmeow_1_1RGB_html_aa040fb899d8ecf152d95a6f7a4b3b066"><div class="ttname"><a href="classmeow_1_1RGB.html#aa040fb899d8ecf152d95a6f7a4b3b066">meow::RGB::bMax</a></div><div class="ttdeci">virtual T bMax() const =0</div></div>
+<div class="ttc" id="namespacemeow_html_a0ef9dd19ef8613c009398be225d7dba5"><div class="ttname"><a href="namespacemeow.html#a0ef9dd19ef8613c009398be225d7dba5">meow::HSL_to_RGB</a></div><div class="ttdeci">void HSL_to_RGB(HSL&lt; HSL_T &gt; const &amp;hsl, RGB&lt; RGB_T &gt; *rgb)</div><div class="ttdef"><b>Definition:</b> <a href="HSL_8hpp_source.html#l00074">HSL.hpp:74</a></div></div>
+<div class="ttc" id="classmeow_1_1HSV_html_a987ddab561832b5dd69adec27b6464de"><div class="ttname"><a href="classmeow_1_1HSV.html#a987ddab561832b5dd69adec27b6464de">meow::HSV::vMax</a></div><div class="ttdeci">virtual T vMax() const =0</div></div>
+<div class="ttc" id="classmeow_1_1RGB_html"><div class="ttname"><a href="classmeow_1_1RGB.html">meow::RGB</a></div><div class="ttdef"><b>Definition:</b> <a href="RGB_8h_source.html#l00005">RGB.h:5</a></div></div>
+<div class="ttc" id="classmeow_1_1HSV_html"><div class="ttname"><a href="classmeow_1_1HSV.html">meow::HSV</a></div><div class="ttdef"><b>Definition:</b> <a href="HSV_8h_source.html#l00009">HSV.h:9</a></div></div>
+<div class="ttc" id="classmeow_1_1RGB_html_af404b8c2793659741bf4dcd3f9599c74"><div class="ttname"><a href="classmeow_1_1RGB.html#af404b8c2793659741bf4dcd3f9599c74">meow::RGB::r</a></div><div class="ttdeci">T r() const </div><div class="ttdef"><b>Definition:</b> <a href="RGB_8hpp_source.html#l00014">RGB.hpp:14</a></div></div>
+<div class="ttc" id="namespacemeow_html_af95cfca15ad7a51ed4d07b06e1296080"><div class="ttname"><a href="namespacemeow.html#af95cfca15ad7a51ed4d07b06e1296080">meow::denormalize</a></div><div class="ttdeci">T denormalize(T lower, T upper, T _ratio)</div><div class="ttdoc">(lower+_ratio*(upper-lower)) </div><div class="ttdef"><b>Definition:</b> <a href="math_2utility_8h_source.html#l00035">utility.h:35</a></div></div>
+<div class="ttc" id="classmeow_1_1RGB_html_ab9f74cc384f67615ad172e994a645de9"><div class="ttname"><a href="classmeow_1_1RGB.html#ab9f74cc384f67615ad172e994a645de9">meow::RGB::bMin</a></div><div class="ttdeci">virtual T bMin() const =0</div></div>
+<div class="ttc" id="classmeow_1_1RGBf_html"><div class="ttname"><a href="classmeow_1_1RGBf.html">meow::RGBf</a></div><div class="ttdef"><b>Definition:</b> <a href="RGB_8h_source.html#l00034">RGB.h:34</a></div></div>
+<div class="ttc" id="classmeow_1_1HSVf_html_a39e1b89abb63dcb35664130a18956d46"><div class="ttname"><a href="classmeow_1_1HSVf.html#a39e1b89abb63dcb35664130a18956d46">meow::HSVf::~HSVf</a></div><div class="ttdeci">~HSVf()</div><div class="ttdef"><b>Definition:</b> <a href="HSV_8hpp_source.html#l00040">HSV.hpp:40</a></div></div>
+<div class="ttc" id="classmeow_1_1HSVf_html_a2e521602deaab25eff709edc1c380f82"><div class="ttname"><a href="classmeow_1_1HSVf.html#a2e521602deaab25eff709edc1c380f82">meow::HSVf::sMax</a></div><div class="ttdeci">double sMax() const </div><div class="ttdef"><b>Definition:</b> <a href="HSV_8hpp_source.html#l00046">HSV.hpp:46</a></div></div>
+<div class="ttc" id="classmeow_1_1HSV_html_a628956c8133c225a2b9ba4a6a34e8e03"><div class="ttname"><a href="classmeow_1_1HSV.html#a628956c8133c225a2b9ba4a6a34e8e03">meow::HSV::hsv</a></div><div class="ttdeci">T hsv(size_t i) const </div><div class="ttdef"><b>Definition:</b> <a href="HSV_8hpp_source.html#l00021">HSV.hpp:21</a></div></div>
+<div class="ttc" id="classmeow_1_1YUV_html"><div class="ttname"><a href="classmeow_1_1YUV.html">meow::YUV</a></div><div class="ttdef"><b>Definition:</b> <a href="YUV_8h_source.html#l00007">YUV.h:7</a></div></div>
+<div class="ttc" id="namespacemeow_html_a9682162b4b67148649d87c2049175820"><div class="ttname"><a href="namespacemeow.html#a9682162b4b67148649d87c2049175820">meow::RGB_to_YUV</a></div><div class="ttdeci">void RGB_to_YUV(RGB&lt; RGB_T &gt; const &amp;rgb, YUV&lt; YUV_T &gt; *yuv)</div><div class="ttdef"><b>Definition:</b> <a href="YUV_8hpp_source.html#l00047">YUV.hpp:47</a></div></div>
+<div class="ttc" id="namespacemeow_html_a5500d712d9a2fb7efcc1574474e94f67"><div class="ttname"><a href="namespacemeow.html#a5500d712d9a2fb7efcc1574474e94f67">meow::HSV_to_RGB</a></div><div class="ttdeci">void HSV_to_RGB(HSV&lt; HSV_T &gt; const &amp;hsv, RGB&lt; RGB_T &gt; *rgb)</div><div class="ttdef"><b>Definition:</b> <a href="HSV_8hpp_source.html#l00074">HSV.hpp:74</a></div></div>
+<div class="ttc" id="classmeow_1_1HSVf_html_a5e3e3f683820ba8c1aaf01e5c2267532"><div class="ttname"><a href="classmeow_1_1HSVf.html#a5e3e3f683820ba8c1aaf01e5c2267532">meow::HSVf::hMax</a></div><div class="ttdeci">double hMax() const </div><div class="ttdef"><b>Definition:</b> <a href="HSV_8hpp_source.html#l00044">HSV.hpp:44</a></div></div>
+<div class="ttc" id="namespacemeow_html_a7c7d8533654e56cfd37a1ce22e76cde8"><div class="ttname"><a href="namespacemeow.html#a7c7d8533654e56cfd37a1ce22e76cde8">meow::HSL_to_HSV</a></div><div class="ttdeci">void HSL_to_HSV(HSL&lt; HSL_T &gt; const &amp;hsl, HSV&lt; HSV_T &gt; *hsv)</div><div class="ttdef"><b>Definition:</b> <a href="HSV_8hpp_source.html#l00110">HSV.hpp:110</a></div></div>
+<div class="ttc" id="classmeow_1_1HSL_html"><div class="ttname"><a href="classmeow_1_1HSL.html">meow::HSL</a></div><div class="ttdef"><b>Definition:</b> <a href="HSL_8h_source.html#l00008">HSL.h:8</a></div></div>
+<div class="ttc" id="namespacemeow_html_ace828526337b865be410d3a78d07d8b0"><div class="ttname"><a href="namespacemeow.html#ace828526337b865be410d3a78d07d8b0">meow::YUV_to_RGB</a></div><div class="ttdeci">void YUV_to_RGB(YUV&lt; YUV_T &gt; const &amp;yuv, RGB&lt; RGB_T &gt; *rgb)</div><div class="ttdef"><b>Definition:</b> <a href="YUV_8hpp_source.html#l00060">YUV.hpp:60</a></div></div>
+<div class="ttc" id="namespacemeow_html_afc93890f332ecc0a7c081a1a1343d656"><div class="ttname"><a href="namespacemeow.html#afc93890f332ecc0a7c081a1a1343d656">meow::YUV_to_HSV</a></div><div class="ttdeci">void YUV_to_HSV(YUV&lt; YUV_T &gt; const &amp;yuv, HSV&lt; HSV_T &gt; *hsv)</div><div class="ttdef"><b>Definition:</b> <a href="HSV_8hpp_source.html#l00096">HSV.hpp:96</a></div></div>
+<div class="ttc" id="classmeow_1_1HSV_html_afd6308bfe34a833e31d75a91959a38a9"><div class="ttname"><a href="classmeow_1_1HSV.html#afd6308bfe34a833e31d75a91959a38a9">meow::HSV::hMin</a></div><div class="ttdeci">virtual T hMin() const =0</div></div>
+<div class="ttc" id="classmeow_1_1HSV_html_af4fb1008dcab65cba05d6b4ce6d06b39"><div class="ttname"><a href="classmeow_1_1HSV.html#af4fb1008dcab65cba05d6b4ce6d06b39">meow::HSV::sMax</a></div><div class="ttdeci">virtual T sMax() const =0</div></div>
+<div class="ttc" id="classmeow_1_1HSV_html_a7b6274bb5ade15a133d9c9628049df7e"><div class="ttname"><a href="classmeow_1_1HSV.html#a7b6274bb5ade15a133d9c9628049df7e">meow::HSV::HSV</a></div><div class="ttdeci">HSV()</div><div class="ttdef"><b>Definition:</b> <a href="HSV_8hpp_source.html#l00010">HSV.hpp:10</a></div></div>
+<div class="ttc" id="classmeow_1_1HSV_html_aeef19a9dacc066f08e1405ccdef1f5d4"><div class="ttname"><a href="classmeow_1_1HSV.html#aeef19a9dacc066f08e1405ccdef1f5d4">meow::HSV::v</a></div><div class="ttdeci">T v() const </div><div class="ttdef"><b>Definition:</b> <a href="HSV_8hpp_source.html#l00020">HSV.hpp:20</a></div></div>
+<div class="ttc" id="classmeow_1_1RGB_html_ac1e1bd0f904c0bc4d68d117ec9a88932"><div class="ttname"><a href="classmeow_1_1RGB.html#ac1e1bd0f904c0bc4d68d117ec9a88932">meow::RGB::gMax</a></div><div class="ttdeci">virtual T gMax() const =0</div></div>
+<div class="ttc" id="classmeow_1_1HSVf_html_ab4fb9eac15c9dd67d937038c2d72af06"><div class="ttname"><a href="classmeow_1_1HSVf.html#ab4fb9eac15c9dd67d937038c2d72af06">meow::HSVf::sMin</a></div><div class="ttdeci">double sMin() const </div><div class="ttdef"><b>Definition:</b> <a href="HSV_8hpp_source.html#l00045">HSV.hpp:45</a></div></div>
+<div class="ttc" id="namespacemeow_html_aa86d5920087a4e73078b759bc3996f76"><div class="ttname"><a href="namespacemeow.html#aa86d5920087a4e73078b759bc3996f76">meow::PI</a></div><div class="ttdeci">static const double PI</div><div class="ttdoc">圓周率... </div><div class="ttdef"><b>Definition:</b> <a href="math_2utility_8h_source.html#l00012">utility.h:12</a></div></div>
+<div class="ttc" id="classmeow_1_1RGB_html_a348908dfe16b5a77e30c69d2126fb010"><div class="ttname"><a href="classmeow_1_1RGB.html#a348908dfe16b5a77e30c69d2126fb010">meow::RGB::rMin</a></div><div class="ttdeci">virtual T rMin() const =0</div></div>
+<div class="ttc" id="classmeow_1_1HSV_html_a57a874e92fb01404d4ae33179950e63b"><div class="ttname"><a href="classmeow_1_1HSV.html#a57a874e92fb01404d4ae33179950e63b">meow::HSV::vMin</a></div><div class="ttdeci">virtual T vMin() const =0</div></div>
+<div class="ttc" id="classmeow_1_1RGB_html_ad427ada53b9a14dfc46150d54e983cfb"><div class="ttname"><a href="classmeow_1_1RGB.html#ad427ada53b9a14dfc46150d54e983cfb">meow::RGB::g</a></div><div class="ttdeci">T g() const </div><div class="ttdef"><b>Definition:</b> <a href="RGB_8hpp_source.html#l00015">RGB.hpp:15</a></div></div>
+<div class="ttc" id="classmeow_1_1RGB_html_abc9f6654db5515946b10c7d593fc49cd"><div class="ttname"><a href="classmeow_1_1RGB.html#abc9f6654db5515946b10c7d593fc49cd">meow::RGB::gMin</a></div><div class="ttdeci">virtual T gMin() const =0</div></div>
+<div class="ttc" id="classmeow_1_1HSVf_html_a11dc3c29ef8fea571c27dff0605e6409"><div class="ttname"><a href="classmeow_1_1HSVf.html#a11dc3c29ef8fea571c27dff0605e6409">meow::HSVf::hMin</a></div><div class="ttdeci">double hMin() const </div><div class="ttdef"><b>Definition:</b> <a href="HSV_8hpp_source.html#l00043">HSV.hpp:43</a></div></div>
+<div class="ttc" id="classmeow_1_1HSV_html_a7f4c430084f4b8431b3c4ac80d61c959"><div class="ttname"><a href="classmeow_1_1HSV.html#a7f4c430084f4b8431b3c4ac80d61c959">meow::HSV::vsh</a></div><div class="ttdeci">T vsh(size_t i) const </div><div class="ttdef"><b>Definition:</b> <a href="HSV_8hpp_source.html#l00024">HSV.hpp:24</a></div></div>
+<div class="ttc" id="namespacemeow_html_ab5a740e832854cb4edd4db00b0550b03"><div class="ttname"><a href="namespacemeow.html#ab5a740e832854cb4edd4db00b0550b03">meow::RGB_to_HSL</a></div><div class="ttdeci">void RGB_to_HSL(RGB&lt; RGB_T &gt; const &amp;rgb, HSL&lt; HSL_T &gt; *hsl)</div><div class="ttdef"><b>Definition:</b> <a href="HSL_8hpp_source.html#l00052">HSL.hpp:52</a></div></div>
+<div class="ttc" id="classmeow_1_1HSVf_html_abe13652f9d29453dbc998eb6ccddb237"><div class="ttname"><a href="classmeow_1_1HSVf.html#abe13652f9d29453dbc998eb6ccddb237">meow::HSVf::vMin</a></div><div class="ttdeci">double vMin() const </div><div class="ttdef"><b>Definition:</b> <a href="HSV_8hpp_source.html#l00047">HSV.hpp:47</a></div></div>
+<div class="ttc" id="classmeow_1_1RGB_html_aebff34ce6c558095ae73164a84f2e4c3"><div class="ttname"><a href="classmeow_1_1RGB.html#aebff34ce6c558095ae73164a84f2e4c3">meow::RGB::b</a></div><div class="ttdeci">T b() const </div><div class="ttdef"><b>Definition:</b> <a href="RGB_8hpp_source.html#l00016">RGB.hpp:16</a></div></div>
+<div class="ttc" id="classmeow_1_1HSVf_html_a592341f47599f4e46a315c6057a78a20"><div class="ttname"><a href="classmeow_1_1HSVf.html#a592341f47599f4e46a315c6057a78a20">meow::HSVf::HSVf</a></div><div class="ttdeci">HSVf()</div><div class="ttdef"><b>Definition:</b> <a href="HSV_8hpp_source.html#l00039">HSV.hpp:39</a></div></div>
+<div class="ttc" id="classmeow_1_1HSVf_html_ae6eea3ef9b9948f3f8292c1c461b8fb1"><div class="ttname"><a href="classmeow_1_1HSVf.html#ae6eea3ef9b9948f3f8292c1c461b8fb1">meow::HSVf::vMax</a></div><div class="ttdeci">double vMax() const </div><div class="ttdef"><b>Definition:</b> <a href="HSV_8hpp_source.html#l00048">HSV.hpp:48</a></div></div>
+<div class="ttc" id="classint_html"><div class="ttname"><a href="classint.html">int</a></div></div>
+<div class="ttc" id="namespacemeow_html_a0ba8115cbe1d3c7bc41899a0035f9003"><div class="ttname"><a href="namespacemeow.html#a0ba8115cbe1d3c7bc41899a0035f9003">meow::HSV_to_HSL</a></div><div class="ttdeci">void HSV_to_HSL(HSV&lt; HSV_T &gt; const &amp;hsv, HSL&lt; HSL_T &gt; *hsl)</div><div class="ttdef"><b>Definition:</b> <a href="HSV_8hpp_source.html#l00117">HSV.hpp:117</a></div></div>
+<div class="ttc" id="HSV_8h_html"><div class="ttname"><a href="HSV_8h.html">HSV.h</a></div></div>
+<div class="ttc" id="YUV_8h_html"><div class="ttname"><a href="YUV_8h.html">YUV.h</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- HTML footer for doxygen 1.8.3.1-->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_f6840b2fecd08a3779df34f0add0e074.html">colors</a></li><li class="navelem"><a class="el" href="HSV_8hpp.html">HSV.hpp</a></li>
+ <li class="footer">Generated on Mon Jun 23 2014 17:02:02 for Templates -- Meow by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.6 </li>
+ </ul>
+</div>
+</body>
+</html>