Рекламодатель: ЗАО «Топ Системы»

ИНН 7726601967 ОГРН 1087746953557

Рекламодатель: ООО «ЛС-Технологии»

ИНН 7807258360 ОГРН 1227800102375

Рекламодатель:
ООО «С3Д Лабс»

ИНН 7715938849 ОГРН 1127747049209

8 - 2002

SolidWorks API — универсальная платформа для разработки пользовательских приложений

Артем Аведьян

Что такое SolidWorks API?

Почему нужно использовать SolidWorks API?

Сколько стоит это удовольствие и где его можно раздобыть?

Для решения каких задач можно использовать SolidWorks API?

Документация по SolidWorks API

Есть ли уже готовые работающие приложения, написанные с помощью SolidWorks API?

Примеры прикладных программ, разработанных с использованием SolidWorks API

В последнее время отмечается постоянный рост интереса к САПР SolidWorks не только с точки зрения 3D-моделирования, но и в плане разработки прикладного программного обеспечения, автоматизирующего различные этапы проектно-конструкторских работ. Все чаще и чаще пользователи SolidWorks задают нам вопросы о том, как наилучшим образом они могут использовать SolidWorks API (Application Programming Interface) для решения своих задач. Поэтому мы планируем опубликовать серию статей, посвященных данной тематике, и, если это будет интересно для читателей, сделать такие публикации регулярными.

В этой статье мы рассмотрим общие вопросы разработки специализированных приложений SolidWorks с использованием интерфейса прикладного программирования, встроенного в эту систему. Мы ни в коем случае не претендуем на всеобъемлющее освещение темы в рамках данной статьи, так как разработка прикладного программного обеспечения — это обширная, разносторонняя и поэтому достаточно серьезная тема. Однако надеемся, что приведенная ниже информация будет интересна как начинающим, так и более опытным пользователям SolidWorks, которых интересует вопрос разработки прикладных программ собственными силами.

Что такое SolidWorks API?

SolidWorks API — это интерфейс, позволяющий разрабатывать пользовательские приложения для системы SolidWorks. API-интерфейс содержит сотни функций, которые можно вызывать из программ Microsoft Visual Basic, VBA (Microsoft Excel, Word, Access и т.д.), Microsoft Visual C++ или из файлов-макросов SolidWorks. Эти функции предоставляют программисту прямой доступ к функциональным возможностям SolidWorks.

В начало В начало

Почему нужно использовать SolidWorks API?

Пакет SolidWorks предоставляет пользователю широкий спектр функциональных возможностей, позволяющих создавать и модифицировать как 2D-, так и 3D-геометрию. Благодаря этому в настоящий момент он является одной из самых популярных систем проектирования как в России, так и во всем мире. Однако при всем богатстве функций SolidWorks работа через стандартный пользовательский интерфейс обеспечивает инженеру доступ примерно к 80% функциональных возможностей, заложенных разработчиками в SolidWorks. Это ни в коем случае не является ущемлением прав пользователей. Просто некоторые действия удобнее и намного быстрее выполняются именно посредством программного интерфейса.

Приведем еще один аргумент в пользу SolidWorks API. Пакет SolidWorks как универсальная система предназначен не только для общего машиностроения, но и для целого ряда других отраслей. А как известно, любая универсальность имеет свои плюсы и минусы: с одной стороны, программу легко освоить, с другой — в ней нет, к примеру, кнопки, позволяющей легким движением мыши за одно действие построить модель сотового телефона или карьерного экскаватора. Только благодаря SolidWorks API вы можете сами создать эту кнопку и автоматизировать таким образом процесс построения модели.

В начало В начало

Сколько стоит это удовольствие и где его можно раздобыть?

Этот — вопрос уже стал риторическим. Абсолютно все динамические библиотеки, отвечающие за работу API, по умолчанию включены в дистрибутив SolidWorks и автоматически инсталлируются на ваш компьютер при установке программы. И что самое главное, SolidWorks API поставляется совершенно бесплатно. Да, есть конструкторские пакеты, в которых API является дополнительной опцией и стоит немалых денег, но SolidWorks к таким системам не относится. Из этого следует, что использование API — наиболее дешевый и удобный способ идеально настроить SolidWorks на решение задач именно вашего предприятия.

