| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Отрисовка полосы отвода линейного объекта

Отрисовка полосы отвода линейного объекта

Ответ
Поиск в этой теме
Непрочитано 11.10.2012, 12:25 #1
Отрисовка полосы отвода линейного объекта
Агент СмиТ
 
Gti
 
МО Железнодорожный
Регистрация: 14.01.2010
Сообщений: 121

Доброго времени суток, уважаемые форумчане!
При формированиии полосы отвода земельных участков под строительство линейного объекта постоянно сталкиваюсь с необходимостью нарезки, объединения и реверса большого количества замкнутых полилиний. Подозреваю, что порядок чередования вершин в готовом участке зависит от чередования вершин в "исходных" ПЛ или от порядка их объединения, однако выявлять и выдерживать один и тот же порядок объединения ПЛ напрягает. В работе пользую для этой цели цели широко известные в узких кругах Pltools, однако в случае, когда количество участков переваливает за сотню, тратится много времени на монотонные операции, которые хотелось бы максимально автоматизировать с помощью lispа. Уверен, такая программа здорово поможет тем, кто занимается землеустройством по линейным объектам.

На данный момент наиболее удобным видится использование бинарных операций по отношению к полилиниям. Путём двойного вычитания (пример во вложении Чертеж 2) можно добиться желаемого результата, однако и здесь есть тонкий момент: если полоса отвода пересекает вычитаемые участки по смежной границе, программа воспринимает их как единое целое, а не разбивает результирующий участок на части.


Исходные данные:
1. Слой с трассой объекта в виде полилинии.
2. Слои с контурами объектов: существующих земельных участков, границ муниципальных образований, рек, дорог и т.д., пересекающих ось трассы.

Конечный результат:
Цепочка контуров разделённых по пересекающим трассу границам. При этом каждый контур должен быть замкнут, порядок чередования вершин по часовой стрелке, ну и конечно же продольные границы с каждой стороны на необходимом расстоянии от оси трассы (зачастую они не равны).
По возможности:
1. В контурах удалены двойные вершины за исключением первой и последней.
2. Первой (и совпадающей с ней последней) вершиной контура назначается самая западная из всех северных точек участка.
3. Чередующийся цвет образованных участков.

Примерный порядок действий следующий:
1. Запрос ширины полос слева и справа по ходу трассы.
2. Оффсет границ полосы отвода по указанным расстояниям.
3. "Нарезка" полученных границ по пересекаемым контурам.
4. Попарное объединение продольных границ участков.
5. Контроль направления чередования вершин в участках, реверс участков с чередованием вершин против часовой стрелки.
6. "Покраска" участков чередующимися цветами.
7. Удаление двойных вершин в участках.
8. Вычисление самой западной из всех северных точек участка и присвоение ей значения начальной.
9. Добавление в контур участка последней точки участка.

Своё видение рабочего процесса изобразил в приложении Чертеж1.


Исходные данные:
1. Проект полосы отвода объекта – в общем случае лучше выполнять вручную ввиду зачастую сложной конфигурации объекта (простой объект соответственно отрисовать проще).
2. Слои с контурами объектов: существующих земельных участков, границ муниципальных образований, рек, дорог и т.д., пересекающих ось трассы – все контуры должны быть замкнутыми.

Конечный результат:
Цепочка контуров разделённых по пересекающим трассу границам.
По возможности:
1. Первой вершиной каждого контура назначается самая западная из всех северных точек участка.
2. Каждый контур должен быть замкнут, порядок чередования вершин по часовой стрелке.
3. Чередующийся цвет образованных участков.

Вложения
Тип файла: dwg
DWG 2007
Чертеж1.dwg (136.3 Кб, 3856 просмотров)
Тип файла: dwg
DWG 2010
Чертеж 2.dwg (109.8 Кб, 3051 просмотров)


Последний раз редактировалось Агент СмиТ, 23.11.2012 в 14:43. Причина: Уточнение вопроса темы
Просмотров: 11195
 
Непрочитано 11.10.2012, 12:40
1 | #2
5hev

roads
 
Регистрация: 22.12.2010
msk
Сообщений: 121
<phrase 1= Отправить сообщение для 5hev с помощью Skype™


Агент СмиТ, в свое время делал с помощью инструмента бинарных операций с фигурами в AutoCAD.
Ты не думал об использовании Civil 3D? Так с участками и полосой отвода все ладненько получается...
5hev вне форума  
 
Автор темы   Непрочитано 11.10.2012, 13:31
#3
Агент СмиТ

Gti
 
Регистрация: 14.01.2010
МО Железнодорожный
Сообщений: 121


