亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 辦公 > Flash > 正文

AS3教程:Point類計算兩點間距離

2020-07-17 13:17:50
字體:
來源:轉載
供稿:網友
當要運算兩點距離時,我見不少人都是用最原始的運算方法,其實2.0開始就有了Point類,可以計算兩點間距離,除此之外,Point類還可用于計算矢量,某些看似復雜的計算,用上Point類就會變得簡單。當然,要巧用Point類,必需要有矢量的知識。雖然,3.0的Point類和2.0的區別不大,但我之所以把這帖放在as3討論區,是因為as3的Point類廣泛地被其他類應用。最明顯的是globalToLocal和localToGlobal這兩個方法,2.0這兩個方法的參數和返回值都是Object,但3.0都變為Point類了,使得Point類的應用更名正言順了。

廢話少說,言歸正轉,首先我們看看Point類的屬性:
x:Number——該點的水平坐標
y:Number——該點的垂直坐標
length:Number——從(0,0)到此點的線段長度(只讀屬性)
從length屬性我們可以看到,實際上一個Point類的實例是一個以(0,0)為始點,以(x,y)為終點的矢量,因此,我們可以應用Point類進行一些簡單的矢量運算?,F在我們看看Point類給我們提供什么有用的方法:

distance(pt1:Point, pt2:Point):Number——返回 pt1 和 pt2 之間的距離。這個就是大家傻傻地用Math.sqart()寫一長串代碼計算出來的兩點間距離了。

add(v:Point):Point——將另一個點的坐標添加到此點的坐標以創建一個新點。還記得矢量相加的幾何意義嗎?
設a、b為矢量,則a b=c,圖中矢量c就是矢量a加矢量b的結果。

這個用來計算合力最方便。我們可以把物體的重心放到(0,0)點上,然后可以利用Point類的add方法簡單計算各種力的合力。你可能會提出一個問題:如何把力轉換成點的坐標呢?下面這個方法可以幫你解決這個問題。

polar(len:Number, angle:Number):Point——將一對極坐標轉換為笛卡爾點坐標。
學過物理力學的人都知道,力是有大小有方向的矢量,而這個方法正好提供了把力轉換成點坐標的方法。len就是力的大小,angle就是力角度。轉換后計算合力,得出合力的坐標點,再讀取這點的length屬性,就可得到合力的大小,再利用Math.atan2(y,x)計算力的方向。多簡單的運算!

offset(dx:Number, dy:Number):void——按指定量偏移 Point 對象。dx 的值將添加到 x 的原始值中以創建新的 x 值。 dy 的值將添加到 y 的原始值中以創建新的 y 值。這個要和add區分開來,因為offset是直接把值加到x、y值上。

subtract(v:Point):Point——從此點的坐標中減去另一個點的坐標以創建一個新點。既然有了加法,當然有減法了??纯词噶康臏p法意義:
設a、b為矢量,則b-a=c,圖中矢量c就是矢量b減去矢量a的結果。

用這個運算,你可以方便地只用一個Point類實例來記錄某兩點間的距離和斜率。在某些場合,這個很有用。例如當需要計算和記錄某點集合里各點與其他點之間的關系時,如果分別運算距離和角度,你得用兩個一一對應的數組記錄,當然也可以用一個多聯數組,但絕對比不上用一個Point類實例組成的一維數組簡單得多,如果要對這些結果進行比較或者有下一步運算時,用這種方法更顯優勢。

interpolate(pt1:Point, pt2:Point, f:Number):Point——確定兩個指定點之間的點。參數 f 確定新的內插點相對于參數 pt1 和 pt2 指定的兩個端點所處的位置。參數 f 的值越接近 1.0,則內插點就越接近第一個點(參數 pt1)。參數 f 的值越接近 0,則內插點就越接近第二個點(參數 pt2)。
這個方法更了不起。因為它能幫我們確定兩點之間的一點,只要我們知道這點在線段中位置。實際上f是一個比例值,
f=待定點到pt2的距離/整條線段的長度
這個用來計算一些已知比例關系的點很方便。例如求地圖上的某點在實際場景上的點坐標,我們只需選取一段過這點的線段,計算出f,就可以代入實際場景中對應線段,求出對應的點。

normalize(thickness:Number):void——將 (0,0) 和當前點之間的線段縮放為設定的長度。這個實際上就是設置矢量的大小的方法。得到的結果是矢量的大小變為設定值,x、y值改變了,但是矢量的方向不變。

從Point類的屬性和方法看,Point類實際上是一個徹頭徹尾的矢量類,它幾乎包含了所有關于矢量的基本運算。所以,要計算矢量,應優先考慮使用Point類。

