在这个课程中,我们已经研究了几个不同的统计量,包括总编译距离,最大值,中位数和平均值。在关于随机性的明确假设下,我们绘制了所有这些统计量的经验分布。有些统计量,比如最大和总变异距离,分布明显偏向一个方向。但是,无论研究对象如何,样本均值的经验分布几乎总是接近钟形。 如果随机样本的性质是真的,不管总体如何,它都能成为一个有力的推理工具,因为我们通常不清楚总体中的数据。大型随机样本的均值分布属于这类性
这一课中我们将介绍一种检测对象边缘的方式,为了方便介绍,我们这里所提到的 3D 对象的轮廓都是当从任意方向上照射到物体上的光线创建出来的。当光源发生移动时,物体的轮廓也会随之变化。这与在 2D 图片中检测图片中物体的边界完全不同(图片中的边缘检测与光源的位置无关)。虽然说这一课的主要目的是介绍边缘检测的,但是对于我来说这一课另一个重要目的是作为 模板阴影体 技术的第一个步骤,模板阴影体技术主要用于
想象一下如果你想渲染一大片军队在马路上行进的场景,那么你需要渲染上千个士兵,但是如果你只有一个士兵的模型,你要怎么做呢?当然你可以每绘制一个士兵就调用以此绘制函数,并且在每次调用的时候都为它的相关一致变量设置不同的参数,例如士兵的位置,或者是士兵的身高,等等。 因此,每次我们调用绘制函数的时候,我们都需要更新当前绘制的这个士兵的 WVP 矩阵,以及这个士兵的其他一些特殊的参数,但是这个方法的开销是
我们之前使用的光照技术还算不错,光线在模型表面得到了很好的插值,为场景营造出真实感。但是这种效果还能够有非常大的提升。事实上,我们以前使用的这种插值方式在某种程度上来说是对效果提升的一个障碍,特别是当纹理代表的是凹凸不平的平面的时候,这使得模型看起来就太平滑了。例如下面这两幅图片: 左边的图片比右边的图片看起来要好多了,它将石头表面的凹凸不平的感觉很好的表现了出来,而右边的图片看起来则感觉太光滑了
光照是 3D 图形学的最重要的研究领域之一。对光照得体的模拟会使渲染的场景增加很多视觉吸引力。之所以使用“模拟”这个词是因为你无法完全准确的计算出光在自然界中的表现。真正的光是由大量的称为“光子”的粒子组成的,并且同时表现出波和粒子的特性(光的“波粒二象性”)。如果你在程序中试图序计算每一个光子的作用,那么你将很快用光电脑的计算力。 因此,这些年来出现了一些光照模型,它们可以近似的模拟自然界中光照
使用简单的纯文本文件只能实现有限的功能。没错,使用它们可以做很多事情,但有时需要额外的功能。你可能想要自动序列化,这时可以选择shelve模块(见第十章)和pickle(与shelve模块关系密切)。但有时,可能需要比这更强大的特性。例如,可能想自动地支持数据并发访问——想让几个用户同时对基于磁盘的数据进行读写而不造成任何文件损坏这类的问题。或者希望同时使用多个数据字段或属性进行复杂的搜索,而不是
运动模糊在现如今的 3D 游戏中是一项非常流行的技术,他主要是为运动的物体添加一个模糊效果,增强了玩家真实感。运动模糊有多种实现方式,有的是基于相机来实现,主要专注于相机的运动;有的是基于对象的,在这一课中会学习其中一种方法来完成这个功能。 运动模糊背后的原理就是我们可以计算出两帧之间每个像素运动的向量(即运动矢量)。通过沿着这个运动矢量在当前颜色缓存中进行采样并对他们取平均值就能得到代表当前物体
在 23 和 24 课中我们学习了阴影纹理,这是一个相对简单的在 3D 世界中实现阴影的方法。阴影纹理在处理点光源产生的阴影的时候有一些缺陷,因为在生成阴影纹理的时候我们需要一个方向向量,但是对于点光源来说它产生的光线的方向是朝向所有方向的,所以要得到这样一个向量比较困难。但是还有其他方法可以解决这个问题,这个方法会比较复杂一点但同时它也可以用于聚光灯光源上,这个方法就是模板阴影体,这个技术是由
本节重点 处理下拉框 switch_to_alert() accept() 下拉框是我们最常见的一种页面元素,对于一般的元素,我们只需要一次就定位,但下拉框里的内容需要进行两次定位,先定位到下拉框,再定位到下拉框内里的选项。 drop_down.html <html><body><select id="ShippingMethod" onchange="updateShipping(opti
http://www.cnblogs.com/fnng/p/3288444.html 本节重点: ActionChains 类 context_click() 右击 double_click() 双击 drag_and_drop() 拖动 测试的产品中有一个操作是右键点击文件列表会弹出一个快捷菜单,可以方便的选择快捷菜单中的选择对文件进行操作(删除、移动、重命名),之前学习元素的点击非常简单: d
随着多媒体技术的迅猛发展和PC性能的大幅度提高,在PC机上运行的应用程序越来越多地采用了多媒体技术.如果你编写的应用程序能够发出美妙的声音,播放有趣的动画,无疑将会给人留下深刻的映象. Windows 95提供了对多媒体编程的良好支持,本章将帮助读者迅速掌握一些实用的多媒体编程技术,主要的内容包括: 调色板 位图 依赖于设备的位图(DDB) 与设备无关的位图(DIB) 动画控件 媒体控制接
今天是大结局,说下“图”的最后一点东西,“最小生成树“和”最短路径“。 一: 最小生成树 1. 概念 首先看如下图,不知道大家能总结点什么。 对于一个连通图G,如果其全部顶点和一部分边构成一个子图G1,当G1满足: ① 刚好将图中所有顶点连通。②顶点不存在回路。则称G1就是G的“生成树”。 其实一句话总结就是:生成树是将原图的全部顶点以最小的边连通的子图,这不,如下的连通图可以得到下面的两个生成树
导语 WebKit是一个开源的浏览器引擎。Qt中提供了基于WebKit的QtWebKit模块,它包含了一组相关的类。QtWebKit提供了一个Web浏览器引擎,使用它便可以很容易的将万维网(WorldWide Web)中的内容嵌入到Qt应用程序中。与此同时,本地也可以对Web内容进行控制。QtWebKit可以呈现HTML(HyperTextMarkup Language,超文本标记语言)文档、XH
接口的改变,是一个需要程序员们必须(虽然很不情愿)接受和处理的普遍问题。程序提供者们修改他们的代码;系统库被修正;各种程序语言以及相关库的发展和进化。我孩子的无数玩具中有一个简要地描述了这个两难局面:你无法合理安排一个不得其所的人。 问题 你如何避免因外部库的API改变而带来的不便?假如你写了一个库,你能否提供一种方法允许你软件的现有用户进行完美地升级,即使你已经改变了你的API?为了更好地适宜于
若你从事过面向对象的php开发,即使很短的时间或者仅仅通过本书了解了一些,你会知道,你可以 通过继承改变或者增加一个类的功能,这是所有面向对象语言的一个基本特性。如果已经存在的一个php类缺少某些方法,或者须要给方法添加更多的功能(魅力),你也许会仅仅继承这个类来产生一个新类—这建立在额外的代码上。 但是产生子类并不总是可能或是合适的。如果 你希望改变一个已经初始化的对象的行为,你怎么办?或者,你