zoukankan      html  css  js  c++  java
  • Windows Store App 旋转中心

    旋转中心的位置可以通过设置CenterOfRotationXCenterOfRotationYCenterOfRotationZ属性来指定。CenterOfRotationXCenterOfRotationY属性的默认值都是0.5,表示旋转轴正好位于旋转对象的中心。当这两个属性值为01时,表示旋转中心处在旋转对象的一组对边上,即将旋转中心移到旋转对象的外边沿,旋转对象将会绕其外边沿旋转。当这两个属性值的范围在01之间时,表示旋转中心处于旋转对象的特定位置,若超出这个范围,则根据超出值大小相应的将旋转中心移出旋转对象。CenterOfRotationZ属性的默认值是0,表示旋转中心在旋转对象的中心,可以对其赋正值或负值,使旋转中心移到旋转对象的正面或背面。

    通过设置CenterOfRotationX属性值可以将旋转中心沿X轴并平行于Y轴移动,同理通过设置CenterOfRotationY属性值可以将旋转中心沿Y轴并平行于X轴移动。下面看一下不同的CenterOfRotationY属性值对3D效果的影响,如图10-10所示。

     CenterOfRotationY = "0.5" (默认值)                        CenterOfRotationY = "0.1"

    10-10 CenterOfRotationY属性效果

    接下来介绍如何改变CenterOfRotationX的属性值移动旋转中心,从而使界面元素绕着指定的旋转中心进行旋转。

    启动Visual Studio 2012,新建一个Windows应用商店的空白应用程序项目,将其命名为3DCenterOfRotationApp,首先在项目的Assets文件夹下添加一个名为“Windows 8.png”的图片,双击打开此页面的3DCenterOfRotationApp.xaml文件,使用如下代码替换原有的Grid元素。

    <Grid Background="Gray">

        <StackPanel  Width="240" Height="240" Background="White" >

            <Image  Width="240" Height="240" Source="/Assets/Windows 8.png">

                <Image.Projection>

                    <PlaneProjection CenterOfRotationX="0.9" RotationY="45"/>

    </Image.Projection>

            </Image>

        </StackPanel>

    </Grid>

    上面的代码与之前介绍的示例代码类似,不同的是本示例把PlaneProjection元素的CenterOfRotationX属性值设置为0.9,表示将旋转中心沿X轴并平行于Y轴向右移动到图片的右边缘,接着将RotationY属性值设置为45度,这样图片将绕Y轴顺时针旋转45度。

    按下F5运行程序,会产生如图10-11所示的3D效果。

     

    10-11 绕指定旋转中心旋转的3D效果图

    由于旋转中心的设置很类似这里仅以CenterOfRotationX属性为例进行了讲解,有兴趣的读者可以在上面示例的基础上修改PlaneProjection的属性值,感受不同的3D效果。

  • 相关阅读:
    C#与数据库访问技术总结(十一)之数据阅读器(DataReader)1
    C#与数据库访问技术总结(十)之添加&删除
    C#与数据库访问技术总结(九)之实例
    C#与数据库访问技术总结(八)之ExecuteNonQuery方法
    C#与数据库访问技术总结(六)之Command对象创建SQl语句代码示例
    C#与数据库访问技术总结(七)综合示例
    C#与数据库访问技术总结(五)之Command对象的常用方法
    OS——进程简答题(1)
    LAMP/LNMP 一键安装脚本
    运维如何延续自己的职业生涯--萧田国2017年GOPS深圳站演讲内容
  • 原文地址:https://www.cnblogs.com/finehappy/p/4218606.html
Copyright © 2011-2022 走看看