Команда ВЫЧИТАНИЕ(subtract)
| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Команда ВЫЧИТАНИЕ(subtract)

Команда ВЫЧИТАНИЕ(subtract)

Ответ
Поиск в этой теме
Непрочитано 16.08.2010, 20:56 #1
Команда ВЫЧИТАНИЕ(subtract)
sanchez206283
 
Регистрация: 15.08.2010
Сообщений: 31

Подскажите, как можно вычесть одно 3D тело из другого, чтобы при этом оба этих тела остались? Видел в 3D max вроде после вычитания тел предлагается оставить или удалить обьект. Автокад же ничего не предлагает, а сразу удаляет вычитаемое тело.
Просмотров: 10366
 
Непрочитано 16.08.2010, 21:16
#2
vadim_evg1


 
Регистрация: 08.01.2007
Рус
Сообщений: 398


http://ad-cad.narod.ru/AD-Profil.htm
команда Ad-Sub
vadim_evg1 вне форума  
 
Автор темы   Непрочитано 16.08.2010, 22:45
#3
sanchez206283


 
Регистрация: 15.08.2010
Сообщений: 31


Загрузился файл формата vlx. И что с ним делать?
sanchez206283 вне форума  
 
Непрочитано 17.08.2010, 00:07
1 | #4
Дима_

Продуман
 
Регистрация: 22.02.2007
Питер
Сообщений: 2,839


