./features
Download Features Source code Forum Ask for support
CommandDescription
add-subshape
[link]
add-subshape <parent> <child>
Adds the <child> subshape to the <parent> shape.
asm-xde-add-part
[link]
asm-xde-add-part
 -model <M>
[-name <name>]
Adds the active part to the XDE document as an assembly part.
asm-xde-browse
[link]
asm-xde-browse
 -model <M>
[-title <title>]
Opens a dialog to browse the structure of the XDE document named <M>. If the '-title' argument is passed, the browser gets the specified title in its window.
asm-xde-dfbrowse
[link]
asm-xde-dfbrowse
 -model <M>
Opens DF Browser to inspect the internals of the OCAF document for the model <M>.
asm-xde-display-json
[link]
asm-xde-display-json <filename>
Displays shapes out of JSON representing a scene tree.
asm-xde-dump-json
[link]
asm-xde-dump-json
 -model <M>
[-shapes]
Dumps the passed model to JSON as a scene tree. If the '-shapes' flag is passed, the B-rep geometry of unique parts will be added as base64-encoded BLOBs in the extra 'shape' properties. This would make the dumped JSON file self-contained.
asm-xde-find-items
[link]
asm-xde-find-items
 -model <M>
 -name <name>
Finds assembly items having the passed name.
asm-xde-generate-facets
[link]
asm-xde-generate-facets
 -model <M> [
{-parts <id> ... |
 -items <id> ...}] {
[-lin <val>]
[-ang <deg>] |
[-very-rough |
 -rough |
 -normal |
 -fine |
 -very-fine]}
Generates visualization facets for all parts in the passed XDE document. You can specify the linear and angular deflection values using the '-lin' and '-ang' keywords. The linear deflection is specified in the model units. The angular deflection is specified in degrees.

Alternatively, you can pass one of the predefined quality levels: '-very-rough', '-rough', etc. In such a case, the algorithm will select the linear and angular deflections automatically.

If neither assembly items nor parts are specified via the corresponding '-items' and '-parts' keywords, the visualization facets will be generated for all B-rep shapes available in the XDE document.
asm-xde-get-leaves
[link]
asm-xde-get-leaves
 -model <M>
[-items <item_1> ... <item_k>]
Returns leaf assembly items for the passed items.
asm-xde-get-parts
[link]
asm-xde-get-parts
 -model <M>
[-items <item_1> ... <item_k>]
Returns IDs of all parts of the model <M> in the case when no parent items are specified. If the item IDs are passed through the '-item' keyword, only the children parts of those items are returned.
asm-xde-load
[link]
asm-xde-load
 -model <M>
 -filename <filename>
Loads assembly from file <filename> to the XDE document named <M>.
asm-xde-load-fbx
[link]
asm-xde-load-fbx
 -model <M>
 -filename <filename>
Loads FBX file to fill XDE model.
asm-xde-new
[link]
asm-xde-new
 -model <M>
Creates a new XDE document named <M>.
asm-xde-print-structure
[link]
asm-xde-print-structure
 -model <M>
[-level <zero-based-level>]
Prints assembly hierarchy for the passed model <M> down to the given hierarchical level <zero-based-level>.
asm-xde-release
[link]
asm-xde-release
 -model <M>
Releases memory consumed by the XDE document named <M>.
asm-xde-remove-parts
[link]
asm-xde-remove-parts
 -model <M>
[-items <item_1> ... <item_k>]
[-invert]
Removes parts corresponding to the passed assembly items with all their occurrences in the model. If the '-invert' flag is passed, the passed items along with all their children will remain in the model, while all other parts will be removed instead.
asm-xde-reset-colors
[link]
asm-xde-reset-colors
 -model <M>
Cleans up all colors in the model with the name <M>.
asm-xde-save
[link]
asm-xde-save
 -model <M>
 -filename <filename>
Saves the XDE document named <M> to the file <filename>.
asm-xde-save-fbx
[link]
asm-xde-save-fbx
 -model <M>
 -filename <filename>
Exports the passed XDE model to Autodesk FBX format.
asm-xde-save-gltf
[link]
asm-xde-save-gltf
 -model <M>
 -filename <filename>
Exports the passed XDE model to glTF format.
asm-xde-save-step
[link]
asm-xde-save-step
 -model <M>
[-part <id>]
 -filename <filename>
Exports the passed XDE model or its individual part to a STEP file.
asm-xde-set-as-var
[link]
asm-xde-set-as-var
 -model <M>
 -item <id>
[-name <varName>]
[-color rgb(<ured>,<ugreen>,<ublue>)]
Sets the passed assembly item as a project variable.
asm-xde-set-name
[link]
asm-xde-set-name
 -model <M>
 -item <id>
 -name <name>
[-instance]
Sets new name for the passed assembly item. If the '-instance' flag is specified, the name will be set for the instances of the given prototype.
asm-xde-show-summary
[link]
asm-xde-show-summary
 -model <M>
Shows a GUI dialog with assembly summary.
asm-xde-transform
[link]
asm-xde-transform
 -model <M>
 -item <id>
[-t <x> <y> <z> <a> <b> <c>]
Applies transformation to the given assembly item. The angles <a>, <b> and <c> are specified in degrees.
asm-xde-unload
[link]
asm-xde-unload
[-model <M>
 -path <dir>]
Unloads all unique parts from the model <M> to the directory specified with the '-path' keyword. Together with a plain list of parts, a BOM file (bom.csv) is generated in the CSV format to indicate how many occurrences each extracted part has got. Run without arguments to proceed with this command in the UI dialog mode. The default format for the exported part files is STEP.
asm-xde-xcompounds
[link]
asm-xde-xcompounds
 -model <M>
[-items <item_1> ... <item_k>]
Expands the compound-type parts in the model <M> for the assembly items <item_1>, ... <item_k> (if passed), or all leaves (if not passed).
bop-cut
[link]
bop-cut <result> <op1> <op2> [<fuzz>]
Cuts <op2> from <op1> using Boolean Cut operation. Use <fuzz> value to control the 'fuzzy tolerance'.
bop-fuse
[link]
bop-fuse <result> <op1> <op2> [<fuzz>]
Fuses the passed two operands using Boolean Fuse operation. It is possible to affect the fusion tolerance with <fuzz> argument.
bop-fuse-gen
[link]
bop-fuse-gen <result> <op1> <op2> [<fuzz>]
[-glue]
Fuses the passed two operands using Boolean General Fuse operation. It is possible to affect the fusion tolerance with <fuzz> argument. In case if you have overlapping faces in your operands, you may want to try gluing option to speed up computations.
bop-split
[link]
bop-split <plane>
Splits the active part by the passed plane.
build-coons-linear
[link]
build-coons-linear <resSurf> <c0> <c1> <b0> <b1>
[-dump]
Builds bilinear Coons patch on the passed boundary curves.
build-face-grid
[link]
build-face-grid
[-num <numBins>]
[-filename <filename>]
[-fid <faceID>]
[-square]
[-haines|-discr]
Builds a uniform UV grid for the interactively selected face. Pass the number of bins to control how fine sampling is going to be. If the filename is passed, the sampled face is converted to vtkImageData and dumped as a bitmap image. Pass the '-square' keyword to force the decomposition domain be of a squared shape.

For efficient computation, pass the '-discr' keyword. This option turns the face of interest into a discrete representation and uses extremely fast two-dimensional classifier.
build-gordon
[link]
build-gordon
 -p <e1> <e2> [<e3> ...]
 -g <e1> <e2> [<e3> ...]
