WPF中的变形类是为了达到直接去改变某个Silverlight对象的形状(比 如缩放、旋转一个元素)的目的而设计的,RenderTransform包含的变形属性成员就是专门用来改变Silverlight对象形状的,它可以实现对元素拉伸、旋转、扭曲等效果,同时变形特效也常用于辅助产生各种动画效果。
RenderTransform类的成员包括:
(1)TranslateTransform 位置平移效果
(2)RotateTransform 对象旋转变化
(3)ScaleTransform 对象缩放变化
(4)SkewTransform 对象扭曲变化
(5)TransformGroup 多种组合变化
(6)MatrixTransform 是其他几个变形类的基类,矩阵方式实现效果
- TranslateTransform(平移效果)
包含X、Y 两种属性,以原来的对象为坐标原点(0,0), X和Y分别代表图片在X方向和Y方向的偏移量。
- RotateTransform(旋转效果)
包括属性Angle是偏转角度,CenterX和CenterY是旋转中心,(0,0)是原点,非零值代表经过偏移之后的中心点。
- ScaleTransform(缩放效果)
CenterX 和 CenterY代表原点坐标偏移量,ScaleX和ScaleY分别代表X和Y方向的缩放比例。
- SkewTransform(扭曲效果)
CenterX和CenterY代表原点坐标偏移量,其中AngleX和AngleY是让元素相对X轴和Y轴的倾斜角度。
- TransformGroup(多种组合效果)
缩放、旋转、扭曲等变化效果合并起来。TransformGroup的作用类似于在控件布局中的StackPanel内嵌的作用,是把多种变化元素组合成一种变化的容器。
- MatrixTransform(矩阵变换效果)
MatrixTransform是通过一种矩阵算法来进行运算得到相应的变形的效果的。
矩阵变形对象的组成原理,如图:
例:使用矩阵变换对图形进行扭曲、缩放等效果。