安卓自定义View基础-角度与弧度

来源:互联网 发布:c语言编译器哪适合新手 编辑:程序博客网 时间:2024/06/05 00:13

转自:http://www.gcssloop.com/customview/AngleAndRadian
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

前言

  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 是角度

这里写图片描述

一些细节问题

在常见的数学坐标系中角度增大方向为逆时针,

在默认的屏幕坐标系中角度增大方向为顺时针。
这里写图片描述

原创粉丝点击