Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Программирование для CATIA.

Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Сообщение GTV » 04 окт 2007 12:29

Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

CAA (Component Application Architecture, CAA2, CAA V5) — это полнофункциональный многоуровневый API для написания приложений всех типов под CATIA V5. CATIA-приложения можно разделить на следующие категории:
  • embedded (встраиваемые, они-же CATIA AddIn) — дополнения, загружаемые непосредственно в CATIA\ENOVIA\DELMIA
  • standalone (самостоятельные)
    • CMD-line (консольные, batch, console) — как правило разного рода конвертеры, валидаторы и.т.п.
    • Interactive (интерактивные, UI-based) — всё, вплоть до создания собственной CATIA-подобной среды.

RADE (Rapid Application Develpment Environment) — это среда позволяющая правильно строить CATIA-приложения написанные с использованием CAA. RADE представляет из себя набор программ и скриптов запускаемых из под командной строки, а так-же имеет «фронт-енд» в виде «адд-ина» к MS Visual Studio. После правильной установки RADE в студийном меню появляются специфические CAA пункты. Для работы RADE необходима лицензия ALR (или аналогичная)

CAA без RADE представляет скорее теоретический интерес ибо возможность его практического использования в этом случае весьма сомнительна (IMHO)

CAADoc (CAA V5 Encyclopedia) — интерактивная документация по CAA-RADE содержащая огромное количество разнообразнейшей информации о том, как и что делать, во многих случаях проиллюстрированной реальными примерами (use-cases). CAADoc ставится вместе с CAA (по тому-же пути в папку CAADoc, стартовая страничка — ./CAADoc/Doc/online/CAACenV5Default.htm)

CATIA V5 Automation — набор Automation (OLE, COM, ActiveX, VB\VBA) объектов представляющих собой высокоуровневый API для CATIA V5.
Основные отличия от CAA
  • + Не требует установки CAA и специальной лицензии
  • + Относительно прост в использовании и позволяет решать довольно большой круг задач
  • - Не представляет доступа ко некоторым функциональностям доступным в CAA (например: топологическое ядро, математика, прямой доступ к содержимому фичеров и.т.д)
  • - Automation API синхронизирован с въювером (создание массива из 10000 точек займет раз эдак в 100 раз больше времени, чем на CAA)
Позволяет работать с Knowledgeware, писать внутренние макросы и внешние расширения на любом COM или .NET - поддерживающем языке.
Последний раз редактировалось GTV 04 окт 2007 19:33, всего редактировалось 4 раз(а).
Вы суслика видите ?.. а он - есть
Аватара пользователя
GTV
Новичок
Новичок
 
Сообщения: 40
Зарегистрирован: 25 сен 2007 17:57
Откуда: Минск, Беларусь

Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Сообщение MAX KZK » 04 окт 2007 18:17

GTV

Большое спасибо и респект за объяснения! Мне (и уверен, не только мне) было полезно познакомиться.
Внедряю PLM за еду.
Аватара пользователя
MAX KZK
Forum Manager
 
Сообщения: 1321
Зарегистрирован: 11 сен 2007 18:50
Откуда: Красноярск
Blog: View Blog (11)

Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Сообщение AntiX » 04 окт 2007 18:32

Можно добавить еще CAA Automation API. Это CAA без RADE.

Позволяет работать с Knowledgeware, писать внутренние макросы и внешние расширения на любом COM или .NET - поддерживающем языке.
Имеются ограничения, все-таки не RADE, но намного проще в использовании при мелкой и средней автоматизации.
Аватара пользователя
AntiX
Новичок
Новичок
 
Сообщения: 19
Зарегистрирован: 27 сен 2007 18:27

Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Сообщение GTV » 04 окт 2007 18:45

AntiX писал(а):Можно добавить еще CAA Automation API. Это CAA без RADE.


ЁК :8): ... заносим в шапку
Вы суслика видите ?.. а он - есть
Аватара пользователя
GTV
Новичок
Новичок
 
Сообщения: 40
Зарегистрирован: 25 сен 2007 17:57
Откуда: Минск, Беларусь

Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Сообщение AntiX » 04 окт 2007 19:15

Дык, Automation API - это же тоже вроде как CAA, тока без RADE

Документация находится
<CATIA_HOME>\intel_a\code\bin\V5Automation.chm

