NX Open C++ Reference Guide
Public Types | Public Member Functions | List of all members
NXOpen::MechanicalRouting::PartPlacementBuilder Class Reference

Represents NXOpen::MechanicalRouting::PartPlacementBuilder . More...

Inheritance diagram for NXOpen::MechanicalRouting::PartPlacementBuilder:
NXOpen::Builder NXOpen::TaggedObject NXOpen::GeometricUtilities::IComponentBuilder

Public Types

enum  PlacementValidationStatus { PlacementValidationStatusSuccess, PlacementValidationStatusPartNotConnectedToRout }
 The placement validation status
Created in NX11.0.0. More...
 
enum  PositionAsType { PositionAsTypeRouting, PositionAsTypeEquipment }
 The positioning types
Created in NX11.0.0. More...
 

Public Member Functions

void AutoAssignAttributes ()
 Auto assign the auto assignable attributes of all PDM::LogicalObject s that were created during part placement operation. More...
 
NXOpen::MechanicalRouting::PartPlacementBuilder::PlacementValidationStatus CommitThisPlacement ()
 Commits the current placement operation. More...
 
NXOpen::Routing::RouteObjectCollectorComponentsToEditCollector ()
 Returns the NXOpen::Routing::RouteObjectCollector that collects components to edit
Created in NX12.0.0. More...
 
NXOpen::Assemblies::ComponentCreatePartOccurrenceToPlace (const NXString &referenceSet, int layer)
 Creates the Assemblies::Component for part to place with given reference set and layer. More...
 
NXOpen::Assemblies::ComponentCreatePartOccurrenceToPlace (const char *referenceSet, int layer)
 Creates the Assemblies::Component for part to place with given reference set and layer. More...
 
NXOpen::Routing::PortGetCoincidentPortForCompatibility (NXOpen::Routing::Port *portFromPlacedPart)
 Get compatibility port from port of placed part (ex in case of Valve-Flange get corresponding coincident Flange port from Valve port) More...
 
int GetErrorCodeForPlacementSolution (NXOpen::Placement::PlacementSolution *placementSolution)
 Returns the error code for a placement solution. More...
 
std::vector
< NXOpen::Placement::PlacementSolution * > 
GetFilteredPlacementSolutions ()
 Filters placement solutions based existing filtration flags in builder ex. More...
 
void GetLogicalObjects (std::vector< NXOpen::PDM::LogicalObject * > &logicalObjects)
 Returns the PDM::LogicalObject s that were created during part placement operation. More...
 
void GetLogicalObjectsHavingUnassignedRequiredAttributes (std::vector< NXOpen::PDM::LogicalObject * > &logicalObjects)
 Returns the PDM::LogicalObject s having unassigned non-auto-assignable required attributes. More...
 
NXOpen::Routing::PortGetPortAtCutSideOfElbow ()
 Get the port from cut side of cut elbow. More...
 
NXOpen::Placement::PlacementEngineBuilderInitializePlacementEngineBuilder ()
 Initializes the Placement Engine builder with input already present in the Part Placement Builder. More...
 
NXOpen::BasePartLoadPart ()
 Loads the BasePart to place. More...
 
NXOpen::NXObjectLogicalDesignObject ()
 Returns the mapping logical design object
Created in NX11.0.0. More...
 
