Beispiel #1
0
        private DataProvider GetCurrent(bool needToSort = false, bool selected = false)
        {
            //if (this.canvasHandler == null)
            //{
            //    return null;
            //}

            //var tmp = this.canvasHandler.Invoke(needToSort);
            //if (selected)
            //{
            //    tmp = tmp.Where(x => x.IsSelected).ToList();
            //}

            //var machineLayers = GlobalModel.Params.LayerConfig.LayerCrafts.Where(x => !x.Value.IsUnprocessed).Select(x => x.Key);
            //if (machineLayers.Any())
            //{
            //    tmp = tmp.Where(x => machineLayers.Contains(((DrawObjectBase)x).LayerId)).ToList();
            //}

            var tmp = this.GetDrawObjects(needToSort, selected);

            if (tmp == null)
            {
                return(null);
            }

            var data    = new DataProvider();
            var builder = new DataBuilder(data, tmp);

            DataDirector.Bulid(builder);

            return(data);
        }
Beispiel #2
0
        private RectangleF GetRect()
        {
            var data    = new DataProvider();
            var builder = new DataBuilder(data, this.dataModel.DrawingLayer.Objects);

            DataDirector.Bulid(builder);
            if (data == null || data.IsEmpty)
            {
                return(new RectangleF());
            }

            var   points = data.OutLine.Points;
            var   rect   = new RectangleF(points[0], new SizeF(points[2].X - points[1].X, points[1].Y - points[0].Y));
            float x      = (float)((1.2 * rect.Width - rect.Width) / 2.0);
            float y      = (float)((1.2 * rect.Height - rect.Height) / 2.0);

            rect.Inflate(x, y);
            return(rect);
        }