Как преобразовать круг в полилинию в автокаде
Перейти к содержимому

Как преобразовать круг в полилинию в автокаде

  • автор:

Как преобразовать круг в полилинию в автокаде

На уровень вверх ..

Редактирование и объединение полилиний

Редактирование и объединение полилиний

  1. Выберите меню Редактирование Объект Полилиния . В командной строке введите команду «полред».
  2. Выберите полилинию, линию или дугу для редактирования. Если выбрана линия или дуга, нажмите ENTER для преобразования выбранной линии или дуги в полилинию.
  3. Введите с (Соединить).
  4. Выберите одну или несколько полилиний, линий или дуг, располагаемых из конца в конец. Все выбранные полилинии, линии или дуги теперь соединяются в единую полилинию.
  5. Нажмите ENTER для завершения команды.

Панель: Редактирование II

Окружность в полилинию

была, но мне нужно именно окружность преобразовать в полилинию не 2х сегментную, а цельную. и не построение, а преобразование. чтоб окружность преобразоваласть в полилинию, типа как при команде _.donut

__________________
makusik
Регистрация: 25.12.2005
Сообщений: 13,627
Ему нужно, иш ты. Штатной команды такого преобразования не существует.
Регистрация: 27.04.2011
Сообщений: 408
Сообщение от makusik
полилинию не 2х сегментную, а цельную
такого не бывает в автокаде
Регистрация: 02.09.2009
Сообщений: 102
все, нашел, что искал. всем огромное спасибо за участие
__________________
makusik
Регистрация: 27.04.2011
Сообщений: 408
да ладно? поделитесь методами.
Регистрация: 29.10.2004
Сообщений: 16,310
Регистрация: 02.09.2009
Сообщений: 102

ничего особенного. мне подошло http://cadtips.cadalyst.com/curved-o. olyline-circle
это советовал VVA. Спасибо ему большое.

__________________
makusik

LISP, C# (ACAD 200[9,12,13,14])

Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,637

Что пнем по сове, что совой об пень. Окружность уничтожается и заменяется полилинией с 2 сегментами. Аналогичный результат и от _.boundary, и от _.donut.
Кроме того, код написан так, что а) не будет работать в локализованных версиях; б) вылетит при попытке обработать примитив, находящийся на заблокированном слое.

__________________
Моя библиотека lisp-функций

Обращение ко мне — на «ты».
Все, что сказано — личное мнение.

Кулик Алексей aka kpblc
Посмотреть профиль
Посетить домашнюю страницу Кулик Алексей aka kpblc
Найти ещё сообщения от Кулик Алексей aka kpblc

Форумы

В этом разделе конференции Вы можете разместить свое резюме для поиска новой работы или информацию о поиске специалистов для выполнения работ в области САПР и ГИС.

Обмен файлами (чертежи, модели, документация и т.п.) для САПР и ГИС. Файлы только ZIP, размер не более 700Кб.

Внимание! (Валентин Маслов) 13.04.2021 13:20:31
Обращения к Администрации форума, юмор, обсуждение вопросов не связанных с САПР и т.п.
Модульные рубильники (Magnus) 08.01.2024 23:25:16
Будьте всегда в курсе!
Узнавайте о скидках и акциях первым
Оставайтесь на связи
Наши контакты
105120, Москва, 3-й Сыромятнический переулок, 3/9, строение 1, 4 этаж

2004 — 2024 © Акционерное общество «РУССКАЯ ПРОМЫШЛЕННАЯ КОМПАНИЯ»
Обращаем ваше внимание на то, что данный Интернет-сайт носит исключительно информационный (справочный) характер и ни при каких условиях не является публичной офертой, определяемой положениями статьей 435, 437, 494 Гражданского кодекса Российской Федерации. Для получения подробной информации о стоимости обращайтесь в отдел продаж.

Как преобразовать Arc в Polyline?

в ком строке пишешь _pedit жмешь интер, в ответ на запрос выбираешь дугу, опять интер, делее КАД тебе выдаст что-то типа: выбранный объект не полилиния, преобразовать, жмешь интер. Готово.

#3 Ответ от Inna 21 сентября 2005г. 19:25:37

Re: Как преобразовать Arc в Polyline?