PS:順帶說說globalToLocal和localToGlobal,這兩個方法在as3里是DisplayObject的方法,它們可以方便地隨意地轉換不同顯示對象中的相對坐標,它的參數和返回值都是Point類實例,所以在as3里應用Point類計算點與點間的關系,更具優勢。例如mc1中有一點p1(x1,y1),mc2中有一點p2(x2,y2),如果mc1和mc2的關系很復雜,要求p1到p2的距離,如果不用這兩個方法,這個運算就很復雜,用上它們就簡單得多了,所求的距離d=Point.distance(p2,mc2.globalToLocal(mc1.localToGlobal(p1)));
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
性欧美暴力猛交69hd| 欧美激情亚洲激情| 欧美三级免费观看| 俺去了亚洲欧美日韩| 国产主播精品在线| 久久中文久久字幕| 精品香蕉在线观看视频一| 亚洲香蕉成人av网站在线观看| 一二美女精品欧洲| 久久久亚洲网站| 久久精品视频99| 欧美日韩裸体免费视频| 国产一区二区香蕉| 亚洲美女动态图120秒| 欧美精品性视频| 福利二区91精品bt7086| 国产精品免费久久久久影院| 欧美精品在线播放| 亚洲男人天堂九九视频| 国产视频久久久久| 亚洲片国产一区一级在线观看| 久久视频这里只有精品| 久久久久久久久久久91| 北条麻妃99精品青青久久| 久久天天躁狠狠躁夜夜躁| 欧美成人精品不卡视频在线观看| 按摩亚洲人久久| 中日韩美女免费视频网站在线观看| 亚洲欧洲一区二区三区久久| 97久久久免费福利网址| 国产乱肥老妇国产一区二| 午夜精品久久久久久久久久久久久| 亚洲性xxxx| 欧美成人免费全部观看天天性色| 国产一区二区在线免费视频| 精品久久中文字幕久久av| 中文字幕欧美日韩在线| 一本大道香蕉久在线播放29| 国产乱人伦真实精品视频| 搡老女人一区二区三区视频tv| 国产精品一区二区久久国产| 日韩中文娱乐网| 亚洲片在线观看| 国产精品r级在线| 亚洲成av人片在线观看香蕉| …久久精品99久久香蕉国产| 精品日韩中文字幕| 国产成人精品电影久久久| 亚洲国产精品99久久| 国产一区二区丝袜高跟鞋图片| 国产美女久久精品香蕉69| 久久精品99久久香蕉国产色戒| 国产美女久久精品| 国产精品一区二区性色av| 国产日韩av在线播放| 欧美日韩在线视频首页| 亚洲精品一二区| 亚洲第一精品夜夜躁人人爽| 欧美激情精品久久久久久| 91精品国产乱码久久久久久蜜臀| 在线视频国产日韩| 亚洲男人的天堂网站| 日韩av最新在线观看| 久久亚洲精品网站| 大伊人狠狠躁夜夜躁av一区| 久久精品国产一区二区电影| 久久国产精品99国产精| 日韩av电影免费观看高清| 国产91色在线免费| 欧美性高潮在线| 久久久精品亚洲| 最近中文字幕日韩精品| 欧美精品亚州精品| 81精品国产乱码久久久久久| 亚洲aa中文字幕| 在线观看国产精品日韩av| 国产成人精品久久二区二区91| 在线看福利67194| 91理论片午午论夜理片久久| 92裸体在线视频网站| 成人激情视频在线| 亚洲成人久久久久| 黑人精品xxx一区一二区| 亚洲黄色在线看| 久久久国产精品亚洲一区| 国产精品丝袜久久久久久不卡| 一区二区三区四区精品| 欧美精品福利在线| 亚洲奶大毛多的老太婆| 亚洲码在线观看| 最近2019中文字幕第三页视频| 亚洲一区二区免费| 97精品欧美一区二区三区| 久久久人成影片一区二区三区观看| 91精品久久久久久| 成人精品久久一区二区三区| 91探花福利精品国产自产在线| 欧美精品日韩三级| 中文字幕精品在线视频| 亚洲国产精品美女| 国产成人午夜视频网址| 疯狂蹂躏欧美一区二区精品| 国产日韩中文字幕在线| 97视频在线观看成人| 久久久久久亚洲精品| 69**夜色精品国产69乱| 日本精品久久中文字幕佐佐木| 日韩中文字幕在线看| 视频在线观看一区二区| 高清亚洲成在人网站天堂| 5566日本婷婷色中文字幕97| 欧美猛少妇色xxxxx| 久久亚洲综合国产精品99麻豆精品福利| 久久久久久久999精品视频| 国产精品女人久久久久久| 亚洲欧美一区二区激情| 成人免费观看49www在线观看| 国产在线98福利播放视频| 久久久伊人欧美| 亚洲精品自拍第一页| 96pao国产成视频永久免费| 亚洲国产精品嫩草影院久久| 亚洲电影免费观看| 欧美成人精品激情在线观看| 日韩av一区二区在线| 91av在线免费观看| 久久影院在线观看| 久久精品视频在线观看| 欧美激情videos| 福利视频导航一区| 国产精品成av人在线视午夜片| 亚洲一区二区在线播放| 日韩电影大片中文字幕| 久久99精品久久久久久琪琪| 日韩精品免费一线在线观看| 日韩av在线高清| 亚洲自拍小视频免费观看| 一区二区欧美日韩视频| 国产精品成人av性教育| 国产精品自拍偷拍视频| 国产在线播放91| 国产一区二区三区高清在线观看| 欧美午夜影院在线视频| 国产精品自产拍在线观看| 亚洲毛茸茸少妇高潮呻吟| 日韩免费不卡av| 91久久在线观看| 国产ts人妖一区二区三区| 国产91精品青草社区| 欧美日韩成人精品| 亚洲国产精品人人爽夜夜爽| 亚洲天堂日韩电影| 欧美中文字幕视频| 亚洲高清在线观看| 欧美尤物巨大精品爽| 国产精品免费一区| 国产精品久久久久久久久久东京| 成人激情春色网| 韩日欧美一区二区| 国产精品激情av电影在线观看| 成人网在线观看| 久久亚洲精品网站| 国产亚洲精品激情久久| 最近2019中文免费高清视频观看www99|