public Transform ( System.Coordinate coordinate ) : System.Coordinate | ||
coordinate | System.Coordinate | |
return | System.Coordinate |
/// <summary> /// Function to transform <paramref name="c"/> using <paramref name="transform"/> /// </summary> /// <param name="c">The array of coordinates</param> /// <param name="transform">The transformation</param> /// <returns>An array of transformed coordinates</returns> private static Coordinate[] TransformCoordinates(Coordinate[] c, MathTransform transform) { var res = new Coordinate[c.Length]; for (var i = 0; i < c.Length; i++) { var ordinates = transform.Transform(c[i].ToDoubleArray()); res[i] = new Coordinate(ordinates[0], ordinates[1]); } return(res); }
/// <summary> /// Transforms a <see cref="Envelope"/>. /// </summary> /// <param name="box">BoundingBox to transform</param> /// <param name="transform">Math Transform</param> /// <returns>Transformed object</returns> public static Envelope TransformBox(Envelope box, MathTransform transform) { if (box == null) { return(null); } var corners = new [] { transform.Transform(box.MinX, box.MinY), transform.Transform(box.MinX, box.MaxY), transform.Transform(box.MaxX, box.MinY), transform.Transform(box.MaxX, box.MaxY) }; var result = new Envelope(new Coordinate(corners[0].x, corners[0].y)); for (var i = 1; i < 4; i++) { result.ExpandToInclude(new Coordinate(corners[i].x, corners[i].y)); } return(result); }
/// <summary> /// Function to transform a <paramref name="c"/> using <paramref name="transform"/> /// </summary> /// <param name="c">The coordinate</param> /// <param name="transform">The transformation</param> /// <returns>A transformed coordinate</returns> public static Coordinate TransformCoordinate(Coordinate c, MathTransform transform) { var ordinates = transform.Transform(c.ToDoubleArray()); return(new Coordinate(ordinates[0], ordinates[1])); }