Point2D() public method

public Point2D ( PointF pt ) : PointF
pt System.Drawing.PointF
return System.Drawing.PointF
        public void AddLines(Graphics g, ChartStyle cs)
        {
            // Plot lines:
            foreach (DataSeries ds in DataSeriesList)
            {
                if (ds.LineStyle.IsVisible == true)
                {
                    Pen aPen = new Pen(ds.LineStyle.LineColor, ds.LineStyle.Thickness);
                    aPen.DashStyle = ds.LineStyle.Pattern;
                    if (ds.LineStyle.PlotMethod == LineStyle.PlotLinesMethodEnum.Lines)
                    {
                        for (int i = 1; i < ds.PointList.Count; i++)
                        {
                            if (!ds.IsY2Data)
                            {
                                g.DrawLine(aPen, cs.Point2D((PointF)ds.PointList[i - 1]),
                                                 cs.Point2D((PointF)ds.PointList[i]));
                            }
                            else
                            {
                                g.DrawLine(aPen, cs.Point2DY2((PointF)ds.PointList[i - 1]),
                                                 cs.Point2DY2((PointF)ds.PointList[i]));
                            }
                        }
                    }
                    else if (ds.LineStyle.PlotMethod == LineStyle.PlotLinesMethodEnum.Splines)
                    {
                        ArrayList al = new ArrayList();
                        for (int i = 0; i < ds.PointList.Count; i++)
                        {
                            PointF pt = (PointF)ds.PointList[i];
                            if (!ds.IsY2Data)
                            {
                                if (pt.X >= cs.XLimMin && pt.X <= cs.XLimMax &&
                                    pt.Y >= cs.YLimMin && pt.Y <= cs.YLimMax)
                                {
                                    al.Add(pt);
                                }
                            }
                            else
                            {
                                if (pt.X >= cs.XLimMin && pt.X <= cs.XLimMax &&
                                    pt.Y >= cs.Y2LimMin && pt.Y <= cs.Y2LimMax)
                                {
                                    al.Add(pt);
                                }

                            }
                        }
                        PointF[] pts = new PointF[al.Count];
                        for (int i = 0; i < pts.Length; i++)
                        {
                            if (!ds.IsY2Data)
                            {
                                pts[i] = cs.Point2D((PointF)(al[i]));
                            }
                            else
                            {
                                pts[i] = cs.Point2DY2((PointF)(al[i]));
                            }
                        }
                        g.DrawCurve(aPen, pts);
                    }
                    aPen.Dispose();
                }
            }

            // Plot Symbols:
            foreach (DataSeries ds in DataSeriesList)
            {
                for (int i = 0; i < ds.PointList.Count; i++)
                {
                    PointF pt = (PointF)ds.PointList[i];
                    if (!ds.IsY2Data)
                    {
                        if (pt.X >= cs.XLimMin && pt.X <= cs.XLimMax &&
                            pt.Y >= cs.YLimMin && pt.Y <= cs.YLimMax)
                        {
                            ds.SymbolStyle.DrawSymbol(g, cs.Point2D((PointF)ds.PointList[i]));
                        }
                    }
                    else
                    {
                        if (pt.X >= cs.XLimMin && pt.X <= cs.XLimMax &&
                            pt.Y >= cs.Y2LimMin && pt.Y <= cs.Y2LimMax)
                        {
                            ds.SymbolStyle.DrawSymbol(g, cs.Point2DY2((PointF)ds.PointList[i]));
                        }
                    }
                }
            }
        }
Exemplo n.º 2
0
        public void AddLines(Graphics g, ChartStyle cs)
        {
            // Plot lines:
            foreach (DataSeries ds in DataSeriesList)
            {
                if (ds.LineStyle.IsVisible == true)
                {
                    Pen aPen = new Pen(ds.LineStyle.LineColor, ds.LineStyle.Thickness);
                    aPen.DashStyle = ds.LineStyle.Pattern;
                    if (ds.LineStyle.PlotMethod == LineStyle.PlotLinesMethodEnum.Lines)
                    {
                        for (int i = 1; i < ds.PointList.Count; i++)
                        {
                            if (!ds.IsY2Data)
                            {
                                g.DrawLine(aPen, cs.Point2D((PointF)ds.PointList[i - 1]),
                                           cs.Point2D((PointF)ds.PointList[i]));
                            }
                            else
                            {
                                g.DrawLine(aPen, cs.Point2DY2((PointF)ds.PointList[i - 1]),
                                           cs.Point2DY2((PointF)ds.PointList[i]));
                            }
                        }
                    }
                    else if (ds.LineStyle.PlotMethod == LineStyle.PlotLinesMethodEnum.Splines)
                    {
                        ArrayList al = new ArrayList();
                        for (int i = 0; i < ds.PointList.Count; i++)
                        {
                            PointF pt = (PointF)ds.PointList[i];
                            if (!ds.IsY2Data)
                            {
                                if (pt.X >= cs.XLimMin && pt.X <= cs.XLimMax &&
                                    pt.Y >= cs.YLimMin && pt.Y <= cs.YLimMax)
                                {
                                    al.Add(pt);
                                }
                            }
                            else
                            {
                                if (pt.X >= cs.XLimMin && pt.X <= cs.XLimMax &&
                                    pt.Y >= cs.Y2LimMin && pt.Y <= cs.Y2LimMax)
                                {
                                    al.Add(pt);
                                }
                            }
                        }
                        PointF[] pts = new PointF[al.Count];
                        for (int i = 0; i < pts.Length; i++)
                        {
                            if (!ds.IsY2Data)
                            {
                                pts[i] = cs.Point2D((PointF)(al[i]));
                            }
                            else
                            {
                                pts[i] = cs.Point2DY2((PointF)(al[i]));
                            }
                        }
                        g.DrawCurve(aPen, pts);
                    }
                    aPen.Dispose();
                }
            }

            // Plot Symbols:
            foreach (DataSeries ds in DataSeriesList)
            {
                for (int i = 0; i < ds.PointList.Count; i++)
                {
                    PointF pt = (PointF)ds.PointList[i];
                    if (!ds.IsY2Data)
                    {
                        if (pt.X >= cs.XLimMin && pt.X <= cs.XLimMax &&
                            pt.Y >= cs.YLimMin && pt.Y <= cs.YLimMax)
                        {
                            ds.SymbolStyle.DrawSymbol(g, cs.Point2D((PointF)ds.PointList[i]));
                        }
                    }
                    else
                    {
                        if (pt.X >= cs.XLimMin && pt.X <= cs.XLimMax &&
                            pt.Y >= cs.Y2LimMin && pt.Y <= cs.Y2LimMax)
                        {
                            ds.SymbolStyle.DrawSymbol(g, cs.Point2DY2((PointF)ds.PointList[i]));
                        }
                    }
                }
            }
        }