Пригодна не только для Басика
Аватара пользователя
AntiX
Новичок
Новичок
 
Сообщения: 19
Зарегистрирован: 27 сен 2007 18:27

Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Сообщение GTV » 04 окт 2007 19:39

AntiX писал(а):Пригодна не только для Басика


это - да...
Я и из C# и из Python'а ну и конечно из VB КАТЬКУ за ... дёргал :D
Вы суслика видите ?.. а он - есть
Аватара пользователя
GTV
Новичок
Новичок
 
Сообщения: 40
Зарегистрирован: 25 сен 2007 17:57
Откуда: Минск, Беларусь

Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Сообщение AntiX » 04 окт 2007 20:12

В общем, к чему я веду. Некоторые поправки

Утверждение что

CAA без RADE представляет скорее теоретический интерес ибо возможность его практического использования в этом случае весьма сомнительна (IMHO)

не совсем верно.

CAA без RADE - это и есть CAA Automation API, оно же CATIA V5 Automation, оно же CAA V5 - вариантов звучания много - но это тоже CAA.

И в силу этого, там где приводятся достоинства и недостатки CATIA V5 Automation, все абсолютно верно - но не по отношению к CAA, а к CAA RADE.

Со всем остальным - я согласен на все 100
Аватара пользователя
AntiX
Новичок
Новичок
 
Сообщения: 19
Зарегистрирован: 27 сен 2007 18:27

Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Сообщение GTV » 04 окт 2007 21:02

В стандартной поставке содержатся
  • собственно CATIA (несколько дисков, включая варианты для различных платформ)
  • CAA (один диск)
  • RADE (ещё один диск)

Если поставить только CATIA, то Automation будет доступен по умолчанию, а CAA и RADE - это отдельные продукты которые нужно доставлять.
Так что формально - Automation к CAA не относится (хоть и написан на CAA-RADE :wink: и из CAA можно запросто дёргать за Automation API)

Automation - это скорее самостоятельное средство программирования под CATIA V5 чем не "CAA без RADE"
Последний раз редактировалось GTV 22 окт 2007 12:58, всего редактировалось 1 раз.
Вы суслика видите ?.. а он - есть
Аватара пользователя
GTV
Новичок
Новичок
 
Сообщения: 40
Зарегистрирован: 25 сен 2007 17:57
Откуда: Минск, Беларусь

Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Сообщение AntiX » 04 окт 2007 21:40

Все правильно с поставкой. С CATIA по поставке все ясно.

А все остальное относиться именно к CAA RADE. RADE - это собствеено движок. А под CAA подразумевается именно рейдовое API непосредственно или под CATIA, или под ENOVIA и т.д. Еще оно приходит под маркой просто API. Это все вместе и есть CAA RADE. По крайней мере у меня так.

Сомнения в том что Automation API - тоже CAA - развеятся, если открыть указанную документацию.
<CATIA_HOME>\intel_a\code\bin\V5Automation.chm

Automation API - это точно не RADE, а является ли оно CAA или не является - это вопрос схоластический.

Буржуи - по документации употребляют название CAA по отношению к обоим технологиям. Но технологии кардинально отличается - а дальше - кто к чему привык. Я привык, что CAA - это и то, и другое, кто-то считает, что CAA - это только RADE. На работе ни Automation API, ни RADE принадлежность его к CAA никак не сказывается.
Последний раз редактировалось AntiX 04 окт 2007 21:52, всего редактировалось 1 раз.
Аватара пользователя
AntiX
Новичок
Новичок
 
Сообщения: 19
Зарегистрирован: 27 сен 2007 18:27

Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Сообщение Sten » 04 окт 2007 21:48

Нет случаем у кого примерчика чего-нибудь примитивного на С# под Катьку?:)
Sten
Moderator
 
Сообщения: 504
Зарегистрирован: 20 сен 2007 00:09

Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Сообщение AntiX » 04 окт 2007 21:58

Пример конструктора, инициализацирующего катькин сервак на сишарпе

public CATIAServer()
{
Type catiaObj = Type.GetTypeFromProgID("CATIA.Application");
object[] args = new object[1];
args[0] = true;
catia = Activator.CreateInstance(catiaObj);
//catia.GetType().InvokeMember("Visible", BindingFlags.SetProperty, null, catia, new object[] { true });
}

