巴特西
首页
Python
Java
PHP
IOS
Andorid
NodeJS
JavaScript
HTML5
MFC onlbuttondown获得的坐标是设备坐标
MFC坐标转换
1.GetWindowRect是取得窗口在屏幕坐标系下的RECT坐标(包括客户区和非客户区),这样可以得到窗口的大小和相对屏幕左上角(0,0)的位置. 2.GetClientRect取得窗口客户区(不包括非客户区)在客户区坐标系下的RECT坐标,可以得到窗口的大小,而不能得到相对屏幕的位置,因为这个矩阵是在客户区坐标系下(相对于窗口客户区的左上角)的. 3.ClientToScreen把客户区坐标系下的RECT坐标转换为屏幕坐标系下的RECT坐标. 4.ScreenToClient把屏幕坐标系下
windows 屏幕坐标 窗口坐标 客户区坐标 逻辑坐标 设备坐标之间的关系及转换
设置坐标映射 (1)Windows坐标系统 Windows坐标系分为逻辑坐标系和设备坐标系两种,GDI支持这两种坐标系.一般而言, GDI的文本和图形输出函数使用逻辑坐标,而在客户区移动或按下鼠标的鼠标位置是采用设备坐标. <1>逻辑坐标系是面向DC的坐标系,这种坐标不考虑具体的设备类型,在绘图时,Windows会根据当前设置的映射模式将逻辑坐标转换为设备坐标. <2>设备坐标系是面向物理设备的坐标系,这种坐标以像素或设备所能表示的最小长度单位为单位,X轴方向向右,Y轴方向向
MFC坐标问题
页面空间中的矩形被称为窗口,设备空间中的矩形被称为视口. 页面空间与设备空间的转换示意图: 页面空间到设备空间的转换需要两个矩形的宽高比(转换因子). 设备空间到物理空间转换的唯一作用是平移,并由Windows的窗口管理部分控制. 几乎所有的GDI函数采用的坐标是逻辑坐标.windows必须将逻辑单位转换为设备单位,即像素. Windows对所有的消息和非GDI函数采用设备坐标. Windows默认的映射方式为MM_TEXT,它的逻辑单位和设备单位相同.SetMapMode函数可改变映射方式.
【转载】设备坐标(窗口/window)和逻辑坐标(视口/viewport)
一.预备知识 1.窗口是基于逻辑坐标的. 2.视口是基于设备坐标. 3.设备坐标是以像素为单位的,逻辑坐标是以.cm,m,mm,..... 4.系统最后一定要把逻辑坐标变为设备坐标. 5.设备坐标有3种: a.客户区域坐标,包括应用程序的客户区域,客户区域的左上角为(0, 0). b.屏幕坐标,包括整个屏幕,屏幕的左上角为(0, 0).屏幕坐标用在WM_MOVE消息中(对于非子窗口)以及下面的Windows 函数中:CreateWindow 和MoveWindow(都对于非子窗口).GetM
MFC中的一些视图
本章主要介绍MFC中主要的视图类,这些继承自Cview类. 继承关系如上图所示. 滚动视图 CscrollView给Cview添加了基本的滚动功能,它包含WM_VSCROLL和WM_HSCROLL消息的处理程序,将设计滚动窗口的工作交由MFC来完成. 首先介绍一下基本概念,物理视图,指得是占据屏幕的视图窗口和空间:逻辑视图指的是可以使用滚动条看到的整个虚拟空间. 成员函数SetScrollSize接受4个参数,其中2个可选. void SetScrollSizes( int nMapMode,
C++ GDI图形设备接口
一.概念 1. GDI:(Graphics Device Interfase)图形设备接口,是一个应用程序与输出设备之间的中介. 一方面,GDI向应用程序提供一个与设备无关的编程环境,另一方面,它又以设备相关的格式和具体的设备打交道.2. DC:(Device Context)设备描述表,是一种Windows数据结构.包括了与一个设备的绘制属性相关的信息.所有的绘制操作通过一个设备描述表进行,绘制线条.形状和文本的Windows API 函数都与DC有关. 二. 在Windows Applica
C#实现无物理边距真正可打印区域的绘图\打印程序开发
经常在开发实际的应用程序中,需要用到图形绘制和打印程序.如何实现完整的精确打印和绘图是需要注意许多细节地方的.最近在遇到打印问题的时候,仔细研究一阵,总结这篇博文,写得有点杂乱,看文要还请费点神. 基本功能:窗体绘图与鼠标交互 打印预览与打印输出 开发平台:VisualStudio 2010 (C#) 1绘图坐标系统 1.1绘图系统坐标转换(屏幕窗口/打印机) 绘图程序涉及到多种坐标系统,总体上可分为三个坐标系:世界坐标系.页面坐标系以及设备坐标系.想要将图形图像会知道最终的设备上,中间需要做
C#实现无物理边距 可打印区域的绘图\打印 z
经常在开发实际的应用程序中,需要用到图形绘制和打印程序.如何实现完整的精确打印和绘图是需要注意许多细节地方的.最近在遇到打印问题的时候,仔细研究一阵,总结这篇博文,写得有点杂乱,看文要还请费点神. 基本功能:窗体绘图与鼠标交互 打印预览与打印输出 开发平台:VisualStudio 2010 (C#) 1绘图坐标系统 1.1绘图系统坐标转换(屏幕窗口/打印机) 绘图程序涉及到多种坐标系统,总体上可分为三个坐标系:世界坐标系.页面坐标系以及设备坐标系.想要将图形图像会知道最终的设备上,中间需要做各
VC/Wince 实现仿Win8 Metro风格界面1——设计概述和自绘Button(附效果图)
去年用VC做了一个仿Win8 Metro风格的界面,感觉挺有意思,最近打算把实现过程和一些技术原理记录下来. 主要是风格上类似Win8,其实功能上很多借鉴了Android的操作方式.界面只支持两种大小的Metro磁铁. 原创博文,转载请标明出处:http://www.cnblogs.com/mythou/p/3157205.html 1.主要实现了以下功能: 手指滑动切换页面. 图标位置交换. 从全部列表拖动添加到主页面. 主页面按钮拖动添加删除操作. 主页面按钮拖动添加到导航栏上. 背景更换
DPtoLP/LPtoDP 和 ScreenToClient/ClientToScreen
设备坐标(Device Coordinate)又称为物理坐标(Physical Coordinate),是指输出设备上的坐标.通常将屏幕上的设备坐标称为屏幕坐标.设备坐标用对象距离窗口左上角的水平距离和垂直距离来指定对象的位置,是以像素为单位来表示的,设备坐标的X轴向右为正,Y轴向下为正,坐标原点位于窗口的左上角. 逻辑坐标(Logical Coordinate)是系统用作记录的坐标.在缺省的模式(MM_TEXT)下,逻辑坐标的方向和单位与设备坐标的方向和单位相同,也是以像素为单位来表示的,X轴
OpenGL中各种坐标系的理解[转]
OPENGL坐标系可分为:世界坐标系和当前绘图坐标系. 世界坐标系:在OpenGL中,世界坐标系是以屏幕中心为原点(0, 0, 0),且是始终不变的.你面对 屏幕,你的右边是x正轴,上面是y正轴,屏幕指向你的为z正轴.长度单位这样来定: 窗口范围按此单位恰好是(-1,-1)到(1,1),即屏幕左下角坐标为(-1,-1),右上角 坐标为(1,1). 当前绘图坐标系:是绘制物体时的坐标系.程序刚初始化时,世界坐标系和当前绘图坐标系是重合 的.当用glTranslatef(),glScalef(),
Qt之图形视图框架
简述 图形视图(Graphics View)提供了一个平台,用于大量自定义2D图元的管理与交互,并提供了一个视图部件(view widget)来显示可以缩放和旋转的图元. 框架包括一个事件传播架构,支持场景(Scene)中的图元(Item)进行精确的双精度交互功能.图元可以处理键盘事件.鼠标按下.移动.释放和双击事件,同时也能跟踪鼠标移动. 图形视图使用一个BSP(Binary Space Partitioning - 二叉空间分割)树,以提供对图形元素的快速查找,正因为如此,它可以使超大的场景
android定位和地图开发实例
在android开发中地图和定位是很多软件不可或缺的内容,这些特色功能也给人们带来了很多方便. 首先介绍一下地图包中的主要类: MapController : 主要控制地图移动,伸缩,以某个GPS坐标为中心,控制MapView中的view组件,管理Overlay,提供View的基本功能.使用多种地图模式(地图模式(某些城市可实时对交通状况进行更新),卫星模式,街景模式)来查看Google Map.常用方法:animateTo(GeoPoint point) setCenter(GeoPoint
Qt绘图之QGraphicsScene QGraphicsView QGraphicsItem详解
Graphics View提供了一个界面,它既可以管理大数量的定制2D graphical items,又可与它们交互,有一个view widget可以把这些项绘制出来,并支持旋转与缩放.这个柜架也包含一个事件传播结构,对于在scene中的这些items,它具有双精度的交互能力.Items能处理键盘事件,鼠标的按,移动.释放.双击事件,也可以跟踪鼠标移动.Graphics View使用BSP树来提供对item的快速查找,使用这种技术,它可以实时地绘制大规模场景,甚至以百万items计.Graph
【转载】GDI 映像方式 之 SetViewportOrgEx 与 SetWindowOrgEx 解析
SetViewportOrgEx 与 SetWindowOrgEx 解析 这两个函数,用来改变视端口和窗口的原点,并都具有改变轴的效果,以致(0,0)不再指左上角. 「视端口」是依据设备坐标(图素)的.通常,视端口和显示区域相同.视端口也可以是指整窗口坐标或者屏幕坐标.点(0,0)是显示区域(或者整个窗口或屏幕)的左上角,x的值向右增加,y的值向下增加. 「窗口」是依据逻辑坐标的,逻辑坐标可以是图素.毫米.英寸或者您想要的任何其它单位. 对于视端口和窗口的概念可以这样理解: 幻想显示器大小可以随
Windows编程坐标系统概念
Windows编程中关于设置映象模式的四个函数 SetWindowOrgSetViewPortOrgSetMapModeSetWindowExtExSetViewPortExtEx 一.Windows中的映射模式 1.Windows定义映射模式的目的 经 过我的综合,Windows定义映射模的目的又以下几个方面:1.不同人的使用习惯.不同国家的,不同地区,以及不同的人因为习惯喜欢用不同的度量单位, 有的人人喜欢用英寸,而有的人喜欢用公制中的厘米,毫米等.其他的人又喜欢用另外一些单位..2.使软件
pyqt5 graphics view简单使用
Graphics View提供了一个平面,用于管理和交互大量自定义的2D图形图元,以及一个用于可视化图元的视图窗口小部件,支持缩放和旋转. 该框架包括一个事件传播架构,允许场景中图元的精确双精度交互功能.图元可以处理关键事件,鼠标按下,移动,释放和双击事件,还可以跟踪鼠标移动. Graphics View使用BSP(二进制空间分区)树来提供非常快速的图元发现,因此,即使有数百万个图元,它也可以实时显示大型场景. 先说一下这里面的坐标系: 图形视图基于笛卡尔坐标系(平面直角坐标系x.y轴); 场景
pyqt5.0 GraphicsView框架
场景(The Scene) QGraphicsScene提供图形视图场景.该场景具有以下职责: 提供用于管理大量图元的快速界面(锅) 将事件传播到每个图元(把螃蟹烧熟了) 管理图元状态,例如选择和焦点处理 提供未转换的渲染功能:主要用于打印 该场景充当QGraphicsItem对象的容器(锅).通过调用QGraphicsScene.addItem()将图元(螃蟹)添加到场景中,然后通过调用许多图元发现函数的一个来检索图元. QGraphicsScene.items()及其重载返回由点.矩形.多边
OpenGL中各种坐标系的理解
转载:https://blog.csdn.net/meegomeego/article/details/8686816 OPENGL坐标系可分为:世界坐标系和当前绘图坐标系. 世界坐标系以屏幕中心为原点(0, 0, 0).你面对屏幕,你的右边是x正轴,上面是y正轴,屏幕指向你的为z正轴.长度单位这样来定: 窗口范围按此单位恰好是(-1,-1)到(1,1). 当前绘图坐标系是 绘制物体时的坐标系.程序刚初始化时,世界坐标系和当前绘图坐标系是重合的.当用glTranslatef(),glScalef
C#基础教程/适合初学者
C#基础教程 第一章 C#语言基础 本章介绍C#语言的基础知识,希望具有C语言的读者能够基本掌握C#语言,并以此为基础,能够进一步学习用C#语言编写window应用程序和Web应用程序.当然仅靠一章的内容就完全掌握C#语言是不可能的,如需进一步学习C#语言,还需要认真阅读有关C#语言的专著. 1.1 C#语言特点 Microsoft.NET(以下简称.NET)框架是微软提出的新一代Web软件开发模型,C#语言是.NET框架中新一代的开发工具.C#语言是一种现代.面向对象的语
Graphics View框架
Qt4.2开始引入了Graphics View框架用来取代Qt3中的Canvas模块,并在很多地方作了改进,Graphics View框架实现了模型-视图结构的图形管理,能对大量图元进行管理,支持碰撞检测,坐标变换和图元组等多种方便的功能.GraphicsView中增强的表现系统可以利用Qt4绘图系统的反锯齿,OpenGL工具来改善绘图性能,Graphics View支持事件传播体系结构,可以利用图元在场景(scene)中的到提高了一倍的精确交互能力,图元能够处理键盘事件,鼠标按下,移动,释放,
热门专题
sql聚集函数执行步骤
layui 下拉选择 超出页面
springboot mysql 存储过程
user_agent 大全
c# 千分位符 转 Int
LCSS最长公共子序列算法
python3用slice怎么去掉末尾标点符号
key ssl证书在线转换
wireshark 编译
win10 多屏幕亮度 一键调节
mysql替换包含字符所有字段
如何加快R代码for循环的运行速度
H3C MSR系列路由器内网使用外网IP访问内部服务器的方法
创建数据库 ora-00922选项缺失或无效
keepalived非抢占模式
c# 获取 系统 下载 文件夹
itext中文不显示
CordovaPlugin onkeyDown事件
redis必十个面试
白苹果进不了恢复模式怎么办