Subset Class — NXOpen Python API Reference 12.0.0 documentation

# Subset Class

class `NXOpen.Assemblies.``Subset`

  Bases: `NXOpen.NXObject`

  A subset is a set of design elements within a collaborative design.

  To create or edit an instance of this class, use `NXOpen.Assemblies.SubsetBuilder`

  New in version NX8.5.0.

# Properties

Property | Description
--- | ---
AllowMultipleTargetPartitions | Returns or sets the allow multiple target partitions property, if set to false (default) only first target partition will be considered
ComponentInWorkset | Returns the `NXOpen.Assemblies.Component` that corresponds to this subset in the workset `NXOpen.Assemblies.ComponentAssembly`.
Description | Returns the description of this subset.
DisplayExcludedDesignElements | Returns or sets the design elements excluded from spatial search to be displayed or not
IsOccurrence | Returns whether this object is an occurrence or not.
JournalIdentifier | Returns the identifier that would be recorded in a journal for this object.
Name | Returns the custom name of the object.
OwningComponent | Returns the owning component, if this object is an occurrence.
OwningPart | Returns the owning part of this object
PartitionViewStyle | Returns or sets the partition view style to show.
Prototype | Returns the prototype of this object if it is an occurrence.
ShowSubsetStructure | Returns or sets the subset structure to be shown or not.
SubsetType | Returns the type of plm object used to create subset.
Tag | Returns the Tag for this object.

# Methods

