Beispiel #1
0
        private static Data.city GetCity(double lat, double lon, List <Data.city> Cities)
        {
            Data.city closest         = null;
            double    closestDistance = 99999999999.9;

            foreach (Data.city item in Cities)
            {
                double distance = Haversine(lat, item.Lattitude, lon, item.Longitude);
                if (distance < closestDistance)
                {
                    closestDistance = distance;
                    closest         = item;
                }
            }
            return(closest);
        }
Beispiel #2
0
        public static void Run()
        {
            List <Data.city>        cities       = CitiesGet();
            List <Data.WeatherData> weatherDatas = new List <Data.WeatherData>();

            foreach (Data.ShrunkData item in StationsGet())
            {
                Data.city closest = GetCity(double.Parse(item.Latitude), double.Parse(item.Longitude), cities);
                weatherDatas.Add(new Data.WeatherData()
                {
                    city = closest.Name, Date = item.DateTime, TemperatureC = double.Parse(item.Temperature)
                });
            }
            System.Xml.Serialization.XmlSerializer serializer = new System.Xml.Serialization.XmlSerializer(typeof(List <Data.WeatherData>));
            StreamWriter writer = new StreamWriter(MainWindow.endFile);

            serializer.Serialize(writer, weatherDatas);
            writer.Close();
        }