搞不清MFC 绘图逻辑坐标和设备坐标关系的请进

来源:互联网 发布:小猪cms 微盟 编辑:程序博客网 时间:2024/06/07 04:45

 

SetWindowExt和SetViewportExt函数可以确定窗口(代表逻辑坐标系,各轴单位为逻辑单位)和视口(代表设备坐标系,各轴单位为像素)的范围,还有逻辑坐标系轴的方向。当窗口和视口指定的宽度符号相同则逻辑坐标系X轴正向朝右,相反则正向朝左。Y轴也同理,同号正向朝下,异号正向朝上。确定逻辑坐标系各轴方向。

SetWindowOrg和SetViewportOrg函数都是移动各自坐标系中的点到设备坐标系原点。视口按视口坐标系,窗口按窗口坐标系,两者的单位不一样。确定逻辑坐标系的原点。

例:

//设置逻辑坐标系x轴正向朝右,y轴正向朝下

CRect rect;

GetClientRect(rect);

SetWindowExt(1000,1000);

SetViewportExt(rect.right,rect.bottom);

//设置逻辑坐标系原点为客户区中心点

SetViewportOrg(-rect.right/2,-rect.bottom/2);

 

 


MFC绘图步骤:

l  DC就相当于画布,确定了DC就确定了设备坐标系

l  确定设备坐标系单位和逻辑坐标系单位的转换关系

l  确定逻辑坐标系的轴方向和原点

l  调用绘图函数(绘图函数以逻辑坐标进行绘图)

 

 

                                                                                                                                                           

 

 

 

 

 


原创粉丝点击