using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using C1.Web.Wijmo.Controls.C1Maps;
using System.Collections.ObjectModel;
using System.Drawing;
namespace ControlExplorer.C1Maps
{
    public partial class VectorLayer : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                setUriData();
            }
        }


        protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
        {
            switch (DropDownList1.SelectedValue)
            {
                case "Uri":
                    setUriData();
                    break;
                case "Function":
                    setFunctionData();
                    break;
                case "Object":
                    setObjectData();
                    break;
            }
        }

        private void setlayer(C1VectorLayer layer)
        {
            layer.Placemark.LabelVisibility = LabelVisibility.Hidden;
            layer.OnClientMouseEnter = "onMouseEnter";
            layer.OnClientMouseLeave = "onMouseLeave";
        }

        private void setUriData()
        {
            C1Maps1.Zoom = 1;
            C1Maps1.Center = new PointD(0, 0);
            C1Maps1.Layers.Clear();
            var layer = new C1VectorLayer();
            C1Maps1.Layers.Add(layer);

            setlayer(layer);
            layer.DataType = DataType.WijJson;
            layer.DataUrl = "Resources/worldmap.json";
        }

        private void setFunctionData()
        {
            C1Maps1.Zoom = 4;
            C1Maps1.Center = new PointD(88.4, 22.2);
            C1Maps1.Layers.Clear();
            var layer = new C1VectorLayer();
            C1Maps1.Layers.Add(layer);

            setlayer(layer);
            layer.DataType = DataType.WijJson;
            layer.DataFunction = "funcDataSource";
        }

        private void setObjectData()
        {
            C1Maps1.Zoom = 3;
            C1Maps1.Center = new PointD(110.4, 31.2);

            C1Maps1.Layers.Clear();
            var layer = new C1VectorLayer();
            C1Maps1.Layers.Add(layer);

            setlayer(layer);
            layer.DataType = DataType.WijJson;
            var data = new WijJsonData();
            layer.DataWijJson = data;

            foreach (var vector in getVectors())
            {
                data.Vectors.Add(vector);
            }
        }

        private C1VectorPolygon[] getVectors()
        {
            var vectors =new C1VectorPolygon[3];
            vectors[0] = new C1VectorPolygon();
            vectors[0].Fill = Color.FromArgb(0x0b, 0x10, 0x74);
            vectors[0].Name = "China";
            vectors[0].Stroke = Color.FromArgb(0x00, 0x00, 0x00);
            vectors[0].Points.Add(new PointD(110.855d, 19.52888d));
            vectors[0].Points.Add(new PointD(110.4832d, 19.16761d));
            vectors[0].Points.Add(new PointD(110.5255d, 18.80083d));
            vectors[0].Points.Add(new PointD(110.0503d, 18.3852d));
            vectors[0].Points.Add(new PointD(109.7594d, 18.39152d));
            vectors[0].Points.Add(new PointD(109.7036d, 18.19777d));
            vectors[0].Points.Add(new PointD(108.6871d, 18.50562d));
            vectors[0].Points.Add(new PointD(108.6283d, 19.28028d));
            vectors[0].Points.Add(new PointD(109.2939d, 19.76d));
            vectors[0].Points.Add(new PointD(109.1653d, 19.7236d));
            vectors[0].Points.Add(new PointD(109.2572d, 19.89972d));
            vectors[0].Points.Add(new PointD(109.4658d, 19.82861d));
            vectors[0].Points.Add(new PointD(109.6108d, 19.99389d));
            vectors[0].Points.Add(new PointD(110.6655d, 20.13361d));
            vectors[0].Points.Add(new PointD(110.9425d, 19.97861d));
            vectors[0].Points.Add(new PointD(111.0215d, 19.63829d));
            vectors[0].Points.Add(new PointD(110.855d, 19.52888d));

            vectors[1] = new C1VectorPolygon();
            vectors[1].Fill = Color.FromArgb(0x0b, 0x10, 0x74);
            vectors[1].Name = "China";
            vectors[1].Stroke = Color.FromArgb(0x00, 0x00, 0x00);
            vectors[1].Points.Add(new PointD(121.4441,25.13474));
            vectors[1].Points.Add(new PointD(121.5632,25.28361));
            vectors[1].Points.Add(new PointD(122.0004,25.00722));
            vectors[1].Points.Add(new PointD(121.8182,24.85028));
            vectors[1].Points.Add(new PointD(121.8397,24.47638));
            vectors[1].Points.Add(new PointD(121.3556,23.0875));
            vectors[1].Points.Add(new PointD(120.7196,21.92791));
            vectors[1].Points.Add(new PointD(120.6103,22.31277));
            vectors[1].Points.Add(new PointD(120.3071,22.54044));
            vectors[1].Points.Add(new PointD(120.0539,23.04437));
            vectors[1].Points.Add(new PointD(120.1112,23.61708));
            vectors[1].Points.Add(new PointD(121.0017,25.00166));
            vectors[1].Points.Add(new PointD(121.4441, 25.13474));

            vectors[2] = new C1VectorPolygon();
            vectors[2].Fill = Color.FromArgb(0x0b, 0x10, 0x74);
            vectors[2].Name = "China";
            vectors[2].Stroke = Color.FromArgb(0x00, 0x00, 0x00);
            vectors[2].Points.Add(new PointD(88.91693d, 27.32083d));
            vectors[2].Points.Add(new PointD(88.76464d, 27.54243d));
            vectors[2].Points.Add(new PointD(88.83575d, 28.00805d));
            vectors[2].Points.Add(new PointD(88.62435d, 28.1168d));
            vectors[2].Points.Add(new PointD(88.14279d, 27.86605d));
            vectors[2].Points.Add(new PointD(87.19275d, 27.82305d));
            vectors[2].Points.Add(new PointD(86.69527d, 28.11166d));
            vectors[2].Points.Add(new PointD(86.45137d, 27.90888d));
            vectors[2].Points.Add(new PointD(86.19769d, 28.15805d));
            vectors[2].Points.Add(new PointD(86.0054d, 27.88625d));
            vectors[2].Points.Add(new PointD(85.72137d, 28.27916d));
            vectors[2].Points.Add(new PointD(85.11095d, 28.30666d));
            vectors[2].Points.Add(new PointD(85.19518d, 28.59104d));
            vectors[2].Points.Add(new PointD(84.84665d, 28.54444d));
            vectors[2].Points.Add(new PointD(84.48623d, 28.73402d));
            vectors[2].Points.Add(new PointD(84.11651d, 29.26097d));
            vectors[2].Points.Add(new PointD(83.5479d, 29.18902d));
            vectors[2].Points.Add(new PointD(83.19109d, 29.63166d));
            vectors[2].Points.Add(new PointD(82.17525d, 30.06923d));
            vectors[2].Points.Add(new PointD(82.11123d, 30.33444d));
            vectors[2].Points.Add(new PointD(81.42623d, 30.385d));
            vectors[2].Points.Add(new PointD(81.23221d, 30.01194d));
            vectors[2].Points.Add(new PointD(81.02536d, 30.20435d));
            vectors[2].Points.Add(new PointD(80.207d, 30.57552d));
            vectors[2].Points.Add(new PointD(80.25423d, 30.73374d));
            vectors[2].Points.Add(new PointD(79.86304d, 30.96583d));
            vectors[2].Points.Add(new PointD(79.55429d, 30.95708d));
            vectors[2].Points.Add(new PointD(79.08082d, 31.43729d));
            vectors[2].Points.Add(new PointD(78.76825d, 31.30895d));
            vectors[2].Points.Add(new PointD(78.77075d, 31.96847d));
            vectors[2].Points.Add(new PointD(78.47594d, 32.24304d));
            vectors[2].Points.Add(new PointD(78.40595d, 32.5561d));
            vectors[2].Points.Add(new PointD(78.74623d, 32.63902d));
            vectors[2].Points.Add(new PointD(78.9711d, 32.35083d));
            vectors[2].Points.Add(new PointD(79.52874d, 32.75666d));
            vectors[2].Points.Add(new PointD(79.37511d, 33.09944d));
            vectors[2].Points.Add(new PointD(78.93623d, 33.42863d));
            vectors[2].Points.Add(new PointD(78.81387d, 33.52041d));
            vectors[2].Points.Add(new PointD(78.73581d, 34.06833d));
            vectors[2].Points.Add(new PointD(78.98535d, 34.35001d));
            vectors[2].Points.Add(new PointD(78.33707d, 34.6118d));
            vectors[2].Points.Add(new PointD(78.02305d, 35.28069d));
            vectors[2].Points.Add(new PointD(78.0718d, 35.49902d));
            vectors[2].Points.Add(new PointD(77.82393d, 35.50133d));
            vectors[2].Points.Add(new PointD(76.89526d, 35.6125d));
            vectors[2].Points.Add(new PointD(76.55304d, 35.90665d));
            vectors[2].Points.Add(new PointD(76.18061d, 35.81458d));
            vectors[2].Points.Add(new PointD(75.92887d, 36.07082d));
            vectors[2].Points.Add(new PointD(76.04166d, 36.23751d));
            vectors[2].Points.Add(new PointD(75.85984d, 36.66343d));
            vectors[2].Points.Add(new PointD(75.45179d, 36.73169d));
            vectors[2].Points.Add(new PointD(75.39902d, 36.91156d));
            vectors[2].Points.Add(new PointD(75.14787d, 36.99719d));
            vectors[2].Points.Add(new PointD(74.56543d, 37.02782d));
            vectors[2].Points.Add(new PointD(74.39089d, 37.17d));
            vectors[2].Points.Add(new PointD(74.91574d, 37.23733d));
            vectors[2].Points.Add(new PointD(75.18748d, 37.40659d));
            vectors[2].Points.Add(new PointD(74.9036d, 37.65243d));
            vectors[2].Points.Add(new PointD(74.85442d, 38.47256d));
            vectors[2].Points.Add(new PointD(74.35471d, 38.67438d));
            vectors[2].Points.Add(new PointD(73.81401d, 38.61271d));
            vectors[2].Points.Add(new PointD(73.70818d, 38.88653d));
            vectors[2].Points.Add(new PointD(73.85235d, 38.97256d));
            vectors[2].Points.Add(new PointD(73.62005d, 39.23569d));
            vectors[2].Points.Add(new PointD(73.65569d, 39.45483d));
            vectors[2].Points.Add(new PointD(73.95471d, 39.59965d));
            vectors[2].Points.Add(new PointD(73.8429d, 39.76896d));
            vectors[2].Points.Add(new PointD(73.99096d, 40.04202d));
            vectors[2].Points.Add(new PointD(74.88089d, 40.32792d));
            vectors[2].Points.Add(new PointD(74.8588d, 40.51723d));
            vectors[2].Points.Add(new PointD(75.23394d, 40.45042d));
            vectors[2].Points.Add(new PointD(75.58284d, 40.64452d));
            vectors[2].Points.Add(new PointD(75.70374d, 40.298d));
            vectors[2].Points.Add(new PointD(76.3344d, 40.35324d));
            vectors[2].Points.Add(new PointD(76.87067d, 41.01258d));
            vectors[2].Points.Add(new PointD(78.08083d, 41.04079d));
            vectors[2].Points.Add(new PointD(78.39554d, 41.39286d));
            vectors[2].Points.Add(new PointD(80.24513d, 42.03954d));
            vectors[2].Points.Add(new PointD(80.23402d, 42.19622d));
            vectors[2].Points.Add(new PointD(80.15804d, 42.63245d));
            vectors[2].Points.Add(new PointD(80.25796d, 42.81565d));
            vectors[2].Points.Add(new PointD(80.57226d, 42.88545d));
            vectors[2].Points.Add(new PointD(80.38405d, 43.02906d));
            vectors[2].Points.Add(new PointD(80.81526d, 43.1683d));
            vectors[2].Points.Add(new PointD(80.36887d, 44.11378d));
            vectors[2].Points.Add(new PointD(80.38499d, 44.6358d));
            vectors[2].Points.Add(new PointD(80.51589d, 44.73408d));
            vectors[2].Points.Add(new PointD(79.87106d, 44.90282d));
            vectors[2].Points.Add(new PointD(81.67928d, 45.3497d));
            vectors[2].Points.Add(new PointD(81.94803d, 45.15748d));
            vectors[2].Points.Add(new PointD(82.56638d, 45.13303d));
            vectors[2].Points.Add(new PointD(82.64624d, 45.43581d));
            vectors[2].Points.Add(new PointD(82.32179d, 45.5831d));
            vectors[2].Points.Add(new PointD(83.03443d, 47.20061d));
            vectors[2].Points.Add(new PointD(83.93026d, 46.97332d));
            vectors[2].Points.Add(new PointD(84.67804d, 46.99361d));
            vectors[2].Points.Add(new PointD(84.80318d, 46.8277d));
            vectors[2].Points.Add(new PointD(85.52257d, 47.0591d));
            vectors[2].Points.Add(new PointD(85.70139d, 47.26221d));
            vectors[2].Points.Add(new PointD(85.53707d, 47.93721d));
            vectors[2].Points.Add(new PointD(85.76596d, 48.39333d));
            vectors[2].Points.Add(new PointD(86.59791d, 48.54277d));
            vectors[2].Points.Add(new PointD(86.87602d, 49.1102d));
            vectors[2].Points.Add(new PointD(87.34821d, 49.09262d));
            vectors[2].Points.Add(new PointD(87.8407d, 49.17295d));
            vectors[2].Points.Add(new PointD(87.89291d, 48.98304d));
            vectors[2].Points.Add(new PointD(87.7611d, 48.88103d));
            vectors[2].Points.Add(new PointD(88.05942d, 48.73499d));
            vectors[2].Points.Add(new PointD(87.99194d, 48.56541d));
            vectors[2].Points.Add(new PointD(88.51679d, 48.40582d));
            vectors[2].Points.Add(new PointD(88.61179d, 48.21193d));
            vectors[2].Points.Add(new PointD(89.08514d, 47.99374d));
            vectors[2].Points.Add(new PointD(90.07096d, 47.88791d));
            vectors[2].Points.Add(new PointD(90.9136d, 46.95221d));
            vectors[2].Points.Add(new PointD(91.07027d, 46.57735d));
            vectors[2].Points.Add(new PointD(90.92151d, 46.29694d));
            vectors[2].Points.Add(new PointD(91.02651d, 46.01735d));
            vectors[2].Points.Add(new PointD(90.68193d, 45.57972d));
            vectors[2].Points.Add(new PointD(90.89694d, 45.25305d));
            vectors[2].Points.Add(new PointD(91.56088d, 45.07729d));
            vectors[2].Points.Add(new PointD(93.5547d, 44.95721d));
            vectors[2].Points.Add(new PointD(94.71735d, 44.35499d));
            vectors[2].Points.Add(new PointD(95.41061d, 44.29416d));
            vectors[2].Points.Add(new PointD(95.34109d, 44.01937d));
            vectors[2].Points.Add(new PointD(95.53339d, 43.99311d));
            vectors[2].Points.Add(new PointD(95.87901d, 43.28388d));
            vectors[2].Points.Add(new PointD(96.38206d, 42.73499d));
            vectors[2].Points.Add(new PointD(97.1654d, 42.79583d));
            vectors[2].Points.Add(new PointD(99.51012d, 42.57194d));
            vectors[2].Points.Add(new PointD(100.8425d, 42.67707d));
            vectors[2].Points.Add(new PointD(101.8147d, 42.50972d));
            vectors[2].Points.Add(new PointD(102.0772d, 42.23333d));
            vectors[2].Points.Add(new PointD(103.4164d, 41.88721d));
            vectors[2].Points.Add(new PointD(104.5267d, 41.87721d));
            vectors[2].Points.Add(new PointD(104.5237d, 41.67068d));
            vectors[2].Points.Add(new PointD(105.0065d, 41.58666d));
            vectors[2].Points.Add(new PointD(107.4758d, 42.46624d));
            vectors[2].Points.Add(new PointD(109.3107d, 42.42999d));
            vectors[2].Points.Add(new PointD(110.1064d, 42.64576d));
            vectors[2].Points.Add(new PointD(110.9897d, 43.31694d));
            vectors[2].Points.Add(new PointD(111.9583d, 43.69221d));
            vectors[2].Points.Add(new PointD(111.4214d, 44.37527d));
            vectors[2].Points.Add(new PointD(111.873d, 45.04944d));
            vectors[2].Points.Add(new PointD(112.4272d, 45.08055d));
            vectors[2].Points.Add(new PointD(112.853d, 44.8461d));
            vectors[2].Points.Add(new PointD(113.638d, 44.74527d));
            vectors[2].Points.Add(new PointD(114.5453d, 45.38943d));
            vectors[2].Points.Add(new PointD(115.7019d, 45.4586d));
            vectors[2].Points.Add(new PointD(116.2104d, 45.72193d));
            vectors[2].Points.Add(new PointD(116.5855d, 46.29583d));
            vectors[2].Points.Add(new PointD(117.3755d, 46.41888d));
            vectors[2].Points.Add(new PointD(117.425d, 46.57069d));
            vectors[2].Points.Add(new PointD(117.8455d, 46.53645d));
            vectors[2].Points.Add(new PointD(118.3147d, 46.73638d));
            vectors[2].Points.Add(new PointD(119.7068d, 46.59895d));
            vectors[2].Points.Add(new PointD(119.9315d, 46.71513d));
            vectors[2].Points.Add(new PointD(119.9225d, 46.90221d));
            vectors[2].Points.Add(new PointD(119.125d, 47.66499d));
            vectors[2].Points.Add(new PointD(118.5393d, 47.99475d));
            vectors[2].Points.Add(new PointD(117.8046d, 48.01125d));
            vectors[2].Points.Add(new PointD(117.3827d, 47.65741d));
            vectors[2].Points.Add(new PointD(116.8747d, 47.88805d));
            vectors[2].Points.Add(new PointD(116.2624d, 47.87819d));
            vectors[2].Points.Add(new PointD(115.9231d, 47.69186d));
            vectors[2].Points.Add(new PointD(115.5944d, 47.91749d));
            vectors[2].Points.Add(new PointD(115.5491d, 48.14353d));
            vectors[2].Points.Add(new PointD(115.8358d, 48.25249d));
            vectors[2].Points.Add(new PointD(115.8111d, 48.52055d));
            vectors[2].Points.Add(new PointD(116.7114d, 49.83047d));
            vectors[2].Points.Add(new PointD(117.8747d, 49.52058d));
            vectors[2].Points.Add(new PointD(118.5746d, 49.92263d));
            vectors[2].Points.Add(new PointD(119.321d, 50.09631d));
            vectors[2].Points.Add(new PointD(119.36d, 50.33028d));
            vectors[2].Points.Add(new PointD(119.1386d, 50.39027d));
            vectors[2].Points.Add(new PointD(120.0641d, 51.62083d));
            vectors[2].Points.Add(new PointD(120.7767d, 52.115d));
            vectors[2].Points.Add(new PointD(120.6259d, 52.34423d));
            vectors[2].Points.Add(new PointD(120.7122d, 52.54267d));
            vectors[2].Points.Add(new PointD(120.0819d, 52.58805d));
            vectors[2].Points.Add(new PointD(120.0314d, 52.76819d));
            vectors[2].Points.Add(new PointD(120.8307d, 53.26374d));
            vectors[2].Points.Add(new PointD(123.6147d, 53.54361d));
            vectors[2].Points.Add(new PointD(124.4933d, 53.18832d));
            vectors[2].Points.Add(new PointD(125.62d, 53.05027d));
            vectors[2].Points.Add(new PointD(125.6573d, 52.8752d));
            vectors[2].Points.Add(new PointD(126.0968d, 52.75722d));
            vectors[2].Points.Add(new PointD(125.9943d, 52.5761d));
            vectors[2].Points.Add(new PointD(126.555d, 52.12694d));
            vectors[2].Points.Add(new PointD(126.4412d, 51.99437d));
            vectors[2].Points.Add(new PointD(126.9139d, 51.38138d));
            vectors[2].Points.Add(new PointD(126.8176d, 51.26555d));
            vectors[2].Points.Add(new PointD(126.9689d, 51.31923d));
            vectors[2].Points.Add(new PointD(126.9331d, 51.05825d));
            vectors[2].Points.Add(new PointD(127.2919d, 50.74138d));
            vectors[2].Points.Add(new PointD(127.334d, 50.31472d));
            vectors[2].Points.Add(new PointD(127.5861d, 50.20856d));
            vectors[2].Points.Add(new PointD(127.515d, 49.80588d));
            vectors[2].Points.Add(new PointD(127.838d, 49.58665d));
            vectors[2].Points.Add(new PointD(128.7119d, 49.58443d));
            vectors[2].Points.Add(new PointD(129.1118d, 49.34676d));
            vectors[2].Points.Add(new PointD(129.4902d, 49.4158d));
            vectors[2].Points.Add(new PointD(130.2246d, 48.86464d));
            vectors[2].Points.Add(new PointD(130.674d, 48.86041d));
            vectors[2].Points.Add(new PointD(130.5236d, 48.60576d));
            vectors[2].Points.Add(new PointD(130.824d, 48.3268d));
            vectors[2].Points.Add(new PointD(130.6598d, 48.10839d));
            vectors[2].Points.Add(new PointD(130.9922d, 47.68721d));
            vectors[2].Points.Add(new PointD(132.5211d, 47.71027d));
            vectors[2].Points.Add(new PointD(133.0827d, 48.09888d));
            vectors[2].Points.Add(new PointD(133.4843d, 48.06888d));
            vectors[2].Points.Add(new PointD(134.4153d, 48.39112d));
            vectors[2].Points.Add(new PointD(134.7408d, 48.26713d));
            vectors[2].Points.Add(new PointD(134.5576d, 47.99207d));
            vectors[2].Points.Add(new PointD(134.7608d, 47.70027d));
            vectors[2].Points.Add(new PointD(134.1825d, 47.32333d));
            vectors[2].Points.Add(new PointD(133.9977d, 46.64017d));
            vectors[2].Points.Add(new PointD(133.8472d, 46.47888d));
            vectors[2].Points.Add(new PointD(133.9016d, 46.25363d));
            vectors[2].Points.Add(new PointD(133.4761d, 45.82347d));
            vectors[2].Points.Add(new PointD(133.4702d, 45.62458d));
            vectors[2].Points.Add(new PointD(133.1491d, 45.45083d));
            vectors[2].Points.Add(new PointD(133.0253d, 45.05694d));
            vectors[2].Points.Add(new PointD(131.8684d, 45.34582d));
            vectors[2].Points.Add(new PointD(131.4691d, 44.97388d));
            vectors[2].Points.Add(new PointD(130.953d, 44.83649d));
            vectors[2].Points.Add(new PointD(131.298d, 44.05193d));
            vectors[2].Points.Add(new PointD(131.1912d, 43.53624d));
            vectors[2].Points.Add(new PointD(131.3104d, 43.38958d));
            vectors[2].Points.Add(new PointD(131.1285d, 42.91645d));
            vectors[2].Points.Add(new PointD(130.4327d, 42.74485d));
            vectors[2].Points.Add(new PointD(130.6044d, 42.42186d));
            vectors[2].Points.Add(new PointD(130.2468d, 42.71416d));
            vectors[2].Points.Add(new PointD(130.2514d, 42.88794d));
            vectors[2].Points.Add(new PointD(129.9046d, 43.00457d));
            vectors[2].Points.Add(new PointD(129.6955d, 42.43582d));
            vectors[2].Points.Add(new PointD(129.3493d, 42.44624d));
            vectors[2].Points.Add(new PointD(128.9269d, 42.02736d));
            vectors[2].Points.Add(new PointD(128.0566d, 42.00124d));
            vectors[2].Points.Add(new PointD(128.3002d, 41.58284d));
            vectors[2].Points.Add(new PointD(128.1529d, 41.38124d));
            vectors[2].Points.Add(new PointD(127.2708d, 41.47249d));
            vectors[2].Points.Add(new PointD(126.9047d, 41.79222d));
            vectors[2].Points.Add(new PointD(126.5661d, 41.61176d));
            vectors[2].Points.Add(new PointD(126.0118d, 40.89694d));
            vectors[2].Points.Add(new PointD(124.8851d, 40.47037d));
            vectors[2].Points.Add(new PointD(124.3736d, 40.09362d));
            vectors[2].Points.Add(new PointD(124.128d, 39.82777d));
            vectors[2].Points.Add(new PointD(123.2422d, 39.8143d));
            vectors[2].Points.Add(new PointD(123.2167d, 39.67388d));
            vectors[2].Points.Add(new PointD(121.648d, 38.99638d));
            vectors[2].Points.Add(new PointD(121.6982d, 38.8611d));
            vectors[2].Points.Add(new PointD(121.1873d, 38.71909d));
            vectors[2].Points.Add(new PointD(121.0887d, 38.91221d));
            vectors[2].Points.Add(new PointD(121.6794d, 39.09013d));
            vectors[2].Points.Add(new PointD(121.5994d, 39.2186d));
            vectors[2].Points.Add(new PointD(121.7511d, 39.35166d));
            vectors[2].Points.Add(new PointD(121.2283d, 39.52847d));
            vectors[2].Points.Add(new PointD(121.533d, 39.62322d));
            vectors[2].Points.Add(new PointD(121.4683d, 39.81138d));
            vectors[2].Points.Add(new PointD(121.881d, 40.00305d));
            vectors[2].Points.Add(new PointD(122.2987d, 40.50562d));
            vectors[2].Points.Add(new PointD(122.0521d, 40.73874d));
            vectors[2].Points.Add(new PointD(121.1775d, 40.92194d));
            vectors[2].Points.Add(new PointD(120.4468d, 40.1961d));
            vectors[2].Points.Add(new PointD(119.5264d, 39.87242d));
            vectors[2].Points.Add(new PointD(118.9715d, 39.15693d));
            vectors[2].Points.Add(new PointD(118.3273d, 39.04083d));
            vectors[2].Points.Add(new PointD(117.889d, 39.19846d));
            vectors[2].Points.Add(new PointD(117.5364d, 38.67555d));
            vectors[2].Points.Add(new PointD(117.6722d, 38.38666d));
            vectors[2].Points.Add(new PointD(118.0281d, 38.16721d));
            vectors[2].Points.Add(new PointD(118.8378d, 38.1529d));
            vectors[2].Points.Add(new PointD(119.0355d, 37.87832d));
            vectors[2].Points.Add(new PointD(118.9566d, 37.30054d));
            vectors[2].Points.Add(new PointD(119.2328d, 37.14361d));
            vectors[2].Points.Add(new PointD(119.7672d, 37.15138d));
            vectors[2].Points.Add(new PointD(119.8529d, 37.35228d));
            vectors[2].Points.Add(new PointD(120.7371d, 37.83499d));
            vectors[2].Points.Add(new PointD(121.58d, 37.42458d));
            vectors[2].Points.Add(new PointD(122.1282d, 37.55256d));
            vectors[2].Points.Add(new PointD(122.1814d, 37.41833d));
            vectors[2].Points.Add(new PointD(122.5586d, 37.39624d));
            vectors[2].Points.Add(new PointD(122.5972d, 37.20999d));
            vectors[2].Points.Add(new PointD(122.4005d, 37.02583d));
            vectors[2].Points.Add(new PointD(122.5392d, 37.01978d));
            vectors[2].Points.Add(new PointD(122.5047d, 36.89361d));
            vectors[2].Points.Add(new PointD(122.1923d, 36.84298d));
            vectors[2].Points.Add(new PointD(121.9566d, 37.00027d));
            vectors[2].Points.Add(new PointD(121.5944d, 36.75889d));
            vectors[2].Points.Add(new PointD(120.7764d, 36.61666d));
            vectors[2].Points.Add(new PointD(120.96d, 36.52638d));
            vectors[2].Points.Add(new PointD(120.8753d, 36.37582d));
            vectors[2].Points.Add(new PointD(120.7062d, 36.42277d));
            vectors[2].Points.Add(new PointD(120.6956d, 36.14075d));
            vectors[2].Points.Add(new PointD(120.3436d, 36.0419d));
            vectors[2].Points.Add(new PointD(120.3078d, 36.26345d));
            vectors[2].Points.Add(new PointD(120.0889d, 36.19998d));
            vectors[2].Points.Add(new PointD(120.2378d, 35.95943d));
            vectors[2].Points.Add(new PointD(119.6475d, 35.57893d));
            vectors[2].Points.Add(new PointD(119.1761d, 34.88499d));
            vectors[2].Points.Add(new PointD(120.2487d, 34.31145d));
            vectors[2].Points.Add(new PointD(120.8858d, 32.97499d));
            vectors[2].Points.Add(new PointD(120.8375d, 32.63889d));
            vectors[2].Points.Add(new PointD(121.3348d, 32.42958d));
            vectors[2].Points.Add(new PointD(121.4412d, 32.11333d));
            vectors[2].Points.Add(new PointD(121.7066d, 32.02166d));
            vectors[2].Points.Add(new PointD(121.8275d, 31.67833d));
            vectors[2].Points.Add(new PointD(120.9444d, 31.86639d));
            vectors[2].Points.Add(new PointD(120.6019d, 32.09361d));
            vectors[2].Points.Add(new PointD(120.099d, 31.94555d));
            vectors[2].Points.Add(new PointD(119.8267d, 32.30638d));
            vectors[2].Points.Add(new PointD(119.6317d, 32.26277d));
            vectors[2].Points.Add(new PointD(120.1364d, 31.90388d));
            vectors[2].Points.Add(new PointD(120.7026d, 31.98833d));
            vectors[2].Points.Add(new PointD(120.7196d, 31.81944d));
            vectors[2].Points.Add(new PointD(121.6681d, 31.30889d));
            vectors[2].Points.Add(new PointD(121.8828d, 30.97986d));
            vectors[2].Points.Add(new PointD(121.8469d, 30.85305d));
            vectors[2].Points.Add(new PointD(120.9915d, 30.56889d));
            vectors[2].Points.Add(new PointD(120.8144d, 30.33555d));
            vectors[2].Points.Add(new PointD(120.4586d, 30.39298d));
            vectors[2].Points.Add(new PointD(120.15d, 30.19694d));
            vectors[2].Points.Add(new PointD(120.5082d, 30.31027d));
            vectors[2].Points.Add(new PointD(120.7916d, 30.06465d));
            vectors[2].Points.Add(new PointD(121.2808d, 30.30458d));
            vectors[2].Points.Add(new PointD(121.6778d, 29.96305d));
            vectors[2].Points.Add(new PointD(122.1196d, 29.88211d));
            vectors[2].Points.Add(new PointD(121.4483d, 29.51167d));
            vectors[2].Points.Add(new PointD(121.9744d, 29.58916d));
            vectors[2].Points.Add(new PointD(121.9336d, 29.19527d));
            vectors[2].Points.Add(new PointD(121.8119d, 29.18388d));
            vectors[2].Points.Add(new PointD(121.7969d, 29.37236d));
            vectors[2].Points.Add(new PointD(121.7444d, 29.19729d));
            vectors[2].Points.Add(new PointD(121.5611d, 29.29111d));
            vectors[2].Points.Add(new PointD(121.4135d, 29.1634d));
            vectors[2].Points.Add(new PointD(121.6914d, 29.02194d));
            vectors[2].Points.Add(new PointD(121.4908d, 28.9359d));
            vectors[2].Points.Add(new PointD(121.6113d, 28.72798d));
            vectors[2].Points.Add(new PointD(121.1464d, 28.84215d));
            vectors[2].Points.Add(new PointD(121.4844d, 28.66993d));
            vectors[2].Points.Add(new PointD(121.6417d, 28.34722d));
            vectors[2].Points.Add(new PointD(121.3419d, 28.13889d));
            vectors[2].Points.Add(new PointD(121.1651d, 28.38277d));
            vectors[2].Points.Add(new PointD(120.9353d, 27.98222d));
            vectors[2].Points.Add(new PointD(120.5908d, 28.07944d));
            vectors[2].Points.Add(new PointD(120.84d, 27.87229d));
            vectors[2].Points.Add(new PointD(120.5812d, 27.59319d));
            vectors[2].Points.Add(new PointD(120.6655d, 27.45083d));
            vectors[2].Points.Add(new PointD(120.5075d, 27.20777d));
            vectors[2].Points.Add(new PointD(120.1896d, 27.28278d));
            vectors[2].Points.Add(new PointD(120.4211d, 27.14764d));
            vectors[2].Points.Add(new PointD(120.0332d, 26.89805d));
            vectors[2].Points.Add(new PointD(120.128d, 26.64465d));
            vectors[2].Points.Add(new PointD(119.8603d, 26.51778d));
            vectors[2].Points.Add(new PointD(120.0733d, 26.78823d));
            vectors[2].Points.Add(new PointD(119.8668d, 26.64888d));
            vectors[2].Points.Add(new PointD(119.7879d, 26.79611d));
            vectors[2].Points.Add(new PointD(119.5503d, 26.75625d));
            vectors[2].Points.Add(new PointD(119.8204d, 26.44222d));
            vectors[2].Points.Add(new PointD(119.5775d, 26.47388d));
            vectors[2].Points.Add(new PointD(119.658d, 26.33861d));
            vectors[2].Points.Add(new PointD(119.9489d, 26.36777d));
            vectors[2].Points.Add(new PointD(119.4253d, 25.99694d));
            vectors[2].Points.Add(new PointD(119.0975d, 26.14041d));
            vectors[2].Points.Add(new PointD(119.354d, 25.93788d));
            vectors[2].Points.Add(new PointD(119.7058d, 25.99069d));
            vectors[2].Points.Add(new PointD(119.5807d, 25.67996d));
            vectors[2].Points.Add(new PointD(119.4522d, 25.68222d));
            vectors[2].Points.Add(new PointD(119.6454d, 25.35333d));
            vectors[2].Points.Add(new PointD(119.3149d, 25.60649d));
            vectors[2].Points.Add(new PointD(119.1053d, 25.42097d));
            vectors[2].Points.Add(new PointD(119.3526d, 25.25319d));
            vectors[2].Points.Add(new PointD(119.2726d, 25.17208d));
            vectors[2].Points.Add(new PointD(118.8749d, 25.2426d));
            vectors[2].Points.Add(new PointD(118.9866d, 24.97194d));
            vectors[2].Points.Add(new PointD(118.5729d, 24.88291d));
            vectors[2].Points.Add(new PointD(118.7631d, 24.75673d));
            vectors[2].Points.Add(new PointD(118.5953d, 24.52861d));
            vectors[2].Points.Add(new PointD(118.2397d, 24.53638d));
            vectors[2].Points.Add(new PointD(118.1688d, 24.68194d));
            vectors[2].Points.Add(new PointD(118.0199d, 24.44024d));
            vectors[2].Points.Add(new PointD(117.7947d, 24.46019d));
            vectors[2].Points.Add(new PointD(118.1237d, 24.25875d));
            vectors[2].Points.Add(new PointD(117.1957d, 23.62437d));
            vectors[2].Points.Add(new PointD(116.9179d, 23.65919d));
            vectors[2].Points.Add(new PointD(116.7603d, 23.355d));
            vectors[2].Points.Add(new PointD(116.5322d, 23.42024d));
            vectors[2].Points.Add(new PointD(116.7871d, 23.23666d));
            vectors[2].Points.Add(new PointD(116.5139d, 23.21083d));
            vectors[2].Points.Add(new PointD(116.4817d, 22.93902d));
            vectors[2].Points.Add(new PointD(115.7978d, 22.73916d));
            vectors[2].Points.Add(new PointD(115.6403d, 22.88416d));
            vectors[2].Points.Add(new PointD(115.5367d, 22.65889d));
            vectors[2].Points.Add(new PointD(115.1614d, 22.80833d));
            vectors[2].Points.Add(new PointD(114.8889d, 22.70277d));
            vectors[2].Points.Add(new PointD(114.8722d, 22.53305d));
            vectors[2].Points.Add(new PointD(114.718d, 22.64027d));
            vectors[2].Points.Add(new PointD(114.7782d, 22.81402d));
            vectors[2].Points.Add(new PointD(114.5208d, 22.69972d));
            vectors[2].Points.Add(new PointD(114.6136d, 22.50423d));
            vectors[2].Points.Add(new PointD(114.2223d, 22.55004d));
            vectors[2].Points.Add(new PointD(114.3885d, 22.42993d));
            vectors[2].Points.Add(new PointD(114.2961d, 22.26056d));
            vectors[2].Points.Add(new PointD(113.9056d, 22.36736d));
            vectors[2].Points.Add(new PointD(114.0337d, 22.50874d));
            vectors[2].Points.Add(new PointD(113.8608d, 22.47444d));
            vectors[2].Points.Add(new PointD(113.606d, 22.83458d));
            vectors[2].Points.Add(new PointD(113.5253d, 23.05027d));
            vectors[2].Points.Add(new PointD(113.8219d, 23.11724d));
            vectors[2].Points.Add(new PointD(113.4793d, 23.05083d));
            vectors[2].Points.Add(new PointD(113.3629d, 22.87986d));
            vectors[2].Points.Add(new PointD(113.5648d, 22.54944d));
            vectors[2].Points.Add(new PointD(113.5527d, 22.18701d));
            vectors[2].Points.Add(new PointD(113.1687d, 22.56701d));
            vectors[2].Points.Add(new PointD(113.3868d, 22.17965d));
            vectors[2].Points.Add(new PointD(113.2226d, 22.04069d));
            vectors[2].Points.Add(new PointD(113.0848d, 22.20485d));
            vectors[2].Points.Add(new PointD(112.94d, 21.8693d));
            vectors[2].Points.Add(new PointD(112.824d, 21.96472d));
            vectors[2].Points.Add(new PointD(112.2819d, 21.70139d));
            vectors[2].Points.Add(new PointD(111.8921d, 21.91611d));
            vectors[2].Points.Add(new PointD(111.9669d, 21.75139d));
            vectors[2].Points.Add(new PointD(111.6762d, 21.77819d));
            vectors[2].Points.Add(new PointD(111.7832d, 21.61264d));
            vectors[2].Points.Add(new PointD(111.644d, 21.5268d));
            vectors[2].Points.Add(new PointD(111.0285d, 21.52528d));
            vectors[2].Points.Add(new PointD(110.5328d, 21.21138d));
            vectors[2].Points.Add(new PointD(110.3944d, 21.37322d));
            vectors[2].Points.Add(new PointD(110.1594d, 20.84381d));
            vectors[2].Points.Add(new PointD(110.3755d, 20.84083d));
            vectors[2].Points.Add(new PointD(110.3239d, 20.64d));
            vectors[2].Points.Add(new PointD(110.5274d, 20.48618d));
            vectors[2].Points.Add(new PointD(110.2789d, 20.24611d));
            vectors[2].Points.Add(new PointD(109.9244d, 20.2336d));
            vectors[2].Points.Add(new PointD(110.0069d, 20.4318d));
            vectors[2].Points.Add(new PointD(109.6629d, 20.92416d));
            vectors[2].Points.Add(new PointD(109.9411d, 21.44694d));
            vectors[2].Points.Add(new PointD(109.6605d, 21.50569d));
            vectors[2].Points.Add(new PointD(109.5733d, 21.72333d));
            vectors[2].Points.Add(new PointD(109.5344d, 21.49499d));
            vectors[2].Points.Add(new PointD(109.1428d, 21.39666d));
            vectors[2].Points.Add(new PointD(109.1375d, 21.58305d));
            vectors[2].Points.Add(new PointD(108.911d, 21.61611d));
            vectors[2].Points.Add(new PointD(108.8702d, 21.79889d));
            vectors[2].Points.Add(new PointD(108.7403d, 21.59888d));
            vectors[2].Points.Add(new PointD(108.4692d, 21.93562d));
            vectors[2].Points.Add(new PointD(108.5125d, 21.59014d));
            vectors[2].Points.Add(new PointD(108.3336d, 21.68999d));
            vectors[2].Points.Add(new PointD(108.2447d, 21.51444d));
            vectors[2].Points.Add(new PointD(107.99d, 21.54241d));
            vectors[2].Points.Add(new PointD(107.7831d, 21.66694d));
            vectors[2].Points.Add(new PointD(107.3627d, 21.60526d));
            vectors[2].Points.Add(new PointD(106.6933d, 22.03083d));
            vectors[2].Points.Add(new PointD(106.5517d, 22.45682d));
            vectors[2].Points.Add(new PointD(106.7875d, 22.76389d));
            vectors[2].Points.Add(new PointD(106.7029d, 22.86694d));
            vectors[2].Points.Add(new PointD(105.8771d, 22.91253d));
            vectors[2].Points.Add(new PointD(105.3587d, 23.32416d));
            vectors[2].Points.Add(new PointD(104.9075d, 23.18027d));
            vectors[2].Points.Add(new PointD(104.7319d, 22.81805d));
            vectors[2].Points.Add(new PointD(104.3747d, 22.6875d));
            vectors[2].Points.Add(new PointD(104.1113d, 22.79812d));
            vectors[2].Points.Add(new PointD(103.9687d, 22.50387d));
            vectors[2].Points.Add(new PointD(103.6538d, 22.78287d));
            vectors[2].Points.Add(new PointD(103.5224d, 22.58436d));
            vectors[2].Points.Add(new PointD(103.3337d, 22.79451d));
            vectors[2].Points.Add(new PointD(103.0304d, 22.43652d));
            vectors[2].Points.Add(new PointD(102.4744d, 22.77187d));
            vectors[2].Points.Add(new PointD(102.1407d, 22.39629d));
            vectors[2].Points.Add(new PointD(101.7415d, 22.49777d));
            vectors[2].Points.Add(new PointD(101.5744d, 22.20916d));
            vectors[2].Points.Add(new PointD(101.7653d, 21.83444d));
            vectors[2].Points.Add(new PointD(101.786d, 21.14451d));
            vectors[2].Points.Add(new PointD(101.2919d, 21.17687d));
            vectors[2].Points.Add(new PointD(101.1482d, 21.57264d));
            vectors[2].Points.Add(new PointD(101.099d, 21.76903d));
            vectors[2].Points.Add(new PointD(100.6397d, 21.47694d));
            vectors[2].Points.Add(new PointD(100.2057d, 21.43546d));
            vectors[2].Points.Add(new PointD(99.97763d, 21.72555d));
            vectors[2].Points.Add(new PointD(99.95741d, 22.05018d));
            vectors[2].Points.Add(new PointD(99.16785d, 22.15592d));
            vectors[2].Points.Add(new PointD(99.56484d, 22.93659d));
            vectors[2].Points.Add(new PointD(99.5113d, 23.08204d));
            vectors[2].Points.Add(new PointD(98.92747d, 23.18916d));
            vectors[2].Points.Add(new PointD(98.67991d, 23.97076d));
            vectors[2].Points.Add(new PointD(98.89073d, 24.16007d));
            vectors[2].Points.Add(new PointD(97.54762d, 23.92999d));
            vectors[2].Points.Add(new PointD(97.7593d, 24.26055d));
            vectors[2].Points.Add(new PointD(97.54305d, 24.47666d));
            vectors[2].Points.Add(new PointD(97.55255d, 24.73992d));
            vectors[2].Points.Add(new PointD(98.19109d, 25.61527d));
            vectors[2].Points.Add(new PointD(98.36137d, 25.56944d));
            vectors[2].Points.Add(new PointD(98.7104d, 25.85597d));
            vectors[2].Points.Add(new PointD(98.56944d, 26.12527d));
            vectors[2].Points.Add(new PointD(98.73109d, 26.18472d));
            vectors[2].Points.Add(new PointD(98.77777d, 26.79166d));
            vectors[2].Points.Add(new PointD(98.69699d, 27.52972d));
            vectors[2].Points.Add(new PointD(98.45888d, 27.6725d));
            vectors[2].Points.Add(new PointD(98.31992d, 27.54014d));
            vectors[2].Points.Add(new PointD(98.14499d, 28.14889d));
            vectors[2].Points.Add(new PointD(97.55887d, 28.54652d));
            vectors[2].Points.Add(new PointD(97.34888d, 28.22277d));
            vectors[2].Points.Add(new PointD(96.65387d, 28.46749d));
            vectors[2].Points.Add(new PointD(96.40193d, 28.35111d));
            vectors[2].Points.Add(new PointD(96.34027d, 28.525d));
            vectors[2].Points.Add(new PointD(96.61373d, 28.79569d));
            vectors[2].Points.Add(new PointD(96.47083d, 29.05666d));
            vectors[2].Points.Add(new PointD(96.17532d, 28.90138d));
            vectors[2].Points.Add(new PointD(96.14888d, 29.05972d));
            vectors[2].Points.Add(new PointD(96.39172d, 29.25757d));
            vectors[2].Points.Add(new PointD(96.08315d, 29.46444d));
            vectors[2].Points.Add(new PointD(95.38777d, 29.03527d));
            vectors[2].Points.Add(new PointD(94.64751d, 29.33346d));
            vectors[2].Points.Add(new PointD(94.23456d, 29.07348d));
            vectors[2].Points.Add(new PointD(93.96172d, 28.6692d));
            vectors[2].Points.Add(new PointD(93.35194d, 28.61876d));
            vectors[2].Points.Add(new PointD(93.22205d, 28.3193d));
            vectors[2].Points.Add(new PointD(92.71044d, 28.1419d));
            vectors[2].Points.Add(new PointD(92.54498d, 27.86194d));
            vectors[2].Points.Add(new PointD(91.65776d, 27.76472d));
            vectors[2].Points.Add(new PointD(91.66277d, 27.945d));
            vectors[2].Points.Add(new PointD(91.30138d, 28.08111d));
            vectors[2].Points.Add(new PointD(91.08693d, 27.96999d));
            vectors[2].Points.Add(new PointD(90.3765d, 28.07958d));
            vectors[2].Points.Add(new PointD(90.38898d, 28.24257d));
            vectors[2].Points.Add(new PointD(89.99819d, 28.32369d));
            vectors[2].Points.Add(new PointD(89.48749d, 28.05777d));
            vectors[2].Points.Add(new PointD(88.91693d, 27.32083d));

            return vectors;
        }
    }
}