예제 #1
0
        private void Button2_Click(object sender, EventArgs e)
        {
            Bitmap bmp = (Bitmap)Image.FromFile("D:/GoogleMapAndRotation/GoogleMapAndRotation/197205-64.png");
            // int infocount = 0;
            List <RotaList> Rotas   = new List <RotaList>();
            RotaMeasures    measure = new RotaMeasures();

            //MessageBox.Show(DefinedTargetList.Count.ToString());
            for (int i = 0; i < DefinedTargetList.Count - 1; i++)
            {
                donusAcisi = RotateAngle(Convert.ToDouble(DefinedTargetList[i].Lat), Convert.ToDouble(DefinedTargetList[i].Lng), Convert.ToDouble(DefinedTargetList[i + 1].Lat), Convert.ToDouble(DefinedTargetList[i + 1].Lng));
                bmp        = RotateImage(bmp, donusAcisi);
                measure.rotaList.Add(new RotaList()
                {
                    countRota = (i + 1).ToString(), elevation = GetElevation(DefinedTargetList[i].Lat.ToString().Replace(',', '.'), DefinedTargetList[i].Lng.ToString().Replace(',', '.')), location = DefinedTargetList[i].Lat.ToString() + " " + DefinedTargetList[i].Lng.ToString(), angle = donusAcisi.ToString(), PicBmp = bmp
                });
            }
            int NoktaSayisi = DefinedTargetList.Count - 1;

            measure.rotaList.Add(new RotaList()
            {
                countRota = (NoktaSayisi + 1).ToString(), elevation = GetElevation(DefinedTargetList[NoktaSayisi].Lat.ToString().Replace(',', '.'), DefinedTargetList[NoktaSayisi].Lng.ToString().Replace(',', '.')), location = DefinedTargetList[NoktaSayisi].Lat.ToString() + " " + DefinedTargetList[NoktaSayisi].Lng.ToString()
            });

            measure.Show();
        }
예제 #2
0
        private void Timer1_Tick(object sender, EventArgs e)
        {
            if (DefinedTargetList.Count > 0)
            {
                RotaMeasures    measure = new RotaMeasures();
                List <RotaList> Rotas   = new List <RotaList>();


                //Anlık pozisyon bilgisi
                currentPosition[0] = DefinedTargetList[sayac].Lat;
                currentPosition[1] = DefinedTargetList[sayac].Lng;
                //---------------------------------------------------
                Bitmap bmp = (Bitmap)Image.FromFile("D:/GoogleMapAndRotation/GoogleMapAndRotation/RedUav.png");
                if (sayac < DefinedTargetList.Count - 1)
                {
                    string lati = Convert.ToString(DefinedTargetList[sayac].Lat);
                    string lngi = Convert.ToString(DefinedTargetList[sayac].Lng);



                    PointLatLng listePoint = new PointLatLng(DefinedTargetList[sayac].Lat, DefinedTargetList[sayac].Lng);

                    // İHA img yön verme
                    donusAcisi = RotateAngle(Convert.ToDouble(DefinedTargetList[sayac].Lat), Convert.ToDouble(DefinedTargetList[sayac].Lng), Convert.ToDouble(DefinedTargetList[sayac + 1].Lat), Convert.ToDouble(DefinedTargetList[sayac + 1].Lng));
                    bmp        = RotateImage(bmp, donusAcisi);

                    //Yön verilen img'yi haritaya basmak.
                    GMapMarker marker = new GMarkerGoogle(listePoint, bmp);

                    markers2.Markers.Add(marker);


                    if (sayac > DefinedTargetList.Count - 1)
                    {
                        timer1.Enabled = false;
                        timer1.Stop();
                    }
                    sayac++;
                }
                yanson++;
                if (yanson % 2 == 1)
                {
                    gMapControl1.Overlays.Remove(markers2);
                }
                if (yanson == 2)
                {
                    gMapControl1.Overlays.Add(markers2);
                    yanson = 0;
                }

                if (sayac == DefinedTargetList.Count)
                {
                    timer1.Enabled = false;
                    timer1.Stop();
                }
            }
            else
            {
                MessageBox.Show("lütfen Hedef noktaları girin ");
                timer1.Enabled = false;
                timer1.Stop();
            }
        }