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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Autolisp выделение объектов

Autolisp выделение объектов

Закрытая тема
Поиск в этой теме
Непрочитано 07.07.2015, 10:50 #1
Autolisp выделение объектов
DENBASS2004
 
Регистрация: 24.06.2009
Сообщений: 94

Подскажите пожалуйста. Есть операция вычесть один объект из другого. Программно прописываю операцию вычисление, выбираю объект из которого вычесть. А вот что вычесть проблема возникла. Объектов много. Если делать просто как на кульмане, то мышкой выделяешь область и все что в ней выделяется. А вот вв программе прописываю координаты тех же точек области, но он мне пишет что выделено 0 объектов. В чем может быть загвоздка?

----- добавлено через ~2 мин. -----
Цитата:
Сообщение от DENBASS2004 Посмотреть сообщение
Подскажите пожалуйста. Есть операция вычесть один объект из другого. Программно прописываю операцию вычисление, выбираю объект из которого вычесть. А вот что вычесть проблема возникла. Объектов много. Если делать просто как на кульмане, то мышкой выделяешь область и все что в ней выделяется. А вот вв программе прописываю координаты тех же точек области, но он мне пишет что выделено 0 объектов. В чем может быть загвоздка?
(command "_.subtract" 4balka "" (list (+ 0 (- Rn L 70)) (- 0 10)) (list (+ 0 (- Rn L) 10) (- 0 80)) "")
Просмотров: 4318
 
Непрочитано 07.07.2015, 11:02
#2
Vladimir_Sergeevich

рисую дороги, в перерывах курю Lisp
 
Регистрация: 20.04.2011
Пермь
Сообщений: 475
<phrase 1= Отправить сообщение для Vladimir_Sergeevich с помощью Skype™


Проблема может быть в том, что внутри command выражения не вычисляются. можно попробовать заменить на vl-cmdf или вычислять все входные параметры до вызова command
__________________
Не труд сделал из обезьяны человека, а лень и жажда халявы...
Vladimir_Sergeevich вне форума  
 
Непрочитано 07.07.2015, 11:03
#3
Бот
Moderator


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


DENBASS2004, просьба изменить название темы "Autolisp выделение объектов" в соответствии с п.4.3. правил форума, в противном случае тема будет закрыта через 12 часов.

Как переименовать тему?

Сообщение сгенерировано автоматически, отвечать на него не нужно
Бот вне форума  
 
Непрочитано 07.07.2015, 11:10
#4
Krieger

инженер (КМ)
 
Регистрация: 30.10.2004
Красноярск
Сообщений: 3,825


Используй для выделения функцию ssget с опцией "_C", "_CP".
__________________
Делай хорошо, плохо само получится.
Krieger вне форума  
 
Автор темы   Непрочитано 07.07.2015, 11:12
#5
DENBASS2004


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


Цитата:
Сообщение от Vladimir_Sergeevich Посмотреть сообщение
Проблема может быть в том, что внутри command выражения не вычисляются. можно попробовать заменить на vl-cmdf или вычислять все входные параметры до вызова command
ну, до этого у меня есть строки которые работают, например:
(command "_.slice" 1balka "" (list (- 0 (- Rn L)) (/ L1 2)) (list (- 0 (- Rn L 63)) (/ L2 2)) (list 0 0))
DENBASS2004 вне форума  
 
Непрочитано 07.07.2015, 11:13
#6
frostmourn


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


Цитата:
Сообщение от Vladimir_Sergeevich Посмотреть сообщение
внутри command выражения не вычисляются
Правда? А что им мешает?
frostmourn вне форума  
 
Непрочитано 07.07.2015, 11:13
#7
Бот
Moderator


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


DENBASS2004, просьба изменить название темы "Autolisp выделение объектов" в соответствии с п.4.3. правил форума, в противном случае тема будет закрыта через 3 часов.

Как переименовать тему?

Сообщение сгенерировано автоматически, отвечать на него не нужно
Бот вне форума  
 
Непрочитано 07.07.2015, 11:21
#8
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,990
<phrase 1= Отправить сообщение для VVA с помощью Skype™


Цитата:
Сообщение от DENBASS2004 Посмотреть сообщение
А вот вв программе прописываю координаты тех же точек области, но он мне пишет что выделено 0 объектов. В чем может быть загвоздка?
Нужно прописывать не точки, а передавать команде список, какой возвращает ф-ция (entsel), т.е. имя объекта, точка
Цитата:
Команда: (entsel)
Выберите объект: (<Имя объекта: 7ffffb06500> (635.119 -64.2884 0.0))
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Автор темы   Непрочитано 07.07.2015, 11:25
#9
DENBASS2004


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


Цитата:
Сообщение от Krieger Посмотреть сообщение
Используй для выделения функцию ssget с опцией "_C", "_CP".
Супер! Спасибо! Сразу все заработало. Но сделал через "_w" просто рамкой
DENBASS2004 вне форума  
Закрытая тема
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Autolisp выделение объектов

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Разработка ПОС, искусство проектирования Tyhig Технология и организация строительства 117 25.11.2021 17:38
Аттестация в Минрегионе по негосударственной экспертизе Людмила Охр Прочее. Архитектура и строительство 350 14.02.2015 17:50
вопрос про выделение объектов urfin_84 AutoCAD 5 22.08.2012 15:29
масштабирование объектов в AutoLISP sazone LISP 12 09.04.2009 15:52
Выделение одинаковых объектов. Timofeeve AutoCAD 11 06.03.2009 09:59