Method | Description
--- | ---
AddAllChildrenToSubset | Adds all the child components of the selected Reuse Design Element to the owning subset.
AddConnectedByElements | Add Elements to a subset that reference the existing Design Elements in it by a Connection relation.
AddDesignElementsToSubset | Adds the specified :py:class:`NXOpen.PDM.ModelElementRevision`s as members of the subset.
AddInterpartParents | Add sources of interpart relationships (wave links in the subset and Connected To relationships for design features) that are not in the specified subset to the subset recipe.
AddNewChildrenToSubset | If the Reuse Design Elements in the subset contain any new components which were not added to the subset because its owning workset was not the displayed part at the time of creation, then add those new components to the subset now.
CanReplaceContentDefinition | Checks if the `NXOpen.ContentDefinition` object on the Subset can be replaced with the specified `NXOpen.ContentDefinition` object.
CreateAttributeIterator | Create an attribute iterator
DeleteAllAttributesByType | Deletes all attributes of a specific type.
DeleteAttributeByTypeAndTitle | Deletes an attribute by type and title.
DeleteFromCollaborativeDesign | Deletes the design elements from the owning `NXOpen.CollaborativeDesign`.
DeletePositioningTask | Deletes the `NXOpen.Assemblies.PositioningTask` from this subset.
DeleteUserAttribute | Deletes the first attribute encountered with the given Type, Title.
DeleteUserAttributes | Deletes the attributes on the object, if any, that satisfy the given iterator
FindObject | Finds the `NXOpen.NXObject` with the given identifier as recorded in a journal.
GetAllPositioningTasks | Gets all `NXOpen.Assemblies.PositioningTask` that belong to this subset.
GetAttributeTitlesByType | Gets all the attribute titles of a specific type.
GetBooleanUserAttribute | Gets a boolean attribute by Title and array Index.
GetComputationalTimeUserAttribute | Gets a time attribute by Title and array Index.
GetDesignElementRevisionMembers | The :py:class:`NXOpen.PDM.DesignElementRevision`s that are members of this subset.
GetDesignElementRevisionParents | The `NXOpen.PDM.DesignElementRevision`s that have been loaded because they contain a :py:class:`NXOpen.PDM.DesignSubordinateRevision` that belongs to this subset.
GetDesignSubordinateRevisionMembers | The :py:class:`NXOpen.PDM.DesignSubordinateRevision`s that are members of this subset.
GetDesignSubordinateRevisionParents | The `NXOpen.PDM.DesignSubordinateRevision`s that have been loaded because they contain a :py:class:`NXOpen.PDM.DesignSubordinateRevision` that belongs to this subset.
GetIntegerAttribute | Gets an integer attribute by title.
GetIntegerUserAttribute | Gets an integer attribute by Title and array Index.
GetNextUserAttribute | Gets the next attribute encountered on the object, if any, that satisfies the given iterator.
GetPdmReferenceAttributeValue | Gets the value of PDM Reference attribute for given object.
GetRealAttribute | Gets a real attribute by title.
GetRealUserAttribute | Gets a real attribute by Title and array Index.
GetReferenceAttribute | Gets the reference string (not the calculated value) of a string attribute that uses a reference string.
GetStringAttribute | Gets a string attribute value by title.
GetStringUserAttribute | Gets a string attribute by Title and array Index.
GetTargetPartitionSet | Gets the list of array of target partitions that are set on the subsetInstance
GetTimeAttribute | Gets a time attribute by title.
GetTimeUserAttribute | Gets a time attribute by Title and array Index.
GetUserAttribute | Gets the first attribute encountered on the object, if any, with a given Title, Type and array Index.
GetUserAttributeAsString | Gets the first attribute encountered on the object, if any, with a given title, type and array index.
GetUserAttributeCount | Gets the count of set attributes on the object, if any, that satisfy the given iterator.
GetUserAttributeLock | Determine the lock of the given attribute.
GetUserAttributeSize | Gets the size of the first attribute encountered on the object, if any, with a given Title and Type.
GetUserAttributeSourceObjects | Returns an array of objects from which this object presents attributes.
GetUserAttributes | Gets all the attributes that have been set on the given object, if any, that satisfy the given iterator.
GetUserAttributesAsStrings | Gets all the attributes that have been set on the given object.
HasUserAttribute | Determines if an attribute exists on the object, that satisfies the given iterator
HideCollaborativeDesignPreview | Hides the preview for the Collaborative Design in the graphics window if it was already displayed.
IsCollaborativeDesignPreviewDisplayed | Is the preview for the Collaborative Design being displayed in the Graphics window.
Print | Prints a representation of this object to the system log file.
RemoveDesignElements | Removes the design elements from this subset.
ReplaceContentDefinition | Replace the `NXOpen.ContentDefinition` object on the Subset.
ReplayRecipe | Replay this subset.
SetAttribute | Creates or modifies an integer attribute.
SetBooleanUserAttribute | Creates or modifies a boolean attribute with the option to update or not.
SetContentDefinition | Set a new `NXOpen.ContentDefinition` object on the Subset.
SetName | Sets the custom name of the object.
SetPdmReferenceAttribute | Sets the value of PDM Reference attribute on the object.
SetReferenceAttribute | Creates or modifies a string attribute which uses a reference string.
SetTargetPartitionSet | Sets the list of array of target partitions on the subsetInstance
SetTimeAttribute | Creates or modifies a time attribute.
SetTimeUserAttribute | Creates or modifies a time attribute with the option to update or not.
SetUserAttribute | Creates or modifies an attribute with the option to update or not.
SetUserAttributeLock | Lock or unlock the given attribute.
ShowCollaborativeDesignPreview | Displays the preview for the Collaborative Design in the graphics window.

# Enumerations

SubsetContentType Enumeration | Represents the content type for a subset.
SubsetPartitionViewStyleType Enumeration | Represents the type of partition view style to show for a subset.

# Property Detail

## AllowMultipleTargetPartitions

`Subset.``AllowMultipleTargetPartitions`

  Returns or sets the allow multiple target partitions property, if set to false (default) only first target partition will be considered

  `-------------------------------------`

  Getter Method

  Signature `AllowMultipleTargetPartitions`

  Returns: |
  Return type: | bool

  New in version NX12.0.0.

  License requirements: nx_4gd_integration (“4th Generation Design”)

  `-------------------------------------`

  Setter Method

  Signature `AllowMultipleTargetPartitions`

  Parameters: | allowMultiplePartitions (bool) –

  New in version NX12.0.0.

  License requirements: nx_4gd_integration (“4th Generation Design”)

## ComponentInWorkset

