分形之拆分三角形(Split Triangle)
前面讲了谢尔宾斯基三角形,它是不停地将一个三角形拆分三个与之相似的三角形。这一节给大家展示的图形是将一个等腰钝角三角形不停地拆分两个与之相似的三角形。
核心代码:
static void SplitTriangle(const Vector3& v1, const Vector3& v2, const Vector3& v3, Yreal angle, Vector3* pVertices) {Vector3 dir12 = v1 - v2;Yreal len12 = D3DXVec3Length(&dir12);//Vector3 dir13 = v1 - v3;//Yreal len13 = D3DXVec3Length(&dir13); Vector3 dir23 = v2 - v3;Yreal len23 = D3DXVec3Length(&dir23);dir23 /= len23;Yreal len = len12*0.5f/cosf(angle);pVertices[0] = v2 - dir23*len;pVertices[1] = v1;pVertices[2] = v2;pVertices[3] = v3 + dir23*len;pVertices[4] = v3;pVertices[5] = v1; }
软件截图:
既然说是钝角三角形,那么就可以设置其底角的角度。
当其底角为45度时,为等腰直角三角形,则生成如下网格形:
当其底角为30度时,则其图形将蜕变为Koch曲线,见:分形之科赫(Koch)雪花
软件下载地址:http://files.cnblogs.com/WhyEngine/Fractal.7z
转载于:https://www.cnblogs.com/WhyEngine/p/4020508.html
分形之拆分三角形(Split Triangle)相关推荐
- 90 数字三角形(Triangle)
文章目录 1 题目 2 解决方案 2.1 思路和图解 2.1.1 遍历法和分治法 2.1.2 带记忆化搜索的分治法 2.1.3 至底向上的动态规划 2.1.4 至顶向下的动态规划 2.3 时间复杂度 ...
- #十二、编写三角形类Triangle,初始化三个属性,分别是三条边的长度,定义一个计算并打印周长的函数 #十三、编写等腰三角形类EWtriangle,继承于三角形类,初始化只用传一个腰长和一个底长,定
#十二.编写三角形类Triangle,初始化三个属性,分别是三条边的长度,定义一个计算并打印周长的函数 #十三.编写等腰三角形类EWtriangle,继承于三角形类,初始化只用传一个腰长和一个底长,定 ...
- Python按照指定的分隔符拆分字符串split()函数
[小白从小学Python.C.Java] [Python全国计算机等级考试] [Python数据分析考试必会题] ● 标题与摘要 Python按照指定的分隔符拆分字符串 split()函数 ● 选择题 ...
- 三、12.13.14.15.编写三角形类Triangle
作业 #12.编写三角形类Triangle,初始化三个属性,分别是三条边的长度,定义一个计算并打印周长的函数class Triangle(object):def __init__ (a,b,c):se ...
- java三角形类 继承_java编程三角形(Triangle类)继承
import java.util.Scanner; public class Test { public static void main(String[] args) { System.out.pr ...
- html+分割字符,sql拆分字符串split
SQL里有没有类似SPLIT的分割字符串函数 createfunctionf_split(@cvarchar(2000),@splitvarchar(2)) returns@ttable(colvar ...
- CSS中左上朝向三角形(Top-Left Triangle)的几种制作方式
今天我们介绍几种,用css实现左上朝向三角形(Top-Left Triangle)的写法. 示意图(以宽高各60px为例): 这种三角形,一般可以用来做"对话框"类型图形的左下小脚 ...
- jQuery拆分字符串 split()并且遍历$.each()
1.拆分字符串 语法:字符串名.split(separator,howmany) separator 必需.字符串或正则表达式,从该参数指定的地方分割 stringObject. howmany 可选 ...
- 三角形类 (Triangle class)
设计一个GeometricObject类.该类包括: (1)两个名为color(颜色).filled(是否填充)的数据域,即Field. ps:数据类型:char字符:String 字符串:boole ...
最新文章
- java双目运算符重载,c++类的单目和双目运算符的重定义
- HR不会告诉你的薪资谈判技巧
- ssh放行端口_安全组中已经添加规则放行SSH端口的访问之后如何使用f1 RTL
- I00027 Java语言程序-打印九九乘法表
- python贪吃蛇_python实现贪吃蛇
- 面试官教你写简历之『实习/应届生简历指南』(收藏)
- 倍加福二维码测试1-串口助手测试
- Scratch软件编程等级考试一级——20210911
- 静态HTML网页设计作品网站设计——仙灵游戏网站首页(1页) HTML+CSS+JavaScript 学生DW网页设计作业成品
- Windows应用程序安装向导制作
- 区块链游戏- Solcery(Summoner 召唤者)
- 如何在终端里面使用ping来查局域网活动ip
- 如何及时汇报反馈工作
- 深入理解RPC-RPC要解决的核心问题和在企业服务中的地位
- Java+MySQL基于ssm的物理竞赛管理系统 开题 论文
- Element Plus Icon图标自动引入
- 有关vue转换时间为年月日格式
- SQL语句实现查询SQL Server服务器名称和IP地址_MsSql
- 动态规划之最优配对问题
- 围绕边框宽度的html,设置围绕表格的边框宽度的HTML代码是?