File: GetPixel.html

package info (click to toggle)
openlayer 2.1-2.1
  • links: PTS
  • area: main
  • in suites: bullseye, buster, stretch
  • size: 3,392 kB
  • ctags: 2,317
  • sloc: ansic: 10,433; cpp: 9,890; xml: 109; makefile: 90; sh: 36
file content (29 lines) | stat: -rw-r--r-- 10,390 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transistional//EN"><html><head><title>OpenLayer Offline Manual</title><style type="text/css" media="all">@import "../CrystalStyle.css";</style><body bgcolor="FFFFFF" ><div align="center" style="pagestyle"><table width="60%"><tr><td><div class="parentLinks"><a href="../index.html">OpenLayer</a> | <a href="../Bitmap.html">Bitmap</a> | <a href="../Bitmap/GetPixel.html">GetPixel</a></div><br><div class="BigHeader">GetPixel</div><br><div class=""><div class="Surrounded"><table><tr valign="top"><td align="right"><div class="FuncDef"><strong><font color="#777733">inline</font> <a href="../Rgba.html"><font color="#0000CC">Rgba</font></a> <a href="../Bitmap/GetPixel.html"><font color="#0000CC">GetPixel</font></a>(</strong></div></td><td><div class="FuncDef"><strong><font color="#777733">int</font> x, <font color="#777733">int</font> y ) <font color="#777733">const</font>;
<br></strong></div></td></tr></table>
<br>Returns the color value of the specified pixel as an Rgba color.
<br></div>
<br>No checking is done wether the pixel actually lies inside the pixel so make sure that you don't try to read a pixel out of the bounds of the bitmap, which would lead to a crash.
<br>
<br>This function is <b>relatively slow</b> so it's best to not to call this function per each pixel in the Bitmap! If you read only a few dozen of pixels per frame it shouldn't be too slow, though.
<br>
<br>To read the whole Bitmap, you should first get a copy of it in the memory by calling <a href="../Canvas/GetMemoryBitmap.html"><font color="#0000CC">GetMemoryBitmap</font></a> instead.
<br>
<br>Since OpenLayer 2.0, this function reads the color from the texture information in the graphics card. Thus if the Bitmap isn't loaded in the graphics card, this function won't work!</div><br><div class="MediumHeader">Examples</div><br><div class="Code"><a href="../Bitmap.html"><font color="#0000CC">Bitmap</font></a>&nbsp;myBmp(&nbsp;...&nbsp;);
<br>
<br><font color="#999922">//&nbsp;Get&nbsp;the&nbsp;color&nbsp;of&nbsp;the&nbsp;pixel&nbsp;x&nbsp;=&nbsp;7,&nbsp;y&nbsp;=&nbsp;5&nbsp;in&nbsp;the&nbsp;bitmap&nbsp;//</font>
<br><a href="../Rgba.html"><font color="#0000CC">Rgba</font></a>&nbsp;color&nbsp;=&nbsp;myBmp.<a href="../Bitmap/GetPixel.html"><font color="#0000CC">GetPixel</font></a>(&nbsp;<font color="#994400">7</font>,&nbsp;<font color="#994400">5</font>&nbsp;);
<br>
<br><font color="#999922">//&nbsp;That&nbsp;would&nbsp;lead&nbsp;to&nbsp;a&nbsp;crash&nbsp;if&nbsp;the&nbsp;size&nbsp;of&nbsp;the&nbsp;bitmap&nbsp;would&nbsp;be&nbsp;less&nbsp;than&nbsp;8x6&nbsp;//</font>
<br><font color="#999922">//&nbsp;The&nbsp;safe&nbsp;way&nbsp;would&nbsp;be:&nbsp;//</font>
<br>
<br><a href="../Rgba.html"><font color="#0000CC">Rgba</font></a>&nbsp;color;
<br><font color="#777733">int</font>&nbsp;x&nbsp;=&nbsp;<font color="#994400">7</font>,&nbsp;y&nbsp;=&nbsp;<font color="#994400">8</font>;
<br>
<br><font color="#447711">if</font>(&nbsp;x&nbsp;>=&nbsp;<font color="#994400">0</font>&nbsp;&&&nbsp;x&nbsp;<&nbsp;myBmp.<a href="../Canvas/Width.html"><font color="#0000CC">Width</font></a>()&nbsp;&&
<br>&nbsp;&nbsp;&nbsp;&nbsp;y&nbsp;>=&nbsp;<font color="#994400">0</font>&nbsp;&&&nbsp;y&nbsp;<&nbsp;myBmp.<a href="../TextRenderer/Height.html"><font color="#0000CC">Height</font></a>()&nbsp;)&nbsp;{
<br>
<br>&nbsp;&nbsp;&nbsp;color&nbsp;=&nbsp;myBmp.<a href="../Bitmap/GetPixel.html"><font color="#0000CC">GetPixel</font></a>(&nbsp;<font color="#994400">7</font>,&nbsp;<font color="#994400">5</font>&nbsp;);
<br>}</div><div class=""><br><br><div class="MediumHeader">Other functions of the class <a href="../Bitmap.html"><font color="#0000CC">Bitmap</font></a></div><div class="Surrounded"><table size="100%" cellpadding="0" cellspacing="0"><tr><td halign="center" class="funclist"><a href="../Bitmap/Load.html">Load</a></td><td width="65%" halign="center"><div class="smalltext">Loads the bitmap</div></td></tr><tr><td halign="center" class="funclist"><a href="../Bitmap/Blit.html">Blit</a></td><td width="65%" halign="center"><div class="smalltext">Draws the Bitmap to the screen</div></td></tr><tr><td halign="center" class="funclist"><a href="../Bitmap/BlitRotated.html">BlitRotated</a></td><td width="65%" halign="center"><div class="smalltext">Draws the Bitmap to the screen rotated along a point</div></td></tr><tr><td halign="center" class="funclist"><a href="../Bitmap/BlitStretched.html">BlitStretched</a></td><td width="65%" halign="center"><div class="smalltext">Draws the Bitmap to the screen stretched to the specified size</div></td></tr><tr><td halign="center" class="funclist"><a href="../Bitmap/BlitTransformed.html">BlitTransformed</a></td><td width="65%" halign="center"><div class="smalltext">Draws the Bitmap to the screen rotated and stretched</div></td></tr><tr><td halign="center" class="funclist"><a href="../Bitmap/BlitDistorted.html">BlitDistorted</a></td><td width="65%" halign="center"><div class="smalltext">Draws the Bitmap to the screen with the given corner points</div></td></tr><tr><td halign="center" class="funclist"><a href="../Bitmap/Width.html">Width</a></td><td width="65%" halign="center"><div class="smalltext">Returns the width of the Bitmap</div></td></tr><tr><td halign="center" class="funclist"><a href="../Bitmap/Height.html">Height</a></td><td width="65%" halign="center"><div class="smalltext">Returns the height of the Bitmap</div></td></tr><tr><td halign="center" class="funclist"><a href="../Bitmap/LoadListOfBitmaps.html">LoadListOfBitmaps</a></td><td width="65%" halign="center"><div class="smalltext">Loads a list of bitmaps from the disk</div></td></tr><tr><td halign="center" class="funclist"><a href="../Bitmap/GetPixel.html">GetPixel</a></td><td width="65%" halign="center"><div class="smalltext">Returns the color value of a pixel</div></td></tr><tr><td halign="center" class="funclist"><a href="../Bitmap/Destroy.html">Destroy</a></td><td width="65%" halign="center"><div class="smalltext">Destroys the Bitmap</div></td></tr><tr><td halign="center" class="funclist"><a href="../Bitmap/IsValid.html">IsValid</a></td><td width="65%" halign="center"><div class="smalltext">Checks if the Bitmap was loaded correctly</div></td></tr><tr><td halign="center" class="funclist"><a href="../Bitmap/Save.html">Save</a></td><td width="65%" halign="center"><div class="smalltext">Saves the Bitmap to disk with the specified filename</div></td></tr><tr><td halign="center" class="funclist"><a href="../Bitmap/CopyFromScreen.html">CopyFromScreen</a></td><td width="65%" halign="center"><div class="smalltext">Copies a region of the game window to the Bitmap</div></td></tr><tr><td halign="center" class="funclist"><a href="../Bitmap/GetMemoryBitmap.html">GetMemoryBitmap</a></td><td width="65%" halign="center"><div class="smalltext">Returns a memory bitmap copy of (part of) the Bitmap</div></td></tr><tr><td halign="center" class="funclist"><a href="../Bitmap/GetCollisionPoly.html">GetCollisionPoly</a></td><td width="65%" halign="center"><div class="smalltext">Returns the generated collision polygon for the Bitmap</div></td></tr><tr><td halign="center" class="funclist"><a href="../Bitmap/SetDefaultPivot.html">SetDefaultPivot</a></td><td width="65%" halign="center"><div class="smalltext">Sets the default pivot point</div></td></tr><tr><td halign="center" class="funclist"><a href="../Bitmap/GetDefaultPivot.html">GetDefaultPivot</a></td><td width="65%" halign="center"><div class="smalltext">Returns the default pivot point</div></td></tr><tr><td colspan="2"><br><div class="SmallHeader"><font color="#775500">Advanced functions</font></div><br></td></tr><tr><td halign="center" class="funclist"><a href="../Bitmap/GetPixelPacked.html">GetPixelPacked</a></td><td width="65%" halign="center"><div class="smalltext">
Returns the color value of the specified pixel in a packed integer</div></td></tr><tr><td halign="center" class="funclist"><a href="../Bitmap/SendToGPU.html">SendToGPU</a></td><td width="65%" halign="center"><div class="smalltext">Sends the Bitmap to the graphics card</div></td></tr><tr><td halign="center" class="funclist"><a href="../Bitmap/UnloadFromGPU.html">UnloadFromGPU</a></td><td width="65%" halign="center"><div class="smalltext">Unloads the Bitmap from the graphics card</div></td></tr><tr><td halign="center" class="funclist"><a href="../Bitmap/Select.html">Select</a></td><td width="65%" halign="center"><div class="smalltext">
Selects the Bitmap as the active texture of OpenGL</div></td></tr><tr><td halign="center" class="funclist"><a href="../Bitmap/UseAutoDelete.html">UseAutoDelete</a></td><td width="65%" halign="center"><div class="smalltext">
Chooses the Bitmap to be automatically deleted when the program quits</div></td></tr><tr><td halign="center" class="funclist"><a href="../Bitmap/HasAlphaChannel.html">HasAlphaChannel</a></td><td width="65%" halign="center"><div class="smalltext">Checks if the Bitmap has an alpha channel</div></td></tr><tr><td halign="center" class="funclist"><a href="../Bitmap/StartFastBlitting.html">StartFastBlitting</a></td><td width="65%" halign="center"><div class="smalltext">This function should be called right before using FastBlit</div></td></tr><tr><td halign="center" class="funclist"><a href="../Bitmap/FastBlit.html">FastBlit</a></td><td width="65%" halign="center"><div class="smalltext">A faster version of Blit</div></td></tr><tr><td halign="center" class="funclist"><a href="../Bitmap/FinishFastBlitting.html">FinishFastBlitting</a></td><td width="65%" halign="center"><div class="smalltext">This function should be called after calling FastBlit</div></td></tr><tr><td halign="center" class="funclist"><a href="../Bitmap/UnloadToMemory.html">UnloadToMemory</a></td><td width="65%" halign="center"><div class="smalltext">Unloads the Bitmap from the graphics card keeping the image data saved in the Bitmap</div></td></tr><tr><td halign="center" class="funclist"><a href="../Bitmap/TexturedQuad.html">TexturedQuad</a></td><td width="65%" halign="center"><div class="smalltext">Outputs a raw textured quad to the video card</div></td></tr></table></div><br><div class=""><a href="../index.html">Back to the main page of the manual</a></div><br>Questions about GetPixel? Click <a href="http://crystalstorm.ath.cx/index.php?lan=en&page=CreateFeedback&subject=GetPixel">here.</a></div></td></tr></table></body></html>