Beispiel #1
0
        public void Cmd_RcUpdate()
        {
            if (!LicensingAgent.Check())
            {
                return;
            }
            var acCurDoc = Application.DocumentManager.MdiActiveDocument;
            var acCurDb  = acCurDoc.Database;
            var acCurEd  = acCurDoc.Editor;

            using (var acTrans = acCurDb.TransactionManager.StartTransaction())
            {
                var objIds = acCurEd.SelectAllOfType("3DSOLID", acTrans);

                using (var pWorker = new ProgressAgent("Updating Solids:", objIds.Length))
                {
                    foreach (var obj in objIds)
                    {
                        if (!pWorker.Progress())
                        {
                            acTrans.Abort();
                            return;
                        }

                        var acSol = acTrans.GetObject(obj, OpenMode.ForRead) as Solid3d;
                        if (acSol == null)
                        {
                            continue;
                        }

                        acSol.Update(acCurDb, acTrans);
                    }
                }

                acCurEd.WriteMessage($"\n{objIds.Length} objects updated.");
                acTrans.Commit();
            }

            RcLeader.UpdateMleaders();
        }
Beispiel #2
0
 public void Cmd_RcUpdLeaders()
 {
     RcLeader.UpdateMleaders();
 }