Flash 与数学:圆的切线

  今天计算了一下关于圆的切线,感觉还是挺有趣的。于是动手写了一下,尝试了绘制一条圆的切线,可以求任意圆上一点的切线。

 

 

  计算方法:通过圆心的坐标O和圆上一点M的坐标可以利用这两个关系求出切线的斜率K值

 

           k=-(O.x-M.x)/(O.y-M.y);

 

    这样就可以求出切线的斜率,然后再通过反正切可以求出切线的倾斜角度A值。

 

   我们使用flash绘制的直线的时候,需要知道两点坐标。其一,我们已经知道了M的坐标点,另外一点可以通过直线的参数方程求出另外一点的位置。

 

下面是通过一个代码演示这个过程:

 

 

通过这个程序原理可以让其创造出其他图案.

 

其中的改造的时候,通过360度围绕来进行描绘线条。这样显示出的效果就如上图

我们把drawLine下面的代码屏蔽了,然后在int()初始化函数的里面进行创建这些图案。

 

//this.graphics.moveTo(circlePoint.x,circlePoint.y);
// this.graphics.lineTo(px,py);

 

 

 

我们可以增加一些滤镜的特效,让其变化成下面的效果图。同时使用滤镜的时候,会让创造带来一些意外的收获。

可以进行试试。

 

添加简单方法:

 

 

 

通过封装曲线:我们也可以尝试封装一个简单类进行调用。进行日后方便调用这种图案

 

 

 

实现的方法:

 

 

观看地址:http://summertree.googlecode.com/svn/trunk/

 

评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值