[-name <surfName>]
Builds a Gordon surface passing through the given {p} ("profile") and {g} ("guide") curves specified as edge indices in the active part.
build-obb
[link]
build-obb <res>
[-cyl]
[-sphere]
Builds the oriented bounding box (OBB) for the active part. If the '-cyl' or '-sphere' flag is passed, the constructed OBB is turned into an circumscribed cylinder or sphere.
build-opt-bnd-cyl
[link]
build-opt-bnd-cyl <res>
Builds an optimal bounding cylinder for the active part.
build-triangulation-obb
[link]
build-triangulation-obb <res>
Builds the oriented bounding box (OBB) for triangulation.
check-aabb
[link]
check-aabb
[-opt]
[-tris]
Checks axis-aligned bounding box (AABB) of the active part. If the '-opt' key is passed, the bounding box will be optimized to better fit the shape. This option can be computationally heavy though as it implies numerical optimization.

If the '-tris' key is passed, the algorithm will use triangulation (facets) of the part to compute its AABB.
check-along-curvature
[link]
check-along-curvature
Checks on-surface curvature for the selected edge.
check-area
[link]
check-area
[-fid <faceId>]
Checks area of the passed or selected faces.
check-canonical
[link]
check-canonical
[-toler <tolerance>]
Checks if the selected face is of canonical type.
check-clearance
[link]
check-clearance
[-owner <ownerId>]
Checks the clearance distribution over the passed owner shape.
check-continuity
[link]
check-continuity
Checks continuity of the selected face.
check-contours
[link]
check-contours [<tolerance>]
Checks whether all contours of the part shape are closed or not.
check-curvature
[link]
check-curvature [<numPts> [<scaleFactor> [<curvAmpl>]]]
[-noplot]
[-noalong]
Checks curvature of the selected edge. As a result, curvature combs are visualized in 3D. You can control its scale factor with <scaleFactor> argument and also its density with <numPts> argument. To bring out the salient features of the comb, <curvAmpl> amplification factor can be used.

If the '-noplot' key is passed, the curvature plot is not constructed. If the '-noalong' key is passed, the along-curvature value for the selected edges is not computed.
check-dist
[link]
check-dist <varName>
Computes distance between the part and the given topological object.
check-distance-to-bbox
[link]
check-distance-to-bbox
[-fid <fid>]
Checks distance from the selected (or specified) face to AABB.
check-distance-to-chull
[link]
check-distance-to-chull
[-fid <fid>]
[-dir <x> <y> <z>]
Checks distance from the selected (or specified) face to convex hull.
check-edge-vexity
[link]
check-edge-vexity {<edgeIndex> |
 -name <edgeName>}
Analyzes convexity/concavity of the given edge.
check-euler
[link]
check-euler [<genus>]
Opens dialog to check Euler-Poincare property of the active part. If <genus> parameter is not specified, this command will open a prompt dialog to ask the user to type genus.
check-face-color
[link]
check-face-color
 -fid <id>
 -color rgb(<ured>, <ugreen>, <ublue>)
Checks color for the given face.
check-facets
[link]
check-facets
Checks triangulation distributed by CAD faces. Returns 0 (zero) to the Tcl interpreter if the facets are broken and 1 if the facets are good.
check-finite
[link]
check-finite
Checks finiteness of the part shape.
check-internal-locations
[link]
check-internal-locations
[-f]
Checks if the part contains any internal non-identity locations. If the '-f' key is passed, the located faces will be searched for.
check-length
[link]
check-length
Checks length of the selected edges.
check-open-edges
[link]
check-open-edges
Checks part for open edges.
check-part-color
[link]
check-part-color
 -color rgb(<ured>, <ugreen>, <ublue>)
Checks color for the part.
check-part-contains
[link]
check-part-contains <shapeName>
Checks whether the part contains the shape <shapeName> as its subshape.
check-part-metadata
[link]
check-part-metadata
Checks whether the part contains all shapes registered in the Metadata Node as its subshapes.
check-self-inter
[link]
check-self-inter [<fid>]
Checks the parametric domain of the passed/selected face for self-intersections.
check-thickness
[link]
check-thickness
[-owner <ownerId>]
Checks the thickness distribution over the passed owner shape or mesh. Returns the minimal detected wall thickness.
check-toler
[link]
check-toler [<numRanges>]
Checks local tolerances in the part shape and distributes sub-shapes by distinct tolerance ranges. You can control the fineness of these tolerance ranges using the <numRanges> optional argument (10 by default).
check-topo-item-color
[link]
check-topo-item-color
 -name <name>
 -color rgb(<ured>, <ugreen>, <ublue>)
Checks color for the given topoItem.
check-validity
[link]
check-validity
Checks validity of the part shape.
check-vertex-vexity
[link]
check-vertex-vexity
[-fid <fid>] [<numConvex> <numConcave> <numSmooth>]
Checks convexity of all vertices in the given face. You can pass the optional variable names <numConvex>, <numConcave> and <numSmooth> to get the corresponding quantities of convex, concave and smooth vertices in the face of interest.
check-vertices-ori
[link]
check-vertices-ori
Checks if the vertices of the part are distinguishable by their orientation flags. A valid edge should have one FORWARD vertex and one REVERSED vertex to denote its topological extremities. As a result of some improperly implemented modeling operators, this rule can be broken.
check-volume
[link]
check-volume
Checks volume of the active part.
clear
[link]
clear
Cleans up project data.
clear-part
[link]
clear-part
Resets part shape to empty state.
compute-negative-volume
[link]
compute-negative-volume
[-oneSolid]
[-fids <fid1> <fid2> ...]
Computes negative volumes.
concat-curves
[link]
concat-curves
 -edges <e1> <e2>
Concatenates edges <e1> and <e2> belonging to the face <fid> into a single edge. The indices <e1> and <e2> are defined locally and thereby range from 1 to the number of edges in the face. The concatenation process is done at the level of pcurves.
concat-curves-and-check
[link]
concat-curves-and-check
 -edges <e1> <e2>
Concatenates edges <e1> and <e2> belonging to the face <fid> into a single edge. The indices <e1> and <e2> are defined locally and thereby range from 1 to the number of edges in the face. The concatenation process is done at the level of pcurves.
concat-pcurves
[link]
concat-pcurves
 -face <fid>
 -edges <e1> <e2>
Concatenates edges <e1> and <e2> belonging to the face <fid> into a single edge. The indices <e1> and <e2> are defined locally and thereby range from 1 to the number of edges in the face. The concatenation process is done at the level of pcurves.
connect-edges-to-wires
[link]
connect-edges-to-wires
Constructs as many wires as possible from the active set of edges taken from the Part Node.
convert-plane-to-bsurf
[link]
convert-plane-to-bsurf <res> <surfName> <uDeg> <vDeg>
Converts the planar surface with the given name to a B-spline surface. The trimming parameters are taken from the corresponding Data Node. The desired degrees are specified via <uDeg> and <vDeg> arguments.
convert-to-bezier
[link]
convert-to-c2 <name>
[-toApprox] Converts the curve or surface named <name> to C2 continuity class if possible. You can pass the tolerance value via the '-tol' key to protect knot removal operation from distorting the input geometry too much.
convert-to-brep
[link]
convert-to-brep
Converts triangulation to B-rep. The triangles are mapped one-by-one to the faces of the resulting model.
convert-to-bsurf
[link]
convert-to-bsurf [<res> <surfName>
[-cubic]]
Converts the surface with the given name to B-surface. The trimming parameters are taken from the corresponding Data Node. If no surface is specified, the entire part is converted.
convert-to-c2
[link]
convert-to-c2 <name>
[-tol <tol>]
[-add-knots]
Converts the curve or surface named <name> to C2 continuity class if possible. You can pass the tolerance value via the '-tol' key to protect knot removal operation from distorting the input geometry too much.
convert-to-canonical
[link]
convert-to-canonical
[-tol <tol>]
Attempts to convert a shape to a canonical form.
create-stream
[link]
create-stream
 -filename <filename>
 -var <varName>
