コード例 #1
0
        ResolvedStop ResolvedStopFromPositions(List <PositionEntry> positions)
        {
            PositionEntry avg = Util.AveragePosition(positions);

            (double average, double min, double max) = CalculateAccuracies(positions);

            ResolvedStop stop = new ResolvedStop()
            {
                Latitude        = avg.Latitude,
                Longitude       = avg.Longitude,
                BeginTimestamp  = positions.First().Timestamp,
                EndTimestamp    = positions.Last().Timestamp,
                AverageAccuracy = average,
                MinAccuracy     = min,
                MaxAccuracy     = max,
            };

            return(stop);
        }
コード例 #2
0
 bool CheckSameLocation(ResolvedStop s1, ResolvedStop s2, double radius)
 {
     return(Util.DistanceBetween(s1.Latitude, s1.Longitude, s2.Latitude, s2.Longitude) < radius);
 }
コード例 #3
0
        bool CheckSameLatLong(ResolvedStop s1, ResolvedStop s2)
        {
            double EPSILON = 0.000001;

            return(Math.Abs(s1.Latitude - s2.Latitude) < EPSILON && Math.Abs(s1.Longitude - s2.Longitude) < EPSILON);
        }