Graphics的画线DrawLine,每个拐点很尖锐,是用那个参数改成圆的?

hztltgg 2019-05-31 12:05:12
如题。。。。。。。。。。
...全文
225 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
stherix 2019-05-31
  • 打赏
  • 举报
回复
引用 2 楼 hztltgg 的回复:
[quote=引用 1 楼 stherix 的回复:] DrawLine只是画一条线把 可不存在现成的方法让多条线拐点变圆的 毕竟图形是基于数据 平滑的拐点不符合原始数据 得自己写方法 让线条连接处少画一小段距离,然后用算法画出弧线连接
笔误,是画连续线段,用 DrawLines ,现在线段宽的话,每个拐点会形成一个很尖锐的三角,我记得有选择使用圆弧过渡的方法的。[/quote] 用DrawCurve
hztltgg 2019-05-31
  • 打赏
  • 举报
回复
引用 1 楼 stherix 的回复:
DrawLine只是画一条线把 可不存在现成的方法让多条线拐点变圆的 毕竟图形是基于数据 平滑的拐点不符合原始数据 得自己写方法 让线条连接处少画一小段距离,然后用算法画出弧线连接
笔误,是画连续线段,用 DrawLines ,现在线段宽的话,每个拐点会形成一个很尖锐的三角,我记得有选择使用圆弧过渡的方法的。
stherix 2019-05-31
  • 打赏
  • 举报
回复
DrawLine只是画一条线把 可不存在现成的方法让多条线拐点变圆的 毕竟图形是基于数据 平滑的拐点不符合原始数据 得自己写方法 让线条连接处少画一小段距离,然后用算法画出弧线连接
hztltgg 2019-05-31
  • 打赏
  • 举报
回复
引用 5 楼 assky124 的回复:
Pen 的连接键帽 https://docs.microsoft.com/zh-cn/dotnet/api/system.drawing.pen.linejoin?view=netframework-4.8#System_Drawing_Pen_LineJoin
就是这个了,设置 pen.LineJoin = LineJoin.Round 就可以,之前查了半天,键帽一直以为是开始的圆点和结尾的箭头。
assky124 2019-05-31
  • 打赏
  • 举报
回复
Pen 的连接键帽 https://docs.microsoft.com/zh-cn/dotnet/api/system.drawing.pen.linejoin?view=netframework-4.8#System_Drawing_Pen_LineJoin
hztltgg 2019-05-31
  • 打赏
  • 举报
回复
引用 3 楼 stherix 的回复:
[quote=引用 2 楼 hztltgg 的回复:] [quote=引用 1 楼 stherix 的回复:] DrawLine只是画一条线把 可不存在现成的方法让多条线拐点变圆的 毕竟图形是基于数据 平滑的拐点不符合原始数据 得自己写方法 让线条连接处少画一小段距离,然后用算法画出弧线连接
笔误,是画连续线段,用 DrawLines ,现在线段宽的话,每个拐点会形成一个很尖锐的三角,我记得有选择使用圆弧过渡的方法的。[/quote] 用DrawCurve[/quote] 用DrawCurve到是可以用,不过这个看起来是圆滑曲线的,我还用这些点形成一个填充的多边形,圆滑了以后就和多边形不重叠了,用较小的tension倒是可以改善这个情况,不知道还有没有更好的方法。

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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