欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Flash AS教程:用AS3代碼表現(xiàn)傾斜角與斜率介紹

  發(fā)布時(shí)間:2014-06-13 10:03:31   作者:佚名   我要評(píng)論
坐標(biāo)中的兩點(diǎn)可以確定一條直線,直線與線段不同,線段有長(zhǎng)度,而直線是沒有長(zhǎng)度的。通過兩點(diǎn)可以確定一條直線,通過角度和一個(gè)定點(diǎn)也能確定一條直線。下面就為大家介紹用AS3代碼表現(xiàn)傾斜角與斜率,希望對(duì)大家有一定的幫助

坐標(biāo)中的兩點(diǎn)可以確定一條直線,直線與線段不同,線段有長(zhǎng)度,而直線是沒有長(zhǎng)度的。通過兩點(diǎn)可以確定一條直線,通過角度和一個(gè)定點(diǎn)也能確定一條直線。下面就為大家介紹用AS3代碼表現(xiàn)傾斜角與斜率,希望對(duì)大家有一定的幫助。

效果演示,鼠標(biāo)左鍵按住兩端移動(dòng):

演示:

直線與X軸正半軸所成的角稱直線的傾斜角,當(dāng)傾斜角不等于90度時(shí),傾斜角的正切稱為直線的斜率。圖:

Flash AS教程:用AS3代碼表現(xiàn)傾斜角與斜率,PS教程,思緣教程網(wǎng)

其中角a就是直線的傾斜角,而斜率就是直角三角中對(duì)邊BC與鄰邊AB的比值,即正切值。正切值通過Math類的tan()方法可以得到。

給定A點(diǎn)和C點(diǎn)的坐標(biāo),可求得角a的角度值。

求角a的正切值的算法:


復(fù)制代碼
代碼如下:
(C.y - A.y) / (C.x - A.x);

下面的代碼求直線的斜率:


復(fù)制代碼
代碼如下:
(C.x == A.x)?Infinity:(C.y - A.y) / (C.x - A.x);

代碼先判斷兩點(diǎn)的橫坐標(biāo)是否相等,如果相等,說明直線垂直于x軸,這時(shí)不存在斜率,所以給斜率一定特殊值Infinity。

例:

1、新建Flash文檔,取名存盤。

2、創(chuàng)建影片剪輯,圖層1用橢圓工具繪制一個(gè)圓,填充色和大小根據(jù)需要定。插入圖層2, as層,輸入代碼:


復(fù)制代碼
代碼如下:
//注冊(cè)鼠標(biāo)按下事件偵聽器
this.addEventListener(MouseEvent.MOUSE_DOWN,startDragFunc);
//注冊(cè)鼠標(biāo)釋放事件偵聽器
this.addEventListener(MouseEvent.MOUSE_UP,stopDragFunc);
//定義接收按下事件的函數(shù)
function startDragFunc(e:MouseEvent);
{
//開始拖動(dòng)
e.target.startDrag();
//更新顯示
e.updateAfterEvent() ;
}
//定義接收釋放事件的函數(shù)
function stopDragFunc(e:MouseEvent);
{
//停止拖動(dòng)
e.target.stopDrag()
}

3、返回場(chǎng)景1,在圖層1的第一幀拖入兩個(gè)影片剪輯,在屬性面板中輸入剪輯的名字,p1 、p2。

4、插入圖層2,選擇文本工具,創(chuàng)建靜態(tài)文本,字體大小15 、字體自定。輸入:斜率:在右面創(chuàng)建動(dòng)態(tài)文本,名:k_txt。在下面再次創(chuàng)建靜態(tài)文本,輸入:傾斜角:右面創(chuàng)建動(dòng)態(tài)文本,名:a_txt。

5、插入圖層3,as層。輸入代碼:


復(fù)制代碼
代碼如下:
//導(dǎo)入數(shù)學(xué)函數(shù)
include "Math2.as";
//創(chuàng)建兩個(gè)點(diǎn)
var A:Point=new Point()
var B:Point=new Point()
//創(chuàng)建用于繪制箭頭的容器
var arrow_shape:Shape=new Shape();
this.addChild(arrow_shape);
stage.addEventListener(Event.ENTER_FRAME,loop);
function loop(e:Event):void
{
//清除繪圖
arrow_shape.graphics.clear();
//在兩點(diǎn)間繪制箭頭
drawArrow(arrow_shape.graphics,p1.x,p1.y,p2.x,p2.y);
//設(shè)置點(diǎn)A的值
A.x=p1.x;
A.y=p1.y;
//設(shè)置點(diǎn)B的值
B.x=p2.x;
B.y=p2.y;
//根據(jù)點(diǎn)A和點(diǎn)B創(chuàng)建直線
var line:Line=new Line(A,B);
//把斜率保存兩位小數(shù),并轉(zhuǎn)換為字符串顯示出來
k_txt.text=line.K.toFixed(2);
//把傾斜角取整后顯示
a_txt.text=line.angle.toFixed();
}

