Тема: Удалить все что находиться за пределом замкнутой полилинии
Есть чертеж, макрос рисует прямоугольник в определенном месте чертежа. Далее необходимо удалить ту часть чертежа что ни вошло в район прямоугольника. Если можно то код VBA.
Информационный портал для профессионалов в области САПР
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
Форумы CADUser → Программирование → VBA → Удалить все что находиться за пределом замкнутой полилинии
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Есть чертеж, макрос рисует прямоугольник в определенном месте чертежа. Далее необходимо удалить ту часть чертежа что ни вошло в район прямоугольника. Если можно то код VBA.
легче на лиспе
(setq pol (car(entsel "Select bound"))); взять полигон нарисованный заранее Создать лист точек / Лень писать как (setq ssAll (ssget "X")) ;Взять все из чертежа (setq ssByPol (ssget "X" "WP" лист точек )) (setq i 0) (while (setq ent(ssname ssAll i))));Удалить все из чертежа (entdel ent) (setq i (+ i 1)) ) (setq i 0) (while (setq ent(ssname ssByPol i));Удалить еще раз вубранные ssByPol (entdel ent) (setq i (+ i 1)) )
Алгоритм основан на том что фун entdel первый раз удаляет а второй раз востанавливает ent
Если надо еще и обрезать, то в Express ->Modify->Cookie Cutter Trim ( или команда extrim)
спасибо буду пробовать Лиспи если получиться (уж больно скобочек много :) )
Могу посоветовать из своего более чем 10 летнего опыта работы на лиспе. Открывая скобку, тут же ее закрываjте (), а потом добавляйте между ними код (setq МоиДеньги ТвоиДеньги)
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Форумы CADUser → Программирование → VBA → Удалить все что находиться за пределом замкнутой полилинии
Форум работает на PunBB, при поддержке Informer Technologies, Inc