Qt QGraphicsView 平滑直线及折线处优化

1987andy 2014-02-13 09:29:59
最近的一个项目,类似画图工具的画笔,下面是我们自己开发的画笔效果:


图片是由bmp转为jpg的,所以有点模糊,已经反锯齿处理,包括在拐角处(就是线的起点和终点的链接处)也做了圆处理。效果是通过QPainterPath来实现的。最后将直线转换为一个polygonF来添加到画板

现在问题就是感觉线还不是很平滑,尤其在连接处有比较明显的折线,不知道这些问题怎么修复。最好在提供一些相关的参考案例或者代码
...全文
924 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
nlstone 2014-03-10
  • 打赏
  • 举报
回复
通过搜值补入平滑点就可以,很容易搜的,二次样条,三次样条效果都还不错,或者搜样条插值,一两屏代码就实现了。
尘中远 2014-02-13
  • 打赏
  • 举报
回复
引用 4 楼 u011573693 的回复:
[quote=引用 2 楼 czyt1988 的回复:] 好像有专门的平滑算法的
有找过,不过都没有看到比较完整的算法demo~ 都是有残缺的[/quote] 我在一个MFC的绘图控件上看过,你可以下来看看 http://blog.csdn.net/czyt1988/article/details/8740500 这个控件里面有个平滑的函数,用来平滑曲线的,具体在哪我也忘记了
1987andy 2014-02-13
  • 打赏
  • 举报
回复
引用 2 楼 czyt1988 的回复:
好像有专门的平滑算法的
有找过,不过都没有看到比较完整的算法demo~ 都是有残缺的
1987andy 2014-02-13
  • 打赏
  • 举报
回复
引用 1 楼 ganpengjin1 的回复:
能否按像素点进行绘图。这样好些
我看过像素点绘制的方式,不过都是通过GDI+的,但是我绘制是通过Qt 的 QPainterPath来绘制的,最后将绘制的path转换为不规则多边形(QPolygonF)的,而不是直接用QPainter来做的,所以不知道这个怎么处理
尘中远 2014-02-13
  • 打赏
  • 举报
回复
好像有专门的平滑算法的
漫步者、 2014-02-13
  • 打赏
  • 举报
回复
能否按像素点进行绘图。这样好些

16,212

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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