All Frameworks  Class Hierarchy  This Framework  Previous  Next  Indexes

CATPlantShipInterfaces Interface CATIPspPlacePartOnRun

System.IUnknown
  |
  +---CATPlantShipInterfaces.CATIPspPlacePart
    |
    +---CATIPspPlacePartOnRun
 

Usage: an implementation of this interface is supplied and you must use it as is. You should not reimplement it.


interface CATIPspPlacePartOnRun

Interface to place physical parts on runs.
Role: Equipment and Systems applications are used to layout 3D AEC designs. Fluid flow routes are defined using runs. Further detail is provided by adding parts to runs. This interface is used to perform the placement of parts on runs.


Method Index


o BreakAndTrimRuns(IUnknown*,IUnknown*&,IUnknown*&)
Breakes the Run at the placed part ipiPartToSplitRun.
o ConnectRunToPart(IUnknown*,IUnknown*)
Connect Run ipiRun to the part ipiPart
Role: Connect Run to the part.
o FlipPlacedPart(IUnknown*)
Flip an instance part which has been placed using the Part Placement Engine.
o GetReferencePartFromCatalog(CATUnicodeString&,CATUnicodeString&,CATUnicodeString&,CATUnicodeString&,IUnknown*,IUnknown*&)
Fetches the catalog description that matches the input part number.
o GetReferencePartFromCatalog(CATUnicodeString&,CATUnicodeString&,CATUnicodeString&,CATUnicodeString&,IUnknown*,IUnknown*&,CATUnicodeString&)
Fetches the catalog part that matches the input part number.
o PlacePartOnPartConnector(CATUnicodeString&,CATUnicodeString&,IUnknown*,IUnknown*,IUnknown*,CATUnicodeString&,IUnknown*&)
Places a non-string part on a part connector.
o PlacePartOnRunNode(CATUnicodeString&,CATUnicodeString&,IUnknown*,IUnknown*,IUnknown*,CATUnicodeString&,IUnknown*&)
Places a non-string part on a node of a run.
o PlacePartOnRunSegment(CATUnicodeString&,CATUnicodeString&,IUnknown*,IUnknown*,IUnknown*,CATUnicodeString&,CATMathPoint&,IUnknown*&)
Places a part on a segment of a run.
o SetCatalogPartName(IUnknown*,CATUnicodeString&)
Set catalog part name on an instance part.

Methods


o BreakAndTrimRuns
public virtual HRESULT BreakAndTrimRuns( const IUnknown* ipiPartToSplitRun,
IUnknown*& opiRun1,
IUnknown*& opiRun2) = 0
Breakes the Run at the placed part ipiPartToSplitRun.
Role: Breakes the Run at the placed part.
Parameters:
ipiPartToSplitRun
[in] The placed instance part where the run (underneath) to be splitted.
opiRun1
[out] The resulting splitted first run.
opiRun2
[out] The resulting splitted second run.
Returns:
HRESULT
  • S_OK: Run successfully splitted.
  • E_FAIL: Otherwise.
o ConnectRunToPart
public virtual HRESULT ConnectRunToPart( const IUnknown* ipiRun,
IUnknown* ipiPart) = 0
Connect Run ipiRun to the part ipiPart
Role: Connect Run to the part.
Parameters:
ipiRun
[in] Run to connect.
ipiPart
[in] Part to connect.
Returns:
HRESULT
  • S_OK: Run successfully connected to the part.
  • E_FAIL: Otherwise.
o FlipPlacedPart
public virtual HRESULT FlipPlacedPart( const IUnknown* ipiPlacedInstancePart) = 0
Flip an instance part which has been placed using the Part Placement Engine.
Role: When a part is placed on a part connector or on a run there is often more than one possible way to connect the part being placed. When there is more than one such connection geometry the PP engine attempts to pick the best one. This method allows the part to "flip" between the possible connection geometries when more than one exists. Part is placed non-spec.
Parameters:
ipiPlacedInstancePart
The placed instance part to be flipped.
Returns:
  • S_OK part successfully flipped.
  • E_FAIL otherwise.
o GetReferencePartFromCatalog
public virtual HRESULT GetReferencePartFromCatalog( const CATUnicodeString& iuStandard,
const CATUnicodeString& iuSpecName,
const CATUnicodeString& iuPartType,
const CATUnicodeString& iuPartNumber,
const IUnknown* ipiPhysicalParentProduct,
IUnknown*& opiReferencePart) = 0
Fetches the catalog description that matches the input part number.
Role: The part placement routines derive a part instance from an input reference. This method can be used to provide that reference. It gets the catalog description for a part with the given catalog part number from the part catalog defined in the Equipment and Systems environment.
Parameters:
iuStandard
Standard for application attribute values.
iuSpecName
Name of spec catalog. Null string uses full part catalog.
iuPartType
The part type under which to search for the part.
iuPartNumber
The catalog part number of the desired part.
ipiPhysicalParentProduct
In design model, the parent of the part that will be placed. Having this object helps with efficiency. It may be set to NULL and the method will still function correctly.
opiReferencePart
The reference part.
Returns:
  • S_OK catalog descruption successfully retrieved.
  • E_FAIL otherwise.
