利用MFC进行绘图问题

辉哥聊职场聊家庭 2013-04-25 03:00:10
我要从一个txt文件里读取一批浮点型数据,然后在MFC的单文档应用程序中把这些点用折线连接起来,要求是在坐标轴中表示,坐标轴要有刻度,请问我该怎么做?
数据格式如下:
SXS_DATA_FILE
SENSOR_NUM 19
PRESS_NUM 1
S 0.00 0.00 2.32 2.61 2.34 2.27 1.85 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
P 0.00
S 0.00 2.16 2.61 2.68 2.61 2.34 1.85 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
开始的三行是txt文档里的一些文件头,

跪求高手帮忙,或给我一个例子也可以
...全文
200 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
wumn29 2013-04-26
  • 打赏
  • 举报
回复
atof和sscanf都可以转
方法一:
  char szString[] = "-2876.99812376443";
  double db1;
  db1 = atof(szString);
  printf("atof result:“n");
  printf("%f %.12f %.2f %e %E“n", db1, db1, db1, db1, db1);
  printf("%.1e %.1E %.18e %.18E“n", db1, db1, db1, db1);
  方法二:
  char szString2[] = "-2876.99812376443";
  double db2;
  sscanf(szString2, "%lf", &db2);
  printf("“nsscanf result:“n");
  printf("%f %.12f %.2f %e %E“n", db2, db2, db2, db2, db2);
  printf("%.1e %.1E %.18e %.18E“n", db2, db2, db2, db2);
  这两种方法可以得到一模一样的输出!输出如下:
tiger波波 2013-04-26
  • 打赏
  • 举报
回复
假如你规定原点在屏幕上的X,Y位置,一个单位长度为2 你读第一个坐标,假如是4,3,那么,你就在x+4*2 ,y+3*2画一个点
  • 打赏
  • 举报
回复
引用 3 楼 youyingbo 的回复:
你这是简单的画线,应该不难。moveto lineto就行。 有点麻烦的是自己定义个坐标系,把你的点转换到坐标系中
坐标轴在别人的帮助下,我会话了,但是就是不会把txt里的浮点型数据解析出来,另外,如果解析出来之后,我该怎么传入到画图函数中呢?
  • 打赏
  • 举报
回复
引用 1 楼 Mackz 的回复:
没有一个例子会为你定制吧。 文件读取没问题吧,按行读取,自己解析转换为浮点数组; 绘图建议使用现成的控件,搜一下MFC绘图控件还是很多的。
我会简单的按行读取,但是自己不会把每行的数据转换为浮点数组~能告诉我方法吗?或者简单的转换的代码
tiger波波 2013-04-25
  • 打赏
  • 举报
回复
你这是简单的画线,应该不难。moveto lineto就行。 有点麻烦的是自己定义个坐标系,把你的点转换到坐标系中
wp909737771 2013-04-25
  • 打赏
  • 举报
回复
我只会最笨的方法,ReadString,得到坐标,MoveTo,LineTo画线,画点,应该没问题吧
菜牛 2013-04-25
  • 打赏
  • 举报
回复
没有一个例子会为你定制吧。 文件读取没问题吧,按行读取,自己解析转换为浮点数组; 绘图建议使用现成的控件,搜一下MFC绘图控件还是很多的。

15,978

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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