public GeoMapIndex(GeoPoint southWest, GeoPoint northEast, Distance resolution)
        {
            this.resolution = resolution;
            indexes         = new GeoIndexes(southWest, northEast, resolution);
            enumerator      = new NearestEnumerator(indexes, resolution);

            suburbs = new List <Suburb> [indexes.LatitudeIntervalCount][];
            for (var i = 0; i < indexes.LatitudeIntervalCount; i++)
            {
                suburbs[i] = new List <Suburb> [indexes.LongitudeIntervalCount];
            }
        }
        public GeoMapIndex(GeoMapData data)
        {
            indexes    = new GeoIndexes(data.GeoIndexes);
            resolution = Distance.FromMetres(data.ResolutionInMetres);
            enumerator = new NearestEnumerator(indexes, resolution);

            suburbs = new List <Suburb> [indexes.LatitudeIntervalCount][];
            for (var i = 0; i < indexes.LatitudeIntervalCount; i++)
            {
                suburbs[i] = new List <Suburb> [indexes.LongitudeIntervalCount];
            }

            PopulateSuburbs(data);
        }