Найти объекты слоя в точке с картографическими координатами
function GetLayerObjectsInMapPoint(lCode: integer; X,Y: Double;
aObjects: TLayerObjectIdentificationList; SearchRadius: Double;
aSearchMode: TSearchInPointMode = ofmpDefault;
flBlinkFindObjects: boolean = false; flExludeHoles: boolean = true;
aSourcePointTypeCoords: TCoordType = ctReal; sFilter: string='';
ResultSearchObjectProc: TMapSearchObjectEvent = nil;
flApplyInternalFilter: boolean = true; aFieldList: TStrings = nil;
flSortByDistance: boolean = false;
aMapplSearchMode: TMapObjectSearchMode = smoUndefined): integer;
X
Y
aObjects
SearchRadius
aSearchMode
flBlinkFindObjects
flExludeHoles
aSourcePointTypeCoords
sFilter
ResultSearchObjectProc
flApplyInternalFilter
aFieldList
flSortByDistance
aMapplSearchMode
< 0 если ошибка, иначе количество найденных объектов
Параметр aObjects может быть не задан - в случае, если сущемтвует обработчик события OnResultSearchObject
, то по каждому найденному объекту он будет вызываться если точка (X,Y) попадет в "дырку" сложного объекта) если ctEarthReal,ctEarthGMS, то координаты заданы в градусах и перед поиском будут пересчитаны в единицах карты (данные будут размещены в том же списке, заменив собой названия полей), по умолчанию nil
смотри пример функции GetLayerObjectsInScreenPoint