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

Добавлено:
04 окт 2007 12:29
GTV
Всё что Вы хотели узнать о 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 - поддерживающем языке.
Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Добавлено:
04 окт 2007 18:17
MAX KZK
GTV
Большое спасибо и респект за объяснения! Мне (и уверен, не только мне) было полезно познакомиться.
Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Добавлено:
04 окт 2007 18:32
AntiX
Можно добавить еще CAA Automation API. Это CAA без RADE.
Позволяет работать с Knowledgeware, писать внутренние макросы и внешние расширения на любом COM или .NET - поддерживающем языке.
Имеются ограничения, все-таки не RADE, но намного проще в использовании при мелкой и средней автоматизации.
Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Добавлено:
04 окт 2007 18:45
GTV
AntiX писал(а):Можно добавить еще CAA Automation API. Это CAA без RADE.
ЁК

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

Добавлено:
04 окт 2007 19:15
AntiX
Дык, Automation API - это же тоже вроде как CAA, тока без RADE
Документация находится
<CATIA_HOME>\intel_a\code\bin\V5Automation.chm
Пригодна не только для Басика
Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Добавлено:
04 окт 2007 19:39
GTV
AntiX писал(а):Пригодна не только для Басика
это - да...
Я и из C# и из Python'а ну и конечно из VB КАТЬКУ за ... дёргал

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

Добавлено:
04 окт 2007 20:12
AntiX
В общем, к чему я веду. Некоторые поправки
Утверждение что
CAA без RADE представляет скорее теоретический интерес ибо возможность его практического использования в этом случае весьма сомнительна (IMHO)
не совсем верно.
CAA без RADE - это и есть CAA Automation API, оно же CATIA V5 Automation, оно же CAA V5 - вариантов звучания много - но это тоже CAA.
И в силу этого, там где приводятся достоинства и недостатки CATIA V5 Automation, все абсолютно верно - но не по отношению к CAA, а к CAA RADE.
Со всем остальным - я согласен на все 100
Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Добавлено:
04 окт 2007 21:02
GTV
В стандартной поставке содержатся
- собственно CATIA (несколько дисков, включая варианты для различных платформ)
- CAA (один диск)
- RADE (ещё один диск)
Если поставить только CATIA, то Automation будет доступен по умолчанию, а CAA и RADE - это отдельные продукты которые нужно доставлять.
Так что формально - Automation к CAA не относится (хоть и написан на CAA-RADE

и из CAA можно запросто дёргать за Automation API)
Automation - это скорее самостоятельное средство программирования под CATIA V5 чем не "CAA без RADE"
Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Добавлено:
04 окт 2007 21:40
AntiX
Все правильно с поставкой. С 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 никак не сказывается.
Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Добавлено:
04 окт 2007 21:48
Sten
Нет случаем у кого примерчика чего-нибудь примитивного на С# под Катьку?:)
Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Добавлено:
04 окт 2007 21:58
AntiX
Пример конструктора, инициализацирующего катькин сервак на сишарпе
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
Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Добавлено:
04 окт 2007 22:36
Sten
Я так понял,что надо какие-то dll`ки подключать?! А то "An unhandled exception of type" вылетаетюю
Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Добавлено:
04 окт 2007 23:45
Dasty
присоединяюсь к Sten`у
тока можно на с++
Спасибо!
Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Добавлено:
05 окт 2007 10:30
DRazmyslovich
Dasty писал(а):присоединяюсь к Sten`у
тока можно на с++
Спасибо!
Советую посмотреть в параллельной ветке "Собратья по "цеху" - отзовитесь", там было рассказано как запустить один из стандартных примеров для CAA-RADE под с++.
Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Добавлено:
05 окт 2007 11:36
GTV
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
Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Добавлено:
05 окт 2007 11:44
Sten
Эт я в курсе,просто почему то когда я в референсы добавляю, оно ругается, что или файл недоступен, или это не COM объект... Хотя я точно помню, что пару месяцев назад это нормально подключалось

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

Добавлено:
19 окт 2007 15:53
GTV
Давиче ваял тест-кейсик (в рамках текущего проекта)...
всё работает (лицензия 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;
}
}
}
Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Добавлено:
20 окт 2007 18:19
Sten
Угу..спасибо.
Такой вопрос.. САА R17 хорошо встает на VS.NET 2002, а с 2005 не хочет дружить..Можно это как-то пофиксить?
Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Добавлено:
22 окт 2007 12:26
GTV
...САА 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
... у меня завелось

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

Добавлено:
23 окт 2007 22:21
Sten
А у меня как-то не очень
Но сообщения об ошибке порадовали своим оптимизмом!!!


- caa_err.JPG (8.66 КБ) Просмотров: 51937
Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Добавлено:
25 окт 2007 00:24
Sten
может трабла в том,что у меня 7.0, а 7.1 не было, и я 8.0 накатил

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

Добавлено:
10 фев 2008 15:58
Vladimir
Извините, я может не по теме, Но может кто знает, как проект, написанный под 32 битное CATIA переделать под 64. Версия CAA - RADE V5R16.
Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Добавлено:
13 фев 2008 15:01
Vadimok74
Может кто-нибудь программировал в JAVA под CATIA? Как я понимаю, CAA-RADE содержит в себе Java API. Не могли бы вы пару примерчиков кинуть, как юзать эту API? Есть ли информация по JAVA API в документации к CAA-RADE? Можно ли просмотреть доки по CAA-RADE в интете (не устанавливая CAA-RADE)?
Спасибо!
P.S. Возможно я не один! И у кого-нибудь еще есть интерес к программированию на JAVA под CATIA. Я создал новую тему "JAVA for CATIA". Думаю, так будет лучше...
Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спрос

Добавлено:
11 мар 2009 18:30
booSter
Re: Всё что Вы хотели узнать о CAA-RADE, но стеснялись спросить

Добавлено:
23 июл 2009 11:08
Readon
вопрос по лицензированию:
среди подключённых лицензий не нахожу ALR, которая будет необходима для RADE. Появится ли она автоматически при установке RADE? либо использовать другую версию CATIA (сейчас v5R18).
где-то на форуме была тема " FAQ кто хочет купить CATIA" . Что же можно сказать про CAA RADE? купить отдельно его возможно или это будет слишком "паливно"

)) ?