Setup Object

Derived from: OperationBase Object
Defined in namespace "adsk::cam" and the header file is <Cam/CAM/Setup.h>

Description

Object that represents an existing Setup.

Methods

Name Description
activate Sets this object as the default container.
additiveContainerByType PreviewReturns the additive container with the specified type.
classType Static function that all classes support that returns the type of the class as a string. The returned string matches the string returned by the objectType property. For example if you have a reference to an object and you want to check if it's a SketchLine you can use myObject.objectType == fusion.SketchLine.classType().
copyAfter PreviewCreates a duplicate of the operation in the tree after the given operation. Throws an exception if a not allowed copy operation is made for example copying a operation out of a setup.
copyBefore PreviewCreates a duplicate of the operation in the tree before the given operation. Throws an exception if a not allowed copy operation is made for example copying a operation out of a setup.
copyInto PreviewCreates a duplicate of the operation into the given container. You can only copy into containers, such as setups or folders. Copied operation will be copied at the end of all operations already in the container. Throws an exception if a not allowed copy operation is made for example copying a setup into a setup.
createFromCAMTemplate **RETIRED** Create new operations, folders, or patterns from the specified CAMTemplate. They are added to the end of the parent setup.
createFromCAMTemplate2 Create new operations, folders, or patterns from the specified CAMTemplate. They are added to the end of the parent setup.
createFromTemplate **RETIRED** Create and add operations, folders or patterns from the specified template file to the end of this setup.
createFromTemplateXML **RETIRED** Create and add operations, folders or patterns from the specified template content XML to the end of this setup.
deleteMe Deletes the operation from the document. In case of a setup or folder, all containing child operations will be deleted as well. Note: Child classes may overwrite this function and throw an exception if the object cannot be deleted.
duplicate PreviewCreates a duplicate of the operation in the tree after the itself.
modifyUtility PreviewGet ModifyUtility for the current operation by given utility type.
moveAfter PreviewMove operation in tree after the given operation. Throws an exception if a not allowed move is made for example moving a operation out of a setup.
moveBefore PreviewMove operation in tree before the given operation. Throws an exception if a not allowed move is made for example moving a operation out of a setup.
moveInto PreviewMove operation in tree into the given container. This only works with setups, patterns and folders. Moved operation will be moved at the end of all operations already in the container. Throws an exception if a not allowed move is made for example moving a setup into a setup.

Properties

Name Description
allOperations Returns an ObjectCollection containing all of the operations in this setup. This includes all operations nested in folders and patterns.
attributes Returns the collection of attributes associated with this object.
children Returns a collection containing all of the immediate (top level) child operations, folders and patterns in this setup, in the order they appear in the browser.
error Returns a message corresponding to any active error associated with the value of this parameter.
fixtureEnabled Set this value to enable the use of fixtures for this setup. To then set the fixture models themselves use the `fixtures` property.
fixtures Gets and sets the fixtures associated with the setup. To be able to set models as fixtures, the fixturesEnabled property has to be set first.
folders Returns the Folders collection that provides access to existing folders in this setup.
generatedDataCollection PreviewGet the generated data associated with a given operation base instance. The type of data depends on the strategy type and might not be available for all strategy types. The available types can be found in GeneratedData.cs
hasError Gets if errors were encountered when generating the operation.
hasWarning Gets if problems were encountered when generating the operation.
isActive Gets if this setup is active.
isLightBulbOn PreviewGets if this operation is currently visible in the graphics window. Use the isLightBulbOn to change if the eye icon beside the operation node in the browser is on or not. Parent nodes in the browser can have their light bulb off which affects all of their children so this property does not indicate if the operation is actually visible, just that it should be visible if all of its parent nodes are also visible. Use the isVisible property to determine if it's actually visible.
isOptional Gets and sets the "Optional" property value of the operation. Gets/sets true if the operation is optional.
isProtected Gets and sets the "protected" property value of the operation. Gets/sets true if the operation is protected.
isSelected Gets if this operation is selected in the 'Setups' browser.
isSuppressed Gets and sets the "Suppressed" property value of the operation. Gets/sets true if the operation is suppressed.
isValid Indicates if this object is still valid, i.e. hasn't been deleted or some other action done to invalidate the reference.
isVisible PreviewGets if this operation is currently visible in the graphics window. Use the isLightBulbOn to change if the eye icon beside the operation node in the browser is on or not. Parent nodes in the browser can have their light bulb off which affects all of their children. This property indicates the final result and whether this operation is actually visible or not.
machine Gets and sets the Machine associated with the setup. The returned Machine is a transient copy, so the Machine needs to be set to the Setup again to apply any changes.
models Gets and sets the input models associated with the setup. Passing in an empty ObjectCollection will remove all current inputs. Valid collection items are Occurrence, BRepBody, or MeshBody.
name Gets and sets the name of the operation as seen in the browser. This name is unique as compared to the names of all other operations in the document.
notes Gets and sets the notes of the operation.
objectType This property is supported by all objects in the API and returns a string that contains the full name (namespace::objecttype) describing the type of the object.