`Subset.``ComponentInWorkset`

  Returns the `NXOpen.Assemblies.Component` that corresponds to this subset in the workset `NXOpen.Assemblies.ComponentAssembly`.

  `-------------------------------------`

  Getter Method

  Signature `ComponentInWorkset`

  Returns: |
  Return type: | `NXOpen.Assemblies.Component`

  New in version NX8.5.0.

  License requirements: nx_4gd_integration (“4th Generation Design”)

## Description

`Subset.``Description`

  Returns the description of this subset.

  `-------------------------------------`

  Getter Method

  Signature `Description`

  Returns: |
  Return type: | str

  New in version NX8.5.0.

  License requirements: nx_4gd_integration (“4th Generation Design”)

## DisplayExcludedDesignElements

`Subset.``DisplayExcludedDesignElements`

  Returns or sets the design elements excluded from spatial search to be displayed or not

  `-------------------------------------`

  Getter Method

  Signature `DisplayExcludedDesignElements`

  Returns: |
  Return type: | bool

  New in version NX10.0.0.

  License requirements: nx_4gd_integration (“4th Generation Design”)

  `-------------------------------------`

  Setter Method

  Signature `DisplayExcludedDesignElements`

  Parameters: | displayExcluded (bool) –

  New in version NX10.0.0.

  License requirements: nx_4gd_integration (“4th Generation Design”)

## IsOccurrence

`Subset.``IsOccurrence`

  Returns whether this object is an occurrence or not.

  `-------------------------------------`

  Getter Method

  Signature `IsOccurrence`

  Returns: | This object is an occurrence
  Return type: | bool

  New in version NX3.0.0.

  License requirements: None.

## JournalIdentifier

`Subset.``JournalIdentifier`

  Returns the identifier that would be recorded in a journal for this object.

  This may not be the same across different releases of the software.

  `-------------------------------------`

  Getter Method

  Signature `JournalIdentifier`

  Returns: |
  Return type: | str

  New in version NX3.0.0.

  License requirements: None.

## Name

`Subset.``Name`

  Returns the custom name of the object.

  `-------------------------------------`

  Getter Method

  Signature `Name`

  Returns: |
  Return type: | str

  New in version NX3.0.0.

  License requirements: None.

## OwningComponent

`Subset.``OwningComponent`

  Returns the owning component, if this object is an occurrence.

  `-------------------------------------`

  Getter Method

  Signature `OwningComponent`

  Returns: |
  Return type: | `NXOpen.Assemblies.Component`

  New in version NX3.0.0.

  License requirements: None.

## OwningPart

`Subset.``OwningPart`

  Returns the owning part of this object

  `-------------------------------------`

  Getter Method

  Signature `OwningPart`

  Returns: | The owning part of this object or null if it does not have an owner
  Return type: | `NXOpen.BasePart`

  New in version NX3.0.0.

  License requirements: None.

## PartitionViewStyle

`Subset.``PartitionViewStyle`

  Returns or sets the partition view style to show.

  `-------------------------------------`

  Getter Method

  Signature `PartitionViewStyle`

  Returns: |
  Return type: | `NXOpen.Assemblies.SubsetPartitionViewStyleType`

  New in version NX9.0.0.

  License requirements: nx_4gd_integration (“4th Generation Design”)

  `-------------------------------------`

  Setter Method

  Signature `PartitionViewStyle`

  Parameters: | partitionViewStyle (`NXOpen.Assemblies.SubsetPartitionViewStyleType`) –

  New in version NX9.0.0.

  License requirements: nx_4gd_integration (“4th Generation Design”)

## Prototype

`Subset.``Prototype`

  Returns the prototype of this object if it is an occurrence.

  `-------------------------------------`

  Getter Method

  Signature `Prototype`

  Returns: | The prototype of this object or null if this object is not an occurrence
  Return type: | `NXOpen.INXObject`

  New in version NX3.0.0.

  License requirements: None.

## ShowSubsetStructure