Create IStream.
ddf-build-svo
[link]
ddf-build-svo
[-min <minSize>]
[-max <maxSize>]
[-prec <precision>]
[-cube]
[-owner <ownerId>]
Builds SVO for the given owner Node. The argument <minSize> controls the voxelization resolution. The argument <maxSize> controls the voxelization resolution in the empty space (i.e., inside and outside) the shape. By default, the value of <maxSize> is 100 times the value of <minSize>. The argument <precision> controls the accuracy of the distance field approximation in each voxel. If the optional key '-t' is passed, the SVO will be constructed on the active triangulation.
ddf-cut
[link]
ddf-cut <id1> <id2>
Builds a cut, i.e., max(f,-g) function for the octrees with the IDs <id1> and <id2>.
ddf-dump-vtu
[link]
ddf-dump-vtu <octreeId> <filename>
Dumps the octree with the id <octreeId> to a file in the VTU format of VTK.
ddf-eval-svo
[link]
ddf-eval-svo <octreeId> <x> <y> <z>
Evaluates the active SVO node (i.e., its corresponding function) in the given point with <x>, <y>, <z> coordinates.
ddf-extract-outside-leaves
[link]
ddf-extract-outside-leaves <id>
Extracts the outside leaves of the DDF with the specified <id>.
ddf-intersect
[link]
ddf-intersect <id1> <id2>
Builds an intersection, i.e., max(f, g) function for the octrees with the IDs <id1> and <id2>.
ddf-polygonize
[link]
ddf-polygonize <resName> <octreeId>
[-level <isoLevel>]
[-slices <numSlices>]
Polygonizes the distance field stored in the octree <octreeId> at <isoLevel> function level set. The keyword '-slices' allows to control the number of cells in the uniform grid used internally in the marching cubes algorithm.
ddf-polygonize-cell
[link]
ddf-polygonize-cell <resName> <octreeId> <id0> [<id1> [<id2> [...]]]
Polygonizes a single SVO cell.
ddf-polygonize-svo
[link]
ddf-polygonize-svo <resName> <octreeId>
Polygonizes the SVO with the <octreeId> identifier.
ddf-set-svo
[link]
ddf-set-svo <octreeId> <id0> [<id1> [<id2> [...]]]
Shrinks the octree with the id <octreeId> to the SVO cell with the specified address. The found cell will be set as a new active SVO. To get back to the previous state, the modification should be reverted in the data model by 'undo' command.
ddf-unite
[link]
ddf-unite <id1> <id2>
Builds a union, i.e., min(f, g) function for the octrees with the IDs <id1> and <id2>.
define-geom
[link]
define-geom [<name>]
Opens geometry definition dialog.
delete-stream
[link]
delete-stream
 -var <varName>
Delete IStream.
dfbrowse
[link]
dfbrowse
Opens DF Browser to inspect the internals of the OCAF document for the active project.
disable-browser
[link]
disable-browser
Disables object browser.
disable-notifier
[link]
disable-notifier
Disables notification messages.
disable-plotter
[link]
disable-plotter
Disables imperative plotter.
disable-transactions
[link]
disable-transactions
Disables data model transactions.
display
[link]
display <varName1> [<varName2> ...]
Shows the given object in its associated viewer.
donly
[link]
donly [<varName1> [<varName2> ...]]
Shows only the given objects in their associated viewers. If no objects are passed, the working part will be exclusively shown.
draw-cp
[link]
draw-cp <surfName> <i_index> <j_index>
[-mobius]
Draws control point of a free-form surface.
draw-plot
[link]
draw-plot <x1> <f1_1> [<f2_1> ...] <x2> <f1_2> [<f2_2> ...] [...]
[-log]
[-numFunc <numFunc>]
Draws two-dimensional plot of the given values. If the <numFunc> value is passed with the '-numFunc' key, then several functions can be plotted at once.
dump
[link]
dump <name>
Dumps variable <name> to the logger.
dump-aag-json
[link]
dump-aag-json <filename>
Dumps AAG of the active part to JSON file.
dump-autoread
[link]
dump-autoread
Dumps the currently entered Active Script commands to a specific file named 'autoread.log' that is located in the working directory of Analysis Situs. If exists, this file will be automatically loaded without execution on the next launch.

Use this option to make Analysis Situs a kind of a "notebook" with your recorded commands and comments to get back on each launch.
dump-bvh
[link]
dump-bvh
[-build]
Dumps the bounding volume hierarchy (BVH) associated with the active part to the viewer. Use the '-build' key to construct BVH explicitly in the case it does not exist.
dump-execution-graph-dot
[link]
dump-execution-graph-dot <filename>
Dumps Tree Function execution graph of the active project to a DOT file (Graphviz). Read more about Active Data framework to familiarize yourself with Tree Functions.
dump-project
[link]
dump-project
Dumps the active project's OCAF contents as text into a specific UI dialog.
dump-thickness-vtp
[link]
dump-thickness-vtp
 -id <nodeId>
 -filename <filename>
Dumps thickness field to the VTP file.
dump-topograph-dot
[link]
dump-topograph-dot <filename>
Dumps topology graph to DOT file (can be opened by Graphviz).
dump-vtp
[link]
dump-vtp <filename>
Dumps the polygonal data of the active part to a file in the VTP format of VTK. The data to dump is taken out from the part's pipelines.
enable-browser
[link]
enable-browser
Enables object browser.
enable-notifier
[link]
enable-notifier
Enables notification messages.
enable-plotter
[link]
enable-plotter
Enables imperative plotter.
enable-transactions
[link]
enable-transactions
Enables data model transactions.
erase
[link]
erase [<varName1> [<varName2> ...]]
Hides objects in their associated viewers.
erase-all
[link]
erase-all
Erases all objects from the scene.
eval-curve
[link]
eval-curve <curveName> <u> <order>
[-mobius]
Evaluates curve <curveName> for the given parameter value <u>. If the '-mobius' keyword is used, evaluation is performed using Mobius functions. The argument <order> specifies the order of derivatives to evaluate (0 for value evaluation).
eval-iso-u
[link]
eval-iso-u <surfName> <u>
[-v <v>]
Evaluates an isoparametric curve `Cu(t)` on the surface <surfName>. The optional parameter <v> can be passed to evaluate `Cu(v)`.
eval-iso-v
[link]
eval-iso-v <surfName> <v>
[-u <u>]
Evaluates an isoparametric curve `Cv(t)` on the surface <surfName>. The optional parameter <u> can be passed to evaluate `Cv(u)`.
eval-surf
[link]
eval-surf <surfName> <u> <v> <order>
[-mobius]
Evaluates surface <surfName> for the given parameter pair <u, v>. If the '-mobius' keyword is used, evaluation is performed using Mobius functions. The argument <order> specifies the order of derivatives to evaluate (0 for value evaluation).
exchange-uv
[link]
exchange-uv <surfName>
Flips parameterization of the given B-surface.
explode
[link]
explode [
{-vertex |
 -edge |
 -wire |
 -face |
 -shell |
 -solid |
 -noloc}]
Explodes the active part to subshapes of interest. If no subshape qualifier is passed, this command explodes the part to its direct children (e.g. edges for wire, wires for face, etc.). If the '-noloc' flag is passed, locations are not accumulated on explode.
extend-surf
[link]
extend-surf <resName> <surfName> <length>
{-umax |
 -umin |
 -vmax |
 -vmin}
