示例#1
0
        public List <GDIObject> GetObjects(RectangleF rc, GDICanvasSelectionMode selectMode = GDICanvasSelectionMode.Normal)
        {
            var objs = new List <GDIObject>();

            foreach (GDIObject obj in Objects)
            {
                switch (selectMode)
                {
                case GDICanvasSelectionMode.Strict:
                {
                    if (obj.X + obj.Width < rc.X + rc.Width &&
                        obj.Y + obj.Height < rc.Y + rc.Height &&
                        obj.X > rc.X && obj.Y > rc.Y)
                    {
                        objs.Add(obj);
                    }
                } break;

                case GDICanvasSelectionMode.Normal:
                {
                    if ((obj.X + obj.Width > rc.X && obj.Y + obj.Height > rc.Y) ||
                        (obj.X < rc.X + rc.Width && obj.Y < rc.Y + rc.Height))
                    {
                        objs.Add(obj);
                    }
                } break;
                }
            }

            return(objs);
        }
示例#2
0
        public List<GDIObject> GetObjects(RectangleF rc, GDICanvasSelectionMode selectMode = GDICanvasSelectionMode.Normal)
        {
            var objs = new List<GDIObject>();

            foreach (GDIObject obj in Objects)
            {
                switch (selectMode)
                {
                    case GDICanvasSelectionMode.Strict:
                        {
                            if (obj.X + obj.Width < rc.X + rc.Width &&
                                obj.Y + obj.Height < rc.Y + rc.Height &&
                                obj.X > rc.X && obj.Y > rc.Y)
                                objs.Add(obj);

                        } break;
                    case GDICanvasSelectionMode.Normal:
                        {
                            if ((obj.X + obj.Width > rc.X && obj.Y + obj.Height > rc.Y) ||
                                (obj.X < rc.X + rc.Width && obj.Y < rc.Y + rc.Height))
                                objs.Add(obj);
                        } break;
                }
            }

            return objs;
        }