iCAx开思工具箱
标题:
【讨论】CATIA二次开发中VBA和Automation的关系是怎样的
[打印本页]
作者:
liketulip
时间:
2005-1-6 20:22
标题:
【讨论】CATIA二次开发中VBA和Automation的关系是怎样的
请教一下
有点糊涂
1.Automation的基于宏的也应该属于CAA下面吧?
我看CAA V5 Encyclopedia就是分为Automation Home和C++/Java Home
也就是说Automation也归于CAA下面?
2.Automation开发等同于基于宏的开发吗?
3.VBA和Automation的关系是怎样的?他们应该是不同的
总之,我是想了解CATIA的几种二次开发方式的结构怎样,分为几类
有人把catalog也算做CATIA二次开发而别把它和CAA、宏并列
作者:
nctusdk
时间:
2005-1-6 23:46
> 1.Automation的基于宏的也应该属于CAA下面吧?
> 我看CAA V5 Encyclopedia就是分为Automation Home和C++/Java Home
> 也就是说Automation也归于CAA下面?
應該說Automation底層也是透過CAA去完成他的功能的
換句話說, Automation是用CAA寫出來的
> 2.Automation开发等同于基于宏的开发吗?
功能的限制: CAA >> Automation
語法: C++ vs VB
> 3.VBA和Automation的关系是怎样的?他们应该是不同的
Automation的語法就是VB, 也就是說你可以透過VBA去執行Automation的功能
> 总之,我是想了解CATIA的几种二次开发方式的结构怎样,分为几类
其實正確的說法應該是分成四類:
CAAV5 C++, CAAV5 Automation, CAAV5 Java, CAAV5 Knowledgeware
他們都叫CAA or CAAV5, 只不過大家習慣上都只稱CAAV5 C++為CAA,
CAAV5 Automation就叫Automation...
總之都是以CAAV5 C++為基礎來延伸出一些subset
CAAV5 Automation就是CAAV5 C++的subset,
CAAV5 Java也是CAAV5 C++的subset...
至於CAAV5 Knowledgeware...我個人不認為他是一個開發工具啦...
因為他只是CATIA interactively操作上的一個功能罷了...
頂多你自己定一些formula...沒什麼太大義意...
所以當然CAAV5 C++功能最為完整...
基本上你在CATIA裡interactively辨的到的CAAV5 C++都辨的到
(當然有些DS內部的lib及resource沒有還是沒辨法啦)
你可以看Encyclopedia裡的structure, 就可以知道這三種各別函蓋了那些部份的功能.
至於他們的優缺點, 我簡單寫一下,
CAAV5 C++:
[優點]-->功能最強大, 切換不同版本orSP之間的相容性問題較小, 執行速度最快
[缺點]-->學習難度較高
CAAV5 Automation
[優點]-->簡單易學
[缺點]-->功能受限, 切換不同版本orSP之間的相容性問題很大(應該說他的API很愛變來變去...)
CAAV5 Java
....我沒用過不知道....
> 有人把catalog也算做CATIA二次开发而别把它和CAA、宏并列
應該是指Knowledgeware吧,
的確在DS的官方說法裡他們都是並列的...
你指的catalog...是指CATIA Knowledgeware裡用UDF時的catalog?...
還是是指UDF(User Defined Feature)?
(我記得有某個ptt有寫到開發工具的比較中也把UDF也列了進來,
指明了UDF是最貴,花最多時間的開發方式)
UDF只是開發的一個方法...自己寫catalog定義一個feature...
(只能用CAAV5 C++來寫)(CATIA interactive操作定出來的那個不算)
用底層的operator去算一些你自己想要的geometry出來
(打個比方, 大概就是開發一個GSD中的Loft...)
這個大概是做二次開發算最麻煩的一種方式了...
(不過最後出來的東西也較好用, 因為可以完整支援CATIA的操作...)
像是如果你需要開發一些特殊曲面的Feature...那就非得用UDF不可了...
以上個人淺見, 有錯還請指正.
SDK.
作者:
liketulip
时间:
2005-1-7 10:10
多谢
我一直认为VBA和automation有不同的
因为没怎么用到这个
作者:
acoka
时间:
2005-1-9 02:54
我认为UDF开发倒不贵,也快。也可以C++编程
问题是它的内部是black box,内部topo情报难取
如nctusdk所说,自己定义feature编程量会大很多,但功能稳定,自由度大。综合考虑在part命令里它还是最佳开发手段,因为用户常会提要求增强功能,自己定义feature自由度大,容易实现和以前的开发版本的兼容。
欢迎光临 iCAx开思工具箱 (https://t.icax.org/)
Powered by Discuz! X3.3