Extends surface <surfName> by length <length> in the given parameter's direction.
face-addr
[link]
face-addr <faceIndex>
Prints physical address of the given face.
fair-curve
[link]
fair-curve <resName> <curveName> <fairingCoeff>
Fairs curve with the given name <curveName>. The passed fairing coefficient is a weight of a fairing term in the goal function.
fair-surf
[link]
fair-surf <resName> <surfName> <fairingCoeff>
[-relax]
Fairs surface with the given name <surfName>. The passed fairing coefficient is a weight of a fairing term in the goal function. If the '-relax' key is passed, the natural boundaries of the surface will remain unconstrained.
fill
[link]
fill [<fid>]
Fills the cavity by fusing the part with a prismatic tool defined with the <fid> face. There should be a mate face to fill until.
find-isomorphisms
[link]
find-isomorphisms <varShape>
Solves subgraph isomorphism problem for the part shape and the passed feature descriptor encoded by <varShape>.
find-visible-faces
[link]
find-visible-faces
Finds visible faces.
fit
[link]
fit
Fits camera to the scene contents.
fold
[link]
Folds a plat pattern.
freeze-viewer
[link]
freeze-viewer
Disables all events in the 3D viewer.
generate-facets
[link]
generate-facets {
[-lin <val>]
[-ang <deg>] |
[-very-rough |
 -rough |
 -normal |
 -fine |
 -very-fine]}
Generates visualization facets for the active part. You can specify the linear and angular deflection values using the '-lin' and '-ang' keywords. The linear deflection is specified in the model units. The angular deflection is specified in degrees.

Alternatively, you can pass one of the predefined quality levels: '-very-rough', '-rough', etc. In such a case, the algorithm will select the linear and angular deflections automatically.
get-curve-strain
[link]
get-curve-strain <curveName>
Returns strain energy of the passed curve.
get-dominating-plane
[link]
get-dominating-plane <nx> <ny> <nz>
[-orient]
Attempts to find the largest planar face in the model and returns the components of its normal vector.
get-face-color
[link]
get-face-color
 -fid <id>
Gets color for the given face.
get-id
[link]
get-id [<parentObjectName> / [<parentObjectName> / [...]]] <objectName>
[-nosplit]
Finds a data object with the given name and returns its persistent ID. If the object name is not unique, you may specify a list of parents to narrow down your request. The names of the parent objects are separated by direct slash. You should always specify a direct parent of an object. It is not allowed to leave intermediate parents unspecified. If the '-nosplit' keyword is used, the direct slashes will be treated as parts of the single object's name.
get-name
[link]
get-name <objectId>
Returns object name by its passed ID.
get-outer-wire
[link]
get-outer-wire <res>
Extracts outer wire of the selected face.
get-param-shape
[link]
get-param-shape <resName> <nodeId> <paramId>
Returns shape from the Parameter <paramId> of the Data Node <nodeId>.
get-part-color
[link]
get-part-color
Gets color for the part.
get-summary
[link]
get-summary <compounds> <compsolids> <solids> <shells> <faces> <wires> <edges> <vertices>
Returns summary (number of sub-shapes) to the specified output variables.
get-summary-geom
[link]
get-summary-geom <nbSurfBezier> <nbSurfSpl> <nbSurfConical> <nbSurfCyl> <nbSurfOffset> <nbSurfSph> <nbSurfLinExtr> <nbSurfOfRevol> <nbSurfToroidal> <nbSurfPlane> <nbCurveBezier> <nbCurveSpline> <nbCurveCircle> <nbCurveEllipse> <nbCurveHyperbola> <nbCurveLine> <nbCurveOffset> <nbCurveParabola>
Returns the summary of geometric entities to the specified output variables. The rectangular trimmed surfaces are not accounted directly and rather inspected deeper for their basic surfaces. The same applies to the trimmed curves. This function helps to identify how canonical the input geometry is.
get-surface-bending
[link]
get-surface-bending <surfName>
Computes bending energy of the passed surface.
get-tolerance
[link]
get-tolerance
Returns max geometric tolerance of the part shape.
get-topo-item-color
[link]
get-topo-item-color
 -name <name>
Gets color for the given topoItem.
heal-small-edges
[link]
heal-small-edges <len> <ang_deg>
Heals (merges) small edges in the part. The argument <len> specifies the linear threshold for merge. The argument <ang_deg> specifies the the angular threshold for merge (in degrees).
help
[link]
help <command>
Return the hints for command.
hide
[link]
hide <varName1> [<varName2> ...]
Hides objects in their associated viewers.
hlr
[link]
hlr <res> [<posX> <posY> <posZ> <nX> <nY> <nZ>]
Performs HLR algorithm using <posX>, <posY>, <posZ> as a location of a projection plane with <nX>, <nY>, <nZ> as its normal direction.
imprint
[link]
imprint <varName>
Imprints the passed topological object to the working part. This operation is essenially the General Fuse algorithm of OpenCascde.
init-naming
[link]
init-naming
Initializes topological naming service for the active part. As a result, all boundary elements (faces, edges, vertices) get unique names like 'edge_1', 'face_1', 'vertex_1', 'edge_2, 'face_2', 'vertex_2', etc. These names are persistent in the sense that they would survive local operations (e.g., Euler ops) even if their memory addresses become different.
insert-knot-curve
[link]
insert-knot-curve <resName> <curveName> <u> [<r>]
Inserts the passed knot value <u> <r> times to the B-curve <curveName>. A new curve <resName> is created as a result.
insert-knot-surf-u
[link]
insert-knot-surf-u <resName> <surfName> <u> [<r>]
Inserts the passed knot value <u> <r> times to the B-surface <surfName> in its U parametric direction. A new surface <resName> is created as a result.
insert-knot-surf-v
[link]
insert-knot-surf-v <resName> <surfName> <v> [<r>]
Inserts the passed knot value <v> <r> times to the B-surface <surfName> in its V parametric direction. A new surface <resName> is created as a result.
insert-knots-surf-u
[link]
insert-knots-surf-u <resName> <surfName> <num>
Inserts the <num> uniformly distributed knots to the surface <surfName>. The new surface is created with the <resName> name.
insert-knots-surf-v
[link]
insert-knots-surf-v <resName> <surfName> <num>
Inserts the <num> uniformly distributed knots to the surface <surfName>. The new surface is created with the <resName> name.
interpolate-curve
[link]
interpolate-curve <curveName>
 -points <pointsName>
 -degree <deg>
Creates a curve from the passed point series by interpolation.
invert-point-surf
[link]
invert-point-surf <surf> <x> <y> <z>
Inverts (projects) the passed point onto the given surface.
invert-shells
[link]
invert-shells
Inverts orientations of all shells in the working part.
isolate-real-parts
[link]
isolate-real-parts
Takes out all non-located entities.
join-surf
[link]
join-surf
 -f <f1> <f2>
[-profiles1 <numProfilesS1>]
[-profiles2 <numProfilesS2>]
[-guides <numGuides>]
[-offset <d>]
[-draw]
Joins surfaces.
kef
[link]
kef {<edgeIndex> <faceIndex> |
 -edge <edgeName>
 -face <faceName>}
KEF (Kill-Edge-Face) Euler operator.
kev
[link]
kev {<edgeIndex> <vertexIndex> |
 -edge <edgeName>
 -vertex <vertexName> |
 -name <edgeName>}
KEV (Kill-Edge-Vertex) Euler operator.
kfmv
[link]
kfmv {<faceIndex> |
 -name <faceName>}
