Foundation: 三维网格几何体

在组成 Microsoft Windows Presentation Foundation 的类中,System.Windows.Media.Media3D 命 名空间中的那些类很突出。这些类的用途是使主流 Windows 应用程序能够显示三维图形。与 Windows Presentation Foundation 2D 图形一样,通常可以用可扩展应用程序标记语言 (XAML) 非常方 便地访问 3D 图形,但二者的相似性非常少。3D 图形编程涉及非常不同的概念和约定。其中,3D 和 2D 相同的部分是画笔的区域:您始终要用 2D 画笔来覆盖 3D 可视区的表面。

图 1 显示了 Hello3D,这是一个 3D 版的传统“Hello, World”程序。如果您运行的是 Windows Vista 或者是安装了 Microsoft .NET Framework 3.0 运行库的 Windows XP,则 只需使用 Internet Explorer 即可启动产生该图形的 XAML 代码,从而可以看到图像(参见图 2) 。

图 1 Hello3D 图像

3D 视区

在 3D 图形编程中,没有线条、Bezier 样条曲线、矩形或椭圆。每个 3D 物体都是三 维坐标空间中的三角形的集合。三角形是 3D 编程的基本单位,这是因为每个单独的三角形总是能定义一 个平面,而三角形集合可以模仿立体物体,甚至可以模拟曲面。随着您深入了解 3D 编程,您将会用三角 形看待生活中的所有事物。

正如 Hello3D.xaml 所示,3D 视图由 Viewport3D 元素组成。3D 场 景需要一个或多个 GeometryModel3D 类型的物体、一个或多个光源、以及一个用于控制 3D 物体如何投 射到 2D 表面从而控制观看者如何看到图像的摄像机。

GeometryModel3D 元素有三个重要属性: Geometry、Material 和 BackMaterial。Geometry 属性被设置为 MeshGeometry3D 元素,用于根据坐标 点和三角形描述可视物体。Material 和 BackMaterial 属性说明物体的前面和背面如何着色。在 Hello3D.xaml 中,这两个属性被设置为 DiffuseMaterial 类型的对象。Material 属性是 VisualBrush ,由包含文字“Hello, World”的 TextBlock 组成。BackMaterial 属性只是红色画笔。(如 果要看到物体的背面,请将摄像机 Position 属性更改为“0 0 -5”,并将 LookDirection 更改为“0 0 1”。)

时间: 2024-08-30 19:19:21

Foundation: 三维网格几何体的相关文章

WPF : 自定义Windows Presentation Foundation的控件

虽然 Windows Presentation Foundation 中的控件模型非常多,但仍不可能提供需要的每一种控件.这时候,控件编写就派上用场了.在本文中,我将向您讲述如何使用 Windows Presentation Foundation 自定义现有控件,以及如何为您的项目创建全新的控件(或元素). 在开发一个自定义控件之前,应该先问问自己是否真的需要它.在 Windows Presentation Foundation 中,组合.样式和模板化功能使您可以自定义现有控件,这是以前的技术所

初学Foundation:用JS工具实现的导航栏

文章简介:初学Foundation,我们先来看几种用javascript工具实现效果的导航栏.我还会介绍另一种有益于你更好地成为Foundation开发者.很有用的工具. 一个前端框架是否优秀,其中看该框架如何处理导航栏.初学Foundation,我们先来看几种用javascript工具实现效果的导航栏.我还会介绍另一种有益于你更好地成为Foundation开发者.很有用的工具. Section 插件 Foundation提供其中一个最好的javascript插件就是Section:类似于tab

Foundation Actionscript 3.0 Animation

相关信息: 书名:Foundation Actionscript 3.0 Animation 作者:Keith Peters 翻译/编辑/润稿:FL基理大师 原创译文来源:http://blog.sina.com.cn/yyy98 英文版及源文件下载:http://www.fs2you.com/zh-cn/files/2e4448ca-ecb7-11dc-bab3-0014221f3995/ 目录: 第一章 基础动画概念 第二章 ActionScript 3.0 动画基础Ⅰ 第二章 Action

OpenGL编程轻松入门之二次几何体

这一章我们讲一下二次几何物体的绘制.二次几何物体的绘制有几种不同的方式,在本例中可以看出不同的绘制方式的不同效果,如图十五所示. 例13:本例使用GLU库函数绘制了四个几何物体,分别为圆柱体.球体.圆盘和部分圆盘. #include <windows.h> #include <GL/glut.h> #include <math.h> /*声明四个二次曲面物体*/ GLUquadricObj *quadObj1; GLUquadricObj *quadObj2; GLUq

解决因权限导致的SharePoint Foundation 2010无法配置备份的问题

gOxiA 接触 Sharepoint 的时间并不长,再加上不会开发,所以完全属于菜 鸟.由于公司上了套 SharePoint Foundation 2010,并基于它设计一套公司的 管理系统,所以赶鸭子上架开始捉摸 SharePoint Foundation 2010.为了避免 在设计过程中导致业务系统故障,所以要及时对 SharePoint 进行备份. 要配置 SharePoint 的备份需要通过 SharePoint 管理中心进行操作, 导航至"备份和还原"页面,单击"

为Visual Studio 2005添加新的的Team Foundation Server(TFS)

点击 Tools->Connect to Team Foundation Server 点击出现的 "Connect to Team Foundation Server"窗口中的 "Server" 在随后出现的窗口中点击 "Add" 随后就会出现增加 TFS Server的窗口,填入适当参数即可.

Windows Workflow Foundation中的跟踪服务

目录 跟踪体系结构 跟踪配置文件 SQL 跟踪服务 查询跟踪数据 自定义跟踪服务 Windows Workflow Foundation 中最强大的功能之一是跟踪.它使您能够监控事件.活动属性以及您的工作流中的自定义数据.在本专栏中,我将检查跟踪基础结构.向您介绍如何使用内置的基于 SQL Server 的跟踪服务以及如何为各种应用创建自定义跟踪服务.顺着这一思路,我将演示如何使用所跟踪的信息以及如何通过使用跟踪来满足一些常见的需求. 许多应用程序需要了解程序逻辑和处理步骤的执行.这有助于企业遵

Windows Workflow Foundation

在 2006 年 1 月号中,Don Box 和 Dharma Shukla 介绍了 Windows Workflow Foundation,并讨论了框架的整体体系结构及其构成组件(请参阅 WinFX Workflow:Simplify Development With The Declarative Model Of Windows Workflow Foundation [英文]).这篇文章促使我想进一步讨论这个主题,并介绍如何使用 Windows Workflow Foundation 来

Team System: Team Foundation Server事件服务

Microsoft 将 Team Foundation Server (TFS) 构建为一个主要和次要服务的集合,包括版本控制. 工作项目跟踪和 EventService 服务.我将 EventService 归类为次要服务,或者更确切地说是支持服务 .EventService 提供了一组事件,触发后,这些事件可执行一些操作(如发送电子邮件或调用基于 SOAP 的 Web 服务). 在本专栏中,我将介绍 Visual Studio 用户界面提供了哪些现成的事件.EventService 提供了