public void UpdateSpotList(Mapbox.Utils.Vector2d vec) { var spots = MapSceneManager.Data.spotList; var removeList = new List <Result>(); foreach (var s in spots) { var distance = ConvertDistance.Distance(vec.x, vec.y, s.geometry.location.lat, s.geometry.location.lng, 'K'); if (distance > 6) { removeList.Add(s); } if (distance <= 3) { MapSceneManager.Boad.InstantiateBoad(s); } if (distance > 3) { MapSceneManager.Boad.DestroyBoad(s); } } //最後にリストから消去 foreach (var r in removeList) { spots.Remove(r); } }
protected override void OnUpdate() { if (MapSceneManager.IsDebug) { var data = MapSceneManager.Data; var location = MapSceneManager.MainMap.WorldToGeoPosition(MapSceneManager.Player.gameObject.transform.position); if (ConvertDistance.Distance(location.x, location.y, data.beforeLat, data.beforeLng, 'K') >= 3) { data.beforeLat = location.x; data.beforeLng = location.y; enumerator = LoadMapData(location); } } if (MapSceneManager.Getter.CanGetLonLat()) { string lonLatInfoTemplate = "緯度: {0}\n経度: {1}"; MapSceneManager.UI.SetText(string.Format(lonLatInfoTemplate, (float)MapSceneManager.Getter.Latitude, (float)MapSceneManager.Getter.Longitude)); MapSceneManager.Player.PlayerTransUpdate(); var getter = MapSceneManager.Getter; var data = MapSceneManager.Data; //前に更新した時より3km以上離れていたら更新する if (ConvertDistance.Distance(getter.Latitude, getter.Longitude, data.beforeLat, data.beforeLng, 'K') >= 3) { data.beforeLat = getter.Latitude; data.beforeLng = getter.Longitude; var vec = new Mapbox.Utils.Vector2d(getter.Latitude, getter.Longitude); enumerator = LoadMapData(vec); } } if (enumerator != null) { if (!enumerator.MoveNext()) { enumerator = null; } } }
protected override void OnExecute() { MapSceneManager.Player.Setup(); var getter = MapSceneManager.Getter; foreach (var data in MapSceneManager.Data.spotList) { var location = data.geometry.location; if (MapSceneManager.IsDebug) { if (ConvertDistance.Distance(35.7134029f, 139.7611094f, location.lat, location.lng, 'K') <= 3) { MapSceneManager.Boad.InstantiateBoad(data); } } else { if (ConvertDistance.Distance(getter.Latitude, getter.Longitude, location.lat, location.lng, 'K') <= 3) { MapSceneManager.Boad.InstantiateBoad(data); } } } if (MapSceneManager.IsDebug) { MapSceneManager.Data.beforeLat = 35.7134029f; MapSceneManager.Data.beforeLng = 139.7611094f; } else { MapSceneManager.Data.beforeLat = getter.Latitude; MapSceneManager.Data.beforeLng = getter.Longitude; } MapSceneManager.UI.SetActiveLoad(false); }
public void ReadCsvSample() { var proivder = new CompuTrainerTXTFileProvider(csvData); var samples = proivder.Samples.ToList(); Assert.AreEqual(2, samples.Count, "wrong number of samples"); var sample = samples[0]; Assert.AreEqual(60, sample.HeartRateBpm, "HeartRateBpm is wrong"); Assert.AreEqual((uint)9156, sample.TimeMilisecondElapsed, "TimeMilisecondElapsed is wrong"); Assert.AreEqual(270, sample.PowerWatts, "PowerWatts is wrong"); Assert.AreEqual(92, sample.CadenceRpm, "CadenceRpm is wrong"); Assert.AreEqual(Math.Round(ConvertDistance.MilesToKilometers(0.0272F), 4), Math.Round(sample.DistanceKilometerElapsed, 4), "DistanceKilometerElapsed is wrong"); Assert.AreEqual(Math.Round(17.38 / ConvertDistance.KilometersPerMile, 2), Math.Round(sample.SpeedMph, 2), "SpeedMph is wrong"); sample = samples[1]; Assert.AreEqual(70, sample.HeartRateBpm, "HeartRateBpm is wrong"); Assert.AreEqual((uint)12219, sample.TimeMilisecondElapsed, "TimeMilisecondElapsed is wrong"); Assert.AreEqual(208, sample.PowerWatts, "PowerWatts is wrong"); Assert.AreEqual(96, sample.CadenceRpm, "CadenceRpm is wrong"); Assert.AreEqual(Math.Round(ConvertDistance.MilesToKilometers(0.0427F), 4), Math.Round(sample.DistanceKilometerElapsed, 4), "DistanceKilometerElapsed is wrong"); Assert.AreEqual(Math.Round(18.54 / ConvertDistance.KilometersPerMile, 2), Math.Round(sample.SpeedMph, 2), "SpeedMph is wrong"); }
private LocationModel GetRadiusLocation(string latitude, string longitude, string radius) { try { LocationModel locationModel = new LocationModel(); double radiusTemp = Convert.ToDouble(radius); var radiusMiles = ConvertDistance.ConvertKilometersToMiles(radiusTemp); SqlParameter StartingLatitude = new SqlParameter("@latitude", latitude); SqlParameter StartingLongitude = new SqlParameter("@longitude", longitude); SqlParameter MaxDistance = new SqlParameter("@radius", radiusMiles); var earthquakesGuids = earthquakeRepository.GetRadiusLocation(StartingLatitude, StartingLongitude, MaxDistance); IList <Earthquake> nearEarthquakes = new List <Earthquake>(); foreach (Guid id in earthquakesGuids) { var ea = earthquakeRepository.GetEarthquakeById(id); if (ea != null) { nearEarthquakes.Add(ea); } } locationModel.NearEarthquakes = nearEarthquakes; return(locationModel); } catch (Exception ex) { ExceptionUtility.Warn(ex, this.GetType()); return(new LocationModel()); } }
private static void PrintServerDetails(Server server) => Console.WriteLine($"Hosted by {server.Sponsor} ({server.Name}/{server.Country}), " + $"distance: {(int)server.Distance / 1000}km " + $"({Math.Round(ConvertDistance.ConvertKilometersToMiles((int)server.Distance / 1000), 2)}mi), " + $"latency: {server.Latency}ms");