| ![](../Images/tip.png) | 提示:我为代码示例中的每个三角形添加了一个缓慢递增的 z 值。这样做是为了不让两个三角形处于完全相同的位置。如果两个三角形位于完全相同的位置,图形处理器有时会先渲染一个,有时会先渲染另一个三角形。这导致令人不快的闪烁伪像。通过在稍微不同的 z 平面上创建每个三角形,我们消除了这种闪烁。 |
\ No newline at end of file
| ![](img/tip.png) | 提示:我为代码示例中的每个三角形添加了一个缓慢递增的 z 值。这样做是为了不让两个三角形处于完全相同的位置。如果两个三角形位于完全相同的位置,图形处理器有时会先渲染一个,有时会先渲染另一个三角形。这导致令人不快的闪烁伪像。通过在稍微不同的 z 平面上创建每个三角形,我们消除了这种闪烁。 |
当使用三维笛卡尔坐标系时,可以选择每个轴相对于彼此指向哪个方向。任意两个轴定义一个二维平面。例如,X 轴和 Y 轴定义一个平面,而 Z 轴和 X 轴定义另一个平面。如果你想象一台摄像机的方向是 X 轴和 Y 轴定义了一个平行于监视器的平面,Y 轴指向上,X 轴指向右,那么就可以选择 Z 轴指向哪个方向。它可以指向屏幕内外。记忆这两个坐标系常用的助记符是惯用手,即右手坐标和左手坐标。当你以与*图 2.1* 中描述的相同方式握住你的手时,手指指向轴的正方向。
我们使用 z 缓冲器来解决这个问题。z 缓冲区是一个二维数组,通常由浮点值组成。这些值指示从管道的光栅化器阶段中当前光栅化的每个像素到观看者的距离。当图形处理器渲染离观察者一定距离(Z)的对象的像素时,它首先检查当前像素的 Z 是否比它先前渲染的 Z 更近。如果像素已经被渲染,并且对象上次更接近,则不需要渲染新像素;否则像素应该被更新。
二维图像包裹在网格周围,以创建复杂的彩色对象的错觉。二维图像中的像素通常使用所谓的纹理元素或紫外坐标来引用。不使用 X 和 Y,用 U 和 V 分量描述纹理元素坐标。U 分量与 X 相同,因为它代表水平轴,V 分量类似于 Y 轴,代表垂直轴。紫外坐标和标准笛卡尔 XY 坐标的主要区别在于,紫外坐标将图像中的参考位置作为 0.0 到 1.0 之间的归一化值。点(0.0,0.0)引用图像的左上角,点(1.0,1.0)引用图像的右下角。图像中的每个点都有一个介于(0.0,0.0)和(1.0,1.0)之间的紫外坐标。*图 6.1* 是一种可以应用于视频游戏地面的草状纹理。纹理中的几个点被高亮显示,以显示紫外线值的坐标。
*图 7:用 Visual Studio 2015 将 RestSharp 作为 NuGet 包安装*
...
...
@@ -143,7 +143,7 @@
让我们以《纽约时报》(NYT)API 为例来检查代码。在网络解析器构造函数中,通过传递站点的应用编程接口地址的基本网址来创建一个 RestClient 实例。通过查看[图书畅销书 API 文档](http://developer.nytimes.com/docs/books_api/Books_API_Best_Sellers),我们可以看到这个 API 的基本网址是[http://api.nytimes.com/svc/books](http://api.nytimes.com/svc/books)。
| ![](../images/00008.gif) | 注意:只有标量类型变量可以与 case 语句一起使用,并且任何 Case 都必须用常数值进行标记,因此不能使用对象引用或浮点值。如果你认为这是一个很大的限制,请注意使用许多案例陈述是不鼓励的,并且被认为是“反模式”。最好使用面向对象编程和虚拟方法来建模类似的业务逻辑。 |
| ![](img/00008.gif) | 注意:只有标量类型变量可以与 case 语句一起使用,并且任何 Case 都必须用常数值进行标记,因此不能使用对象引用或浮点值。如果你认为这是一个很大的限制,请注意使用许多案例陈述是不鼓励的,并且被认为是“反模式”。最好使用面向对象编程和虚拟方法来建模类似的业务逻辑。 |
@@ -266,7 +266,7 @@ XML 的根节点被称为`Parameters`,用于保存服务需要执行的任何
整个类将被写在添加到项目中的基线代码上。必须考虑的一点是,前面提到的要求要求备份必须存储在 ZIP 文件中。**离子。Zip** 库将用于此目的,可在此下载[。下载后,需要将库文件复制到项目文件夹中,并添加到项目引用节点中。](http://dotnetzip.codeplex.com/releases/view/68268)
***林、树和域:**林、树和域是活动目录网络中的逻辑分区。在部署中,对象被分组到域中。域被定义为共享同一 active directory 数据库的网络对象(计算机、用户、设备)的逻辑组。树是一个连续命名空间中的一个或多个域和域树的集合。建筑的顶部是森林。森林是共享共同配置的树的集合。林代表用户、计算机、组和其他对象可访问的安全边界。
前面的代码非常简单。首先我们创建一个直接指向我们的用户 OU 的目录尝试对象,然后我们实例化一个目录射手对象,指定我们只想要返回用户类型的对象(如果变量 Users 设置为 true)。然后我们调用方法 FindAll(),由于它返回的集合,通过 for 循环,我们可以迭代结果。下面是程序输出的截图;在我们的例子中,我们在屏幕上打印用户显示名称和描述。