KFMV (Kill-Face-Make-Vertex) Euler operator.
kill-blend
[link]
kill-blend [<fid>]
Attempts to defeature a fillet starting from the face selected interactively or specified as 1-based face ID.
kill-blends-inc
[link]
kill-blends-inc [<radius>]
Attempts to defeature all blends incrementally.
kill-edge
[link]
kill-edge {<edgeIndex> |
 -name <edgeName>}
Kills edge with the passed 1-based index from the active part. This is a pure topological operation which does not attempt to modify geometry. Moreover, unlike Euler operator, this function does not preserve the topological consistency of the CAD part. We have introduced this function to ground Euler operators on it.
kill-face
[link]
kill-face {<fid> |
 -name <faceName>}
[-defeat]
Kills the face with the passed 1-based index from the active part. This is a pure topological operation which does not attempt to modify geometry. Moreover, unlike Euler operators, this function does not preserve the topological consistency of the CAD part. We have introduced this function to ground Euler operators on it.

If the '-defeat' key is passed, another algorithm of smart face removal will be used. The 'smart' algorithm not only removes a face but also stitches the neighbor faces to produce a watertight solid model as a result.
kill-faces
[link]
kill-faces <fid1> [<fid2> ...]
Kills the faces with the given 1-based indices.
kill-solid-by-face
[link]
kill-solid-by-face <faceIndex>
Kills a solid which contains a face with the passed 1-based index.
kill-subshape
[link]
kill-subshape
 -gid <num>
Kills a subshape having the passed global identifier.
kill-vertex
[link]
kill-vertex {<vertexIndex> |
 -name <vertexName>}
Kills vertex with the passed 1-based index from the active part. This is a pure topological operation which does not attempt to modify geometry. Moreover, unlike Euler operator, this function does not preserve the topological consistency of the CAD part. We have introduced this function to ground Euler operators on it.
load
[link]
load <filename>
Loads model from file with the given name. The current project data will be lost.
load-astra
[link]
load-astra <filename>
Loads ASTRA file with curves and surfaces. Returns the number of loaded curves and surfaces to the interpreter.
load-brep
[link]
load-brep <filename>
[-add]
Loads BREP file to the active part. If the '-add' flag is passed, the loaded geometry is appended to the active part.
load-iges
[link]
load-iges <filename>
[-names]
Loads IGES file to the active part or to the imperative plotter's section if the '-names' keyword is passed. In the latter cases, all IGES entities are imported with their original names instead of putting all geometries into a single compound.
load-obj
[link]
load-obj <filename>
Loads OBJ file to the active triangulation.
load-part
[link]
load-part <filename>
Loads CAD file of any supported format to the active part. If the model is coming in a mesh format, the data is loaded into the Triangulation Node.
load-ply
[link]
load-ply <filename>
Loads PLY file to the active triangulation.
load-points
[link]
load-points <name> <filename>
Loads points from file to the point cloud with the given name.
load-step
[link]
load-step <filename>
Loads STEP file to the active part.
load-stl
[link]
load-stl <filename>
Loads STL file to the active triangulation.
load-stream-step
[link]
load-stream-step <varName>
Loads stream to the active part.
make-box
[link]
make-box name [<posX> <posY> <posZ> <dX> <dY> <dZ>]
Creates axis-aligned box solid with min corner at <posX>, <posY>, <posZ> and dimensions <dX>, <dY>, <dZ>.
make-chamfer
[link]
make-chamfer <size>
Chamfers the selected edges with the given size.
make-compound
[link]
make-compound <result> [<shape1> [<shape2> [...]]]
Creates compound from the passed shapes.
make-curve
[link]
make-curve <curveName>
[-eid <eid>]
Creates a curve from the selected edge or the edge with the passed ID.
make-cylinder
[link]
make-cylinder name [<posX> <posY> <posZ> <r> <h>]
Creates a cylindrical primitive oriented along the OZ axis. The <posX>, <posY>, <posZ> arguments define the origin point. The arguments <r> and <h> define the radius and the height.
make-edge
[link]
make-edge <result> {<curveName> |
 -p1 <pointName>
 -p2 <pointName>}
Creates an edge from a curve or a pair of points. The <curveName>/<pointName> variables should exist in the scene graph of the imperative plotter.
make-face
[link]
make-face <result> {<surfaceName> |
 -w <wireName1> [<wireName2> ...]}
Creates a face from a surface or wires. The <surfaceName>/<wireName> variables should exist in the scene graph of the imperative plotter.
make-fillet
[link]
make-fillet <radius>
Blends the selected edges with the given radius.
make-plane
[link]
make-plane name [<posX> <posY> <posZ> <nX> <nY> <nZ>]
Creates a plane with origin at <posX>, <posY>, <posZ> and the normal direction (<nX>, <nY>, <nZ>).
make-point
[link]
make-point [<pointName> <x> <y> <z>]
Creates a point with the passed coordinates. If nothing is passed, the point is created using the coordinates of the selected vertex.
make-shell
[link]
make-shell <result> <face1> [<face2> [...]]
Creates a shell from the passed faces.
make-solid
[link]
make-solid <result> <shell1> [<shell2> [...]]
Creates a solid from the passed shells.
make-surf
[link]
make-surf <surfName>
[-fid <fid>]
[-spl]
Creates a surface from the selected face or a face with the given name. If the '-spl' flag is passed, the surface will be converted to spline.
make-vertex
[link]
make-vertex <result> <ptName>
Creates a vertex from the point named <ptName>.
make-wire
[link]
make-wire <result> <edgeName1> [<edgeName2> [...]]
Creates a wire from the passed series of edges. The edge names here correspond to the object names from the Geometric Set.
maximize-faces
[link]
maximize-faces
[-linTol <l>]
[-angTol <a>]
Maximizes canonical faces.
merge-edges
[link]
merge-edges
 -name <edgeName1>
 -name <edgeName2> [...
 -name <edgeNameK>]
Merges several edges into one.
merge-vertices
[link]
merge-vertices
 -name <vertexName1>
 -name <vertexName2> [...
 -name <vertexNameK>]
Merges several vertices into one.
misc-check-gaps
[link]
misc-check-gaps
Checks gaps in a wire.
misc-convert-curves
[link]
misc-convert-curves
Converts all wires of the active part to a series of arcs and lines.
misc-gen-hmap
[link]
misc-gen-hmap <ptsName>
Generates height map.
misc-invert-bpoles
[link]
misc-invert-bpoles <surfName>
Inverts the control points of a B-surface to itself.
misc-repair-gaps
[link]
misc-repair-gaps
Tries to fix gaps in a wire.
misc-test-helix
[link]
misc-test-helix
Constructs a helical curve.
misc-test-point-in-poly
[link]
misc-test-point-in-poly
Tests point-in-poly tools by Eric Haines.
misc-test-section
[link]
misc-test-section
Sections the active part.
move-by-face
[link]
move-by-face <faceIndex> <offset>
Moves part in direction determined by orientation of the given face. The passed offset value can be positive or negative. In the case of positive offset, the movement is done along the face normal. In the case of negative offset, the direction of movement is reversed.

