Library | Module

Class pfcModel



Description

This class specifies the information about a model which is currently in session.

Attributes Revision, Version, Branch and ReleaseLevel are used for data management applications. Attributes FullName, GenericName, InstanceName and Type have the same values as the corresponding attributes of the model descriptor Descr.
See Also:
pfcSolid, pfcModel2D, pfcBaseSession.ListModels(), pfcBaseSession.RetrieveModel(), pfcBaseSession.GetModel(), pfcBaseSession.GetModelFromDescr(), pfcBaseSession.GetByRelationId(), pfcBaseSession.CreateModelWindow(), pfcBaseSession.ImportNewModel()
Direct Parent Classes:
pfcModelItemOwner, pfcViewOwner, pfcChild, pfcActionSource, pfcRelationOwner, pfcParameterOwner
Direct Known Subclasses:
pfcSolid, pfcDrawingFormat, pfcModel2D, pfcMFG, pfcSection2D, pfcDiagram, pfcMarkup



Property Summary

/* readonly */  /* optional */ stringBranch
The branch. This attribute can be null.
stringCommonName
The common name for the model. This is the name that will shown for the model in Windchill PDM. It can be modified for models which are not owned by PDM.
/* readonly */ pfcModelDescriptorDescr
The model descriptor.
/* readonly */ stringFileName
The model file name in "name"."type" format.
/* readonly */ stringFullName
The full name of the model in instance<generic> format.
/* readonly */  /* optional */ stringGenericName
The name of the generic model. If the model is not an instance, this attribute must be null or an empty string.
/* readonly */ stringInstanceName
The name of the model, or, if the model is an instance, the instance name.
/* readonly */ booleanIsModified
A Boolean flag that specifies whether the model has been modified since the last save.
/* readonly */ stringOrigin
The location of the origin of the model.
/* optional */ stringseqPostRegenerationRelations
The list of the post-regeneration relations assigned to the model. This attribute can be null.
/* readonly */  /* optional */ numberRelationId
The relation identifier. This attribute can be null.
/* readonly */  /* optional */ stringReleaseLevel
The release level. This attribute can be null.
/* readonly */  /* optional */ stringRevision
The revision number. This attribute can be null.
/* readonly */ pfcModelTypeType
The model type.
/* readonly */  /* optional */ stringVersion
The version. This attribute can be null.
/* readonly */ stringVersionStamp
The version stamp.



Method Summary

pfcExternalDataAccessAccessExternalData ()
Initializes External Data access
voidBackup (pfcModelDescriptor WhereTo)
Backs up the model to a specified directory.
booleanCheckIsModifiable (boolean ShowUI)
Check if given model is modifiable, indicating that the model could be saved (without checking for any subordinate models).
booleanCheckIsSaveAllowed (boolean ShowUI)
Check if given model can be saved along with all its subordinate models that are to be saved together with it according to their modification status and the configuration option 'save_objects'.
voidCleanupDependencies ()
Forces cleaning up dependencies database of an object in the Creo Parametric workspace. This function should not be called during reference altering operations like feature create, edit definition or restructure.
voidClearIntf3DModelData ()
Clears model data set for export. Clears model data which user set using following methods pfcModel.SetIntf3DLayerSetupFile() <reference 3 to unknown entity pfcModel::Model::SetIntf3DCsys>
voidCopy (string NewName, /* optional */ pfcCopyInstructions Instructions)
Copies the disk file for the model to another named file. The model copy is not retrieved into the session.
pfcModelCopyAndRetrieve (string NewName, /* optional */ pfcCopyInstructions Instructions)
Copies the model to a new one, and retrieves the new model into memory.
pfcLayerCreateLayer (string Name)
Creates a new layer in the object.
voidDelete ()
Deletes the model from memory and disk.
voidDeletePostRegenerationRelations ()
Deletes the post-regeneration relations in the model.
voidDisplay ()
Displays the model in its window.
voidDisplayInNewWindow ()
 
