一个程序猿

又不仅仅是一个程序猿

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
WPF中对图片进行旋转是应用RotateTransform类,而进行缩放和翻转则是应用ScaleTransform类。
旋转:           
               RotateTransform rotateTransform = new RotateTransform(90);//90度
               imgCtl.RenderTransform = rotateTransform;//图片控件旋转
可以通过CenterX和CenterY指定旋转中心,默认旋转中心是原点。

缩放、翻转: 
                ScaleTransform scaleTransform = new ScaleTransform();
                scaleTransform.ScaleX = -1;
                imgCtl.RenderTransform = scaleTransform;
这是实现图片左右翻转,通过属性ScaleX改变,当其值为正时实现水平方向的缩放,其值为负时实现翻转和缩放,ScaleY同理。

若要同时实现旋转、缩放、翻转,则要利用到TransformGroup类,它能将这些变换整合到一起,如下:
                TransformGroup transformGroup = new TransformGroup();             

                ScaleTransform scaleTransform = new ScaleTransform();
                scaleTransform.ScaleX = -1;
                transformGroup.Children.Add(scaleTransform);
              
                RotateTransform rotateTransform = new RotateTransform(angle * 180 / 3.142);
                transformGroup.Children.Add(rotateTransform);
                imgCtl.RenderTransform = transformGroup;
这样能实现物体运动时根据方向旋转和翻转。
posted on 2012-02-25 11:23  Old.T  阅读(15247)  评论(0)    收藏  举报