2012-01-08 263 views
1

我有一個圖像和三個頂點與它的位置和它的texcoord。繪製紋理三角形

如何在picturebox中繪製紋理三角形?

這是一張說明它是什麼:

enter image description here

回答

2

您可以使用GraphicsPathTextureBrush

// Create the triangle 
GraphicsPath p = new GraphicsPath(); 
p.AddLine(triangleVertex1, triangleVertex2); 
p.AddLine(triangleVertex2, triangleVertex3); 
p.CloseFigure(); 

// Draw the triangle 
Bitmap b = new Bitmap(pictureBox.ClientSize.Width, pictureBox.ClientSize.Height); 

using(Graphics g = Graphics.FromImage(b), TextureBrush t = new TextureBrush(myImage)) { 
    g.FillPath(t, p); 
} 

// Finally, set the PictureBox's image 
pictureBox.Image = b; 
+0

你是不是心裏有texcoords紋理映射到頂點。 :( – Blau 2012-01-08 02:25:30

+0

@Blau:可能是你想要的結果的圖片會有幫助嗎? – Ryan 2012-01-08 02:48:17

+0

我已經爲問題添加了圖片網址。 – Blau 2012-01-08 03:19:32