SetWindowExt() 与SetViewportExt()

原创 2007年09月28日 10:57:00
SetWindowExe设定窗口尺寸,SetViewportExt设定视口尺寸。  
  窗口尺寸以逻辑单位计算,视口尺寸以物理单位计算。  
          CRect   rectClient;  
         
            GetClientRect(rectClient);//取窗口物理尺寸(单位:像素)  
          pDC->SetMapMode(MM_ANISOTROPIC);  
          pDC->SetWindowExt(1000,   1000);//窗口逻辑大小:1000*1000,  
          pDC->SetViewportExt(rectClient.right,   -rectClient.bottom);//改变Y坐标方向--viewport使用物理大小  
          pDC->SetViewportOrg(rectClient.right   /   2,   rectClient.bottom   /   2);//设置窗口中心点为坐标系原点--Viewport使用物理大小  
         
          pDC->Ellipse(CRect(-500,   -500,   500,   500));//以逻辑单位画图---普通GDI   API使用逻辑单位  
   
  默认方式下,物理/逻辑值是1:1关系,可换用。但使用SetWindowExt/SetViewportExt后两者不可混用。 

理解SetWindowOrg,SetViewportOrg,SetWindowExt,SetViewportExt

按习惯,(0,0)就原点,原点就是(0,0),但是如果用此来理解windows的map mode,就会走弯路。其实,稍微改变一下观念,windows的map mode就比较好理解了。举例说明:page...
  • benny5609
  • benny5609
  • 2007年10月26日 18:52
  • 3059

MFC API——》 SetWindowExt() 与SetViewportExt()

SetViewportExt(int   Pwidth,   int   Pheight)   //参数的单位为像素(Pixel),如果参数为负值表示viewport相应的坐标轴与device空间相反...
  • liuxiaomao1988
  • liuxiaomao1988
  • 2014年04月08日 22:56
  • 817

SetWindowExt与SetViewportExt

在VisualC++ 6.0技术内幕第四章 可变比例的映射模式一节 绘制一个椭圆,正好放在一个窗口中,解释首先看下http://blog.sina.com.cn/s/blog_935e8c740100...
  • syzobelix
  • syzobelix
  • 2014年02月20日 22:36
  • 613

关于SetWindowOrg和SetViewportOrg函数的说明!

关于这两个函数的说明,我就不详细叙述了,我的前两篇博客关于这两个函数的内容已经讲的比较清楚了,我只是记录一下我自己使用的心得!       void CmfcAppView::OnDraw(CDC* ...
  • lishuhuakai
  • lishuhuakai
  • 2014年01月18日 23:49
  • 5427

SetWindowExt() 与SetViewportExt()

SetWindowExe设定窗口尺寸,SetViewportExt设定视口尺寸。     窗口尺寸以逻辑单位计算,视口尺寸以物理单位计算。             CRect   rectClient...
  • Athenaer
  • Athenaer
  • 2007年09月28日 10:57
  • 5607

C++MFC教程

  • 2013年05月21日 13:37
  • 661KB
  • 下载

理解SetMapMode,SetWindowOrg,SetViewportOrg,SetWindowExt,SetViewportExt

CDC::SetMapMode  virtual int SetMapMode( int nMapMode ); 函数功能描述:该函数设置指定设备环境的映射方式,映射方式定义了将逻辑单位...
  • xuyongbeijing2008
  • xuyongbeijing2008
  • 2012年10月12日 11:18
  • 5464

SetWindowExt & SetViewportExt

1. 调用SetMapMode(MM_ANISOTROPIC)时,逻辑描画領域坐标系的原点与画面的左上角是重叠的。然后需要调用SetWindowExt()函数和SetViewportExt()函数,来...
  • yu_xiyan
  • yu_xiyan
  • 2014年04月04日 22:10
  • 615

SetWindowExt与SetViewportExt(VC++)

http://blog.csdn.net/nolatin/article/details/8764063 //map the logical point (0,0) to the devic...
  • mituan1234567
  • mituan1234567
  • 2014年01月15日 21:38
  • 335

SetWindowExt和SetViewportExt

CRect rectClient;         GetClientRect(rectClient);          pDC->SetMapMode(MM_ANISOTROPIC);      ...
  • s2dongman
  • s2dongman
  • 2009年05月13日 17:21
  • 338
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SetWindowExt() 与SetViewportExt()
举报原因:
原因补充:

(最多只允许输入30个字)