Example #1
0
        public float GetHeadingFromTo(Vector3 from, Vector3 to)
        {
            float result;

            if (from == to)
            {
                result = 0f;
            }
            else
            {
                Vector3 northPolePos = this.NorthPolePos;
                Vector3 from2;
                Vector3 rhs;
                WorldRendererUtility.GetTangentialVectorFacing(from, northPolePos, out from2, out rhs);
                Vector3 vector;
                Vector3 vector2;
                WorldRendererUtility.GetTangentialVectorFacing(from, to, out vector, out vector2);
                float num  = Vector3.Angle(from2, vector);
                float num2 = Vector3.Dot(vector, rhs);
                if (num2 < 0f)
                {
                    num = 360f - num;
                }
                result = num;
            }
            return(result);
        }
        public float GetHeadingFromTo(Vector3 from, Vector3 to)
        {
            if (from == to)
            {
                return(0f);
            }
            Vector3 northPolePos = NorthPolePos;

            WorldRendererUtility.GetTangentialVectorFacing(from, northPolePos, out var forward, out var right);
            WorldRendererUtility.GetTangentialVectorFacing(from, to, out var forward2, out var _);
            float num = Vector3.Angle(forward, forward2);

            if (Vector3.Dot(forward2, right) < 0f)
            {
                num = 360f - num;
            }
            return(num);
        }
        public float GetHeadingFromTo(Vector3 from, Vector3 to)
        {
            if (from == to)
            {
                return(0f);
            }
            Vector3 northPolePos = this.NorthPolePos;
            Vector3 from2        = default(Vector3);
            Vector3 rhs          = default(Vector3);

            WorldRendererUtility.GetTangentialVectorFacing(from, northPolePos, out from2, out rhs);
            Vector3 vector  = default(Vector3);
            Vector3 vector2 = default(Vector3);

            WorldRendererUtility.GetTangentialVectorFacing(from, to, out vector, out vector2);
            float num  = Vector3.Angle(from2, vector);
            float num2 = Vector3.Dot(vector, rhs);

            if (num2 < 0.0)
            {
                num = (float)(360.0 - num);
            }
            return(num);
        }