亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? ripplethread.pas

?? FLASH賀卡代碼
?? PAS
字號:
unit RippleThread;

interface

uses
  Classes, ExtCtrls, Windows, Graphics, SysUtils;

type
  TRipple = class(TThread)
  private
    FBgImage: TImage;
    FEnabled: Boolean;
    Buffer1, Buffer2, TempBuffer: array of SmallInt;
  protected
    procedure Execute; override;
  public
    procedure Drop(X, Y: Integer); 
    property Image: TImage read FBgImage write FBgImage;
    property Enabled: Boolean read FEnabled write FEnabled;
  end;


implementation

type
  PRgbArray = ^TRgbArray;
  TRgbArray = array[0..5] of TRGBQuad;


{ TRipple }

procedure TRipple.Drop(X, Y: Integer);
var
  Offset: Integer;
begin
  Offset := Y * FBgImage.Width + X;
  if Buffer1[Offset] - 512 < -32768 then
    Buffer1[Offset] := -32768
  else
    Buffer1[Offset] := Buffer1[Offset] - 512;
end;

procedure TRipple.Execute;
var
  K, X, Y, OffsetX, OffsetY: Integer;
  BackgroundColorArray: array of TRGBQuad;
  TheColor: TColor;
  TheRGBQuad: TRGBQuad;
  Surface: TBitmap;
begin
  inherited;

  Surface := TBitmap.Create;
  try
    // 創建緩沖Bitmap
    Surface.Assign(FBgImage.Picture.Graphic);
    Surface.PixelFormat := pf32bit; // 只有這樣才能分解RGB三原色

    // 把FBgImage中的像素讀到BackgroundColorArray中
    SetLength(BackgroundColorArray, FBgImage.Height * FBgImage.Width);
    K := 0;
    for Y := 0 to FBgImage.Height - 1 do
      for X := 0 to FBgImage.Width - 1 do
      begin
        TheColor := FBgImage.Canvas.Pixels[X, Y];
        TheRGBQuad.rgbBlue  := GetRValue(TheColor);
        TheRGBQuad.rgbGreen := GetGValue(TheColor);
        TheRGBQuad.rgbBlue  := GetBValue(TheColor);
        BackgroundColorArray[K] := TheRGBQuad;
        Inc(K);
      end;

    // 初始化緩沖大小
    SetLength(Buffer1, FBgImage.Width * FBgImage.Height);
    SetLength(Buffer2, FBgImage.Width * FBgImage.Height);

    Buffer1[(FBgImage.Width + 1) * FBgImage.Height div 2] := -25000;

    // OK,循環計算水波效果
    while FEnabled do
    begin
      K := FBgImage.Width;
      for Y := 1 to FBgImage.Height - 2 do
      begin
        for X := 1 to FBgImage.Width - 2 do
        begin
          // 計算水波能量并加上阻尼
          Inc(K);
          Buffer2[K] := (Buffer1[K - 1] + Buffer1[k + 1] + Buffer1[K - FBgImage.Width] +
                        Buffer1[K + FBgImage.Width]) shr 1 - Buffer2[K];
          Buffer2[k] := Buffer2[K] - Buffer2[K] shr 5;

          // 計算反射效果
          OffsetX := (Buffer2[K - 1] - Buffer2[K + 1]) mod FBgImage.Width;
          if X + OffsetX < 0 then
            OffsetX := -(X shl 1 + OffsetX);
          if X + OffsetX + 1 > FBgImage.Width then
            OffsetX := (FBgImage.Width - X - 1) shl 1 - OffsetX;

          OffsetY := (Buffer2[K - FBgImage.Width] - Buffer2[K + FBgImage.Width]) mod FBgImage.Height;
          if Y + OffsetY < 0 then
            OffsetY := -(Y shl 1 + OffsetY);
          if Y + OffsetY + 1 > FBgImage.Height then
            OffsetY := (FBgImage.Height - Y - 1) shl 1 - OffsetY;

          TheRGBQuad := BackgroundColorArray[K + OffsetX + OffsetY * FBgImage.Width];
          PRgbArray(Surface.ScanLine[Y])[X] := TheRGBQuad;
        end;
        Inc(K, 2);
      end;

      FBgImage.Picture.Assign(Surface);

      { TODO -cTips : 快速交換緩沖區 }
      // Swap the buffers
      // Delphi BBS
      // ID: 554146
      // Q: 怎樣用指針快速交換兩個同類型數組的數據?
      // A: 這種問題不用指針,Pascal支持同類型的數組相互賦值,而且速度極快。形如以下方式:
      //    var a,b,Temp:Array[1..100] of DataType;
      //    ...
      //    Temp:=a; a:=b; b:=Temp;
      //    不過,a,b,temp一定要在同一句中聲明,否則就不行.

      TempBuffer := Buffer1;
      Buffer1 := Buffer2;
      Buffer2 := TempBuffer;
    end
  finally
    Surface.Free;
  end;
