2 csdnzengchihe CSDNzengchihe 于 2018.01.14 15:46 提问

MFC如何根据坐标点画出平滑曲线(10个坐标点)

{41.25,306.875}, {81.25,269.375}, {121.25,219.375}, {161.25,169.375},
{201.25,164.375}, {241.25,159.375}, {381.25,149.375}, {321.25,139.375},
{361.25,109.375}, {401.25,99.375}, {441.25,139.375}

曲线如图所示:想要实现类似这样的连接,希望能能够有源代码把值直接替换就可以的图片说明

8个回答

zykbysj
zykbysj   2018.01.15 22:29
已采纳

用GDI+画,考虑下贝塞尔曲线

baron_hu
baron_hu 还有更快捷的方法
3 个月之前 回复
cuyan8973
cuyan8973 你好,看下面我@你的
3 个月之前 回复
CSDNzengchihe
CSDNzengchihe 额,贝塞尔好像只能三个点画,我加了第四个点就死机了
3 个月之前 回复
caozhy
caozhy   Ds   Rxr 2018.01.14 22:57

你到底是统计图还是几何曲线(统计图不会出现同一个y对应2个x的点)

CSDNzengchihe
CSDNzengchihe 回复lianzhjneusoft: 可以帮我弄一下吗,还是弄不出来,上面数据有错误第7个点横坐标是281.25,其余没问题
3 个月之前 回复
CSDNzengchihe
CSDNzengchihe 这种曲线用样条插值可以绘制吗
3 个月之前 回复
lianzhjneusoft
lianzhjneusoft 用双缓冲绘图,这个不难弄,如果弄不出,可以私信我。
3 个月之前 回复
CSDNzengchihe
CSDNzengchihe 我看大家说的opencv好像是图像处理的函数,可行吗,哪种做这种平滑曲线更方便一些呢
3 个月之前 回复
CSDNzengchihe
CSDNzengchihe 我想把之前的柱形图的中点给连接再一块
3 个月之前 回复
CSDNzengchihe
CSDNzengchihe 额,应该是几何曲线把
3 个月之前 回复
VisualEleven
VisualEleven   Ds   Rxr 2018.01.15 14:49

Polyline() ?如果精度要求不高的话

cuyan8973
cuyan8973 你好,我用polyline做了一下,好像只能画出精度不高的折线,画不了平滑的曲线
3 个月之前 回复
CSDNzengchihe
CSDNzengchihe 好的,谢谢!我试试看
3 个月之前 回复
cuyan8973
cuyan8973   2018.01.15 23:30

@江湖雁 这是我用贝塞尔函数PolyBezier做的图,它只允许有四个点连在一块,两个控制点、两个端点、我用后两个点作下一个PolyBezier的控制点和端点,这样一直叠加,画的曲线还是不对(不平滑图片说明)

u010623068
u010623068 去锯齿 ,你看你这个不平滑
3 个月之前 回复
barry_di
barry_di   2018.01.16 14:21

这种moveTo() , lineTo()就可以画了

CSDNzengchihe
CSDNzengchihe 我不是做鼠标拖动画曲线的啊。。。晕。。。我想做固定点然后把他们连成平滑曲线
3 个月之前 回复
barry_di
barry_di 回复CSDNzengchihe: 鼠标拖动的时候有个消息,可以取得当前鼠标的坐标
3 个月之前 回复
CSDNzengchihe
CSDNzengchihe 那不是要取非常多的点
3 个月之前 回复
fanfan513
fanfan513   2018.01.16 14:36

以相邻的3个点来拟合一个二次曲线,再将这些二次曲线单独的画出来

CSDNzengchihe
CSDNzengchihe 这样话可以做到平滑吗?然后应该如何去拟合呢,有推荐的相关文献可以给我参考下吗
3 个月之前 回复
CSDNzengchihe
CSDNzengchihe   2018.01.17 19:18

感谢大家@所有人,已经用GDI函数DrawCurve解决图形绘制问题(针对固定点),感谢csdn代码,感谢大神们的倾情相助!

tangxiuguang
tangxiuguang   2018.01.14 22:27

用opencv画一下,然后平滑处理下,应该可以。

CSDNzengchihe
CSDNzengchihe 噢噢,谢谢,我试试
3 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!