Ejemplo n.º 1
0
        public List <AxisGridLine> Execute(GetXAxisGridLinesQuery query)
        {
            var view = _viewRepository.Get <ScatterPlot>();

            var viewExtent = view.GetViewExtent();

            var layout = view.GetLayout();

            var column = layout.XAxisColumn;

            if (column == null)
            {
                return(new List <AxisGridLine>());
            }

            var map = _mapFactory.CreateAxisMap(column, 0d, 1d, layout.XAxisSortOrder);

            var values = column.Values
                         .Distinct()
                         .ToList();

            var axisLines = _gridLineFactory.Create(column.DataType, map, values, viewExtent.Left, viewExtent.Right);

            return(axisLines.ToList());
        }
Ejemplo n.º 2
0
        public void Execute(ZoomToFullExtentCommand command)
        {
            var scatterPlot = _viewRepository.Get <ScatterPlot>();

            var viewExtent = scatterPlot.GetViewExtent();

            var aspectRatio = viewExtent.Width / viewExtent.Height;

            var width = aspectRatio > 1d
                ? DefaultZoom * aspectRatio
                : DefaultZoom;

            var height = aspectRatio > 1d
                ? DefaultZoom
                : DefaultZoom * (1d / aspectRatio);

            var x = DefaultWorldX - (width - DefaultWorldWidth) / 2;
            var y = DefaultWorldY - (height - DefaultWorldHeight) / 2;

            var newViewExtent = new Rect(x, y, width, height);

            scatterPlot.SetViewExtent(newViewExtent);

            DomainEvents.Raise(new ScatterPlotChangedEvent());
        }
        public double Execute(GetUpperSizeQuery query)
        {
            var scatterPlot = _repository.Get <ScatterPlot>();

            var layout = scatterPlot.GetLayout();

            return(layout.UpperSize);
        }
Ejemplo n.º 4
0
        public ColorPalette Execute(GetColorPaletteQuery query)
        {
            var scatterPlot = _repository.Get <ScatterPlot>();

            var layout = scatterPlot.GetLayout();

            var colorPalette = layout.ColorPalette;

            return(colorPalette);
        }
        public void Execute(Action <ScatterPlotLayout, SortOrder> setColumnAction, SortOrder sortOrder)
        {
            var view = _repository.Get <ScatterPlot>();

            var layout = view.GetLayout();

            setColumnAction(layout, sortOrder);

            _eventBus.Raise(new LayoutChangedEvent());
        }
Ejemplo n.º 6
0
        public SortOrder Execute(Func <ScatterPlotLayout, SortOrder> getSortOrderAction)
        {
            var scatterPlot = _repository.Get <ScatterPlot>();

            var layout = scatterPlot.GetLayout();

            var sortOrder = getSortOrderAction(layout);

            return(sortOrder);
        }
        public void Execute(ClearLayoutCommand command)
        {
            var scatterPlot = _repository.Get <ScatterPlot>();

            var layout = scatterPlot.GetLayout();

            layout.Clear();

            _eventBus.Raise(new LayoutChangedEvent());
        }
        public void Execute(Action <ScatterPlotLayout> unsetColumnAction)
        {
            var scatterPlot = _viewRepository.Get <ScatterPlot>();

            var layout = scatterPlot.GetLayout();

            unsetColumnAction(layout);

            _eventBus.Raise(new LayoutChangedEvent());
        }
Ejemplo n.º 9
0
        public List <PlotDto> Execute(GetPlotsQuery query)
        {
            var scatterPlot = _repository.Get <ScatterPlot>();

            var plots = scatterPlot.GetPlots();

            var plotDtos = _adapter.Adapt(plots);

            return(plotDtos);
        }
        public void Execute(SetUpperSizeCommand command)
        {
            var scatterPlot = _repository.Get <ScatterPlot>();

            var layout = scatterPlot.GetLayout();

            layout.UpperSize = command.Value;

            _eventBus.Raise(new LayoutChangedEvent());
        }
        public void Execute(SetColorPaletteCommand command)
        {
            var scatterPlot = _repository.Get <ScatterPlot>();

            var layout = scatterPlot.GetLayout();

            layout.ColorPalette = command.Entity;

            _eventBus.Raise(new LayoutChangedEvent());
        }
        public void Execute(int id, Action <ScatterPlotLayout, Column> setColumnAction)
        {
            var column = _columnRepository.Get(id);

            var view = _viewRepository.Get <ScatterPlot>();

            var layout = view.GetLayout();

            setColumnAction(layout, column);

            _eventBus.Raise(new LayoutChangedEvent());
        }
        public ColumnDto Execute(Func <ScatterPlotLayout, Column> getLayoutColumnAction)
        {
            var scatterPlot = _repository.Get <ScatterPlot>();

            var layout = scatterPlot.GetLayout();

            var column = getLayoutColumnAction(layout);

            var columnDto = _adapter.Adapt(column);

            return(columnDto);
        }
