Object Transforms in WPF : Matrix3D « Windows Presentation Foundation « C# / CSharp Tutorial






<Window x:Class="WpfApplication1.ObjectMatrixTransforms"
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  Title="Object Matrix Transforms" Height="300" Width="400">
  <StackPanel>
    <Button Click="BtnClose_Click" Margin="15,0,15,5">Close</Button>
    <Canvas Name="canvas1" ClipToBounds="True" Width="270" Height="280">
    <TextBlock Canvas.Top="53" Canvas.Left="90">Original shape</TextBlock>
    <Rectangle Canvas.Top="70" Canvas.Left="100" Width="50" Height="70" Stroke="Black" StrokeThickness="2"
            StrokeDashArray="3,1" />
    <Rectangle Name="rect" Canvas.Top="70" Canvas.Left="100" Width="50" Height="70" Fill="LightCoral"
            Opacity="0.5" Stroke="Black" StrokeThickness="2">
        <Rectangle.RenderTransform>
          <MatrixTransform x:Name="matrixTransform" />
        </Rectangle.RenderTransform>
    </Rectangle>
    </Canvas>
  </StackPanel>
</Window>
//File:Window.xaml.cs

using System;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Media;
using System.Windows.Shapes;

namespace WpfApplication1
{
    public partial class ObjectMatrixTransforms : Window
    {
        public ObjectMatrixTransforms()
        {
            InitializeComponent();
        }
        public void BtnApply_Click(object sender, EventArgs e)
        {
            Matrix m = new Matrix();
            m.M11 = 1;
            m.M12 = 0;
            m.M21 = 0;
            m.M22 = 1;
            m.OffsetX = 1;
            m.OffsetY = 2;
            matrixTransform.Matrix = m;
        }

    }
}
WPF Object Transforms In W P F








24.160.Matrix3D
24.160.1.Matrix3D scale transformationMatrix3D scale transformation
24.160.2.Matrix3D ScalePrependMatrix3D ScalePrepend
24.160.3.Matrix3D TranslationMatrix3D Translation
24.160.4.Matrix3D TranslatePrependMatrix3D TranslatePrepend
24.160.5.Matrix3D RotateMatrix3D Rotate
24.160.6.Matrix3D RotateAtMatrix3D RotateAt
24.160.7.Matrix3D RotateAtPrependMatrix3D RotateAtPrepend
24.160.8.Object Transforms in WPFObject Transforms in WPF