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

Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Boundary, но не совсем

Boundary, но не совсем

Ответ
Поиск в этой теме
Непрочитано 23.03.2009, 11:39
Boundary, но не совсем
Circle
 
Регистрация: 23.03.2009
Сообщений: 14

Приветствую.
Имеею множество линий и дуг которые пересекаясь образуют замкнутые области. Нужно получить контуры этих областей в полилиниях. Неплохо с этим справляется команда boundary, но минус в том что приходится тыкать вручную в каждую область, а если их 100 или больше. Вопрос как можно сделать так чтобы можно было выделять например обычным способом справа налево все сразу , при этом находились бы замкнутые области и обводились полилиниями

Вложения
Тип файла: dwg
DWG 2004
Primer.dwg (31.8 Кб, 5367 просмотров)

Просмотров: 24898
 
Непрочитано 05.12.2015, 11:51
#81
Oleg T


 
Регистрация: 27.12.2011
Сообщений: 1,456


Цитата:
Сообщение от АлексЮстасу Посмотреть сообщение
Немного изменил Ваш исходный контур - для случая, ближе к общему
В этом случае у меня не получилось так гладко с одного раза, как у Sleekka. Без проблем распознал только турбокад, но там неприятности с дугами (как я уже говорил). Причем он отрабатывает с этим примером даже тогда, когда на экране только маленький кусочек изображения (почти все за кадром).

В брикскаде точный контур получился за 2 хода:
1. Создание области (без разбиения примитивов в точках пересечения).
2. Команда _boundary. Причем я приближал контур так, как говорил в #63 (то есть видимым был маленький кусочек области).
Возможно, еще система и железо как-то влияют, раз у Sleekka в двух случаях результаты лучше, чем у меня (версия брикса та же, 15.3.05).

Цитата:
Сообщение от АлексЮстасу Посмотреть сообщение
Если в других кадах есть еще нормальные аналоги Map/Civil 3D
Что я знаю (не моя специализация), так это только MicroSurvey CAD, изыскания - проектирование. По-моему, на базе ядра IntelliCAD (у брикса - другое, свое).

Последний раз редактировалось Oleg T, 05.12.2015 в 12:01.
Oleg T вне форума  
 
Непрочитано 05.12.2015, 15:30
#82
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,074


Цитата:
Сообщение от Oleg T Посмотреть сообщение
В брикскаде точный контур получился за 2 хода:
1. Создание области (без разбиения примитивов в точках пересечения).
2. Команда _boundary. Причем я приближал контур так, как говорил в #63 (то есть видимым был маленький кусочек области).
Возможно, еще система и железо как-то влияют, раз у Sleekka в двух случаях результаты лучше, чем у меня (версия брикса та же, 15.3.05).
Какой смысл в _boundary, если уже есть область?
Странно... В #79 Sleekka даже видео выложил - про создание области там не видно. Может быть он волшебное слово знает?

Смысл _boundary в режиме точки собственно в том, что не нужно указывать никакие элементы границ, не нужно что-то преобразовывать и что-то еще создавать. В сложных файлах, при возможных оч. больших и оч. мелких элементах границ, выделить без пропусков, без ошибок все нужные элементы границ бывает оч. сложно. Основной смысл в том, что границы можно находить, создавать контур только лишь по точке. Т.е. много проще, быстрее, надежнее для пользователя.
__________________
количество моих сообщений не говорит о знании Автокада
АлексЮстасу вне форума  
 
Непрочитано 05.12.2015, 16:04
#83
Oleg T


 
Регистрация: 27.12.2011
Сообщений: 1,456


Цитата:
Сообщение от АлексЮстасу Посмотреть сообщение
Какой смысл в _boundary, если уже есть область?
Так это если нужны именно полилинии для редактирования.
А так, получается, есть решение задачи получения группы корректных контуров максимально быстрое, только не в автокаде )))
Пара минут - 1460 корректных областей. Наружная - лишняя.
Вложения
Тип файла: dwg
DWG 2007
_region_вместо_boundary.dwg (1.91 Мб, 1104 просмотров)
Oleg T вне форума  
 