`Subset.``ShowSubsetStructure`

  Returns or sets the subset structure to be shown or not.

  `-------------------------------------`

  Getter Method

  Signature `ShowSubsetStructure`

  Returns: |
  Return type: | bool

  New in version NX9.0.0.

  License requirements: nx_4gd_integration (“4th Generation Design”)

  `-------------------------------------`

  Setter Method

  Signature `ShowSubsetStructure`

  Parameters: | showSubsetStructure (bool) –

  New in version NX9.0.0.

  License requirements: nx_4gd_integration (“4th Generation Design”)

## SubsetType

`Subset.``SubsetType`

  Returns the type of plm object used to create subset.

  `-------------------------------------`

  Getter Method

  Signature `SubsetType`

  Returns: |
  Return type: | `NXOpen.Assemblies.SubsetContentType`

  New in version NX11.0.0.

  License requirements: nx_4gd_integration (“4th Generation Design”)

# Method Detail

## AddAllChildrenToSubset

`Subset.``AddAllChildrenToSubset`

  Adds all the child components of the selected Reuse Design Element to the owning subset.

  Signature `AddAllChildrenToSubset(reuseDesignElements)`

  Parameters: | reuseDesignElements (list of `NXOpen.Assemblies.Component`) –

  New in version NX8.5.0.

  License requirements: nx_4gd_integration (“4th Generation Design”)

## AddConnectedByElements

`Subset.``AddConnectedByElements`

  Add Elements to a subset that reference the existing Design Elements in it by a Connection relation.

  A typical example will be to add Weld Design Features that reference any of the Design Elements in this subset. The recipe will be modified and explicit include terms will be added for each Element. The modified recipe will be replayed at the end of the operation. See `NXOpen.Assemblies.Subset.AddInterpartParents()`”

  Signature `AddConnectedByElements()`

  New in version NX8.5.1.

  License requirements: nx_4gd_integration (“4th Generation Design”)

## AddDesignElementsToSubset

`Subset.``AddDesignElementsToSubset`

  Adds the specified :py:class:`NXOpen.PDM.ModelElementRevision`s as members of the subset.

  The subset recipe will be edited to include these elements with explicit include terms. A replay of the entire recipe will not be performed. The specified elements will be appended to the subset. See `NXOpen.Assemblies.Subset.ReplayRecipe()`

  Signature `AddDesignElementsToSubset(designElements)`

  Parameters: | designElements (list of `NXOpen.PDM.ModelElementRevision`) –
  Returns: |
  Return type: | `NXOpen.PartLoadStatus`

  New in version NX11.0.0.

  License requirements: nx_4gd_integration (“4th Generation Design”)

## AddInterpartParents

`Subset.``AddInterpartParents`

  Add sources of interpart relationships (wave links in the subset and Connected To relationships for design features) that are not in the specified subset to the subset recipe.

  The recipe will be modified and explicit include terms will be added for each parent. The modified recipe will be replayed at the end of the operation.

  Signature `AddInterpartParents()`

  New in version NX8.5.0.

  License requirements: nx_4gd_integration (“4th Generation Design”)

## AddNewChildrenToSubset

`Subset.``AddNewChildrenToSubset`

  If the Reuse Design Elements in the subset contain any new components which were not added to the subset because its owning workset was not the displayed part at the time of creation, then add those new components to the subset now.

  Signature `AddNewChildrenToSubset()`

  New in version NX8.5.0.

  License requirements: nx_4gd_integration (“4th Generation Design”)

## CanReplaceContentDefinition

`Subset.``CanReplaceContentDefinition`

  Checks if the `NXOpen.ContentDefinition` object on the Subset can be replaced with the specified `NXOpen.ContentDefinition` object.

  Signature `CanReplaceContentDefinition(contentDefinition)`

  Parameters: | contentDefinition (`NXOpen.ContentDefinition`) –
  Returns: |
  Return type: | bool

  New in version NX11.0.0.

  License requirements: nx_4gd_integration (“4th Generation Design”)

## DeleteFromCollaborativeDesign

