分形之谢尔宾斯基(Sierpinski)地毯

分形之谢尔宾斯基(Sierpinski)地毯前面讲了谢尔宾斯基三角形,和这一节的将把三角形变为正方形,即谢尔宾斯基地毯,它是由瓦茨瓦夫·谢尔宾斯基于1916年提出的一种分形,是自相似集的一种。谢尔宾斯基地毯的构造与谢尔宾斯基三角形相似

大家好,又见面了,我是你们的朋友全栈君。

前面讲了谢尔宾斯基三角形,和这一节的将把三角形变为正方形,即谢尔宾斯基地毯,它是由瓦茨瓦夫·谢尔宾斯基于1916年提出的一种分形,是自相似集的一种。

谢尔宾斯基地毯的构造与谢尔宾斯基三角形相似,区别仅在于谢尔宾斯基地毯是以正方形而非等边三角形为基础的。将一个实心正方形划分为的9个小正方形,去掉中间的小正方形,再对余下的小正方形重复这一操作便能得到谢尔宾斯基地毯。如下图:

Menger 0.PNG Menger 1.PNG Menger 2.PNG Menger 3.PNG Menger 4.PNG Menger 5.PNG

核心代码:

static void SierpinskiCarpet(const Vector3& v, Vector3* pVertices, Yreal d) { pVertices[0] = v + Vector3(-d, -d, 0.0f); pVertices[1] = v + Vector3(-d,  d, 0.0f); pVertices[2] = v + Vector3( d,  d, 0.0f); pVertices[3] = v + Vector3( d, -d, 0.0f); pVertices[4] = v + Vector3( d,  0, 0.0f); pVertices[5] = v + Vector3(-d,  0, 0.0f); pVertices[6] = v + Vector3( 0,  d, 0.0f); pVertices[7] = v + Vector3( 0, -d, 0.0f); }

<span role="heading" aria-level="2">分形之谢尔宾斯基(Sierpinski)地毯

<span role="heading" aria-level="2">分形之谢尔宾斯基(Sierpinski)地毯

<span role="heading" aria-level="2">分形之谢尔宾斯基(Sierpinski)地毯

<span role="heading" aria-level="2">分形之谢尔宾斯基(Sierpinski)地毯

<span role="heading" aria-level="2">分形之谢尔宾斯基(Sierpinski)地毯

<span role="heading" aria-level="2">分形之谢尔宾斯基(Sierpinski)地毯

<span role="heading" aria-level="2">分形之谢尔宾斯基(Sierpinski)地毯

软件下载地址:https://files.cnblogs.com/WhyEngine/Fractal.7z

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/154390.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 关于dos启动的一些知识

    关于dos启动的一些知识       最近装一个linux版本,就要用到dos,找来找去,忙乎了半天,又是缺文件,又是改配置。发现,一直用dos,但是还没有好好研究它。要研究dos,得从它的启动信息开始。。。。   一、DOS启动过程:开机->IO.SYS->MSDOS.SYS->CONFIG.SYS->COMMAND.COM->AUTOEXEC.BAT一般来说需要修改的是MSDOS.SYS、C

    2022年7月26日
  • HTML自我介绍表格代码制作[通俗易懂]

    HTML自我介绍表格代码制作[通俗易懂]<html><head><title>张三</title><matename=”keywords”content=”个人简历”/><matename=”description”content=”张三的个人简历”/></head><body><tableborder=5bordercolor=redalign=center><trheight=70bgcol.

    2022年8月11日
  • 修复未能连接一个window服务器,未能连接一个windows服务的修复方法

    修复未能连接一个window服务器,未能连接一个windows服务的修复方法Win7系统,最近出现一个问题,就是启动以后,在桌面右下角会弹出提示窗口,提示:未能连接一个windows服务的气泡弹窗,windows无法链接到XXXXX服务。此问题阻止标准用户登录系统。作为管理员用户,您可以复查系统时间日志,以获得有关此服务未响应原因的详细信息。出现这样的提示是怎么回事呢?下面最火软件站就为大家分享下windows服务无法连接的修复方法。操作步骤:1、首先键盘按W…

    2022年5月14日
  • Full GC触发条件总结以及解决策略「建议收藏」

    前言FullGC相对于MinorGC来说,停止用户线程的STW(stoptheworld)时间过长,至少慢10倍以上,所以要尽量避免,首先说一下FullGC可能产生的原因,接着给出排查方法以及解决策略。FullGC产生原因下图为与产生FullGC相关的内存区域,初生代、老年代、以及Metaspace区域。System.gc()方法的调用在代码中调用System…

    2022年4月12日
  • python中astype用法_python里的astype是什么意思?

    python中astype用法_python里的astype是什么意思?展开全部astype是实现2113变量类型转换,例如astype(type):returnsacopyofthearrayconvertedtothespecifiedtype.a=a.astype(‘Float64’)b=b.astype(‘Int32’)Python中与数据5261类型4102相关函数及属性1653有如下三个:type/dtype/astypetyp…

    2022年6月9日
  • C语言之数组反转

    C语言之数组反转数组反转是数组常见操作。大概来写一写数组反转添加上自己的理解注释。#include<stdio.h>#defineN6intmain(){inta[N]={0,1,2,3,4,5};inti;intt;intj;//反转算法for(i=0;i<N/2;i++){t=a[i];a[i]=a[N-1-i];a[N-1-i]=t;//遍历输出,每对换一对数值就打印一次数组

    2022年6月3日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号