使用windows的的自带的函数来显示图像可能始终还是绕不开两个概念,

视口和窗口。

视口--- 屏幕上的一个显示用的矩形框。

窗口--- 完整图像上的一个用于取数的矩形框。

屏幕的宽度、高度和视口参数用于控制向显示存储器中写数。

图像的宽度、高度和窗口参数用于控制从图像文件中取数。

利用DrawDibDraw函数可以实现视频显示和单帧图像的显示,而且对于显示图像的移动和放缩,也可以轻松实现。但是

在实际的显示中可能都会把屏幕的概念利用GetClientRect()换成客户区。因为图像总是在客户区进行显示。

为了让图像正常显示(即不经过缩放),那么窗口的大小必定和视口的大小是完全相同的,只是窗口的起始点和视口的起始点坐标标准是不一样的,所以这两点坐标显然是不一样的。

例如rc即为我们设的客户区的CRect类的对象,这里我们假设视口的大小等于客户区的大小。

DrawDibDraw(m_hDrawDib,      m_hDC,

//视口

rc.left,//目的图像的横坐标在客户区的横坐标起始,视口的横坐标起始

rc.top,//目的图像的纵坐标在客户区的纵坐标起始,视口的纵坐标起始

rc.Width(),//目的图像的宽度,视口的图像宽度

rc.Height(),//目的图像的高度,视口的图像高度

&(m_pBmpInfo->bmiHeader),

m_pSourceDat,//整幅图像的数据起始首地址

//窗口

dxs,//源图像的横坐标起始,窗口横坐标起始

dys,//源图像的纵坐标起始,窗口纵坐标起始

rc.Width(),//源图像的宽度,窗口宽度

rc.Height(),//源图像的高度,窗口高度

0);这样就可以正常显示一副图像了,而且随着dxs和dys的改变,可以改变窗口取数的位置,从而显示的是移动后的图像。

matlab里函数draw,DrawDibDraw函数(转)相关推荐

  1. matlab中dither 函数,(转)matlab里一些简单的函数

    matlab之基本绘图函数 clear:清空内存中的变量: figure:强制生成一个新的个绘图窗口: syms x y t :声明变量: fplot(函数表达式,绘图区间): plot(横坐标向量, ...

  2. matlab给0数组赋值,MATLAB中怎么把一个函数的一部分赋值给一个变量或数组,比如怎么把sin(x)大于0的部分赋值给f....

    答:你可以编一个for循环么,判断sin(x)时候大于0,如果大于0 f=sin(x) 答:总体思路:设定筛选条件,将数组中符合条件的元素筛选出来(可以筛选出元素值也可以筛选出元素对应的下标),然后将 ...

  3. matlab expand 扩展 用不了,matlab中expand函数 Matlab 里的expand怎么用

    Matlab 里的expand怎么用 expand函数用于多项式的展开运算, syms x y;%定义x,y变量 expand((x-2)*(x-4)) ans = x^2 - 6*x + 8今天小编 ...

  4. matlab里newff,matlab中newff函数

    MATLAB中BP神经网络的重要函数和基本功能 ?newff() 功能 建立一个前向BP网络 格式 net = newff(PR,[S1 S2...SN1],{TF1 TF2...TFN1},BTF, ...

  5. matlab中simple函数怎么用,matlab里simple函数

    值 realmin:系统所能表示的最小数值 nargin: 函数的输出引数个数 ---MATLAB 中基本绘图函数有: plot: x 轴和 y 轴均为线性刻度 数刻度 semilogx: x 轴为对 ...

  6. matlab里butter,matlab中butter函数

    利用切比雪夫最佳一致逼近法设计一多阻带陷波器 qiebijinduobs 在 MATLAB 中,可以用函数 y=filter(p,d,x)实现差分方程的仿真,也可以用函 数 y=conv(x,h).. ...

  7. matlab里面的vpa函数,matlab用vpa函数之后怎么科学计数法

    MATLAB算π出错我输入vpa(pi,300) .结果是:ans =3.14159265358979311599796 vpa(pi,300)这样就可以了ans=3.1415926535897932 ...

  8. 关于matlab里mat2gray函数格式

    Matlab 中 mat2gray 函数的介绍 Matlab 中 mat2gray 函数的介绍 函数功能: 实现图像矩阵的归一化操作. 所谓"归一化"就是使矩阵的每个元素的值都在0 ...

  9. MATLAB及app designer中函数:定义与调用

    本文介绍MATLAB 及其APP designer 中函数定义和调用的相关方法和注意事项: 文章结构如下: 1.脚本文件(.m)中函数调用: A.同一脚本文件下,函数定义在脚本末端 B.不同脚本文件, ...

最新文章

  1. 语言翻译成汇编语言_学习编程有没有必要从C语言和C++学起?应该怎么学?
  2. 深入Python(5):递归
  3. 企业微信推送消息延迟_iPhone手机微信推送消息总是延迟怎么办?
  4. 将密码转化为SAP的格式
  5. 6.Django与Ajax
  6. 数据结构-栈之二进制转十进制和八进制
  7. 2015蓝桥杯省赛---java---A---3(九数分三组)
  8. sata接口 图解 定义_SATA协议简介
  9. ZZULIOJ21级新生周赛(1)——命题人:朱会东老师--2824: 探姬同学@出题人
  10. PHP安装kafka扩展
  11. mysql怎么创建表可视化_MYSQL系列1_MySQL的安装,可视化工具的使用,以及建库建表等...
  12. linux安装rz命令
  13. 电脑计算机 系统制造方法是,如何制作车载计算机系统
  14. Windows电脑上不错的五款办公软件
  15. js中求2个数的最大值的几种方法
  16. 使用QQ推广作为客服或留言
  17. 解决电脑关机状态下按键盘会开机的问题
  18. 华为p4不是鸿蒙吗怎么又改为安卓_鸿蒙系统是不是就是改版的安卓系统?
  19. Order by 1 的解释
  20. 读取文件夹下同类型文件的文件名并排序(实例)

热门文章

  1. 什么是MBS,ABS和CDO
  2. pycharm工作目录修改
  3. 2008年南京夫子庙大型灯会
  4. 分享88个PHP留言日记源码,总有一款适合您
  5. 奇点云数据中台技术汇(八) | 数据治理——企业数字化转型的基石
  6. 【纯CSS】CSS奇思妙想边框动画
  7. [JZOJ5748] 小Y增员操直播群 递推+分治
  8. java读取word中的英语音标(Kingsoft Phonetic Plain字体的)
  9. java怎么播放不了声音_JAVA3D播放不出声音的解决办法
  10. 父母过早对孩子抛弃会给孩子带来无尽的伤害