В начало В начало

Для решения каких задач можно использовать SolidWorks API?

SolidWorks API можно использовать для решения различных задач. Каких именно — целиком и полностью зависит от вашего воображения. Наиболее популярными областями применения приложений SolidWorks являются:

  • интеграция SolidWorks с другими Windows CAD/CAM/CAE-приложениями, Microsoft Office, Windows API;
  • разработка специализированных модулей, добавляющих к базовым возможностям SolidWorks дополнительную функциональность.
В начало В начало

Документация по SolidWorks API

Как уже отмечалось, все средства API, в том числе и документация, по умолчанию включены в дистрибутив SolidWorks. Они вполне позволяют самостоятельно освоить программный интерфейс SolidWorks. Перечислим эти полезные ресурсы:

  • справочная система по SolidWorks API;
  • примеры проектов, созданных с использованием SolidWorks API.

В справочной системе SolidWorks API можно найти подробное описание структуры API, а также список всех новых функций, добавленных в API к моменту выхода последней версии SolidWorks. Справка вызывается посредством меню «Справка по SolidWorks API».

Примеры проектов (исходные коды), созданных с использованием SolidWorks API, также включены в дистрибутив SolidWorks. В директории …\SolidWorks\samples\ вы найдете проекты Visual Basic, Visual C++, а также всю необходимую информацию по этим проектам, включая их описание. Кроме того, в директории …\SolidWorks\samples\appComm\ находятся заглавные файлы, необходимые для компиляции проектов Visual C++, и полный список констант SolidWorks API для Visual Basic (файл swconst.bas) и Visual C++ (файл swconst.h). В директории …\SolidWorks\samples\appComm\win32\ находится файл amapp.h, в котором описываются все интерфейсы, которые использует SolidWorks API. Дополнительные примеры проектов можно найти в справочной системе SolidWorks API (файл …\SolidWorks\ lang\apihelp.chm) в разделе Examples.

Помимо вышеперечисленных ресурсов при изучении SolidWorks API могут быть использованы следующие материалы:

  • набор примеров «SolidWorks API SDK»;
  • часто задаваемые вопросы по SolidWorks API;
  • учебное пособие «Тренинг по SolidWorks API».

