Системы автоматизированного конструирования. Толстоба Н.Д. - 31 стр.

UptoLike

Составители: 

30
3.3. Работа с именами примитивов
Рассмотрим функции, позволяющие извлекать имена примитивов из ГБД:
(entnext имяпримитива)
При вызове без параметров возвращает имя первого неудаленного примитива в ГБД.
При задании имяпримитива возвращает имя первого неудаленного примитива, следующего в
ГБД за примитивом имяпримитива.
(entlast)
Возвращает имя последнего неудаленного примитива в ГБД.
Если требуется получить от пользователя необходимый примитив, используется
команда
( entsel строка-подсказка )
одновременно указать не только объект, но и точку, в которой этот объект указан (в
Автокаде подобная операция используется в объектной привязке, а также в командах
РАЗОРВИ, ОБРЕЖЬ и УДЛИНИ, следует использовать функцию ENTSEL.
Выбирается единичный примитив, при этом выбор должен быть сделан указанием на
примитив. Возвращается список, первый элемент которого - имя выбранного примитива, а
второй - координаты точки, в которой он был указан. Строка-подсказка используется для
запроса примитива; если она не указана, то выдается стандартный запрос "Выберите
объекты:".
Список, возвращаемый функцией ENTSEL, может быть введён в ответ на стандартный
запрос Автокада "Select object:" ("Выберите объекты:"), он воспринимается как выбор
примитива путём указания в точку с координатами, указанными в списке.
Из Автолиспа можно непосредственно модифицировать данные о существующих
примитивах. Однако для добавления нового примитива необходимо использовать команды
отрисовки или редактирования Автокада
. Это ограничение связано с желанием защитить ГБД от
неграмотного программиста: неправильно пользуясь командами Автокада, вы не сможете
испортить саму ГБД - самое большее, что вы испортите, это свой чертеж.
(entdel ename) - удаление примитивов из чертежа
Если вы повторите эту операцию, то примитив будет восстановлен. Этот способ
позволяет удалять из ГБД невидимые (перекрытые другими) примитивы, что невозможно
обычным выбором объектов (нельзя выбрать невидимый объект).
3.4. Программное изменение примитивов
Для модификации геометрических характеристик примитива надо уметь находить в
DXF-списке данных примитива (наша переменная
EDATA) подсписки, в которых хранится
нужная информация. Выбор и изменение различных данных, относящихся к примитиву,
осуществляются по коду DXF (это всегда целое число) с помощью функций
ASSOC и SUBST:
(assoc элементсписка сложныйсписок) - извлечение элемента