Flash 与数学:正弦曲线
正弦函数和余弦函数已经很熟悉了吧?这个中学时代经常使用的一种三角函数。现在我们通过一个api 结合创造这种曲线
。我们提供y=a*sin(b*x);这个曲线模型
a 为振幅,b为求波长使用的参数,波长求法:360/|b|=波长
了解这个公式后,接下来,我们需要创建一条正弦曲线图案,准备一个振幅的参数,一个求波长的参数,还有一个波长的线段长度,重复次数
public function CreatSinLine(swing:Number,wavelengh:Number,X_length:Number,amount:int,startX:Number=0,startY:Number=0):void
参数swing :代表振幅
wavelength:波长的参数b值
x_length: 线段长度
amount:复制的次数
startX:开始的x位置
startY :开始的y位置
初步的模型:
//y=a*sin(b*x);
public function CreatSinLine(swing:Number,wavelengh:Number,X_length:Number,amount:int,startX:Number=0,startY:Number=0):void
{
this.graphics.lineStyle(1,color);
this.graphics.moveTo(startX,startY);
var W_len:int=int(360/wavelengh);//波长180度
if(amount<=0)return;
for (var i:int=0; i<=W_len*amount; i++)
{
var posX:Number=i*X_length/W_len;
var posY:Number=swing*Math.sin(-i*wavelengh*Math.PI/180);
this.graphics.lineTo(posX,posY);
}
}
创建一个封装好的正弦曲线类。这样就可以实现创建一条曲线了
///SinLine.as 该类为正弦曲线的创建y=a*sin(bx);
//vesion 1.0
//author 夏天的树人
package
{
import flash.geom.Point;
import flash.display.Sprite;
public class SinLine extends Sprite
{
private var START_POINT:Point;
public function SinLine()
{
}
public function clone():*
{
return new SinLine();
}
//创建正弦曲线图案
//y=a*sin(b*x);
public function CreatSinLine(swing:Number,wavelengh:Number,X_length:Number,amount:int,startX:Number=0,startY:Number=0):void
{
this.graphics.lineStyle(1,0x000000);
this.graphics.moveTo(startX,startY);
var W_len:int=int(360/wavelengh);//波长180度
相关文档:
大家都知道STM32的CPU时钟频率可以达到72MHz,以后还会更快,但是由于半导体制造工艺的限制,存放程序的Flash存储器不可能达到这么高的工作频率,这样当CPU直接访问Flash存储器时必须插入等待周期以得到正确的结果。
问题是在Flash的速度比CPU慢的情况下,是不是可以简单地说STM32在执行Flash中的程序时每条指令都需要插入 ......
CLSID clsid;
HRESULT hr =
CLSIDfromProgID(L"ShockwaveFlash.ShockwaveFlash", &clsid);
以上代码用来检测Flash是否安装,CLSIDfromProgID通过注册表来查询CLSID的值。不知何故有时注表内注册项不完整(在XP,2003中都有出现),查询得知HKEY_CLASSES_ROOT\ShockwaveFlash ......
刚才访问一个博友的页面,在下面有一行显示的全是小方块,这是怎么回事,用鼠标点一点发现原来是flash,我的flash插件已经装了呀,怎么
还出现这种情况。
上网一查,原来是flash乱码,解决方法:
linux@linux-desktop:~$ cd /etc/fonts/conf.d/
#进入配置文件目录
linux@linux-desktop:/etc/fonts/conf.d$ l ......
演示地址:
forked from: SimpleFish - wonderfl build flash online
今天我们要创建一个小鱼的绘制。这次我们会使用SimpleFish.as 创建绘制小鱼类 。同时我们会使用绘图APi 当中的curveTo 的一个方法。这个方法用法如下,
this.graphics.moveTo(开始起点X,开始起点Y);
&nb ......