voidErase ()
Erases the model from the session. This method does not delete the model file from the disk.
voidEraseWithDependencies ()
Erases the model and its dependencies from the session.
voidExport (string FileName, pfcExportInstructions ExportData)
Exports model data to a file or creates a plot.
voidExportIntf3D (string NewFileName, pfcExportType ExpType, /* optional */ string ProfileFile)
Exports a Creo Parametric model using default export profile.
voidImport (string FilePath, pfcImportInstructions ImportData)
Reads a file into Creo Parametric. The format must be the same as if these files were created by Creo Parametric.
booleanIsCommonNameModifiable ()
Identifies if the model common name (pfcModel.CommonName) can be modified.
booleanIsIntf3DCsysIgnored ()
Checks that reference CSYS for export is ignored or not. This API returns CSYS ignored status for last export using method ExportIntf3D. Call this API after ExportIntf3D otherwise results will not be reliable.
booleanIsIntf3DLayerSetupFileIgnored ()
Checks that layer setup file for export is ignored or not. This method returns layer setup file ignored status for last export using method ExportIntf3D. Call this method after ExportIntf3D otherwise results will not be reliable.
booleanIsNativeModel ()
Returns true if the origin of the model is Creo; false otherwise.
/* optional */ pfcModelDescriptorsListDeclaredModels ()
Finds all the first-level objects declared for the model.
/* optional */ pfcDependenciesListDependencies ()
Finds the first-level dependencies for the model in the Creo Parametric workspace.
voidRegeneratePostRegenerationRelations ()
Regenerates the post-regeneration relations in the model.
voidRename (string NewName, /* optional */ boolean RenameFilesToo)
Renames the model.
voidSave ()
Writes the model to disk.
voidSetIntf3DLayerSetupFile ( /* optional */ string setupFilePath)
Set layer setup file for export
voidTerminateExternalData ()
Cleans up the setup required for the generic application data operations for the specified model.



Property Detail


/* readonly */  /* optional */ stringBranch

The branch. This attribute can be null.




stringCommonName

The common name for the model. This is the name that will shown for the model in Windchill PDM. It can be modified for models which are not owned by PDM.

Exceptions thrown (but not limited to):

pfcXToolkitCantModify - The common name for the given model has been locked by PDM and cannot be modified.






/* readonly */ pfcModelDescriptorDescr

The model descriptor.

Exceptions thrown (but not limited to):

pfcXToolkitUnsupported - Unsupported model. For instance, models which come from Multi-CAD model approach, are not supported in this release.






/* readonly */ stringFileName

The model file name in "name"."type" format.




/* readonly */ stringFullName

The full name of the model in instance<generic> format.




/* readonly */  /* optional */ stringGenericName

The name of the generic model. If the model is not an instance, this attribute must be null or an empty string.

Exceptions thrown (but not limited to):

pfcXToolkitNotFound - The specified model is not an instance -- it has no generic model.

pfcXToolkitCantOpen - The immediate generic is not in session ('immediate' is set to TRUE).






/* readonly */ stringInstanceName

The name of the model, or, if the model is an instance, the instance name.




/* readonly */ booleanIsModified

A Boolean flag that specifies whether the model has been modified since the last save.




/* readonly */ stringOrigin

The location of the origin of the model.

This method supports Multi-CAD approach only for Object Toolkit (OTK) users. Outside of OTK (for instance in J-Link), this method will throw the XToolkitUnsupported exception if called on models originated through Multi-CAD.




/* optional */ stringseqPostRegenerationRelations

The list of the post-regeneration relations assigned to the model. This attribute can be null.

This attribute is a complement of pfcModelItem::RelationOwner::Relations which does not contain post regeneration relations. The obtained post regeneration relations attribute can be used in pfcModelItem::RelationOwner::SetRelations(/*optional*/ stringseq value), pfcRelationOwner.RegenerateRelations() and pfcRelationOwner.DeleteRelations().

Exceptions thrown (but not limited to):

pfcXToolkitNotFound - The post regeneration relation set was not found.






/* readonly */  /* optional */ numberRelationId

The relation identifier. This attribute can be null.




/* readonly */  /* optional */ stringReleaseLevel

The release level. This attribute can be null.




/* readonly */  /* optional */ stringRevision

The revision number. This attribute can be null.




/* readonly */ pfcModelTypeType

The model type.




/* readonly */  /* optional */ stringVersion

The version. This attribute can be null.




/* readonly */ stringVersionStamp

The version stamp.





Method Detail


pfcExternalDataAccessAccessExternalData ()

Initializes External Data access

Exceptions thrown (but not limited to):

pfcXExternalDataTKError - The function failed.

pfcXExternalDataInvalidObject - The specified model is invalid.


Returns:
ExternalDataAccess object used to access model's external dara



voidBackup (pfcModelDescriptor WhereTo)

Backs up the model to a specified directory.

Exceptions thrown (but not limited to):

pfcXToolkitInvalidPtr - The handle is not correct, or the name and type are invalid (for example, the object is not in memory).

pfcXToolkitInvalidType - The specified type is invalid.

pfcXToolkitCantWrite - The system could not write to the specified directory.

pfcXToolkitInvalidDir - The specified directory (path) is invalid.

pfcXToolkitNoPermission - The function does not have permission to operate on this model.

