Esempio n. 1
0
        //TODO
        public Dictionary <string, List <Tweet> > GroupTweetsByState()
        {
            Dictionary <string, List <Tweet> > tweetsByState = new Dictionary <string, List <Tweet> >();
            List <Tweet> tweets = tweetDao.GetTweets();
            List <State> states = stateDao.GetStates();

            foreach (Tweet tweet in tweets)
            {
                Dictionary <string, double> tweetCenterDistance = GetTweetCenterDistance(states, tweet);
                string key = tweetCenterDistance.OrderBy(k => k.Value).FirstOrDefault().Key;
                if (!tweetsByState.ContainsKey(key))
                {
                    tweetsByState.Add(key, new List <Tweet>());
                }
                tweetsByState[key].Add(tweet);

                //TODO some operations to calculate min distance and group tweet by state


                //List<double> tweetCenterDistance = new List<double>();
                //foreach (KeyValuePair<string, Point> stateCenter in stateCenters)
                //{
                //    tweetCenterDistance.Add(GeoLocation.CalculateGeoDistance(stateCenter.Value.X, stateCenter.Value.Y,
                //        tweet.Latitude, tweet.Longitude));
                //    //TODO some oeperations
                //    tweetsByState.Add(stateCenter.Key, new List<Tweet>());
                //}
            }
            return(tweetsByState);
        }
Esempio n. 2
0
 public List <Tweet> GetTweets()
 {
     return(tweetDao.GetTweets());
 }