CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  界面

100分——请教关于浮点数做图的问题!

楼主eureka007(发现者)2003-06-01 00:09:18 在 VC/MFC / 界面 提问

得到的数据都是浮点数,  
  例如:  
  X1=1,Y1=20.120;  
  X2=2,Y2=23.011;  
  ........  
  Xn=n,Yn=13.123  
  需要把上述的数值画成曲线,我想在FormView中的控件里画,可是需要15个控件呀。就是说需要话15个曲线,  
   
  最关键的问题是坐标不知道该怎么影射呀!头一次画图,实在不得要领呀!  
   
  请大虾指点!  
   
   
  问题点数:100、回复次数:9Top

1 楼GoldenSword(金错刀)回复于 2003-06-01 11:27:09 得分 20

我的经验:  
  我是在SDI里面画dxf文件图的。映射方式是默认的MM_TEXT所以VIEW的坐标轴是X->右,Y->下  
  所以要经过两个步骤  
  1:缩放,跟就画图区和数据区的范围确定缩放比例。  
  2:平移,需要把数据区的中心移到View的中心。手工计算一下就知道了。Top

2 楼eureka007(发现者)回复于 2003-06-01 13:14:54 得分 0

谢谢楼上的大虾!  
  可我总是不知道怎么缩放啊!如果缩放,采集的数据是不是就得改变了呀!因为我的数据是浮点数。可是屏幕上点确是整数啊!我得怎么处理才行呢!  
   
  实在是不明白!   :(Top

3 楼W32API()回复于 2003-06-01 13:20:41 得分 10

所以才要有缩放比例啊,在此比例下,数据的保存仍旧按浮点数保存,画图时对坐标取整就好了。  
  把计算与显示区分开来Top

4 楼huawujin(huawujin)回复于 2003-06-01 13:51:43 得分 60

首先搜索出所有数据的MAX和MIN值,计算出   xx=(x_MAX-x_MIN)   yy=(y_MAX-x_MIN)  
    CPen   *pPen,*pOldPen;  
    RECT   rc;  
   
  GetClientRect(&rc);  
  //取1/3位置,保证图形显示在客户区内  
  int   x=rc.right-rc.right/3;  
  int   y=rc.bottom-rc.bottom/3;  
  float   x0=x/xx       //x0为缩放比例  
  float   y0=y/yy       //y0为缩放比例  
  //绘图:  
  pPen=new   CPen;  
  pPen->CreatePen(PS_SOLID,1,RGB(255,0,0));  
  pOldPen=dc.SelectObject(pPen);  
  float   fx,fy;  
  for(int   i=0;i<length;i++){   //length   为数据个数  
  fx=(x[i]-x_MIN)*x0;  
  fy=(y[i]-y_MAX)*y0;  
  dc.MoveTo((int)fx,(int)fy);  
  fx=(x[i+1]-x_MIN)*x0;  
  fy=(y[i+1]-y_MAX)*y0;  
  dc.LineTo(((int)fx,(int)fy)  
  }  
  dc.SelectObject(pOldPen);  
  delete   pPen;  
   
  注   :   这个方法是3jaja(3++输入法)大哥教我的,这里借花献佛,希望对你有用。  
   
   
   
  Top

5 楼eureka007(发现者)回复于 2003-06-01 14:04:16 得分 0

多谢楼上的大虾,领会点了,谢谢!  
   
  再UP一下,晚上我来放分  
   
  真心谢谢各位的指点!Top

6 楼awnucel(西大耻犹未雪,南京恨何时灭&抵制日货)回复于 2003-06-01 17:15:18 得分 10

upTop

7 楼eureka007(发现者)回复于 2003-06-01 22:32:00 得分 0

楼上的兄弟,谢谢你的up     :)Top

8 楼eureka007(发现者)回复于 2003-06-01 22:43:41 得分 0

放分完毕!谢谢各位的指点Top

9 楼eureka007(发现者)回复于 2003-06-01 23:04:29 得分 0

这是怎么回事呀!明明我给分了,怎么看不到大虾得分呢!Top

相关问题

  • 浮点数相加
  • 关于浮点数
  • 浮点数的问题
  • 浮点数运算问题
  • 浮点数精度问题
  • asp浮点数的问题
  • 浮点数相减问题
  • 浮点数转换问题
  • 如何把浮点数3.333333转换为浮点数3.33
  • 求救:java里如何取整一个浮点数(不做四舍五入)

关键词

  • 数据
  • ppen
  • 浮点数
  • 缩放
  • 比例
  • rc
  • 计算
  • 需要
  • 知道
  • min

得分解答快速导航

  • 帖主:eureka007
  • GoldenSword
  • W32API
  • huawujin
  • awnucel

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo