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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > определение границ области (AutoCAD & lisp)

определение границ области (AutoCAD & lisp)

Ответ
Поиск в этой теме
Непрочитано 09.03.2010, 18:34
определение границ области (AutoCAD & lisp)
a-karlson
 
Регистрация: 06.06.2009
Сообщений: 19

Доброго времени суток всем!

скажите пожалуйста, каким образом можно определить состав и количество примитивов, ограничивающих некую область.
само собой, граница может быть как замкнутая, так и разомкнутая.
Просмотров: 9053
 
Непрочитано 19.03.2010, 08:09
#21
Disney

Геодезист
 
Регистрация: 12.03.2009
Сибирь (где медведи по улицам ходят)
Сообщений: 860
Отправить сообщение для Disney с помощью Skype™


Боюсь, что пока не получиться, в 2010 Autodesk, приблизился к решению этой задачи, если при указании точки для штриховки внутри контура, контур окажется не замкнутым, то он ругается и показывает предполагаемые места разрыва, которые необходимо замкнуть.
Т.е. алгоритм в принципе понят, и его можно повторить, если нет замкнутого контура, он находит все "торчащие концы" примитивов, образующих этот контур.
[IMG]http://i064.***********/1003/e0/c1f9a51e142d.gif[/IMG]
[IMG]http://s002.***********/i197/1003/fb/b8404ec7c5f5.gif[/IMG]
[IMG]http://s54.***********/i144/1003/38/2e3602bd7eb0.gif[/IMG]
[IMG]http://s006.***********/i214/1003/2d/4301db8eab14.gif[/IMG]
__________________
Почему все вдруг становятся умными, когда уже не надо?
Disney вне форума  
 
Непрочитано 19.03.2010, 17:59
#22
Supermax

Руководитель фирмы
 
Регистрация: 28.03.2007
Москва
Сообщений: 1,831
Отправить сообщение для Supermax с помощью Skype™


Ну, не соглашусь, что все так безнадежно.
Для начала, игнорируем все блоки, солиды и вообще все, что не линии, дуги и 2D полилинии. Делаем из указанной точки векторы во все стороны и находим первые попавшиеся объекты в их направлении.
Выбираем все точки этих объектов (ближайших) и математически выстраиваем их в последовательную ломанную. Далее селектом делаем выбор по этой ломанной.
В частности все решение сводится к определению принадлежности точки к треугольнику, сегменту окружности и треугольнику, где одна сторона - дуга (правда это уже не треугольник).
Supermax вне форума  
 
Непрочитано 19.03.2010, 21:35
#23
zamtmn

КИПиА
 
Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
<phrase 1=


>>Ну, не соглашусь, что все так безнадежно.
Зря не соглащаешся. в общем случае задача очень сложная - часто не решаемая.

тут или вводить ограничения - упрощать задачу, или искать другой подход - например сразу иметь замкнутый контур и получать из него не замкнутый путем вставки разрвов (окон, дверей и т.д.)
zamtmn вне форума  
 
Непрочитано 27.11.2016, 14:06 Область
#24
closer72

Проектировщик
 
Регистрация: 27.11.2016
Тюмнь
Сообщений: 1
<phrase 1=


Я как-то автоматизировал работу с однострочным текстом: выравнивание по левому краю, по правому, по центру и равномерное выравнивание текста в ячейке таблицы из линий и полилиний. Столкнулся с подобной задачей, ячейки таблиц в автокаде не всегда были замкнуты, программа работала по алгоритму:
1) запрашивала у пользователя секущей рамкой две точки, при этом пользователю необходимо было выделить всю таблицу целиком, немного захватывалось и окружающее таблицу пространство.
2) а дальше шла работа с координатами концов полилиний и отрезков попавших в набор, из них я получал примерные границы любого незамкнутого прямоугольного контура.
3) затем шла модификация координат текста, выравнивание его по вертикали с учётом размера шрифта и габарита ячейки.
Думаю подобный алгоритм можно применить и тут.
closer72 вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > определение границ области (AutoCAD & lisp)

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Видеоуроки AutoCAD kosmax AutoCAD 173 17.02.2017 15:08
как в autocad увеличить границу печатаемой области exploer AutoCAD 11 03.10.2013 19:08
LISP: как узнать, AutoCAD 64-bit или 32? VetalBY LISP 12 02.11.2010 05:40
В русской версии AutoCAD 2010 SP1 32-bit файл Acad.PGP содержит ошибки. hwd Баги и пожелания в Autodesk 21 21.04.2010 20:27
Информация по идентификационным кодам программ в сетевых лицензиях Autodesk KSI AutoCAD 1 14.09.2009 15:59