flash 绘图API 绘制一棵树

2024-04-23 06:48

本文主要是介绍flash 绘图API 绘制一棵树,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

绘制一棵树

 

 这个程序是从2.0 改过来的,是网上一个程序,只是修改了一些内容,变成这种情况。这几天没有写程序,有点懒惰。于是今天又补充这种不错的应用。这个程序采用的是绘图API 最基本的绘制线,但是对其进行一些修改,使他产生上面的效果。漂亮不?呵呵,我都觉几漂亮,

作为绘图API 一个内容补充吧。

 

好,闲话不说。看代码

package { //绘制一棵树 import flash.display.Sprite; import flash.display.Graphics; import flash.events.*; public class Main extends Sprite {  private var shape:Sprite=new Sprite();  public function Main()  {   addChild(shape);   CreatTree(shape.graphics,300, 460, 90, 180,6);   CreatTree(shape.graphics,300, 400, 45, 130,6);   CreatTree(shape.graphics,300, 400, 135, 130,6);  }  //绘图对象,基本坐标px,py,角度,偏移长度,数量  private function CreatTree(g:Graphics,px:Number,py:Number,angle:Number,len:Number,n:int):void  {   if (n>0)   {    var x1:Number=px+0.1*len*Math.cos(angle*Math.PI/180);    var y1:Number=py-0.1*len*Math.sin(angle*Math.PI/180);    var x2:Number=px+len*Math.cos(angle*Math.PI/180);    var y2:Number=py-len*Math.sin(angle*Math.PI/180);    drawLine(g,n-1,px,py,x2,y2);    var a_l:Number = angle+30;    var a_r:Number = angle-30;    len = len*2/3;    CreatTree(g,x2, y2, angle-Math.random()*10,len,  n-1);    CreatTree(g,x1, y1, a_l,len*2/3, n-1);    CreatTree(g,x1, y1, a_r, len*2/3,n-1);    CreatTree(g,x2, y2, a_l,len*2/3,  n-1);    CreatTree(g,x2, y2, a_r,len*2/3,  n-1);   }  }  //绘制线  private function drawLine(g:Graphics,n:int,x1:Number,y1:Number,x2:Number,y2):void  {   g.lineStyle(n,0);   g.moveTo(x1,y1);   g.lineTo(x2,y2);  } }}

 

 

修改一部分内容,下面会变成下面的形状。为什么?可以尝试一下,由于程序只是对as  2.0 修改来的,所以这种绘制树的形状很不错。

当一种知识点来补充一下。这个程序采用递归的方式制作的。阅读的时候仅仅看看内容就行。其他就不用多方式进行。呵呵

好,暂时记录一下。

树2

 

 

 可以到这里观看到:

 

 

 

flash on 2010-3-16 - wonderfl build flash online
           

再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow

这篇关于flash 绘图API 绘制一棵树的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/928069

相关文章

AI绘图怎么变现?想做点副业的小白必看!

在科技飞速发展的今天,AI绘图作为一种新兴技术,不仅改变了艺术创作的方式,也为创作者提供了多种变现途径。本文将详细探讨几种常见的AI绘图变现方式,帮助创作者更好地利用这一技术实现经济收益。 更多实操教程和AI绘画工具,可以扫描下方,免费获取 定制服务:个性化的创意商机 个性化定制 AI绘图技术能够根据用户需求生成个性化的头像、壁纸、插画等作品。例如,姓氏头像在电商平台上非常受欢迎,

科研绘图系列:R语言扩展物种堆积图(Extended Stacked Barplot)

介绍 R语言的扩展物种堆积图是一种数据可视化工具,它不仅展示了物种的堆积结果,还整合了不同样本分组之间的差异性分析结果。这种图形表示方法能够直观地比较不同物种在各个分组中的显著性差异,为研究者提供了一种有效的数据解读方式。 加载R包 knitr::opts_chunk$set(warning = F, message = F)library(tidyverse)library(phyl

【WebGPU Unleashed】1.1 绘制三角形

一部2024新的WebGPU教程,作者Shi Yan。内容很好,翻译过来与大家共享,内容上会有改动,加上自己的理解。更多精彩内容尽在 dt.sim3d.cn ,关注公众号【sky的数孪技术】,技术交流、源码下载请添加微信号:digital_twin123 在 3D 渲染领域,三角形是最基本的绘制元素。在这里,我们将学习如何绘制单个三角形。接下来我们将制作一个简单的着色器来定义三角形内的像素

Flutter 进阶:绘制加载动画

绘制加载动画:由小圆组成的大圆 1. 定义 LoadingScreen 类2. 实现 _LoadingScreenState 类3. 定义 LoadingPainter 类4. 总结 实现加载动画 我们需要定义两个类:LoadingScreen 和 LoadingPainter。LoadingScreen 负责控制动画的状态,而 LoadingPainter 则负责绘制动画。

什么是 Flash Attention

Flash Attention 是 由 Tri Dao 和 Dan Fu 等人在2022年的论文 FlashAttention: Fast and Memory-Efficient Exact Attention with IO-Awareness 中 提出的, 论文可以从 https://arxiv.org/abs/2205.14135 页面下载,点击 View PDF 就可以下载。 下面我

STM32内部闪存FLASH(内部ROM)、IAP

1 FLASH简介  1 利用程序存储器的剩余空间来保存掉电不丢失的用户数据 2 通过在程序中编程(IAP)实现程序的自我更新 (OTA) 3在线编程(ICP把整个程序都更新掉) 1 系统的Bootloader写死了,只能用串口下载到指定的位置,启动方式也不方便需要配置BOOT引脚触发启动  4 IAP(自己写的Bootloader,实现程序升级) 1 比如蓝牙转串口,

【LabVIEW学习篇 - 21】:DLL与API的调用

文章目录 DLL与API调用DLLAPIDLL的调用 DLL与API调用 LabVIEW虽然已经足够强大,但不同的语言在不同领域都有着自己的优势,为了强强联合,LabVIEW提供了强大的外部程序接口能力,包括DLL、CIN(C语言接口)、ActiveX、.NET、MATLAB等等。通过DLL可以使用户很方便地调用C、C++、C#、VB等编程语言写的程序以及windows自带的大

如何更优雅地对接第三方API

如何更优雅地对接第三方API 本文所有示例完整代码地址:https://github.com/yu-linfeng/BlogRepositories/tree/master/repositories/third 我们在日常开发过程中,有不少场景会对接第三方的API,例如第三方账号登录,第三方服务等等。第三方服务会提供API或者SDK,我依稀记得早些年Maven还没那么广泛使用,通常要对接第三方

利用matlab bar函数绘制较为复杂的柱状图,并在图中进行适当标注

示例代码和结果如下:小疑问:如何自动选择合适的坐标位置对柱状图的数值大小进行标注?😂 clear; close all;x = 1:3;aa=[28.6321521955954 26.2453660695847 21.69102348512086.93747104431360 6.25442246899816 3.342835958564245.51365061796319 4.87

STM32 ADC+DMA导致写FLASH失败

最近用STM32G070系列的ADC+DMA采样时,遇到了一些小坑记录一下; 一、ADC+DMA采样时进入死循环; 解决方法:ADC-dma死循环问题_stm32 adc dma死机-CSDN博客 将ADC的DMA中断调整为最高,且增大ADCHAL_ADC_Start_DMA(&hadc1, (uint32_t*)adc_buffer, ADC_Buffer_Size); 的ADC_Bu