大坡3D软件开发

关注3D软件技术

用户操作
[即时聊天] [发私信] [加为好友]
蔡军生ID:caimouse
1234574次访问,排名17好友254人,关注者406
C++,3D,VC++软件开发,写技术文章,操作系统开发
caimouse的文章
原创 602 篇
翻译 0 篇
转载 41 篇
评论 940 篇
蔡军生的公告

点击这里给我发消息

MSN: caimouse1976 at sina.com

最近评论
xavierye:发现另外一个源码分析blog,可以和楼主的一起看:
http://www.cnblogs.com/duguguiyu/archive/2008/10/02/1303095.html
xavierye:发现另外一个源码分析blog:
http://www.cnblogs.com/duguguiyu/archive/2008/10/02/1303095.html
shada:前面两个混帐,没资格评论开源。
用着盗版的Word写文章批评开源的人真不少。
shada:前面两个混帐,没资格评论开源。
用着盗版的Word写文章批评开源的人大有人在。
andylrj:Google的浏览器真差劲!!!体验一把真心说出,要做的事还很多,终于明白微软的IE为什么要做这么庞大了,做小确实不行!
文章分类
收藏
相册
3D引擎
第二人生
谷歌浏览器
开发板
历史回忆
常用连接
人生历程
存档
软件项目交易
订阅我的博客
XML聚合  FeedSky

原创 分享画直线的代码收藏

新一篇: 龙芯软件开发(31)-- PCI设备查找细节 | 旧一篇: 试验开发第三代操作系统

这段代码太好了,跟大家一起分享它。

//左上角到右下角画直线.
//
//caimouse 2007/02/11
//
bool CSurface::LeftTopToRightBottom(int nXStart,int nYStart,int nDeltaX,int nDeltaY)
{
 //
 int nDelta = CNOS_NS::Max(nDeltaX,nDeltaY);

 //计算判断符号,除2.
 int nError = nDelta>>1;

 //
 if (nDeltaX < nDeltaY)
 {
  for (int i = 0; i < nDelta; i++)
  {
   //画点.
   SetPixel(nXStart,nYStart,m_crCurColor);

   //向下移动一步。
   nYStart++;

   //dy/2 <= dx 判断选择那一点。
   nError += nDeltaX;
   if (nDeltaY <= nError)
   {
    //向左移动一步。
    nXStart++;
    nError -= nDeltaY;
   }
  }
 }
 else
 {
  for (int i = 0; i < nDelta; i++)
  {
   //画点.
   SetPixel(nXStart,nYStart,m_crCurColor);

   //
   nXStart++;
   nError += nDeltaY;
   if (nDeltaX <= nError)
   {
    nYStart++;
    nError -= nDeltaX;
   }
  }
 }

 return true;

发表于 @ 2007年02月12日 13:56:00|评论(loading...)|编辑

新一篇: 龙芯软件开发(31)-- PCI设备查找细节 | 旧一篇: 试验开发第三代操作系统

评论

#program_net 发表于2007-07-31 13:42:02  IP: 60.178.242.*
果然很好
发表评论  


当前用户设置只有注册用户才能发表评论。如果你没有登录,请点击登录
Csdn Blog version 3.1a
Copyright © 蔡军生