pfcXToolkitBadContext - The function is not available in Design Test Mode.


See Also:
pfcModel.Save(), pfcModel.Copy()
Parameters:
WhereTo
The path to the directory where the backup copy is created. (The backup has the same file name as the original.)



booleanCheckIsModifiable (boolean ShowUI)

Check if given model is modifiable, indicating that the model could be saved (without checking for any subordinate models).

For a generic model, if ShowUI is true, all its instances are also checked.
Parameters:
ShowUI
Indicates whether the Conflicts dialog should be shown to user to resolve conflicts (if they are detected); when set to false no UI is enabled and the model is considered as modifiable if there are no conflicts that could not be overridden or resolved by default resolution actions.
Returns:
The access status. If it is true, the model is modifiable.



booleanCheckIsSaveAllowed (boolean ShowUI)

Check if given model can be saved along with all its subordinate models that are to be saved together with it according to their modification status and the configuration option 'save_objects'.

This will also check the current UI context to see if it is currently safe to save the model, and so calling this function at different times might return different results.
Parameters:
ShowUI
Indicates whether the Conflicts dialog should be shown to user to resolve conflicts (if they are detected); when set to false no UI is enabled and the model is considered as modifiable if there are no conflicts that could not be overridden or resolved by default resolution actions.
Returns:
The boolean save access status. If it is true, the check is successful. If it is false, the model or at least one of its subordinate models can not be saved due to remaining unresolved non-overridable conflicts. Conflicts will not be shown if the model currently cannot be saved due to UI restrictions; the function will return false regardless of this flag.



voidCleanupDependencies ()

Forces cleaning up dependencies database of an object in the Creo Parametric workspace. This function should not be called during reference altering operations like feature create, edit definition or restructure.

Exceptions thrown (but not limited to):

pfcXToolkitNotValid - The supplied solid is in the state, not allowing to cleanup dependencies i.e. inside feature creation.





voidClearIntf3DModelData ()

Clears model data set for export. Clears model data which user set using following methods pfcModel.SetIntf3DLayerSetupFile() <reference 3 to unknown entity pfcModel::Model::SetIntf3DCsys>



voidCopy (string NewName, /* optional */ pfcCopyInstructions Instructions)

Copies the disk file for the model to another named file. The model copy is not retrieved into the session.

Exceptions thrown (but not limited to):

pfcXToolkitNoPermission - The function does not have permission to operate on this model.

pfcXToolkitUnsupported - Unsupported model. For instance, models which come from Multi-CAD model approach, are not supported in this release.


See Also:
pfcModel.CopyAndRetrieve()
Parameters:
NewName
The new name of the model
Instructions
Reserved for the future. Pass null.



pfcModelCopyAndRetrieve (string NewName, /* optional */ pfcCopyInstructions Instructions)

Copies the model to a new one, and retrieves the new model into memory.

Exceptions thrown (but not limited to):

pfcXToolkitNoPermission - The function does not have permission to operate on this model.

pfcXToolkitUnsupported - Unsupported model. For instance, models which come from Multi-CAD model approach, are not supported in this release.


See Also:
pfcModel.Copy()
Parameters:
NewName
The new name of the model
Instructions
Reserved for the future. Pass null.
Returns:
The copied model



pfcLayerCreateLayer (string Name)

Creates a new layer in the object.

Exceptions thrown (but not limited to):

pfcXToolkitInvalidName - You specified an invalid layer name.

pfcXToolkitFound - A layer with the specified name already exists.


Parameters:
Name
The name of the new layer
Returns:
The created layer



voidDelete ()

Deletes the model from memory and disk.

Exceptions thrown (but not limited to):

pfcXToolkitBadContext - The function is not available in Design Test Mode.


See Also:
pfcModel.Erase()



voidDeletePostRegenerationRelations ()

Deletes the post-regeneration relations in the model.



voidDisplay ()

Displays the model in its window.

Does not support display of 2D section models.

Exceptions thrown (but not limited to):

pfcXToolkitNotFound - The model is NULL, and there is no current object.

pfcXToolkitInvalidPtr - The specified model is not in memory.

pfcXToolkitInvalidType - You specified an invalid model type.





voidDisplayInNewWindow ()

 



voidErase ()

Erases the model from the session. This method does not delete the model file from the disk.

If the model is displayed in a window, the model is marked to be erased when control returns the Creo Parametric UI from the application. It is not erased immediately.

Models used by other models cannot be erased until the models dependent upon them are erased.

Exceptions thrown (but not limited to):

pfcXToolkitDeadLock - The Creo Parametric user interface is not prepared to handle this request (because it is blocked by another process such as an OLE container activation).


