コード例 #1
0
        public bool GenerateIdealCurve(IdealCurveScaffold type, CurvesParameters @params, double startX, double endX, int pointsDensity)
        {
            IdealCurve.Points.Clear();
            SeriesAssist.SetDefaultSettings(IdealCurve);
            ArgumentsMaker args = new ArgumentsMaker(startX, endX, pointsDensity);

            switch (type)
            {
            case IdealCurveScaffold.Polynomial:
                SeriesAssist.CopyPoints(CurveMaker.OfPolynomial(args, @params.Polynomial), IdealCurve);
                break;

            case IdealCurveScaffold.Hyperbolic:
                SeriesAssist.CopyPoints(CurveMaker.OfHyperbolic(args, @params.Hyperbolic), IdealCurve);
                break;

            case IdealCurveScaffold.WaveformSine:
                SeriesAssist.CopyPoints(CurveMaker.OfSineWave(args, @params.Waveform), IdealCurve);
                break;

            case IdealCurveScaffold.WaveformSquare:
                SeriesAssist.CopyPoints(CurveMaker.OfSquareWave(args, @params.Waveform), IdealCurve);
                break;

            case IdealCurveScaffold.WaveformTriangle:
                SeriesAssist.CopyPoints(CurveMaker.OfTriangleWave(args, @params.Waveform), IdealCurve);
                break;

            case IdealCurveScaffold.WaveformSawtooth:
                SeriesAssist.CopyPoints(CurveMaker.OfSawtoothWave(args, @params.Waveform), IdealCurve);
                break;
            }

            return(SeriesAssist.IsChartAcceptable(IdealCurve));
        }
コード例 #2
0
 public CurvesDataManager()
 {
     IdealCurve     = new Series();
     ModifiedCurves = new List <Series>();
     AverageCurve   = new Series();
     MeansParams    = new MeansParameters();
     SeriesAssist.SetDefaultSettings(IdealCurve);
     SeriesAssist.SetDefaultSettings(AverageCurve);
     ModifiedCurves.ToList().ForEach(s => SeriesAssist.SetDefaultSettings(s));
 }
コード例 #3
0
        public void PropagateIdealCurve(int curvesNo)
        {
            ModifiedCurves = new List <Series>();

            for (int i = 0; i < curvesNo; i++)
            {
                Series series = new Series();
                SeriesAssist.SetDefaultSettings(series);
                SeriesAssist.CopyPoints(IdealCurve, series);
                ModifiedCurves.Add(series);
            }
        }
コード例 #4
0
ファイル: ChartAssist.cs プロジェクト: vego1mar/PI
 public static void SetDefaultSettings(Chart chart, int chartAreaIndex = 0, int legendIndex = 0, int seriesIndex = 0)
 {
     chart.ChartAreas[chartAreaIndex].AxisX.IntervalType            = DateTimeIntervalType.Number;
     chart.ChartAreas[chartAreaIndex].AxisX.IsLabelAutoFit          = false;
     chart.ChartAreas[chartAreaIndex].AxisX.IsMarginVisible         = false;
     chart.ChartAreas[chartAreaIndex].AxisX.LabelAutoFitMaxFontSize = 8;
     chart.ChartAreas[chartAreaIndex].AxisX.LabelAutoFitMinFontSize = 8;
     chart.ChartAreas[chartAreaIndex].AxisX.LabelAutoFitStyle       = LabelAutoFitStyles.None;
     chart.ChartAreas[chartAreaIndex].AxisX.LabelStyle.Font         = new Font("Consolas", 8F);
     chart.ChartAreas[chartAreaIndex].AxisX.MajorGrid.LineDashStyle = ChartDashStyle.Dot;
     chart.ChartAreas[chartAreaIndex].AxisX.MajorTickMark.Enabled   = false;
     chart.ChartAreas[chartAreaIndex].AxisX.TitleFont               = new Font("Consolas", 8F);
     chart.ChartAreas[chartAreaIndex].AxisY.IntervalType            = DateTimeIntervalType.Number;
     chart.ChartAreas[chartAreaIndex].AxisY.IsLabelAutoFit          = false;
     chart.ChartAreas[chartAreaIndex].AxisY.LabelAutoFitMaxFontSize = 8;
     chart.ChartAreas[chartAreaIndex].AxisY.LabelStyle.Font         = new Font("Consolas", 8F);
     chart.ChartAreas[chartAreaIndex].AxisY.MajorGrid.LineDashStyle = ChartDashStyle.Dot;
     chart.ChartAreas[chartAreaIndex].AxisY.MajorTickMark.Enabled   = false;
     chart.ChartAreas[chartAreaIndex].AxisY.TitleFont               = new Font("Consolas", 8F);
     chart.ChartAreas[chartAreaIndex].BackColor = Color.White;
     chart.ChartAreas[chartAreaIndex].IsSameFontSizeForAllAxes = true;
     chart.Legends[legendIndex].Enabled = false;
     SeriesAssist.SetDefaultSettings(chart.Series[seriesIndex]);
 }