GithubHelp home page GithubHelp logo

georggrebenyuk / cs_modelstudio_com_api_about Goto Github PK

View Code? Open in Web Editor NEW
2.0 2.0 0.0 1.09 MB

Пользовательская справка к COM API для CSoft ModelStudio. Приветствуются ваши мысли!

cs_modelstudio_com_api_about's Introduction

1. Introduction

1.1 General notes

Настоящая справка CHM сгенерирована через Doxygen (конфигурационный файл см. в /docs/ms_com_api_Doxyfile), сама справка приведена там же. В дополнение к справке приведены Interop DLL в разделе Releases -- https://github.com/GeorgGrebenyuk/cs_modelstudio_com_api_about/releases/tag/interop_libs, для изучения (для подключения к проекту используйте идентификаторы и названия COM библиотек из раздела 2. About Docs настоящей справки.

Также приведен небольшой вспомогательный код на Python (/samples/) для демонстрации подключения к объектам модели ModelStudio: Трубопроводы; проект с примерами разрабатывался в среде PyCharm Community.

В силу использования внутри ModelStudio от ~10 до ~30 разных COM библиотек, работать с COM API из языков с динамической типизацией очень трудно и потому рекомендуется использовать языки со строгой типизацией (C#, C++) и с возможностью явного приведения интерфейсов (и просмотром свойств и методов целевого интерфейса, что из-под Python неудобно (например, применяя dir()) или постоянно сверяясь со справкой).

Общая логика приведения интерфейсов простая.По умолчанию, любой объект модели nanoCAD -- это интерфейс OdaX.AcadEntity, и если целевой интерфейс наследует данный, то свойства и методы можно запрашивать без необходимости приведения интерфейсов (например, это интерфейсы .Element из UnitsCSCom -- Model Studio Objects 1.0 Type Library); в то же время, если объект модели относится к одному из вертикальных приложений, например оси трубопровода в MS: Трубопроводы, то он помимо наследования интерфейса IElement из UnitsCSCom также может быть приведен к одному из интерфейсу из ViperCSObjCom (vCSViperCSObjCom 1.0 Type Library), что и показано в тестовом python-скрипте в папке /samples.

Материалы также продублированы на https://github.com/GeorgGrebenyuk/cs_modelstudio_com_api_about.

Составитель: технический писатель ООО "Нанософт разработка", Гребенюк Е.А. ([email protected])

1.2 Acknowledgement

Выражаются благодарности за поддержку в исследованиях программистам TBS Software (https://www.tbs-soft.ru); также за материалы Владимиру Кудряшову (Росатом, АО АЭП) и сотрудникам CSoft за летний интенсив по программированию, чьи записи помогли в начале освоения CS ModelStudio API

cs_modelstudio_com_api_about's People

Contributors

georggrebenyuk avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

cs_modelstudio_com_api_about's Issues

Требуется дополнить описание библиотек.

Прошу дополнить описание библиотек COM API Model Studio CS:

ironObjCom.idl Объекты металлоконструкций ironObjCom 1.0 Type Library

mstHVACCOM.idl Объекты вентиляции mstHVACCOM 1.0 Type Library

mstProjectCOM.idl Объекты проекта (CadLib??) mstProjectCOM 1.0 Type Library

mstRouteCOM.idl Объекты кабельных конструкций mstRouteCOM 1.0 Type Library

ProfileViewCOM.idl Объекты электросетей (2D) Model Studio LINE Objects 1.0 Type Library

И спасибо за начинание.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.