[WPF]PlaneProjection三维效果

11 篇文章 0 订阅


PlaneProjection 类

Silverlight

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

System.Object
   System.Windows.DependencyObject
     System.Windows.Media.Projection
       System.Windows.Media.PlaneProjection

命名空间:   System.Windows.Media
程序集:   System.Windows(在 System.Windows.dll 中)

C#
VB
public sealed class PlaneProjection : Projection
XAML 对象元素用法
<PlaneProjection .../>

PlaneProjection 类型公开以下成员。

显示:
 名称说明
公共方法受 Silverlight for Windows Phone 支持PlaneProjection初始化 PlaneProjection 类的新实例。
页首

显示:
 名称说明
公共属性受 Silverlight for Windows Phone 支持CenterOfRotationX获取或设置所旋转对象的旋转中心 X 坐标。
公共属性受 Silverlight for Windows Phone 支持CenterOfRotationY获取或设置所旋转对象的旋转中心 Y 坐标。
公共属性受 Silverlight for Windows Phone 支持CenterOfRotationZ获取或设置所旋转对象的旋转中心 Z 坐标。
公共属性受 Silverlight for Windows Phone 支持Dispatcher获取与此对象关联的 Dispatcher (继承自 DependencyObject。)
公共属性受 Silverlight for Windows Phone 支持GlobalOffsetX获取或设置沿屏幕的 X 轴平移对象的距离。
公共属性受 Silverlight for Windows Phone 支持GlobalOffsetY获取或设置沿屏幕的 Y 轴平移对象的距离。
公共属性受 Silverlight for Windows Phone 支持GlobalOffsetZ获取或设置沿屏幕的 Z 轴平移对象的距离。
公共属性受 Silverlight for Windows Phone 支持LocalOffsetX获取或设置沿对象平面的 X 轴平移对象的距离。
公共属性受 Silverlight for Windows Phone 支持LocalOffsetY获取或设置沿对象平面的 Y 轴平移对象的距离。
公共属性受 Silverlight for Windows Phone 支持LocalOffsetZ获取或设置沿对象平面的 Z 轴平移对象的距离。
公共属性受 Silverlight for Windows Phone 支持ProjectionMatrix获取 PlaneProjection 的投影矩阵。
公共属性受 Silverlight for Windows Phone 支持RotationX获取或设置围绕旋转的 X 轴旋转对象的角度。
公共属性受 Silverlight for Windows Phone 支持RotationY获取或设置围绕旋转的 Y 轴旋转对象的角度。
公共属性受 Silverlight for Windows Phone 支持RotationZ获取或设置围绕旋转的 Z 轴旋转对象的角度。
页首

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

显示:
 名称说明
公共字段静态成员受 Silverlight for Windows Phone 支持CenterOfRotationXProperty标识 CenterOfRotationX 依赖项属性。
公共字段静态成员受 Silverlight for Windows Phone 支持CenterOfRotationYProperty标识 CenterOfRotationY 依赖项属性。
公共字段静态成员受 Silverlight for Windows Phone 支持CenterOfRotationZProperty标识 CenterOfRotationZ 依赖项属性。
公共字段静态成员受 Silverlight for Windows Phone 支持GlobalOffsetXProperty标识 GlobalOffsetX 依赖项属性。
公共字段静态成员受 Silverlight for Windows Phone 支持GlobalOffsetYProperty标识 GlobalOffsetY 依赖项属性。
公共字段静态成员受 Silverlight for Windows Phone 支持GlobalOffsetZProperty标识 GlobalOffsetZ 依赖项属性。
公共字段静态成员受 Silverlight for Windows Phone 支持LocalOffsetXProperty标识 LocalOffsetX 依赖项属性。
公共字段静态成员受 Silverlight for Windows Phone 支持LocalOffsetYProperty标识 LocalOffsetY 依赖项属性。
公共字段静态成员受 Silverlight for Windows Phone 支持LocalOffsetZProperty标识 LocalOffsetZ 依赖项属性。
公共字段静态成员受 Silverlight for Windows Phone 支持ProjectionMatrixProperty标识 ProjectionMatrix 依赖项属性。
公共字段静态成员受 Silverlight for Windows Phone 支持RotationXProperty标识 RotationX 依赖项属性。
公共字段静态成员受 Silverlight for Windows Phone 支持RotationYProperty标识 RotationY 依赖项属性。
公共字段静态成员受 Silverlight for Windows Phone 支持RotationZProperty标识 RotationZ 依赖项属性。
页首

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

具有透视转换的图像

应用了透视转换效果的图像。

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

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

堆叠对象以创建三维效果

以三维效果显示堆叠对象。

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

运行此示例

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

运行此示例

注意说明:

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

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

运行此示例

XAML
<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>


Silverlight
受以下版本支持:5、4、3
Silverlight for Windows Phone
受以下版本支持:Windows Phone OS 7.1、Windows Phone OS 7.0

有关 Silverlight 支持的操作系统和浏览器的列表,请参见 支持的操作系统和浏览器

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


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值