private static Common.Weather.WeatherPoint ConvertToWeatherPoint(WeatherCurrentCondition source, WeatherArea area) { var destination = new Common.Weather.WeatherPoint(); if (area != null) { destination.Location = new Common.Weather.Location(); destination.Location.Country = area.Country; destination.Location.Locality = area.AreaName; destination.Location.Latitude = area.Latitude; destination.Location.Longitude = area.Longitude; } destination.Weather = new Common.Weather.WeatherPointData(); destination.Weather.Condition = ConvertToWeatherCondition(source.WeatherCode); if (source.TemperatureCelsius.HasValue) { destination.Weather.Temperature = new Common.Weather.Temperature() { Celsius = source.TemperatureCelsius.Value }; } else if (source.TemperatureFahrenheit.HasValue) { destination.Weather.Temperature = new Common.Weather.Temperature() { Fahrenheit = source.TemperatureFahrenheit.Value }; } destination.Weather.Humidity = source.Humidity; destination.Weather.Pressure = source.Pressure; destination.Weather.WindDirection = source.WindDirection; destination.Weather.WindSpeed = source.WindspeedKmph; if (source.Precipitation.GetValueOrDefault(0) > 0) { destination.Weather.PrecipitationType = Common.Weather.PrecipitationType.Rain; destination.Weather.Precipitation = source.Precipitation; } destination.Weather.Visibility = source.Visibility; destination.Weather.CloudCover = source.CloudCover; return destination; }
private static Common.Weather.WeatherPeriod ConvertToWeatherPeriod(WeatherForecast source, WeatherArea area) { var destination = new Common.Weather.WeatherPeriod(); destination.TimeFrom = source.Date.ToUniversalTime().ToLocalTime(); destination.TimeTo = destination.TimeFrom.AddDays(1); if (area != null) { destination.Location = new Common.Weather.Location(); destination.Location.Country = area.Country; destination.Location.Locality = area.AreaName; destination.Location.Latitude = area.Latitude; destination.Location.Longitude = area.Longitude; } destination.Weather = new Common.Weather.WeatherPeriodData(); destination.Weather.Condition = ConvertToWeatherCondition(source.WeatherCode); if (source.MinTemperatureCelsius.HasValue) { destination.Weather.MinTemperature = new Common.Weather.Temperature() { Celsius = source.MinTemperatureCelsius.Value }; } else if (source.MinTemperatureFahrenheit.HasValue) { destination.Weather.MinTemperature = new Common.Weather.Temperature() { Fahrenheit = source.MinTemperatureFahrenheit.Value }; } if (source.MaxTemperatureCelsius.HasValue) { destination.Weather.MaxTemperature = new Common.Weather.Temperature() { Celsius = source.MaxTemperatureCelsius.Value }; } else if (source.MaxTemperatureFahrenheit.HasValue) { destination.Weather.MaxTemperature = new Common.Weather.Temperature() { Fahrenheit = source.MaxTemperatureFahrenheit.Value }; } destination.Weather.WindDirection = source.WindDirection; destination.Weather.WindSpeed = source.WindspeedKmph; destination.Weather.Precipitation = source.Precipitation; return destination; }
public void SetUpParent() { parent = GetComponentInParent <WeatherArea>(); if (rainMaker != null) { rainMaker.Stop(); var rainMain = rainMaker.main; rainMain.duration = parent.GetWeatherTimer() - 10.0f; rainMaker.Play(); } if (fogMachine != null) { fogMachine.Stop(); var fogMain = fogMachine.main; fogMain.duration = parent.GetWeatherTimer() - 10.0f; fogMachine.Play(); } windDir = parent.GetWindDir(); }