See Also:
pfcModel.EraseWithDependencies(), pfcBaseSession.EraseUndisplayedModels()



voidEraseWithDependencies ()

Erases the model and its dependencies from the session.

This method also erases all of the models that this model depdends on from disk, so long as the dependencies are not needed by other items in session.

If the model is displayed in a window, the model is marked to be erased when control returns the Creo Parametric UI from the application. It is not erased immediately.

Exceptions thrown (but not limited to):

pfcXToolkitBadContext - Current User Interface context does not allow erasure of models (for example, when the Erase button is grayed out).

pfcXToolkitInUse - The model could not be erased because it is in use, for example by another model in the session.


See Also:
pfcModel.Erase(), pfcBaseSession.EraseUndisplayedModels()



voidExport (string FileName, pfcExportInstructions ExportData)

Exports model data to a file or creates a plot.

NOTE: Interface pfcExport3DInstructions is deprecated in Creo5. Use superseding method <reference 4 to unknown entity pfcModel::ExportIntf3D> to export these type of objects.

The exported file(s) will be typically be placed in the current Creo Parametric working directory.

Exceptions thrown (but not limited to):

pfcXToolkitNotFound - This means either:

  • pro2prod_view.dll is not found, OR
  • Some entity from source model required for export does not exist.

pfcXToolkitObsoleteFunc - The file format selected is no longer supported on this platform.

pfcXToolkitBadContext - This means either:

  • pro2prod_view.dll could not be loaded, OR
  • Design Test Mode is active - the function is not available in this mode.

pfcXToolkitNoPermission - The function does not have permission to operate on this model.

pfcXToolkitNoLicense - You do not have a license.

pfcXToolkitNotDisplayed - Model not displayed in any window.

pfcXToolkitUnsupported - Export type is not Supported

pfcXInAMethod - Call pfcBaseSession_tk::ExportDirectVRML method instead


See Also:
pfcWindow.ExportRasterImage(), pfcRelationExportInstructions, pfcIGESFileExportInstructions, pfcModelInfoExportInstructions, pfcProgramExportInstructions, pfcDXFExportInstructions, pfcDWGSetupExportInstructions, pfcFeatIdExportInstructions, pfcFeatInfoExportInstructions, pfcMFGFeatCLExportInstructions, pfcMFGOperCLExportInstructions, pfcCATIAFacetsExportInstructions, pfcRenderExportInstructions, pfcSTLASCIIExportInstructions, pfcSTLBinaryExportInstructions, pfcInventorExportInstructions, pfcIGES3DExportInstructions, pfcSTEPExportInstructions, pfcVDAExportInstructions, pfcFIATExportInstructions, pfcBOMExportInstructions, pfcMaterialExportInstructions, pfcConnectorParamExportInstructions, pfcCGMFILEExportInstructions, pfcVRMLModelExportInstructions, pfcPlotInstructions, pfcSTEP3DExportInstructions, pfcVDA3DExportInstructions, pfcIGES3DNewExportInstructions, pfcCATIAModel3DExportInstructions, pfcACIS3DExportInstructions, pfcCATIASession3DExportInstructions, pfcCADDSExportInstructions, pfcNEUTRALFileExportInstructions, pfcProductViewExportInstructions, pfcSTEP2DExportInstructions, pfcCableParamsFileInstructions
Parameters:
FileName
The name of the export file.

When ExportData is a pfcVRMLExportInstructions object, Name specifies the directory where the VRML files will be created.
ExportData
An export-instructions object that controls the exporting or plotting operation.



voidExportIntf3D (string NewFileName, pfcExportType ExpType, /* optional */ string ProfileFile)

Exports a Creo Parametric model using default export profile.

Exceptions thrown (but not limited to):

pfcXToolkitNotFound - This means either:

  • pro2prod_view.dll is not found, OR
  • Some entity from source model required for export does not exist.

pfcXToolkitObsoleteFunc - The file format selected is no longer supported on this platform.

pfcXToolkitBadContext - This means either:

  • pro2prod_view.dll could not be loaded, OR
  • Design Test Mode is active - the function is not available in this mode.

pfcXToolkitNoPermission - The function does not have permission to operate on this model.

pfcXToolkitNoLicense - You do not have a license.

pfcXToolkitNotDisplayed - Model not displayed in any window.

pfcXToolkitUnsupported - Export type is not Supported


Parameters:
NewFileName
The output file name to produce. Optionally, this includes the path for the file location. The filename should not include the file extension, this will be added automatically by Creo Parametric.
ExpType
The type of output file to produce.
ProfileFile
Reserved for the future.



voidImport (string FilePath, pfcImportInstructions ImportData)

