您的位置:程序门 -> vb -> 多媒体



vb关于图象线性放大的问题,麻烦帮我修改下啊  简化点就好  谢谢了


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


vb关于图象线性放大的问题,麻烦帮我修改下啊 简化点就好 谢谢了
发表于:2007-11-08 10:51:19 楼主
dim       pic(5000,       5000,       3)       as       byte  
dim       pix       as       byte  
dim       pic1(9000,       9000,       3)       as       byte  
dim       w       as       long  
dim       h       as       long  


private       sub       command1_click()       '读图象  
commondialog1.filter       =       "pictures(*.bmp)   |*.bmp   "  

commondialog1.showopen  

open       commondialog1.filename       for       binary       as       #1  
            get       #1,       19,       w:               get       #1,       23,       h:               seek       #1,       55  
                for       j       =       h       -       1       to       0       step       -1  
                                for       i       =       0       to       w       -       1  
                                            for       k       =       2       to       0       step       -1  
                                                        get       #1,       ,       pic(i,       j,       k)  
                                            next       k  
                                next       i  
                            if       w       *       3       mod       4       <>       0       then  
                                    for       k       =       1       to       4       -       ((w       *       3)       mod       4)  
                                            get       #1,       ,       pix  
                                    next       k  
                            end       if  
            next       j  
            close       #1  
end       sub  


private       sub       command2_click()       '显示图象  

                for       j       =       0       to       h       -       1  
                for       i       =       0       to       w       -       1  
                            picture1.pset       (i,       j),       rgb(pic(i,       j,       0),       pic(i,       j,       1),       pic(i,       j,       2))  
                next       i  
next       j  
end       sub  

private       sub       command3_click()       '放大图象,n是放大倍数  
picture1.cls  
n       =       val(text1.text)  
    for       i       =       0       to       h       *       n       -       1       step       n  
                for       j       =       0       to       w       *       n       -       1       step       n  
                                for       l       =       0       to       n       -       1  
                                   
                                            pic1(j       +       l,       i       /       n,       0)       =       (pic(j       /       n,       i       /       n,       0)       *       l       /       n       +       pic(j       /       n       +       1,       i       /       n,       0)       *       (1       -       l       /       n))  
                                            pic1(j       +       l,       i       /       n,       1)       =       (pic(j       /       n,       i       /       n,       1)       *       l       /       n       +       pic(j       /       n       +       1,       i       /       n,       1)       *       (1       -       l       /       n))  
                                            pic1(j       +       l,       i       /       n,       2)       =       (pic(j       /       n,       i       /       n,       2)       *       l       /       n       +       pic(j       /       n       +       1,       i       /       n,       2)       *       (1       -       l       /       n))  
                                   
                                        picture1.pset       (j       +       l,       i),       rgb(pic(j       /       n,       i       /       n,       0)       *       l       /       n       +       pic(j       /       n       +       1,       i       /       n,       0)       *       (1       -       l       /       n),       pic(j       /       n,       i       /       n,       1)       *       l       /       n       +       pic(j       /       n       +       1,       i       /       n,       1)       *       (1       -       l       /       n),       pic(j       /       n,       i       /       n,       2)       *       l       /       n       +       pic(j       /       n       +       1,       i       /       n,       2)       *       (1       -       l       /       n))  
                                next       l  
                                       
                next       j  
    next       i  
   
for       i       =       0       to       w       *       n       -       1  
                for       j       =       0       to       h       *       n       -       1       step       n  
                                for       l       =       0       to       n       -       1  
                                               
                                                rr       =       pic1(i,       j       /       n,       0)       *       l       /       n       +       pic1(i,       j       /       n       +       1,       0)       *       (1       -       l       /       n)  
                                                gg       =       pic1(i,       j       /       n,       1)       *       l       /       n       +       pic1(i,       j       /       n       +       1,       1)       *       (1       -       l       /       n)  
                                                bb       =       pic1(i,       j       /       n,       2)       *       l       /       n       +       pic1(i,       j       /       n       +       1,       2)       *       (1       -       l       /       n)  
                                                picture1.pset       (i,       j       +       l),       rgb(rr,       gg,       bb)  
                                next       l  
                next       j  
    next       i  

end       sub
发表于:2007-11-08 11:11:011楼 得分:0
不用重复提问,前面已经回答了
http://topic.csdn.net/u/20071108/10/a704ad0a-dd5b-49b1-a11f-7fb4943d2b92.html
发表于:2007-11-10 13:47:292楼 得分:0
http://blog.yesky.com/blog/wallescai
慢慢看,对楼主有帮助。  


快速检索

最新资讯
热门点击