zoukankan      html  css  js  c++  java
  • [转]计算两点间的角度

    /// <summary>

    /// 计算两点间的角度

    /// </summary>

    /// <param name="AOrigin">原点坐标</param>

    /// <param name="APoint">参考点坐标</param>

    /// <param name="APoint">离心率</param>

    /// <returns>返回两点间的角度</returns>

    private double PointToAngle(Point AOrigin, Point APoint, double AEccentricity)

    {

        if (APoint.X == AOrigin.X)

            if (APoint.Y > AOrigin.Y)

                return Math.PI * 0.5;

            else return Math.PI * 1.5;

        else if (APoint.Y == AOrigin.Y)

            if (APoint.X > AOrigin.X)

                return 0;

            else return Math.PI;

        else

        {

            double Result = Math.Atan((AOrigin.Y - APoint.Y) /

                (AOrigin.X - APoint.X) * AEccentricity);

            if ((APoint.X < AOrigin.X) && (APoint.Y > AOrigin.Y))

                return Result + Math.PI;

            else if ((APoint.X < AOrigin.X) && (APoint.Y < AOrigin.Y))

                return Result + Math.PI;

            else if ((APoint.X > AOrigin.X) && (APoint.Y < AOrigin.Y))

                return Result + 2 * Math.PI;

            else return Result;

        }

    } /* PointToAngle */

  • 相关阅读:
    hdoj1251 统计难题 字典树
    nyoj322 sort 归并排序,树状数组
    优先队列 如何使用
    字典树(讲解+模版)
    hdoj1069 Monkey and Banana
    ny10 skilng
    hdoj1075 What Are You Talking About
    hdoj1171 Big Event in HDU
    ny613 免费馅饼
    Spring Boot2.0之Admin-UI分布式微服务监控中心
  • 原文地址:https://www.cnblogs.com/toosuo/p/1281064.html
Copyright © 2011-2022 走看看