> serzh
Сделала по вашему совету, но после того как был указан объект «Arc», возникла новая проблема — «The object is not parallel to the UCS»
Command: pedit
Select polyline or [Multiple]:
The object is not parallel to the UCS.
Может быть вы знаете в чем проблема?

#4 Ответ от Владимир Громов 21 сентября 2005г. 19:53:38

Re: Как преобразовать Arc в Polyline?

> Inna
Это значит, что ваша дуга не параллельна плоскости текущей UCS (ПСК). Выделите ее и посмотрите свойства. Если координаты по Z не равны нулю, задать их в нуль. Не мешало бы и UCS установить в WCS (МСК).

#5 Ответ от Inna 22 сентября 2005г. 10:40:40

Re: Как преобразовать Arc в Polyline?

> Владимир
Громов
1. UCS установлен в WCS
2. Координаты Z элемента Arc в нуле
3. Открыла New drawing, скопировала в него из текущего чертежа проблемный элемент Arc и получила такое же сообщение: The object is not parallel to the UCS
Чертеж был сделан в AutoCAD 14, может быть отсюда эти проблемы?

#6 Ответ от Владимир Громов 22 сентября 2005г. 11:08:31

Re: Как преобразовать Arc в Polyline?

> Inna
Если новую дугу построить? И преобразовать ее в полилинию?
Если поверх дуги просто нарисовать дуговой сегмент полилинии?

#7 Ответ от kpblc 22 сентября 2005г. 11:54:45

Re: Как преобразовать Arc в Polyline?

> Владимир Громов
Если установлены привязки _nea, то дуга все равно не будет лежать на плоскости. Можно попробовать flatten из Express tools. но я не уверен насчет ее поведения с арками.

#8 Ответ от Пастух 22 сентября 2005г. 12:52:21

Re: Как преобразовать Arc в Polyline?

> [Re:] Inna
Установите плоскость XY ПСК параллельно дуге (команда _ucs с опцией _ob) и после этого _pedit

#9 Ответ от Inna 22 сентября 2005г. 18:07:10

Re: Как преобразовать Arc в Polyline?

Всем огромное спасибо!
>Владимир Громов
Можно конечно перечертить заново все Arc, но дело в том, что данный чертеж состоит из множества таких элементов.
>Пастух

Установите плоскость XY ПСК параллельно дуге (команда _ucs с опцией _ob) и после этого _pedit

Действительно, плоскость XY UCS развернулась относительно оси Z на неизвестный угол и теперь команда _pedit работает и преобразовывает Arc в Pline.
А в связи с этим возникает слудующая задача: развернуть плоскость XY UCS в классическое состояние, т.е. направление оси X=0 Y=90. Пробовала манипуляциями New UCS / 3 point, не помогает, UCS разворачивается и команда _pedit снова выдает ту же ошибку.

#10 Ответ от serzh 22 сентября 2005г. 21:25:20

Re: Как преобразовать Arc в Polyline?

А в связи с этим возникает слудующая задача: развернуть плоскость XY UCS в классическое состояние

_UCS _world — мировая СК,
или
_UCS _previos — предидущая
можете панельку UCS вытащить, там есть соответствующие кнопки

#11 Ответ от Inna 23 сентября 2005г. 00:43:17

Re: Как преобразовать Arc в Polyline?

> serzh
Можно и панельку вытащить, но может быть вначале посмотреть с чего началась проблема: если в данном чертеже установлена мировая UCS, то команда _pedit выдает ошибку (см. выше).
Можно конечно при вывернутой UCS преобразовать все элементы, а потом вернуть UCS в предыдущее состояние. Но интересно ведь решить проблему и выяснить откуда пришла эта проблема.

#12 Ответ от Владимир Громов 23 сентября 2005г. 06:10:53

Re: Как преобразовать Arc в Polyline?

Возможно, здесь надо поворачивать объекты, а не UCS, только неизвестно, вокруг чего. IMHO, можно попробовать, все-таки, в WCS выполнить команду «_flatten» из «Express Tools».

#13 Ответ от Владимир Громов 23 сентября 2005г. 08:56:22

Re: Как преобразовать Arc в Polyline?

Только, к сожалению, ее нет в меню «Express Tools» 2004-го.

#14 Ответ от Inna 24 сентября 2005г. 13:19:39

Re: Как преобразовать Arc в Polyline?

