首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> Delphi

Delphi GDI+ 學習筆記 (9):TextureBrush 紋理筆刷

     編輯:Delphi

影像平鋪填充:WrapMode 控制邊界行為、Matrix 縮放旋轉變換

TGPTextureBrush 以 TGPImage 為紋理來源,填充時平鋪重複。SetWrapMode 決定邊界處理:平鋪、鏡像平鋪 (X/Y/XY)、夾持 (Clamp)。SetTransform 以 3×2 矩陣對紋理座標變換 (縮放、旋轉、平移)。

1. 基本紋理填充


tb := TGPTextureBrush.Create(img);
g.FillEllipse(tb, 0, 0, ClientWidth, ClientHeight);

2. 矩陣縮放 (適應大小)


matrix := TGPMatrix.Create(75.0/640.0, 0, 0, 75.0/480.0, 0, 0); // 縮放至 75x75
tb.SetTransform(matrix);

3. WrapMode 五種模式視覺比較


tb.SetWrapMode(WrapModeTile);        // 正常平鋪
tb.SetWrapMode(WrapModeTileFlipX);   // X 鏡像平鋪
tb.SetWrapMode(WrapModeTileFlipY);   // Y 鏡像平鋪
tb.SetWrapMode(WrapModeTileFlipXY);  // XY 雙鏡像平鋪
tb.SetWrapMode(WrapModeClamp);       // 邊界夾持 (不平鋪)

WrapMode 對照表

Delphi微軟行為
WrapModeTileTile正常平鋪
WrapModeTileFlipXTileFlipX水平鏡像後平鋪
WrapModeTileFlipYTileFlipY垂直鏡像後平鋪
WrapModeTileFlipXYTileFlipXY水平垂直鏡像後平鋪
WrapModeClampClamp邊界像素延伸,不平鋪

紋理筆刷適用於遊戲地圖材質、UI 皮膚、報表背景水印、3D 模型貼圖預覽。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved