Определение границ пространства модели
Надоело что-то мне постоянно рыскать на этот предмет...
Собственно задача: надо определить границы видимой области (ну мало ли зачем!). Вопрос - как это сделать?
Далее
Загрузка типа линии
Где-то когда-то публиковал код по гарантированной загрузке стандартных (и не очень) типов линий в документ. Найти в сети не смог, а у себя - запросто
Далее
AutoCAD2021 и кодировка создаваемых файлов
Наконец-то вышел ACAD2021, и мне стало интересно, что там поменялось (и поменялось ли) по крайней мере в части кодировки создаваемых файлов.
Далее
strcase и русский язык
Известно, что strcase преобразовывает регистр символов (либо все в верхний, либо все в нижний). Точнее, так задумывалось.
Далее
Реакторы базы данных чертежа
Поигрался тут с реакторами базы чертежа (это которые VLR-AcDb-*). Теоретически нужно было отслеживать появление, удаление и изменение примитива. На тестовом чертеже все было хорошо. А вот при нормальной эксплуатации начались дикие тормоза.
Далее
Универсальный загрузчик кодов
Текста много, принципиально нового и страшного ничего нет. Это всем известно и все подобным пользуются. Как всегда - текст тупо шпаргалка для себя.
Собственно задача звучит так: необходимо разработать лисп-код, который:
а) загружает arx / dbx модули - из своих каталогов, с учетом разрядности и версии
б) загружает .NET-сборки. Тоже из своих каталогов, тоже с учетом версии (с возможным учетом разрядности).
в) загружает все lsp, fas, vlx из указанных каталогов
г) загружает все VBA-модули (как бы лично я к ним ни относился, но все еще пользуется спросом-то...)
Лиспы не зря поставил не первым - там могут использоваться функции и команды, прописанные в arx / net.
Далее
Шутка с subst
Скорее всего, Америку я не открою, но для меня было полнейшей неожиданностью немного странное поведение subst
Далее
Расчленить таблицу или размер
Уж не знаю зачем, но понадобилось на форуме разбить таблицу.
Далее
Удаление слоя
Понадобилось мне тут удалить слой из файла. На слое, скорее всего, есть объекты. Че будем делать? Правильно, писать код
Далее
Получение ObjectID для применения в полях
Как тут выяснилось, последние 64-разрядные версии (начиная с 2018 точно) для приведенного кода возвращают некорректный результат. В принципе, это было ожидаемо: лисп умеет работать только с 32-разрядными целыми, и при попытке подсунуть ему 64-разрядное целое происходит переполнение. Как следствие - результат некорректный.
Далее