C#開發(fā)Windows UWP系列之3D變換
在Win8.1中,引入了一個PlaneProjection可以實現(xiàn)3D變換,但它的變換方式比較簡單,只能實現(xiàn)基本的旋轉操作。在Windows 10 UWP中,引入了一個更加強大的3D變換Transform3D,系統(tǒng)默認內(nèi)置了兩中變換方式:PerspectiveTransform3D
和CompositeTransform3D
。一個簡單的示例如下:
<StackPanel HorizontalAlignment="Center"> <Image Source="Assets\img.jpg" Width="400" Name="image"> <Image.Transform3D> <CompositeTransform3D CenterX="200" CenterY="100" RotationX="{x:Bind sliderX.Value,Mode=OneWay}" RotationY="{x:Bind sliderY.Value,Mode=OneWay}" RotationZ="{x:Bind sliderZ.Value,Mode=OneWay}"> </CompositeTransform3D> </Image.Transform3D> </Image> <Slider x:Name="sliderX" Maximum="360" Width="400" Margin="0,10,0,10"></Slider> <Slider x:Name="sliderY" Maximum="360" Width="400" Margin="0,10,0,10"></Slider> <Slider x:Name="sliderZ" Maximum="360" Width="400" Margin="0,10,0,10"></Slider> </StackPanel>
運行效果如下:
上面的例子比較簡單,一旦和動畫結合起來后,是可以實現(xiàn)非常酷的3D動畫效果的,Win10的磁貼翻轉效果貌似就是用它做的。最后提一下的是,貌似CompositeTransform3D的旋轉中心點只能傳入絕對位置,而無法傳入類似(0.5, 0.5)之類的相對位置,用起來時需要先計算大小,略有不便。
到此這篇關于UWP程序實現(xiàn)3D變換的文章就介紹到這了。希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
使用C# CefSharp Python采集某網(wǎng)站簡歷并且自動發(fā)送邀請短信的方法
這篇文章主要給大家介紹了關于如何使用C# CefSharp Python采集某網(wǎng)站簡歷并且自動發(fā)送邀請短信的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面來一起看看吧2019-03-03c# winform 解決PictureBox 無法打印全部圖片的問題
這篇文章主要介紹了c# winform 解決PictureBox 無法打印全部圖片的問題,幫助大家更好進行c# winform開發(fā),感興趣的朋友可以了解下2020-12-12C#使用Pipelines實現(xiàn)處理Socket數(shù)據(jù)包
這篇文章主要為大家詳細介紹了C#如何使用Pipelines實現(xiàn)處理Socket數(shù)據(jù)包,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習一下2023-12-12C# 中 Array和 ArrayList詳解及區(qū)別
這篇文章主要介紹了C# 中 Array和 ArrayList詳解及區(qū)別的相關資料,需要的朋友可以參考下2017-01-01