Как скачать код с сайта, доступность материалов (и немного саморекламы)
В некоторых статьях публикуются не только исходники, но и ссылки на файлы lsp.
Все материалы, опубликованные на этом сайте, являются свободно распространяемыми. Если что-то надо использовать - бога ради, забирайте. Если по ходу дела укажете мое авторство, линк на ресурс или что-то наподобие - будет совсем замечательно.
P.S. Есть у меня и канал на YouTube. Вдруг что интересное для себя найдете Некоторые вещи есть только там.
P.P.S. Используемые lisp-функции
Программная очистка файла в NC 23-23.1
Столкнулся со странной работой стандартного PurgeAll в файлах с внешними ссылками. Если во внешней ссылке есть линии с пользовательскими типами линий, можно словить очень странный баг.
Выполняю достаточно несложный код (одно "но" - все это приходится делать внутри отдельной транзакции, поскольку помимо очистки делается еще масса телодвижений)
1 2 3 4 5 | nanoCAD.Document comDoc = doc.AcadDocument as nanoCAD.Document; for (int i = 0; i < 3; i++) { comDoc.PurgeAll(); } |
И вроде бы все хорошо. Пока не будет выполнена регенерация. После нее все линии во внешних ссылках могут преобразоваться (визуально) в Continuous. Спасает только ручная перезагрузка ссылки. Но пользователям-то это не объяснишь!
Пришлось обращаться на форум разработчиков, где Андрей Лысенко и показал решение. Процитирую его:
Одашники (DwgDirect) полтора года назад поправили в своих потрохах поправили purge(OdDbObjectIdArray)
< ...>
У нас это вошло в версию 24.0
С его любезного разрешения привожу слегка переделанный вариант его решения, хотя проблема в версиях 24 и более поздних, похоже, решена.
Далее
Официальные NuGet для nanoCAD
Добрый доктор поделился ссылкой, где расписано получение официальных nuget-пакетов для NC версий от 20 и дальше. Кому надо - тащим к себе, пока лавочку не прикрыли.
Почему было не выложить на nuget.org, непонятно.
LISP: GigaChat vs полупрограммист. Чья возьмет?
Статья чисто по приколу, поскольку работать не хочу совершенно. На форуме наника возник вопрос о работе кода, сгенерированного GigaChat'ом. Под катом - исходный код и мои соображения. На форуме публиковать не хочу (считайте по религиозным соображениям и не оскорбляйте мои чуйства!)
Далее
Очистка словарей. Просто для напоминания самому себе
Меня достало каждый раз писать одно и то же по очистке словарей. Засуну сюда лисповой код, который будет работать и под наной, и под кадом. Если что - сам его буду тырить по мере надобности.
Что сайт есть шпаргалка, надеюсь, никто не забыл? )))
Далее
VS сходит с ума?
Бывает, что VS сходит с ума на ровном месте - и то WPF не показывает, то не показывает, кто использует какой-либо метод... Че делать-то?
Далее
MessageBox, NC 23 и Astra Linux
Есть у меня в проекте некий сервис для сообщений - информационных, об ошибках, об исключениях, консольные сообщения - все вот это вот. Поскольку разработка вынужденно ведется в Windows (да и NC на самом деле работает под Wine), я стал использовать стандартные System.Windows.MessageBox. Но вот к поведению этих окон в Linux я оказался совсем не готов.
Далее
Создание LWPOLYLINE через ActiveX в NC
Понадобилось мне тут создать LWPOLYLINE в NC24.1. Казалось бы - что сложного? Угу, ага... Наник - как всегда - подкинул сюрпризов
Далее
Объявление lisp под NET (nanoCAD 24+) и *error*
Да, в NC24.0 (ну и, соответственно, дальше) появилась возможность объявления lisp-функций через NET. А оно вообще работает? Попробую разобраться. И не пожалею на это отдельной лицензии )
Далее
Условно-бесплатные хранилища git
Известно, что, помимо невероятно раскрученного github, есть еще тьма других площадок. Одна из них - BitBucket (SourceTree, привет!). И вот только что пришло письмо...
Далее
Снова про загрузку сторонних сборок, чтоб их…
В личном общении не скажу с кем появилась потребность загружать сторонние сборки, раскиданные по подкаталогам основной сборки. Вопрос - что и как грузить, каким образом, и как разрешить сопутствующие проблемы.
Далее