Showing results for 
Search instead for 
Did you mean: 

Who Me Too'd this topic

How to: get started, find documentation, get help

Siemens Phenom Siemens Phenom
Siemens Phenom

People on this forum often ask how to get started with NX programming/journaling, and where to find documentation and other help. This post is an attempt to gather all the relevant advice in one place, so that people (like me) don't have to keep writing bits and pieces of it over and over again. I expect others will have good suggestions, too. Please feel free to embellish. 


First, a definition ... an API (Application Programming Interface) is a collection of software functions that your code can call to do useful things. Nowadays, there are two main NX APIs that are widely used: NX/Open, and SNAP. NX/Open is very broad and powerful -- it provides functions to do basically everything that interactive NX can do. The SNAP API is much more limited, and better documented, so it's easier to grasp. Learning SNAP can sometimes serve as a useful step towards learning NX/Open.


You write code in some computer language to call the functions in the NX APIs. Several languages are supported, including C/C++, Java, Python, or any .NET language, such as Visual Basic (VB), C#, and others. The NX/Open APIs for these different languages are all essentially equivalent, so you can choose whichever one you want. The SNAP API is accessible only though .NET languages. Also, note that .NET technology is built in on Windows systems, but some extra effort is required to get it to work on Mac or Linux.


You should probably begin the learning process by working through the tutorials in one of the "Getting Started" guides. The NX12 versions are available here:

These both focus on the VB language, but applying what you learn to other languages is typically straightforward.


Another good way to learn is by "journaling". A journal is a recording (expressed in any supported programming language you choose) of a series of actions that you perform interactively in NX. You can then modify the journal code to suit your needs. For more details, look up "journaling" in the Getting Started with NX/Open guide.


Once you gain some proficiency, you will want to know all the details of all the available API functions. These are documented in various references guides. The NX12 ones are available here:

You can find older versions by starting here. Note that some of the documents are in CHM format, which can be troublesome, sometimes, as described in this post.


If you like to learn from examples, there are many available:

  • In the folders \UGOPEN\SampleNXOpenApplications and \UGOPEN\SNAP\Examples in your NX installation.
  • The GTAC Solution Center has a large collection of example programs that you can search through. You can find searching instructions near the end of chapter 1 in either of the two Getting Started guides
  • There are hundreds of small example programs in the SNAP Reference Guide

If you’ve read everything, and you’re still stuck, you can contact Siemens GTAC support, or try, or the NX forum at Or, of course, you can always ask right here on this forum.

Who Me Too'd this topic