随机分地形的生成外文译文.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
随机分地形的生成外文译文

学生毕业设计(论文)外文译文 学生姓名: 学号: 专业名称:计算机科学与技术 译文标题(中英文):随机分形地形的生成(Generating Random Fractal Terrain) 译文出处: Fractal algorithm and program design 指导教师审阅签名: 外文译文正文: 随机分形地形的生成 任何分形最关键的概念是自相似。当一个物体的一部分放大后看起来仍与整个物体一样,那这个物体 就是自相似 考虑一下人体的循环系统。这是自然界中自相似的好例子。从最大的动脉和静脉分支直到最小的微血 管,整个过程都显现相同的分支模式。如果你不知道正在使用显微镜,将无法分辨微血管和大动脉。 现在再考虑一个简单的球。它是自相似的吗?不!大幅度放大后,它看起来不再象一个球,而象块平 板。如果你不相信,看看户外。除非恰好你在太空轨道上看本文,否则将完全没法看出地球是个球体。球 体不是自相似的。它适用传统的欧几里德几何描述而不是分形。 地形属于自相似范畴。手掌上的碎岩锯齿状边缘与远处地平线边的山脊有相同的不规则形状。这使我 们可以用分形来生成地形,不管显示时怎么放大,它看起来仍然象地面。 有关自相似请注意:严格意义下,它意味着自分辨 (self-identical) ,即,自身精确的缩略拷贝在逐 渐放大缩小时可见。我并不知道自然界存在任何自分辨分形。但 mandelbrot 集是自分辨的。我不会进一 步讨论 Mandelbrot 集。到参考里找进一步的信息。 一维中点变换 后边要讲的 diamond-square 算法,在两维上使用一种中点变换算法。为帮助你了解个大概,我们先 我们先看一维情况。 当山脉出现在远处地平线处时,一维中点变换是绘制山脊的好算法。看看它是怎么工作的: 以一条水平地平线段开始 重复足够多次{ 对场景中的每条线段做{ 找到线段的中点 在 Y 方向上随机移动中点一段距离 减小随机数取值范围 } } 将随机数值域减速小多少呢?那取决于你想要分形的陡峭程度。每次循环减少的越多,所得山脊线就越平滑。但如果减得太多,则会有明显的锯齿感。可以粗糙度存在一个常量里。后面会解释如何做。 来看个例子。我们以一条 x 从 -1.0 到 1.0 , y 均为 0 的线段开始。开始,我们将随机值范围设为 -1.0 到 1.0 (可任意取)。这样我们在此范围里生成一个数字,并将中点移动这么多。这之后,我们就得到了: 现在第二次经过外圈循环,我们有两段,长度均原来的一半。我们的随机值也减半,即 -0.5 到 0.5 。我们为两个中点都生成一个这个范围内的随机点,结果为: 再次缩减范围,现在是 -0.25 到 0.25 。再以该范围内的数变换四个中点后,我们得到了: 有两件事你可能已经注意到了。 首先,它是递归的。实际上,它可以用一个迭代过程相当自然的实现。对于这种情况,递归或迭代都成。对于表面生成代码,使用迭代实现比递归会有一些好处。所以为保持一致,线和面相应的代码都使用迭代实现。 其次,它是个非常简单的算法,然而你能创建非常复杂的结果。这正是分形算法的美妙之处。一些简单的指令可以建立一个具有丰富细节的图像。 再跑一下题:少量简单的指令集能够生成复杂图像的事实已经成为一个新的研究领域称为分形图像压缩。其思想是保存建立图像的递归指令而不是保存图像本身。这对于自然界的分形图像是极有用的,因为指令相对图像占用的空间要少得多。 Choas (混沌)与 Fractals (分形) new Frontiers of Science 有一章及一个附录涉及本主题,是一般学习分形的好读物。 回到现实。 不用太费劲,你可以读取本函数的输出到一个绘制程序而得到类似如下的东西: 这可作为窗口景色使用。相关的好东西是它是约束的,所以你可以保留一个相当的小图像并用它拼出整个场景。如果你不介意在每个方向都看见相同的山,那就这么干。 好的,在进入 2D 分形表面之前,你得了解粗糙度常量。这个值决定每次循环随机数值域的减少量,也就是说,决定分形结果的粗糙程度。例子代码使用一个 0.0 到 1.0 之间的浮点数并称之为 H 。因此 2(-h) 是 1.0( 对于小 H) 到 0.5 (对大 H )范围内的数。随机数范围在每次循环时乘上这个值。如果 H 设为 1.0 ,则随机数范围将每次循环减半,从而得到一个非常平滑的

文档评论(0)

189****7685 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档