public static void AddRect()
{
Document doc = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument;
Database db = doc.Database;
Editor ed = doc.Editor;
using (Transaction trans = db.TransactionManager.StartTransaction())
{
//PromptEntityResult prEnt = ed.GetEntity("\n获取图形");
PromptSelectionResult prSelRes = ed.GetSelection();
if (prSelRes.Status == PromptStatus.OK)
{
ObjectId[] objIds = prSelRes.Value.GetObjectIds();
foreach (var objId in objIds)
{
Entity ent = trans.GetObject(objId, OpenMode.ForRead) as Entity;
Point3d minPt = ent.GeometricExtents.MinPoint;
Point3d maxPt = ent.GeometricExtents.MaxPoint;
Point2d pt1 = new Point2d(maxPt.X, minPt.Y);
Point2d pt2 = new Point2d(minPt.X, maxPt.Y);
Polyline pl = new Polyline();
pl.AddVertexAt(0, new Point2d(minPt.X, minPt.Y), 0, 0, 0);
pl.AddVertexAt(1, pt1, 0, 0, 0);
pl.AddVertexAt(2, new Point2d(maxPt.X, maxPt.Y), 0, 0, 0);
pl.AddVertexAt(3, pt2, 0, 0, 0);
pl.Closed = true;
pl.ColorIndex = 1;
AddEntity.AddEntToModeSpace(db, pl);
}
}
trans.Commit();
}
}