o GetReferencePartFromCatalog
public virtual HRESULT GetReferencePartFromCatalog( const CATUnicodeString& iuStandard,
const CATUnicodeString& iuSpecName,
const CATUnicodeString& iuPartType,
const CATUnicodeString& iuPartNumber,
const IUnknown* ipiPhysicalParentProduct,
IUnknown*& opiReferencePart,
CATUnicodeString& ouCatalogPartName) = 0
Fetches the catalog part that matches the input part number.
Role: The part placement routines derive a part instance from an input reference. This method can be used to provide that reference. It gets the catalog part with the given catalog part number from the part catalog defined in the Equipment and Systems environment.
Parameters:
iuStandard
[in] Standard for application attribute values.
iuSpecName
[in] Name of spec catalog. Null string uses full part catalog.
iuPartType
[in] The part type under which to search for the part. A null string will search the entire catalog.
iuPartNumber
[in] The catalog part number of the desired part.
ipiPhysicalParentProduct
[in] In design model, the parent of the part that will be placed. Having this object helps with efficiency. It may be set to NULL and the method will still function correctly.
opiReferencePart
[out CATBaseUnknown] The reference part.
ouCatalogPartName
[out] The catalog part name of the reference part.
Returns:
HRESULT
  • S_OK: Reference part successfully retrieved.
  • E_FAIL: Otherwise.
o PlacePartOnPartConnector
public virtual HRESULT PlacePartOnPartConnector( const CATUnicodeString& iuStandard,
const CATUnicodeString& iuFunctionType,
const IUnknown* ipiReferencePart,
const IUnknown* ipiPartConnector,
const IUnknown* ipiLogicalLine,
const CATUnicodeString& iuPlacedPartID,
IUnknown*& opiInstancePart) = 0
Places a non-string part on a part connector.
Role: A part instance is derived from the given reference and placed on the given part connector. The Part Placement engine will search for neighgoring parts on the run (or any connected runs) and connect as needed. Part is placed non-spec.
Parameters:
iuStandard
The standard for application attribute values.
iuFunctionType
The type of function (e.g. block valve, branch).
ipiReferencePart
The reference part from which to derive the instance part.
ipiPartConnector
The run node on which the part will be placed.
ipiLogicalLine
The logical line (e.g. piping line) which contains the instance part. If NULL the part is put in the logical line of the run.
iuPlacedPartID
The name of the placed part in the design model. Null string uses the standard ID generated by the part placement engine.
opiInstancePart
The placed instance part.
Returns:
  • S_OK part successfully placed.
  • E_FAIL otherwise.
o PlacePartOnRunNode
public virtual HRESULT PlacePartOnRunNode( const CATUnicodeString& iuStandard,
const CATUnicodeString& iuFunctionType,
const IUnknown* ipiReferencePart,
const IUnknown* ipiRunNode,
const IUnknown* ipiLogicalLine,
const CATUnicodeString& iuPlacedPartID,
IUnknown*& opiInstancePart) = 0
Places a non-string part on a node of a run.
Role: A part instance is derived from the given reference and placed on the given run node. The Part Placement engine will search for neighgoring parts on the run (or any connected runs) and connect as needed. Part is placed non-spec.
Parameters:
iuStandard
The standard for application attribute values.
iuFunctionType
The type of function (e.g. block valve, branch).
ipiReferencePart
The reference part from which to derive the instance part.
ipiRunNode
The run node on which the part will be placed.
ipiLogicalLine
The logical line (e.g. piping line) which contains the instance part. If NULL the part is put in the logical line of the run.
iuPlacedPartID
The name of the placed part in the design model. Null string uses the standard ID generated by the part placement engine.
opiInstancePart
The placed instance part.
Returns:
  • S_OK reference .
  • E_FAIL otherwise.
o PlacePartOnRunSegment
public virtual HRESULT PlacePartOnRunSegment( const CATUnicodeString& iuStandard,
const CATUnicodeString& iuFunctionType,
const IUnknown* ipiReferencePart,
const IUnknown* ipiRunSegment,
const IUnknown* ipiLogicalLine,
const CATUnicodeString& iuPlacedPartID,
const CATMathPoint& iPosition,
IUnknown*& opiInstancePart) = 0
Places a part on a segment of a run.
Role: A part instance is derived from the given reference and placed on the given run segment. The Part Placement engine will search for neighgoring parts on the run (or any connected runs) and adjust the placement location and connect as needed. Part is placed non-spec.
Parameters:
iuStandard
The standard for application attribute values.
iuFunctionType
The type of function (e.g. block valve, branch).
ipiReferencePart
The reference part from which to derive the instance part.
ipiRunSegment
The run segment on which the part will be placed.
ipiLogicalLine
The logical line (e.g. piping line) which contains the instance part. If NULL the part is put in the logical line of the run.
iuPlacedPartID
The name of the placed part in the design model. NULL uses the standard ID generated by the part placement engine.
iPosition
The position of the part on the segment. The list has three values which represent the x, y and z values of a position in space. Value is relative to the parent of the run and is in millimeters.
opiInstancePart
The placed instance part.
Returns:
  • S_OK part successfully placed.
  • E_FAIL otherwise.
o SetCatalogPartName
public virtual HRESULT SetCatalogPartName( const IUnknown* ipiPlacedInstancePart,
const CATUnicodeString& iuCatalogPartName) = 0
Set catalog part name on an instance part.
Role: During interactive part placement the catalog part name is stored with the instance part. The place methods in this interface do not set it because they were designed to be able to use any reference part, whether or not it came from a catalog. Use the override of GetReferencePartFromCatalog that returns catalog part name and then use this method to set the returned value after the part is placed.
Parameters:
ipiPlacedInstancePart
[in] The placed instance part on which to set the catalog part name.
iuCatalogPartName
[in] The catalog part name to set on the instance part.
Returns:
HRESULT
  • S_OK: part successfully flipped.
  • E_FAIL: Otherwise.

This object is included in the file: CATIPspPlacePartOnRun.h

Copyright © 2003, Dassault Systèmes. All rights reserved.