MFC 对话框 之Yuv ddraw缩放+滚动条+左键放大,右键缩小
来源:互联网 发布:unity3d wsd人物行走 编辑:程序博客网 时间:2024/05/17 08:46
方法:
大致的方法和RGB的缩放一致,注意ddraw yuv视频显示时,由于点击鼠标左键对图像进行放大,会造成ddraw的表面的高度和宽度等发生变化,这样我们缩放时,要及时跟新ddraw表面,在yuv缩放显示时,由于我有好几个类之间交互数据,造成2个对象访问同一个类的成员(坐标)的情况,获取不到坐标值。这个问题可以采用设计模式里面的单态 设计模式或使用GetParent()获取父类对话框的对象解决。
缩放公式如下:
imgRect :
根据放大的倍数和滚动条的位置,就算出原始图像的哪部分像素显示在屏幕上。
主要是计算出这个关系;
设滚动条的水平位置为sx,垂直位置为sy;
屏幕的size为:cx,cy
放大倍数为m_zoom;
那么此时:对应的原始像素的坐标为:
图像的像素size=i_width*i_height;
那么此时的局部原始size为(RGB缩放):
imgRect.left=(i_width-cx/m_zoom)*sx/Max_ScrollValue;
imgRect.top=(i_height-cy/m_zoom)*sy/Max_ScrollValue;
imgRect.width=cx/m_zoom;
imgRect.height=cy/m_zoom;
- MFC 对话框 之Yuv ddraw缩放+滚动条+左键放大,右键缩小
- MFC 对话框上RGB图像缩放,左键放大,右键缩小+滚动条使用
- MFC---之对话框滚动条的使用
- winform chart 控件之滚动条的放大与缩小功能
- winform chart 控件之滚动条的放大与缩小功能
- MFC,对话框滚动条使用
- MFC对话框处理滚动条
- MFC控件随着对话框等比例放大或缩小
- MFC控件随着对话框等比例放大或缩小
- MFC之滚动条
- vb.net 用上下左右键控制Grid滚动条
- C#(winform)实现图片的无损放大缩小【点击鼠标滚动键放大缩小】
- 图片放大缩小,滚动鼠标
- 基于mfc的对话框编程中,实现控件随对话框大小自动缩放以及通过滚动条实现控件移动功能
- Halcon MFC混合编程-图像显示随鼠标滚动放大缩小
- Halcon MFC混合编程-图像显示随鼠标滚动放大缩小
- android 图片放大缩小 多点缩放
- android 图片放大缩小 多点缩放
- 2012.2.29 linux学习笔记 gcc makefile的使用
- Oracle 排除表导出
- 堆和栈的区别 (转贴)
- DWZ框架分页和搜索功能
- VC 6.0 点击“Compile”或者“Build”后被出现的 “Compiling... ,Error spawning cl.exe
- MFC 对话框 之Yuv ddraw缩放+滚动条+左键放大,右键缩小
- Linux中 oracle SQL*PLUS 命令大全
- DTO层的思考
- 3D Max Mesh Smooth at render time
- String与StringBuffer的区别?
- 《service》-“linux命令五分钟系列”之二
- hdu 2424
- 每天一道笔试题-2012年3月1日
- 在spring中配置多数据库读取