Subversion Repositories amilis

Rev

Blame | Last modification | View Log | RSS feed

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Drawing/// <summary>
        /// Xanthane is 1/8 Nm
        /// </summary>
        static float Ratio = (float)(8);

        static public void Draw(Graphics g, Pen p)
        {
            DrawLines(g, p, France);
            DrawLines(g, p, Corse);
            DrawLines(g, p, Ile);
            DrawLines(g, p, Ile1);
            DrawLines(g, p, Ile2);
        }

        static private void DrawLines(Graphics g, Pen p, int[] lines)
        {
            for (int i = 0; i < (lines.Length - 2); i = i + 2)
            {
                try
                {
                    g.DrawLine(p, (float)PanAndZoomX(lines[i] / Ratio), (float)PanAndZoomY(lines[i + 1] / Ratio),
                    (float)PanAndZoomX(lines[i + 2] / Ratio), (float)PanAndZoomY(lines[i + 3] / Ratio));
                }
                catch (NullReferenceException ex)
                {
                    ex.ToString();
                }

                /*int p1 = lines[i];
                int p2 = lines[i + 1];
                int p3 = lines[i + 2];
                int p4 = 0;
               
                if ((i+3) < lines.Length)
                    p4 = lines[i + 3];
                else
                    p4 = lines[i + 2];
                 g.DrawLine(p, (float)PanAndZoomX(p1 / Ratio), (float)PanAndZoomY(p2 / Ratio),
                    (float)PanAndZoomX(p3 / Ratio), (float)PanAndZoomY(p4 / Ratio));*/

            }
        }

        #region Delegate Pan And Zoom

        public delegate double PanAndZoom(double input);

        [NonSerialized]
        static public PanAndZoom PanAndZoomX;
        [NonSerialized]
        static public PanAndZoom PanAndZoomY;

        #endregion
    }

}