Непрочитано 05.12.2015, 19:17
#84
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,074


Цитата:
Сообщение от Oleg T Посмотреть сообщение
Так это если нужны именно полилинии для редактирования.
А так, получается, есть решение задачи получения группы корректных контуров максимально быстрое, только не в автокаде )))
Необходимо все-таки разделить эти две родственные, но разные задачи:
1. получение элементов границ минимального контура вокруг точки, создание такого контура вокруг точки и
2. получение всех возможных минимальных контуров из указанного множества элементов.

Про нужность решения в Автокаде второй задачи говорится тоже давным-давно, в т.ч. и мной. Обсуждаются такие лиспы, созданы программки. Например, давно уже создана индийцами FlashPolygons, и она даже присутствует в списке приложений к BricsCAD (как французская). Она создает сразу полилинии. Кстати, возможно же, что в BricsCAD есть еще и преобразование областей в полилинии?
Я пытаюсь развести обсуждения этих задач, чтобы не путаться, и найти пути решений. В конце - да, обеих задач. Автокад до сих пор не решает нормально или вообще ни первую, ни вторую задачу.

1. Если пользователю для получения одного, нескольких контуров нужно предварительно создавать области (потом _boundary по точке, потом ненужные области удалить), то теряется смысл _boundary по точке. Смысл ее ровно в минимуме действий для пользователя - только точку указать.
Другое дело, что программное решение _boundary по точке вполне может быть и таким - программа для себя создает все возможные минимальные замкнутые контуры, а пользователю выдает именно те, внутри которых указаны точки. Ваши примеры с BricsCAD и пр., FlashPolygons показывают, что такой обходной маневр может оказаться достаточно быстрым и явно надежнее.
2. Можно быстро получить все возможные минимальные контуры [из указанных элементов] в BricsCAD и пр., во FlashPolygons, в вертикальном приложении AutoCAD Map 3D (для самых обычных, не пользовательских элементов) - почему так сложно, что по факту невозможно в самом Автокаде эту возможность реализовать?

Вы не могли бы в BricsCAD попробовать создать области для тестовых файлов с сайта BricsCAD? Внизу страницы "Загрузить набор файлов для тестирования". Для больших файлов? Засечь время, за которое будут сделаны все возможные области?
__________________
количество моих сообщений не говорит о знании Автокада
АлексЮстасу вне форума  
 
Непрочитано 06.12.2015, 09:04
#85
Oleg T


 
Регистрация: 27.12.2011
Сообщений: 1,456


Цитата:
Сообщение от АлексЮстасу Посмотреть сообщение
Необходимо все-таки разделить эти две родственные, но разные задачи:
1. получение элементов границ минимального контура вокруг точки, создание такого контура вокруг точки и
2. получение всех возможных минимальных контуров из указанного множества элементов.
Да, конечно.

Цитата:
Сообщение от АлексЮстасу Посмотреть сообщение
Вы не могли бы в BricsCAD попробовать создать области для тестовых файлов с сайта BricsCAD
Возможно, посмотрю на неделе.

PS. Так Вы и сами можете попробовать, для закачки дистрибутива триала нужен только электронный адрес,
вес где-то 180-190 МБ, устанавливается за пару минут. Все команды дублируют акадовские.

Последний раз редактировалось Кулик Алексей aka kpblc, 06.12.2015 в 11:15.
Oleg T вне форума  
 
Непрочитано 07.12.2015, 04:46
#86
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,074


Цитата:
Сообщение от Oleg T Посмотреть сообщение
В этом случае у меня не получилось так гладко с одного раза, как у Sleekka. Без проблем распознал только турбокад, но там неприятности с дугами (как я уже говорил).
Для порядка хотелось бы уточнить про обработку примера из #78. Почему-то у Sleekka получилось легко, а у Вас - нет?
__________________
количество моих сообщений не говорит о знании Автокада
АлексЮстасу вне форума  
 
Непрочитано 07.12.2015, 10:42
#87
Oleg T


 
Регистрация: 27.12.2011
Сообщений: 1,456


Цитата:
Сообщение от АлексЮстасу Посмотреть сообщение
Почему-то у Sleekka получилось легко, а у Вас - нет?
Не знаю. У меня получается при выборе объектов для создания набора контуров.
Может, от железа и системы зависит.

Последний раз редактировалось Oleg T, 07.12.2015 в 12:34.
Oleg T вне форума  
 
Непрочитано 08.12.2015, 20:08
#88
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,074


Цитата:
Сообщение от Sleekka Посмотреть сообщение
Проверили

Increase Size Decrease Size Нажмите для просмотра
http://youtu.be/_FGtOp7eoVM
Специально видео снял, вдруг не поверите.
Подскажите, плз, как Вы делали? У Oleg T по точке не получилось.
Я установил сейчас BricsCAD ознакомительную версию 15.3.05 (x86) ревизия 39062. Сообщили, что ставится аж Platinum.
У меня BOUNDARY из BricsCAD вообще - сделала почти все, как в Автокаде. Т.е. BricsCAD делает по точкам два отдельных контура, почти такие же, как и Автокад. Есть отличие - при создании нижнего контура в него включается и весь перешеек.
Как и в Автокаде, BricsCAD не находит контуры, если не все элементы границ видны на экране. Как и в Автокаде, BricsCAD упрощает "мелкие" детали - см картинку, черная - созданный контур.
Но это у меня, новичка.
А Вам как удается делать весь контур по точке? Да чтобы мелкие детали не срезались?
Миниатюры
Нажмите на изображение для увеличения
Название: BricsCAD_boundary.png
Просмотров: 19
Размер:	12.7 Кб
ID:	161862  
__________________
количество моих сообщений не говорит о знании Автокада
АлексЮстасу вне форума  
 
Непрочитано 09.12.2015, 08:37
#89
Oleg T


 
Регистрация: 27.12.2011
Сообщений: 1,456


Цитата:
Сообщение от АлексЮстасу Посмотреть сообщение
Как и в Автокаде, BricsCAD не находит контуры, если не все элементы границ видны на экране
Для себя определился окончательно. У меня в бриксе для создания контуров (и штриховок) без ошибок по внутренней точке
сначала все-таки нужно создать набор контуров и затем последовательно указывать точки, при этом приближая экран до размеров,
соизмеримых с проблемной областью (в автокаде не проверял, не хочется, и там с зуммированием проблемы. До 13-й версии во всяком случае).
По-моему, это - вполне себе вариант алгоритма для написания макроса.
НО!!!
Вспомнил про нанокад (и почему раньше забыл ?))).
Так вот в бесплатной версии в этом примере все происходит ИДЕАЛЬНО без предварительного создания набора контуров.
Для усложнения эксперимента уменьшал изображение максимально далеко, чтобы только точку можно было указать.

Вот так как-то )))
Так что или пишите (заказывайте) макрос, или создавайте контуры в нанокаде. У меня из нано- в брикс- объекты копируются через буфер без проблем.
Oleg T вне форума  
 
Непрочитано 09.12.2015, 16:41
#90
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,074


