Тема: Как объединить несколько отрезков или дуг в полилинию?

здрасте нужен лисп
мож у кого есть ?
такой что бы вот например две линии лежат соприкасаются ручками и что бы лисп объединил в одну полилинию и т.д. 3 линии в 1 полилинию и т.д.

Re: Как объединить несколько отрезков или дуг в полилинию?

0. Тему переименовать надо.
1. Если именно лисп нужен, то в другую ветку.
2. Лисп не нужен. Команда _.pedit с опцией _m. Дальше по ком.строке.

Re: Как объединить несколько отрезков или дуг в полилинию?

> Андрей
команда _join тоже все объединит

Re: Как объединить несколько отрезков или дуг в полилинию?

Макрос на кнопку

^C^C(progn(setq ssnab (ssget "_I"))(while (not ssnab)(setq ssnab (ssget)))(command "_pedit" "_Multiple" ssnab "" "_Y" "_Join" 0 ""));

Re: Как объединить несколько отрезков или дуг в полилинию?

(defun c:plcreate (/ selset)
  (vl-load-com)
  (vla-startundomark (vla-get-activedocument (vlax-get-acad-object)))
  (if (setq selset (ssget "_:L" '((0 . "LINE,ARC,LWPOLYLINE"))))
    (if  (vl-remove-if-not
    '(lambda (x) (member (cdr (assoc 0 (entget x))) '("ARC" "LINE")))
    (vl-remove-if 'listp (mapcar 'cadr (ssnamex selset)))
    ) ;_ end of vl-remove-if-not
      (command "_.pedit" "_m" selset "" "_y" "_j" 0 "")
      (command "_.pedit" "_m" selset "" "_j" 0 "")
      ) ;_ end of if
    ) ;_ end of if
  (vla-endundomark (vla-get-activedocument (vlax-get-acad-object)))
  ) ;_ end of defun

Взято с https://www.caduser.ru/forum/topic28552.html

Re: Как объединить несколько отрезков или дуг в полилинию?

макрос не работает почему
Крыс как ТВОим лиспом пользоваться ну всмысле что мне делать с этой горой букв ??

Re: Как объединить несколько отрезков или дуг в полилинию?

у меня 8100 объектов  какие группы объектов прилигают друг к другу а какието нет ну так вот надо уменьшить кол во этих объектов я так думаю объединение улучшит ситуацию

Re: Как объединить несколько отрезков или дуг в полилинию?

так вроде разобрался скопировать текс в файл с расширение lsp а дальше всё понятно
работает )) но всё равно не то что хотелось б ы ))

Re: Как объединить несколько отрезков или дуг в полилинию?

Overkill - попробуй еще эту команду. Она убирает двойные линии и объединяет тоже, там можно задать допуск на расстояния между концами отрезков.

Re: Как объединить несколько отрезков или дуг в полилинию?

у меня была мебель в 3д
ну я захотел чистенькую версию в 2д
вообщем
flatten  каманда
потом макрос крыса
Overkill поставил жирную точку  жаль канешно что немного мебель покарёжилась ну ладно при распечатке не оч видно будет +)) из 8100 объектов получилось 3900

Re: Как объединить несколько отрезков или дуг в полилинию?

кстате  файл весил 2,9мб после чистки весит 2,6 почему ?

Re: Как объединить несколько отрезков или дуг в полилинию?

Макрос не будет работать, если PEDITACCEPT установлена в 1.
Тебе поможет макрос Громова с указанной крысом ссылки

^C^C_PEDIT;_m;_all;;_y;_j;;;

PEDITACCEPT должна быть 0

Re: Как объединить несколько отрезков или дуг в полилинию?

Возможно вам нужно было просто снять 3d проекции с вашей 3d мебели. Линейка Solids, кнопка Profile. Работает в Layout, через окно

Re: Как объединить несколько отрезков или дуг в полилинию?

2d проекции конечно..

Re: Как объединить несколько отрезков или дуг в полилинию?

это канешно всё хорошо но миллион слоёв в которой сделана мебель мне не оч по душе )))

Re: Как объединить несколько отрезков или дуг в полилинию?

Я помучался с вашими макросами и не понял ничего. Наверное, я неправильно запускал - как лисп (файл с расширением lsp), а не как макрос.
Выкрутился командой BOUNDARY. Но она подойдёт, только если объекты образуют пустой контур.
[Скопирую во все темы, авось кому пригодится)].

Re: Как объединить несколько отрезков или дуг в полилинию?

> ivan
Это для тебя
http://dwg.ru/art/2
http://dwg.ru/art/8

Re: Как объединить несколько отрезков или дуг в полилинию?

а команда
pedit
с ключом Join
почему не катит ?