Be Tolerant

Overview

iShare returns results based upon a location - whether that be a click on a map or a given address in My House. If you imagine that a point click equates to a small bounding box on the earth's surface then tolerance is the measure by which we can expand that bounding box. With no tolerance a user may click on a point layer and may not hit dead centre on a point's symbol so no results are returned. This is because the symbol is rendering a greater area than the geometry covers. A tolerance will widen the search area to include the associated point's geometry. Likewise if we take an residential property that is situated next to a neighbouring ward we want to use no tolerance as widening the bounding box will return incorrect results.

iShare Maps / GIS Pixel Tolerance

Check that the iShare Settings for MapPixelTolerance is reasonable. What is reasonable is based upon half the maximum size of all point symbology used by the .map file. Open Studio and select Settings, on the General Settings tab scroll down until you see the Web entries. Here you will see the MapPixelTolerance setting. This is the number of pixels the bounding box is calculated to cover at any one scale.

In general the MapPixelTolerance should never be set to less than 10 pixels and probably no more than 20. Typically map icons are around 20 pixels wide so setting the tolerance lower than 10 and Point layers may not return results. Higher than 20 and the bounding box used becomes too large and more results are returned than expected. As said, the value is dependent upon the size of the rendered symbols used and the anchor position for the each Point layer. The majority of points will use a mid-point anchor with a symbol image normally no bigger than 20 pixels. In that case '10' would be an appropriate value to use.

Unfortunately there is a danger when clicking close to Polygon boundaries more results than desired may be returned. This is something that we are looking to resolve in future versions.

My House Precision

When using a point layer in My House the Find Nearest setting is always used. This defines a Distance, specified in metres, which equates to desired tolerance. For Polygon layers the Show My setting is used instead. Make sure that TOLERANCEUNITS equals METERS in the LAYER definition in the .MAP file. The distance is hard coded at 0.01. The result is a one centimetre bounding box is used for the given location. Make sure that TOLERANCEUNITS METERS is defined for each polygon layer in My House as the default units is PIXELS which will can produce incorrect results.

My Nearest Precision

These should always use the Find Nearest setting for both Point and Polygon layers where the Distance, specified in metres, equates to the tolerance.