今天,看到Matrix67的分形动画展示,效果超赞,于是,忍不住试试。
Matrix67的分形动画展示:Matrix67
为了省事儿,用cocos2dx和MFC做这个。
首先解释一下,龙形曲线。
龙形曲线的原理是:每次在现存的所有线段之间产生一个新的点,新点和原来的两个点构成了等腰直角三角形。如图。
龙形曲线的核心代码如下:
CCPoint start = s,end = e; CCPoint vec = end - start; pVec[0] = start; pVec[2] = end; if ( IsOuter ) { vec = vec.rotateByAngle( CCPointZero,CC_degrees_TO_radians( 45 ) ); } else { vec = vec.rotateByAngle( CCPointZero,CC_degrees_TO_radians( 315 ) ); } vec = vec*sin(CC_degrees_TO_radians(45)); pVec[1] = pVec[0] + vec;可以看到,这是一个不断生成新的顶点的过程,每帧会生成原来顶点数减一个顶点。
最终效果图:
总结
以上是内存溢出为你收集整理的分形图形 --- 龙形曲线全部内容,希望文章能够帮你解决分形图形 --- 龙形曲线所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)