NX automation options
| Option | Description |
|---|---|
| Journals | Recorded or hand-written scripts (VB.NET, C#, Python) run directly in NX |
| NX Open (compiled) | DLL applications in C#, VB.NET, C++ or Java with full API access |
| Block UI Styler | Build native-looking NX dialogs |
| Knowledge Fusion | Rule-based knowledge engineering inside NX |
| NX Open for CAM | Automate setups, operations and post-processing |
Note that running compiled or signed NX Open applications may require specific NX author licences.
Journal example
# NX Open Python journal: list components in the work assembly
import NXOpen
session = NXOpen.Session.GetSession()
work = session.Parts.Work
root = work.ComponentAssembly.RootComponent
lw = session.ListingWindow
lw.Open()
for comp in root.GetChildren():
lw.WriteLine(f"{comp.DisplayName} (instance: {comp.Name})")
What can be automated
- Part and assembly creation from parameters and templates.
- Drawing automation: views, dimensions, parts lists, borders.
- Attribute management and validation.
- Batch export (STEP, JT, Parasolid, PDF).
- CAM programming with templates and post-processing.
- Model quality checks for OEM and internal standards.
Teamcenter integration
NX is typically used with Teamcenter. NX Open applications work in managed mode, and integrations can combine NX Open with Teamcenter SOA services for attributes, BOMs and workflows.
Knowledge Fusion vs NX Open
Knowledge Fusion is excellent for rule-driven design embedded in models. NX Open is better for user tools, integration and complex logic. Many solutions use both.
NX Open's multi-language support lets you use the language your team already knows.
NX development with ENGIMANDI
We build NX Open tools and integrations. See our CAD customisation, integration and automation services and Teamcenter integration.