资源描述:
《VB编程实现图像的漂亮效果》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、VB编程实现图像的漂亮效果参数表----------------------------------------------------- Angle光照倾角,取值0到90之间,以角度为单位 WidthOfArea光照区宽度,取值大于1的整数,以像素为单位 Speed光照区运动速度,取值大于1的整数 EnhanceRatio光照强度参数,取值大于1的整数 ----------------------------------------------------- 好,原理就这么多,现在我们开始动手实现吧!打开VB
2、6.0,选择新建标准EXE工程,在主窗口form1中绘制下表中所列控件并设置窗体和各控件的属性。 控件属性设置 Form1NameForm1 ScaleMode3-pixel PictureBoxNamePicDest ScaleMode3-pixel Picture背景图 PictureBoxNamePicSource ScaleMode3-pixel Picture主体图 LabelNameLblA Caption角度 TextboxNameTxtA Text30 LabelNameLblW
3、 Caption宽度 TextboxNameTxtW Text15 LabelNameLblE Caption强度 TextboxNameTxtE Text15 LabelNameLblS Caption速度 TextboxNameTxtS Text1 CommandButtonNameCmd1 Caption开始特效 生成最后的窗体。 在form1的代码编辑窗口中添加如下代码:以下是引用片段: Option Explicit Const pi = 3.1415926 ’api函数声
4、明------------------------------------------------------------ Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" _ (Destination As Any, Source As Any, ByVal Length As Long) ’拷贝内存 Private Declare Function GetPixel Lib "gdi32" (ByVal hdc As Lo
5、ng, _ ByVal X As Long, ByVal Y As Long) As Long ’取像素值 Private Declare Function SetPixel Lib "gdi32" (ByVal hdc As Long, _ ByVal X As Long, ByVal Y As Long, ByVal crColor As Long) As Long ’设置像素值 Private Sub cmd1_Click() cmd1.Enabled = False MakeSpark tx
6、tA, txtW, txtS, 0, txtE, 65, 10 cmd1.Enabled = True End Sub Private Sub MakeSpark(Angle As Long, WidthOfArea As Long, _ Speed As Long, MaskColor As Long, _ EnhanceRatio As Single, OffsetX As Long, OffsetY As Long) ’熠熠生辉效果 ’参数表------------------------
7、----------------------------- ’Angle 光照倾角 ’WidthOfArea 光照区宽度 ’Speed 光照区运动速度 ’MaskColor 主体图的屏蔽色 ’EnhanceRatio 光照强度参数 ’OffsetX 主体图叠加到目标图时的 X 偏移 ’OffsetY 主体图叠加到目标图时的 Y 偏移 Dim i&, X&, Y&, L&, Color&, EnhanceValue& Dim R As Byte, G As Byte, B As Byte
8、 With picSource For i = 0 To .Width + .Height * Tan(Angle * pi / 180) + WidthOfArea _ Step Speed ’扫描主体图 For X = 0 To .Width - 1 For Y = 0 To