User Guide
Using the Product
Default Translation – via the Unified Interface
The Unified Interface can be started via the Start Menu – if a shortcut was added during installation.
Alternatively, the Unified Interface can be run via a Windows Explorer selection in:
<UI_installation_directory>\bin\Unified_Interface.cmd
The following interface will be launched:
The default layout is split into 4 primary areas, which can be altered to the user’s preference:
The simplest way to translate from Creo to NX is to drag a file from the file Browser Pane on to the Active Configurations for the translation you require.
On completion, the Unified Interface will display the activity information and details from the log file created during the translation, if requested, in the Translation Activity and Output Log panes, respectively.
The generated output data can be located by selecting the translation from the Activity pane and opening the output folder:
Default Translation – via the Command Line
Running a translation via the command line can be carried out via the cad_run.cmd file located in the <installation_directory>\bin directory. The format of the command is as follows when translating from Creo to NX:
<Translator_installation_directory>\bin\cad_run.cmd CR[X]_NX[YY] -i <input_file> -o <output_file>
The format of the command is as follows when translating from NX to Creo:
<Translator_installation_directory>\bin\cad_run.cmd NX[YY]_CR[X] -i <input_file> -o <output_file>
Note! Replace the [X] seen in the example with the version of CREO you are using and the [YY] with the version of NX you are using. E.g. for CREO 8 change to CR8 and for NX 1926 change to NX1926:
The example above will translate a CREO sample file provided within the installation and produce the following output to the target location. In this case:
C:\Temp\alternator.prt
CADverter Customization
The Theorem translator allows the information that is read from the source system and written to the target system to be tailored via a set of user specified arguments. Commonly used arguments are supported via the Unified Interface, with Advanced Arguments being described within this document for use in the Unified Interface or via the Command Line invocation.
Common Options for Creo to NX
Within the Configuration Manager panel of the Unified Interface, arguments that can be specified when publishing Creo data into NX are grouped into the following areas:
Creo Read – Those arguments that affect how data is read from NX
NX Write – Those arguments that affect how the data is written to NX
General – Those arguments that are common to ALL Publishing activities regardless of source data
CREO Read Arguments
The image below shows the Creo Read arguments that are available, with their default settings:
Each of these options is described below:
Option |
Description |
|---|---|
Transfer Solids |
Enables solid processing. (Default is on). Command Line Syntax:
|
Transfer Quilts |
Enables quilt processing. (Default is on). Command Line Syntax:
|
Transfer Datum Curves |
Enables Datum Curve processing. (Default is on). Command Line Syntax:
|
Transfer Datum Surfaces |
Enables Datum Surface processing. (Default is on). Command Line Syntax:
|
Read PMI |
Enables reading of PMI. (Default is off). Command Line Syntax:
|
Fill PMI Text |
Enabled when ‘Read PMI’ is selected. Improves the quality of PMI, but increases output size and processing time. (Default is off) Command Line Syntax:
|
Read Cables |
Enables the reading of Cable data from Creo. (Default is off). Note that in the Creo Configuration Editor, the setting display_thick_cables should be set to yes. Command Line Syntax:
|
Process Simprep |
Enables the reading of a specified Simplified Representation. This is only available when processing data interactively and using the option via the Configuration Manager. Command Line Syntax:
|
Create Empty Nodes |
If a part is missing, create an empty leaf node for it. (Default is off) Command Line Syntax:
|
Read Sub Assembly Colours |
Read colour information set on sub-assembly level (Default is off) Command Line Syntax:
|
Read Part Colours |
Read colour information set on parts. (Default is on) Command Line Syntax:
|
Read Surface Colours |
Read colour information set on surfaces. (Default is on) Command Line Syntax:
|
Instance Processing |
Process a defined instance. Contains 3 options: (Not to be used in conjunction with Process Specified Instance). (Default is off).
|
Instance Name |
Enter the instance name to process. Only activates when ‘Process Specified Instance’ selected. |
NX Write Arguments
The image below shows the NX Write arguments that are available, with their default settings:
Each of these options is described below:
Option |
Description |
|---|---|
Delete Existing Sub-parts |
Delete existing sub-parts. Default is OFF. Command Line Syntax:
|
Concatenate Assembly Name |
Concatenates assembly name. Default is OFF. Command Line Syntax:
|
Produce Tessellated Output |
Create a tessellated JT file instead of an NX file. Default is OFF. Command Line Syntax:
|
Creo to NX General Arguments
The image below shows the General arguments that are available, with their default settings:
Each of these options is described below:
Option |
Description |
|---|---|
Mass Properties |
Mass properties (volume/area CofG) are read and any applied materials, using this option, in cases where a part has multiple solids, volume and area values are summed, but CofG data is invalid. Command Line Syntax:
|
Advanced |
Allows any of the Command Line Advanced arguments documented to be passed to the Unified Interface invocation. |
Common Options for NX to Creo
Within the Configuration Manager pane of the Unified Interface, arguments that can be specified when publishing NX into Creo data are grouped into the following areas:
NX Read – Those arguments that affect how data is read from NX
Creo Write – Those arguments that affect how the data is written to Creo
General – Those arguments that are common to ALL Publishing activities regardless of source data
NX Read Arguments
The image below shows the NX Read arguments that are available, with their default settings:
Each of these options is described below.
Option |
Description |
|---|---|
Reference Set |
Enabled reference set processing. Default is OFF Command Line Syntax:
|
Read NX Attributes |
Read NX detail user attributes. Default is OFF. Command Line Syntax:
|
Read NX names |
Read NX entity names, if they exist. Default is OFF. Command Line Syntax:
|
Read PMI |
Read 3D PMI. Default is OFF. Command Line Syntax:
|
Creo Write Arguments
The image below shows the Creo Write arguments that are available, with their default settings:
Option |
Description |
|---|---|
Simplify Geometry |
Attempt to write Analytical Geometry where possible (Default is Off). Command Line Syntax:
|
Use existing Assembly Parts |
If the output Folder already contains output Files of the same name, do not Overwrite those Files (Default is On). Command Line Syntax:
|
Trim part name |
If the part name is too long, use the first X characters and the final (30 - X) characters to reach the 30 character limit. (Default is off). Command Line Syntax:
|
Seed Part |
Use a Creo Seed Part file when creating the Creo output Command Line Syntax:
|
Seed Assembly |
Use a Creo Seed Assembly file when creating the Creo output Command Line Syntax:
|
Attribute Mapping File |
Select a standard property mapping file Command Line Syntax:
|
NX to Creo Entity Masking Arguments
The image below shows the Entity Mask arguments that are available, with their default settings:
Each of these options is described below:
Option |
Description |
|---|---|
Mask File |
Specifies the Mask File to be written to, that can be referenced by future translations. A Mask file MUST be specified if masking is required. The first line in this file is OFF ALL ENT: Command Line Syntax:
|
Entity Types Translated |
Specifies a selection list from which to select which entity types are to be processed. The following types are available: “SOL” - Masks any 3D entity
“SKIN” - Masks any 2D entity
“CUR” - Masks any 1D entity
“POI” - Masks any 0D entity
“AXIS” - Masks Axis Systems
“ISOL” - Masks Isolated facetted solids
“CCRV” - If on creates a CCRV curve for wire frame edges that
have more than one supporting curve
“TEXT” - Masks PMI Text
Command Line Syntax: Add any of the above to the specified mask file, one entry per line prefixed by the word ON, e.g.: ON POI to ensure they are considered in the translation |
Layers Translated |
Specifies a selection list from which to select which layers are to be processed. Command Line Syntax: A single entry of ON ALL LAY Must precede any Layer Mask command. Add a list or range of numbers representing layer to be processed to the specified mask file to ensure they are NOT considered in the translation e.g.: OFF LAY 114,149,166,167,168 |
NX to Creo General Arguments
The image below shows the General arguments that are available, with their default settings:
The option is described below:
Option |
Description |
|---|---|
Mass Properties |
Mass properties (volume/area CofG) are read and any applied materials, using this option, in cases where a part has multiple solids, volume and area values are summed, but CofG data is invalid. Command Line Syntax:
|
Advanced |
Allows any of the Command Line Advanced arguments documented below to be passed to the Unified Interface invocation |
Command Line Advanced Arguments
Any of the advanced arguments can be added to the Command Line Invocation or to the General- >Advanced field when run from within the User Interface.
Creo to NX Advanced Arguments
Creo Read Argument |
Description |
|---|---|
pmi_pcurves |
Store non planar PMI graphics (leaders not in the plane of the annotation) |
unique_occ |
Read multiple occurrences, eg support for occurrence PMI associations |
read_assy_pmi |
reads PMI in lower level assembly parts |
ignore_std_views |
Disable reading views with standard names (TOP, LEFT, etc). |
ignore_view_list <file> |
supply a list of view names to be ignored |
no_exploded_views |
Disables exploded views. |
part_level_views |
Default: off Enable the processing of Part Level Views within an assembly. |
part_level_views_moved |
Process part level views and move into assembly space, such that only one part instance’s views are displayed. |
part_level_pmi |
Default: off Enable the processing of PMI on parts within an assembly. |
view_part_name |
Uses the part name in the view names to help identify the views when selected in PDF |
views_geom_exploded <on | off | hybrid | hybrid2> |
Default: hybrid Geometry grouped into assembly nodes for views is by default done on a view bases, which re-uses geometry where possible. This option creates a node for every item of geometry so that the views can hide/show them in the views. This can (depending upon the data and views) reduce the resulting file size and shorten the translation time, BUT in some cases the PDF is slow to respond due to the VIEW limitations. exploded - off - create a node per view with all geometry / wire etc for that view explode - on - create nodes for very solid / wireframe etc that can be referenced by views hybrid (default) - mixture of explode on/off - solids being exploded and wireframe grouped (best compromise) hybrind2 - as hybrid with points also grouped |
Regenerate Creo data |
Allow the processing of data marked as requiring regeneration in Creo Command Line Syntax:
|
NX Write Argument |
Description |
|---|---|
Parasolid Tolerant Modelling |
Enables Parasolid tolerant modelling. Default is ON. Command Line Syntax:
|
Factor |
A secondary option used with Parasolid Tolerant Modelling. Allows a factor to be defined. Default is 3. Command Line Syntax:
|
Force Body Creation |
Force the creation of bodies. Default is ON. Command Line Syntax:
|
Attempt body healing |
A secondary option used with Force Body Creation. Tries to heal the forced body. Default is ON. Command Line Syntax:
|
Body healing factor |
The factor to be applied to Attempt Body Healing. Default is 0.0095. Command Line Syntax:
|
Sew Parasolid Bodies |
Enabled Sewing of Parasolid Bodies. Default is ON. Command Line Syntax:
|
Tolerance |
A secondary option for Sew Parasolid Bodies giving the tolerance level to use. Default is 0.1. Command Line Syntax:
|
Keep all bodies |
A secondary option used with Sew Parasolid bodies allowing all bodies to be kept (no matter how small) that may be created as a result of sewing Default is OFF. Command Line Syntax:
|
Prepare CSG Primitives |
Prepare CSG Primitives Tolerance (input part units). Command Line Syntax:
|
Change CSG Shift |
Change CSG Shift Distance (input part units). Command Line Syntax:
|
Fix CSG Primitives |
Fix CSG Primitives. Default is OFF. Command Line Syntax:
|
Improve Accuracy of Facetted Solid |
Improve Accuracy of Faceted Solids. Default is ON. Command Line Syntax:
|
Explode Solids to Faces |
Explode Solids to Faces. Default is OFF. Command Line Syntax:
|
Split Discontinuous Surfaces |
Split Discontinuous Surfaces. Default is ON. Command Line Syntax:
|
Fix Degenerative Edges |
On face create failure, check and fix any degenerate edges. Default is ON. Command Line Syntax:
|
Specify a Face Edge Tolerance |
Specify an edge tolerance to be used when creating faces. Default is ON. Command Line Syntax: Please see Edge Tolerance below |
Edge Tolerance |
A secondary option used with Specify a Face Edge Tolerance where the tolerance value is assigned. Default is 0.000006. Command Line Syntax:
|
Fix small features in solids |
Remove small edges, sliver and spike faces from solid bodies. Default is OFF. Command Line Syntax:
|
Fix small features in open solids |
Remove small edges, sliver and spike faces from open solids. Default is OFF. Command Line Syntax:
|
Simplify Geometry |
Simplify Geometry. Default is OFF. Command Line Syntax:
|
Create empty NX Parts |
Creates empty NX parts for missing input data Command Line Syntax:
|
NX to Creo Advanced Arguments
NX Read Option |
Description |
|---|---|
all_layers |
Read entities from ALL layers even if the layer is invisible |
fit_view |
Fits the visible geometry to the screen size (e.g. zooms the view), regardless of users source system settings. The default option is ‘fit_view_as_saved’, which reads the view according to the settings in the source CAD system. |
heal_ug_read |
Attempt an NX heal on the (native) body - using the NX API. Note! This should be used in combination with regen_brep |
part_layer |
If set, Process As Saved part layers. If unset process All layers |
read_blank |
Reads any blanked entities. (Default is off) |
read_assy_pmi |
Allows assembly component level PMI to be read. (Default is off) |
read_views |
This flag turns on the processing of 3D Views even if ‘read_pmi’ is off. If ‘read_pmi’ is ON, then ‘read_views’ is switched ON automatically. This can be overridden by specifying ‘no_read_views’ If ‘read_pmi’ is OFF, then ‘read_views’ is OFF by default. This can be overridden by specifying ‘read_views’ |
ref_set_part_name |
If set, append the Reference Set name to created part |
regen_brep |
Allows brep data to be regenerated from the topology using the NX API. Note! It is only advised to use this option if solid information cannot be written into 3D PDF. |
no_create_datum_plane_border |
Disables the creation of datum plane borders. The default is to create 4 datum plane bounding lines to mimic NX section lines |
Creo Write Option |
Description |
|---|---|
Collapse Assembly Structure |
If the Input CAD data contains any assembly structure, then by default assembly structure will be created in the Output CAD format. Running this option causes the assembly structure to be “exploded” into a flat single component file. Command Line Syntax:
|
Convert surfaces to NURBS |
Read surfaces as NURBS surfaces (else read in native form). Default is ON. Command Line Syntax:
|
Convert Edge Curves to NURBS |
Read edge curves as NURBS curves (else read in native format). Default is ON. Command Line Syntax:
|
Group All Geometry |
Creo default is to create one part per Solid body. This option will allow all Geometry to be written into one part. Command Line Syntax:
|
Group Open Solids into a Single Creo Part |
This option will allow all “Open Solid” (Quilt) Geometry to be written into one part. Command Line Syntax:
|
Group Closed Solids into a Single Creo Part |
This option will allow all “Closed Solid” Geometry to be written into one part. Command Line Syntax:
|
Large Assembly Processing
Overview
Large Assembly Processing (LAP) is available via command line only. Theorem’s LAP mechanism was designed to be a method to efficiently converting large assemblies into their target format.
This process differs from the standard CAD-to-CAD conversion method. The standard method opens the entire assembly into memory and converts the assembly into the target system. Whereas LAP employs a method to convert each assembly leaf node independently and then processes the top- level assembly using the already created component files.
LAP Advantages:
Consumes fewer system resources, RAM and CPU, thus allowing for larger assemblies to be processed on the same hardware.
Can be used as a troubleshooting mechanism as files which failed to convert can be re- translated with different options. This requires the assembly process to be run again to ensure the assembly contains these components.
LAP Disadvantages:
The use of LAP comes with the overhead of loading the libraries and licensing to convert each file independently. For this reason, the user may find that this process takes more time to complete.
LAP Process Overview
The LAP process begins with the user writing a “Wrapper Script” This script is a windows batch file that calls the initial translation using the assy_script argument. When this script runs, it will output a number of Viewer files and a component script (batch file *.bat) to the specified output folder. More details of the component script are provided in the applicable section.
A Viewer file is a Theorem proprietary file used as a temporary container for passing CAD information from the source to the target system. These files are maintained through the translation process. This can be useful if the translation is stopped and needs to be restarted. Using the existing Viewer files, the translation will continue from where it was stopped.
The component script, created by the wrapper script, contains a single line translation for each part file with the required translator arguments. This script can also be used to map the Viewer file names to the specified output file.
Once the part files have been created, the assemblies will be processed. Using the part files that were created when the component script ran, the assemblies are built using the transforms from the source CAD file. Thus ensuring all component files are at their proper location.
NX to Creo
Review the “LAP Process Overview” section before continuing. This section outlines process in detail.
The wrapper script will create three component batch scripts. The first is created to process NX data to Viewer files. The name of this script is input_filename.vwr.bat. The second component script is to process the Viewer files to CREO. The name of this file is input_filename.vwr_2PROE.bat. The third script is input_filename.vwr_MOD.bat and is used during the update process, discus later in this section.
Command Line Arguments
- assy_script
Invokes the LAP process.
- as_leaf_node_args
Translator arguments to be supplied for each leaf node conversion. Provides a method to supply different translator arguments which apply only to the component part level.
e.g.: as_leaf_node_args “read_pmi noprep”
Example Wrapper Script:
Note: The ^ symbol denotes continue to next line. Shown here to make the script easier to read, else it is a single line call to the translator.
"C:\Program Files\Theorem\23.3\bin\cad_run.cmd" ^
NX1899_CR6 ^
-i "C:\Temp\Input\ landing_gear\landing_gear_assembly.prt" ^
-o "C:\Temp\Output\landing_gear\landing_gear_assembly.asm" ^
ref_set read_pmi assy_script ^
as_leaf_node_args "read_pmi noprep"
Updating the Assembly
The following methods can be used to update an already translated assembly into the same output folder. Any new files will be created. All Transforms will be re-processed, so component placement will be correct.
To begin, delete or rename the Creo files and the corresponding Viewer files to be re-translated. Set the environment variable TS_REM_OUT_EXISTING_PARTS=1 either in the command prompt window used to run LAP or in the wrapper script. Then run the wrapper script. For this process, the input_filename.vwr_MOD.bat will be used to recreate the required Viewer files. Also, the input_filename.vwr_2PROE.bat will be recreated to only translate those new Viewer files to CREO Part files.
When the translation is complete, the required component files have been recreated as well as the assembly files. The assembly files are processed to ensure any modification to the component transforms are honoured.
Troubleshooting Files
One advantage to LAP is that each output file creates its own log file. This may make it easier to troubleshoot that individual file if it is found that it did not translate properly. The user must decide what arguments are to be added and if they are NX read or CREO write arguments, or both.
NX Read Arguments Only – Begin by deleting the Viewer file and the CREO part file. Edit the Wrapper script to apply new arguments, and then run the translation.
CREO Write Arguments Only – Begin by deleting or renaming the CREO file in the output folder. The input_filename.vwr_2PROE.bat file can be edited to comment out each part file which does not require a new translation. Then edit the translator options for those files to be processed again. Run the input_filename.vwr_2PROE.bat script.
Alternatively, the required component translation can be copied and pasted into a command prompt window. The translator arguments edited in this window and the translation processed.
Both NX Read and CREO Write Arguments – Begin by deleting the Viewer file and the CREO part file. Edit the Wrapper script to apply new arguments. Be sure to use the ‘as_leaf_node_args’ to apply options, where required, to only the component part files. Then run the wrapper script to begin the translation.
Creo to NX
Review the “LAP Process Overview” section before continuing. This section outlines process in detail.
The wrapper script will create the component batch script. This script will contain the command line translation for all required part files.
Command Line Arguments
- assy_script
Invokes the LAP process.
- as_leaf_node_args
Translator arguments to be supplied for each leaf node conversion. Provides a method to supply different translator arguments which apply only to the component part level.
e.g.: as_leaf_node_args “read_pmi surf_to_nurbs edge_to_nurbs”
Example Wrapper Script:
Note: The ^ symbol denotes continue to next line. Shown here to make the script easier to read, else it is a single line call to the translator.
"C:\Program Files\Theorem\20.3\bin\cad_run.cmd" ^
CR6_NX1899 ^
-i "C:\Temp\Input\Alternator\alternator.asm" ^
-o "C:\Temp\Output\Alternator\Alternator.CATProduct" ^
read_pmi no_datum_curves no_quilts no_datum_surfaces assy_script ^
as_leaf_node_args "read_pmi surf_to_nurbs edge_to_nurbs"
If the translation is to be re-processed, the existing Viewer files will be used. To re-process the translation while overwriting the existing Viewer files, the following environment variable must be set:
TS_NO_USE_ASSY_TEMP_FILES=1
Updating the Assembly
The following methods can be used to update an already translated assembly into the same output folder. Any new files will be created. All Transforms will be re-processed, so component placement will be correct.
To begin, delete or rename the NX files to be re-translated. Either use the environment variable listed previously to overwrite the exiting Viewer file, or delete the Viewer file prior to running the translation. If unsure which viewer file to remove, the Component Batch script will map each Viewer file to an output NX filename. Then run the translation again.
Troubleshooting Files
One advantage to LAP is that each output file creates its own log file. This may make it easier to troubleshoot that individual file if it is found that it did not translate properly. The user must decide what arguments are to be added and if they are CREO read or NX write arguments, or both.
CREO Read Arguments Only – Begin by deleting the Viewer file or setting the environment variable mention previously. Edit the Wrapper script to apply new arguments, and then run the translation.
NX Write Arguments Only – Find the file to be re-translated in the Component script. Edit the translator arguments. Either comment out all other lines (add REM to the beginning of the line) or copy the translation call and paste it into a command prompt window. Run the translation.
Both Read and Write Arguments – Begin by deleting the Viewer file or setting the environment variable mention previously. Edit the Wrapper script. Be sure to add the required arguments to the as_leaf_node_args portion. Run the translation.