end;

end.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色婷婷综合久久久久中文一区二区 | 久草在线在线精品观看| 欧美色图天堂网| 亚洲第一成人在线| 欧美高清精品3d| 日本欧美一区二区三区乱码| 91精品婷婷国产综合久久 | 亚洲精品菠萝久久久久久久| 99精品国产一区二区三区不卡| 亚洲欧洲成人av每日更新| 色偷偷一区二区三区| 亚洲一二三区不卡| 日本不卡高清视频| 9i在线看片成人免费| 亚洲影院免费观看| 欧美一区二区福利在线| 国产成人免费在线视频| 亚洲精品免费一二三区| 91精品麻豆日日躁夜夜躁| 国内外成人在线| 日韩伦理电影网| 欧美一区二区久久| 成人晚上爱看视频| 日韩成人精品视频| 中文在线免费一区三区高中清不卡| 91黄色免费观看| 国产一区美女在线| 亚洲一二三四久久| 成人99免费视频| 亚洲国产精品精华液网站| 精品99一区二区| 日本韩国欧美一区二区三区| 免费成人小视频| 亚洲欧洲在线观看av| 日韩一区二区精品葵司在线| 国产女人aaa级久久久级| 奇米亚洲午夜久久精品| 国产精品美女视频| 日韩欧美一区中文| 91免费小视频| 国产精品996| 日韩黄色免费电影| 2欧美一区二区三区在线观看视频| 国内精品久久久久影院色| 亚洲少妇30p| 国产午夜精品理论片a级大结局| 欧美少妇bbb| 99综合影院在线| 国产夫妻精品视频| 美女免费视频一区| 亚洲大尺度视频在线观看| 色综合激情五月| 国产91对白在线观看九色| 麻豆成人综合网| 午夜私人影院久久久久| 亚洲视频免费在线观看| 国产欧美一区在线| 26uuu国产日韩综合| 亚洲一区二区三区四区在线观看 | 激情综合网av| 婷婷成人综合网| 亚洲图片欧美色图| 夜夜操天天操亚洲| 夜夜嗨av一区二区三区中文字幕| 国产精品视频线看| 久久久精品影视| 精品国产一区a| 精品日本一线二线三线不卡| 欧美三级日韩三级| 欧美三级电影精品| 欧美精品久久久久久久多人混战 | 91视频免费看| 丰满放荡岳乱妇91ww| 国产成人免费视频精品含羞草妖精| 蜜臀91精品一区二区三区| 日韩福利视频导航| 91久久精品一区二区三区| 免费在线看一区| 麻豆视频一区二区| 久久精品国产网站| 国产中文一区二区三区| 国产一区在线精品| 成人一区二区三区视频在线观看| 国产乱人伦偷精品视频免下载| 国产中文字幕一区| av在线这里只有精品| 色综合久久中文综合久久97| 欧洲av在线精品| 337p亚洲精品色噜噜狠狠| 日韩午夜在线影院| 久久久久久久久久电影| 国产精品色噜噜| 亚洲日穴在线视频| 日韩一级完整毛片| 久久久久久麻豆| 国产精品白丝在线| 亚洲国产日产av| 免费在线观看精品| 成人国产在线观看| 欧美午夜精品理论片a级按摩| 91精品国产欧美一区二区成人| 亚洲黄网站在线观看| 国产精品美女一区二区三区| 亚洲伊人色欲综合网| 青青草原综合久久大伊人精品| 国产伦精品一区二区三区免费迷| 成人精品鲁一区一区二区| 欧美午夜理伦三级在线观看| 精品国产凹凸成av人导航| 国产精品国产三级国产aⅴ无密码 国产精品国产三级国产aⅴ原创 | 成人污视频在线观看| 欧美在线999| 国产精品久久久久永久免费观看 | 国产日产精品1区| 亚洲欧洲精品一区二区三区不卡| 亚洲伊人伊色伊影伊综合网| 久久精品国产99| 99久久99久久精品免费观看| 欧美日韩一区二区在线观看视频 | 91女神在线视频| 欧美不卡一二三| 亚洲精品菠萝久久久久久久| 久久国产乱子精品免费女| 99国产精品久久久久久久久久久| 欧美日韩成人一区二区| 国产精品色哟哟| 美女网站色91| 在线国产亚洲欧美| 日本一区二区三区久久久久久久久不 | 欧美中文字幕不卡| 国产清纯在线一区二区www| 亚洲国产wwwccc36天堂| 高清av一区二区| 日韩限制级电影在线观看| 成人在线视频一区二区| 国产福利精品一区| 91精品国产一区二区| 亚洲另类中文字| 欧美性猛片xxxx免费看久爱| 色综合色综合色综合| 中文字幕av一区二区三区免费看 | 国产91综合网| 欧美一区二区女人| 亚洲午夜久久久| 91麻豆免费视频| 亚洲欧洲精品成人久久奇米网| 国产乱码精品一区二区三区av| 这里只有精品99re| 亚洲国产综合视频在线观看| 亚洲影院在线观看| 亚洲欧美激情插| 国产精品嫩草久久久久| 欧美色图在线观看| 欧美伦理影视网| 国产主播一区二区三区| 久久一区二区三区四区| 午夜精品久久久久久久99樱桃| 欧美日本视频在线| 麻豆成人免费电影| 国产亚洲人成网站| 成人av网址在线观看| 亚洲午夜精品在线| 成人免费视频国产在线观看| 欧美日韩精品系列| 国产精品久久久久久久蜜臀| 一区二区三区在线视频免费| 一区二区三区美女| 午夜视频一区二区三区| 成人伦理片在线| 欧美大片拔萝卜| 94-欧美-setu| 国产乱码精品一区二区三| 91小视频在线观看| 久久久影视传媒| 亚洲久本草在线中文字幕| 亚洲日本免费电影| 最好看的中文字幕久久| 欧美猛男男办公室激情| 蜜臀va亚洲va欧美va天堂| 亚洲线精品一区二区三区| 国产午夜精品一区二区三区视频| 国产成人欧美日韩在线电影| 亚洲动漫第一页| 国产三级欧美三级日产三级99| 在线观看91av| 色吊一区二区三区| 午夜久久福利影院| 久久99国产精品免费网站| 亚洲精品水蜜桃| 日韩一级视频免费观看在线| 精品久久久久久久久久久久久久久久久 | 日韩欧美成人午夜| 一道本成人在线| 国产高清不卡一区二区| 91亚洲资源网| 欧美色老头old∨ideo| 一本高清dvd不卡在线观看| av在线播放一区二区三区| 91丨九色丨黑人外教| 成人97人人超碰人人99|