Задача: на слое А есть символьный объект ОБЪЕКТ, необходимо на слое Б создавать символьные объекты МЕТКИ в непосредственной близости от него в идеале было бы в точке с координатами центра объекта ОБЪЕКТ, но Zulu не даёт создать несколько МЕТОК с одинаковыми координатами на одном слое. Для решения этой задачи был придуман простой алгоритм, перед рисованием МЕТКИ в точке с координатами X,Y проверяется наличие другой МЕТКИ в этой точке методом Layer.ElemIDByXY, если МЕТКА есть, то точка смещается на заданную величину и снова осуществляется проверка наличия метки, если в новой точке метка не обнаружена, то создаём новую метку.
Но данный алгоритм не работает, тк при смене координат метод Layer.ElemIDByXY продолжает возвращать ID МЕТКИ находящейся в центре и только по достижению достаточно большой дельты (30 метров от центральной точки) возвращает -1.
Подскажите, в чём может быть проблема?
Лог смещения точки:
X:-56100 Y:9210 radius:10 angle:0 element ID:13
X:-56105.4402111089 Y:9191.60928470924 radius:10 angle:10 element ID:13
X:-56090.8705474927 Y:9204.08082061813 radius:10 angle:20 element ID:13
X:-56109.8803162409 Y:9201.54251449888 radius:10 angle:30 element ID:13
...
X:-53619.4630982338 Y:10887.2867803002 radius:3000 angle:290 element ID:-1
Но данный алгоритм не работает, тк при смене координат метод Layer.ElemIDByXY продолжает возвращать ID МЕТКИ находящейся в центре и только по достижению достаточно большой дельты (30 метров от центральной точки) возвращает -1.
Подскажите, в чём может быть проблема?
Лог смещения точки:
X:-56100 Y:9210 radius:10 angle:0 element ID:13
X:-56105.4402111089 Y:9191.60928470924 radius:10 angle:10 element ID:13
X:-56090.8705474927 Y:9204.08082061813 radius:10 angle:20 element ID:13
X:-56109.8803162409 Y:9201.54251449888 radius:10 angle:30 element ID:13
...
X:-53619.4630982338 Y:10887.2867803002 radius:3000 angle:290 element ID:-1