예제 #1
0
        public static IList <Point3d> GetMinimumDiameterRectangle(Entity entity, Transaction tr)
        {
            var reader    = new DwgReader();
            var geomerty  = reader.ReadGeometry(entity, tr);
            var diameter  = new NetTopologySuite.Algorithm.MinimumDiameter(geomerty);
            var rectangle = diameter.GetMinimumRectangle();

            var coordinates = new List <Point3d>();

            foreach (var coordinate in rectangle.Coordinates)
            {
                var point = new Point3d(coordinate.X, coordinate.Y, 0);
                coordinates.Add(point);
            }
            return(coordinates);
        }