Можно ли копировать свойства файла, чтобы не приходилось забивать их каждый раз?Не уверен, но, кажется, можно. Даж на лиспе. На dwg.ru, кажется, было что-то по этому вопросу.
Есть ли возможность регулировать порядок полей в свойствах файла?По-моему, порядок создания и определяет порядок следования.
В свойствах атрибутов - не обязательно ведь делать его "установленным", если уже реализовано "постоянный"?А поле при этом работать будет? Если будет - то почему бы и нет.
Поэтому лично я при неизбежности использования команд (бывает такое, бывает)А чем ты рекомендуешь пользоваться?
А чем ты рекомендуешь пользоваться?Если ко мне - то собственными наработками и разработками. Как правило, получается более интересно и более функционально.
Также у каждого блока форматок есть атрибут "№". Хочу сделать функцию, которая бы позволила пронумеровать форматки путём заполнения этого атрибута числами по приоритету слева направо, сверху вниз. Подскажите, пожалуйста, как это реализоватьНу дык... Берем набор блоков, сортируем их по точкам вхождения или порядку следования листов в файле, у каждого блока получаем атрибут по тэгу и назначаем значение. В каком конкретно месте проблема?
Если ко мне - то собственными наработками и разработками. Как правило, получается более интересно и более функционально.А эти наработки делаешь исключительно с помощью AutoLISP?
Ну дык... Берем набор блоков, сортируем их по точкам вхождения или порядку следования листов в файле, у каждого блока получаем атрибут по тэгу и назначаем значение. В каком конкретно месте проблема?Проблема в следующем:
Касательно зачатков кода – мои знания позволяют мне лишь назвать функцию (не бейте сильно)Так или иначе почти неделю упорно пробую разобраться. Нашёл интересный источник "СПРАВОЧНИК AUTOLISP ФУНКЦИЙ. ПО АЛФАВИТУ": https://acad-prog.ru/spravochnik-autolisp-funktsij-po-alfavitu/#ssadd. При разборе опираюсь на него.
Help please! Почему выходит ошибка и как её исправить?Потому что не:
Во-вторых, на каком конкретном месте ошибка? Наверное, на print? Которому надо подставлять строку и только строку, а ты выдаешь что-то непонятное? :) vl-princ-to-string используй для подобного "контроля".
(print <выражение> [<описатель файла>])
Эта функция похожа на PRIN1, кроме того что <выражение> печатается с новой строки, а после <выражения> ставится пробел.
(prin1 <выражение> [<описатель файла>])А вот и код, который теперь стал рабочим:
Эта функция выводит выражение <выражение> на экран и возвращает <выражение>. <выражение> может быть любым выражением; не требуется, чтобы оно было строковой константой. Если присутствует <описатель файла> (и является описателем файла, открытого для записи), <выражение> записывается в файл в то время, как оно появляется на экране. Печатается только указанное <выражение>; не включается никаких пробелов и переходов на новую строку.
В-третьих, есть значительно более простой вариант преобразования набора в список:Код - Auto/Visual Lisp [Выбрать]
(vl-remove-if 'listp (mapcar 'cadr (ssnamex selset)))
Проверьте меня, потому что информацию пришлось черпать с каждого мира по ложке (может подскажите, где есть один! источник с описанием всех функций):http://help.autodesk.com/view/OARX/2018/ENU/?guid=GUID-4CEE5072-8817-4920-8A2D-7060F5E16547
У каждого чертежа свой редактор, где прописываются команды и между собой не пересекаются?Редактор один. А вот пользовательские команды и функции могут быть разными.
Если в ходе работы с командной строкой переменных будет много, то ориентир в них будет затрудняться. Есть ли интерфейс, благодаря можно увидеть, какие переменные сейчас лежат в буфере чертежа и какую информацию они хранят? Сохраняются ли данные переменные в чертеже?http://autolisp.ru/2009/09/10/vlide-misc-01/ + http://autolisp.ru/2009/09/12/vlide-misc-02/