C递归算法使用案例——画树

C递归算法使用案例——画树效果图 部分代码 privatevoidd intn doublex0 doubley0 doubleleng doubleth if n 0 return doublex1 x0 leng Math Cos th dou

效果图:

C递归算法使用案例——画树

C递归算法使用案例——画树

部分代码:

private void drawTree(int n, double x0, double y0, double leng, double th) { if (n == 0) return; double x1 = x0 + leng * Math.Cos(th); double y1 = y0 + leng * Math.Sin(th); drawLine(x0, y0, x1, y1); drawTree(n - 1, x1, y1, per1 * leng * (0.5 + ran()), th + th1 * (0.5 + ran())); drawTree(n - 1, x1, y1, per2 * leng * (0.4 + ran()), th - th2 * (0.5 + ran())); if (ran() > 0.6) drawTree(n - 1, x1, y1, per2 * leng * (0.4 + ran()), th - th2 * (0.5 + ran())); } private void drawLine(double x0, double y0, double x1, double y1) { graphics.DrawLine(Pens.Blue, (int)x0, (int)y0, (int)x1, (int)y1); }

源码地址:

https://download.csdn.net/download/u0/

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

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

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


相关推荐

  • OpenProcessToken函数 何时会失败「建议收藏」

    OpenProcessToken函数 何时会失败「建议收藏」 OpenProcessToken函数的功能是打开一个与一进程相联系的访问令牌(access  token),它的原型如下:  BOOL  OpenProcessToken(      HANDLE  ProcessHandle,        DWORD  DesiredAccess,        PHANDLE  TokenHandle  );    如同

    2022年6月25日
    29
  • VCL 控件分类_验证控件的分类

    VCL 控件分类_验证控件的分类TForm右下角小窗体中调整form显示位置。动态窗体:主窗体和动态生成的窗体(Project|Options|Forms)在一个头文件中添加另一个头文件(File|UseUnit)newTForm2(this);(this:指以此为容器)ShowModal(),Show();(是否当前窗体关闭后才能操作父窗体:模态方式,非模态方式)Close();(关闭窗体)(在Eve

    2022年9月25日
    0
  • linux 修改mysql端口「建议收藏」

    linux 修改mysql端口「建议收藏」1)先关闭MySQL的进程2)更改端口vim/etc/my.cnf添加:port=33083)重启MySQL服务:servicemysqldrestart4)查看MySQL的端口号3.1.登录mysqlmysql-uroot-p3.2.查看当前端口号showglobalvariableslike‘port’;…

    2022年10月3日
    0
  • H5添加QQ好友的链接

    tencent://AddContact/?fromId=45&fromSubId=1&subcmd=all&uin=你的QQ号&website=www.oicqzone.com既点击有如下效果:

    2022年4月17日
    104
  • task scheduler什么意思_女贞子的功效与作用

    task scheduler什么意思_女贞子的功效与作用前言本文隶属于专栏《1000个问题搞定大数据技术体系》,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢!本专栏目录结构和参考文献请见1000个问题搞定大数据技术体系正文TaskScheduler的核心任务是提交TaskSet到集群运算并汇报结果。(1)为TaskSet创建和维护一个TaskSetManager,并追踪任务的本地性以及错误信息。(2)遇到Straggle任务时,会放到其他节点进行重试。(3)向DAGScheduler

    2022年10月11日
    0
  • 3D建模初学者必知

    3D建模初学者必知3d建模师是当下是分热门的职业,3dmax这个庞大的软件应用十分重要,它广泛应用于影视动画、游戏、广告、建筑设计等领域。许多零基础的同学面对如此庞大又复杂的软件,该如何学习呢?学习3dmax是一个长期的过程,不可急于一时,下面几个知识点是初学者必须要掌握的。1.平面图的编辑3dmax属于设计类软件,这类软件学习时必须掌握最基本的平面构图能力,场景空间大小、色彩搭配与所要展示事物的关联度都是最重要的基础。平面图就是3d空间的基础,二维空间好对三维空间的建造很有帮助。…

    2022年5月12日
    35

发表回复

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

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