![圖像旋轉(zhuǎn)的C#示例_重置](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
private?void?RotateTransform_Click(object?sender,?System.EventArgs?e)
![圖像旋轉(zhuǎn)的C#示例_圖片顯示_02](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
????????{
![圖像旋轉(zhuǎn)的C#示例_重置_03](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
????????????Graphics?graphics=this.CreateGraphics();
![圖像旋轉(zhuǎn)的C#示例_重置_03](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
????????????graphics.Clear(Color.White);
![圖像旋轉(zhuǎn)的C#示例_重置_03](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![圖像旋轉(zhuǎn)的C#示例_重置_03](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
????????????//裝入圖片
![圖像旋轉(zhuǎn)的C#示例_重置_03](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
????????????Bitmap?image=new?Bitmap("nemo.bmp");
![圖像旋轉(zhuǎn)的C#示例_重置_03](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![圖像旋轉(zhuǎn)的C#示例_重置_03](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
????????????//獲取當(dāng)前窗口的中心點
![圖像旋轉(zhuǎn)的C#示例_重置_03](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
????????????Rectangle?rect=new?Rectangle(0,0,this.ClientSize.Width,this.ClientSize.Height);
![圖像旋轉(zhuǎn)的C#示例_重置_03](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
????????????PointF?center=new?PointF(rect.Width/2,rect.Height/2);
![圖像旋轉(zhuǎn)的C#示例_重置_03](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![圖像旋轉(zhuǎn)的C#示例_重置_03](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
????????????float?offsetX=0;
![圖像旋轉(zhuǎn)的C#示例_重置_03](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
????????????float?offsetY=0;
![圖像旋轉(zhuǎn)的C#示例_重置_03](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
????????????offsetX=center.X-image.Width/2;
![圖像旋轉(zhuǎn)的C#示例_重置_03](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
????????????offsetY=center.Y-image.Height/2;
![圖像旋轉(zhuǎn)的C#示例_重置_03](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
????????????//構(gòu)造圖片顯示區(qū)域:讓圖片的中心點與窗口的中心點一致
![圖像旋轉(zhuǎn)的C#示例_重置_03](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
????????????RectangleF?picRect=new?RectangleF(offsetX,offsetY,image.Width,image.Height);
![圖像旋轉(zhuǎn)的C#示例_重置_03](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
????????????PointF?Pcenter=new?PointF(picRect.X+picRect.Width/2,
![圖像旋轉(zhuǎn)的C#示例_重置_03](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
????????????????picRect.Y+picRect.Height/2);
![圖像旋轉(zhuǎn)的C#示例_重置_03](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
????
![圖像旋轉(zhuǎn)的C#示例_重置_03](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
????????????//讓圖片繞中心旋轉(zhuǎn)一周
![圖像旋轉(zhuǎn)的C#示例_重置_03](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
????????????for(int?i=0;i<361;i+=10)
![圖像旋轉(zhuǎn)的C#示例_圖片顯示_24](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
????????????{
![圖像旋轉(zhuǎn)的C#示例_重置_03](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
????????????????//?繪圖平面以圖片的中心點旋轉(zhuǎn)
![圖像旋轉(zhuǎn)的C#示例_重置_03](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
????????????????graphics.TranslateTransform(Pcenter.X,?Pcenter.Y);
![圖像旋轉(zhuǎn)的C#示例_重置_03](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
????????????????graphics.RotateTransform(i);
![圖像旋轉(zhuǎn)的C#示例_重置_03](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
????????????????//恢復(fù)繪圖平面在水平和垂直方向的平移
![圖像旋轉(zhuǎn)的C#示例_重置_03](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
????????????????graphics.TranslateTransform(-Pcenter.X,?-Pcenter.Y);
![圖像旋轉(zhuǎn)的C#示例_重置_03](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
????????????????//繪制圖片并延時
![圖像旋轉(zhuǎn)的C#示例_重置_03](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
????????????????graphics.DrawImage(image,picRect);????
![圖像旋轉(zhuǎn)的C#示例_重置_03](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
????????????????Thread.Sleep(100);
![圖像旋轉(zhuǎn)的C#示例_重置_03](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
????????????????//重置繪圖平面的所有變換
![圖像旋轉(zhuǎn)的C#示例_重置_03](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
????????????????graphics.ResetTransform();
![圖像旋轉(zhuǎn)的C#示例_圖片顯示_35](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
????????????}
![圖像旋轉(zhuǎn)的C#示例_圖片顯示_36](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
???????}?