User Guide
Translating Interactively from within 3DExperience
Launching 3DExperience with Theorem Plug-ins
The 3DExperience to 3D PDF translator allows an opened 3DExperience part or assembly to be exported directly to a PDF.
In order to translate from within 3DExperience, the application must be started using a Theorem environment, so that the appropriate Theorem partner plug-ins are available. (See 3DExperience Environment files.)
3DExperience can be started from a desktop shortcut created during installation.
Alternatively, it can be started via the script provided in the Translator installation located in:
<installation_directory>\bin
The script name is:
start_3DEXPERIENCE_Theorem_Multi-CAD_3DPDF_CATIAV6R<version>.cmd
(where <version> should be substituted for the version of 3DExperience that you have installed - e.g. 2023x, 2024x, 2025x)
Interactive Export to 3D PDF
Once the 3DExperience application has been launched, open the product or representation that is going to be exported to PDF.
Select the arrow in the top right corner, then from the list displayed select Export.
In the Export dialog box displayed, ensure the ‘Format’ is set to PDF_THEOREM (*.pdf). Select the required location for the file and ensure the Filename displayed is correct. Click OK to initiate the export.
Export status of Succeeded displayed in Operation report window. PDF created in the location specified.
Theorem Interactive Conversion Settings
The 3DExperience interface does not currently require the user to apply any specific settings for the translation. There are some general settings that should be checked if required (e.g. for PMI conversion.) These are accessed through Preferences>App Preferences>Social and Collaborative>3DEXPERIENCE Open>Format Converters>External Native 3D Formats.
This page is a standard Dassault Page that sets the preferred mode of conversion (in this case Exact), and also the general options ‘Convert coordinates system’ and ‘3D annotations’. Both of which are toggled on.
There are also some Theorem settings that can be applied. These are accessed through Preferences>App Preferences>Theorem>CADPublish
A 3DPDF drop down menu under ‘CADPublish’ allows the user access to Theorem Configurations. From this menu, the user can select a predefined configuration or create a new configuration.
To create a new configuration, select the ‘Launch Configuration Manager’ command.
In the configuration manager window, select New, apply the relevant options, (see Configuration Manager), then rename the configuration as required.
Any new configurations created will be displayed in the Active Configurations list once it has been refreshed. To do this select ‘Refresh Configuration list’
Select the required configuration to make it the active configuration. This will be highlighted in blue when selected.
Options for using a password to open the document and for automatically opening the PDF upon creation are also available to toggle on within this tab.
Configuration Manager
CADPublish 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 options. Commonly used options are supported via the Configuration Manager, with Advanced Arguments being described within this document for use in the Configuration Manager or via Command Line invocation.
Within the Configuration Manager, the options that are available to use are grouped into the following 3 areas when translating data from 3DExperience to 3D PDF.
3DExperience Read - Those options that affect how data is read from 3DExperience.
Write 3D PDF - Those options that affect how data is written to 3DPDF
General - Those options that are common to ALL publishing activities regardless of source data. Advanced arguments are added in this tab.
3DExperience Read
Each of the options displayed in the image above are described below:
Option |
Description |
|---|---|
Preferred Read Data Type |
The setting options are EXACT (default) or TESSELATED. Command Line Syntax:
|
Read PMI |
Enables PMI data read (Default is ON.) Command Line Syntax:
Note - When ‘read_pmi’ is enabled it also enables the ‘fill_pmi_arrows’, ‘fill_pmi_text’ and ‘pmi_filled_text’ options. These can be overridden by setting the Advanced arguments ‘dont_fill_pmi_arrows’ and/or ‘dont_fill_pmi_text’. |
Read Captures |
A secondary argument to ‘Read PMI’ and allows control over whether captures are read as part of the process. Default is ON when ‘Read PMI’ is marked as ON. Captures can ONLY be read when ‘Read PMI’ is ON. Command Line Syntax:
|
Read Views |
A secondary argument to ‘Read PMI’ and allows control over whether views are read as part of the process. Default is OFF. Views can ONLY be read when ‘Read PMI’ is ON. Command Line Syntax:
|
Read FTA Reference Geometry |
A secondary argument to ‘Read PMI’ and enables the reading of FTA Reference Geometry. Default is OFF. FTA Reference Geometry can ONLY be read when ‘Read PMI’ is ON. Command Line Syntax:
|
Read NOSHOW Entities |
Read any entities that are in NOSHOW. Default is not to read NOSHOW entities. Command Line Syntax:
|
Disable Points |
Switches off Point processing. Command Line Syntax:
|
Disable Axis Systems |
Switches off Axis System processing. Command Line Syntax:
|
Disable Wireframe |
Switches off Wireframe processing. Command Line Syntax:
|
Disable Surfaces |
Switches off Surface processing. Command Line Syntax:
|
Disable Solids |
Switches off Solids processing. Command Line Syntax:
|
Read As Torus |
Read Toroidal surfaces in analytical form (default is NURBS.) Command Line Syntax:
|
Read As Cylinder |
Read Cylindrical surfaces in analytical form (default is NURBS.) Command Line Syntax:
|
Read As Cone |
Read Cone surfaces in analytical form (default is NURBS.) Command Line Syntax:
|
Read As Conics |
Read surfaces generated from a Conic in analytical form (default is NURBS.) Command Line Syntax:
|
Read Axis Filter |
Enables a specified list of axis systems to be processed. Command Line Syntax:
Where <value> is the name of the axis system. This can be formatted as per the examples below:
Multiple axis systems can also be processed. This is formatted as per the example below:
|
Export Body Names |
Maintains body names for parts that consist of multiple bodies. Command Line Syntax:
|
Exclude List Selection |
Enables nodes to be excluded from the output generated when the corresponding node names have been added to a supplied list. This list will be in a .txt file format. Command Line Syntax:
Where <list file> is the list of node names added to the text file. For example: Project Data External References |
Noshow List Selection |
Enables nodes that are in a noshow state to be included in the output generated when the corresponding node names have been added to a supplied list. This list will be in a .txt file format. Command Line Syntax:
Where <list file> is the list of node names added to the text file. For example: Geometrical Set.1 Geometrical Set.2 |
Extra Groups Name Selection |
Adds an extra node per body below a node where the corresponding names have been specified in a supplied list. This list will be in a .txt file format. These extra nodes allow for finer control in what can be made visible / hidden in the output and results in better matching of Capture Views. Command Line Syntax:
Where <list file> is the list of names added to the text file. For example: StiffenerSet_1 StiffenerSet_2 |
Extra Groups Type Selection |
Adds an extra node per body below a node where its corresponding object types have been specified in a supplied list. This list will be in a .txt file format. These extra nodes allow for finer control in what can be made visible / hidden in the output and results in better matching of Capture Views. Command Line Syntax:
Where <list file> is the list of object types added to the text file. For example: SldStiffenerSet SldPlateSet |
Write 3D PDF
Each of the options displayed in the image above are described below:
Option |
Description |
|---|---|
Write Mode |
Contains two options: Use a Template - Allows data to be published to a given template. Command Line Syntax:
No Template - No template will be used during publishing. If this option is selected, ‘Template Selection’ is excluded as an option. Command Line Syntax:
|
Template Selection |
Select which templates Publish 3D will use to create the output 3D PDF, if Write Mode is set to Use a Template (Default = defaultManifest.xml). Command Line Syntax:
|
Create HTML5 |
Creates HTML5 output. |
File Attachment Selection |
This option allows files to be attached to the output PDF file together with a brief description of the selected files. (Default is for no files to be attached.) Command Line Syntax:
Where <Attachment_List> is a text file, with a list of full path names followed by an optional description line, For example: C:\TEMP\my_image.jpg This is a jpg Image C:\TEMP\report.txt Report Document C:\TEMP\related.pdf C:\TEMP\another.pdf This PDF has a description Note in this example the ‘Related.pdf’ attached file doesn’t have the optional comment. The file path may contain environment variables which will be resolved. e.g. %TEMP%/myFile.pdf |
Attach All Files in Directory |
Attach ALL files found in a specified directory. Command Line Syntax:
Where <dir> is the location of the files. |
Document Access Password |
Contains two options selectable via a checkbox: No Password - Specifies that no password will be used to encrypt the PDF Document (Default). If this option is selected Password is excluded as an option. Command Line Syntax:
Use Password - Allow a password to be specified to encrypt the PDF document. If specified, the user will be prompted for the password to open the resultant PDF files. Command Line Syntax:
|
Document Edit Password |
Contains two options selectable via a checkbox: No Password - Specifies that no password will be used to control edits to the PDF Document (Default). If this option is selected Password is excluded as an option. Command Line Syntax:
Use Password - Allow a password to be specified to control edits to the PDF Document. Command Line Syntax:
|
3D View Activation |
Controls when the 3D view is activated in the PDF document. Has 3 options: Automatic - Activates when the page is opened. (Default) Command Line Syntax:
On Selection - Activates when the user clicks on the model. Command Line Syntax:
Page Visible - Activates when the page becomes visible to the user. Command Line Syntax:
|
Add Standard Views |
Add isometric views to the data being written to PDF (Default is OFF.) Command Line Syntax:
|
Disable Views |
Switch off any Captures/Views from being written into the PDF. (Default is OFF.) Command Line Syntax:
|
Part Level PMI |
Enable the processing of PMI on parts within an assembly. (Default is ON.) Command Line Syntax:
|
Part Level Views |
Enable the processing of part level views within an assembly. (Default is ON.) Command Line Syntax:
|
Disable View Sections |
Switch off any sections within the Captures/Views from being written into the PDF. (Default is OFF.) Command Line Syntax:
|
Show Cutting Plane |
Enable cut plane visualisation. (Default is OFF.) Command Line Syntax:
|
Render Mode |
Controls which Rendering Mode to use for the model. Options are:
Command Line Syntax:
Where <mode> is set to one of the above values. |
Light Mode |
Controls which Light Mode to use. Options are:
Command Line Syntax:
Where <mode> is set to one of the above values. Note - no command is required for the default value. |
Hide Toolbar |
Hide the 3D Toolbar in the resultant document. This can be re-enabled in Adobe if required. (Default is OFF.) Command Line Syntax:
|
Hide Model Tree |
Hide the Model Tree in the resultant document. This can be re-enabled in Adobe if required. (Default is OFF.) Command Line Syntax:
|
Disable Wireframe |
Disable Wireframe Processing (Default is to Enable Wireframe processing.) Command Line Syntax:
|
Detail Level |
The Detail Level option can be used to set the render quality of the resultant 3D PDF output. A number of discrete values are made available via the configuration manager. They correspond to a relative chordal deviation (% of the diagonal length across the model bounding box) or absolute chordal deviation, whichever is the smaller. The following options are available:
For very large (detailed) parts the use of the options Low or Very Low can significantly reduce the size of the output PDF file and the time taken to produce it, at the cost of quality. A setting of Medium is seen as a good compromise, between quality and size. This value is the default value. Command Line Syntax:
Where value = v_low, low, med, high, v_high, off |
Document Title |
Set the Document Properties ‘title’ field. Command Line Syntax:
The text should be quoted. |
Document Author |
Set the Document Properties ‘author’ field. Command Line Syntax:
The text should be quoted. |
Document Subject |
Set the Document Properties ‘subject’ field. Command Line Syntax:
The text should be quoted. |
Property Mapping File |
Map CAD properties using a mapping file. Command Line Syntax:
|
General
Each of the options displayed in the image above are described below:
Option |
Description |
|---|---|
Mass Properties |
Allows mass property information to be read. Command line syntax:
|
Retain Assembly Structure |
Enables Assembly Structure to be retained. (Default is ON.) Disabling this option will remove all assembly structure and collapse ALL geometry into a single selectable object. Command line syntax:
|
Advanced |
Allows any of the advanced arguments documented to be added to the configuration manager and applied during the translation. |
Advanced Arguments
3DExperience Advanced Arguments
Argument |
Description |
|---|---|
dont_fill_pmi_arrows |
Disables the read of filled arrow information. |
dont_fill_pmi_text |
Disables the read of filled text information. |
3DPDF Advanced Arguments
Argument |
Description |
|---|---|
design_name |
Names the root node after the TAG attribute in the DESIGN entity. Allows the name of the root node to match the CAD system. |
progress_file <filename> |
Specify the log file for this process. |
info |
Add ‘info’ messages to the log file. |
no_inst_colours |
Switch off the writing of instance colours. |
no_colours |
Switch off the writing of any colours. |
no_attrs |
Switch off the writing of attributes into the PDF. |
no_pmi_edge_associations |
Disables edge highlighting. |
no_poster |
By default, a 2D poster is generated from the 3D model which can be very time consuming for a complex model. This option disables that process and uses a default JPG called TS_INST\data\saveas_3dpdf_images\no_poster.jpg. The user could replace this JPG file with their own if desired. |
background_RGB <r g b> |
Where r g b are values 1 to 255, this controls the background colour of the 3D display, which now defaults to pale grey (204,204,204). |
pmi_RGB <r g b> |
Where r g b are values 1 to 255, this controls the PMI colour. By default, PMI is displayed in the same colour as the source CAD system. When a colour is not read the default will be black. This option allows the PMI colour to be fixed to any colour. This is a single override colour for all PMI. |
wireframe_RGB <r g b> |
Where r g b are values 1 to 255, this controls the wireframe colour. By default, wireframe is displayed in the same colour(s) as the source CAD system. This option allows the wireframe colour to be fixed to any colour. This is a single override colour for all wireframe. |
pmi_flat_to_screen <on/all/off> |
This option enables the processing of flat to screen PMI data, the default is off. Please note fonts are not currently supported. ‘on’ allows for FLAT TO TEXT types to be processed. ‘all’ allows all FLAT TO SCREEN types to be processed, however only the text and NOT the frames are processed. |
process_wf <value> |
Where value = tess_low, tess_med, tess_high, nurb or off. When this option is selected the wireframe entities are written as lines/conic/nurbs. This results in a wire node for each entity contained under the Wireframe node in the model tree, there could be many wire nodes in a complex model. If any of the settings prefixed tess are used, these options convert wireframe into a number of sampled points on the curve and writes wireframe as a Poly Line, this allows many wires to be combined however a Poly Line can only be a single colour, so wireframe of the same colour will be grouped into a Poly Wire, which will be a wire node contained under the Wireframe node in the model tree. There will be a wire node for each colour, when multi colours exist. If however, all wireframe is the same colour, then all wireframe is contained in the Wireframe node. |
attr_filter_file <filter file> |
This is a method to define which attributes are masked or included during translation. By default, there is an attribute filter file installed at: %TS_INST%\data\publish_3dpdf\attrFilters\defaultAttrFilter.txt. This command line option allows this file to be overridden, such that the named file is used instead of the default. The file format is best explained by means of examples: MPARTNAME,,0,,, (Delete MPARTNAME attribute) FILENAME,F I L E (name),1,,, (Rename ‘FILENAME’ to ‘F I L E (name)’) FILESIZE,,3,big,, (Default (always) FILESIZE value to big) *END,,0,,, (Delete all attributes that end with ‘END’) Theorem*,,0,,, (Delete all attributes that start with ‘Theorem’) |
dump_attr_file <file> |
This is a utility which can be used to generate a text file with the Key/Value pairs from the GCO DESIGN, DITTO and DETAIL entities, this can be used in the ‘design’ of templates. |
compress_tess <value> |
Where value = v_low, low, med, high, v_high, off. These options can be used to control the tessellation setting, using the values 10, 25, 50, 75, 90. These compression settings apply ONLY to PRC/U3D output files. |
add_standard_views_1st |
Force views to be first angle projection regardless of source data. |
add_standard_views_3rd |
Force views to be third angle projection regardless of source data. |
views_filter <val> |
This option allows a sub-set of views to be included in the output based upon the <val> which describes a part or all of the views name(s). For example:
Multiple filters can also be applied by adding any number of views_filter arguments. For example:
|
views_filter_exclude <val> |
This option allows a sub-set of views to be excluded from the output based upon the <val> which describes a part or all of the views name(s). For example:
Multiple filters can also be applied by adding any number of views_filter_exclude arguments. Note - It is possible to use both include and exclude filters in the same translation. For example:
|
add_meta_data <default or <file>> |
Option to append the attributes in PDF with useful data, like part count, which can be consumed by the templates. <default> - just add part count. <file> - add the part count and process the file, such that 3 lines are processed: part_name // matches the detail (part name) attr_name // name of attribute to be added attr_value // value of the attribute to be added |
move_subassy_pmi <on/off/all> |
Move the sub assy PMI to top level. ‘all’ will reposition all PMI into global space which can be used for true assemblies. |
copy_part_attrs <on/off> |
Attributes on parts can be copied on to instance nodes with this option (default is off). (The user can enable dump_attr_file <file> option to confirm what attributes are available on part/instances, to check the effect of this option.) |
cutplane_capping_off |
Disable section capping. (Default is on) |
cutplane_RGB <r g b> |
When section cutting planes are enabled, the cutting plane colour can be controlled by r g b values in the range of 1 to 255. |
cutplane_opacity <value> |
When section cutting planes are enabled, the cutting plane opacity can be specified by setting ‘value’ between 0.0 and 1.0. |
cutplane_intersections |
Section cutting intersections can be enabled via this option. (Default is off) |
cutplaneIS_RGB <r g b> |
When section cutting plane intersections are enabled, the cutting plane intersection colour can be controlled by r g b values in the range of 1 to 255. |
enable_brep |
By default, BREP data is omitted when the PDF file is generated so this option allows for such data to be retained. Do not use this option when the generation of BREP data in PDF is forbidden for legal or commercial reasons. |
fixup |
There are occasions when the source data presented for publishing to the 3D PDF is invalid. In these circumstances, a validation of the data is carried out by the translator and the user is advised, via a message on the screen to re-run the translator, specifying the ‘fixup’ command line option. Specifying this option will allow the translation to complete, omitting any faces that are not topologically correct. |
fix_inst_names <on/off> |
By default, this option is on. It will detect instances with no names and apply the part name to those instances. This accommodates cases where instance names are not available in the source data. |
launch_adobe_viewer |
This option will automatically display the resulting PDF file in an Adobe Reader. The environment variable TS_CMD_PATH_AND_EXE can be used to specify the Adobe application if it isn’t found in a default location. |
group_solids |
This can be useful when data is created with many open solids (1 per face). This can result in many 100’s or even 1000’s of solids which causes the 3D PDF file to have a massive entity tree, to be slower and larger than necessary, and with a Bounding Box for each face. Setting this option groups the solids into logical entities. |
dont_group_solids |
Some systems will group solids by default, so this option allows that setting to be disabled. |
pmi_assoc_limit <off or number> |
This option is used to limit the number of PMI to Geometry associations that exist for any single PMI node. The default value being 500. It has been found that in rare cases many 1000’s of associations exist and this has a significant effect on the translation time. If the limit is exceeded the log file reports the PMI entities names and reports an error, allowing the user to modify the limit, or review the PMI’s validity. |
set_perm <text option> |
Set the permissions for the PDF file, the options being ‘PRINT’ or ‘LOCK’, if no options are set then the created PDF file is fully open. The ‘PRINT’ setting allows the file ONLY to be printed. The ‘LOCK’ setting ensures the document cannot be modified. (Be aware that with Adobe Writer it is possible to override any permission setting). |
set_perm_mask <int value> |
This allows the full control of all the permission settings when creating a PDF file, the in values need to be logically ORed together so 0x2 and 0x1 become 3. Values are 0xHex (decimal): 0x01 (1) - DocumentPermOpen: The user can open and decrypt the document. 0x02 (2) - DocumentPermSecure: The user can change the document’s security settings. 0x04 (4) - DocumentPermPrint: The user can print the document. 0x08 (8) - DocumentPermEdit: The user can edit the document more than adding or modifying text notes. 0x10 (16) - DocumentPermCopy: The user can copy information from the document to the clipboard. 0x20 (32) - DocumentPermEditNotes: The user can add, modify, and delete text notes. 0x40 (64) - DocumentPermSaveAs: The user can perform a Save As. 0x100 (256) - DocumentPermFillandSign: Allows the user to fill in or sign existing form or signature fields. 0x200 (512) - DocumentPermAccessible: Overrides DocumentPermCopy to enable the Accessibility API. 0x400 (1024) - DocumentPermDocAssembly: Allows page insert/delete/rotate and create bookmark and thumbnail. 0x800 (2048) - DocumentPermHighPrint: Supplement to DocumentPermPrint. If disabled only low quality printing is allowed. 0x8000 (32768) - DocumentPermOwner: The user is permitted to perform all operations. 0x10000 (65536) - DocumentPermFormSubmit: The user can submit forms outside of the browser. 0x20000 (131072) - DocumentPermFormSpawnTempl: The user can spawn template pages. 0xFFFFFFFF - All permissions. |
expand_part |
This option creates a pseudo assembly structure below a part, such that each solid is modelled by a separate node. The default is to combine all solids that belong to the same part. Using this option can be useful when control over part with multiple solids is required, e.g. view/hide separate solids, however it should be noted that this option may compromise other functionality, such as PMI association. |
view_part_name |
Prefix a part view within an assembly with the corresponding part name, to help make the view names unique - only need this when the option ‘Part Level Views’ is also enabled. |
zoom_views_x <value> |
This option will magnify the view by the value provided, this is defaulted to 2.0 for all CAD systems. Values < 1.0 zoom out. Values > 1.0 zoom in. The purpose of this option is to expose an adjustment factor that a given CAD system might need to best fit the VIEWS in the PDF, this may be affected by the aspect ratio of the page size/template used in PDF write. Every effort has been made to set a good value by default. |
optimize_save off |
By default, the PDF will be automatically optimized to make the file smaller. This disables the optimization feature. |
image_dir <directory> |
Import images into a template from a directory. |
axis_systems <on>/auto/<size in mm> |
Enables the output of axis systems to the PDF. Default is on. The Default value when on is 25mm. When enabled wireframe x(RED),y(GREEN),z(BLUE) are created to represent the axis system location. Using auto will enable the size of the axis system to be generated based upon the bbox within a 5-25mm range. The length of the axis system can also be given in mm, e.g. axis_systems 100 which specifies a length of 100mm for example. |
ts_cfile <text file> |
This option allows command line arguments to be placed in a text file, with one command or option per line, for example: read_pmi dont_fill_pmi_text disable_points pmi_RGB 255 1 1 wireframe_RGB 255 1 1 Note - the progress_file <file> option cannot be added into the text file because the progress file is opened before the command file is read. |
attach_2D_views <on or WxH> |
It is possible to automatically generate JPG images for each view and attach them to the output PDF file. This is off by default. If it is enabled, then the options are: ‘on’ - this generates a JPG based upon a WxH of 1600x1200. ‘WxH’ - allows the image size to be defined e.g. 1200x1800. The view name is prefixed with the input PDF file name to name the image files. |
attach_2D_views_name_only <on or WxH> |
It is possible to automatically generate JPG images for each view and attach them to the output PDF file. This is off by default. If it is enabled, then the options are: ‘on’ - this generates a JPG based upon a WxH of 1600x1200. ‘WxH’ - allows the image size to be defined e.g. 1200x1800. ONLY the view name is used when creating the image files. |
cutPlane_FIX <x_val y_val z_val> |
This is an option that can be added to resolve section capping issues, where x_val, y_val, z_val are the values that can be added to move the cutplane along the desired axis. For example cutPlane_FIX 0.0 0.2 0.0 will move the cutplane by 0.2mm along the y axis. Negative values can also be added, for example cutPlane_FIX 0.0 -0.2 0.0 will move the cutplane by 0.2mm in the opposite direction along the y axis. Only slight adjustments will typically be required, usually between -0.5 and 0.5. Please note that higher values may be required from time to time. |
Templates
Publishing to a Specific List of Templates - via the Configuration Manager
It is possible to publish to a single template or to multiple templates via one translation using the Configuration Manager. To do this create a new configuration as described earlier in this user guide, (See Theorem Interactive Conversion Settings), or use an existing configuration if one has been created previously. Having a user generated configuration will enable the user to change the options specified including the template selection. By default, the template selected is defaultManifest.
To change the template, select the ‘Write 3D PDF’ tab to display the Write Mode and Template Selection options. Ensure that ‘Use a Template’ is selected, then select the icon next to the Template Selection field.
In the Template selection manager window select the icon. Navigate to the required directory and select the template XML file to add it to the list.
Repeat the process to add more templates if required. Select apply to update the Template Selection.
The configuration can then be selected from the Active Configurations list shown previously. (See Theorem Interactive Conversion Settings.)
Publishing without a Template - via the Configuration Manager
Running the translation without a template will create a 3D PDF output file with no containing document. To do this in the configuration manager, select the Write 3D PDF tab then from the ‘Write Mode’ dropdown, select ‘No Template’ .
Translating in Batch using CATUtil - DataExchangePLMBatch
Launching DataExchangePLMBatch
The Dassault Systemes CATUtil Batch Monitor tool can be launched with the correct Theorem enabled environment using the scripts provided in the Translator installation at:
<installation_directory>\bin\start_CATUTIL_Theorem_Multi-CAD_3DPDF_CATIAV6R<revision>.cmd
(where <revision> should be substituted for the version of 3DExperience that you have installed - e.g. 2023x, 2024x, 2025x.)
It can also be started from the Tools>Utility workbench within an Interactive 3DExperience session.
In some cases, it may be desirable to ignore the interactive settings while translating using DataExchangePLMBatch.
This can be achieved by setting the following variable in the Theorem CATEnv file:
TS_IGNORE_JT_CATSETTINGS=1
Batch Export to 3D PDF
Here is an example showing what is required in preparation for a 3DExperience database selection and batch export.
Double click on DataExchangePLMBatch.
Ensure that ‘Export’ is selected as the data exchange operation, ‘PDF_THEOREM’ is selected as the usage and ‘pdf’ is selected as the extension.
To add the required products for the batch export, select the 3DExperience Platform Object Search icon.
In the subsequent window displayed, add the required products using the correct attribute, operator and value ensuring that the correct object type has been selected. (E.g. Physical Product). Where required use an Asterix in the value field to identify multiple parts or assemblies.
For multiple products ensure that the OR condition has been selected.
Select Add results and click Apply to add the list of products to the Object Selection field.
To change the location where both the report and the PDF files will be saved, select the icon next to the Report directory field, then select the required directory.
Click Run to initiate the Batch Export.
Running a Saved Batch File
It is also possible to run a saved batch file on the command line. To do this click Save instead of Run in the DataExchangePLMBatch window.
Enter a file name, select the required directory where the batch file will be saved, then click Save.
In order to run a saved batch file on the command line the following is required:
<3DExperience Install>\3DExperience\<B###>\win_b64\code\bin\CATSTART.exe -run “CATBatchStarter-input <input_file>” -direnv “<TS_INST>\B###\win_b64\CATEnv” -env <env_file>
Where <3DExperience Install> is your 3DExperience Installation directory. Where <B###> is your version of 3DExperience, i.e. B425. Where <TS_INST> is the Theorem Solutions software installation directory.
Please note that quotation marks will be required around the CATBatchStarter -input <input_file> command.
<input_file>
Is the saved batch file. This will be in an XML file format.
<env_file> Is the Theorem environment file. Only the file is required and the .txt file extension should be removed when added to the command.
Changing the Options Selected for a Batch Export
The default options selected for a batch export can be modified within the xcad_3dpdf_opts.txt file available in the following location.
<installation_directory>\data\3dpdf
Within the file a number of arguments are displayed, these include common arguments such as read_pmi which is turned on by default and disable_points, disable_wireframe and disable_axes which are turned off by default. If an argument has the character (!) at the start of the line then this means that the argument is turned off.
To turn on a particular argument remove the (!) from that particular line. Consequently to turn off an argument add the (!) to the start of the line. Note - the user will need to be in administrator mode in order to make the change.
Adding Options for a Batch Export
To include a new argument, simply add a new line in the xcad_3dpdf_opts.txt file under the V6 Read Options section or the 3D PDF Write Options section depending on the argument used. (See Configuration Manager and Advanced Arguments for more information on 3DExperience read and 3D PDF write arguments). In the example below the pmi_RGB 255 1 1 argument has been added.
Changing the Template Selected for a Batch Export
The template selected for a batch export can also be modified within the xcad_3dpdf_opts.txt file.
To change the template, comment out the STD line by adding the character (!), then add in the file path where the template xml file is saved on a new line below. Use quotation marks if there are spaces in the file path.
These changes will consequently mean that the user specified template will be used instead of the default template when translating via DataExchangePLMBatch. Note - the user will need to be in administrator mode in order to make the change.
Changing the PDF File Name
When exporting data using DataExchangePLMBatch, ensure that the part_naming #PN# option has been turned on in the xcad_3dpdf_opts.txt file. If this option is turned off then the PDF file will be named the object name displayed in 3DExperience, (this is a 3DExperience generated name/number). The part_naming #PN# option is turned OFF by default.
If the part_naming #PN# option is turned on then the PDF file will be named the object title displayed in 3DExperience, (this is a user generated name/number). Removing the (!) character from both the part_naming and #PN# lines will turn this option on. Please note that the user will need to be in administrator mode in order to make the change.
Please note that different attributes can also be used to name the output file, for example part_naming #DR# will name the PDF file the object description.
Translating on the Command Line
It is possible to run a 3DExperience to 3D PDF translation on the command line, however as all CAD data is saved in the 3DExperience database an XML file will need to be used as the input file instead of a CAD file. This XML file contains all the necessary information to locate, open and translate the CAD data. This is explained in more detail below. In order to run a translation on the command line the following is required:
<TS_INST>\bin\catia6r<revision>_3dpdf.cmd <input_file> <output_file> publish <XML Manifest file> <options>
Where <TS_INST> is the Theorem Solutions software installation directory. Where <revision> is the version of 3DExperience that you have installed - e.g. 2023x, 2024x, 2025x.
<input_file>
Is an xml file defining access to a specific object in the 3DExperience database.
This file provides user login details (V6R2013x) or a Login Ticket (2015x onwards) (see Appendix A), to a specified Enovia repository plus a set of 3 attribute names and values which will uniquely identify the input object required for the conversion. Example XML files can be found in the <TS_INST>\samples\3dexperience folder. These can be modified and saved on your local drive.
Here is an example of the xml input file for 3DExperience:
<?xml version="1.0" encoding="utf-8"?>
<mc6_read>
<!-- parameters must be in this ORDER -->
<!-- parameters only the value passed to V6 -->
<parameters>
<attribute name="repository" value="PLM1"/>
<attribute name="ServerName" value="https://3dspace.theorem.com"/>
<attribute name="ServerPort" value="443"/>
<attribute name="ServerRootURI" value="3dspace"/>
<attribute name="LoginTicket"
value="REEyNzM3M0Q1REM2NDgxQzlFNzk1QzIwNjZGRDYzODN8Um9iaW58Um9ia
W58fHwwfA=="/>
<attribute name="PLMType" value="VPMReference"/>
<attribute name="ReportDirectory" value="C:\TEMP\V6Export"/>
<attribute name="LicenseData" value="LIC"/>
<attribute name="BatchXMLFileName" value="Default"/>
</parameters>
<!-- arguments both key and value are passed to V6 -->
<arguments>
<attribute key="PLM_ExternalID" value="prd-TSL-00004525"/>
<attribute key="V_version" value="A"/>
<attribute key="minorrevision" value="1"/>
</arguments>
</mc6_read>
The PLM_ExternalID value will be the Name displayed in the properties of the object selected in 3DExperience.
Note - In some cases, the “minorrevision” value is not required in the XML file, only the V_version value is required. This value could be A.1 for example.
<output_file>
Is the required PDF output file name.
publish <XML Manifest file>
This is the template that the data will be published to. A text file containing a list of manifest files can also be used to publish to multiple templates.
<options>
Options displayed in the configuration manager and advanced arguments can be added at the end of the command using the correct syntax, e.g. disable_points, disable_wireframe. (See Configuration Manager and Advanced Arguments for list of command line syntaxes.)
Log File Generation
In the process of exporting the selected 3DExperience part or assembly, the following log files are generated by the PDF Export plug-in.
.err file - gives the full processing list of errors, warnings and information
.rpt file - gives a short list of the entities created and failed
.log.summary file - gives the times for start and finish and the status message code (these can be customised)
.log file - gives a single file with the data from all three logs
The process log and error messages are, by default, located in the 3DExperience CATReport directory, e.g.
C:\Users\<user>\AppData\Local\DassaultSystemes\CATReport
Where <user> is your user name
The files are named the same as the part or assembly being exported e.g. ENGINE_BRACKET would produce the following log file names:
ENGINE_BRACKET.err
ENGINE_BRACKET.rpt
ENGINE_BRACKET.log.summary
ENGINE_BRACKET.log
Additional log files are created in the TSC_TEMP_DIR directory. This directory is defined in the %TS_INST%\ts_env.bat file.
%TSC_TEMP_DIR%\Read_to_viewer_<input_part_name>.log
Where: <input_part_name> is the name of the input part (or the active part name in interactive usage)
This contains information describing the 3DExperience ‘data read’ processing into Theorem Intermediate data format. Normally a list of entities.
%TSC_TEMP_DIR%\viewer_<part-name>_screen_output.log
Where <part-name> is the selected output file name.
This contains the screen output of the process of writing the data to PDF. The status of the translation can be found here.
%TSC_TEMP_DIR%\viewer_<part-name>.log
Where <part-name> is the selected output file name.
This contains detailed process information of the write of the data to PDF and contains additional information such as modifiers and options used.
3DExperience Environment Files
As part of the Theorem installation process, a set of 3DExperience environment files are created which are subsequently used in the launch of 3DExperience and CATUtil sessions to support the Theorem partner plug- ins for 3D PDF export.
A ‘CATEnv’ file is created for each installed version of 3DExperience.
These environment files are located in the 3DExperience revision specific folder e.g.
<installation_directory>\B425\win_b64\CATEnv\Theorem_Multi-CAD_3DPDF_CATIAV6R2023x.txt
<installation_directory>\B426\win_b64\CATEnv\Theorem_Multi-CAD_3DPDF_CATIAV6R2024x.txt
<installation_directory>\B427\win_b64\CATEnv\Theorem_Multi-CAD_3DPDF_CATIAV6R2025x.txt
These files consist of the current 3DExperience settings with the required Theorem settings appended at the bottom.
Creating a Login Ticket
Use a browser link (similar to the one below) to your 3DExperience Server.
https://3dspace.2017x.theorem.com:447/3dspace/common/emxNavigator.jsp
Login as normal, e.g.
User
Password
Select Collaboration and Approvals > Experience Configuration > Manage Login Tickets.
Select the values required for your user:
User and Security Context should already be set, make sure that Ticket Type ‘Infinite’ is selected. Then click on ‘Create’.
This will produce the ticket. See example below:
REEyNzM3STE1MER2NDgxQzlFNzk1QzIwNjZGNATzDAN8Um9iaW58Um9iaW58fHwwfA==
This can then be used as the ‘LoginTicket’ value explained previously.
Security Changes to Adobe Reader PDF Documents
Adobe have implemented new security options to disable the auto-play of 3D content in PDF files. The following banner will be displayed upon opening a PDF file that contains 3D content:
To enable 3D content in the current document:
Click the Options button and then select an appropriate option:
Trust this document one time only.
Trust this document always.
To enable 3D content permanently in ALL documents:
Go to Edit > Preferences > 3D & Multimedia and then select the Enable playing 3D content checkbox.
Theorem Interactive Conversion Settings - Version 27.0 and Earlier
The 3DExperience interface does not currently require the user to apply any specific settings for the translation. There are some general settings that should be checked if required (e.g. for PMI conversion.) These are accessed through Preferences>Legacy Preferences>General>Compatibility>External Native 3D Formats.
This page is a standard Dassault Page that sets the preferred mode of conversion (in this case Exact), and also the general options ‘Convert coordinates system’ and ‘3D annotations’. Both of which are toggled on.
There are also some Theorem settings that can be applied. These are accessed through Preferences>Legacy Preferences> Infrastructure>Theorem
A dedicated tab under ‘Theorem’ allows the user access to Theorem Configurations. From this Panel, the user can select a predefined configuration or create a new configuration. Please follow the process defined in Theorem Interactive Conversion Settings for creating new configurations.