Поделиться через


Практическое руководство. Отклонение элемента

Обновлен: Ноябрь 2007

В этом примере показано использование SkewTransform для наклона элемента. Наклон, также называемый сдвигом, является преобразованием, которое растягивает пространство координат неравномерно. Одним из примеров использования SkewTransform является имитация глубины трехмерный в объектах двухмерный.

Свойства CenterX и CenterY используются для указания точки центра SkewTransform.

Свойства AngleX и AngleY используются для указания угла наклона по осям x и y и для наклона текущей системы координат вместе с этими осями.

Чтобы спрогнозировать результат наклона, рассмотрите значения наклонов AngleX по оси x относительно исходной системы координат. Таким образом, при задании для AngleX значения 30 ось y поворачивается на 30 градусов через начало координат, и значения наклоняются по оси x на 30 градусов от этого начала координат. Аналогично, при задании для AngleY значения 30 выполняется наклон фигуры по оси y на 30 градусов от начала координат. Обратите внимание, что это не тоже самое, что перенос (перемещение) системы координат на 30 градусов по оси x и y.

В следующем примере применяется горизонтальный наклон в 45 градусов Rectangle от точки центра (0,0).

Пример

<Rectangle 
  Height="50" Width="50" Fill="#CCCCCCFF" 
  Stroke="Blue" StrokeThickness="2"
  Canvas.Left="100" Canvas.Top="100">
  <Rectangle.RenderTransform>

     <!-- Applies a horizontal skew of 45 degrees 
          from a center point of (0,0). -->             
    <SkewTransform CenterX="0" CenterY="0" AngleX="45" AngleY="0" />
  </Rectangle.RenderTransform>
</Rectangle>

В следующем примере применяется горизонтальный наклон в 45 градусов Rectangle от точки с координатами (25,25).

<Rectangle Height="50" Width="50" Fill="#CCCCCCFF"
  Canvas.Left="100" Canvas.Top="100" 
  Stroke="Blue" StrokeThickness="2">
  <Rectangle.RenderTransform>

     <!-- Applies a horizontal skew of 45 degrees 
          from a center point of (25,25). -->  
    <SkewTransform CenterX="25" CenterY="25" AngleX="45" AngleY="0" />
  </Rectangle.RenderTransform>
</Rectangle>

В следующем примере применяется вертикальный наклон в 45 градусов Rectangle от точки центра с координатами (25,25).

<Rectangle Height="50" Width="50" Fill="#CCCCCCFF" 
  Stroke="Blue" StrokeThickness="2"
  Canvas.Left="100" Canvas.Top="100">
  <Rectangle.RenderTransform>

     <!-- Applies a vertical skew of 45 degrees 
          from a center point of (25,25). -->             
    <SkewTransform CenterX="25" CenterY="25" AngleX="0" AngleY="45" />
  </Rectangle.RenderTransform>
</Rectangle> 

На следующем рисунке показаны разные наклоны, использованные в этом примере.

Иллюстрированные три примера SkewTransform
Примеры SkewTransform

Полный пример содержится в разделе Пример двумерных преобразований.

См. также

Основные понятия

Общие сведения о классах Transform

Ссылки

Transform

SkewTransform

Другие ресурсы

Разделы руководства, посвященные преобразованиям