Beispiel #1
0
        public void RemoveEntity()
        {
            if (this is SimplePipeJoint)
            {
                OwnSolution.SimplePipeJoints.Remove(this.BaseObjectId);
            }
            else
            {
                OwnSolution.MultiPipeJoints.Remove(this.BaseObjectId);
            }

            //delete group
            using (Autodesk.AutoCAD.ApplicationServices.DocumentLock docLock = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.LockDocument())
            {
                Database db = HostApplicationServices.WorkingDatabase;
                using (Transaction tr = db.TransactionManager.StartTransaction())
                {
                    Group g = (Group)tr.GetObject(this.BaseObjectId, OpenMode.ForWrite);
                    foreach (var item in g.GetAllEntityIds())
                    {
                        tr.GetObject(item, OpenMode.ForWrite).Erase();
                    }
                    g.Erase();
                    tr.Commit();
                    tr.Dispose();
                }
            }
        }
Beispiel #2
0
 private void InvokeCommandMethod(Action method)
 {
     using (Autodesk.AutoCAD.ApplicationServices.DocumentLock doclock = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.LockDocument())
     {
         Interaction.SetActiveDocFocus();
         method();
     }
 }
        public void RemoveSelf()
        {
            //remove self
            Delete();
            Database db = Autodesk.AutoCAD.ApplicationServices.Core.Application.DocumentManager.MdiActiveDocument.Database;

            using (Autodesk.AutoCAD.ApplicationServices.DocumentLock docLock = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.LockDocument())
            {
                using (Transaction tr = db.TransactionManager.StartTransaction())
                {
                    tr.GetObject(BaseObjectId, OpenMode.ForWrite).Erase();
                    tr.Commit();
                    tr.Dispose();
                }
            }
        }
        public void UpdateScale()
        {
            Autodesk.AutoCAD.EditorInput.Editor ed = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.Editor;
            Database db = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.Database;

            using (Autodesk.AutoCAD.ApplicationServices.DocumentLock docLock = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.LockDocument())
            {
                using (Transaction trans = ed.Document.Database.TransactionManager.StartTransaction())
                {
                    DBObject       obj   = trans.GetObject(this.BaseObjectId, OpenMode.ForWrite);
                    BlockReference block = (BlockReference)obj;
                    block.ScaleFactors = new Scale3d(HeatSourceLayoutApp.globalProperty.BlockScale);
                    trans.Commit();
                    trans.Dispose();
                }
            }
        }