Цитата:
Сообщение от Oleg T Посмотреть сообщение
У меня в бриксе для создания контуров (и штриховок) без ошибок по внутренней точке
сначала все-таки нужно создать набор контуров и затем последовательно указывать точки, при этом приближая экран до размеров,
соизмеримых с проблемной областью (в автокаде не проверял, не хочется, и там с зуммированием проблемы. До 13-й версии во всяком случае).
По-моему, это - вполне себе вариант алгоритма для написания макроса.
НО!!!
Вспомнил про нанокад (и почему раньше забыл ?))).
Так вот в бесплатной версии в этом примере все происходит ИДЕАЛЬНО без предварительного создания набора контуров.
Для усложнения эксперимента уменьшал изображение максимально далеко, чтобы только точку можно было указать.
Вот только что решил проверить в BricsCAD еще раз, и все получилось сразу и только по точке. Там же в BricsCAD допуск есть! У Автокада его нет... По умолчанию он был 0.0000. И контур строился из двух раздельных. Если сделать допуск 0.0001, то при любом увеличении у меня делается полный и точный контур.
Но если на экране видна не бОльшая часть фигуры, то контур не строится - как в Автокаде.
Кстати BOUNDARY из BricsCAD сплайны тоже обрабатывает.

А про Нанокад... У автора BNDR были тесные контакты с Нанокадом
Проверьте в Нанокаде - если от фигуры виден на экране только маленький краешек, то сделает контур? Если сделает, то BNDR уже в Нанокаде.
__________________
количество моих сообщений не говорит о знании Автокада

Последний раз редактировалось АлексЮстасу, 09.12.2015 в 16:58.
АлексЮстасу вне форума  
 
Непрочитано 09.12.2015, 17:04
#91
Oleg T


 
Регистрация: 27.12.2011
Сообщений: 1,456


Цитата:
Сообщение от АлексЮстасу Посмотреть сообщение
Если сделать допуск 0.0001
А я и не проверил, потому как в фильме от Sleekka такого не увидел. Отлично!
Проверил в Нанокаде.
Без создания набора контуров строит все-таки только когда на экране по крайней мере больше половины изображения.
А если создать набор контуров, то можно и приближать как угодно.

PS
Теперь понятно, почему в фильме от Sleekka все так классно.
Стоило мне один раз назначить допуск, как штриховки и контуры стали строиться корректно.
Но его значение не отображалось в окне команды, пока я не переназначил значение системной переменной LUPREC на 5 (а было 4).

Последний раз редактировалось Oleg T, 09.12.2015 в 17:18.
Oleg T вне форума  
 
Непрочитано 09.12.2015, 22:02
#92
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,074


Цитата:
Сообщение от Oleg T Посмотреть сообщение
сначала все-таки нужно создать набор контуров
Посмотрел на создание регионов в BricsCAD.
Что-то не совсем то там получается, когда указываются сразу все возможные исходные элементы...
__________________
количество моих сообщений не говорит о знании Автокада

Последний раз редактировалось АлексЮстасу, 11.12.2015 в 18:34. Причина: не была видна ссылка на видео
АлексЮстасу вне форума  
 
Непрочитано 10.12.2015, 01:23
#93
Sleekka

-
 
Регистрация: 24.07.2005
Москва
Сообщений: 1,335


Цитата:
получение всех возможных минимальных контуров из указанного множества элементов
Эта задача решается на лиспе после решенной первой за 20 мин со всеми тестировками.
Я в командировке с планшета.
1) сплайны конвертить в полилинии
2) получить облако точек пересечений каждого обекта с каждым
3) из этого облака точек получить новое превратив каждую точку в 4 точки с отступом не более 0.0001 или не более 1/1000 я габаритного контейнера всех точек, при невыполнении второго условия задачу вообще не решать.
4) подставлять точки в _boundary проверяя не принадлежит ли точка готовым контурам.
Все.
Sleekka вне форума  
 
Непрочитано 10.12.2015, 01:40
#94
Кулик Алексей aka kpblc
Moderator

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


Добавь сюда блоки с разными углами поворотов и масштабами, внешние ссылки, примитивы, имеющие разницу по оси Z, учти Elevation... Я не думаю, что эта задача настолько уж тривиальна.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 10.12.2015, 10:42
#95
kp+

идущий по граблям
 
