﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-小四的海市蜃楼-随笔分类-图形图像与计算几何</title><link>http://www.cppblog.com/cugdj/category/5918.html</link><description>Never surrender to complexity</description><language>zh-cn</language><lastBuildDate>Sun, 09 Dec 2012 06:42:53 GMT</lastBuildDate><pubDate>Sun, 09 Dec 2012 06:42:53 GMT</pubDate><ttl>60</ttl><item><title>C++常用计算几何算法 </title><link>http://www.cppblog.com/cugdj/archive/2012/12/05/196025.html</link><dc:creator>小四</dc:creator><author>小四</author><pubDate>Wed, 05 Dec 2012 15:07:00 GMT</pubDate><guid>http://www.cppblog.com/cugdj/archive/2012/12/05/196025.html</guid><wfw:comment>http://www.cppblog.com/cugdj/comments/196025.html</wfw:comment><comments>http://www.cppblog.com/cugdj/archive/2012/12/05/196025.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/cugdj/comments/commentRss/196025.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/cugdj/services/trackbacks/196025.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 多年之前在WPS做算法研究的时候写的常用计算几何算法 C++&nbsp;&nbsp;<a href='http://www.cppblog.com/cugdj/archive/2012/12/05/196025.html'>阅读全文</a><img src ="http://www.cppblog.com/cugdj/aggbug/196025.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/cugdj/" target="_blank">小四</a> 2012-12-05 23:07 <a href="http://www.cppblog.com/cugdj/archive/2012/12/05/196025.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>cocos2d-x版FishingJoy(捕鱼达人)示例</title><link>http://www.cppblog.com/cugdj/archive/2012/12/04/195977.html</link><dc:creator>小四</dc:creator><author>小四</author><pubDate>Tue, 04 Dec 2012 08:48:00 GMT</pubDate><guid>http://www.cppblog.com/cugdj/archive/2012/12/04/195977.html</guid><wfw:comment>http://www.cppblog.com/cugdj/comments/195977.html</wfw:comment><comments>http://www.cppblog.com/cugdj/archive/2012/12/04/195977.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cppblog.com/cugdj/comments/commentRss/195977.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/cugdj/services/trackbacks/195977.html</trackback:ping><description><![CDATA[cocos2d-x版FishingJoy, 可做为cocos2d-x示例工程，<br />包含CCSprite、CCAction、CCParticleSystem等重要类的使用方法。<br />好久没用C++，写出的代码带强烈的Objc风格，@_@<br />可能跟cocos2d-x源于cocos2d有关。<br />cocos2d-x版本2.0.4，xcode版本4.5。<br />资源文件从网络获得，也可使用付费TexturePacker自行生成。<br /><br />源代码地址：<a href="https://github.com/dingjiecn/FishingJoy.git"><br />https://github.com/dingjiecn/FishingJoy.git<br /></a><br /><img src="http://www.cppblog.com/images/cppblog_com/cugdj/7467/o_FishingJoy.jpg" border="0" alt="" width="800" height="600" /><img src ="http://www.cppblog.com/cugdj/aggbug/195977.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/cugdj/" target="_blank">小四</a> 2012-12-04 16:48 <a href="http://www.cppblog.com/cugdj/archive/2012/12/04/195977.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>关于会说话的汤姆猫,关于cocos2d屏幕录像,视音频合成</title><link>http://www.cppblog.com/cugdj/archive/2011/11/18/160473.html</link><dc:creator>小四</dc:creator><author>小四</author><pubDate>Fri, 18 Nov 2011 15:41:00 GMT</pubDate><guid>http://www.cppblog.com/cugdj/archive/2011/11/18/160473.html</guid><wfw:comment>http://www.cppblog.com/cugdj/comments/160473.html</wfw:comment><comments>http://www.cppblog.com/cugdj/archive/2011/11/18/160473.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.cppblog.com/cugdj/comments/commentRss/160473.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/cugdj/services/trackbacks/160473.html</trackback:ping><description><![CDATA[<div>
<p>
<div><a href="http://www.cppblog.com/Files/cugdj/TalkingJohn.zip">https://github.com/dingjiecn/TalkingJohn.git<br /><br />源代码</a>&nbsp;</div>outfit7公司生产了一系列的会说话的朋友app,最著名的是会说话的汤姆猫.<br />利用业余时间做了一个TalkingJohn,资源都是用原app的,在xcode4.1编译通过.<br />为CCDirector增加category方法屏幕录像,和音视频合成.<br />录像模式在模拟器运行良好,但是在ipad上运行经常录制不成功.<br />如果有哪位同学改好了这个问题,请给我发邮件cugdj at hotmail.com.&nbsp;<br /><br /><img border="0" alt="" src="http://www.cppblog.com/images/cppblog_com/cugdj/7467/r_talkingjohn.png" width="247" height="480" /><br />
<p>&nbsp;</p></div><img src ="http://www.cppblog.com/cugdj/aggbug/160473.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/cugdj/" target="_blank">小四</a> 2011-11-18 23:41 <a href="http://www.cppblog.com/cugdj/archive/2011/11/18/160473.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>摘自：windows游戏编程大师技巧-Andre LaMothe</title><link>http://www.cppblog.com/cugdj/archive/2009/03/27/78070.html</link><dc:creator>小四</dc:creator><author>小四</author><pubDate>Fri, 27 Mar 2009 12:08:00 GMT</pubDate><guid>http://www.cppblog.com/cugdj/archive/2009/03/27/78070.html</guid><wfw:comment>http://www.cppblog.com/cugdj/comments/78070.html</wfw:comment><comments>http://www.cppblog.com/cugdj/archive/2009/03/27/78070.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/cugdj/comments/commentRss/78070.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/cugdj/services/trackbacks/78070.html</trackback:ping><description><![CDATA[问题在于，即使是Windows95，实时处理视频音频的能力依然很差，<br>于是微软制作了一个叫做Win-G的软件，试图解决视频方面的问题。<br>宣传的时候，Win-G被说成是最佳的游戏编程和图形子系统，而事实<br>上它只不过是一堆用于画位图的图形调用而已。更有甚者，Win-G<br>发布后大约一年之后，Microsoft竟然否认了它的存在，不骗你! 
<img src ="http://www.cppblog.com/cugdj/aggbug/78070.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/cugdj/" target="_blank">小四</a> 2009-03-27 20:08 <a href="http://www.cppblog.com/cugdj/archive/2009/03/27/78070.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>把图片转成ASCII码</title><link>http://www.cppblog.com/cugdj/archive/2008/06/29/54910.html</link><dc:creator>小四</dc:creator><author>小四</author><pubDate>Sun, 29 Jun 2008 10:03:00 GMT</pubDate><guid>http://www.cppblog.com/cugdj/archive/2008/06/29/54910.html</guid><wfw:comment>http://www.cppblog.com/cugdj/comments/54910.html</wfw:comment><comments>http://www.cppblog.com/cugdj/archive/2008/06/29/54910.html#Feedback</comments><slash:comments>11</slash:comments><wfw:commentRss>http://www.cppblog.com/cugdj/comments/commentRss/54910.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/cugdj/services/trackbacks/54910.html</trackback:ping><description><![CDATA[几天不写程序手就有点生，整理了一段把图片转成ASCII码的程序。暂时只支持24位真彩色图片，ASCII码可以自行扩充。大体算法就是把整个位图分成8*16的小块，计算小块的灰度值总和，然后匹配一个灰度值接近的字符。具体算法细节可以参考网上资料。<br>程序源代码可以在<a href="http://www.cppblog.com/Files/cugdj/pic2acsii.rar">这里</a>下载。<br>&nbsp;<br><img height=299 alt="" src="http://www.cppblog.com/images/cppblog_com/cugdj/qie.GIF" width=262 border=0>
<img src ="http://www.cppblog.com/cugdj/aggbug/54910.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/cugdj/" target="_blank">小四</a> 2008-06-29 18:03 <a href="http://www.cppblog.com/cugdj/archive/2008/06/29/54910.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>打算做一个开源的矢量绘图软件</title><link>http://www.cppblog.com/cugdj/archive/2008/01/29/42140.html</link><dc:creator>小四</dc:creator><author>小四</author><pubDate>Tue, 29 Jan 2008 10:16:00 GMT</pubDate><guid>http://www.cppblog.com/cugdj/archive/2008/01/29/42140.html</guid><wfw:comment>http://www.cppblog.com/cugdj/comments/42140.html</wfw:comment><comments>http://www.cppblog.com/cugdj/archive/2008/01/29/42140.html#Feedback</comments><slash:comments>33</slash:comments><wfw:commentRss>http://www.cppblog.com/cugdj/comments/commentRss/42140.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/cugdj/services/trackbacks/42140.html</trackback:ping><description><![CDATA[<a href="https://github.com/dingjiecn/OpenDraw.git">https://github.com/dingjiecn/OpenDraw.git</a><br /><br />打算做一个开源的矢量绘图软件(类似MS Visio)，花了几天把程序框架做了出来，自认比DrawCLI的稍微好一点点。支持基本图形绘制，旋转，缩放，串行化。使用MFC、STL、GDI/GDI+和一点点设计模式。<br /><br />自知做一个堪用的矢量绘图软件是个非常艰巨的事情，不过还是打算用一些业余时间把这件事情做了，对自己以往掌握的知识，也是一个总结。<br /><br /><a href="/Files/cugdj/EasyDraw.rar">编译好的可执行程序</a><br />程序0.01版本源代码在<a href="http://www.cppblog.com/Files/cugdj/od.rar">这里</a>可以下载<img src ="http://www.cppblog.com/cugdj/aggbug/42140.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/cugdj/" target="_blank">小四</a> 2008-01-29 18:16 <a href="http://www.cppblog.com/cugdj/archive/2008/01/29/42140.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Bill Gates: Never surrender to complexity</title><link>http://www.cppblog.com/cugdj/archive/2008/01/15/41172.html</link><dc:creator>小四</dc:creator><author>小四</author><pubDate>Tue, 15 Jan 2008 02:04:00 GMT</pubDate><guid>http://www.cppblog.com/cugdj/archive/2008/01/15/41172.html</guid><wfw:comment>http://www.cppblog.com/cugdj/comments/41172.html</wfw:comment><comments>http://www.cppblog.com/cugdj/archive/2008/01/15/41172.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/cugdj/comments/commentRss/41172.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/cugdj/services/trackbacks/41172.html</trackback:ping><description><![CDATA[<p>The barrier to change is not too little caring; it is too much complexity.</p>
<p>To turn caring into action, we need to see a problem, see a solution, and see the impact. But complexity blocks all three steps.</p>
<p>If we can really see a problem, which is the first step, we come to the second step: cutting through the complexity to find a solution.</p>
<p>Cutting through complexity to find a solution runs through four predictable stages: determine a goal, find the highest-leverage approach, discover the ideal technology for that approach, and in the meantime, make the smartest application of the technology that you already have — whether it's something sophisticated, like a drug, or something simpler, like a bednet.</p>
<p>The final step &#8211; after seeing the problem and finding an approach &#8211; is to measure the impact of your work and share your successes and failures so that others learn from your efforts.</p>
<p>But if you want to inspire people to participate, you have to show more than numbers; you have to convey the human impact of the work &#8211; so people can feel what saving a life means to the families affected.</p>
<p>&nbsp;</p>
<img src ="http://www.cppblog.com/cugdj/aggbug/41172.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/cugdj/" target="_blank">小四</a> 2008-01-15 10:04 <a href="http://www.cppblog.com/cugdj/archive/2008/01/15/41172.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>使用颜色矩阵渲染双色图</title><link>http://www.cppblog.com/cugdj/archive/2008/01/05/40451.html</link><dc:creator>小四</dc:creator><author>小四</author><pubDate>Sat, 05 Jan 2008 06:01:00 GMT</pubDate><guid>http://www.cppblog.com/cugdj/archive/2008/01/05/40451.html</guid><wfw:comment>http://www.cppblog.com/cugdj/comments/40451.html</wfw:comment><comments>http://www.cppblog.com/cugdj/archive/2008/01/05/40451.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/cugdj/comments/commentRss/40451.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/cugdj/services/trackbacks/40451.html</trackback:ping><description><![CDATA[<p>GDI+的颜色矩阵由一个5*5的float型数组构成，用来对每一个像素的颜色(R,G,B,A)做线性变换，每个像素颜色与矩阵相乘。把一幅彩色图转成灰度图的算法是，假设像素点颜色为(r,g,b)，转换成灰度图三个颜色分量是一样的，称作灰阶，灰阶的计算是 r*0.299+g*0.587+b*0.114。我们可以逐个像素转换，也可以使用颜色矩阵。所以彩色图转灰度图的颜色矩阵为<br>ColorMatrix matrix = <br>{0.299, 0.299, 0.299, 0, 0,<br>&nbsp;0.587, 0.587, 0.587, 0, 0,<br>&nbsp;0.114, 0.114, 0.114, 0, 0,<br>&nbsp;0,&nbsp;&nbsp;&nbsp;&nbsp; 0,&nbsp;&nbsp;&nbsp;&nbsp; 0,&nbsp;&nbsp;&nbsp;&nbsp; 1, 0, <br>&nbsp;0,&nbsp;&nbsp;&nbsp;&nbsp; 0,&nbsp;&nbsp;&nbsp;&nbsp; 0,&nbsp;&nbsp;&nbsp;&nbsp; 0, 0}</p>
<p>这样转换后，灰度图的灰阶分布在0~255之间。如果想把一幅彩色图渲染成双色图，定义一个深颜色darker，一个浅颜色lighter,那么灰度图只是一个darker是黑色而lighter是白色的特例。本来分布在0~255的灰阶，这样应该分别分布在(lighter.r~darker.r),(lighter.g~darker.g),(lighter.b~darker.b)。</p>
<p>编写代码如下，使用白色和紫色。</p>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">&nbsp;CDuotoneDlg::OnButton1()&nbsp;<br><img id=Codehighlighter1_31_1323_Open_Image onclick="this.style.display='none'; Codehighlighter1_31_1323_Open_Text.style.display='none'; Codehighlighter1_31_1323_Closed_Image.style.display='inline'; Codehighlighter1_31_1323_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_31_1323_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_31_1323_Closed_Text.style.display='none'; Codehighlighter1_31_1323_Open_Image.style.display='inline'; Codehighlighter1_31_1323_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_31_1323_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_31_1323_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;Bitmap&nbsp;&nbsp;img(L</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">c:\\test1.jpg</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;Graphics&nbsp;graphix(</span><span style="COLOR: #0000ff">this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">GetDC()</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">m_hDC);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;Color&nbsp;darker(</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">);<img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;Color&nbsp;lighter(</span><span style="COLOR: #000000">8414370</span><span style="COLOR: #000000">);<img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">const</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">float</span><span style="COLOR: #000000">&nbsp;gray_r&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">0.299f</span><span style="COLOR: #000000">;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">const</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">float</span><span style="COLOR: #000000">&nbsp;gray_g&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">0.587f</span><span style="COLOR: #000000">;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">const</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">float</span><span style="COLOR: #000000">&nbsp;gray_b&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">0.114f</span><span style="COLOR: #000000">;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">float</span><span style="COLOR: #000000">&nbsp;offset_r&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;(</span><span style="COLOR: #0000ff">float</span><span style="COLOR: #000000">)darker.GetR()&nbsp;</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">255</span><span style="COLOR: #000000">;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">float</span><span style="COLOR: #000000">&nbsp;offset_g&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;(</span><span style="COLOR: #0000ff">float</span><span style="COLOR: #000000">)darker.GetG()&nbsp;</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">255</span><span style="COLOR: #000000">;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">float</span><span style="COLOR: #000000">&nbsp;offset_b&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;(</span><span style="COLOR: #0000ff">float</span><span style="COLOR: #000000">)darker.GetB()&nbsp;</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">255</span><span style="COLOR: #000000">;&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">float</span><span style="COLOR: #000000">&nbsp;r&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;(</span><span style="COLOR: #0000ff">float</span><span style="COLOR: #000000">)(lighter.GetR()&nbsp;</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">&nbsp;darker.GetR())&nbsp;</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">255</span><span style="COLOR: #000000">;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">float</span><span style="COLOR: #000000">&nbsp;g&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;(</span><span style="COLOR: #0000ff">float</span><span style="COLOR: #000000">)(lighter.GetG()&nbsp;</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">&nbsp;darker.GetG())&nbsp;</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">255</span><span style="COLOR: #000000">;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">float</span><span style="COLOR: #000000">&nbsp;b&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;(</span><span style="COLOR: #0000ff">float</span><span style="COLOR: #000000">)(lighter.GetB()&nbsp;</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">&nbsp;darker.GetB())&nbsp;</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">255</span><span style="COLOR: #000000">;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;ImageAttributes&nbsp;imgatt;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;ColorMatrix&nbsp;matrix&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"><br><img id=Codehighlighter1_637_855_Open_Image onclick="this.style.display='none'; Codehighlighter1_637_855_Open_Text.style.display='none'; Codehighlighter1_637_855_Closed_Image.style.display='inline'; Codehighlighter1_637_855_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_637_855_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_637_855_Closed_Text.style.display='none'; Codehighlighter1_637_855_Open_Image.style.display='inline'; Codehighlighter1_637_855_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span id=Codehighlighter1_637_855_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_637_855_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;gray_r</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">r,&nbsp;gray_r</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">g,&nbsp;gray_r</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">b,&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">,&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">,<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;gray_g</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">r,&nbsp;gray_g</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">g,&nbsp;gray_g</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">b,&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">,&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">,<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;gray_b</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">r,&nbsp;gray_b</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">g,&nbsp;gray_b</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">b,&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">,&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">,<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">,&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">,&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">,&nbsp;</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">,&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">,&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;offset_r,&nbsp;offset_g,&nbsp;offset_b,&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">,&nbsp;</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000">;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;imgatt.SetColorMatrix(</span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000">matrix,&nbsp;ColorMatrixFlagsDefault,&nbsp;ColorAdjustTypeBitmap);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;iWidth&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;img.GetWidth();<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;iHeight&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;img.GetHeight();<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;graphix.DrawImage(<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000">img,<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Rect(</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">,&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">,&nbsp;iWidth,&nbsp;iHeight),&nbsp;&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">0.0f</span><span style="COLOR: #000000">,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">0.0f</span><span style="COLOR: #000000">,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;iWidth,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;iHeight,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;UnitPixel,<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000">imgatt);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;graphix.ReleaseHDC(</span><span style="COLOR: #0000ff">this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">GetDC()</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">m_hDC);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}<br></span></span></div>
<br>渲染图片测试<br><img height=200 alt="" src="http://www.cppblog.com/images/cppblog_com/cugdj/1.jpg" width=600 border=0> 
<img src ="http://www.cppblog.com/cugdj/aggbug/40451.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/cugdj/" target="_blank">小四</a> 2008-01-05 14:01 <a href="http://www.cppblog.com/cugdj/archive/2008/01/05/40451.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>很多图形学论文</title><link>http://www.cppblog.com/cugdj/archive/2007/12/17/38720.html</link><dc:creator>小四</dc:creator><author>小四</author><pubDate>Mon, 17 Dec 2007 08:15:00 GMT</pubDate><guid>http://www.cppblog.com/cugdj/archive/2007/12/17/38720.html</guid><wfw:comment>http://www.cppblog.com/cugdj/comments/38720.html</wfw:comment><comments>http://www.cppblog.com/cugdj/archive/2007/12/17/38720.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/cugdj/comments/commentRss/38720.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/cugdj/services/trackbacks/38720.html</trackback:ping><description><![CDATA[<a href="http://www.cs.brown.edu/~tor/"><u><font color=#0000ff>http://www.cs.brown.edu/~tor/</font></u></a> 
<img src ="http://www.cppblog.com/cugdj/aggbug/38720.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/cugdj/" target="_blank">小四</a> 2007-12-17 16:15 <a href="http://www.cppblog.com/cugdj/archive/2007/12/17/38720.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>