Esempio n. 1
0
 def test_get_highway_names2(self):
     """127x faster than test_get_highway_names1"""
     highway_names = defaultdict(list)
     for feat in self.obj.getFeatures():
         highway_names[feat['TN_text']].append(feat.geometry().asPoint())
     for name, points in highway_names.items():
         bbox = QgsGeometry().fromMultiPoint(points).boundingBox()
         choices = [self.features[fid]['name'] for fid in self.index.intersects(bbox)]
         highway_names[name] = hgwnames.match(name, choices)
Esempio n. 2
0
 def _test_get_highway_names1(self):
     highway_names = {}
     for feat in self.obj.getFeatures():
         name = feat['TN_text']
         if name not in highway_names:
             query = self.obj.search("TN_text='%s'" % self.ad['TN_text'])
             points = [f.geometry().asPoint() for f in query]
             bbox = QgsGeometry().fromMultiPoint(points).boundingBox()
             choices = [self.features[fid]['name'] for fid in self.index.intersects(bbox)]
             name = hgwnames.match(name, choices)
Esempio n. 3
0
 def test_nonfyzzy_match(self):
     self.assertEqual(hgwnames.match('CL FOOBAR', self.choices),
                      'Calle Foobar')
Esempio n. 4
0
 def test_fuzzy_match(self):
     self.assertEqual(hgwnames.match('FOOB', self.choices), 'Foobar')
     self.assertEqual(hgwnames.match('CL FRANCIA', self.choices),
                      'Calle Francia')
Esempio n. 5
0
 def test_get_highway_names2b(self):
     for name, points in self.highway_names.items():
         bbox = QgsGeometry().fromMultiPoint(points).boundingBox()
         choices = [self.features[fid]['name'] for fid in self.index.intersects(bbox)]
         self.highway_names[name] = hgwnames.match(name, choices)
Esempio n. 6
0
 def test_get_highway_names1c(self):
     name = hgwnames.match(self.ad['TN_text'], self.choices)