[WPF VTK]三维图形开发基础(一)

本文介绍了使用WPF进行三维图形开发的基础知识,包括Geometry、Camera、Lighting和Materials等要素。通过示例详细讲解了Camera的Position、LookDirection和UpDirection属性,以及FieldOfView对观察范围的影响。此外,还提到了Lighting和Materials对物体外观的重要性,并提供了代码示例以调整参数观察效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言:

本人在这方面也是了解皮毛,因此里面一些内容可能存在错误;

自己的代码风格不佳,效率不好,如有看不下去的还请见谅。

 

0.他山之石

学习过程中借鉴下载了很多资源先公布一些(附下载地址):

三维相关一章

http://pan.baidu.com/share/link?shareid=233384&uk=3859191502

共享的所有资源文件夹

(里面有很多电子书籍,说实在的算是盗版,作为IT民工本人盗版狂人版权意识太差,不做推荐,看不下去的请提示我删除,谢谢,对原作者们说声sorry)

(为什么有这么两个链接呢,因为算是初次在这里使用共享,因此将文件上传到了百度yun,一开始也只想到了一个个文件的共享后来发觉可以共享文件夹,然后!没得说啊)

(里面有一个“WPF 3D实例安装程序”强烈推荐安装,安装后里面有许多WPF3D实例可以学习参考,很实用效果可以安装后用浏览器打开!)

http://pan.baidu.com/share/link?shareid=233388&uk=3859191502

1.天地之初

由于程序中需要用到针对序列图像轮廓点进行三维重建,因此学习了一些三维开发的基本概念。

在说了解的图像开发库中,Direct3D、OpenGL是比较成熟、功能强大的,不过相对来说其也拥有一定开发复杂度,

鉴于实验室师兄有用WPF进行过一个三维展示的实验,而本人当时感觉自己说需要的三维功能也是很基础的三维显示功能,

同时WPF三维制作具有这一能力,是基于D3D的封装(D3D本就是微软技术),在此基础上进行了一些简化,因此相对来说

学习、使用的速度较快,于是选择了WPF(当然后来改用VTK,此乃后话)。

WPF中3D绘图可以使用XAML也可以在CS页面中定义或者使用混合设置的方法。

对于XAML方法,网上的例子大多是这种模式,也就是单一的一个xaml页面生成了说要显示的模型、动画等。但这需要事先就把所有该设置的值都求取出来。

如果用CS方式就跟定义变量一样,先定义个变量,再用算法生成值再赋值给她之类。

WPF3D基本要素有(其他三维开发库要素应该也是一致的):

Geometry-Geometry定义了在屏幕中所要显示的物体及其位置。

Camera-就跟人类视野一样,camera决定了你观察物体的位置以及角度。

Lighting-关上灯神马都一样,光明的影响不用多解释。但Light的类型、位置、颜色等在不同的场景下会有迥异的效果。

Materials-物体外观通常由灯光以及物体本身材质Materials说决定,比如说物体本身是白色的,用红色光照射or物体本身是红色的,用白色光照射之类。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值