摘要:
'File: mBit.bas'Name: 位运算模块'Author: zyl910'Version: V2.0'Updata: 2006-4-29'E-Mail: zyl910@sina.com''特点:在使用BitPosMask、BitMapMask、BitsMask前必须初始化'需要初始化'[2006-4-29]V2.0'1.加了许多常数'2.全面修改算法'3.取消原来的属性设计,使用函数'4.增加位扫描函数'5.增加端序处理函数Option Explicit' 阅读全文
摘要:
'File: mPoint.bas'Name: VB模拟指针模块'Author: zyl910'Version: V1.2'Updata: 2005-8-28'E-Mail: zyl910@sina.com'功能&特点:'1.是在栈中建立模拟指针的。这样就允许 递归、多线程'2.允许编译优化。且这种模拟指针构造方法是 在栈中建立、编译优化 的情况下最快的'3.能像C/C++的指针一样将指针当数组用'4.允许负向寻址。这样有助于图像卷积处理、缩放旋转'5.允许元素大小与步长不同。(Byte可以 阅读全文
摘要:
网格:(多细胞)生物系统:细胞软件:分子对象:原子类:元素机器码世界:量子世界数字电路:超弦理论还有COM: 神经细胞 阅读全文
摘要:
File: StudyRGB2Gray.txtName: 彩色转灰度算法彻底学习Author: zyl910Version: V1.0Updata: 2006-5-22一、基础 对于彩色转灰度,有一个很著名的心理学公式:Gray = R*0.299 + G*0.587 + B*0.114二、整数算法 而实际应用时,希望避免低速的浮点运算,所以需要整数算法。 注意到系数都是3位精度的没有,我们可以将它们缩放1000倍来实现整数运算算法:Gray = (R*299 + G*587 + B*114 + 500) / 1000 RGB一般是8位精度,现在缩放1000倍,所以上面的运算是32位整... 阅读全文
摘要:
一、为什么这么慢? 自盘古开天地以来(好像夸张了点),一直有人抱怨VB程序速度慢。特别是图像处理,被认为是VB的禁区。说起来也是,市面上的关于VB的图像处理的数据都是先讲计算公式,再直接用PSet(或API函数SetPixel)逐点画(至少我见过的书都是这样)。效果是办到了,但速度慢得离谱:对一幅640*480的图像进行半透明合并就需要10秒钟;而在PhotoShop中,只要一设置图层的透明度,半透明效果立即呈现。难怪有人说VB的闲话。 但这并不表示VB不能写高速的图像处理程序,速度慢是因为没有使用正确的方法。 从VB5开始,能以本机代码编译成exe文件,所以不存在代码执行速度的问题。那... 阅读全文
摘要:
关键在于对WM_ENTERIDLE消息的处理在菜单状态下移动鼠标会产生WM_ENTERIDLE消息这时用TempPoint、WindowFromPoint可以取得当前鼠标所指窗体的句柄再用GetClassName取得类名,与"#32768"(菜单窗体的类名)进行比较再等待1秒钟,用keybd_event发送VK_ESCAPE取消菜单状态但是还是有一个的缺点:无法在鼠标不移动的时候自动隐藏这时需要Timer控件的帮忙将下列文件粘贴到记事本,并保存为相应文件AutoHidePopupMenu.vbp======================================== 阅读全文
摘要:
这是我在一些 数字图像与图形处理 方面的书上面看见的,书上说的比较零散,我稍微整理了一下实践已证明,插值算法对于缩放比例较小的情况是完全可以接受的,令人信服的。一般的,缩小0.5倍以上或放大3.0倍以下,对任何图像都是可以接受的。最邻近插值(近邻取样法): 最临近插值的的思想很简单。对于通过反向变换得到的的一个浮点坐标,对其进行简单的取整,得到一个整数型坐标,这个整数型坐标对应的像素值就是目的像素的像素值,也就是说,取浮点坐标最邻近的左上角点(对于DIB是右上角,因为它的扫描行是逆序存储的)对应的像素值。可见,最邻近插值简单且直观,但得到的图像质量不高双线性内插值: 对于一个目的像素,设置.. 阅读全文