距離上次發(fā)布已經(jīng)有了很長(zhǎng)一段時(shí)間,期間由于各種原因沒(méi)有更新這方面的技術(shù)分享,在這里深表遺憾。在MMO或其他的游戲中,會(huì)有針對(duì)各種形狀的計(jì)算,通常在攻擊區(qū)域里不會(huì)很復(fù)雜,常見(jiàn)的為矩形、圓形、扇形。今天分享的是判斷一個(gè)目標(biāo)點(diǎn)是否在扇形內(nèi)的計(jì)算,用到的是比較簡(jiǎn)單的運(yùn)算,高效率的算法我很盡快更新。

數(shù)學(xué)知識(shí)

   在這里需要大家回顧一下初中以及高中的代數(shù)和平面幾何的知識(shí),想必大部分的朋友在這方面和我一樣幾乎忘記了或是對(duì)這些數(shù)學(xué)知識(shí)感覺(jué)有些頭痛。不過(guò)大家沒(méi)有必要擔(dān)心,在實(shí)際運(yùn)用中,我們都不會(huì)涉及太復(fù)雜的計(jì)算,因?yàn)槲覀儾恍枰非蟮氖志_。

  但是在以下內(nèi)容中,大家需要知道一些基本的定理和公式:勾股定理、余弦定理。

  需要了解弧度和角度的一些轉(zhuǎn)換:角度 = 弧度 * 180.0 / ∏

  一些數(shù)學(xué)函數(shù):atan2、acos等。

  中心線(xiàn):以中心線(xiàn)順、逆時(shí)針展開(kāi)半角,形成一個(gè)完整的目標(biāo)扇形區(qū)域。

  極坐標(biāo)概念:

電腦培訓(xùn),計(jì)算機(jī)培訓(xùn),平面設(shè)計(jì)培訓(xùn),網(wǎng)頁(yè)設(shè)計(jì)培訓(xùn),美工培訓(xùn),Web培訓(xùn),Web前端開(kāi)發(fā)培訓(xùn)

  如上圖坐標(biāo)點(diǎn)A的平面坐標(biāo)為(7.96, 5.43),對(duì)應(yīng)的極坐標(biāo)為(ρ, θ)

  相對(duì)坐標(biāo)的概念:

電腦培訓(xùn),計(jì)算機(jī)培訓(xùn),平面設(shè)計(jì)培訓(xùn),網(wǎng)頁(yè)設(shè)計(jì)培訓(xùn),美工培訓(xùn),Web培訓(xùn),Web前端開(kāi)發(fā)培訓(xùn)

  在扇形的計(jì)算中,我們的X軸與Y軸的方向與原點(diǎn)的的X軸和Y軸平行,在上圖中,如果以A點(diǎn)作為中心點(diǎn),那么B的相對(duì)坐標(biāo)為(xb - xa, yb - ya)。

 扇形與點(diǎn)的關(guān)系

  示例圖1:

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運(yùn),軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開(kāi)發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式