In this post, I’ll draw a few parallels between REVIT and CATIA. System REVIT comprises three domains: Architecture, Structure, and MEP. Each domain comes with a list of tools. CATIA is broken down to roles/licenses. A role comes with many apps, each comprising many tools. Similar to REVIT, some tools may reappear in different apps […]

Making a Grid of Points in EKL

Writing EKL code requires a Template Designer License, (KDI). It is customary for ones to start their first programming project with a “Hello World”. So let’s not break the tradition. Create An Action As mention in earlier, Action objects will be able to create and set features, while Rule objects can only set already existing […]

Behaviors of Knowledge-ware Objects

For a quick introduction to how and where CATIA stores knowledge-ware objects, take a look at this post. EKL (Enterprise Knowledge Language) code can be written within any knowledge-ware Relation, including: Action, Reaction, Check, Rule, KnowlegePattern, and Optimization objects. States Before looking at how these objects differ, lets look at the idea of State. Active […]

Intro to CATIA Programming with EKL

We can delegate tasks to CATIA by communicating our intent in written code. We write code in one of the languages supported by CATIA: C#, BA, VBScript, C++, or EKL (Enterprise Knowledge Language). This post is an introductory to CATIA programming using EKL. As such, concepts that are not applicable to EKL will be omitted. […]

CATIA Through A Programmer Lens

CATIA users with programming knowledge will continue to see it through the programmer lens. Let’s look at this taxonomy: Programming Taxonomy Data Location Programming can be broken down to two categories in terms of data association and how it is structured. Object Oriented: when data is associated with objects. For example: the property Name of […]

CATIA’s Propagation Graph

CATIA is a parametric modeling system. As such, it permits building relationships between parameter values and properties stored in Representation VPMs. Updates propagate throughout the model following the notion of parent and children. This is different from the idea of “Owner”. Consider the following graph In the above graph, a change in x, y, or […]

CATIA Assemblies

Since CATIA is rooted in manufacturing, it permits reusing VPMs (explains in this post) across assemblies to accomodate the universal need to create component-based products. Once multiple copies (clones) of a VPM exist in an assembly, three object types become important to understand: Reference, Instance, and Occurrence. Reference A Reference object stores the data without […]

CATIA Virtual Product Models

VPMs CATIA stores information in Virtual Product Models (VPMs). There are two VPM types: Physical Products and Representations. Both are backed up by Enovia’s Product Life Cycle (PLM) engine. Physical Products define the composition of a design, while Representations hold the features describing that design. Enovia permits controlling the process and business logic of how […]