コード例 #1
0
ファイル: Explorer.cs プロジェクト: AlbertMin/AlbertCAD
        /// <summary>
        /// 一个反转的命令
        /// </summary>
        public ReverseCommand ReversalCommand(IPickFilter pf = null)
        {
            var c = new ReverseCommand();

            c.SetPickFilter(pf);
            DrawingControl.SetCommand(c);
            return(c);
        }
コード例 #2
0
ファイル: Explorer.cs プロジェクト: AlbertMin/AlbertCAD
        /// <summary>
        /// 图形的对齐命令
        /// </summary>
        /// <returns></returns>
        public AlignCommand AlignCommand(IPickFilter pf = null)
        {
            var c = new AlignCommand();

            c.SetPickFilter(pf);
            DrawingControl.SetCommand(c);
            return(c);
        }
コード例 #3
0
ファイル: Explorer.cs プロジェクト: AlbertMin/AlbertCAD
        /// <summary>
        /// 当前图形的偏移命令
        /// </summary>
        /// <returns></returns>
        public OffsetCommand OffsetCommand(IPickFilter pf = null)
        {
            var c = new OffsetCommand();

            c.SetPickFilter(pf);
            DrawingControl.SetCommand(c);
            return(c);
        }
コード例 #4
0
ファイル: DrawingControl.cs プロジェクト: AlbertMin/AlbertCAD
 /// <summary>
 /// 选取指定的线
 /// </summary>
 /// <returns></returns>
 public void Pick(PickType type, IPickFilter filter)
 {
     this.SetPickFilter(filter);
     this.isPick   = true;
     this.pickType = type;
     Cursor        = CursorGetter.Getter(CursorStyle.Pick);
     //首先删除界面上所有的选择对象
     this.RemoveTemporaryVisualsByType(1);
     this.SelectIntersectGeometrys = new List <IntersectGeometry>();
 }
コード例 #5
0
        /// <summary>
        /// 设置当前过滤器
        /// </summary>
        /// <param name="filter"></param>
        public void SetPickFilter(IPickFilter filter)
        {
            if (filter != null)
            {
                List <Geometry2D> gss = this.GetDrawingVisuals();

                //找到不允许选择的图形元素
                List <Geometry2D> gts = gss.FindAll(x => !filter.AllowElement(x));
                //历遍所有的元素
                gts.ForEach(x =>
                {
                    //  x.IsEnabled = false;
                });
            }
        }
コード例 #6
0
ファイル: MirrorCommand.cs プロジェクト: AlbertMin/AlbertCAD
 public void SetPickFilter(IPickFilter f)
 {
     throw new NotImplementedException();
 }