PluginSDK中的角度结构体Angle类图如下所示。
角度结构体主要定义了一个弧度表示角度值的字段:double Radians。还有几个表示角度最大值、最小值、非数值和零角度等字段。定义了一个Degrees属性,分别用数学引擎类的弧度和角度相互转换函数完成Radians字段值的设置与获取。
public double Degrees
{
get { return MathEngine.RadiansToDegrees(this.Radians);}
set { this.Radians = MathEngine.DegreesToRadians(value); }
}
方法中FromRadians和FromDegrees分别实现从弧度和角度为角度结构体角度值的字段double Radians获取相应数值。Abs、IsNaN、Equals、GetHashCode、Normalize、ToStringDms、ToString分别实现获取角度值的绝对值、判断是否为非数值、是否相等、返回哈希码、规范化、转换为度分秒字符串、直接转换为字符串的功能。
重载了加、减、乘、除、等于、不等于、大于和小于等运算符用于角度对象运算。