5hev[ru], думал и даже создал площадку с трассой и участками https://forum.dwg.ru/showthread.php?t=67456, однако есть причины на Civil 3D не переходить: в фирме все работают в AutoCad (а отдельные даже в Mapinfo) и к тому же, на сколько я смог разобраться, Civil 3D по умолчанию заточен под отрисовку плавных полос отвода автодорог со всяческими виражами и развязками, в то время как мне необходимы максимально примитивные формы (некоторые из заказчиков искренне считают, что площадь полосы отвода должна равняться произведению её ширины на длину трассы)).

Последний раз редактировалось Агент СмиТ, 11.10.2012 в 13:44.
Агент СмиТ вне форума  
 
Непрочитано 11.10.2012, 14:11
#4
5hev

roads
 
Регистрация: 22.12.2010
msk
Сообщений: 121
<phrase 1= Отправить сообщение для 5hev с помощью Skype™


Агент СмиТ, понимаю
Ну, тут все просто, и шагов меньше потребуется, думаю.
1. Есть контура ПО и участков.
2. Преобразуем участки в фигуры, делаем _INTERSECT с каждым из них и ПО. Результат - искомые участки.

Все это в цикле. Тут и красить можно, и "самую западную" вершину определять.
В общем, то, о чем я упоминал в ответе №2.
5hev вне форума  
 
Автор темы   Непрочитано 12.10.2012, 09:13
#5
Агент СмиТ

Gti
 
Регистрация: 14.01.2010
МО Железнодорожный
Сообщений: 121


5hev[ru], если здесь не помогут с решением, возможно придётся конкретно браться за Civil 3D.
Цитата:
Сообщение от 5hev[ru
;982711]2. Преобразуем участки в фигуры...
- это как?
Агент СмиТ вне форума  
 
Непрочитано 12.10.2012, 09:24
#6
5hev

roads
 
Регистрация: 22.12.2010
msk
Сообщений: 121
<phrase 1= Отправить сообщение для 5hev с помощью Skype™


Агент СмиТ, извиняюсь за мой вольный перевод команды _REGION
После преобразования замкнутых полилиний в эти объекты, с ними можно делать бинарное сложение, вычитание, и - то что надо нам - пересечение.
5hev вне форума  
 
Автор темы   Непрочитано 13.10.2012, 17:35
#7
Агент СмиТ

Gti
 
Регистрация: 14.01.2010
МО Железнодорожный
Сообщений: 121


5hev[ru], благодарю за советы! Вник в бинарные операции AutoCad применительно к областям и хочу сказать что вместе с лиспом Вещь! (преобразует результирующие области в замкнутые полилинии, etc.), они предоставляют, по сравнению с отрисовкой врукопашную, довольно мощные возможности по формированию полосы отвода, а также решению иных сходных задач. Хотя если к упомянутому лиспу прикрутить ряд моментов, то вопрос темы можно было бы считать решенным полностью - обращусь за помощью к авторам, надеюсь помогут.
Агент СмиТ вне форума  
 
Непрочитано 14.10.2012, 00:27
#8
5hev

roads
 
Регистрация: 22.12.2010
msk
Сообщений: 121
<phrase 1= Отправить сообщение для 5hev с помощью Skype™


Агент СмиТ, да незачто Выложил бы готовое решение, которым пользуемся мы (вывод ведомости отвода, раскраска, подписи участков с кадастрами и площадями), но - запрещено договором. Интеллектуальная собственность, едрить
5hev вне форума  
 
Непрочитано 05.11.2012, 18:34
#9
Павел Котелевец

проектирование
 
Регистрация: 02.08.2006
Ухта
Сообщений: 32


Выложил объединение и вычитание в форуме про регионы.
Павел Котелевец вне форума  
 
Непрочитано 05.11.2012, 21:35
#10
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787


Где-где?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 06.11.2012, 10:05
#11
Агент СмиТ

Gti
 
Регистрация: 14.01.2010
МО Железнодорожный
Сообщений: 121


Речь идёт о https://forum.dwg.ru/showthread.php?p=993578
Агент СмиТ вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Отрисовка полосы отвода линейного объекта

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как определить ширину полосы отвода для прокладки водопровода?Или по каким нормативным документам определяется ширина полосы отвода? kess35 Инженерные сети 24 18.10.2023 02:54
Проект планировки территории и проект межевания территории линейного объекта Aelen Прочее. Архитектура и строительство 72 28.03.2016 16:40
Проект полосы отвода на реконструкцию линейного объекта OrlEV Автомобильные и железные дороги, мосты, тоннели и организация движения 7 22.01.2013 09:31
На основании чего разрабатывать Генеральный план на линейные объекты? diek Прочее. Архитектура и строительство 28 17.11.2011 22:13
Кто должен задать ширину полосы отвода? Ira T Технология и организация строительства 2 19.10.2011 12:33