| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
|
||||
Регистрация: 14.12.2008
Сообщений: 1,079
|
Как можно посмотреть в файле xslt расположение узлов <contours> в которых описываются координаты точек полигонов?
У меня программа нашла 4 участка (узла) по запросу "//cad_number" (№5-8). Теперь мне надо найти разделы <contours> для каждого соответствующего участка. В какую ветку мне надо перепрыгнуть надеюсь увидеть в xlst файле, только более подробном. Существует такой файл xlst? |
|||
|
||||
Регистрация: 18.12.2010
Сообщений: 5,057
|
Во первых xml
во вторых ты всё не правильно делаешь ;=) Получаю список узлов по пути //cadastral_blocks/cadastral_block/record_data/base_data/land_records Для каждого: Получаю кадастровый номер object/common_data/cad_number/text() Получаю полигоны contours_location/contours Линии contour/entity_spatial/spatials_elements/spatial_element Точки Point Path="ordinates/ordinate" Xattr="y/text()" Yattr="x/text()" |
|||
|
||||
Регистрация: 14.12.2008
Сообщений: 1,079
|
Это понятно что неправильно. Мне не хватает функции: "НайтиПарентУзелДляТекущегоУзла(ТекУзел, ИскомыйТэг)"
Сейчас напишу эту функцию и буду выполнять поиск узлов "contours" во всех парент объектах начиная с узла с тэгом "cad_number" Найденный ближайший парент узел "по логике" будет содержать координаты точек полигона для узла "cad_number". А сейчас в программе для всех четырех узлов "cad_number" находятся одинаковые списки координат. Вот в этом я считаю ошибка на данный момент |
|||
|
||||
Регистрация: 14.12.2008
Сообщений: 1,079
|
Главное выйти на объект IXMLDOMElement и затем на свойство список childNodes. Для каждого элемента этого списка надо воспользоваться методом
Код:
----- добавлено через ~50 мин. ----- trir, можно в твоем ответе между текстовыми пояснениями и фрагментами кода поставить символ ":"? Цитата:
В первой строке вижу запрос Код:
В следующих 3 строках не понятно. А в 4 строке Код:
Или это отдельные строки кода? |
|||
|
||||
Регистрация: 14.12.2008
Сообщений: 1,079
|
Trir! В общем получилась прога для чтения координат на лист Excel, посмотри в прикрепленных файлах.
Теперь надо для проверки начертить эти контуры и проверять на пересечение с полилиниями полосы отвода Потом вывести на лист сводную таблицу с информацией о найденных пересечениях и задача будет решена Может есть "упрощающие фишки", позволяющие код получения координат контуров Росреестра сделать более простым и правильным? |
|||
|
||||
Регистрация: 18.12.2010
Сообщений: 5,057
|
1. Я в #3 уже привёл код на VBA, который это делает
2. Проще это делать в БД https://habr.com/ru/post/307294/ - там есть специальная команда STIntersection 3. Вместо полилиний лучше использовать MPolygon'ы |
|||
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Конвертация файлов | Admin | Прочее. Программное обеспечение | 7515 | 19.03.2024 14:27 |
Библиотеки электронных книг | Кочетков Андрей | Поиск литературы, чертежей, моделей и прочих материалов | 303 | 21.06.2023 08:35 |
DwgRuLispLib: Функция открытия диалога Open\Save As файла (файлов) | Supermax | Библиотека функций | 20 | 14.03.2018 10:05 |
DwgRuLispLib: Команда. Загрузка lisp файлов из указанной папки | VVA | Библиотека функций | 7 | 15.02.2018 10:10 |
Автокад в интернете, самое начало | Mme St-Perle | AutoCAD | 86 | 12.05.2010 15:11 |