silverlight3中的"伪"3D
silverlight3中的3d效果,实际上是通过2d+算法模拟出来的"伪3D"(个人估计可能是考虑跨平台和显卡硬件支持通用性所以最终采用了这种设计)
上面演示了基本的3d效果,本质是通过将图片绕着x,y,z三个轴旋转产生
关键代码:
1 <Image Source="/3D;component/img/001.jpg" Grid.Row="0" Margin="30">
2 <Image.Projection>
3 <PlaneProjection RotationX="0" RotationY="0" RotationZ="0" x:Name="pp"></PlaneProjection>
4 </Image.Projection>
5 </Image>
2 <Image.Projection>
3 <PlaneProjection RotationX="0" RotationY="0" RotationZ="0" x:Name="pp"></PlaneProjection>
4 </Image.Projection>
5 </Image>
1 private void xSliderX_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
2 {
3 double x = (sender as Slider).Value;
4 this.pp.RotationX = x;
5 this.lblX.Content = x.ToString("F2");
6 }
2 {
3 double x = (sender as Slider).Value;
4 this.pp.RotationX = x;
5 this.lblX.Content = x.ToString("F2");
6 }
至于3d应用,只是利用y轴旋转+clip属性,排出一个常用相册的UI界面(这种界面以后估计会在触摸屏上流行起来)
projection除了这里演示的3个参数外,另外还有9个参数可以调整,详情演示见
作者:菩提树下的杨过
出处:http://yjmyzz.cnblogs.com
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
出处:http://yjmyzz.cnblogs.com
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。