Open C++ is an object-oriented programming interface to NX, allowing access to NX objects and functionality via a C++ class hierarchy. Using methods in this class hierarchy you can create, read, and modify NX objects as well as control the NX application itself.
Some of the benefits of Open C++ are:
- Open C++ uses standard C++ syntax, which often results in more concise and readable application code.Open C++ objects are referenced via pointers to C++ objects rather than tags, which is a more natural and expressive programming style.
- Open C++ reports errors via the C++ Exception mechanism, which allows you to localize your error handling in a few places and avoids having to explicitly check error codes returned from individual function calls.
Open C++ is strongly typed, which means that any attempt to invoke a function on an inappropriate NX object is caught by the C++ compiler rather than resulting in a run-time error.
- Open C++ takes advantage of C++ encapsulation to make it easier for you to identify the set of functions relevant to a particular type of NX object.
- Open C++ provides a framework for defining new classes of objects using standard C++ inheritance, enabling your derived class to override virtual methods that allow the user to define what NX operations such as Update mean for the new object.
- Open C++ can be used in combination with traditional Open C function calls, allowing objects created in Open C++ to be accessed in Open C, and vice versa.
- Open C++ provides context-managed creation of NX objects by specifying the owning part in every create method.
- Open C++ unifies the evaluation and inquiry of curves and edges, allowing you to write code without special case branches for wireframe curves and solid edges.
- Open C++ provides ease of editing objects without the inconvenience of inquiring if the object is a prototype or an occurrence.
- Open C++ sits on top of the Open C library and provides a relatively thin C++ interface layer on top of traditional Open C. Open C++ actually consists of two libraries: the openpp library provides access to NX objects and functionality, while the vmathpp library contains a vector math package that provides general purpose mathematical operations.
Open C++ applications can be written as either internal or external applications. An internal application is a shared library on UNIX or a Dynamic Linked Library on Windows NT and can be executed during an interactive NX session. An external application is an executable file that executes stand-alone, outside an NX session.
Detailed documentation for every Open C++ class and method is provided via a set of HTML pages.