public override async Task <TCurveChart> MapToModel(SnapshotCurveChart snapshot, SimulationAnalysisContext simulationAnalysisContext)
        {
            var curveChart = ChartFactoryFunc().WithId(_idGenerator.NewId());

            MapSnapshotPropertiesToModel(snapshot, curveChart);
            await _chartMapper.MapToModel(snapshot, new ChartSnapshotContext(curveChart, simulationAnalysisContext));

            await updateChartAxes(curveChart, snapshot.Axes, simulationAnalysisContext);
            await updateChartCurves(curveChart, snapshot.Curves, simulationAnalysisContext);

            return(curveChart);
        }
Beispiel #2
0
        public override async Task <ModelPopulationAnalysisChart> MapToModel(SnapshotPopulationAnalysisChart snapshot, SimulationAnalysisContext simulationAnalysisContext)
        {
            var populationAnalysisChart = _populationAnalysisChartFactory.Create(snapshot.Type);

            MapSnapshotPropertiesToModel(snapshot, populationAnalysisChart);
            populationAnalysisChart.PrimaryXAxisSettings = snapshot.XAxisSettings;
            populationAnalysisChart.PrimaryYAxisSettings = snapshot.YAxisSettings;
            snapshot.SecondaryYAxisSettings.Each(populationAnalysisChart.AddSecondaryAxis);

            await _chartMapper.MapToModel(snapshot, populationAnalysisChart);

            await _populationAnalysisMapper.MapToModel(snapshot.Analysis, populationAnalysisChart.BasePopulationAnalysis);

            var observedDataCollection = await _observedDataCollectionMappper.MapToModel(snapshot.ObservedDataCollection, simulationAnalysisContext);

            populationAnalysisChart.ObservedDataCollection.UpdateFrom(observedDataCollection);
            return(populationAnalysisChart);
        }