Continue to Site

Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

  • Congratulations waross on being selected by the Eng-Tips community for having the most helpful posts in the forums last week. Way to Go!

Catia V5 Plug-in Developement Documentation? 1

Status
Not open for further replies.

jagandeep

Automotive
May 27, 2013
82
IN
Hello Friends,
Is it possible to develop plugins for Catia V5 ? If so please tell me what are the supported languages ? I am not able to find any documentation for the same.
 
Replies continue below

Recommended for you

@jagandeep
Yes. It is possible to develop plugins for Catia V5. Any object-oriented programming language is supported such as C#, C++, VB, etc. You will need a development environment such as Microsoft's Visual Studio 2012 ( Create a new project and in the Solution Explorer window right-click on your application and select Add Reference. See step 1. This will allow you to reference Catia's publicly available API (Application Programming Interface). You will see a window where you can select the appropriate COM (Component Object Model) libraries that you are referencing in your code. See step 2. To know which libraries contain certain methods and properties you can look up the code in question via Catia's VBA Editor using View > Object Browser. See step 3, 4, & 5.

Step1: Step2: Step3: Step4: Step5:
I hope this gives you some basic information to get started, but you can find additional information that deals with this subject on Eng-Tips Forums. At the top of this thread you will see the links "Forum" "Search" "FAQS", etc. Click on "FAQS" and at the bottom of the page under the "SCIRPTS AND MACROS" section there are two links that address this question:

Regards,
Drew Mumaw
 
@ferdo
I didn't see your response until my browser refreshed when I hit "Submit Post" on my response. To be honest, I wasn't sure what jagandeep was specifically asking for anyway - I assumed he was inquiring about how to create a standalone vb app though he might be trying to find info on CAA - depends on what he's trying to accomplish I suppose.

Regards,
Drew Mumaw
 
Hello All

Thanks for this wonderful response.
What I mean by Plug-In Something more than common macro functionality. Like hacking the menus, toolbars, right click menu along with hacking catia commands [bigsmile]
By the way I am interested in developing a simple sort of PLM Software for Catia V5R18/19/20/21 Using C# for improving my coding skills and for fun. I think .catvba is just too limited for this.

I hope I can also use C# with V5.
 
What is difference between CAA and Normal catvba programming ?
 
@jagandeep
catvba is very limited in terms of what objects, methods, properties, etc are exposed for automation purposes. You can check CATIA's API documentation beforehand to see what's publicly available and what's not. DS's website (via ferdo's link) will have much more info on CAA, but it gives you access to CATIA's framework, whereas catvbs, catvba, and vb apps simply send instructions to CATIA via it's API (Application Programming Interface). This relies on COM (Component Object Model) interoperation.

For customization on the level you were describing (such as drop down menu's) you will have to use CAA. Licenses for CAA cost tens of thousands of dollars.

Regards,
Drew Mumaw
 
We have HD2 License. Can I still develop using C# without purchasing any additional license.
 
@jagandeep
Yes. HD2, MD2, MD1, doesn't matter. You can use C# (or any other object-oriented programming language) to develop applications that access CATIA V5's API. Refer to my first post for how to create applications in Visual Studio 2012 that access CATIA V5.

Regards,
Drew Mumaw
 
So what are the limitations of C# Based developments without CAA License & with CAA License
Sorry for foolish questions
 
@jagandeep
They're not foolish. Asking is the best way to learn. To understand what you can do without CAA, it's probably best to investigate what items are exposed to automation via the API. You will need to reference CATIA's API documentation, which should have been installed with CATIA. Mine is installed here: C:\Program Files\Dassault Systemes\B22doc\English\online\CAAScdBase\CAAScdAutomationHome.htm. To find it on your machine, in CATIA, press F1 to bring up the help documentation then navigate to Part Design > Part Design Reference > Indexes > Master Index. This Master Index lists all of the properties, methods, and objects that are exposed to automation. To view these items another way, in CATIA, go to Tools > Macro > Visual Basic Editor. Then go to View > Object Browser or just hit F2. This lets you view the various members of different classes in the available libraries. Simply put, if it's not in here (the API documentation), it can't (without some workarounds or extraordinary measures) be automated without CAA/RADE. This documentation should give you a better idea of what limitations exist. It should also give you an idea of whether or not you'll be able to accomplish what you need without a CAA license.

Also, I want to reiterate that if you are developing a standalone application in Visual Studio (or some other development environment) it doesn't matter whether you are programming in C# or VB or C++. Any CATIA interface that's exposed to automation can be called from an outside application - regardless of what language the application was developed in. Although, with regards to CAA, you would have to use C++ because that's the language CATIA was developed in. I should note that I have not personally used CAA/RADE, I'm speaking from what I've heard.

Regards,
Drew Mumaw
 
Thanks Drew. You guys are very helpful.

So I guess Inserting a new toolbar & menu is not possible programmatically without CAA License ?
 
@jagandeep
You can add a customized toolbar without CAA. See here for a good explanation on how to do it and how to add icons to your buttons. Again, these will just be calling macros.

You cannot add a drop-down menu without CAA. When I say "drop-down menu" I mean a customized menu at the top of CATIA like "File" "Edit" "View" etc. Some companies use CAA to create an integration type drop-down menu with their PDM system, such as Windchill or SmarTeam. You mentioned something about developing PLM software. You would need CAA to do a drop-down menu.

Regards,
Drew Mumaw
 
@jagandeep - there are few benefits if you have an independent application to be used like a toolbar to launch your macros.... you are completely independent by CATIA version or CATSettings. It depend also how you developed that toolbar (I mean in which programming language). You can create a toolbar to be used under Windows OS or under both UNIX and Windows.

Definitely you need CAA to insert a pull-down menu like CATIA has. A customized toolbar (like in CATIA) can be created manually without problems, search on net and you will find plenty of examples how to do it.

Regards
Fernando

 
Fine, If I develop CAA Based Plugin(If I get License somehow :d), Do the end user also require CAA license to use it ??
 
Thanks, So that means everything is already available with Standard Catia Installation. But I wonder how CAA tools enables it, may be just change some permissions to allow the modification not available normally ?
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Top