问题解决了。我使用了错误的代码以编程方式设置全局坐标系
注意:为了使用以下代码,除了添加对AcCoreMgd、AcDbMdg和AcMdg的引用外,还需要添加对ManagedMappi的引用(…Program Files\Autodesk\AutoCAD 2015\Map\ManagedMapPI.dll,将Copy Local设置为False)
这是工作代码:
- // Lock Document
- using (DocumentLock docLock = doc.LockDocument())
- {
- // There is no API to set a coordinate system using AcMapMap
- // The only way you can set the coordinate system is via ProjectModel
- Autodesk.Gis.Map.MapApplication mapApp = Autodesk.Gis.Map.HostMapApplicationServices.Application;
- Autodesk.Gis.Map.Project.ProjectModel projModel = mapApp.ActiveProject;
- ed.WriteMessage("\n BEFORE Current Projection is : " + projModel.Projection + "\n");
- // Set projection to EPSG 4269 (LL83)
- projModel.Projection = "LL83";
- ed.WriteMessage("\n AFTER Current Projection is : " + projModel.Projection + "\n");
- }
|