- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report
At this time I tried to set screen center. I have some object and I want to set screen position to this object.
What I did:
AcadApplication app = (AcadApplication)Autodesk.AutoCAD.ApplicationServices.Application.AcadApplication;
using (Transaction tr = doc.Database.TransactionManager.StartTransaction())
{
Entity en = (Entity)tr.GetObject(objectId, OpenMode.ForRead); // get my obj by Id
Extents3d ext = en.GeometricExtents;
Point3d p_center = new Point3d( // get center
(ext.MinPoint.X + ext.MaxPoint.X) / 2,
(ext.MinPoint.Y + ext.MaxPoint.Y) / 2,
(ext.MinPoint.Z + ext.MaxPoint.Z) / 2
);
// set center point of current view
ed.UpdateTiledViewportsInDatabase();
ViewportTableRecord viewportTableRec = tr.GetObject(ed.ActiveViewportId, OpenMode.ForWrite) as ViewportTableRecord;
viewportTableRec.CenterPoint = new Point2d(p_center.X, p_center.Y);
ed.UpdateTiledViewportsFromDatabase();
// Ok!
tr.Commit();
}
// set object as selected - it works
doc.Editor.SetImpliedSelection(new ObjectId[] { objectId });
I see that SetImpliedSelection works fine (as I see current object) but screen center is moved to unknown point.
How I can set screen center to my point?
Thanks,
Pavel.
Solved! Go to Solution.