安卓自定義View基礎-角度與弧度

轉自:http://www.gcssloop.com/customview/AngleAndRadian

安卓中角度(angle)與弧度(radian)的有關問題。
一.前言
1.爲什麼講這個?

在我們自定義View,尤其是製作一些複雜炫酷的效果的時候,實際上是將一些簡單的東西通過數學上精密的計算組合到一起形成的效果。

這其中可能會涉及到畫布的相關操作(旋轉),以及一些正餘弦函數的計算等,這些內容就會用到一些角度、弧度相關的知識。
2.爲什麼對角的描述存在角度與弧度兩種單位?

簡單來說就是爲了方便,爲了精確描述一個角的大小引入了角度與弧度的概念。

由於兩者進制是不同的(角度是60進制,弧度是10進制),在合適的地方使用合適的單位來描述會更加方便。

例如:角度是60進位制,遇到30°6′這樣的角,應該轉化爲10進制的30.1°。但弧度就不需要,因爲弧度本身就是十進制的實數。

二.角度與弧度的定義

角度和弧度一樣都是描述角的一種度量單位,下面是它們的定義:
名稱 定義
角度 兩條射線從圓心向圓周射出,形成一個夾角和夾角正對的一段弧。當這段弧長正好等於圓周長的360分之一時,兩條射線的夾角的大小爲1度.
弧度 兩條射線從圓心向圓周射出,形成一個夾角和夾角正對的一段弧。當這段弧長正好等於圓的半徑時,兩條射線的夾角大小爲1弧度.

如圖:

角度示意圖弧度示意圖
三.角度和弧度的換算關係

圓一週對應的角度爲360度(角度),對應的弧度爲2π弧度。

故得等價關係:360(角度) = 2π(弧度) ==> 180(角度) = π(弧度)

由等價關係可得如下換算公式:

rad 是弧度, deg 是角度

公式 例子
rad = deg x π / 180 2π = 360 x π / 180
deg = rad x 180 / π 360 = 2π x 180 / π

維基百科的公式:

rad 是弧度, deg 是角度

四.一些細節問題

由於默認屏幕座標系和常見數學座標系的小差別(座標系問題點這裏),所以在角上必然也會存在一些區別,例如:

在常見的數學座標系中角度增大方向爲逆時針,

在默認的屏幕座標系中角度增大方向爲順時針。

角度增大方向
參考文章

◎本系列相關文章

這裏寫圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章