void PreCommitThisPlacement ()
 Pre commits the current placement operation to prepare data (ex. More...
 
void PrepareDataForConnectivity ()
 Prepare data to build connectivity for all placed parts. More...
 
std::vector
< NXOpen::Assemblies::Component * > 
ProcessCompatibilityPostPlaceParts ()
 Process the compatibility post placement parts (ex. More...
 
void ProcessComponentsForEdit ()
 Processes the Assemblies::Component s to edit their placement
Created in NX12.0.0. More...
 
void ProcessPlacedPart ()
 Processes the placed part. More...
 
std::vector
< NXOpen::Assemblies::Component * > 
ProcessPostPlaceParts ()
 Process the post placement parts (ex. More...
 
void RotatePlaceableObjectByAngle (double rotationAngle)
 Rotates the fitting by the specified angle along the plane perpendicular to the vector defined by the engaged port. More...
 
void SetAddUnconnectedEquipmentToActiveRunOption (bool canAddEquipmentToActiveRun)
 Sets the option that determines whether a part positioned as Equipment should be added to the active Run
Created in NX11.0.0. More...
 
void SetClassificationObjectIdentifier (const NXString &classificationObjectId)
 Sets the identifier of the classification object associated with the part to place
Created in NX11.0.0. More...
 
void SetClassificationObjectIdentifier (const char *classificationObjectId)
 Sets the identifier of the classification object associated with the part to place
Created in NX11.0.0. More...
 
void SetClassificationObjectIdentifierOfCompatibilityPart (NXOpen::Routing::ReuseLibrary::PartType ccType, const NXString &classificationObjectId, NXOpen::Routing::Port *portOne, NXOpen::Routing::Port *portTwo)
 Sets the identifier of the classification object associated with the compatibility part to post place
Created in NX12.0.0. More...
 
void SetClassificationObjectIdentifierOfCompatibilityPart (NXOpen::Routing::ReuseLibrary::PartType ccType, const char *classificationObjectId, NXOpen::Routing::Port *portOne, NXOpen::Routing::Port *portTwo)
 Sets the identifier of the classification object associated with the compatibility part to post place
Created in NX12.0.0. More...
 
void SetClassificationObjectIdentifierOfPartToPostPlace (const NXString &classificationObjectId)
 Sets the identifier of the classification object associated with the part to be post placed. More...
 
void SetClassificationObjectIdentifierOfPartToPostPlace (const char *classificationObjectId)
 Sets the identifier of the classification object associated with the part to be post placed. More...
 
void SetFileSpecificationOfPartToPlace (const NXString &filename)
 Sets the file specification of the part to place
Created in NX11.0.0. More...
 
void SetFileSpecificationOfPartToPlace (const char *filename)
 Sets the file specification of the part to place
Created in NX11.0.0. More...
 
void SetLogicalDesignObject (NXOpen::NXObject *logicalDesignObject)
 Sets the mapping logical design object
Created in NX11.0.0. More...
 
void SetPortOfPlaceableObject (NXOpen::TaggedObject *sourcePortObject)
 Sets the port for filtration from the part being placed. More...
 
void SetPositionAsOption (NXOpen::MechanicalRouting::PartPlacementBuilder::PositionAsType positioningType)
 Sets the positioning option NXOpen::MechanicalRouting::PartPlacementBuilder::PositionAsType on the builder. More...
 
void SetPrimarySolutionsFlag (bool showPrimarySolutions)
 Sets the primary solutions flag on builder. More...
 
void SetReferenceObjectForPlacement (NXOpen::TaggedObject *referenceObject, const NXOpen::Point3d &referencePositionPoint)
 Sets the reference object and reference location for placement. More...
 
void UpdateLayer (int layerNumber)
 Updates the layer for the Design Elements created during part placement operation. More...
 
void UpdateReferenceSet (const NXString &referenseSetName)
 Updates the reference set for the Design Elements created during part placement operation. More...
 
void UpdateReferenceSet (const char *referenseSetName)
 Updates the reference set for the Design Elements created during part placement operation. More...
 
- Public Member Functions inherited from NXOpen::Builder
NXOpen::NXObjectCommit ()
 Commits any edits that have been applied to the builder. More...
 
void Destroy ()
 Deletes the builder, and cleans up any objects created by the builder. More...
 
std::vector< NXOpen::NXObject * > GetCommittedObjects ()
 For builders that create more than one object, this method returns the objects that are created by commit. More...
 
NXOpen::NXObjectGetObject ()
 Returns the object currently being edited by this builder. More...
 
void ShowResults ()
 Updates the model to reflect the result of an edit to the model for all builders that support showing results. More...
 
virtual bool Validate ()
 Validate whether the inputs to the component are sufficient for commit to be called. More...
 
- Public Member Functions inherited from NXOpen::TaggedObject
tag_t Tag () const
 Returns the tag of this object. More...
 

Detailed Description

Represents NXOpen::MechanicalRouting::PartPlacementBuilder .


To create a new instance of this class, use NXOpen::MechanicalRouting::BuilderFactory::CreatePartPlacementBuilder

Created in NX11.0.0.

Member Enumeration Documentation

The placement validation status
Created in NX11.0.0.


Enumerator
PlacementValidationStatusSuccess 

part placement is successful as expected

PlacementValidationStatusPartNotConnectedToRout 

after placement connection should have been built with routing system but it was not

The positioning types
Created in NX11.0.0.


Enumerator
PositionAsTypeRouting 

position as inline routing fitting

PositionAsTypeEquipment 

position as equipment

Member Function Documentation

void NXOpen::MechanicalRouting::PartPlacementBuilder::AutoAssignAttributes ( )

Auto assign the auto assignable attributes of all PDM::LogicalObject s that were created during part placement operation.


Created in NX11.0.0.

License requirements : routing_base ("Routing Basic")

NXOpen::MechanicalRouting::PartPlacementBuilder::PlacementValidationStatus NXOpen::MechanicalRouting::PartPlacementBuilder::CommitThisPlacement ( )

Commits the current placement operation.

This method must be called after calling method MechanicalRouting::PartPlacementBuilder::PreCommitThisPlacement . This method returns NXOpen::MechanicalRouting::PartPlacementBuilder::PlacementValidationStatus value

Returns

Created in NX11.0.0.

License requirements : routing_base ("Routing Basic")
NXOpen::Routing::RouteObjectCollector* NXOpen::MechanicalRouting::PartPlacementBuilder::ComponentsToEditCollector ( )

Returns the NXOpen::Routing::RouteObjectCollector that collects components to edit
Created in NX12.0.0.



License requirements : routing_base ("Routing Basic")

NXOpen::Assemblies::Component* NXOpen::MechanicalRouting::PartPlacementBuilder::CreatePartOccurrenceToPlace ( const NXString referenceSet,
int  layer 
)

Creates the Assemblies::Component for part to place with given reference set and layer.

The created component will be used to generate placement solutions. Error will be raised if part to place is not loaded.

Returns
created part occurrence
Created in NX11.0.0.

License requirements : routing_base ("Routing Basic")
Parameters
referenceSetreference set to apply on part occurrence
layerlayer
NXOpen::Assemblies::Component* NXOpen::MechanicalRouting::PartPlacementBuilder::CreatePartOccurrenceToPlace ( const char *  referenceSet,
int  layer 
)

Creates the Assemblies::Component for part to place with given reference set and layer.

The created component will be used to generate placement solutions. Error will be raised if part to place is not loaded.

Returns
created part occurrence
Created in NX11.0.0.

License requirements : routing_base ("Routing Basic")
Parameters
referenceSetreference set to apply on part occurrence
layerlayer
NXOpen::Routing::Port* NXOpen::MechanicalRouting::PartPlacementBuilder::GetCoincidentPortForCompatibility ( NXOpen::Routing::Port portFromPlacedPart)

Get compatibility port from port of placed part (ex in case of Valve-Flange get corresponding coincident Flange port from Valve port)

Returns
Other port at the intersection where compatible part needs to be placed.
Created in NX12.0.0.

License requirements : routing_base ("Routing Basic")
Parameters
portFromPlacedPartportfromplacedpart
int NXOpen::MechanicalRouting::PartPlacementBuilder::GetErrorCodeForPlacementSolution ( NXOpen::Placement::PlacementSolution placementSolution)

Returns the error code for a placement solution.

A non-zero error code may suggest whether there will be any design rule validation due to the given placement solution.

Returns

Created in NX11.0.0.

License requirements : routing_base ("Routing Basic")
Parameters
placementSolutionplacementsolution
std::vector<NXOpen::Placement::PlacementSolution *> NXOpen::MechanicalRouting::PartPlacementBuilder::GetFilteredPlacementSolutions ( )

Filters placement solutions based existing filtration flags in builder ex.

primary.

Returns

Created in NX11.0.0.

License requirements : routing_base ("Routing Basic")
void NXOpen::MechanicalRouting::PartPlacementBuilder::GetLogicalObjects ( std::vector< NXOpen::PDM::LogicalObject * > &  logicalObjects)

Returns the PDM::LogicalObject s that were created during part placement operation.


Created in NX11.0.0.

License requirements : routing_base ("Routing Basic")

Parameters
logicalObjectslogicalobjects
void NXOpen::MechanicalRouting::PartPlacementBuilder::GetLogicalObjectsHavingUnassignedRequiredAttributes ( std::vector< NXOpen::PDM::LogicalObject * > &  logicalObjects)

Returns the PDM::LogicalObject s having unassigned non-auto-assignable required attributes.


Created in NX11.0.0.

License requirements : routing_base ("Routing Basic")

Parameters
logicalObjectslogicalobjects
NXOpen::Routing::Port* NXOpen::MechanicalRouting::PartPlacementBuilder::GetPortAtCutSideOfElbow ( )

Get the port from cut side of cut elbow.

Returns

Created in NX12.0.0.

License requirements : routing_base ("Routing Basic")
NXOpen::Placement::PlacementEngineBuilder* NXOpen::MechanicalRouting::PartPlacementBuilder::InitializePlacementEngineBuilder ( )

Initializes the Placement Engine builder with input already present in the Part Placement Builder.

Returns

Created in NX11.0.0.

License requirements : routing_base ("Routing Basic")
NXOpen::BasePart* NXOpen::MechanicalRouting::PartPlacementBuilder::LoadPart ( )

Loads the BasePart to place.

Returns
loaded part
Created in NX11.0.0.

License requirements : routing_base ("Routing Basic")
NXOpen::NXObject* NXOpen::MechanicalRouting::PartPlacementBuilder::LogicalDesignObject ( )

Returns the mapping logical design object
Created in NX11.0.0.



License requirements : routing_base ("Routing Basic")

void NXOpen::MechanicalRouting::PartPlacementBuilder::PreCommitThisPlacement ( )

Pre commits the current placement operation to prepare data (ex.

split stock, post placement, etc) for final commit. This method must be followed by a call to final commit method MechanicalRouting::PartPlacementBuilder::CommitThisPlacement to complete the placement operation

Deprecated:
Deprecated in NX12.0.0. Use MechanicalRouting::PartPlacementBuilder::ProcessPlacedPart followed by MechanicalRouting::PartPlacementBuilder::PrepareDataForConnectivity .


Created in NX11.0.0.

License requirements : routing_base ("Routing Basic")

void NXOpen::MechanicalRouting::PartPlacementBuilder::PrepareDataForConnectivity ( )

Prepare data to build connectivity for all placed parts.

Things like computation of new stock DE (resultant of splitting) will happen here. This method must be followed by a call to final commit method MechanicalRouting::PartPlacementBuilder::CommitThisPlacement to complete the placement operation
Created in NX12.0.0.

License requirements : routing_base ("Routing Basic")

std::vector<NXOpen::Assemblies::Component *> NXOpen::MechanicalRouting::PartPlacementBuilder::ProcessCompatibilityPostPlaceParts ( )

Process the compatibility post placement parts (ex.

placement of gasket flange after the post placement of flange and do geoemtry operations like split stock, etc). This method will also prepare data needed to build connectivity (connectivity will be built in final commit).

Returns

Created in NX12.0.0.

License requirements : routing_base ("Routing Basic")
void NXOpen::MechanicalRouting::PartPlacementBuilder::ProcessComponentsForEdit ( )

Processes the Assemblies::Component s to edit their placement
Created in NX12.0.0.



License requirements : routing_base ("Routing Basic")

void NXOpen::MechanicalRouting::PartPlacementBuilder::ProcessPlacedPart ( )

Processes the placed part.

This might split the target stock geometry. This method will also prepare data needed to build connectivity (connectivity will be built in final commit).
Created in NX12.0.0.

License requirements : routing_base ("Routing Basic")

std::vector<NXOpen::Assemblies::Component *> NXOpen::MechanicalRouting::PartPlacementBuilder::ProcessPostPlaceParts ( )

Process the post placement parts (ex.

placement of flange after the valve and do geoemtry operations like split stock, etc). This method will also prepare data needed to build connectivity (connectivity will be built in final commit).

Returns

Created in NX12.0.0.

License requirements : routing_base ("Routing Basic")
void NXOpen::MechanicalRouting::PartPlacementBuilder::RotatePlaceableObjectByAngle ( double  rotationAngle)

Rotates the fitting by the specified angle along the plane perpendicular to the vector defined by the engaged port.


Created in NX11.0.0.

License requirements : routing_base ("Routing Basic")

Parameters
rotationAnglerotationangle
void NXOpen::MechanicalRouting::PartPlacementBuilder::SetAddUnconnectedEquipmentToActiveRunOption ( bool  canAddEquipmentToActiveRun)

Sets the option that determines whether a part positioned as Equipment should be added to the active Run
Created in NX11.0.0.



License requirements : routing_base ("Routing Basic")

Parameters
canAddEquipmentToActiveRunFlag when true will result in parts positioned as Equipment to be added to the active Run.
void NXOpen::MechanicalRouting::PartPlacementBuilder::SetClassificationObjectIdentifier ( const NXString classificationObjectId)

Sets the identifier of the classification object associated with the part to place
Created in NX11.0.0.



License requirements : routing_base ("Routing Basic")

Parameters
classificationObjectIdclassificationobjectid
void NXOpen::MechanicalRouting::PartPlacementBuilder::SetClassificationObjectIdentifier ( const char *  classificationObjectId)

Sets the identifier of the classification object associated with the part to place
Created in NX11.0.0.



License requirements : routing_base ("Routing Basic")

Parameters
classificationObjectIdclassificationobjectid
void NXOpen::MechanicalRouting::PartPlacementBuilder::SetClassificationObjectIdentifierOfCompatibilityPart ( NXOpen::Routing::ReuseLibrary::PartType  ccType,
const NXString classificationObjectId,
NXOpen::Routing::Port portOne,
NXOpen::Routing::Port portTwo 
)

Sets the identifier of the classification object associated with the compatibility part to post place
Created in NX12.0.0.



License requirements : routing_base ("Routing Basic")

Parameters
ccTypecctype
classificationObjectIdclassificationobjectid
portOneOne of the ports at the intersection where compatible part needs to be placed.
portTwoOther port at the intersection where compatible part needs to be placed.
void NXOpen::MechanicalRouting::PartPlacementBuilder::SetClassificationObjectIdentifierOfCompatibilityPart ( NXOpen::Routing::ReuseLibrary::PartType  ccType,
const char *  classificationObjectId,
NXOpen::Routing::Port portOne,
NXOpen::Routing::Port portTwo 
)

Sets the identifier of the classification object associated with the compatibility part to post place
Created in NX12.0.0.



License requirements : routing_base ("Routing Basic")

Parameters
ccTypecctype
classificationObjectIdclassificationobjectid
portOneOne of the ports at the intersection where compatible part needs to be placed.
portTwoOther port at the intersection where compatible part needs to be placed.
void NXOpen::MechanicalRouting::PartPlacementBuilder::SetClassificationObjectIdentifierOfPartToPostPlace ( const NXString classificationObjectId)

Sets the identifier of the classification object associated with the part to be post placed.


Created in NX11.0.0.

License requirements : routing_base ("Routing Basic")

Parameters
classificationObjectIdclassificationobjectid
void NXOpen::MechanicalRouting::PartPlacementBuilder::SetClassificationObjectIdentifierOfPartToPostPlace ( const char *  classificationObjectId)

Sets the identifier of the classification object associated with the part to be post placed.


Created in NX11.0.0.

License requirements : routing_base ("Routing Basic")

Parameters
classificationObjectIdclassificationobjectid
void NXOpen::MechanicalRouting::PartPlacementBuilder::SetFileSpecificationOfPartToPlace ( const NXString filename)

Sets the file specification of the part to place
Created in NX11.0.0.



License requirements : routing_base ("Routing Basic")

Parameters
filenamefilename
void NXOpen::MechanicalRouting::PartPlacementBuilder::SetFileSpecificationOfPartToPlace ( const char *  filename)

Sets the file specification of the part to place
Created in NX11.0.0.



License requirements : routing_base ("Routing Basic")

Parameters
filenamefilename
void NXOpen::MechanicalRouting::PartPlacementBuilder::SetLogicalDesignObject ( NXOpen::NXObject logicalDesignObject)

Sets the mapping logical design object
Created in NX11.0.0.



License requirements : routing_base ("Routing Basic")

Parameters
logicalDesignObjectlogicaldesignobject
void NXOpen::MechanicalRouting::PartPlacementBuilder::SetPortOfPlaceableObject ( NXOpen::TaggedObject sourcePortObject)

Sets the port for filtration from the part being placed.


Created in NX11.0.0.

License requirements : routing_base ("Routing Basic")

Parameters
sourcePortObjectsourceportobject
void NXOpen::MechanicalRouting::PartPlacementBuilder::SetPositionAsOption ( NXOpen::MechanicalRouting::PartPlacementBuilder::PositionAsType  positioningType)

Sets the positioning option NXOpen::MechanicalRouting::PartPlacementBuilder::PositionAsType on the builder.


Created in NX11.0.0.

License requirements : routing_base ("Routing Basic")

Parameters
positioningTypepositioningtype
void NXOpen::MechanicalRouting::PartPlacementBuilder::SetPrimarySolutionsFlag ( bool  showPrimarySolutions)

Sets the primary solutions flag on builder.


Created in NX11.0.0.

License requirements : routing_base ("Routing Basic")

Parameters
showPrimarySolutionsshowprimarysolutions
void NXOpen::MechanicalRouting::PartPlacementBuilder::SetReferenceObjectForPlacement ( NXOpen::TaggedObject referenceObject,
const NXOpen::Point3d referencePositionPoint 
)

Sets the reference object and reference location for placement.


Created in NX11.0.0.

License requirements : routing_base ("Routing Basic")

Parameters
referenceObjectNew object to attach to. Can be NULL.
referencePositionPointThe new location for the part.
void NXOpen::MechanicalRouting::PartPlacementBuilder::UpdateLayer ( int  layerNumber)

Updates the layer for the Design Elements created during part placement operation.


Created in NX11.0.0.

License requirements : routing_base ("Routing Basic")

Parameters
layerNumberlayernumber
void NXOpen::MechanicalRouting::PartPlacementBuilder::UpdateReferenceSet ( const NXString referenseSetName)

Updates the reference set for the Design Elements created during part placement operation.


Created in NX11.0.0.

License requirements : routing_base ("Routing Basic")

Parameters
referenseSetNamereferensesetname
void NXOpen::MechanicalRouting::PartPlacementBuilder::UpdateReferenceSet ( const char *  referenseSetName)

Updates the reference set for the Design Elements created during part placement operation.


Created in NX11.0.0.

License requirements : routing_base ("Routing Basic")

Parameters
referenseSetNamereferensesetname

The documentation for this class was generated from the following file:
Copyright 2017 Siemens Product Lifecycle Management Software Inc. All Rights Reserved.