Pathfinding.NavmeshCut.V3ToIntPoint C# (CSharp) Method

V3ToIntPoint() public method

public V3ToIntPoint ( Vector3 p ) : Pathfinding.ClipperLib.IntPoint
p UnityEngine.Vector3
return Pathfinding.ClipperLib.IntPoint
		public Pathfinding.ClipperLib.IntPoint V3ToIntPoint (Vector3 p) {
			Int3 ip = (Int3)p;
			return new Pathfinding.ClipperLib.IntPoint(ip.x,ip.z);
		}
		

Usage Example

Ejemplo n.º 1
0
        public static void GetContour_Rectangle(List <IntPoint> buffer, Transform tr, Vector2 rectangleSize, Vector3 center, bool useRotation)
        {
            Vector3 a = tr.position;

            if (useRotation)
            {
                Matrix4x4 localToWorldMatrix = tr.localToWorldMatrix;
                buffer.Add(NavmeshCut.V3ToIntPoint(localToWorldMatrix.MultiplyPoint3x4(center + new Vector3(-rectangleSize.x, 0f, -rectangleSize.y) * 0.5f)));
                buffer.Add(NavmeshCut.V3ToIntPoint(localToWorldMatrix.MultiplyPoint3x4(center + new Vector3(rectangleSize.x, 0f, -rectangleSize.y) * 0.5f)));
                buffer.Add(NavmeshCut.V3ToIntPoint(localToWorldMatrix.MultiplyPoint3x4(center + new Vector3(rectangleSize.x, 0f, rectangleSize.y) * 0.5f)));
                buffer.Add(NavmeshCut.V3ToIntPoint(localToWorldMatrix.MultiplyPoint3x4(center + new Vector3(-rectangleSize.x, 0f, rectangleSize.y) * 0.5f)));
            }
            else
            {
                float num  = rectangleSize.x * tr.lossyScale.x;
                float num2 = rectangleSize.y * tr.lossyScale.y;
                a += center.Mul(tr.lossyScale);
                buffer.Add(NavmeshCut.V3ToIntPoint(a + new Vector3(-num, 0f, -num2) * 0.5f));
                buffer.Add(NavmeshCut.V3ToIntPoint(a + new Vector3(num, 0f, -num2) * 0.5f));
                buffer.Add(NavmeshCut.V3ToIntPoint(a + new Vector3(num, 0f, num2) * 0.5f));
                buffer.Add(NavmeshCut.V3ToIntPoint(a + new Vector3(-num, 0f, num2) * 0.5f));
            }
        }
All Usage Examples Of Pathfinding.NavmeshCut::V3ToIntPoint