window程序设计模式映射下的坐标变换及范围注意事项

MFC中的映射方式 映射方式 设定映射模式: SetMapMode(hdc,iMapMode); 获得当前映射模式: iMapMode=GetMapMode(hdc); n内定的影响方式为MM_TEXT,在这中映像方式下,逻辑单位与实际单位相同,这样我们可以直接以图素为单位进行操作。如果您认为使用图素进行工作很合适,那么就不要使用内定的MM_TEXT方式外的任何映像方式。如果需要以英寸或者毫米尺寸显示图像,那么可以从GetDeviceCaps中取得所需要的信息,自己再进行缩放。其它映像方式都是避免您自己进行缩放的 阅读详情

应当明确几个定义:

1.设备坐标系统分为三种:屏幕坐标系统,全窗口坐标系统, 客户区坐标系统

2.映射模式:从“窗口”(window)(逻辑坐标)到“视口”(veiwport)(设备坐标)的映射

3.视口是以设备坐标(像素)形式指定的

4.窗口是以逻辑坐标形式指定的

5 在如下映射模式下SetWindowExtEx()和SetViewportExtEx()不起作用:

   •MM_HIENGLISH
   •MM_HIMETRIC
   •MM_LOENGLISH
   •MM_LOMETRIC
   •MM_TEXT
   •MM_TWIPS

6 在MM_IOSTROPIC模式下,调用SetWindowExtEx()必须在SetViewportExtEx()之前

7 MM_ISOTROPIC和MM_ANISOTROPIC的Y轴方向可选

 

参见:

 http://anony3721.blog.163.com/blog/static/511974201132810019635/

http://msdn.microsoft.com/en-us/library/windows/desktop/dd145098(v=vs.85).aspx