> Владимир
Громов
Команда «_flatten» — а в чем ее сущность? Исходя из названия, она переводит координаты Z всех элементов чертежа в единую величину? Устанавливает единую Elevation для всех элементов?
Может быть я ошибаюсь, но мне кажется если знать сущность команды, можно ее выполнить с помощью последовательного выполнения ряда существующих команд (имеющихся в наличии в версии 2004), я имею ввиду это д.б. небольшая LISP-программа?

#15 Ответ от Пастух 24 сентября 2005г. 15:07:12

Re: Как преобразовать Arc в Polyline?

. Но интересно ведь решить проблему и выяснить откуда пришла эта проблема.

Нет никакой проблемы. AutoCad требует для преобразования дуги в полилинию выполнения следующего условия: чтобы плоскость XY ПСК была параллельна (или совпадала) с плоскостью, в которой лежит дуга.
Выполните это требование. Затем преобразуйте дугу в полилинию. А дальше крутите Вашу ПСК сообразно решаемой задаче всеми доступными способами (см. выше про панельку UCS).

#16 Ответ от Runa 24 сентября 2005г. 15:32:44

Re: Как преобразовать Arc в Polyline?

Такие дуги часто выпрыгивают в автокад Оверлее (программа для оцифровки сканированых чертежей). С виду дуги как дуги но координата Z у них в противоположную сторону код: (210 0.0 0.0 -1.0). В принципе можно обвести такие дуги дугами в мировой системе координат, исходная дуга все равно паралельна МСК. А вот в ихней системе координат переводить в полинии не вижу смысла — при сложном редактировании этих полилиний опять же нужно будет переходить в ихнюю систему координат.

#17 Ответ от Inna 24 сентября 2005г. 16:08:02

Re: Как преобразовать Arc в Polyline?

> Пастух
Как решить проблему с командой «_pedit» вы четко описали в своей предыдущей консультации (Пастух (2005-09-22 12:52:21)) за что вам спасибо. И после ваших инструкций команда выполнилась, но я еще раз повторюсь, хотелось выяснить откуда пришла эта проблема. И с этой точки зрения, ответ Runa (2005-09-24 15:32:44) мне дал некоторое объяснение. Дело в том что данный проблемный чертеж поступил к нам от заказчика, с которым раньше мы не работали, но с которым в дальнейшем планируется сотрудничать. И решение данной проблемы помогло бы мне в дальнейшем экономить время.
>Runa
Спасибо!

#18 Ответ от Inna 24 сентября 2005г. 16:12:42

Re: Как преобразовать Arc в Polyline?

> Владимир
Громов
Если ли у вас ответ на мой вопрос, см. Inna (2005-09-24 13:19:39)?

#19 Ответ от Runa 24 сентября 2005г. 18:38:38

Re: Как преобразовать Arc в Polyline?

> Inna
на здоровье! только насчет решения (что более важно ИМХО) я еще не знаю и не обещаю.

#20 Ответ от Runa 24 сентября 2005г. 19:34:09

Re: Как преобразовать Arc в Polyline?

> Inna
возможное решение на скорую руку с помощью лиспа:

(defun c:test (/ D_50 D_51 END_POINT ENTITY ENT_NAME NABOR POINT RADIUS ST_POINT) (setq nabor (ssget "_X" '((0 . "arc")))) (if nabor (repeat (sslength nabor) (setq ent_name (ssname nabor 0)) (ssdel ent_name nabor) (setq entity (entget ent_name)) (if (= -1.0 (last (assoc 210 entity))) (progn (setq entity (subst '(210 0.0 0.0 1.0) (assoc 210 entity) entity) point (cdr (assoc 10 entity)) radius (cdr (assoc 40 entity)) d_50 (cdr (assoc 50 entity)) d_51 (cdr (assoc 51 entity)) st_point (polar point d_50 radius) end_point (polar point d_51 radius) point (trans point ent_name 0) st_point (angle point (trans st_point ent_name 0)) end_point (angle point (trans end_point ent_name 0)) entity (subst (cons 10 point) (assoc 10 entity) entity) entity (subst (cons 51 st_point) (cons 50 d_50) entity) entity (subst (cons 50 end_point) (cons 51 d_51) entity) ) (entmod entity) (entupd ent_name) (redraw ent_name 3) )) )) (princ) )

Но перед использованием этой функции желательно чтобы посмотрели другие на нее, возможны подводные камни (эти дуги такие загадочные).

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *