如何消除画线中出现的“锯齿” 啊? 谢谢!

hellopine3 2006-02-18 11:14:31

最好能给俺点代码例子,着急中。。。。。。。。。。

再次拜谢!
...全文
646 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
ouyh12345 2006-02-18
  • 打赏
  • 举报
回复
现在的画线方法都会有锯齿的,因为是一个象素一个象素画的
tufaqing 2006-02-18
  • 打赏
  • 举报
回复
只有一个办法:除非你不用计算机!!!
xhzxlqt 2006-02-18
  • 打赏
  • 举报
回复
设线宽为N,颜色为C,顶点为(pt1,pt2)
则:
1 先在pt1、pt2画N个半径为r的圆,离半径为r(0<=r<=N)的圆的颜色为Cr=C*sin(3.14*r/(2*N))
2 再以颜色Cr=C*sin(3.14*r/(2*N))从ptsr(pt1.x-r,pt1.y-r)[注:pt1.x-N<=ptsr.x<=pt1.x+N)]向ptdr(pt2.x-r,pt2.y-r)[注:pt2.x-N<=ptsr.x<=pt2.x+N)]画单线



//没试过,应该可以
debehe 2006-02-18
  • 打赏
  • 举报
回复
还是GDI+吧
DentistryDoctor 2006-02-18
  • 打赏
  • 举报
回复
GDI+
using Graphics::SetInterpolationMode(InterpolationModeHighQuality) to set high quality
countryboy 2006-02-18
  • 打赏
  • 举报
回复
换个高分辨率的显示器应该要好一点1`!~!~!~
longge520 2006-02-18
  • 打赏
  • 举报
回复
up
pripor 2006-02-18
  • 打赏
  • 举报
回复
这个算法难度比较大
还是从网上找一些成熟的算法
http://www.codeproject.com/上面应该有
菜牛 2006-02-18
  • 打赏
  • 举报
回复
最简单的:用GDI+
huwei001982 2006-02-18
  • 打赏
  • 举报
回复
是有消锯齿的算法的, 你可以看看常见的绘图工具, 如fireworks

先画一条斜线, 可以明显的看到有锯齿, 但你将 pencil样式 改为 pixel-soft时

基本上锯齿就消失了, 显得非常圆滑

我只知道是在线的周围通过某种算法添加几种过度色,这样锯齿就消失了

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