导出 (0) 打印
全部展开
信息
您所需的主题如下所示。但此主题未包含在此库中。

PlaneProjection 类

2013/12/13

表示对象的透视转换(类似三维效果)。

Namespace:  System.Windows.Media
程序集:  System.Windows(位于 System.Windows.dll 中)
XMLNS for XAML: 未映射到 xmlns。

声明
Public NotInheritable Class PlaneProjection _
	Inherits Projection
<PlaneProjection .../>

PlaneProjection 类型公开以下成员。

  名称说明
公共方法PlaneProjection初始化 PlaneProjection 类的新实例。
返回顶部

  名称说明
公共属性CenterOfRotationX获取或设置所旋转对象的旋转中心 X 坐标。
公共属性CenterOfRotationY获取或设置所旋转对象的旋转中心 Y 坐标。
公共属性CenterOfRotationZ获取或设置所旋转对象的旋转中心 Z 坐标。
公共属性Dispatcher获取与此对象关联的 Dispatcher (从 DependencyObject 继承。)
公共属性GlobalOffsetX获取或设置沿屏幕的 X 轴平移对象的距离。
公共属性GlobalOffsetY获取或设置沿屏幕的 Y 轴平移对象的距离。
公共属性GlobalOffsetZ获取或设置沿屏幕的 Z 轴平移对象的距离。
公共属性LocalOffsetX获取或设置沿对象平面的 X 轴平移对象的距离。
公共属性LocalOffsetY获取或设置沿对象平面的 Y 轴平移对象的距离。
公共属性LocalOffsetZ获取或设置沿对象平面的 Z 轴平移对象的距离。
公共属性ProjectionMatrix获取 PlaneProjection 的投影矩阵。
公共属性RotationX获取或设置围绕旋转的 X 轴旋转对象的角度。
公共属性RotationY获取或设置围绕旋转的 Y 轴旋转对象的角度。
公共属性RotationZ获取或设置围绕旋转的 Z 轴旋转对象的角度。
返回顶部

  名称说明
公共方法CheckAccess确定调用线程是否可以访问此对象。 (从 DependencyObject 继承。)
公共方法ClearValue清除依赖项属性的本地值。 (从 DependencyObject 继承。)
公共方法Equals(Object)确定指定的 Object 是否等于当前的 Object (从 Object 继承。)
受保护的方法Finalize允许 Object 在垃圾回收器回收该对象之前尝试释放资源并执行其他清理操作。 (从 Object 继承。)
公共方法GetAnimationBaseValue返回为 Windows Phone 依赖项属性设置的任意基值,在动画不活动时将应用它们。 (从 DependencyObject 继承。)
公共方法GetHashCode用作特定类型的哈希函数。 (从 Object 继承。)
公共方法GetType获取当前实例的 Type (从 Object 继承。)
公共方法GetValueDependencyObject 返回依赖项属性的当前有效值。 (从 DependencyObject 继承。)
受保护的方法MemberwiseClone创建当前 Object 的浅表副本。 (从 Object 继承。)
公共方法ReadLocalValue返回依赖项属性的本地值(如果设置了本地值)。 (从 DependencyObject 继承。)
公共方法SetValueDependencyObject 设置依赖项属性的本地值。 (从 DependencyObject 继承。)
公共方法ToString返回一个字符串,它表示当前的对象。 (从 Object 继承。)
返回顶部

  名称说明
公共字段静态成员CenterOfRotationXProperty标识 CenterOfRotationX 依赖项属性。
公共字段静态成员CenterOfRotationYProperty标识 CenterOfRotationY 依赖项属性。
公共字段静态成员CenterOfRotationZProperty标识 CenterOfRotationZ 依赖项属性。
公共字段静态成员GlobalOffsetXProperty标识 GlobalOffsetX 依赖项属性。
公共字段静态成员GlobalOffsetYProperty标识 GlobalOffsetY 依赖项属性。
公共字段静态成员GlobalOffsetZProperty标识 GlobalOffsetZ 依赖项属性。
公共字段静态成员LocalOffsetXProperty标识 LocalOffsetX 依赖项属性。
公共字段静态成员LocalOffsetYProperty标识 LocalOffsetY 依赖项属性。
公共字段静态成员LocalOffsetZProperty标识 LocalOffsetZ 依赖项属性。
公共字段静态成员ProjectionMatrixProperty标识 ProjectionMatrix 依赖项属性。
公共字段静态成员RotationXProperty标识 RotationX 依赖项属性。
公共字段静态成员RotationYProperty标识 RotationY 依赖项属性。
公共字段静态成员RotationZProperty标识 RotationZ 依赖项属性。
返回顶部

此类用于创建对象的透视转换(三维效果)。例如,您可以创建对象朝向您或背离您旋转的幻觉。

具有透视转换的图像

Image with perspective transform applied.

尽管上图中显示了应用于一个简单图像的透视转换,但您可以将透视转换应用于 UIElement,包括控件。例如,您可以将该效果应用于 Grid,而后者又包含 TextBoxButton。尽管旋转这些控件,但用户可以在 TextBox 中键入内容并点击 Button(假定这些控件可见)。

使用透视转换的另一个常见情形是相对于彼此对对象进行排列,以便创建三维效果,如下图中所示。

堆叠对象以创建三维效果

Shows stacking objects in 3d effect.

除了创建静态的三维效果外,还可以对透视转换属性进行动画处理,以便创建移动的三维效果。

PlaneProjection 具有以下 12 个可用于控制对象的旋转和位置的属性:RotationXRotationYRotationZCenterOfRotationXCenterOfRotationYCenterOfRotationZGlobalOffsetXGlobalOffsetYGlobalOffsetZLocalOffsetXLocalOffsetYLocalOffsetZ。通过以下示例可体验这些属性。

说明注意:

透视转换不等同于三维引擎,但二者均可用于使二维内容的显示效果如同在三维平面中绘制的一样。

若要将某一属性转换应用于 UIElement,请将 Projection 对象的 UIElement 属性设置为 PlaneProjectionPlaneProjection 定义转换在空间中呈现的方式。下面的示例显示了一个简单的情况。


<StackPanel Margin="35" Background="Gray">
    <StackPanel.Projection>
        <PlaneProjection RotationX="-35" RotationY="-35" RotationZ="15"  />
    </StackPanel.Projection>
    <TextBlock Margin="10">Type Something Below</TextBlock>
    <TextBox Margin="10"></TextBox>
    <Button Margin="10" Content="Click" Width="100" />
</StackPanel>


Windows Phone OS

受以下版本支持: 8.0, 7.1, 7.0

Windows Phone

此类型的所有公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。

显示:
© 2015 Microsoft