{"comment":{"created_at":"2011-10-09T20:37:53Z","body":"[springmeyer] I'm thinking, to start, in trunk:\r\n\r\n * change features_at_point to accept a second, optional argument of tolerance (in geographic units), which will default to zero\r\n\r\n * change map.query_point and map.query_map_point to accept an optional tolerance argument (in pixels), and skip (for now at least) having to add tolerance parameter to mapnik.Layer\r\n\r\n * Usually polygons should need no tolerance, but lines and points will, so exposing in map.query...() seems like the most flexible so that the calling application can determine how likely a hit should be. TOLERANCE can be passed then as a URL param to OGCServer which will push that parameter (if it exists) to the query_point function.\r\n\r\n * Then try to develop some automated tests of behavior, using different geometry types and map projections (data using meters and degrees at least)\r\n\r\nAfter the above are complete, then I think we can backport this work from trunk to 0.7.2 (and it will be then more clear how to do that in the least invasive way).\r\n\r\nYou are welcome to work on the patch, but I can do. The thing that would be *most* useful would be tests, so ideally if you have time you could start on those first. Any form is okay, but best would be a new file like `tests/python/query_tolerance_test.py`","updated_at":"2011-10-09T20:37:53Z","url":"https://api.github.com/repos/artemp/trac2github/issues/comments/2340237","id":2340237,"user":{"avatar_url":"https://secure.gravatar.com/avatar/941f68386168a8a6b60f2529a7830af7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/artemp","id":59056,"login":"artemp"}},"action":"created","issue":{"number":504,"created_at":"2011-10-09T20:37:48Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"It is very difficult to get results for a GetFeatureInfo request because the features_at_point() has no tolerance parameter:\r\n\r\nmap.cpp\r\nds->features_at_point(mapnik::coord2d(x,y));\r\n\r\npostgis.cpp:\r\nEnvelope<double> box(pt.x,pt.y,pt.x,pt.y);\r\nstd::string table_with_bbox = populate_tokens(table_,FMAX,box);","comments":8,"title":"Add tolerance to the features_at_point() query in the PostGIS plugin","updated_at":"2011-10-09T20:37:53Z","url":"https://api.github.com/repos/artemp/trac2github/issues/504","id":1858741,"assignee":null,"milestone":{"number":8,"created_at":"2011-10-09T19:01:23Z","due_on":"1970-01-01T09:22:01Z","title":"Mapnik 2.1","creator":{"avatar_url":"https://secure.gravatar.com/avatar/941f68386168a8a6b60f2529a7830af7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/artemp","id":59056,"login":"artemp"},"url":"https://api.github.com/repos/artemp/trac2github/milestones/8","open_issues":2,"closed_issues":0,"description":"Next release in the Mapnik 2.x series - small non-feature fixes will go into [http://trac.mapnik.org/milestone/Mapnik%202.0.1 2.0.1 ].\r\n\r\nThis release series, 2.1.x, will feature any major new features.\r\n\r\nThis will be a backward-compatible series.","state":"open"},"closed_at":null,"user":{"avatar_url":"https://secure.gravatar.com/avatar/941f68386168a8a6b60f2529a7830af7?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/artemp","id":59056,"login":"artemp"},"html_url":"https://github.com/artemp/trac2github/issues/504","labels":[{"name":"PostGIS_Input_Driver","url":"https://api.github.com/repos/artemp/trac2github/labels/PostGIS_Input_Driver","color":"FFFFFF"}],"state":"open"},"legacy":{"issue_id":1858741,"comment_id":2340237}}