Navigation: Theorem Visualization Pipeline > Server Home Page > Data > New CAD Data > File Processing Settings > Configuration > Upload Settings File > Command File

Send comments on this topic.

  

 

Command File

 

Certain parts can be specified for different optimization settings using a command file.

 

The syntax is below:

 

<Option>:<Part Filter>:<tolerance>

Option is the optimization command used.

Part name is the part name that is affected by the command.

Tolerance is the threshold for the specific option used.

 

Part filters can have a postfixed * to indicate any part name starting with the defined string.

Uploaded command files must be named either 'command_file.txt' or 'CommandFile.txt'.

For an example command file click here.

 

The following command line options are available:-

 

Field

Description

Collapse_level

Collapses the assembly structure at the level (n) specified.

 

Example of level 2:

 

Collapse_top

The same as “collapse_level 1”.

Combine

If there are multiple faceted solids (Fsols)  in a node of an assembly, they can be combined into a single Fsol using this command. If the Fsols have different colours then they will not be combined unless the “ignore_colour” is specified.

Decimate p

Reduces the total number of triangles in a solid to a percentage (p) of the original number. e.g. “decimate 5” will attempt to reduce the number of triangles by 95%.

 

A comparison between two spheres to show the difference between high-poly 3D models and low-poly 3D models.

 

 

Decimate_tol

Reduces the total number of triangles in a tolerance such that the accuracy of the solid does not worsen by more than the specified tolerance (<tol> mm.). When used in conjunction with decimate,  the method that produces the most triangles will take precedence.

Decimate_tol_by_frac

This is a unit-less way to specify tolerance as a fraction of the bounding box extent of each solid in the assembly. <fraction_value> must be greater than 0 and less than 1.

 

If all three methods are specified – decimate, decimate_tol and decimate_tol_by_frac, then the method that produces the most triangles between decimate and (smaller tolerance between <tol> and <frac_tol>) is used.

Defeature_by_tol

De-features the solid by a tolerance value.  tol must be > 0.0. You should know the unit of your data and specify a reasonable value to get good results.

Explode_assy

Removes all structure.

 

External_details_file

Any DETAIL that has a name that matches an entry in the file “file_name” (that can contain ‘*’ as a wild-card) is written out as a separate GCO file. The GCO entities defining the DETAIL in the original GCO block are deleted and replaced by an attribute referencing the separate GCO file.

Externalise_collapse

Any DETAIL that will get collapsed, either by the “collapse_level n” option or an entry in the “collapse_file” is written out as a separate GCO file. The GCO entities defining the DETAIL in the original GCO block are NOT deleted and an attribute referencing the separate GCO file is added to the DETAIL. This allows downstream applications (primarily Theorem XR) to use either the collapsed or un-collapsed structure.

Fill_holes

Fills holes in the solid. There is no tolerance specification.

Group_file

GROUP specifies that a new node named “new_name” is to be inserted at the top level of the assembly. Any nodes in the assembly that match any of the “semi-colon separated list of names to group” will be inserted into the group. This has to also include any nodes in the path down to the node to retain the original hierarchy. Any branches of the assembly that are not referenced by any of the GROUP entries are placed into a group called “Ungrouped” so that the whole assembly is included.

Heal

Invokes the 3 “heal” options on the solid:-

 

heal_orientations

heal_close_gaps

heal_fix_self_ints

Heal_close_gaps

Close gaps in the solid.

Heal_fix_self_ints

Fixes self-intersections in the solid.

Heal_orientations

Fix orientation problems in the solid.

Ignore_colour

Specifying this option causes the colour to be ignored when combining Fsols. In this case multiple Fsols in a single part will be combined into a single Fsol.

Ignore_material

Specifying this option causes the material to be ignored when combining Fsols. In this case multiple Fsols in a single part will be combined into a single Fsol.

Orient_fsols

This command will orient fsols away from the centre of the assembly. Exclude_reorient option available via command line to exclude specified details from reorientation.

 

Example: The colouring on the cubes shows the orientation of the faces. Red highlights faces that are orientated inwards while the blue represents the faces orientated outwards.

Create_quads

Creates quads by combining neighbouring triangles where angle between their surface normal is equal to zero.

Quads_feature_angle

Use this command to specify a feature angle tolerance for the create_quads command. <angle_in_degree> must be greater than 0 and less than 90.

Regen_normals_out_angle

Regenerates the vertex normals in the output solids. In generating normals, any adjacent facets whose plane normals differ by less than angle supplied (in degrees) will be considered to be part of the same surface. Angle must be greater than -90 and less than 90.

Remesh_by_edge_length <val>

Here <val> is the average edge length of triangles in the new mesh.

Remesh_by_tol <tol>

This uses a <tol> value to re-mesh the solid. <tol>specifies the maximum deviation allowed from the original surface when re-meshing.

Remesh_by_triangle_count_factor

This command will re-mesh the solid to contain triangles equal to the original triangle count * factor. Setting 1 will for it to attempt to keep the same triangle count.

Scale_geom

Scales the data by the specified factor (y.yyy).

 

Shrink_wrap_tol_by_frac <frac_val>

<frac_val> is a unit-less number used to compute the maximum error which sets the maximum distance of the shrink wrap from the original solid surface where 0 < <frac_val> < 1. The actual tolerance is calculated as <frac_val> * <bounding_box_extent> Smaller values moves the shrink wrapped surface closer to the original surface and also increases the triangle and vertex count.

Slice_file

Option available to slice a viewer file into section boxes defined in a csv file. This option can be applied to 3D models and wireframe. More information can be found here.