`Subset.``DeleteFromCollaborativeDesign`

  Deletes the design elements from the owning `NXOpen.CollaborativeDesign`.

  Signature `DeleteFromCollaborativeDesign(designElement)`

  Parameters: | designElement (list of `NXOpen.NXObject`) –

  New in version NX8.5.0.

  License requirements: nx_4gd_integration (“4th Generation Design”)

## DeletePositioningTask

`Subset.``DeletePositioningTask`

  Deletes the `NXOpen.Assemblies.PositioningTask` from this subset.

  Signature `DeletePositioningTask(positioningTask)`

  Parameters: | positioningTask (`NXOpen.Assemblies.PositioningTask`) –

  New in version NX10.0.0.

  License requirements: nx_4gd_integration (“4th Generation Design”)

## FindObject

`Subset.``FindObject`

  Finds the `NXOpen.NXObject` with the given identifier as recorded in a journal.

  An object may not return the same value as its JournalIdentifier in different versions of the software. However newer versions of the software should find the same object when FindObject is passed older versions of its journal identifier. In general, this method should not be used in handwritten code and exists to support record and playback of journals.

  An exception will be thrown if no object can be found with the given journal identifier.

  Signature `FindObject(journalIdentifier)`

  Parameters: | journalIdentifier (str) – Journal identifier of the object
  Returns: |
  Return type: | `NXOpen.INXObject`

  New in version NX3.0.0.

  License requirements: None.

## GetAllPositioningTasks

`Subset.``GetAllPositioningTasks`

  Gets all `NXOpen.Assemblies.PositioningTask` that belong to this subset.

  Signature `GetAllPositioningTasks()`

  Returns: |
  Return type: | list of `NXOpen.Assemblies.PositioningTask`

  New in version NX10.0.0.

  License requirements: None.

## GetDesignElementRevisionMembers

`Subset.``GetDesignElementRevisionMembers`

  The :py:class:`NXOpen.PDM.DesignElementRevision`s that are members of this subset.

  Note that this does not include elements that have been loaded only because they contain a `NXOpen.PDM.DesignSubordinateRevision` that belongs to this subset. See `GetDesignElementRevisionParents()`

  Signature `GetDesignElementRevisionMembers()`

  Returns: |
  Return type: | list of `NXOpen.PDM.DesignElementRevision`

  New in version NX8.5.0.

  License requirements: nx_4gd_integration (“4th Generation Design”)

## GetDesignElementRevisionParents

`Subset.``GetDesignElementRevisionParents`

  The `NXOpen.PDM.DesignElementRevision`s that have been loaded because they contain a :py:class:`NXOpen.PDM.DesignSubordinateRevision` that belongs to this subset.

  Signature `GetDesignElementRevisionParents()`

  Returns: |
  Return type: | list of `NXOpen.PDM.DesignElementRevision`

  New in version NX8.5.0.

  License requirements: nx_4gd_integration (“4th Generation Design”)

## GetDesignSubordinateRevisionMembers

`Subset.``GetDesignSubordinateRevisionMembers`

  The :py:class:`NXOpen.PDM.DesignSubordinateRevision`s that are members of this subset.

  Note that this does not include elements that have been loaded only because they contain a `NXOpen.PDM.DesignSubordinateRevision` that belongs to this subset. See `GetDesignSubordinateRevisionParents()`

  Signature `GetDesignSubordinateRevisionMembers()`

  Returns: |
  Return type: | list of `NXOpen.PDM.DesignSubordinateRevision`

  New in version NX8.5.0.

  License requirements: nx_4gd_integration (“4th Generation Design”)

## GetDesignSubordinateRevisionParents

`Subset.``GetDesignSubordinateRevisionParents`

  The `NXOpen.PDM.DesignSubordinateRevision`s that have been loaded because they contain a :py:class:`NXOpen.PDM.DesignSubordinateRevision` that belongs to this subset.

  Signature `GetDesignSubordinateRevisionParents()`

  Returns: |
  Return type: | list of `NXOpen.PDM.DesignSubordinateRevision`

  New in version NX8.5.0.

  License requirements: nx_4gd_integration (“4th Generation Design”)

## GetTargetPartitionSet