CAUTION: this command makes deep copy of the part. Our experience shows that simply assigning location may cause very weird behaviour on subsequent modeling operations.
move-part
[link]
move-part <tx> <ty> <tz> <rx> <ry> <rz>
[-isGeometric]
In case the '-isGeometric' key is not set, moves part by applying the passed transformation to the location of part. In case the '-isGeometric' key is set, moves part by applying the passed transformation on its deep copy. The values <tx>, <ty>, <tx> define the translation vector. The values <rx>, <ry>, <rz> define the rotation angles in degrees. Rotation is performed with respect to the global X, Y, Z axes.
move-point-curve
[link]
move-point-curve <curveName> <u> <dx> <dy> <dz>
Moves point on B-curve with parameter <u> by vector (<dx>, <dy>, <dz>).
move-triangulation
[link]
move-triangulation <tx> <ty> <tz> <rx> <ry> <rz>
Moves triangulation by applying the passed transformation. The values <tx>, <ty>, <tx> define the translation vector. The values <rx>, <ry>, <rz> define the rotation angles in degrees. Rotation is performed with respect to the global X, Y, Z axes.
notifier
[link]
notifier
{-init,
 -step,
 -finish}
Manages notifier.
offset-shell
[link]
offset-shell <offset-positive-or-negative>
[-simple]
[-solid]
[-keep]
[-toler <val>]
[-faces]
Offsets part (it should be a topological shell) on the given offset value. Offsetting is performed in the direction of face normals. If the option '-simple' is passed, this operation will attempt to preserve the topology of the base shell. If the option '-solid' is passed, this operation will build a solid instead of an offset shell. If the option '-keep' is passed, the original part is not substituted with the offset shape, and the offset is added to the part. If the option '-toler' is passed and '-simple' key is used, an optional tolerance for suppressing singularities on triangular surface patches is used. If the key '-faces' is passed, the input shell will be broken down to faces, and each face will be offset individually.
offset-tess
[link]
offset-tess <offset>
Offsets mesh nodes in directions of their norms.
orient-part
[link]
orient-part
[-apply]
Reorients the active part so it gets more suitable axes frame. Pass the '-apply' flag to change the transformation of the shape. Otherwise, only local axes are detected but the shape is not changed.
poly-check
[link]
poly-check
Checks the basic metrics on the selected triangles, such as area, scaled Jacobian, etc.
poly-check-domain-inter
[link]
poly-check-domain-inter
 -domain <id>
Checks self-intersections in the given domain.
poly-check-inter
[link]
poly-check-inter
Checks self-intersections.
poly-collapse-edge
[link]
poly-collapse-edge
[-force]
Collapses the edge between the two selected triangles. If the '-force' flag is passed, no validity checks are performed on edge collapse.
poly-collapse-edges
[link]
poly-collapse-edges
 -maxlen <maxlen>
[-planar]
Collapses tiny edges incrementally.
poly-compute-norms
[link]
poly-compute-norms
Computes normal field.
poly-count-ccomps
[link]
poly-count-ccomps
Counts connected components in the active mesh.
poly-find-adjacent
[link]
poly-find-adjacent
[-v]
Finds adjacent triangles for the given one.
poly-find-boundary
[link]
poly-find-boundary
[-draw]
Finds boundary edges and triangles.
poly-find-domain-edges
[link]
poly-find-domain-edges
 -domain <id>
[-draw]
Finds edges belonging to the given domain.
poly-flip-edges
[link]
poly-flip-edges
[-force]
[-iter <num>]
Flips triangulation edges for entire model if no facets are selected. If two facets with a common edge are selected, the shared edge will be flipped unless it's impossible to do. If so, you can still use the '-force' flag to relax the angular distortion criteria applied by the flipping operator. You might also want to perfom edge flipping iteratively. For that, pass the '-iter' flag followed by the number of iterations.
poly-grow-region
[link]
poly-grow-region
Grows region starting from the selected seed facet.
poly-init
[link]
poly-init
Initializes a mesh from a CAD part.
poly-make-plane
[link]
poly-make-plane
Constructs a plane on the selected facet.
poly-netgen
[link]
poly-netgen
[-domain <faceId>]
Generates surface mesh with NetGen. If the '-domain' key is passed, it is expected to be followed by the face ID to extract as a subdomain.
poly-refine-inc
[link]
poly-refine-inc
[-fine]
Incrementally refines the named triangulation.
poly-refine-midedges
[link]
poly-refine-midedges
[-minarea <minarea>]
[-minlen <minlen>]
[-planar]
Refines the input triangles by midedges.
poly-refine-midpoints
[link]
poly-refine-midpoints
[-minarea <minarea>]
[-planar]
Applies midpoint refinement to each triangle.
poly-smooth
[link]
poly-smooth
[-iter <iter>]
Smooths triangulation.
poly-split-boundary
[link]
poly-split-boundary
[-draw]
Splits boundary triangles.
poly-split-edge
[link]
poly-split-edge
Splits the edge between the two selected triangles.
print-attrs
[link]
print-attrs
[-fid <faceId>]
Prints all AAG attributes available for the face with the given ID or for the interactively selected faces.
print-summary
[link]
print-summary
Prints summary (number of sub-shapes) for the active part.
print-summary-geom
[link]
print-summary-geom
Prints the summary of geometric entities for the active part.
push-pull
[link]
push-pull
[-fid <faceId>] <offset>
Dummy "push/pull" kind of operation. It is experimental and not recommended for use.
re-approx-contour
[link]
re-approx-contour
[-prec <precision>]
[-ang <barrierAngDeg>]
[-apply]
[-diagnostics]
Reapproximates the presumably polygonal contour with spline curves.
re-approx-curve
[link]
re-approx-curve <resCurve> <points> <prec>
[-closed]
Attempts to approximate the given point cloud with a curve.
re-approx-surf
[link]
re-approx-surf <resSurf> <ptsName> {<uDegree> <vDegree> |
 -init <initSurf>}
[-lambda <coeff>] [
{-pinned |
 -pinned2}]
Approximates point cloud with a B-surface.
re-approx-surf-inc
[link]
re-approx-surf-inc <resSurf> <ptsName> [{<uDegree> <vDegree> |
 -init <initSurf>}]
[-lambda <coeff>]
Approximates point cloud with a B-surface incrementally.
re-build-contour-lines
[link]
re-build-contour-lines [<edgeName1> [<edgeName2> ...]]
[-toler <toler>]
Constructs contour lines either for all patches or for the passed edges only.
re-build-patches
[link]
re-build-patches [<patchName1> [<patchName2> ...]]
[-approx]
Constructs surface patched for the passed data object(s).
re-check-deviation
[link]
re-check-deviation <pointsName>
Checks deviation between the given point cloud and the active CAD part.
re-check-surf-deviation
[link]
re-check-surf-deviation <res> <surfName>
Checks deviation between the given surface and the reference mesh.
re-check-tri-deviation
[link]
re-check-tri-deviation <pointsName>
Checks deviation between the given point cloud and the active triangulation.
re-contour-to-wire
[link]
re-contour-to-wire <varName>
Converts contour to topological wire.
re-cut-with-plane
[link]
re-cut-with-plane <res> <p>
[-nosort]
Cuts triangulation with plane. If '-nosort' key is passed, the resulting points are not post-processed with K-neighbors hull algorithm thus remaining disordered.
re-define-contour
[link]
re-define-contour
Enables interactive contour picking.
re-define-curve
[link]
re-define-curve
Enables interactive curve picking.
re-fair-contour-lines
[link]
re-fair-contour-lines <coeff>
Fairs (smooths) contour lines for all patches with the given fairing coefficient.
re-get-inner-points
[link]
re-get-inner-points <resName> <patchName>
Extracts the mesh nodes which are bounded by the contour of the given patch specified as <patchName>. The extracted nodes are collected in the point cloud specified as <resName>.
re-get-triangulation-nodes
[link]
re-get-triangulation-nodes <resPtsName>
Extracts triangulation nodes as a point cloud.
re-interp-mesh
[link]
re-interp-mesh <surfName> <udeg> <vdeg> <grain_factor>
Interpolates mesh.
re-interp-multicurve
[link]
re-interp-multicurve <numpts> <degree> <curveName1> [<curveName2> [...]]
Interpolates a set of curves on the same knot sequence.
re-invert-points
[link]
re-invert-points <surfName> <ptsName>
[-opencascade]
Inverts the passed point cloud to the B-surface with the given name.
re-join-curves
[link]
re-join-curves <res> <curveName1> <curveName2> [<curveName3> [...]]
Joins curves into a single curve.
re-make-average-plane
[link]
re-make-average-plane <res> <pointsName> [{<umin> <umax> <vmin> <vmax> |
 -mobius}]
