Matrix3D Rotate : Matrix3D « Windows Presentation Foundation « C# / CSharp Tutorial






<Window x:Class="WpfApplication1.Matrix3DTransforms"
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  Title="Matrix3D Transformations" Height="450" Width="300">
  <StackPanel>
    <TextBlock Margin="10,10,5,5" Text="Original Matrix:" />
    <TextBlock Name="tbOriginal" Margin="20,0,5,5" />
    <TextBlock Margin="10,0,5,5" Text="Scale:" />
    <TextBlock Name="tbResult" Margin="20,0,5,5" />

  </StackPanel>
</Window>

//File:Window.xaml.cs
using System;
using System.Windows;
using System.Windows.Media;
using System.Windows.Media.Media3D;

namespace WpfApplication1
{
    public partial class Matrix3DTransforms : Window
    {
        public Matrix3DTransforms()
        {
            InitializeComponent();
            Matrix3D M = new Matrix3D(1, 2, 3, 4,
                                      2, 1, 0, 0,
                                      0, 0, 1, 0,
                                      1, 2, 3, 1);


            tbOriginal.Text = "(" + M.ToString() + ")";

            //Translation: 
            M.Rotate(new Quaternion(new Vector3D(1, 2, 3), 45));
            tbResult.Text = "(" + M.ToString() + ")";
        }
    }
}
WPF Matrix3 D Rotate








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