На чем написан autocad
Первый опыт написания плагинов для Autocad на C#
Предыстория
Я начинающий разработчик, «школьный» уровень знания С++, небольшой (2 года) опыт программирования на С#, нулевой опыт работы в автокаде
Недавно попросили изменить LISP программки автокада, предназначенные для создания/изменения межевых планов и подготовки соответствующих документов MS Word / XML — пофиксить баги и добавить новый функционал.
Поскольку читабельность программ на Лиспе (по крайней мере для меня) оставляет желать лучшего, я решил переписать это на более понятный язык.
Т.к. мне не нужны были миллисекунды прироста скорости, я пропустил С++ и остановился на C#
Пишу эту статью, чтобы:
1. Разложить у себя в голове по полочкам, что я узнал об Autocad.
2. Помочь тем, кто так же как я продирается через очень малое количество документации.
3. Получить в комментариях информацию вида «это ты делаешь неправильно, проще и лучше будет сделать так. »
Начало работы. Создание плагина.
Создаем проект C# по шаблону ClassLibrary
Добавляем ссылки на managed библиотеки API Autocad’a, которые лежат в папке программы.
В моем случае это:
C:\Program Files\AutoCAD 2007\acdbmgd.dll
C:\Program Files\AutoCAD 2007\acmgd.dll
Наследование от IExtensionApplication необязательно, Autocad автоматически подцепит все public классы в библиотеки, но, как мне сказали, так будет быстрее. Плюс можно контролировать Initialize/Terminate плагина.
Компилируем, запускаем автокад, загружаем плагин командой netload (открывается окно выбора managed dll)
Теперь при вводе команды hello мы будем получать ожидаемый ответ.
Структура Autocad приложения:
То, что мы видим на экране, графические объекты, унаследованные от Entity
Кроме видимых, есть невидимые информационные объекты — Слои, Типы линий, Стили размерности (Dimension styles), Стили таблиц и т.д.
Все это хранится в Database Table Records, в хранилищах вида TYPETable и классах вида TYPETableRecord.
Идентификаторы объектов
Работа с базой данных
Обычно работа с базой идет с помощью транзакции. Объекты запрашиваются из базы данных, изменяются и commit’ом транзакции сохраняются обратно
Во время транзакции объект запрашивается из БД в одном из 3х режимов ForRead, ForWrite, ForNotify.
Назначение первых двух очевидно, третий как-то используется для механизма событий, с чем я пока не пересекался
В режиме ForWrite автокадом создаются дополнительные объекты, позволяющие отменить изменения в транзации.
Если нужно изменить объект, открытый как «ForRead», вызывается его метод UpgradeOpen().
Если вызвать этот метод на объекте, уже открытом в режиме изменения, метод выдаст исключение.
UPDATE: Как мне подсказали в комментариях, предпочтительнее всегда вызывать transaction.Commit(), кроме случаев, когда нужно отменить транзакцию. Если транзакция не коммитится, автоматически вызывается transaction.Abort(), влекущий за собой дополнительные расходы.
Словари
Словари я использовал для сохранения своих данных в DWG, чтобы не создавать лишних файлов
Я столкнулся с двумя видами словарей в рисунке — NamedObjectDictionary и ExtensionDictionary
Данные в словарях хранятся в записях (Record), которые в свою очередь хранят типизированные значения.
Адресуются данные по текстовым ключам.
NamedObjectDictionary — глобальный словарь рисунка. Создается автоматически при создании документа.
Его я использовал для хранения ссылок на главные используемые мной объекты.
ExtensionDictionary — словарь, свой для каждого объекта, его нужно создавать вручную.
Проверить его существование можно сравнив поле entity.ExtensionDictionary c ObjectId.Null
Работа с глобальным словарем почти такая же, только объект DBDictionary получается так:
С чем я еще столкнулся
Пояснения:
R17.0 — Autocad 2007
419 для русской версии
409 для английской версии
GeocomplexPlugin — создаваемый раздел
LOADCTRLS = 2 — загружать при старте автокада. Определенными ключами можно сделать запуск «по требованию», плагин загружается, когда вводится одна из его команд
LOADER — путь к плагину
Т.к. в плагине нельзя запустить пошаговую отладку в VS, мне пришлось на некоторых этапах выводить отладочные сообщения.
Поскольку editor автокада для этих целей использовать неудобно, сообщения я выводил стандартными средствами Debug.WriteMessage()
Дебаг будет выводиться только при компилировании в режиме отладки, выводимые данные можно посмотреть, запустив программу DebugView
UPDATE: Решил проблему пошаговой отладки:
Победил эту проблему таким образом:
В файле настройки автокада acad.exe.config установил среду исполнения на v4.0:
Поменял среду исполнения плагина на 4.0 client profile
И настройках сборки AssemblyInfo.cs закомментировал атрибут AllowPartiallyTrustedCallers
В автокаде пробел эквивалентен Enter, поэтому если послать команду без завершающего пробела, в результате в editor’e будет введено _e и он будет ожидать дальнейшего ввода
Однако этот способ не всегда можно использовать. Принцип работы команды SendStringToExecute такой, что команды посылается только после завершения работы фунции, вызыванной командой. Поэтому если вы сначала вызовите эту команду, а потом, например, предложите пользователю выбрать объект на рисунке, фунции выбора будет послано две строки «_zoom», «_e», которые она воспримет как неправильные объекты.
Приходится искать аналоги, выполняющиеся сразу же. В данном случае:
Для выбора объектов используются функции editor’a Get*
Например, выбор нескольких объектов — GetSelection, выбор одного объекта GetEntity…
C# и AutoCAD. Некоторые приемы работы
Цель данной статьи.
Целью данной статьи является рассмотрение некоторых приемов работы в связке Autocad + C#.
В основном буду опираться на статью «Начало работы с Autocad с помощью C#». В рамках данной статьи будут рассмотрены некоторые замечания по особенностям работы с Autocad с помощью SDK — ObjectARX.
Сразу оговорюсь, что НЕ являюсь квалифицированным программистом, и увлекаюсь программированием только как хобби. Так что в комментариях прошу указать на неточности и ошибки в изложении материала.
Для работы с Autocad можно использовать библиотеки напрямую из Autocad (как это сделано в «Начало работы с Autocad с помощью C#»), либо использовать ObjectARX.
ObjectARX — это большой набор библиотек, предназначенный для разработки приложений для AutoCAD в среде программирования Microsoft Visual C++. Сам AutoCAD разработан с использованием ObjectARX.
ObjectARX общедоступен и его можно скачать с сайта Autodesk.
Кроме того, по этому же адресу можно скачать обширную документацию по SDK.
Внимание! Необходимо использовать одинаковые версии ObjectARX и Autocad! Совместимость работы библиотеки одной версии с Autocad другой версии не гарантируется. Так что при изменении версии используемого Autocad необходимо перекомпилировать Вашу программу с новыми библиотеками! Кроме того, советую обратить внимание на совместимость различных версий ObjectARX и MS VS! Все описанные ниже примеры написаны для Autocad 2009, соответственно используется ObjectARX 2009, MS Visual Studio 2008.
2. Возможности ObjectARX
Набор библиотек ObjectARX представляет разработчику огромный набор инструментов как для работы чертежами, так и с окнами Autocad.
Подробнее о ObjectArx можно почитать в документации (в папке ObjectARX\docs\), так же в составе документации по ObjectARX есть примеры (папка \ObjectARX\samples\).
3. Примеры
Ниже в данной статье будет рассмотрено несколько примеров работы с Autocad и по каждому примеру будут даны небольшие комментарии.
В программах используются 2 библиотеки: AcDbMgd.dll и AcMgd.dll из папки \ObjectARX\inc-win32\. Их необходимо добавить к Reference проекта C#.
Для просмотра результата, необходимо в Autocad вызвать команду «netload» (без кавычек), загрузить получившуюся в результате компиляции dll-сборку и вызвать имя новой команды (addEntity и addBlock соответственно, регистр роли не играет).
3.1. Добавление новых примитивов в существующий чертеж
Данный пример иллюстрирует основы добавления примитивов на чертеж, работы с их свойствами, работы с базой данных чертежа, добавления нового примитива в чертеж. После запуска команды получим в точке 0,0 симпатичную окружность синего цвета.
2. Создание блока и изменение его свойств
Пример немного посложнее: создадим новый блок и разместим его на чертеже. Для этого добавим новую функцию:
Данный пример иллюстрирует процесс создания более сложных объектов — блоков. Процесс создания блоков следующий:
1) создаем определение блока (как элемент таблицы BlockTable) и добавляем его в таблицу блоков (не забываем проверить корректность имени блока);
2) создаем и добавляем в определение блока примитивы и определения атрибутов блока;
3) создаем экземпляр блока (BlockReference) и добавляем его в базу данных того пространства, которое нас интересует (в примере — пространство модели);
4) задаем значения атрибутов.
Злоключение
На этом поспешу закругляться. Всем спасибо за прочтение статьи, и напоминаю: с радостью рассмотрю все замечания, указание ошибок и просто критические комментарии!
Так же прошу в комментариях указать, есть ли смысл писать далее об этой теме и интересует ли эта тема кого-нибудь.
Обзор средств программирования в AutoCAD
В данной статье приводится обзор средств программирования для расширения функциональных возможностей AutoCAD и их приспособления к решению специфических задач.
В мире существует множество систем автоматизированного проектирования, каждая со своими преимуществами и недостатками. В зависимости от сферы их применения все эти САПР можно условно разделить на группы. Одни системы более пригодны для машиностроения, кораблестроения и других технических областей, возможности других оптимальны для выполнения работ в геодезии, картографии, гидрографии: С учетом всего разнообразия возможных применений к САПР предъявляется целый ряд требований: прежде всего это удобный пользовательский интерфейс, качественная графика и наличие средств программирования для решения специализированных задач.
Особого внимания среди CAD-систем заслуживает программный комплекс AutoCAD. Эта система автоматизированного проектирования не только предоставляет пользователю удобный графический интерфейс и обеспечивает получение высококачественной графики, но и располагает широким набором инструментов программирования. Пользователь может модифицировать графический интерфейс AutoCAD, расширять функциональные возможности, добавлять новые команды. Гибкую систему программирования мы бы и назвали главным преимуществом AutoCAD. Практически все операции, выполняемые в среде AutoCAD, можно реализовать программно – для этого в системе предусмотрены средства создания сценариев и возможность использования языков программирования.
К средствам программирования AutoCAD относятся следующие языки:
— Visual Basic for Application (VBA);
Будучи частью AutoCAD, AutoLisp позволяет оперировать переменными различных типов и передавать их значения командам AutoCAD при вводе данных. При ответах на запросы команд AutoCAD существует возможность использовать выражения АutоL_sр, в которых могут выполняться различные арифметические и условные операции над числовыми значениями и значениями определенных переменных.
Помимо средств выполнения различных расчетов, AutoLisp содержит функции и средства, которые предоставляют доступ к графической базе данных текущего чертежа AutoCAD. Кроме того, AutoLisp позволяет управлять графическим редактором AutoCAD и обращаться к собственным командам системы. Благодаря возможностям программ АutоL_sр создаются функции, настроенные на конкретную область применения. Эти функции включают запросы к пользователю (диалоги), возможность выбора по условию из нескольких вариантов или использования нескольких значений по умолчанию. Хотя макроопределения, созданные при написании меню AutoCAD, могут быть довольно сложными, при отсутствии АutоL_sр они остаются всего лишь комбинациями стандартных команд системы. Включив же в меню функций макроопределения АutоL_sр, вы превращаете меню AutoCAD в интеллектуальное средство автоматизации проектирования.
Возможности, которые обеспечивает AutoLisp:
— использование переменных и выражений при ответах на запросы команд AutoCAD;
— чтение и создание внешних файлов (таким образом осуществляется обмен информацией с внешними программами, которые можно запускать из AutoCAD);
— создание различных функций и новых команд AutoCAD, что обеспечивает настройку и расширение графических возможностей системы;
— программный доступ (чтение и редактирование) к данным, которые относятся к объектам проектирования, а также к таблицам AutoCAD, содержащим информацию о блоках, слоях, видах, стилях и типах линий;
— программное управление графическим экраном AutoCAD, а также вводом/выводом из различных устройств.
Заметим, что AutoLisp может использоваться для автоматизации проектирования почти в любой области народного хозяйства: от машино- и кораблестростроения до строительства, геодезии и картографии.
На AutoLisp не составляет большого труда написать программу для отрисовки детали любой сложности. А поскольку AutoLisp представляет собой язык создания интеллектуальных систем и располагает широким набором математических функций, он подходит для выполнения сложных математических расчетов с последующей передачей результатов в среду AutoCAD.
В то же время у AutoLisp, одного из старейших языков AutoCAD, есть и серьезный недостаток – он является языком создания скриптов, командных и пакетных файлов, не позволяющим создавать программы с графическим интерфейсом, программы для обмена данными с внешними устройствами и другие решения, предназначенные для взаимодействия с системными функциями операционной системы.
При создании на АutоL_sр довольно сложных программ не всегда удается сделать наглядным и удобным ввод информации через командную строку. Диалог с программой можно усовершенствовать, используя язык программирования DCL (Dialog Control Language), который предоставляет графические меню, средства редактирования атрибутов и диалоговых окон. При совместном использовании с комплексом команд АutоL_sр этот язык обеспечивает возможность вызова и управления диалогом из Lisp-программы. Все это значительно расширяет возможности адаптации AutoCAD под конкретные прикладные задачи. Язык DCL позволяет влиять на способ вывода окна, а также на его состав: кнопки, списки, шкалы и т.д. Ограничения на размер и местоположение окна заданы правилами конструирования диалоговых окон. Расположение элементов окна напоминает расположение абзацев в форматированном тексте, поэтому нет необходимости задавать точные координаты фрагментов окон. Диалоговое окно из меню AutoCAD вызывается через функцию АutоL_sр, которая руководит диалогом.
Таким образом, использование этих двух языков программирования позволяет создавать довольно сложные системы автоматизированного проектирования на базе программного комплекса AutoCAD.
Одним из наиболее современных языков программирования под AutoCAD является язык VBA (Visual Basic for Application), который взаимодействует с AutoCAD через интерфейс ActiveХ Automation. В плане расширения возможностей AutoCAD этот язык существенно превосходит возможности AutoLisp. Через интерфейс ActiveХ Automation он получает доступ ко всем элементам среды AutoCAD, всем переменным и командам, благодаря чему можно без больших усилий модифицировать пользовательский графический интерфейс (изменять меню, линейки инструментов, графическое окружение, добавлять новые команды, работать с графической базой данных AutoCAD: слоями, блоками, вьюпортами, стилями отображения текста, линий, заливок).
Язык VBA имеет собственный набор переменных и развитую систему инструментов для выполнения математических, логических и системных операций. Это позволяет не только создавать программы осуществления сложных математических расчетов, модификации баз данных AutoCAD, автоматизации процессов черчения, но и использовать VBA при написании более сложных программ, связанных с системными событиями. Например, с помощью VBA несложно создать программы взаимодействия с системными командами Windows, а также с другими программами (Word, Excel, Access и др.). К достоинствам этого языка следует отнести и наличие разнообразных инструментов для взаимодействия с различными базами данных (Access, Oracle, FoxPro, dBase, Paradox).
Упомянутые возможности программирования на языке VBA позволяют создавать сложные системы автоматизации проектирования и подготовки конструкторской документации в режиме реального времени. В подтверждение достаточно упомянуть существующие системы для разработки электрических схем с автоматической вставкой электронных компонентов и последующим внесением информации о компонентах и всей электронной схеме в базы данных. По завершении разработки электронной схемы пользователь может получить в Excel или Access полную спецификацию использованных компонентов.
Таким образом VBA объединяет в себе функциональные возможности AutoLisp и DCL, дополнительно предлагая инструменты взаимодействия с программной средой Windows и прикладными программами различных фирм-разработчиков, которые поддерживают технологию ActiveХ Automation.
Продолжим наш обзор рассмотрением ObjectARX – объектно-ориентированного расширения программной среды AutoCAD. Используя язык программирования Visual C++ и библиотеки языка C++, ObjectARX позволяет разрабатывать программы, расширять классы AutoCAD и протоколы, а также создавать новые команды, которые работают аналогично командам, встроенным в AutoCAD.
Программы ObjectARX являются динамическими библиотеками (DLL), которые разделяют адресное пространство AutoCAD и выполняют прямые обращения к ядру AutoCAD. Это обеспечивает возможность создания новых примитивов, которые ведут себя как обычные примитивы AutoCAD (точки, линии, круги и т.д.).
ObjectARX открывает прямой доступ к базам данных AutoCAD, графической системе и всей системе команд. Следовательно, появляется возможность разрабатывать программы для взаимодействия со средой проектирования, создавать любые графические интерфейсы пользователя, обращаясь к библиотеке MFC, создавать программы с многооконными интерфейсами, формировать собственные классы и протоколы взаимодействия, взаимодействовать с другими программными средами и внешними устройствами.
Таким образом, ObjectARX позволяет создавать программы любой сложности. По функциональным возможностям он в несколько раз превосходит AutoLisp, DCL и VBA. Этот язык программирования позволяет написать и простой скрипт, и инструменты перепрограммирования ядра AutoCAD, а также взаимодействия с внешними устройствами. На ObjectARX и Visual C++ написаны Autodesk Mechanical Desktop, Autodesk Land Desktop, Autodesk Map, Autodesk Civil Design и многие другие приложения к AutoCAD.
Описанное позволяет сделать следующие выводы:
1. Используя современные языки программирования, можно существенно дополнить возможности базового программного обеспечения.
2. Четкое представление о возможностях каждого из языков позволяет оптимизировать процесс создания прикладных программ.
3. Каждый из языков наилучшим образом соответствует вполне определенным задачам:
— AutoLisp – автоматизация процесса подготовки проектирования, создание новых команд, получение и сохранение информации по текущему чертежу, создание скриптов и изменение информации в текущем файле;
— VBA – изменение и дополнение графического интерфейса пользователя, создание новых команд, объединение Windows-программ и AutoCAD в единый комплекс;
— ObjectARX – дополнение AutoCAD новыми объектами, классами, протоколами, методами и механизмами обработки информации; установление связи AutoCAD с различными системными событиями и внешними устройствами.
При разработке программы следует учитывать следующие два важных фактора. Первый – необходимость быстрого написания программного кода, второй – быстродействие создаваемой программы. Если более существенным представляется первый фактор, можно и нужно использовать совместный подход к написанию: параллельно задействовать все языки, упомянутые выше, и получить комплексный код программы. При этом используется определенный язык программирования, который позволяет выполнить задачу наиболее удобно и быстро. Если же преобладают соображения быстродействия, следует отдать безусловное предпочтение языкам C++, Assembler и ARX.
Примеры программ для программистов можно найти на официальном сайте разработчика AutoCAD и соответствующих форумах.
AutoCAD с его широким набором инструментов программирования исключительно перспективен в плане расширения функциональных возможностей. Рассмотренные языки программирования позволяют модифицировать этот программный комплекс, приспособив его возможности к решению специфических задач в любой области.
AutoCAD
Содержание
AutoCAD (Computer-Aided Design) — двухмерная и трёхмерная система автоматизированного проектирования и черчения компании Autodesk. AutoCAD является одной из наиболее распространённых САПР в мире благодаря средствам черчения.
Средства разработки и адаптации
Популярность AutoCAD в мире обусловлена весьма развитыми средствами разработки и адаптации, которые позволяют создавать специализированные приложения, такие как AutoCAD Mechanical, AutoCAD Electrіс, AutoCAD Architecture, GeoniCS, Promis-e, PLANT-4D, AutoPLANT, СПДС GraphiCS, MechaniCS и другие. Всего в мире насчитывается более 10 000 коммерческих продуктов основанных на AutoCAD.
Макрокоманды
Макрокоманды (макросы) в AutoCAD являются одним из самых простых средств адаптации, доступных большинству пользователей. Макросы AutoCAD не следует путать с макросами, создаваемыми посредством VBA.
Action Macros
Action Macros впервые появились в AutoCAD 2009. Пользователь выполняет последовательность команд, которая записывается с помощью инструмента Action Recorder. Записанный макрос можно отредактировать и сохранить, а впоследствии перенести на панель инструментов, либо запускать из специального меню.
Menu Macros
Пользователь имеет возможность создавать собственные кнопки, с помощью которых можно вызывать заранее записанные по определённым правилам серии команд (макросы). В состав макросов можно включать выражения, написанные на языках DIESEL и AutoLISP.
DIESEL
DIESEL (Direct Interprietively Evaluated String Expression Language) — язык оперирования строками с небольшим количеством функций (всего 28 функций). Он позволяет формировать строки, которые должны иметь переменный текст, зависящий от каких-либо условий. Результат выводится в виде строки, которая интерпретируется системой AutoCAD как команда. Язык DIESEL используется в основном для создания сложных макрокоманд в качестве альтернативы AutoLISP. Особое значение данный язык имеет для версии AutoCAD LT, в котором отсутствуют все средства программирования, за исключением DIESEL. Язык DIESEL впервые появился в AutoCAD R12.
Visual LISP
Visual LISP — среда разработки приложений на языке AutoLISP. Иногда под названием Visual LISP подразумевают язык AutoLISP дополненный расширениями ActiveX. Среда разработки Visual LISP встроена в AutoCAD начиная с версии AutoCAD 2000. Ранее (AutoCAD R14) она поставлялась отдельно. Среда разработки содержит язык AutoLISP и язык DCL, а также позволяет создавать приложения, состоящие из нескольких программ. Несмотря на название, Visual LISP не является средой визуального программирования.
AutoLISP
AutoLISP — диалект языка Лисп, обеспечивающий широкие возможности для автоматизации работы в AutoCAD. AutoLISP — самый старый из внутренних языков программирования AutoCAD, впервые он появился в 1986 году в AutoCAD 2.18 (промежуточная версия). В AutoLISP реализовано тесное взаимодействие с командной строкой, что способствовало его популяризации среди инженеров, работающих с AutoCAD.
Расширения ActiveX для AutoLISP
Расширения ActiveX значительно увеличивают функциональность AutoLISP, добавляют возможность работы с файлами, реестром и возможность связи с другими приложениями. Дополнительные расширения работают напрямую с объектной моделью AutoCAD посредством функций ActiveX. Впервые технология ActiveX была внедрена в AutoCAD R14.
DCL (Dialog Control Language) — язык разработки диалоговых окон для приложений, написанных на языке AutoLISP. Впервые DCL был введен в AutoCAD R12 и с тех пор не претерпел существенных изменений. Для разработки диалоговых окон не используется визуальное программирование и возможности создания диалоговых окон существенно ограничены. Для устранения указанных недостатков и расширения возможностей AutoLISP сторонними разработчиками созданы альтернативные среды для разработки диалоговых окон, такие как ObjectDCL, OpenDCL и некоторые другие.
AutoCAD VBA
В AutoCAD начиная с версии R14 введена поддержка VBA (Visual Basic for Application). В отличии от VisualLISP VBA является визуальной средой программирования, однако приложения VBA работают с AutoCAD только посредством ActiveX, а с AutoLISP взаимодействие сильно ограничено. Достоинствами VBA является более полная поддержка ActiveX и возможность загрузки DLL-библиотек.
ObjectARX
ObjectARX SDK — дополнение к среде разработки Microsoft Visual Studio и содержит специальные библиотеки, заголовочные файлы, примеры и вспомогательные инструменты, предназначенные для создания программ функционирующих исключительно в среде AutoCAD. ARX-приложения могут напрямую обращаться к базе данных рисунка и геометрическому ядру. Можно создавать собственные команды, аналогичные стандартным командам AutoCAD. Впервые пакет ObjectARX был реализован для AutoCAD R13, ранее существовали аналогичные по назначению пакеты ADS (для AutoCAD R11) и ARX (для AutoCAD R12). Обозначение версий ObjectARX совпадает с обозначениями версий AutoCAD для которых предназначен данный пакет. Программы созданные для одной конкретной версии AutoCAD несовместимы с другими версиями. Проблема совместимости, как правило, решается перекомпиляцией программы в соответствующей версии ObjectARX.
AutoСAD LT
AutoCAD LT — специализированное решение для 2D черчения. Она стоит дешевле полной версии AutoCAD (стоимость LT-версии составляет примерно половину стоимости полной версии). В AutoCAD LT отсутствуют инструменты трёхмерного моделирования (однако остаётся возможность просмотра трёхмерных моделей, сделанных в других системах) и программные средства адаптации системы (такие как AutoLISP и VBA). Полный список отличий можно найти на сайте www.Autodesk.ru.
Версии AutoCAD
История
Хакеры начали новый промышленный шпионаж при помощи вируса для AutoCAD
29 ноября 2018 года аналитики компании Forcepoint обнаружили уникальную кампанию по распространению вредоносных программ, которая нацелена на компании, использующие ПО на базе AutoCAD. Исследователи считают, что данная кампания активна с 2014 года, и злоумышленники, стоящие за атаками, занимаются промышленным шпионажем, на что указывает специфическая ниша распространения вредоносного ПО – AutoCAD дорогостоящая программа, используемая в основном инженерами и дизайнерами. Вероятно, хакеры преимущественно интересуются энергетическим сектором, хотя и атакуют компании и предприятия в разных странах мира, включая Китай, Индию, Турцию и ОАЭ.
К сожалению, кроме вектора распространения, о кампании известно не так уж много. Специалисты Forcepoint продолжают расследование, но пока не получили значимых результатов. Все, что удалось выяснить специалистам: управляющий сервер преступников работает с китайской установкой Microsoft Internet Information Server 6.0, а на соседних IP-адресах размещены похожие сервисы.
Forcepoint рекомендует всем пользователям AutoCAD регулярно просматривать страницу рекомендаций по безопасности AutoCAD для Autodesk, чтобы защититься от вредоносных модулей. [1]
Анонс AutoCAD 2019 и AutoCAD LT 2019
Компания Autodesk в конце марта 2018 года объявила о существенных изменениях в версиях AutoCAD 2019 и AutoCAD LT 2019.
Объединение отраслевых инструментов
Теперь в едином продукте AutoCAD стали доступны инструменты и функции семи отраслевых решений — AutoCAD Architecture, AutoCAD Mechanical, AutoCAD Electrical, AutoCAD Map 3D, AutoCAD MEP, AutoCAD Raster Design и AutoCAD Plant 3D.
По информации компании, специализированные наборы инструментов позволят использовать более 750 тыс. объектов, стилей, деталей и символов для создания чертежей. Проектировщики смогут автоматизировать создание планов этажей, интегрировать данные ГИС в процесс планирования, редактировать отсканированные чертежи и конвертировать растровые изображения в DWG-объекты. Например, набор Architecture даст возможность добавлять такие архитектурные элементы, как двери, стены и окна вместо того, чтобы рисовать линии и круги. Создание стен в базовом AutoСAD состоит из пяти этапов, а с набором Architecture — из трех.
Мобильное и веб-приложение
Кроме того, пользователи, оформившие подписку на AutoCAD 2019, получат доступ к приложениям для работы в браузере и с мобильных устройств.
Веб-приложение дает возможность пользоваться AutoCAD прямо в браузере – для этого не требуется ничего скачивать и устанавливать. Достаточно войти в личный кабинет на сайте web.autocad.com. После этого открывается доступ к DWG- и PDF-файлам, основным инструментам 2D-черчения и редактирования (Дуга, Круг, Прямоугольник, Профиль, Обрезка и т.д.), включая поддержку Xref и управления слоями.
В свою очередь, приложение AutoCAD для мобильных устройств дает возможность просматривать, создавать и редактировать чертежи, а также делиться ими в любое время и с любого устройства. Доступ к DWG-файлам можно получить даже при отсутствии Wi-Fi, предварительно скачав их на устройство. Мобильное приложение доступно на устройствах Windows, Android и iOS, а также оптимизировано под iPhone X, iPad Pro и Surface.
AutoCAD 2019 со специализированными наборами инструментов уже доступен для приобретения. Коллекция для архитектурного проектирования и строительства, а также коллекция для разработки и промышленного производства изделий будут включать AutoCAD со специализированными наборами инструментов с 1 апреля 2018 года.
2017: Autodesk расширяет сеть партнеров для продаж AutoCAD
В марте Autodesk объявила о том, что AutoCAD стало доступно через открытый канал продаж. То есть теперь продавать его смогут любые партнеры вне зависимости от наличия статуса Авторизованного Реселлера (VAR). Этот шаг – продолжение стратегии по демократизации технологий, которой придерживается Autodesk.
Россия – первая страна в мире, где AutoCAD стал доступен в открытом канале. За последний год именно AutoCAD в России показал один из самых значительных приростов количества подписчиков. Снижение цены лицензирования, связанное с переходом на подписку, привело к тому, что тысячи новых пользователей из компаний среднего и малого бизнеса выбрали для себя приобретение легального ПО вместо рисков пиратства.
Autodesk сформировал открытый канал в 2009 году для компаний, желавших продавать ПО AutoCAD LT, сняв с них требования по авторизации. Открывая канал для AutoCAD, Autodesk также предоставляет возможность всем трем дистрибьюторам в России (CSD, MONT, Поинт) работать с партнерами открытого канала.
2013: Autodesk повысила для России цену на популярную САПР
В августе 2013 г. Autodesk обновила российский прайс-лист на продукты AutoCAD 2014, AutoCAD LT 2014 (решение для 2D-черчения) и AutoCAD LT 2012, в результате чего их рекомендованная розничная цена увеличилась на 10%.
Вместе с ростом цены на эти решения из прайс-листа также исчезла позиция AutoCAD 2012, которая была доступна по программе поэтапного лицензирования. Последняя предполагает первичное приобретение продуктов Autodesk по сниженным ценам с заделом на то, что в дальнейшем они могут стать основой для приобретения более производительных и функциональных версий.
Изменения в прайс-листе – это «часть плана компании по упрощению и унификации ценообразования», говорится в блоге Autodesk по этому поводу.
Там же отмечается, что «тренд к выравниванию прайс-листа с другими странами получит свое продолжение и в будущем по мере развития и роста покупательской способности российского бизнеса».
В компании также подчеркнули, что цены на продукты Autodesk в России и СНГ по-прежнему остаются на более низком уровне по сравнению со странами Европейского Союза.
Данных по предыдущему повышению цен на AutoCAD для России в компании не смогли привести на момент публикации материала. Ряд партнеров Autodesk, однако, предупреждали заказчиков о предстоящем росте цен на AutoCAD и другое ПО компании в 2012 г. примерно на 15%.