作者微博: @GcsSloop
【本系列相關文章】
安卓中角度(angle)與弧度(radian)的有關問題每强。
一.前言
1.為什么講這個?
在我們自定義View裸违,尤其是制作一些復雜炫酷的效果的時候,實際上是將一些簡單的東西通過數(shù)學上精密的計算組合到一起形成的效果。
這其中可能會涉及到畫布的相關操作(旋轉)村缸,以及一些正余弦函數(shù)的計算等,這些內容就會用到一些角度武氓、弧度相關的知識梯皿。
2.為什么對角的描述存在角度與弧度兩種單位?
簡單來說就是為了方便县恕,為了精確描述一個角的大小引入了角度與弧度的概念东羹。
由于兩者進制是不同的(角度是60進制,弧度是10進制),在合適的地方使用合適的單位來描述會更加方便忠烛。
例如:
角度是60進位制属提,遇到30°6′這樣的角,應該轉化為10進制的30.1°美尸。但弧度就不需要冤议,因為弧度本身就是十進制的實數(shù)旬迹。
二.角度與弧度的定義
角度和弧度一樣都是描述角的一種度量單位,下面是它們的定義:
名稱 | 定義 |
---|---|
角度 | 兩條射線從圓心向圓周射出求类,形成一個夾角和夾角正對的一段弧奔垦。當這段弧長正好等于圓周長的360分之一時,兩條射線的夾角的大小為1度. |
弧度 | 兩條射線從圓心向圓周射出尸疆,形成一個夾角和夾角正對的一段弧椿猎。當這段弧長正好等于圓的半徑時,兩條射線的夾角大小為1弧度. |
如圖:
三.角度和弧度的換算關系
根據(jù)角度和弧度的的定義和圓的相關知識非常容易就能得出兩者的換算公式:
先設圓的周長為C. 半徑為r
C = 2πr;
一周對應的角度為360度(角度)寿弱,對應的弧度為2π弧度犯眠。
故: 180度 = π弧度.
可得:
公式 | 例子 |
---|---|
弧度 = 角度xπ/180 | 2π = 360 x π / 180 |
角度 = 弧度x180/π | 360 = 2π x 180 / π |
維基百科的公式:
rad 是弧度, deg 是角度
四.一些細節(jié)問題
由于默認屏幕坐標系和常見數(shù)學坐標系的小差別(坐標系問題點這里)症革,所以在角上必然也會存在一些區(qū)別筐咧,例如:
在常見的數(shù)學坐標系中角度增大方向為逆時針,
在默認的屏幕坐標系中角度增大方向為順時針。