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

Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Лисп помогает чертить

Лисп помогает чертить

Ответ
Поиск в этой теме
Непрочитано 23.11.2008, 19:06 #1
Лисп помогает чертить
Vova
 
Engineer
 
New-York
Регистрация: 05.09.2003
Сообщений: 10,288

Часто надо запомнить выбранный набор объектов, чтобы им манипулировать в течение времени, пока открыт файл. Штатное средство это команда _Group. Но есть еще один способ. Если написать в командной строке (Setq A (ssget)) и нажать Enter то вас попросят выбрать объекты. Далее, при необходимости, например, подвинуть этот набор достаточно в команде Move набрать в комстроке !A и давно приготовленный набор станет готов к передвижению. Набор других элементов можно обозвать другой буквой (только не голой цифрой) и так далее. Здесь срабатывает функция LISP.
Кто знает другие функции LISP, которые-бы помогали в практическом черчении так-же как эта?
Просмотров: 2806
 
Непрочитано 23.11.2008, 19:18
#2
Хмурый


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


сколько наборов держать можно одновременно в современных версиях AutoCAD? Раньше их кол-во было не более 6. Далее- шла дикая перегрузка оперативной памяти. Требовалось постоянно вычищать мусор командой (gc)
Хмурый вне форума  
 
Непрочитано 23.11.2008, 19:37
#3
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


Хмурый,
Цитата:
Selection sets consume AutoCAD temporary file slots, so AutoLISP is not permitted to have more than 128 open at one time. If this limit is reached, AutoCAD cannot create any more selection sets and returns nil to all ssget calls. To close an unnecessary selection set variable, set it to nil.
В принципе так можно запоминать не только наборы, а ,например, точки.
(setq pt (getpoint "\nPoint? :"))
А потом на запрос точки набрать !pt
В общем случае в переменную через setq можно запомнить что-нибудь, а потом на это что-нибудь сослаться через !Имя_переменной
__________________
Как использовать код на Лиспе читаем здесь

Последний раз редактировалось VVA, 24.11.2008 в 11:10.
VVA вне форума  
 
Непрочитано 23.11.2008, 19:49
#4
Baldares


 
Регистрация: 17.10.2008
Саратов
Сообщений: 426


(+ 2 2)
Например при построении отрезка нужной длины.
Не совсем к черчению, но всеже.
Baldares вне форума  
 
Непрочитано 23.11.2008, 21:38
#5
Хмурый


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


VVA, спасибо. Это всё понятно и прозрачно. Но есть-ли ограничение на кол-во вызванных наборов ssget?
Хмурый вне форума  
 
Непрочитано 23.11.2008, 23:04
#6
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406


128 штук, если мне не изменяет память...
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 24.11.2008, 02:06
#7
Дима_

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


По поводу количества ssget - оно вроде тоже зависит от версии.
__________________
Когда в руках молоток все вокруг кажется гвоздями.
Дима_ вне форума  
 
Непрочитано 24.11.2008, 05:12
#8
Profan


 
Регистрация: 25.12.2005
Москва
Сообщений: 13,627


Цитата:
Кто знает другие функции LISP, которые-бы помогали в практическом черчении так-же как эта?
Да вот, например. Некто хочет нарисовать отрезок в "масштабе". Для этого некто может указать начальную точку, направление (мышью) и масштабный коэффициент в виде (/ 560 75). В данном случае сработет функция "Поделить 560 на 75". Это масштаб такой дурной 1:75.
Profan вне форума  
 
Непрочитано 24.11.2008, 07:45
#9
skif58

Наше дело труба
 
Регистрация: 19.11.2006
Томск_Комсомольск-на-Амуре
Сообщений: 1,736
<phrase 1= Отправить сообщение для skif58 с помощью Yahoo Отправить сообщение для skif58 с помощью Skype™


Рисуя отрезок в "масштабе", некто имеет бонус и просто вводит 560/75
__________________
*...И Случай, бог изобретатель. *
skif58 вне форума  
 
Непрочитано 24.11.2008, 08:10
#10
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Только уж тогда (/ 560.0 75.0), иначе результат может быть неточный.
ShaggyDoc вне форума  
 
Непрочитано 24.11.2008, 08:18
#11
Profan


 
Регистрация: 25.12.2005
Москва
Сообщений: 13,627


Этот "бонус" иногда некту может боком выйти.
Profan вне форума  
 
Непрочитано 24.11.2008, 08:50
#12
skif58

Наше дело труба
 
Регистрация: 19.11.2006
Томск_Комсомольск-на-Амуре
Сообщений: 1,736
<phrase 1= Отправить сообщение для skif58 с помощью Yahoo Отправить сообщение для skif58 с помощью Skype™


Цитата:
Сообщение от Profan Посмотреть сообщение
Этот "бонус" иногда некту может боком выйти.
А если некта вводит в ДИН и жмет ТАБ ?
__________________
*...И Случай, бог изобретатель. *
skif58 вне форума  
 
Непрочитано 24.11.2008, 23:46
#13
AlphaGeo


 
Сообщений: n/a


Цитата:
Сообщение от skif58 Посмотреть сообщение
Рисуя отрезок в "масштабе", некто имеет бонус и просто вводит 560/75
skif58, ГЕНИАЛЬНО! Блин, а я все время черчу линии, а потом масштабирую командой МАСШТАБ... Да еще так вот с особым мазахизмом вычисляю масштабный коэффициент, например, "0.2", вместо того, чтобы просто набрать "/5"... Ох, сколько же времени можно было бы сэкономить, если бы так, как я делал, не тупить!..

Последний раз редактировалось AlphaGeo, 25.11.2008 в 00:14.
 
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Лисп помогает чертить



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Интересно где работают ЛИСП программисты? dextron3 LISP 114 17.12.2017 13:53
Можно ли вместо отрезков чертить сразу двумя паралельными линиями bdfy AutoCAD 86 26.08.2010 09:56
Лисп: моментальное редактирование цифр в предложениях dextron3 LISP 12 27.09.2008 09:33
Лисп для копирования данных нескольких мтекстов по принципу расположения. Red Nova LISP 14 18.06.2008 22:08
Нужен лисп (пронизыватель лайаутов) dextron3 LISP 91 25.07.2007 07:37