Но это Avtomation API, для RADE только С++ и java
Аватара пользователя
AntiX
Новичок
Новичок
 
Сообщения: 19
Зарегистрирован: 27 сен 2007 18:27

Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Сообщение Sten » 04 окт 2007 22:36

Я так понял,что надо какие-то dll`ки подключать?! А то "An unhandled exception of type" вылетаетюю
Sten
Moderator
 
Сообщения: 504
Зарегистрирован: 20 сен 2007 00:09

Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Сообщение Dasty » 04 окт 2007 23:45

присоединяюсь к Sten`у
тока можно на с++ :oops:
Спасибо!
Аватара пользователя
Dasty
Forum Manager
 
Сообщения: 937
Images: 3
Зарегистрирован: 11 сен 2007 18:50

Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Сообщение DRazmyslovich » 05 окт 2007 10:30

Dasty писал(а):присоединяюсь к Sten`у
тока можно на с++ :oops:
Спасибо!

Советую посмотреть в параллельной ветке "Собратья по "цеху" - отзовитесь", там было рассказано как запустить один из стандартных примеров для CAA-RADE под с++.
Благословенны забывающие, ибо не помнят они своих ошибок(Ницше)
Аватара пользователя
DRazmyslovich
Новичок
Новичок
 
Сообщения: 13
Зарегистрирован: 27 сен 2007 11:11
Откуда: Минск, Беларусь

Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Сообщение GTV » 05 окт 2007 11:36

Sten писал(а):Я так понял,что надо какие-то dll`ки подключать?! А то "An unhandled exception of type" вылетаетюю


В папке ./intel_a/code/bin лежит пачка TLB-файлов (90 штук или около того). Это COM-овские библиотеки типов содержащие описания CATIA-Automation объектов
Для того чтобы шарповский (или любой другой CLR-ный) проект мог правильно "курить" CATIA-Automation объекты необходимо добавить в референсы CLR-проекта нужные TLB-хи

Например CATIA.Application "живёт" в .\intel_a\code\bin\InfTypeLib.tlb
Вы суслика видите ?.. а он - есть
Аватара пользователя
GTV
Новичок
Новичок
 
Сообщения: 40
Зарегистрирован: 25 сен 2007 17:57
Откуда: Минск, Беларусь

Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Сообщение Sten » 05 окт 2007 11:44

Эт я в курсе,просто почему то когда я в референсы добавляю, оно ругается, что или файл недоступен, или это не COM объект... Хотя я точно помню, что пару месяцев назад это нормально подключалось :unknown:
Sten
Moderator
 
Сообщения: 504
Зарегистрирован: 20 сен 2007 00:09

Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Сообщение GTV » 19 окт 2007 15:53

Давиче ваял тест-кейсик (в рамках текущего проекта)...
всё работает (лицензия AL2+ALR)

reference \ add \ browse... = InfTypeLib.tlb

Код: Выделить всё

using System;

namespace CAADotNetBridge.mext
{
   /// <summary>
   /// Summary description for Application.
   /// </summary>
   class Application
   {
      /// <summary>
      /// The main entry point for the application.
      /// </summary>
      [STAThread]
      static void Main(string[] args)
      {
         //
         // TODO: Add code to start application here
         //

            Type typeCatia = Type.GetTypeFromProgID("CATIA.Application");

            INFITF.Application catiaApp = (INFITF.Application) Activator.CreateInstance(typeCatia);

            catiaApp.Visible = true;

      }
   }
}

Вы суслика видите ?.. а он - есть
Аватара пользователя
GTV
Новичок
Новичок
 
Сообщения: 40
Зарегистрирован: 25 сен 2007 17:57
Откуда: Минск, Беларусь

Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Сообщение Sten » 20 окт 2007 18:19

Угу..спасибо.
Такой вопрос.. САА R17 хорошо встает на VS.NET 2002, а с 2005 не хочет дружить..Можно это как-то пофиксить?
Sten
Moderator
 
Сообщения: 504
Зарегистрирован: 20 сен 2007 00:09

Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Сообщение GTV » 22 окт 2007 12:26

...САА R17 хорошо встает на VS.NET 2002, а с 2005 не хочет дружить...


RADE несет на себе 3 комплекта VS-адд-ин-ов : VS.NET 2002 (7.0), VS.NET 2003 (7.1) и VS.2005 (8.0)