`Subset.``GetTargetPartitionSet`

  Gets the list of array of target partitions that are set on the subsetInstance

  Signature `GetTargetPartitionSet()`

  Returns: |
  Return type: | list of `NXOpen.Assemblies.Partition`

  New in version NX12.0.0.

  License requirements: nx_4gd_integration (“4th Generation Design”)

## HideCollaborativeDesignPreview

`Subset.``HideCollaborativeDesignPreview`

  Hides the preview for the Collaborative Design in the graphics window if it was already displayed.

  See `ShowCollaborativeDesignPreview()`.

  Signature `HideCollaborativeDesignPreview()`

  New in version NX8.5.1.

  License requirements: nx_4gd_integration (“4th Generation Design”)

## IsCollaborativeDesignPreviewDisplayed

`Subset.``IsCollaborativeDesignPreviewDisplayed`

  Is the preview for the Collaborative Design being displayed in the Graphics window.

  Signature `IsCollaborativeDesignPreviewDisplayed()`

  Returns: |
  Return type: | bool

  New in version NX8.5.1.

  License requirements: nx_4gd_integration (“4th Generation Design”)

## Print

`Subset.``Print`

  Prints a representation of this object to the system log file.

  Signature `Print()`

  New in version NX3.0.0.

  License requirements: None.

## RemoveDesignElements

`Subset.``RemoveDesignElements`

  Removes the design elements from this subset.

  This will not delete the design element from the owning `NXOpen.CollaborativeDesign`.

  Signature `RemoveDesignElements(designElements)`

  Parameters: | designElements (list of `NXOpen.NXObject`) –

  New in version NX8.5.0.

  License requirements: nx_4gd_integration (“4th Generation Design”)

## ReplaceContentDefinition

`Subset.``ReplaceContentDefinition`

  Replace the `NXOpen.ContentDefinition` object on the Subset.

  Signature `ReplaceContentDefinition(contentDefinition)`

  Parameters: | contentDefinition (`NXOpen.ContentDefinition`) –

  New in version NX11.0.0.

  License requirements: nx_4gd_integration (“4th Generation Design”)

## ReplayRecipe

`Subset.``ReplayRecipe`

  Replay this subset.

  This will perform a search using the current subset recipe and configuration. The contents of the subset will be changed accordingly.

  Signature `ReplayRecipe()`

  New in version NX8.5.0.

  License requirements: nx_4gd_integration (“4th Generation Design”)

## SetContentDefinition

`Subset.``SetContentDefinition`

  Set a new `NXOpen.ContentDefinition` object on the Subset.

  Signature `SetContentDefinition(contentDefinition)`

  Parameters: | contentDefinition (`NXOpen.ContentDefinition`) –

  New in version NX11.0.0.

  License requirements: nx_4gd_integration (“4th Generation Design”)

## SetName

`Subset.``SetName`

  Sets the custom name of the object.

  NOTE: This method should not be used to edit a read-only object such as a Mirrored PMI object. If it is, the changes will be overridden when the part is updated.

  Signature `SetName(name)`

  Parameters: | name (str) –

  New in version NX3.0.0.

  License requirements: None.

## SetTargetPartitionSet

`Subset.``SetTargetPartitionSet`

  Sets the list of array of target partitions on the subsetInstance

  Signature `SetTargetPartitionSet(partitions)`

  Parameters: | partitions (list of `NXOpen.Assemblies.Partition`) –

  New in version NX12.0.0.

  License requirements: nx_4gd_integration (“4th Generation Design”)

## ShowCollaborativeDesignPreview

`Subset.``ShowCollaborativeDesignPreview`

  Displays the preview for the Collaborative Design in the graphics window.

  The preview is stored as a JT dataset on the Collaborative Design. Any transformation specific to this subset will also be applied to the preview. isPreviewAvailable will be false if no JT dataset could be found. See `HideCollaborativeDesignPreview()`.

  Signature `ShowCollaborativeDesignPreview()`

  Returns: |
  Return type: | bool

  New in version NX8.5.1.

  License requirements: nx_4gd_integration (“4th Generation Design”)