- 浏览: 100470 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
chensong215:
无法获取到ProgressEvent中的bytesTotal
自定义DownloadProgressBar -
qq2464785999:
非常感谢。
测试后,发现要用相对路径的话,好像要这么写
va ...
Flex写XML文件
as3 画五角星算法
阅读:10次 时间:2012-03-22 19:08:16 字体:[大 中 小]
使用as3语言动态绘制五角星,主要难点在于动态转换五角星各个边得角度。
代码如下:
function drawStar():void
{
var m:MovieClip=new MovieClip();
var radius:Number = 50;
var color:uint = 0xFFFF00;
m.graphics.lineStyle(5,0xFF0000);
m.graphics.moveTo(radius,0);
m.graphics.beginFill(color);
for (var i:int=1; i<11; i++)
{
var radius2:Number = radius;
if (i % 2 > 0)
{
radius2 = radius / 2;
}
var angle:Number = Math.PI * 2 / 10 * i;
m.graphics.lineTo(Math.cos(angle)*radius2,Math.sin(angle)*radius2);
}
m.x = 200;
m.y = 200;
addChild(m);
}
上面的代码是直接绘制五角星,不能设置各种参数。
下面的方法可以设置绘图的各种参数的行数,代码如下:
drawShape(graphics:Graphics, x:Number, y:Number, innerRadius:Number, outerRadius:Number, points:Number = 5, angle:Number=90 ):void
{
graphics.clear();
graphics.lineStyle(borderThickness,borderColor,borderAlpha);
if(backgroundAlpha > 0)
{
graphics.beginFill(backgroundColor, backgroundAlpha);
}
var count:int = Math.abs(points);
if (count>=2)
{
// calculate distance between points
var step:Number = (Math.PI*2)/points;
var halfStep:Number = step/2;
// calculate starting angle in radians
var start:Number = (angle/180)*Math.PI;
graphics.moveTo(x+(Math.cos(start)*outerRadius), y-(Math.sin(start)*outerRadius));
// draw lines
for (var i:int=1; i<=count; i++)
{
graphics.lineTo(x+Math.cos(start+(step*i)-halfStep)*innerRadius,
y-Math.sin(start+(step*i)-halfStep)*innerRadius);
graphics.lineTo(x+Math.cos(start+(step*i))*outerRadius,
y-Math.sin(start+(step*i))*outerRadius);
}
}
if(backgroundAlpha > 0)
{
graphics.endFill();
}
}
阅读:10次 时间:2012-03-22 19:08:16 字体:[大 中 小]
使用as3语言动态绘制五角星,主要难点在于动态转换五角星各个边得角度。
代码如下:
function drawStar():void
{
var m:MovieClip=new MovieClip();
var radius:Number = 50;
var color:uint = 0xFFFF00;
m.graphics.lineStyle(5,0xFF0000);
m.graphics.moveTo(radius,0);
m.graphics.beginFill(color);
for (var i:int=1; i<11; i++)
{
var radius2:Number = radius;
if (i % 2 > 0)
{
radius2 = radius / 2;
}
var angle:Number = Math.PI * 2 / 10 * i;
m.graphics.lineTo(Math.cos(angle)*radius2,Math.sin(angle)*radius2);
}
m.x = 200;
m.y = 200;
addChild(m);
}
上面的代码是直接绘制五角星,不能设置各种参数。
下面的方法可以设置绘图的各种参数的行数,代码如下:
drawShape(graphics:Graphics, x:Number, y:Number, innerRadius:Number, outerRadius:Number, points:Number = 5, angle:Number=90 ):void
{
graphics.clear();
graphics.lineStyle(borderThickness,borderColor,borderAlpha);
if(backgroundAlpha > 0)
{
graphics.beginFill(backgroundColor, backgroundAlpha);
}
var count:int = Math.abs(points);
if (count>=2)
{
// calculate distance between points
var step:Number = (Math.PI*2)/points;
var halfStep:Number = step/2;
// calculate starting angle in radians
var start:Number = (angle/180)*Math.PI;
graphics.moveTo(x+(Math.cos(start)*outerRadius), y-(Math.sin(start)*outerRadius));
// draw lines
for (var i:int=1; i<=count; i++)
{
graphics.lineTo(x+Math.cos(start+(step*i)-halfStep)*innerRadius,
y-Math.sin(start+(step*i)-halfStep)*innerRadius);
graphics.lineTo(x+Math.cos(start+(step*i))*outerRadius,
y-Math.sin(start+(step*i))*outerRadius);
}
}
if(backgroundAlpha > 0)
{
graphics.endFill();
}
}
发表评论
-
flex 自定义多个命名空间以及标签名
2013-01-22 15:21 1336flex 自定义多个命名空 ... -
FLEX中使用AS动态创建DataGrid
2013-01-09 16:24 918FLEX中使用AS动态创建DataGrid 2010年2月6日 ... -
flex与flash之间相互调用
2012-12-12 12:39 627http://www.cnblogs.com/kaixuan/ ... -
Flex与Flex创建的swf通信
2012-12-12 10:16 733加载子SWF的Flex程序代码 <?xml vers ... -
[AS3]加载视频(FLV)文件
2012-12-06 15:11 863[AS3]加载视频(FLV)文件 分类: FLEX/CS3-- ... -
通过FileReference打开本地图片崩溃的解决方法
2012-12-06 14:02 719通过FileReference打开本地图片崩溃的解决方法 最近 ... -
使用FileReference的load()方法加载本地图片
2012-12-06 13:56 9371、要想使用FileReference的load()方法和da ... -
[AS3]Bitmap序列化(将BitmapData保存为原生Binary/ByteArray)
2012-12-06 13:48 760[AS3]Bitmap序列化(将BitmapData保存为原生 ... -
flex嵌入完整html
2012-11-29 11:18 814有时候我们需要在Flex应用中嵌入HTML代码,根据嵌入HTM ... -
flex4 textArea的htmlText属性
2012-11-29 11:13 3117它现在包含Text布局框架(Text Layout Frame ... -
Tooltip应用
2012-11-29 11:11 732创建ToolTip: var errorToolTip:To ... -
数据绑定显示问题
2012-10-27 12:11 680数据绑定实时变化。 XMLListCollection 可以变 ... -
待解决问题
2012-09-18 23:48 7231.仪表盘 2.渐变填充的使用 3.发光效果的完美运用 能在一 ... -
as3加载外部图片的两种方式
2012-09-09 11:46 1046package net.burchin.loading { ... -
公式as3
2012-09-06 18:13 0as3 1人收藏此文章, 我要收藏 发表于1年前(2011-0 ... -
Flex中多线程的实现
2012-09-06 10:49 3520破阵子_如是我闻 如是我闻。一时佛在舍卫国,祗树给孤独园.. ... -
自定义column renderer
2012-08-09 15:07 964<?xml version="1.0" ... -
drowshadowFilter
2012-08-09 15:05 677DropShadowFilter 类,在Flash中为各种对象 ... -
123123
2012-08-08 17:16 0http://www.oschina.net/code/sni ... -
flex 画面快照截图与显示
2012-08-08 11:32 1054一、对指定画面进行快 ...
相关推荐
在计算机图形学中,中点法是一种常用的算法,用于绘制各种几何形状,包括五角星。这个技术在C语言中尤为常见,因为它提供了基础的内存管理和控制结构,适合进行低级别的图形操作。本文将深入探讨如何使用C语言的中点...
在本文中,我们将深入探讨如何使用Microsoft Foundation Classes (MFC)库在Windows应用程序中绘制五角星。MFC是微软为开发Windows桌面应用程序提供的一种C++类库,它简化了WinAPI接口的使用。 首先,我们需要理解五...
此外,你还可以探索更复杂的图形算法,如Bresenham算法或递归方法来绘制五角星。这需要对数学和编程有更深入的理解,但可以实现更高效或动态的图形绘制。 总的来说,Python的`turtle`库为初学者提供了一种直观的...
本文将深入探讨“五角星扫描填充”算法,这是一种利用链表实现的经典方法。五角星填充算法通常用于教育和实践,帮助程序员理解和掌握图形处理的基本原理。 首先,我们来看五角星的几何特性。五角星由两个交错的等边...
绘制五角星的基本算法可以分为以下步骤: 1. **定义五角星的中心**:确定五角星在窗口中的位置,可以通过设置一个中心点坐标(x,y)来完成。这个中心点通常是五角星最内部尖角的交点。 2. **计算五角星的半径**:...
在VB(Visual Basic)编程...这个“VB画五角星程序”结合了VB的基础图形绘制、事件处理、用户交互以及一些几何算法,是一个很好的学习VB图形编程的实例。通过深入研究并实践,你可以更好地理解和掌握VB的这些核心概念。
3. 画直线完成五角星的绘制 五、主要模块的算法描述 主要模块包括文件输入输出和五角星绘制两个部分。 文件输入输出部分: 1. 文件打开函数:fopen(filename,"w+") 2. 文件写入函数:fputc(ch,fp) 3. 文件读取...
西门子1200PLC画五角星 作为自动化领域的专业人士,我们今天要讨论如何使用西门子1200PLC画五角星。本节课程的主要目标是掌握轴运动直线轨迹的算法,掌握PLC编程的基本原理和实现方法。 一、轴组态基本参数 在...
3. **五角星算法**: 绘制五角星通常涉及数学知识,尤其是几何和向量运算。五角星由两个交错的等边三角形构成,每个三角形的顶点都是五角星的一个顶点。通过计算每个顶点的坐标,可以使用`MoveTo()`和`LineTo()`函数...
**Flash AS3 A* 寻路算法详解** 在游戏开发和路径规划中,A*(发音为"A-star")寻路算法是一种广泛应用的路径搜索算法,它基于Dijkstra算法但更高效,因为它考虑了启发式信息来指导搜索方向。在Flash AS3环境中,A*...
根据提供的文件信息,我们可以将相关的知识点分为两个部分:第一部分是使用递归算法在控制台打印五角星图案;第二部分则是使用Java Swing图形界面库绘制一个五角星。 ### 第一部分:使用递归算法在控制台打印五角星...
在这个主题中,我们将探讨五角星变换、直线绘制、圆形渲染以及图形的填充方法,这些都是计算机图形学的基本元素。不过,需要注意的是,提供的资源并不保证完全正确,可能只适用于特定的学习目的,比如完成作业,而且...
在计算机图形学领域,DDA(Digital Differential Analyzer)算法是一种用于绘制直线的基本算法,尤其在早期的计算机图形处理中占有重要地位。通过本篇文章,我们将深入解析DDA算法的原理、实现过程及其在C语言中的...
对于“五星.txt”,这可能包含绘制五角星的算法或坐标数据。五角星由交叉的两个等边三角形组成,每条边与另一个三角形的对边相交。根据坐标系中的点,我们可以计算出每条线段的起点和终点,然后使用`Line`命令进行...
A星(A*)寻路算法是计算机图形学和游戏开发中常用的一种路径搜索算法,它结合了最佳优先搜索(Dijkstra算法)和启发式搜索。在AS3.0中,这个算法通常用于创建智能角色在复杂网格环境中的移动路径,比如游戏中的NPC或...
- **中点画线算法**:这种方法基于梯形法则,每次从线段的中点出发,向两个端点方向迭代,可以减少错误累加,提高精度。 - **Bresenham算法**:这是一种优化的算法,通过对斜率进行比较,决定下一个像素点应该在...
描述提到的功能允许用户自定义画点方式,这表明该软件提供了交互式的绘图体验,用户可以通过点击鼠标或移动鼠标来改变绘制五角星的方式。 首先,我们来了解一下五角星的基本概念。五角星是由五个等腰三角形构成的...
最大最小蚁群算法(Max-Min Ant System, MMAS)是一种经典的优化算法,源自生物界蚂蚁寻找食物路径的行为。在蚁群优化算法中,每只蚂蚁代表一个可能的解决方案,它们在问题空间中搜索最优解。MMAS是最早被提出的蚁群...
标题中的“poly.zip_五角星填充_交线”表明我们讨论的是一个关于如何使用扫描线算法填充五角星形状的案例。这个压缩包可能包含了实现这一算法的代码或示例,其核心是理解和处理图形边界的交点。 扫描线算法是一种...
在计算机图形学中,直线的绘制是一项基本任务,而DDA(Digital Differential Analyzer)算法是一种简单且常用的画直线方法。这个实验主要是为了帮助学生理解和应用DDA算法,通过源码实践来加深对计算机图形学原理的...