コード例 #1
0
        /// <inheritdoc />
        /// <summary>
        /// Показ блока (по границе) пользователю с миганием
        /// С проверкой чертежа и блокировкой.
        /// </summary>
        public virtual void Show()
        {
            var doc = Application.DocumentManager.MdiActiveDocument;

            if (doc == null)
            {
                return;
            }
            if (doc.Database != IdBlRef.Database)
            {
                Application.ShowAlertDialog(
                    $"Переключитесь на чертеж {Path.GetFileNameWithoutExtension(IdBlRef.Database.Filename)}");
                return;
            }

            using (doc.LockDocument())
            {
                var ed  = doc.Editor;
                var ext = ExtentsToShow;
                if (_isNullExtents)
                {
                    Application.ShowAlertDialog("Границы объекта не определены.");
                }

                ed.Zoom(ext);
                IdBlRef.FlickObjectHighlight(2, 100, 100);
            }
        }
コード例 #2
0
ファイル: Pile.cs プロジェクト: 15831944/KR_MN_Acad
 public void Show(Editor ed)
 {
     if (!_extendsHasCalc)
     {
         _extendsHasCalc = true;
         using (var blRef = IdBlRef.Open(OpenMode.ForRead, false, true) as BlockReference)
         {
             try
             {
                 _extents = blRef.GeometricExtents;
             }
             catch
             {
                 var ptMin = new Point3d(Position.X - Side, Position.Y - Side, 0);
                 var ptMax = new Point3d(Position.X + Side, Position.Y + Side, 0);
                 _extents = new Extents3d(ptMin, ptMax);
             }
         }
     }
     ed.Zoom(_extents);
     IdBlRef.FlickObjectHighlight(2, 100, 100);
 }