команда subtr:
Код:
[Выделить все]
(vl-load-com)
(defun sstolist (ss / i lst); конвертирует набор в список
(setq i 0)
(if ss
(repeat (sslength ss)
(setq lst (append lst (list (ssname ss i))) i (1+ i))
));end of repeat & if
lst);end of sstolist
(defun c:subtr( / ss1)
(princ "\nВыберите тела из которых будет производиться вычитание ")
(setq	ss1 (mapcar 'vlax-ename->vla-object (sstolist (ssget (list (cons -4 "<OR") (cons 0 "3DSOLID") (cons 0 "REGION") (cons -4 "OR>"))))))
		(princ "\nВыберите вычитаемые тела ")
(mapcar '(lambda (obj)
		(mapcar '(lambda (x) (vla-boolean x acSubtraction (vla-copy obj))) ss1)) 
(mapcar 'vlax-ename->vla-object (sstolist (ssget (list (cons -4 "<OR") (cons 0 "3DSOLID") (cons 0 "REGION") (cons -4 "OR>"))))))
(princ))
__________________
Когда в руках молоток все вокруг кажется гвоздями.
Дима_ вне форума  
 
Непрочитано 17.08.2010, 07:06
#5
Хмурый


 
Регистрация: 29.10.2004
СПб
Сообщений: 16,379


а кажется, так всё просто: скопировал объекты сами на себя и вычитай
Хмурый вне форума  
 
Непрочитано 17.08.2010, 10:24
#6
Дима_

Продуман
 
Регистрация: 22.02.2007
Питер
Сообщений: 2,839


Цитата:
Сообщение от Хмурый Посмотреть сообщение
а кажется, так всё просто: скопировал объекты сами на себя и вычитай
Верно - но беда в том, что если вычитать из нескольких они меж собой объедняться, что не всегда удобно.
__________________
Когда в руках молоток все вокруг кажется гвоздями.
Дима_ вне форума  
 
Непрочитано 17.08.2010, 10:55
#7
atollon


 
Регистрация: 26.03.2010
Сообщений: 240


Ну выполни еще одну команду - Разделить
Код:
[Выделить все]
Команда: _solidedit
Автоматическая проверка тел при редактировании:  SOLIDCHECK=1
Задайте опцию редактирования тела [Грань/Ребро/Тело ACIS/Отменить/выХод] 
<выХод>: _body
Задайте опцию редактирования тела
[Клеймить/Разделить/оБолочка/Упростить/Проверить/Отменить/выХод] <выХод>: 
_separate
Выберите 3D тело:
__________________
Толстов Евгений
atollon вне форума  
 
Непрочитано 17.08.2010, 11:32
#8
конструтор


 
Регистрация: 11.01.2010
Сообщений: 20


sanchez206283,
А попробуй скопировать вычитаемое тело и вставить на тоже место- будет их два- одно изх них вычтеш другое останется
конструтор вне форума  
 
Автор темы   Непрочитано 20.08.2010, 16:00
#9
sanchez206283


 
Регистрация: 15.08.2010
Сообщений: 31


конструтор, я так и делал. Но в конструкции, где нужно сделать много вычитаний без удаления (шип-пазов в моем случае) это слишком уж кропотливо. Вот и ищу здесь способ поэффективнее.
sanchez206283 вне форума  
 
Непрочитано 20.08.2010, 21:43
#10
Taracka


 
Регистрация: 25.05.2010
Сообщений: 615


Все "шипы" на отдельный слой. Выбрать их все, скопировать, например на @0,10000. Потом вычесть то что нужно и переместить обратно второй экземпляр шипов.
Taracka вне форума  
 
Непрочитано 23.08.2010, 10:17 вычитание
#11
конструтор


 
Регистрация: 11.01.2010
Сообщений: 20


sanchez206283,

Кропотливо, но смотря как делать - попробуй вставить один шип и распредель енго по контуру массивом - это будет быстрей
Вложения
Тип файла: dwg
DWG 2007
Ответ sanchez206283.dwg (71.1 Кб, 3013 просмотров)
конструтор вне форума  
 
Непрочитано 23.08.2010, 13:41
#12
vrtm

рисование
 
Регистрация: 19.02.2009
Сообщений: 212
<phrase 1=


конструтор, Offtop: ты видимо указал стрелочкой на то место где у ТЕБЯ находится кнопка масштаба на расположенной у ТЕБЯ панели. Поржал - в документе тока выноска
vrtm вне форума  
 
Автор темы   Непрочитано 23.08.2010, 13:49
#13
sanchez206283


 
Регистрация: 15.08.2010
Сообщений: 31


vrtm, ага. Там только надпись "Массив" и выноска
sanchez206283 вне форума  
 
Непрочитано 24.08.2010, 08:06
#14
конструтор


 
Регистрация: 11.01.2010
Сообщений: 20


sanchez206283,
Ребята я прошу прощения
Действительно стрелка показывает на кнопку "Массив", а куда делся экран - ?
конструтор вне форума  
 
Непрочитано 13.12.2012, 14:12
#15
Jerald

Конструктор
 
Регистрация: 04.04.2007
Киев
Сообщений: 536


Нашёл сию тему поиском, что бы новую не открывать задам здесь вопрос: Кто то знает? Есть ли какая-нибудь системная переменная отвечающая за то, что бы команда SUBTRACT не объединяла солиды после вычитания из них?
Jerald вне форума  
 
Непрочитано 13.12.2012, 14:15
#16
Хмурый


 
Регистрация: 29.10.2004
СПб
Сообщений: 16,379


Jerald, такой системной переменной нет.
После объединения воспользоваться опцией команды

_solidedit
Solids editing automatic checking: SOLIDCHECK=1
Enter a solids editing option [Face/Edge/Body/Undo/eXit] <eXit>: _body
Enter a body editing option
[Imprint/seParate solids/Shell/cLean/Check/Undo/eXit] <eXit>: _separate
Хмурый вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Команда ВЫЧИТАНИЕ(subtract)



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
LISP. Вставка в таблицу поля, соотвествующего площади примитива Profan Готовые программы 272 06.06.2021 23:12
Печать из модели по выбору объекта zenon Программирование 192 04.05.2017 09:41
Преобразование полей в текст YuraVel AutoCAD 17 14.04.2015 14:30
ACAD-2002. Глюк начальной загрузки ЛИСП? ===AAA=== LISP 27 31.08.2005 07:58