Approximates the given point cloud with a plane.
re-make-plane
[link]
re-make-plane <plane>
Creates interactive plane.
re-purify-cloud
[link]
re-purify-cloud <resPtsName> <ptsName> <tol3d>
Purifies point cloud by removing near-coincident points. The precision used for coincidence test is passed as <tol3d> argument.
re-sample-part
[link]
re-sample-part <res> <ustep> <vstep>
[-facets]
[-vertices]
Makes a point cloud by sampling CAD part.
re-set-patch-surf
[link]
re-set-patch-surf <patchName> <surfName>
Sets new surface for a patch with the given name.
re-set-patches-as-part
[link]
re-set-patches-as-part
Sets all available patches as a geometry of Part Node.
re-skin-surface
[link]
re-skin-surface <resSurf> <vDegree>
[-fair-isos <lambda>] <curveName1> ... <curveNameK>
Interpolates surface by skinning the passed B-curves.
re-smoothen-edges
[link]
re-smoothen-edges
Enables smoothing for all regular edges.
re-smoothen-regular-edges
[link]
re-smoothen-regular-edges
Finds all regular edges in the topology and enables smoothing mode for them.
re-topologize
[link]
re-topologize <numFaces> <projToler>
Attempts to topologize the active triangulation with the quads from the active tessellation.
re-update-plane
[link]
re-update-plane <plane>
Updates persistent plane w.r.t. interactive plane.
rebuild-bounds
[link]
rebuild-bounds
Rebuilds 3D representations of edges from their pcurves.
rebuild-edge
[link]
rebuild-edge {<edgeIndex> |
 -name <edgeName>}
Rebuilds edge with the given ID or name.
recognize-base-faces
[link]
recognize-base-faces
Recognizes all base faces, i.e., the faces where features may exist.
recognize-blends
[link]
recognize-blends
[-radius <r>]
[-fid <id>] [
{-ebf |
 -vbf}]
[-store
[-cdev <perc>]]
Recognizes all blend faces in the active part. The optional '-fid' key allows to specify the face ID to start recognition from. The optional '-radius' key allows to limit the recognized radius. The optional '-ebf|-vbf' keys allow finding the blend faces of a certain type (EBF = edge-blend face, VBF = vertex-blend face).

If the '-store' key is passed, the recognized blend chains will be stored as series of features under the Part Node. If this flag is supplemented with '-cdev' (chain deviation) flag, then the following <perc> value is used to regroup the fillet faces into the chains of equal radii.
recognize-cavities
[link]
recognize-cavities
[-size <maxSize>]
Recognizes arbitrary cavities in the active part. If the '-size' key is passed, it allows to limit the size of a cavity feature being recognized. The size is computed simply as the max dimension of the axis-aligned bounding box (AABB) of all feature faces. If the '-size' key is not passed or the <maxSize> value is zero, then no constraint on the feature size is imposed.

If the '-details' flag is passed, the result of recognition is printed to the logger in a more detailed way.
recognize-holes
[link]
recognize-holes
[-radius <r>]
Recognizes drilled holes.
recognize-hull
[link]
recognize-hull
[-toler <tol>]
[-num <numPts>]
[-draw]
[-rtcd]
Builds convex hull of the workpiece and selects all faces lying on it. Pass tolerance with the '-toler' keyword to specify the precision of PMC over the boundary. Use the '-num' keyword to specify the number of sampling points for the faces. Pass the '-draw' keyword to dump visual debugging entities, such as the convex hull, BVH, projection points, etc. Pass the '-rtcd' flag to draw halfspace planes
redo
[link]
redo
Redoes model changes.
reduce-step
[link]
reduce-step <inFlename> <outFilename>
Applies STEP reduction procedure developed by Seth Hillbrand for KICAD.
repair
[link]
repair
Performs automatic shape repair on the active part.
repair-shifted
[link]
repair-shifted
Performs automatic repair of shifted pcurves on the active part.
repatch
[link]
repatch [<fid1> [<fid2> [...]]]
[-lambda <coeff>]
Repatches faces which are selected interactively or specified as arguments (1-based face IDs).
reset-location
[link]
reset-location
Resets location associated with the part shape. If any planar face is selected, the part will be moved to the global origin, so that the local axes of the selected face match the global scene's axes.
rotate-qn
[link]
rotate-qn <Vx> <Vy> <Vz> <angleDeg>
Rotates CAD part applying the passed quaternion defined by the given axis of rotation (Vx, Vy, Vz) and the angle in degrees.
save-as
[link]
save-as <filename>
Saves model to file with the given name.
save-astra
[link]
save-astra
 -vars <name1> [name2]
 -filename <filename>
Saves curves and surfaces to ASTRA file.
save-brep
[link]
save-brep [<varName>] <filename>
Save active part or variable (if specified) to a BREP file with the given name.
save-dxf
[link]
save-dxf
[-var <var-name>]
 -filename <filename>
[-seglen <seglen>]
[-ver <ver>]
[-orient]
Exports the shape variable named <var-name> or the part shape to DXF file <filename>. Pass the <seglen> optional value to control the discretization of splines. Pass the <ver> optional value to specify the format version of DXF (14 is the default). If the '-orient' flag is passed, Analysis Situs will attempt to relocate the shape to the XOY plane.
save-facets-stl
[link]
save-facets-stl
 -filename <filename>
[-binary]
Exports the part shape's facets to STL file <filename>.
save-gltf
[link]
save-gltf
 -filename <filename>
Exports the part shape to glTF file <filename> with all assigned colors.
save-ply
[link]
save-ply <filename>
Exports data from triangulation node to PLY file <filename>.
save-step
[link]
save-step [<varName>] <filename>
Save active part or variable (if specified) to a STEP file with the given name.
save-stl
[link]
save-stl
 -filename <filename>
[-binary]
Exports data from triangulation node to STL file <filename>.
save-svg
[link]
save-svg
[-var <var-name>]
 -filename <filename>
Exports the part shape or the specified variable to SVG file <filename>.
save-xyz
[link]
save-xyz <varName> <filename>
Save (without metadata) selected points to a XYZ file with the given name.
select-edges
[link]
select-edges [<eid1> [<eid2> ...]]
Selects edges specified with their 1-based IDs or all edges.
select-faces
[link]
select-faces [<fid1> [<fid2> ...]]
Selects faces specified with their 1-based IDs or all faces.
select-vertices
[link]
select-vertices [<vid1> [<vid2> ...]]
Selects vertices specified with their 1-based IDs or all vertices.
set-as-part
[link]
set-as-part [<varName> |
 -node <id>
 -param <id>]
Sets the object with the given name as a part for analysis. The object is expected to exist as a topological item in the imperative plotter. Alternatively, you can specify a custom Node ID with its source Parameter ID storing the shape to transfer to the Part Node. The latter option is useful if your shape is not stored in the section of imperative plotter data (i.e., you use custom Node as storage).
set-as-triangulation
[link]
set-as-triangulation <varName>
Sets the object with the given name as the active triangulation.
set-as-var
[link]
set-as-var <varName>
Copies part shape to a topological variable.
set-edge-color
[link]
set-edge-color
[-eid id]
 -color rgb(<ured>, <ugreen>, <ublue>)