Регистрация: 26.05.2005
Сообщений: 5,187


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Добавь сюда блоки с разными углами поворотов и масштабами, внешние ссылки, примитивы, имеющие разницу по оси Z, учти Elevation...
Ради автоматического получения заветных контуров не грех привести подоснову в вид, съедобный для "Boundary, но не совсем".
kp+ вне форума  
 
Непрочитано 10.12.2015, 11:07
#96
Кулик Алексей aka kpblc
Moderator

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


С чего это "подоснова"? Тут и без вн.ссылок головняка хватит )
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 10.12.2015, 11:24
#97
kp+

идущий по граблям
 
Регистрация: 26.05.2005
Сообщений: 5,187


я имею ввиду, что ради запуска "Boundary, но не совсем" не влом предварительно "вклеить" все внеш. ссылки, "подорвать" все блоки и "сплющить" все примитивы с ненулевой Z-координатой. А при написании заветной проги сосредоточиться на алгоритме.
kp+ вне форума  
 
Непрочитано 11.12.2015, 01:33
#98
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,074


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Добавь сюда блоки с разными углами поворотов и масштабами, внешние ссылки, примитивы, имеющие разницу по оси Z, учти Elevation... Я не думаю, что эта задача настолько уж тривиальна.
Цитата:
Сообщение от kp+ Посмотреть сообщение
А при написании заветной проги сосредоточиться на алгоритме
Да, мне кажется, что сначала бы решить главную задачу - поиска минимальных контуров вокруг точки. Полных, точных и не зависящих от увеличения, видимости всех элементов на экране. Остальное, возможно, и нужно, но факультативно.

Кстати, думаю, что непосредственно создание сразу замкнутых контуров не главное! Думаю, что важнее обнаружение, выделение элементов, чьи пересечения, соединения образуют границы этих контуров.
После обнаружения этих частей границ есть возможность образовать из них и контуры, и производить иные необходимые действия. В т.ч. считать площади, заливать-штриховать и пр. Мне, например, кроме этих задач важна возможность добавлять к этим частям найденных границ расширенные данные.
__________________
количество моих сообщений не говорит о знании Автокада
АлексЮстасу вне форума  
 
Непрочитано 11.12.2015, 10:28
#99
kp+

идущий по граблям
 
Регистрация: 26.05.2005
Сообщений: 5,187


Итак, мы вернулись к чему-то вроде написанной сумрачным гением BNDR.
Я в #55 интересовался, не желает ли создатель ПРОДАТЬ пару копий своего творения КАК ЕСТЬ, без доработок? Или, грешным делом, выложить на форуме бесплатно
Ответа не получил
АлексЮстасу, что скажете?
kp+ вне форума  
 
Непрочитано 11.12.2015, 18:28
#100
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,074


Цитата:
Сообщение от kp+ Посмотреть сообщение
так, мы вернулись к чему-то вроде написанной сумрачным гением BNDR.
Я в #55 интересовался, не желает ли создатель ПРОДАТЬ пару копий своего творения КАК ЕСТЬ, без доработок? Или, грешным делом, выложить на форуме бесплатно
Offtop: Я работаю над этим...Мне интересно, для какого рода задач Вам нужна нормальная BOUNDARY?
__________________
количество моих сообщений не говорит о знании Автокада
АлексЮстасу вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Boundary, но не совсем

Опции темы Поиск в этой теме
Поиск в этой теме:

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
совсем запутался в "Атрибутах" slooter AutoCAD 8 21.10.2010 18:09
Связь результата команды BOUNDARY с масштабом изображения. M_A_X Программирование 15 11.05.2009 11:21
Не делается Boundary для контура из Spline... RasSvet AutoCAD 4 17.01.2009 22:06
команда boundary не работает со сплайнами? Jоhnny AutoCAD 9 14.05.2008 14:32
_xclip. Как clipping boundary сделать с непрямыми участками? k911 AutoCAD 2 21.08.2007 21:35