Эти материалы можно бесплатно загрузить с Web-страницы SolidWorks Corp (http://www.solidworks.com/) в разделе «API Support» (рис. 1).

В начало В начало

Есть ли уже готовые работающие приложения, написанные с помощью SolidWorks API?

Есть, и не мало. На настоящий момент насчитывается свыше 400 прикладных программ, использующих SolidWorks API и решающих целый ряд специфических задач. Такое обилие приложений является еще одной характерной особенностью пакета SolidWorks и положительным образом выделяет его из списка других систем, имеющихся сегодня на рынке.

Еще в 1995 году корпорация SolidWorks основала проект «Партнеры SolidWorks», который предполагает осуществление совместной работы по созданию и дистрибьюции прикладных программ для системы SolidWorks. В зависимости от степени интеграции с SolidWorks существует несколько ступеней партнерства и соответственно — несколько групп партнеров по степени важности:

  • Research Partner — партнер-исследователь. Обеспечивает низшую степень интеграции своих приложений с SolidWorks. Приложения не требуют сертификации специалистами SolidWorks Corp на предмет совместимости программ. Партнеры-исследователи стремятся получить в перспективе звание Solution Partner;
  • Solution Partner — партнер по решению. Обеспечивает высокую степень интеграции своих приложений с SolidWorks, но эти приложения не обязательно работают с ним в одном окне. Приложения проходят обязательную сертификацию на SolidWorks Corp на предмет совместимости с SolidWorks. Партнеры по решению стремятся получить в перспективе звание Gold Partner;
  • Gold Partner — золотой партнер. Обеспечивает высшую степень интеграции своих приложений с SolidWorks, которые обязательно работают с ним в одном окне. Приложения проходят обязательную сертификацию на SolidWorks Corp на предмет совместимости с SolidWorks при выходе каждой новой версии SolidWorks.

Список партнеров составляют компании — лидеры в области управления данными, прочностного анализа, производства и т.д., которые обеспечивают создание полноценного продукта — от начальной стадии проектирования до его промышленного освоения. В каждой предметной области насчитывается от одной до нескольких десятков прикладных программ, каждая из которых разрабатывается и поддерживается высококвалифицированными специалистами. Благодаря этому у пользователей SolidWorks есть возможность выбора наилучшего решения.

Не имеет смысла перечислять все партнерские приложения SolidWorks. Приведем краткое описание лишь нескольких программ, разработанных в России, которые по праву заслужили любовь и доверие отечественных инженеров.

В начало В начало

Примеры прикладных программ, разработанных с использованием SolidWorks API

Менеджер ведения проектов SWR-PDM (рис. 2):

  • является высокотехнологичным масштабируемым многопользовательским приложением, способным удовлетворить информационные потребности отдельного разработчика, отдела и всего предприятия в целом;
  • обеспечивает хранение, поиск, извлечение и просмотр документов любого происхождения (созданных в SolidWorks или других САПР, MS Office и т.д.), гибкое управление версиями документов;
  • предоставляет в распоряжение группы разработчиков эффективные инструменты управления коллективной работой;
  • прост в установке, настройке, освоении и использовании.

Модуль автоматической генерации спецификаций SWR-Спецификация (рис. 3) обеспечивает:

  • полностью автоматическое заполнение спецификации по ЕСКД;
  • двустороннюю ассоциативную связь с чертежами и моделями SolidWorks;
  • встроенные библиотеки материалов;
  • поддержку множества бланков, функции экспорта данных;
  • генерацию других конструкторских и технологических документов.

Библиотека стандартных изделий StandardWorks и SWR-библиотеки (рис. 4) обеспечивают:

  • пополняемые библиотеки любых параметризованных моделей;
  • возможность разделения доступа пользователя и администратора;
  • поставку с готовым наполнением в соответствии с ГОСТами;
  • возможность добавления элементов из библиотек прямо в сборку с наложением сопряжений;
  • интеграцию с модулем автоматической генерации спецификаций;
  • возможность настройки на СтП при поставке заказчику.

Система простановки допусков и посадок TolerAction (рис. 5) имеет следующие функциональные возможности:

  • работа в системах отверстия или вала;
  • выбор стандартных значений квалитета и поля допуска, соответствующих размеру;
  • использование базы данных со стандартными значениями квалитетов и полей допусков согласно СТ СЭВ 144-75;
  • работа в контексте детали, сборки и чертежа;
  • автоматическое реагирование на изменение номинальных значений размеров, которым были присвоены допуски, и их обновление;
  • интерактивное руководство пользователя и встроенная справочная система «Рекомендуемые посадки».

Перечисленные модули являются коммерческими программами и характеризуются оптимальным показателем «цена/производительность», полной интеграцией с SolidWorks, высоким качеством исполнения, квалифицированной технической поддержкой, регулярным обновлением версий.

Помимо коммерческих программных продуктов существует множество freeware-программ и макросов, которые доступны для бесплатной загрузки как на Web-странице SolidWorks Corp, так и на сайтах партнеров и реселлеров SolidWorks по всему миру. В следующих статьях мы обязательно ознакомим вас с некоторыми из этих программ и приведем ссылки на сайты, где их можно взять.

На этой приятной ноте мы, пожалуй, и закончим вводный экскурс в SolidWorks API. В следующих публикациях мы затронем техническую сторону работы с API и совместно создадим ту самую заветную «кнопку» (о которой говорилось в начале статьи), придающую базовым возможностям SolidWorks дополнительную функциональность. Ждем ваших отзывов по адресу: a.avedyan@solidworks.ru.

«САПР и графика» 8'2002

Регистрация | Войти

Мы в телеграм:

Рекламодатель:
ООО «Нанософт разработка»

ИНН 7751031421 ОГРН 5167746333838

Рекламодатель: ООО «НТЦ ГеММа»

ИНН 5040141790 ОГРН 1165040053584

Рекламодатель: ЗАО «Топ Системы»

ИНН 7726601967 ОГРН 1087746953557