Для 32-х битной R17 рекомендуемая конфигурация - C++ компилятор VS.NET 2002 (7.0) + VS.NET 2003 (7.1 sp1) {это получается если от студии 7.0 поставить только C++, а потом поставить студию 7.1 (в желаемой конфигурации)}
Для х64 - используется VS.2005 (8.0) но по умолчанию она недоступна (возможно она активируется на х64 операционке, но я - не проверял ввиду отсутствия необходимости)

А, собственно, RADE-адд-ин-ы в VS.2005 (8.0) можно активировать и вручную сняв дамп ветки реестра
Код: Выделить всё
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\7.1\AddIns]

и подрихтовав его под 8.0 воткнуть обратно в реестр.
Рихтовка такая:
Код: Выделить всё
заменить все "7.1" на "8.0"
-//- Adele.Connect на Adele80.Connect
-//- CodeGenerator.Connect на CodeGenerator80.Connect
-//- Mkmk.Connect на Mkmk80.Connect
при необходимости зарегистрировать как COM-сервера (RegSvr32) следующие ДЛЛ-ки: MSDEVNET80AddinAdele.dll, MSDEVNET80AddinCodeGenerator.dll, MSDEVNET80AddinMkmk.dll 


... у меня завелось :8):
Вы суслика видите ?.. а он - есть
Аватара пользователя
GTV
Новичок
Новичок
 
Сообщения: 40
Зарегистрирован: 25 сен 2007 17:57
Откуда: Минск, Беларусь

Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Сообщение Sten » 23 окт 2007 22:21

А у меня как-то не очень :dash1:
Но сообщения об ошибке порадовали своим оптимизмом!!! :lol:
caa_err.JPG
caa_err.JPG (8.66 КБ) Просмотров: 45613
Sten
Moderator
 
Сообщения: 504
Зарегистрирован: 20 сен 2007 00:09

Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Сообщение Sten » 25 окт 2007 00:24

может трабла в том,что у меня 7.0, а 7.1 не было, и я 8.0 накатил :(
Sten
Moderator
 
Сообщения: 504
Зарегистрирован: 20 сен 2007 00:09

Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Сообщение Vladimir » 10 фев 2008 15:58

Извините, я может не по теме, Но может кто знает, как проект, написанный под 32 битное CATIA переделать под 64. Версия CAA - RADE V5R16.
Vladimir
Новичок
Новичок
 
Сообщения: 31
Images: 0
Зарегистрирован: 10 фев 2008 15:44
Откуда: TLT

Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Сообщение Vadimok74 » 13 фев 2008 15:01

Может кто-нибудь программировал в JAVA под CATIA? Как я понимаю, CAA-RADE содержит в себе Java API. Не могли бы вы пару примерчиков кинуть, как юзать эту API? Есть ли информация по JAVA API в документации к CAA-RADE? Можно ли просмотреть доки по CAA-RADE в интете (не устанавливая CAA-RADE)?
Спасибо!

P.S. Возможно я не один! И у кого-нибудь еще есть интерес к программированию на JAVA под CATIA. Я создал новую тему "JAVA for CATIA". Думаю, так будет лучше...
Vadimok74
Новичок
Новичок
 
Сообщения: 3
Зарегистрирован: 13 фев 2008 14:47

Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спрос

Сообщение booSter » 11 мар 2009 18:30

пост AxDvl-а выделен в новую тему (viewtopic.php?f=140&t=1089).
Сделаешь доброе дело за деньги - скажут спасибо,
Сделаешь бесплатно - сядут на шею...
©пёрто
Аватара пользователя
booSter
Moderator
 
Сообщения: 227
Images: 15
Зарегистрирован: 09 фев 2008 16:48
Откуда: Minsk

Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Сообщение Readon » 23 июл 2009 11:08

вопрос по лицензированию:
среди подключённых лицензий не нахожу ALR, которая будет необходима для RADE. Появится ли она автоматически при установке RADE? либо использовать другую версию CATIA (сейчас v5R18).
где-то на форуме была тема " FAQ кто хочет купить CATIA" . Что же можно сказать про CAA RADE? купить отдельно его возможно или это будет слишком "паливно" :))) ?
Аватара пользователя
Readon
Новичок
Новичок
 
Сообщения: 18
Зарегистрирован: 03 май 2008 01:41
Откуда: Харьков

След.

Вернуться в CAA-RADE

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1