Ejemplo n.º 14
0
        public void Execute(PanCommand command)
        {
            var scatterPlot = _repository.Get <ScatterPlot>();

            var viewExtent = scatterPlot.GetViewExtent();

            viewExtent.X += command.Vector.X;

            viewExtent.Y += command.Vector.Y;

            scatterPlot.SetViewExtent(viewExtent);

            DomainEvents.Raise(new ScatterPlotChangedEvent());
        }
        public void Execute(AutoLayoutColumnCommand command)
        {
            var column = _columnRepository.Get(command.Id);

            var view = _viewRepository.Get <ScatterPlot>();

            var layout = view.GetLayout();

            var setColumnAction = GetSetColumnAction(column, layout);

            setColumnAction(layout, column);

            _eventBus.Raise(new LayoutChangedEvent());
        }
        public async Task <ViewDetail> Get(ViewDataQuery query)
        {
            try
            {
                var result = await ViewRepository.Get(query);

                return(result);
            }
            catch (Exception ex)
            {
                Logger.Error("ViewService.Get failed", this, ex);
            }

            return(null);
        }
Ejemplo n.º 17
0
        public void Execute(ExecuteCommand command)
        {
            var view = _viewRepository.Get <ScatterPlot>();

            var layout = view.GetLayout();

            var linkColumn = layout.LinkColumn;

            if (linkColumn == null)
            {
                return;
            }

            var row = _rowRepository.Get(command.Id);

            var link = (string)row[linkColumn.Index];

            _process.Start(link);
        }
Ejemplo n.º 18
0
        public void Execute(ZoomInCommand command)
        {
            var scatterPlot = _repository.Get <ScatterPlot>();

            var viewExtent = scatterPlot.GetViewExtent();

            var x = viewExtent.X + (command.Center.X * ZoomInFactor) + (viewExtent.Width * ZoomInFactor) / 2;

            var y = viewExtent.Y + (command.Center.Y * ZoomInFactor) + (viewExtent.Height * ZoomInFactor) / 2;

            var width = viewExtent.Width - viewExtent.Width * ZoomInFactor;

            var height = viewExtent.Height - viewExtent.Height * ZoomInFactor;

            var zoomedViewExtent = new Rect(x, y, width, height);

            scatterPlot.SetViewExtent(zoomedViewExtent);

            DomainEvents.Raise(new ScatterPlotChangedEvent());
        }
        public List <SizeLegendItemDto> Execute(GetSizeLegendItemsQuery query)
        {
            var scatterPlot = _repository.Get <ScatterPlot>();

            var layout = scatterPlot.GetLayout();

            var column = layout.SizeColumn;

            if (column == null)
            {
                return(new List <SizeLegendItemDto>());
            }

            var type = column.DataType;

            var map = _mapFactory.CreateSizeMap(column, layout.LowerSize, layout.UpperSize, layout.SizeSortOrder);

            var items = _legendFactory.Create(type, map, column.Values, layout.LowerSize, layout.UpperSize);

            return(items.ToList());
        }
        public void Execute(UpdatePlotsCommand command)
        {
            var filters = _filterRepository.GetAll();

            var query = _rowRepository.GetAll();

            var predicates = filters
                             .Select(p => p.CreatePredicate())
                             .ToList();

            predicates.ForEach(p => query = query.Where(p));

            var rows = query.ToList();

            var scatterPlot = _viewRepository.Get <ScatterPlot>();

            var layout = scatterPlot.GetLayout();

            var plots = _renderer.RenderPlots(rows, layout);

            scatterPlot.SetPlots(plots);
        }
Ejemplo n.º 21
0
        public List <ColorLegendItemDto> Execute(GetColorLegendItemsQuery query)
        {
            var scatterPlot = _viewRepository.Get <ScatterPlot>();

            var layout = scatterPlot.GetLayout();

            var column = layout.ColorColumn;

            if (column == null)
            {
                return(new List <ColorLegendItemDto>());
            }

            var type = column.DataType;

            var palette = layout.ColorPalette;

            var map = _mapFactory.CreateColorMap(column, palette, layout.ColorSortOrder);

            var items = _legendFactory.Create(type, map, column.Values, palette);

            return(items.ToList());
        }
        public void Execute(SetViewExtentCommand command)
        {
            var scatterPlot = _repository.Get <ScatterPlot>();

            scatterPlot.SetViewExtent(command.ViewExtent);
        }
        public Rect Execute(GetViewExtentQuery query)
        {
            var scatterPlot = _repository.Get <ScatterPlot>();

            return(scatterPlot.GetViewExtent());
        }
Ejemplo n.º 24
0
        public async Task <ApiResult <List <ViewDto> > > Get(CancellationToken cancellationToken)
        {
            var userId = HttpContext.User.Identity.GetUserId <int>();

            return(await _viewRepository.Get(userId, cancellationToken));
        }