public class CADHelper { public delegate Coordinate ConverCoordinate(Coordinate oldcoord); public static Coordinate DoConverCoordinate(Coordinate coord, ConverCoordinate convert) { //List<Coordinate> coordinates = new List<Coordinate>() { new Coordinate() { X = 1, Y = 2 }, new Coordinate() { X = 2, Y = 4 } }; return convert(coord); } } public class Coordinate { public double X { get; set; } public double Y { get; set; } } public class CoordConvert { public static Coordinate Convert(Coordinate coordinate) { Coordinate result = new Coordinate(); result.X = coordinate.X + 1000; result.Y = coordinate.Y + 1000; return result; } } void mian() { List<Coordinate> coordinates = new List<Coordinate>() { new Coordinate() { X = 1, Y = 2 }, new Coordinate() { X = 2, Y = 4 } }; Coordinate coordinate= CADHelper.DoConverCoordinate(coordinates[1], CoordConvert.Convert); console.writeline(string.Format("X:{0} Y:{1}", coordinate.X, coordinate.Y)); }
|