博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
《Programming WPF》翻译 第7章 6.视频和3-D
阅读量:7126 次
发布时间:2019-06-28

本文共 1412 字,大约阅读时间需要 4 分钟。

原文:

虽然详细地讨论视频和3-D超越了这本书的范围,但是获得这些特征的支持是值得的。

视频由MediaElement类型支持。这个元素可以被添加到UI树的任何地方。简单的设置它的Source属性以关联到它要播放的视频流,如示例7-49所示。

示例7-49

<MediaElement Source="C:\WINDOWS\system32\oobe\images\intro.wmv" Stretch="Fill" />

3-D
内容通过Viewport3D
支持。直到WPF
的外观系统被关联,Viewport3D
只是一个正规的控件,同时它可以被设定大小和定位,像其它控件那样。然而,你提供了这样的控件,带有3-D
模型、发光、照相机位置信息。它会生成这个模型。这个控件担当了一个3-D
屏幕上的窗体,正如示例7-50
所示。

示例7-50

<
Viewport3D 
ClipToBounds
="true"
>
    
<
Viewport3D.Camera
>
        
<
PerspectiveCamera 
NearPlaneDistance
="1"
 FarPlaneDistance
="100"
                           LookAtPoint
="0,0,0"
 Position
="30, -2, 20"
 Up
="0, 0, 1"
                           FieldOfView
="45"
 
/>
    
</
Viewport3D.Camera
>
    
<
Viewport3D.Models
>
        
<
Model3DGroup
>
            
<
DirectionalLight 
Color
="#FFFFFFFF"
 Direction
="10,25,-1"
 
/>
            
<
AmbientLight 
Color
="#66666666"
 
/>
            
<
GeometryModel3D
>
                
<
GeometryModel3D.Geometry
>
                    
<
MeshGeometry3D
                        
TriangleIndices
="0 1 2  1 2 3  2 3 0  0 1 3"
                        Normals
="-1,-1,0 1,-1,0 1,0,0 0,0,1"
                        Positions
="-2,-2,-2  2,-2,-2  0,2,-2  0,0,1"
/>
                
</
GeometryModel3D.Geometry
>
                
<
GeometryModel3D.Material
>
                    
<
MaterialGroup
>
                        
<
DiffuseMaterial 
Brush
="LightGreen"
 
/>
                        
<
SpecularMaterial 
Brush
="White"
 
/>
                    
</
MaterialGroup
>
                
</
GeometryModel3D.Material
>
            
</
GeometryModel3D 
>
        
</
Model3DGroup
>
    
</
Viewport3D.Models
>
</
Viewport3D
>

这就建立了一个非常简单的

3-D
模型,包含了一个单独的基于正方形的锥形。图7-58
显示了结果。这个模型还包含了一些光源来保证模型是可见的。这个Viewport
还有一个详细指出的照相机位置。

7-58

实际上,你可以正常的使用任意类型的3-D设计工具模型,因此你不能典型地希望和模型标记一起工作,如示例7-50所示。Viewport3D仅提供了一个便利的方法,将结果集成到你的可视化树中。

转载地址:http://yxhel.baihongyu.com/

你可能感兴趣的文章
微软Azure SQL数据仓储供优惠价格购买预留容量
查看>>
Java8ConcurrentHashMap
查看>>
数据分析Power BI数据可视化教程(三)——如何创建矩阵和表以及散点图
查看>>
NoSQL最新现状和趋势:云NoSQL数据库将成重要增长引擎
查看>>
Vue组件传值
查看>>
react-native搭建用例(非CRNA)
查看>>
HTTP协议
查看>>
github简单使用
查看>>
Python提取网站数据笔记
查看>>
隐私政策
查看>>
一些个人认为值得推荐的IT编程技术社区、博客或文章收集与分享
查看>>
排序算法性能比较
查看>>
Java设计模式-策略模式
查看>>
java B2B2C 源码 多级分销springmvc mybatis多租户电子商城系统-注册中心Eureka
查看>>
学习笔记(4.6)
查看>>
java B2B2C Springcloud多租户电子商城系统-spring-cloud-eureka
查看>>
掌握设计规范,UI设计师不得不知的三件事!
查看>>
The SQL vs NoSQL Difference: MySQL vs MongoDB
查看>>
武汉区块链软件技术公司:区块链+工业4.0对制造业的影响
查看>>
一文说透WordPress的自定义文章类型
查看>>