It's often useful to use this in combination with the classType method to see if an object is a certain type. For example: if obj.objectType == adsk.core.Point3D.classType():
operationId Returns the id of the operation. This id is unique as compared to the ids of all other operations in the document. This id will not change when changing the order or parent of the operation. This id will remain valid when the document is saved and reloaded.
operations Returns the Operations collection that provides access to existing operations in this setup.
operationType Gets the Operation Type. It can be MillingOperation, TurningOperation, JetOperation or AdditiveOperation.
parameters Gets the CAMParameters collection for this operation.
parentSetup Gets the Setup this operation belongs to.
patterns Returns the Patterns collection that provides access to existing patterns in this setup.
printSetting Gets and sets the PrintSetting associated with the setup.
stockMaterial PreviewGets/ and sets the Stock material associated with the setup.
stockMode Gets and sets the bodies associated with the setup. Passing in an empty ObjectCollection will remove all current bodies. Valid input is MeshBody and/or BRepBody objects.
stockSolids Gets and sets the stock solids associated with the setup. StockMode has to be set to `SolidStock` otherwise this will throw an error.
strategy Gets the name of the strategy associated with this operation.
visibilityManager Visibility manager for this setup.
warning Returns a message corresponding to any active warning associated with the value of this parameter.
workCoordinateSystem Gets the Work Coordinate System associated with the setup as 4x4 matrix. From Matrix3D, Orientation and Origin data can be fetched.

Accessed From

CAMAdditiveContainer.parentSetup, CAMFolder.parentSetup, CAMHoleRecognition.parentSetup, CAMPattern.parentSetup, DocumentStockMaterialLibrary.setupsByStockMaterial, NCProgram.parentSetup, Operation.parentSetup, OperationBase.parentSetup, Setup.parentSetup, SetupChangeEventArgs.setup, SetupEventArgs.setup, Setups.add, Setups.item, Setups.itemByName, Setups.itemByOperationId

Samples

Name Description
Additive Manufacturing MJF API Sample

Demonstrates how to automate the creation of an additive MJF manufacturing setup and arrange components within the build volume of a 3D printer.

To run the sample script, have a design with one or more components open in Fusion’s DESIGN workspace. This script will switch the UI from the DESIGN workspace to the MANUFACTURE workspace, create a new Manufacturing Model, and create an Additive Arrange using that manufacturing model as an input.

The setup will select an MJF 3D printer from Fusion’s machine library and a print setting from the print setting library. All components in the Manufacturing model will be automatically arranged within the build volume of the selected MJF machine.

CAM Parameter Modification API Sample Demonstrates changing parameters of existing toolpaths.
Generate Setup Sheets API Sample Demonstrates generating the setup sheets for an existing toolpath..
Generate Toolpaths API Sample Demonstrates generating the toolpaths in the active document.
Hole and Pocket Recognition API Sample

This sample script demonstrates three different methods for feature recognition: one for holes and two for pockets.

The script starts by creating a simple component which is then used to demonstrate the three methods. After the features are recognised they are coloured and milling and drilling operations are created for each feature.

RecognizedHoleGroup returns a list of BRepFaces that can be used as selections for the drilling operation. RecognizedPocket and PocketRecognitionSelection do not return BRepFaces, and their output needs additional processing before the output can be used for creating machining operations.

The sample script demonstrates a couple of different methods, including finding the pocket BRepFaces and creating sketches from the recognized pockets.

This script works only if the Manufacturing Extension is active.

Manufacturing Workflow API Sample Manufacturing Workflow API Sample

This sample script starts by creating a simple component which is then used to describe a milling workflow. It creates a setup, a few operations, pick some tools from a Fusion sample tool library using loops and queries and ends up post-processing the operations out using an NC Program.

New CAM Operation API Sample Demonstrates adding a new toolpath into the document using an existing CAM template. You can get a sample template here. To use the sample, create a new design and add a block. Switch to the MANUFACTURE workspace and create a setup. Run the script and it will create a new facing operation in the setup.
Post Toolpaths API Sample Demonstrates posting toolpaths in the active document.

Version

Introduced in version January 2016