Тема: exceeded maximum number of selection sets
"Select objects:
exceeded maximum number of selection sets"
Что надо сделат?
Информационный портал для профессионалов в области САПР
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
Форумы CADUser → Autodesk → AutoCAD → exceeded maximum number of selection sets
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
"Select objects:
exceeded maximum number of selection sets"
Что надо сделат?
превышено изначальное число выбора объектов...
Изначально какая была команда?
Что вы хотели сделать, перед тем, как получили команду "показать объект"?
> Elena
Скорее всего некоректно написанная программа на лиспе, т.е. во время выполнения создаются наборы и сохраняются в глобальные переменные...
Вот и я так решил, а пока писал, появилось сообщение Евгения.
Все равно пошлю.
> Elena
Не "показать объект", а "Выберите объекты:
А вообще это похоже на сообщение AutoLisp'а.
Вот опять - никакой информации и будьте любезны сказать, что делать? Пойду покурю и подумаю, что же делать, если "превышенное максимальное число наборов выбора".
> strannik
В описании объекта "SelectionSets Collection " прямо написанно, что надо удалять содержимое коллекции выборов т.к. при достижении 128 наборов акад откажется создавать новые наборы...
Попробовал написать простенький лисп, но столкнулся с неприятностью, если набор сохранен в переменную то его нельзя удалить. Короче если неизвестны имена переменных то после очистки коллекции наборов на каждую переменную останется по набору...
> Евгений
А так:
(defun C:CLR_SEL ( / at_list tm ) (setq at_list (atoms-family 0)) (foreach x at_list (if (= (type (eval x)) 'PICKSET) (set x nil) ) ) (gc) )
Если ничего не напутал, то чистятся все наборы в глобальном пространстве имен.
> Александр Ривилис
Совершенно верно!
Я вечером пошел другим путем - извлекал
"SelectionSets Collection"
и удалял содержимое...
Я не професионал. Ето часто у меня появляется. С разние команди. Надо рестарт фаил. Универсалное лекарство ест?
> Michail
Универсальное лекарство:
> Александр Ривилис
> Michail
> Евгений
В действительности мое лекарство не универсальное, т.к. PickSet могут быть зарезервированы и ObjectARX-приложении. Универсальное - это действительно закрытие и повторное открытие чертежа. А еще лучше не пользоваться чужими программами, в результате которых появляются такие сообщения - они небрежно написаны. А если это своя программа, то не забывать чистить переменные, ссылающиеся на PickSet.
> Евгений
Я помню, что с таким встречался лет 10 назад, когда начинал программировать в AutoLisp 10...
> Profan
Аналогично, только лет на пять раньше.
Кстати, если не изменяет память, функция (atoms-family ...) появилась только в AutoCAD R12. Поэтому, если возникали не закрытые наборы в lisp-функциях, то их можно было таким образом почистить, а если в ADS (прародителе ObjectARX) - то увы нет. А универсального средства Autodesk не предложил до сих пор.
> Александр Ривилис
Можно ли увидеть пример зарезервированных наборов?
Например
(setq i 0) (repeat 128 (setq i (1+ i)) (set (read (strcat "pic_" (itoa i))) (ssget "_x")) )
создает максимальное кол-во не пустых наборов в глобальные переменные, но с ними ваша функция мгновенно справляется. У меня есть несколько идей, но попробовать не могу...
Можно ли увидеть пример зарезервированных наборов?
Вы о чем? Что вы имеете в виду под зарезервированными наборами? Я говорил о наборах, которые создаются в arx-приложении и там же используются. Так вот если их там не почистить, то lisp о них знать не будет - это не lisp-переменные - и соответственно вычистить их средствами lisp невозможно (на всякий случай IMHO).
Сейчас перечитал свое же сообщение > Александр Ривилис (2005-05-18 13:47:35)
и понял о чем идет речь в Вашем вопросе. Я неудачно выразился, написав "зарезервированы". Правильнее было бы "созданы и не удалены".
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Форумы CADUser → Autodesk → AutoCAD → exceeded maximum number of selection sets
Форум работает на PunBB, при поддержке Informer Technologies, Inc