(Announcement) Learning series started today

June 14, 2010 Leave a comment

Welcome to a series of articles aimed at transforming those who are new or inexperienced CATIA V5 automation programmers into very proficient ones.  There are a lot of people out there who want to learn how to program CATIA V5 but never do because it they are so busy with their primary job role which is typically an engineer or designer not a programmer.  They can see the incredible power that this knowledge can bring but are busy with the day to day grind and just can’t dedicate a large block of time to learn it.

The intent of this series is to walk you through the important things one step at a time.  I am not going to cover everything you need to know by any means.  Instead, I will take you on a quick tour and point out what I think are some of the important things then show you where you can go to learn more.  If you want to go further, it’s up to you to explore a bit on your own.  My goal with this is just to introduce a lot of fundamentals and point you in the right direction to do some self learning.

Each new topic will fit into one of the three chapters listed below:

  • Understanding the Visual Basic language

Data types (First topic posted today)

  • General programming principles
  • Understanding the CATIA object model

For more information, visit the Learning Series page.


Developing proper names to use in product relations

May 24, 2010 5 comments

Developing proper names to use in product relations

In the last article, I introduced some scenarios where you need to develop the proper name of an object to use in a part relation. This article follows up by discussing some other scenarios where the relation is created in a product and refers to various objects in both parts and products. Read more…

Developing proper names to use in part relations

May 11, 2010 3 comments

There are times when you may need to create a relation (formula, rule, law, etc.) using automation.  CATIA refers to parameters, geometry and other objects inside those relations based on their name so to accomplish this you will need to understand how to develop those names properly.  There are many different ways to express the name of an object inside a relation depending on where the relation is located and where the object it is referring to is located.  In this article, I will cover how to develop names of objects inside a part when the relation is also created in the same part. Read more…

CATIA V5 programming fundamentals – Introduction

April 26, 2010 11 comments

I frequently get asked all kinds of questions about the best way to learn to write CATIA automation scripts.  I also get a lot of questions about how to do things that are actually very straightforward.  There are similar types of questions all over the web.  Don’t get me wrong, questions are good – I am not knocking them!  It just seems that many people are missing the fundamentals – they aren’t aware of what techniques and resources they could have used to figure out the solution on their own. Read more…

Using custom classes in scripts

April 13, 2010 7 comments

In this article I will show how to create and use a custom class within a script.  If you program in VBA, VB6 or .NET you might be familiar with building your own classes but you may not know that you can also use them in a script.  In case you are wondering what a class is, I will start by briefly discussing that as well.  I have to admit that I have only used classes inside scripts a handful of times, but in those situations it proved to be very useful. Read more…

(Announcement) New download made available today

March 31, 2010 Leave a comment

Today, I posted an example showing how to efficiently handle interactive selection of objects on a form with a clean layout.   For more information, please visit the downloads page.

Checking CATIA licenses at runtime

March 23, 2010 7 comments

The CATIA automation API provides an extensive set of functionality across many different workbenches. Depending on what functionality your program will provide, you may need to consider what licenses are required. In this article, I will show how to add code to your program to check whether certain licenses have been granted. Read more…