- $sSQL .= ' CASE WHEN (class = \'highway\') AND (ST_GeometryType(geometry) = \'ST_LineString\') THEN';
- $sSQL .= ' ST_Y(ST_LineInterpolatePoint(geometry,';
- $sSQL .= ' ST_LineLocatePoint(geometry, ST_SetSRID(ST_Point('.$fLatReverse.','.$fLonReverse.'),4326))))';
- $sSQL .= ' ELSE ST_Y(centroid) ';
- $sSQL .= ' END as centrelat, ';
- $sSQL .= ' CASE WHEN (class = \'highway\') AND (ST_GeometryType(geometry) = \'ST_LineString\') THEN';
- $sSQL .= ' ST_X(ST_LineInterpolatePoint(geometry,';
- $sSQL .= ' ST_LineLocatePoint(geometry, ST_SetSRID(ST_Point('.$fLatReverse.','.$fLonReverse.'),4326))))';
- $sSQL .= ' ELSE ST_X(centroid) ';
- $sSQL .= ' END as centrelon, ';
+ $sSQL .= ' ST_Y(closest_point) as centrelat,';
+ $sSQL .= ' ST_X(closest_point) as centrelon,';