Reads a file into Creo Parametric. The format must be the same as if these files were created by Creo Parametric.

Exceptions thrown (but not limited to):

pfcXToolkitLineTooLong - The input filename length is too long for this import file type.

pfcXToolkitObsoleteFunc - The file format selected is no longer supported on this platform.

pfcXToolkitInvalidFile - The input file could not be found, or contained unrecoverable errors.

pfcXToolkitNoLicense - There is no license for this import option.

pfcXInAMethod - Call pfcBaseSession_tk::LoadConfigFile for pfcIMPORT_CONFIG


See Also:
pfcImport2DInstructions, pfcSTEPImport2DInstructions, pfcIGESImport2DInstructions, pfcDXFImport2DInstructions, pfcDWGImport2DInstructions, pfcRelationImportInstructions, pfcIGESSectionImportInstructions, pfcProgramImportInstructions, pfcConfigImportInstructions, pfcDWGSetupImportInstructions, pfcSpoolImportInstructions, pfcConnectorParamsImportInstructions, pfcCableParamsImportInstructions, pfcASSEMTreeCFGImportInstructions, pfcWireListImportInstructions
Parameters:
FilePath
 
ImportData
An import instructions object that controls the import operation.



booleanIsCommonNameModifiable ()

Identifies if the model common name (pfcModel.CommonName) can be modified.
Returns:



booleanIsIntf3DCsysIgnored ()

Checks that reference CSYS for export is ignored or not. This API returns CSYS ignored status for last export using method ExportIntf3D. Call this API after ExportIntf3D otherwise results will not be reliable.
Returns:
The boolean CSYS Ignored status. If it is true, reference csys is ignored. If it is false, reference csys is not ignored.



booleanIsIntf3DLayerSetupFileIgnored ()

Checks that layer setup file for export is ignored or not. This method returns layer setup file ignored status for last export using method ExportIntf3D. Call this method after ExportIntf3D otherwise results will not be reliable.
Returns:
The boolean Layer SetupFile Ignored status. If it is true, layer setup file is ignored. If it is false, layer setup file is not ignored.



booleanIsNativeModel ()

Returns true if the origin of the model is Creo; false otherwise.

Use this method to indetify models created through the Multi-CAD approach. For such models it will return false. Multi-CAD models are supported only through Object Toolkit.
Returns:



/* optional */ pfcModelDescriptorsListDeclaredModels ()

Finds all the first-level objects declared for the model.

If layout A is declared in layout B and layout B is declared in part P, only layout B will be returned.

Exceptions thrown (but not limited to):

pfcXToolkitNotFound - No objects were found.


Returns:
The list of model descriptors, or null, if no objects declared for the model have been found.



/* optional */ pfcDependenciesListDependencies ()

Finds the first-level dependencies for the model in the Creo Parametric workspace.

Exceptions thrown (but not limited to):

pfcXToolkitNotFound - No dependencies were found.

pfcXToolkitBadContext - Some dependencies could not be processed and were skipped.


Returns:
The list of dependencies, or null, if no dependencies found.



voidRegeneratePostRegenerationRelations ()

Regenerates the post-regeneration relations in the model.



voidRename (string NewName, /* optional */ boolean RenameFilesToo)

Renames the model.

Exceptions thrown (but not limited to):

pfcXToolkitBadContext - The function is not available in Design Test Mode.

pfcXToolkitUnsupported - Unsupported model. For instance, models which come from Multi-CAD model approach, are not supported in this release.


Parameters:
NewName
The new name for the model.
RenameFilesToo
Ignored: by default, this is false.



voidSave ()

Writes the model to disk.

Exceptions thrown (but not limited to):

pfcXToolkitCantWrite - Failed to save the model or at least one of its subordinate models due to unresolved non-overridable conflicts in the target location.

pfcXToolkitNoPermission - The function does not have permission to operate on this model.

pfcXToolkitBadContext - The function is not available in Design Test Mode.


See Also:
pfcModel.Backup()



voidSetIntf3DLayerSetupFile ( /* optional */ string setupFilePath)

Set layer setup file for export
Parameters:
setupFilePath
input layer setup file's full path. This is Optional argument. Call this method without any argument to set default layer setup settings. Layer setup file is not supported for CADDS and NEUTRAL file types.



voidTerminateExternalData ()

Cleans up the setup required for the generic application data operations for the specified model.

If you need to preserve the external data created in session you must save the model before calling this method. Otherwise your data will be lost.

Exceptions thrown (but not limited to):

pfcXExternalDataTKError - The function failed.

pfcXExternalDataInvalidObject - The specified model is invalid.