上面的代碼把弧度和角度轉(zhuǎn)換等函數(shù)放在Math2.as文件中,通過include導(dǎo)入Math2.as文件就可以使用這些數(shù)學(xué)函數(shù)。Math2.as文件中添加了繪制箭頭的函數(shù)drawArraw()。

6、測(cè)試影片,看一下效果。如果需要輸出p2的x、y坐標(biāo)添加代碼:


復(fù)制代碼
代碼如下:
;x_txt.text = p2.x;
y_txt.text = p2.y;

界面上添加靜態(tài)文本和動(dòng)態(tài)文本就不用細(xì)說了吧,如果不需要顯示斜率注釋掉。

相關(guān)文章

  • flash cs6鼠標(biāo)跟隨效果實(shí)現(xiàn)代碼分享

    flash cs6想要實(shí)現(xiàn)鼠標(biāo)跟隨效果?該怎么制作呢?今天我們就來看看使用as2.0實(shí)現(xiàn)鼠標(biāo)跟隨效果的教程,需要的朋友可以參考下
    2019-05-19
  • Flash cs6怎么使用代碼輸入中英文文本?

    Flash cs6怎么使用代碼輸入中英文文本?Flash cs6中可以使用文字工具直接輸入文本,也可以使用代碼來輸入文本,該怎么使用代碼輸入文本呢?請(qǐng)看下文詳細(xì)的教程,需要的朋友
    2018-03-11
  • flash as3.0怎么定義抽象類和抽象?

    flash as3.0抽象類怎么定義? as3.0中有很多抽象類,該怎么定義抽象類和抽象方法呢?下面我們就來看看簡(jiǎn)單的例子,需要的朋友可以參考下http://www.dbjr.com.cn/softs/408402.
    2018-02-28
  • flash cs6中怎么使用ActionScript3.0?

    flash cs6中怎么使用ActionScript3.0?flash cs6中想要使用ActionScript3.0功能,該怎么使用呢?下面我們就來看看詳細(xì)的教程,需要的朋友可以參考下
    2018-01-25
  • Flash中怎么實(shí)現(xiàn)鼠標(biāo)點(diǎn)擊決定圖像位置?

    本教程給大家分享一個(gè)Flash小教程,教大家在Flash CS6中怎么實(shí)現(xiàn)鼠標(biāo)點(diǎn)擊決定圖像位置?方法很簡(jiǎn)單,感興趣的朋友歡迎前來一起分享學(xué)習(xí)
    2018-01-12
  • Flash中如何用代碼將圖片放在自己想要的舞臺(tái)位置?

    本教程教腳本之家的ActionScript教程學(xué)習(xí)者在Flash中如何用代碼將圖片放在自己想要的舞臺(tái)位置,教程講解的詳細(xì),感興趣的朋友歡迎前來分享學(xué)習(xí)
    2017-11-20
  • 在Flash CS6中使用with函數(shù)繪制背景圖教程

    本教程教腳本之家的ActionScript教程學(xué)習(xí)者如何在Flash CS6中使用with函數(shù)繪制背景圖?教程一步步講解的挺詳細(xì),方法也不難,非常適合Flash新手入門學(xué)習(xí)
    2017-11-18
  • Flash怎么設(shè)置元件坐標(biāo)?flash使用代碼設(shè)置元件的坐標(biāo)的教程

    Flash怎么設(shè)置元件坐標(biāo)?flash中導(dǎo)如的元件需要添加坐標(biāo),該怎么定位元件坐標(biāo)呢?下面我們就來看看flash使用代碼設(shè)置元件的坐標(biāo)的教程,需要的朋友可以參考下
    2017-10-11
  • Flash怎么制作來回?fù)u擺的花朵的動(dòng)畫?

    Flash怎么制作來回?fù)u擺的花朵的動(dòng)畫?Flash中想要給花朵制作一段搖擺的動(dòng)畫效果,該怎么制作呢?下面我們就來看看詳細(xì)的教程,很簡(jiǎn)單,需要的朋友可以參考下
    2017-05-23
  • Flash怎么制作流動(dòng)七彩色的文字?

    Flash怎么制作流動(dòng)七彩色的文字?想要讓文字動(dòng)起來,該怎么使用flash給文字制作一個(gè)流動(dòng)七彩色的動(dòng)畫呢?下面我們就來看看詳細(xì)的教程,需要的朋友可以參考下
    2017-04-23

最新評(píng)論