Инструмент для построения разрезов

0 голосов
спросил 30 Сен, 10 от hang (220 баллов) в категории Программные продукты Esri
   Здравствуйте, мне необходима помощь в создании инструмента для построения разрезов. На карте присутствует слой содержащий значения высот (рельефа), а также один точечный слой. Мне необходимо провести линию которая будет идентифицировать рельеф, а также все точечные объекты на указанном удалении от линии, и строить соответствующий график. Проблема у меня возникла на этапе идентификации объектов из точечного слоя. Прошу ваших советов как можно идентифицировать все точечные объекты удаленные на указанное расстояние от линии.

Заранее спасибо.

P.S. Линию я рисовал используя объекты IRubberLine и IPolyline.

4 Ответы

0 голосов
ответил 02 Окт, 10 от new_sergei (2,660 баллов)
Первое, что приходит в голову - создать специально настроенный QueryFilter, в который запихнуть пространственный запрос.
Т.е., создаём пространственный запрос (вернее, даже 2 запроса), где нас будут интересовать слой точек (1-ый запрос) и слой горизонталей (2-ой запрос). При этом нас будет интересовать отношение пересечения. Как я понял, с определением пересечения горизонталей (2-ой запрос) у автора топика проблем нет. Значит, осталось определить нужные нам точки из соответствующего слоя. Для это можно тупо построить промежуточный буфер от линии сечения и потом уже определить пересечение этого полигона (1-ый запрос) со слоем точек.
0 голосов
ответил 12 Окт, 10 от hang (220 баллов)
   Спасибо за ответ.
   На данном этапе я практически выполнил задачу, единственной проблемой для меня стало теперь, построение промежуточного буфера. Могли бы вы мне подсказать каким образом можно строить этот буфер.

Сейчас выбираю необходимые объекты полигоном. Большой минус этого в том что полигон у меня строится только по прямой линии, т.е. от начальной до конечной точек. Но линия может быть ломанной.

Я не использовал QueryFilter, вместо этого применил функцию IMap.SelectByShape в которой первым параметром указал геометрию полигона.
0 голосов
ответил 12 Окт, 10 от TDenis (42,620 баллов)
ITopologicalOperator.Buffer
0 голосов
ответил 13 Окт, 10 от hang (220 баллов)
  TDenis спасибо! Это именно то что я искал!

Добро пожаловать на сайт Вопросов и Ответов, где вы можете задавать вопросы по GIS тематике и получать ответы от других членов сообщества.
...