Sets color for the given edge.
set-face-color
[link]
set-face-color
[-fid id]
 -color rgb(<ured>, <ugreen>, <ublue>)
Sets color for the given face.
set-face-color-aag
[link]
set-face-color-aag
[-fid <id>]
 -color rgb(<ured>, <ugreen>, <ublue>)
Sets color for the given face as AAG attribute.
set-face-tolerance
[link]
set-face-tolerance <faceId> <toler>
Forces the face with the given index to have the passed tolerance. In OpenCascade, there is a rule that a tolerance of a face should not be greater than the tolerances of its edges (the same rule applies for edges and vertices). Therefore, this function updates tolerance not only for the face in question, but also for its sub-shapes.
set-part-color
[link]
set-part-color
 -color rgb(<ured>, <ugreen>, <ublue>)
Sets color for the part.
set-tolerance
[link]
set-tolerance <toler>
Forces the part to have the passed tolerance in all its sub-shapes.
set-topo-item-color
[link]
set-topo-item-color
 -name <name>
 -color rgb(<ured>, <ugreen>, <ublue>)
Sets color for the given topoItem.
sew
[link]
sew
[-toler <toler>]
Stitches faces of the active part using the passed tolerance <toler> that indicates the max allowed gaps between the edges. If no tolerance is passed, the default value 1.e-7 is used.
show
[link]
show <varName1> [<varName2> ...]
Shows the given object in its associated viewer.
show-aag
[link]
show-aag
[-remove-sel]
[-collapse-sel]
[-add-vertex-adj]
[-filename <json-filename>]
Visualizes AAG for the active part. If the '-remove-sel' flag is passed, the selected faces will be excluded from the AAG with all their incident arcs. If the '-collapse-sel' flag is passed, the AAG nodes of the selected faces will be collapsed while all neighbor relations will be transmitted to the surrounding nodes of the collapsed face.

If the '-add-vertex-adj' flag is passed, vertex-adjacency relations are added as AAG arcs for the faces having common vertices but no common edges.

Use the '-filename' option followed by a JSON filename to dump the visualized AAG with all applied modifiers (collapse, delete, added vertex-adjacency arcs) to a JSON file.
show-commands
[link]
show-commands
Opens UI dialog listing all available Tcl commands.
show-history
[link]
show-history
Shows modification history associated with the active part.
show-only
[link]
show-only [<varName1> [<varName2> ...]]
Shows only the given objects in their associated viewers. If no objects are passed, the working part will be exclusively shown.
sparse-point-cloud
[link]
sparse-point-cloud <name> <tol>
Sparses the point cloud with the name <name> using the given spatial tolerance <tol>.
split-by-continuity
[link]
split-by-continuity {c0 | c1} [<toler>]
Splits part by continuity.
split-closed
[link]
split-closed
Splits closed faces in the active part.
split-curve-bezier
[link]
split-curve-bezier <resName> <curveName>
Splits the passed B-curve <curveName> to a series of Bezier curves.
test
[link]
Test anything.
test-build-quick-hull
[link]
test-build-quick-hull <pointsName> <loc_x> <loc_y> <loc_z> <dir_x> <dir_y> <dir_z>
Build quick hull.
test-builder
[link]
test-builder
Reproducer for one issue with BRep_Builder.
test-check-mesh-aabb-dim
[link]
test-check-mesh-aabb-dim
 -xDim <xDim>
 -yDim <yDim>
 -zDim <zDim>
 -tol <tolerance>
Check dimensions of AABB of mesh.
test-check-number-mesh-entities
[link]
test-check-number-mesh-entities
 -nodes <nbNodes>
 -tri <nbTriangles>
Check number of mesh entities.
test-check-number-shape-entities
[link]
test-check-number-shape-entities
 -vertex <nbVertices>
 -edge <nbEdges>
 -wire <nbWires>
 -face <nbFaces>
 -shell <nbShells>
 -solid <nbsolids>
 -compsolid <nbCompsolids>
 -compound <nbCompound>
Check number of shape entities.
test-check-part-shape
[link]
test-check-part-shape
Checks part shape.
test-check-shape-aabb-dim
[link]
test-check-shape-aabb-dim
 -xDim <xDim>
 -yDim <yDim>
 -zDim <zDim>
 -tol <tolerance>
Check dimensions of AABB of mesh.
test-check-solids-volumes
[link]
test-check-solids-volumes <tolerance> <vol1> <vol2> <vol3> ...
Checks volumes of solids.
test-composite
[link]
test-composite
Constructs sample non-manifold CAD model.
test-coons1
[link]
test-coons1
Test for Coons patch.
test-coons2
[link]
test-coons2
Test for Coons patch.
test-dist
[link]
test-dist <surfName> <ustep> <vstep>
Test for distance evaluation.
test-eval-curve
[link]
test-eval-curve <curveName> <u> <num> <order>
[-mobius]
Evaluates curve <curveName> for the given parameter value <u>. If the '-mobius' keyword is used, evaluation is performed using Mobius functions. The argument <num> specifies how many iterations to use. This function is used to test performance of curve evaluation.
test-eval-surf
[link]
test-eval-surf <surfName> <u> <v> <num> <order>
[-mobius]
Evaluates surface <surfName> for the given parameter pair <u, v>. If the '-mobius' keyword is used, evaluation is performed using Mobius functions. The argument <num> specifies how many iterations to use. This function is used to test performance of surface evaluation.
test-fair
[link]
test-fair <fid>
Test for fairing function.
test-fibers
[link]
test-fibers
Tests fiber polyhedrization algorithm.
test-hexagon-bops
[link]
test-hexagon-bops
No arguments are expected. This command demonstrates solid Booleans of OpenCascade. It cuts many cylinders from a hexagonal prism.
test-hexagon-bops-faces
[link]
test-hexagon-bops-faces
No arguments are expected. This command demonstrates solid Booleans of OpenCascade. It cuts many circles from a hexagon and then constructs a prism.
test-ineq
[link]
test-ineq
Test for inequality solver.
test-make-triangulation-from-facets
[link]
test-make-triangulation-from-facets
Make triangulation from facets.
test-offset
[link]
test-offset
Constructs simple solid by offset.
test-pentagon
[link]
test-pentagon
No arguments are expected.
test-point-inversion1
[link]
test-point-inversion1
Test for point inversion.
test-skinning1
[link]
test-skinning1
Test for skinning.
test-transform-axes
[link]
test-transform-axes
Transforms axes 'B' to place them coincidently with axes 'A'.
test-transform-axes-dir
[link]
test-transform-axes-dir <xdir> <ydir> <zdir>
Transforms axes to have Z (main) direction collinear with the passed direction.
trim-curve
[link]
trim-curve <resName> <curveName> <u0> <u1>
Trims curve with the given name <curveName> by the passed parameter values <u0> and <u1>.
undo
[link]
undo
Undoes model changes.
unfreeze-viewer
[link]
unfreeze-viewer
Enables all events in the 3D viewer.
untrim-surf
[link]
untrim-surf
 -f <f1> [<f2> ...]
 -e <e1> <e2> [<e3> ...]
[-name <surfName>]
[-u <numIsosU>]
[-v <numIsosV>]
Untrims surface.
vglinfo
[link]
vglinfo
Prints information about OpenGL.
whatis
[link]
whatis <name>
Explains what is <name>.