Category: Code

Circle Curve Divide

In this post we make a variation of Points along curve by max spacing, to generate division points and axes along a circle curve in three ways: by angle, instances and angle-instances. This spacing can be particularly useful as more flexible polar assembly pattern. The circular division is displayed using an action and a reaction, […]

Automating Generative Design for Fabrication

Arguably one of the most powerful Knowledgeware Objects in CATIA is the almighty Engineering Template – an object that allows you to capture entire product structures as a template with dynamic input parameters and attributes. In particular Engineering Templates allow us to capture and re-use manufacturing data relevant to a product including fabrication information, assembly […]

Building Trees With Custom Syntax Using EKL

Automation can make things quick and easy. Inspired by the idea of providing Syntactic sugar to execute tasks quickly, and more specifically Markdown-Mermaid, here is an example of generating assemblies using EKL with simple syntax. The Syntax I’ll define syntax to builds trees by describing parents and children relationships as instructions. Since tree nodes can […]

Custom EKL Libraries

Organizations can create and reuse custom EKL functions as Knowledge Libraries. Creating such libraries requires a KHC license to use the Quality Rules Capture app. However, consuming them does not require KHC. It does however require KDI in order to be able to write EKL code. A custom EKL Function will behave as a regular […]

Google Sheets To CATIA Via EKL

REST, Representation State Transfer, is a pattern for making APIs (Application Programming Interfaces) that can serve clients (callers of that API). They’re used for web-services. REST’s pattern includes methods names and parameters. You send requests and receive responses. REST APIs typically include six methods: Delete, Get, Link, Patch, Post, and Put. These API Calls are […]

Automation APIs For CATIA

CATIA exposes some of its engine’s functionality to 3rd party developers via APIs– Application Programming Interfaces. It does that by providing what is known as: – Packages for EKL, KML, and CATRules. – DLLs (dynamically loaded libraries) for VBA, VSTA(C-Sharp), and CATScript. – Header files for C++, along with additionals DLLs. xGenerative Design xGenerative Design […]

Walking CATIA’s Trees with C-Sharp

In the post on CATIA Automation APIs, I described the languages one can use to automate CATIA. In this post, we’ll learn how to walk a CATIA tree using C-sharp. I assume that the readers is somewhat familiar with Object Oriented Programming concepts. API CHM (Compiled HTML) Document Before we start, let’s take how to […]