X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/2a784fa3d4533d11e3227f868085dcee5a9870c6..cfed4bc204e172dd48054b001abea04b9fc8675a:/lib/Geocode.php diff --git a/lib/Geocode.php b/lib/Geocode.php index 48683e64..2537ec84 100644 --- a/lib/Geocode.php +++ b/lib/Geocode.php @@ -48,6 +48,7 @@ class Geocode protected $sQuery = false; protected $aStructuredQuery = false; + function Geocode(&$oDB) { $this->oDB =& $oDB; @@ -131,18 +132,18 @@ class Geocode function setFeatureType($sFeatureType) { switch ($sFeatureType) { - case 'country': - $this->setRankRange(4, 4); - break; - case 'state': - $this->setRankRange(8, 8); - break; - case 'city': - $this->setRankRange(14, 16); - break; - case 'settlement': - $this->setRankRange(8, 20); - break; + case 'country': + $this->setRankRange(4, 4); + break; + case 'state': + $this->setRankRange(8, 8); + break; + case 'city': + $this->setRankRange(14, 16); + break; + case 'settlement': + $this->setRankRange(8, 20); + break; } } @@ -397,7 +398,7 @@ class Geocode $sSQL .= ",extratags->'place' "; if (30 >= $this->iMinAddressRank && 30 <= $this->iMaxAddressRank) { - //only Tiger housenumbers and interpolation lines need to be interpolated, because they are saved as lines + // only Tiger housenumbers and interpolation lines need to be interpolated, because they are saved as lines // with start- and endnumber, the common osm housenumbers are usually saved as points $sHousenumbers = ""; $i = 0; @@ -408,7 +409,7 @@ class Geocode if ($i<$length) $sHousenumbers .= ", "; } if (CONST_Use_US_Tiger_Data) { - //Tiger search only if a housenumber was searched and if it was found (i.e. aPlaceIDs[placeID] = housenumber != -1) (realized through a join) + // Tiger search only if a housenumber was searched and if it was found (i.e. aPlaceIDs[placeID] = housenumber != -1) (realized through a join) $sSQL .= " union"; $sSQL .= " select 'T' as osm_type, place_id as osm_id, 'place' as class, 'house' as type, null as admin_level, 30 as rank_search, 30 as rank_address, min(place_id) as place_id, min(parent_place_id) as parent_place_id, 'us' as country_code"; $sSQL .= ", get_address_by_language(place_id, housenumber_for_place, $sLanguagePrefArraySQL) as langaddress "; @@ -421,7 +422,7 @@ class Geocode $sSQL .= ", (select max(p.importance*(p.rank_address+2)) from place_addressline s, placex p where s.place_id = min(blub.parent_place_id) and p.place_id = s.address_place_id and s.isaddress and p.importance is not null) as addressimportance "; $sSQL .= ", null as extra_place "; $sSQL .= " from (select place_id"; - //interpolate the Tiger housenumbers here + // interpolate the Tiger housenumbers here $sSQL .= ", ST_LineInterpolatePoint(linegeo, (housenumber_for_place-startnumber::float)/(endnumber-startnumber)::float) as centroid, parent_place_id, housenumber_for_place"; $sSQL .= " from (location_property_tiger "; $sSQL .= " join (values ".$sHousenumbers.") as housenumbers(place_id, housenumber_for_place) using(place_id)) "; @@ -444,7 +445,7 @@ class Geocode $sSQL .= " where s.place_id = min(blub.parent_place_id) and p.place_id = s.address_place_id and s.isaddress and p.importance is not null) as addressimportance,"; $sSQL .= " null as extra_place "; $sSQL .= " from (select place_id, calculated_country_code "; - //interpolate the housenumbers here + // interpolate the housenumbers here $sSQL .= ", CASE WHEN startnumber != endnumber THEN ST_LineInterpolatePoint(linegeo, (housenumber_for_place-startnumber::float)/(endnumber-startnumber)::float) "; $sSQL .= " ELSE ST_LineInterpolatePoint(linegeo, 0.5) END as centroid"; $sSQL .= ", parent_place_id, housenumber_for_place "; @@ -476,7 +477,8 @@ class Geocode $sSQL .= " order by importance desc"; if (CONST_Debug) { - echo "