<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>ImageStone: FCColor Class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.4.1 -->
<div class="qindex"><a class="qindex" href="index.html">Main Page</a> | <a class="qindex" href="hierarchy.html">Class Hierarchy</a> | <a class="qindex" href="annotated.html">Class List</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="functions.html">Class Members</a></div>
<h1>FCColor Class Reference</h1>Color helper class.
<a href="#_details">More...</a>
<p>
<code>#include <<a class="el" href="_f_color_8h-source.html">FColor.h</a>></code>
<p>
<a href="class_f_c_color-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Static Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_color.html#e0">CombineAlphaPixel</a> (RGBQUAD *pDest, RGBQUAD cr1, RGBQUAD cr2, BYTE nAlpha2)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Combine two pixel, result put into pDest. <a href="#e0"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e1" doxytag="FCColor::AlphaBlendPixel"></a>
static void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_color.html#e1">AlphaBlendPixel</a> (BYTE *pDest, const BYTE *pSrc, BYTE nAlphaSrc)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">AlphaBlend two pixel, result put into pDest. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e2" doxytag="FCColor::GetGrayscale"></a>
static BYTE </td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_color.html#e2">GetGrayscale</a> (const void *prgb)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate pixel's grayscale value. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_color.html#e3">CopyPixel</a> (void *pDest, const void *pSrc, int nBytes)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Rapid pixel copy. <a href="#e3"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static RGBQUAD </td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_color.html#e4">Get_Bilinear_Pixel</a> (double x, double y, BOOL bHasAlpha, const BYTE *crPixel[4])</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Computes bilinear interpolation of four pixels. <a href="#e4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e5" doxytag="FCColor::crBlack"></a>
static RGBQUAD </td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_color.html#e5">crBlack</a> ()</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Color black. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e6" doxytag="FCColor::crWhite"></a>
static RGBQUAD </td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_color.html#e6">crWhite</a> ()</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Color white. <br></td></tr>
<tr><td colspan="2"><div class="groupHeader">RGB <==> HLS (Hue, Lightness, Saturation).</div></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="z1_0" doxytag="FCColor::RGBtoHLS"></a>
static void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_color.html#z1_0">RGBtoHLS</a> (const void *prgb, double *H, double *L, double *S)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">RGB ==> HLS. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="z1_1" doxytag="FCColor::HLStoRGB"></a>
static RGBQUAD </td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_color.html#z1_1">HLStoRGB</a> (const double &H, const double &L, const double &S)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">HLS ==> RGB. <br></td></tr>
<tr><td colspan="2"><div class="groupHeader">RGB <==> HSV (Hue, Saturation, Value).</div></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="z3_0" doxytag="FCColor::RGBtoHSV"></a>
static void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_color.html#z3_0">RGBtoHSV</a> (const void *prgb, double *H, double *S, double *V)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">RGB ==> HSV. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="z3_1" doxytag="FCColor::HSVtoRGB"></a>
static RGBQUAD </td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_color.html#z3_1">HSVtoRGB</a> (double H, const double &S, const double &V)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">HSV ==> RGB. <br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Color helper class.
<p>
all function has no param check.
<p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="e0" doxytag="FCColor::CombineAlphaPixel"></a><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">PCL_forceinline void FCColor::CombineAlphaPixel </td>
<td class="md" valign="top">( </td>
<td class="md" nowrap valign="top">RGBQUAD * </td>
<td class="mdname" nowrap> <em>pDest</em>, </td>
</tr>
<tr>
<td class="md" nowrap align="right"></td>
<td class="md"></td>
<td class="md" nowrap>RGBQUAD </td>
<td class="mdname" nowrap> <em>cr1</em>, </td>
</tr>
<tr>
<td class="md" nowrap align="right"></td>
<td class="md"></td>
<td class="md" nowrap>RGBQUAD </td>
<td class="mdname" nowrap> <em>cr2</em>, </td>
</tr>
<tr>
<td class="md" nowrap align="right"></td>
<td class="md"></td>
<td class="md" nowrap>BYTE </td>
<td class="mdname" nowrap> <em>nAlpha2</em></td>
</tr>
<tr>
<td class="md"></td>
<td class="md">) </td>
<td class="md" colspan="2"><code> [static]</code></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
</td>
<td>
<p>
Combine two pixel, result put into pDest.
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>pDest</em> </td><td>: must be 32bpp </td></tr>
<tr><td valign="top"></td><td valign="top"><em>cr1</em> </td><td>: background </td></tr>
<tr><td valign="top"></td><td valign="top"><em>cr2</em> </td><td>: foreground </td></tr>
<tr><td valign="top"></td><td valign="top"><em>nAlpha2</em> </td><td>: alpha value of cr2 </td></tr>
</table>
</dl>
</td>
</tr>
</table>
<a class="anchor" name="e3" doxytag="FCColor::CopyPixel"></a><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">PCL_forceinline void FCColor::CopyPixel </td>
<td class="md" valign="top">( </td>
<td class="md" nowrap valign="top">void * </td>
<td class="mdname" nowrap> <em>pDest</em>, </td>
</tr>
<tr>
<td class="md" nowrap align="right"></td>
<td class="md"></td>
<td class="md" nowrap>const void * </td>
<td class="mdname" nowrap> <em>pSrc</em>, </td>
</tr>
<tr>
<td class="md" nowrap align="right"></td>
<td class="md"></td>
<td class="md" nowrap>int </td>
<td class="mdname" nowrap> <em>nBytes</em></td>
</tr>
<tr>
<td class="md"></td>
<td class="md">) </td>
<td class="md" colspan="2"><code> [static]</code></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
</td>
<td>
<p>
Rapid pixel copy.
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>nBytes</em> </td><td>: can be 1,2,3,4 </td></tr>
</table>
</dl>
</td>
</tr>
</table>
<a class="anchor" name="e4" doxytag="FCColor::Get_Bilinear_Pixel"></a><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">RGBQUAD FCColor::Get_Bilinear_Pixel </td>
<td class="md" valign="top">( </td>
<td class="md" nowrap valign="top">double </td>
<td class="mdname" nowrap> <em>x</em>, </td>
</tr>
<tr>
<td class="md" nowrap align="right"></td>
<td class="md"></td>
<td class="md" nowrap>double </td>
<td class="mdname" nowrap> <em>y</em>, </td>
</tr>
<tr>
<td class="md" nowrap align="right"></td>
<td class="md"></td>
<td class="md" nowrap>BOOL </td>
<td class="mdname" nowrap> <em>bHasAlpha</em>, </td>
</tr>
<tr>
<td class="md" nowrap align="right"></td>
<td class="md"></td>
<td class="md" nowrap>const BYTE * </td>
<td class="mdname" nowrap> <em>crPixel</em>[4]</td>
</tr>
<tr>
<td class="md"></td>
<td class="md">) </td>
<td class="md" colspan="2"><code> [inline, static]</code></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
</td>
<td>
<p>
Computes bilinear interpolation of four pixels.
<p>
The pixels in 'crPixel' in the following (x,y) order: [0,0], [1,0], [0,1], [1,1]. </td>
</tr>
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="_f_color_8h-source.html">FColor.h</a></ul>
<hr size="1"><address style="align: right;"><small>Generated on Wed Mar 8 11:12:47 2006 for ImageStone by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.1 </small></address>
</body>
</html>