示例#1
0
        public int GetLength()
        {
            int length = 0x7FFFFFFF;

            if ((uint)(46340 - this.m_x) <= 92680)
            {
                if ((uint)(46340 - this.m_y) <= 92680)
                {
                    int lengthX = this.m_x * this.m_x;
                    int lengthY = this.m_y * this.m_y;

                    if ((uint)lengthY < (lengthX ^ 0x7FFFFFFFu))
                    {
                        length = lengthX + lengthY;
                    }
                }
            }

            return(LogicMath.Sqrt(length));
        }
示例#2
0
        public int GetDistance(LogicVector2 vector2)
        {
            int x        = this.m_x - vector2.m_x;
            int distance = 0x7FFFFFFF;

            if ((uint)(x + 46340) <= 92680)
            {
                int y = this.m_y - vector2.m_y;

                if ((uint)(y + 46340) <= 92680)
                {
                    int distanceX = x * x;
                    int distanceY = y * y;

                    if ((uint)distanceY < (distanceX ^ 0x7FFFFFFFu))
                    {
                        distance = distanceX + distanceY;
                    }
                }
            }

            return(LogicMath.Sqrt(distance));
        }
示例#3
0
 public int GetAngleBetween(int x, int y)
 {
     return(LogicMath.GetAngleBetween(LogicMath.GetAngle(this.m_x, this.m_y), LogicMath.GetAngle(x, y)));
 }
示例#4
0
 public int GetAngle()
 {
     return(LogicMath.GetAngle(this.m_x, this.m_y));
 }