OpenCV图像分割cv::grabCut()函数 函数:void grabCut( InputArray img, InputOutputArray mask, Rect rect,                            InputOutputArray bgdModel, InputOutputArray fgdModel,                            int iterCount, int mo 阅读详情

相关推荐

windows程序设计中MM_TEXT模式下的逻辑坐标与设备坐标的转换

在windows程序设计中,MM_TEXT模式下逻辑坐标和设备坐标原点默认是(0 , 0) ,在客户区左上角。x轴从左到右增加,y轴从上到下增加。当使用SetViewportOrgEx() 和 SetWinodwOrgEX()函数修改设备坐标系和窗口(逻辑)坐标系时,我们该怎么简单的找到逻辑坐标系点(0 , 0 )在变换后的位置,一种简单的方法是移动逻辑坐标系原点去和设备坐标系原点重合(注意:不管

知行且执行 2708

切换坐标系映射模式

映射模式 int SetMapMode(   HDC hdc,//DC句柄   int fnMapMode // 映射模式 ); fnMapMode 映射模式如下:    MM_TEXT - 默认, 1个逻辑单位 = 1个像素 x轴右轴为正,y轴下为正        MM_HIENGLISH  1个逻辑单位 = 0.001英寸    MM_LOENGLIS

826

OPNET卫星节点仿真避坑指南:为什么你的STK轨道文件导入后位置不对?

本文深入解析OPNET卫星节点仿真中STK轨道文件导入后位置异常的常见问题,揭示坐标系差异(ECI与ECF)、时间基准不匹配等关键因素。通过修改.SA文件头标识、统一时间基准等解决方案,帮助工程师避免仿真失真,提升卫星通信系统仿真的准确性。特别适用于STK与OPNET协同工作的卫星网络仿真场景。

weixin_30335575的博客 602

VC中有关屏幕映射方式

 在一般的情况之下,我们都以像素作为绘图的单位,我们称之为设备坐标。我们在进行绘图操作的时候,不可避免的要用到设备坐标系。 WINDOWS提供了几种映射方式,或称坐标系。可以通过它们来和设备上下文相联系。比方说不管是什么样的显示设备,如果我们需要在上面显示一个2英寸高,2英寸宽的矩形,该怎样处理呢?这就要依赖于我们所设定的坐标系。如果我们指定了MM_TEXT 方式,这时坐标原点就位于屏

fqli1610的专栏 1417

Coze HTTP请求节点实战:5分钟搞定天气API对接(含动态参数技巧)

本文通过一个天气预报API对接的实战案例,详细讲解了如何在Coze平台使用HTTP请求节点实现外部数据交互。文章重点演示了动态参数传递、JSON响应解析与错误处理等核心技巧,帮助开发者在5分钟内快速构建稳定可靠的智能体外部服务调用能力。

weixin_29233333的博客 677

ENSP Pro VXLAN EVPN分布式网关部署配置

在BGP EVPN方式部署分布式网关的场景中,控制平面的流程包括VXLAN隧道建立、MAC地址动态学习;转发平面的流程包括同子网已知单播报文转发、同子网BUM报文转发、跨子网报文转发。该方式实现的功能全面,支持主机IP路由通告、主机MAC地址通告、主机ARP通告,可以直接使能ARP广播抑制功能。如果在VXLAN网络中采用分布式网关,推荐使用此方式。对比集中式网关,分布式网关的arp条目比集中式网关的arp条目少,分布式网关只学习租户侧的arp条目,不学习网络侧的arp条目。

qq2353177176的博客 4564

窗口、视口、屏幕显示详解--计算机绘图基本功

窗口、视口、屏幕显示详解--计算机绘图基本功             窗口: 逻辑环境中的一小部分,是一个矩形框;世界坐标系是逻辑坐标,SetWindowOrg(X,Y )设置窗口的逻辑坐标点(X,Y)映射为的设备环境的设备点(0,0)。       设备环境:显示器、打印机等等。坐标系为设备坐标系,正Y轴向下,正X轴向右,原点在左上角,固定不变,不可修改!其X、Y的负半轴为虚设,

李树花开,风中摇曳 3840

3分钟搞定!QQ音乐歌单导出Excel保姆级教程(含歌单ID获取技巧)

本文提供了一份详细的QQ音乐歌单导出Excel保姆级教程,帮助用户轻松备份和管理个人音乐收藏。教程核心在于获取歌单ID,并利用浏览器开发者工具执行脚本提取数据,最后通过Excel导入功能快速生成结构化表格。整个过程无需编程基础,3分钟即可搞定,是个人数据管理的实用技巧。

weixin_29008691的博客 1409

windows程序设计之绘图基础之映射模式

视口是基于设备坐标的。对于显示器,就是像素的,也就是你看到的。 窗口是基于逻辑坐标的,虚拟的,也是你写程序时使用的。而且与你当前拿到的设备描述表有关,一般通过beginPaint拿到的都是客户区;而使用getDC拿到的则是通常意义下的窗口:客户区+菜单栏+工具栏+标题栏等等。

u012750259的专栏 772

linux系统下XDMA驱动的安装与测试问题总结

先看两个常见的问题。一个是驱动安装问题,一个是驱动测试错误;error 512 能识别PCIE的设备,但是The kernel modle installed correctly, but no devices were recognized.

whm128的博客 3808

26、遥感图像无监督变化检测方法解析

本文详细解析了遥感图像中的无监督变化检测方法,重点介绍了基于快速模糊 C-均值聚类的无监督变化检测方法(CDFFCM)在滑坡映射中的应用。CDFFCM 方法利用图像结构信息和高斯金字塔技术,提高了检测的准确性,减少了参数数量,并缩短了计算时间。该方法通过与传统方法的对比,展现出在高分辨率遥感图像滑坡检测中的显著优势。此外,文章还探讨了 CDFFCM 的未来发展趋势,包括技术融合、多模态数据应用以及智能化与自动化方向。

game4的博客 150

Windows坐标系统

坐标映射方式是设备环境中的一个重要属性,默认值为MM_TEXT,即左上角为原点,右方为x轴正方向,下方为y轴正方向,这种坐标系使用的单位是像素,其好处是窗口中的每一点的坐标不会因为窗口大小而改变。 映射方法 逻辑单位 x和y轴方向 MM_TEXT(默认方式) 像素 x右,y下 MM_LOMETRIC 0.1mm x右,y上 MM_HIMETRIC ...

TxyITxs的博客 788

RK3568平台开发系列讲解(安卓篇)LED呼吸灯系统流程

1.app层封装后使用NotificationManager发出:NotificationManager.notify() 2.Android 系统架构中:一个manager类对应一个aidl接口,一个manager对应一个底层的服务,notification也是这个架构

内核笔记 3646

MM_ISOTROPIC不懂啊,记录一下

MM_ISOTROPIC映射方式 1、使用任意的轴时都保证两个轴上的逻辑单位相同 2、刚开始将映射方式设定为MM_ISOTROPIC时,Windows使用与MM_LOMETRIC同样的视窗和视埠范围 3、可以呼叫SetWindowExtEx和SetViewportExtEx来根据自己的偏好改变范围了 4、您可以用所期望的逻辑视窗的逻辑尺寸作为SetWindowExtEx的参数、 5、用显

倒计时 4356

SwiftUI 5 教程之 SwiftData使用入门(教程含源码)

对我来说,记住日期很难。是的,您可以设置该日期的提醒,但该提醒无法产生紧迫感。让我们创建一个应用程序,我们可以在其中添加将来发生的事件。如果我们可以在主应用程序上看到所有即将发生的活动,那就太好了。也许将它们添加到小部件上以营造紧迫感。对于任何事件,我们需要跟踪哪些事情?我们将在下一篇文章中添加更多属性,其中我们将讨论迁移。现在,这就是我们所需要的。开始吧。

iCloudEnd的博客 988

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

windows程序设计学习笔记-Unicode,绘图基础

2.Unicode1.双字节字符集 有些字符由一个字节组成,另一些由两个字节组成。2.Unicode 一个字符由两个字节组成。 处理器在存储多字节数值时,对单个字符的高低字节可能顺序或逆序存放。在字符,字符串前加L,如L’H’,L”Hello”,告知编译器对每个字符用两个字节存储。对C库函数中有字符串参数的需要使用该函数的宽字符版本来处理宽字符。3.TCHAR#iddef _UNICODE

x13262608581的博客 733

贝叶斯统计 [韦来生编]

贝叶斯(Bayes)统计是近几十年来迅速发展起来的数理统计的一个重要分支。贝叶斯方法与经典统计方法的主要不同之处是进行统计推断时除了利用样本信息外,还要利用参数的先验信息,因此可以提高统计推断或统计决策的效果。它在经济、金融、生物、医学、自然科学和社会科学等许多领域具有广泛的应用。贝叶斯方法的研究已渗透到了统计学的几乎所有领域。作者在给中国科学技术大学概率论与数理统计专业本科生开设的“数理统计”课程中有一章专门讲授“贝叶斯方法和统计决策理论”,近十年来也给中国科学技术大学概率统计专业研究生开设过几次“贝叶斯分析”课。本书是在对过去讲稿的内容作了适当的增减和调整的基础上完成的。  本书共分六章。第1章是绪论,介绍了贝叶斯统计的若干基本概念,同时对必要的数理统计的基础知识有重点地作了回顾。第二章介绍了确定先验分布的若干可供选择的方法。第三章介绍了几类常见统计模型参数的后验分布的主要结果和计算方法。第四章和第五章分别介绍了“贝叶斯统计推断”和“贝叶斯统计决策”的内容。第六章介绍了贝叶斯统计计算的若干方法,包括蒙特卡洛方法和马尔可夫链蒙特卡洛(MCMC)方法以及相关统计软件的简介。本书的每一章附右大量的例题和习题,书末附有常用的几个表格和部分习题解答供读者查用。  大约可在54学时内讲授本书的第1章至第六章的主要内容,教师可根据学时需要选讲本书第1章至第六章的部分内容。书中标“*”号的章节可略去不讲,留给读者作为阅读材料。第六章例题中的R代码和部分例题的数据文件等可从作者个人主页下载。  作者在编写本书的过程中参考了J.O.Berger教授的《统计决策论及贝叶斯分析》和茆诗松教授编写的《贝叶斯统计》等书中的一些内容,以及《贝叶斯分析》一书中由张伟平博士编写的有关贝叶斯统计计算的一些内容。在此表示衷心感谢。  本书编写准备过程中,中国科学技术大学统计与金融系的几个研究生帮助完成了本书部分中文的录入和排版,作者对他们的辛勤工作表示真诚的感谢。高等教育出版社为本书的出版给予了大力支持。在此一并致谢。

从窗口到视口的映射

从窗口到视口的映射 先来讲解一下什么是视口与窗口。注意,不要把术语窗口与我们平常说的打开一个窗口相混淆。我们平常说的窗口恰恰是这里要讲要术语视口。 所谓视口,就是我们看得见的部分。在上图中,视口就是红色虚线框起来的部分。当我们拖动滚动条向下拖动网页的时候,视口始终就是这么大,保持不变。而整个网页就是窗口。向下拖动网页的时候,网页上半部分因为超...

史D芬周 434

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

雷德算法

使用雷德算法实现倒位序:         对于自然顺序(二进制)我们是在低位加 1 得到下一位数,对于倒位序我们是在高位加 1 向低位进位。比如已知一个倒位序数是J求其下一个倒位序数,N位总数 ,把J与N/2比较若J=N/2则说明J的最高位为1 ,把最高位置0 ,比较次高位,若次高位为0 ,则把次高位置1,得到J的下一个倒位序,若次高位为1  , 则把次高位置0,以此类推... 以N = 8

知行且执行 5115

VS2012中CSting , std::string , char * 之间的转换

首先,设置“项目属性”-“配置属性”-“常规”-“字符集”设置为使用“使用多字节字符集” 1、从CSting到std::string std::string str ; CString cstr ; str = cstr.GetBuffer() ; 2、从std::string到CString std::string str("test") ; CString cstr ; cst

知行且执行 3827

C++中string使用

所有解释已经在程序中标明,不再单独解释 代码: //如何使用C++标准库类型中的string #include #include #include using namespace std; int main() { //1、构造函数 cout << "***********************string类的构造函数***********************" << en

知行且执行 2960

2014WAP校园招聘笔试题

这是2014年WAP笔试的第一题,当时没有做出了,最近在网上看到一篇博客写了关于这道题的解法,自己看了看用C++实现了。博客地址:http://blog.youkuaiyun.com/litoupu/article/details/41220817 题目: Abstract We are planning an orienteering game. The aim of this game is to

知行且执行 2411

C++中vector和set删除一亿个数字中的奇数

一、vector 先贴代码再解释: #include #include #include #include using namespace std; const unsigned int NUM = 100000000; void removeOdd1(vector& a) { for(vector::iterator it = a.begin();it!=a.end();)

知行且执行 2286

计算机易混淆概念(待续)

计算机网络1、IP地址(1)IP地址划分 (2)五类IP地址范围 (3)私有IP地址 10.0.0.0——10.255.255.255 172.16.0.0——172.31.255.255 192.168.0.0——192.168.255.255 C++语言1、引用与指针 (1)指针是一个实体,而引用仅是个别名; (2)引用使用时无需解引用(*),指针需要解引用;

知行且执行 1489
上一篇: windows程序设计中MM_TEXT模式下的逻辑坐标与设备坐标的转换
下一篇: 再谈Windows坐标变换
知行且执行
博客等级 码龄14年 38粉丝 73原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值