Loads the model file with information from the input CAD file. More...

Data Structures

struct  A3DFileInformationData
 File. More...
 
struct  A3DRWParamsAssemblyData
 Structure to define parameters to manage CAD assemblies reading. More...
 
struct  A3DRWParamsCatiaV4Data
 Reading parameters specific to CATIA V4 CAD files. More...
 
struct  A3DRWParamsCatiaV5Data
 Reading parameters specific to CATIA V5 CAD files. More...
 
struct  A3DRWParamsGeneralData
 Reading options to filter the types of information that are read when CAD files are loaded. More...
 
struct  A3DRWParamsIFCData
 Reading parameters specific to IFC files. More...
 
struct  A3DRWParamsIGESData
 Reading parameters specific to IGES files. More...
 
struct  A3DRWParamsIncrementalLoadData
 Structure to specify reading parameters to load some specific parts of an assembly. More...
 
struct  A3DRWParamsInventorData
 A structure that specifies parameters used to read the model file to Inventor format. More...
 
struct  A3DRWParamsJTData
 A structure that specifies parameters used to read the model file to JT format. More...
 
struct  A3DRWParamsLoadData
 Structure to define the reading parameters used by the load function A3DAsmModelFileLoadFromFile. More...
 
struct  A3DRWParamsMultiEntriesData
 Structure to define which configurations or sub-models should be loaded when the CAD file has multiple entries. More...
 
struct  A3DRWParamsParasolidData
 A structure that specifies parameters used to read the model file to Parasolid format. More...
 
struct  A3DRWParamsPmiData
 Structure to specify the PMI reading parameters. More...
 
struct  A3DRWParamsProEData
 Reading parameters specific to Pro/ENGINEER CAD files. More...
 
struct  A3DRWParamsSearchDirData
 Structure to define additional directories that the load function will search in addition to the root directory. More...
 
struct  A3DRWParamsSolidworksData
 A structure that specifies parameters used to read the model file to Solidworks format. More...
 
struct  A3DRWParamsSpecificLoadData
 Structure to specify reading parameters specific to some CAD formats. More...
 
struct  A3DRWParamsStepData
 Reading parameters specific to STEP files. More...
 
struct  A3DRWParamsTessellationData
 Structure to set the tessellation parameters. More...
 
struct  A3DRWParamsUnigraphicsData
 Reading parameters specific to Unigraphics CAD files. More...
 
struct  A3DRWValidationPropertiesThresholdData
 Threshold values used for checking validation properties in Step. More...
 
struct  A3DStream3DPDFData
 Binary stream for a 3D model stored in a PDF file. The data format is PRC or U3D. More...
 
struct  A3DThumbnailData
 Thumbnail data. More...
 

Enumerations

enum  A3DEJTReadTessellationLevelOfDetail { JTTessLODLow = 0, JTTessLODMedium, JTTessLODHigh }
 JT LOD to retrieve from file. More...
 
enum  A3DEReadGeomTessMode { kA3DReadGeomOnly = 0, kA3DReadGeomAndTess, kA3DReadTessOnly }
 A3DSDKReadWrite. More...
 
enum  A3DEStepNameFromNAUO { kA3DStepNameFromNAUO_ID = 0, kA3DStepNameFromNAUO_NAME, kA3DStepNameFromNAUO_DESCRIPTION }
 Used to select which name to use from NEXT_ASSEMBLY_USAGE_OCCURRENCE as occurrence name. More...
 
enum  A3DETessellationLevelOfDetail {
  kA3DTessLODExtraLow, kA3DTessLODLow, kA3DTessLODMedium, kA3DTessLODHigh,
  kA3DTessLODExtraHigh, kA3DTessLODUserDefined, kA3DTessLODControlledPrecision
}
 Structure to specify the level of detail of the tessellation. More...
 
enum  A3DEUnits {
  kA3DUnitPoint = 0, kA3DUnitInch, kA3DUnitMillimeter, kA3DUnitCentimeter,
  kA3DUnitPicas, kA3DUnitFoot, kA3DUnitYard, kA3DUnitMeter,
  kA3DUnitKilometer, kA3DUnitMile, kA3DUnitUnknown
}
 Unit used in the model file. More...
 
enum  A3DProEFamilyTables { A3DProEFamTabAcceleratorFileOnly = 0, A3DProEFamTabOrUseTessellation = 1, A3DProEFamTabOrUseWireAndGeneric = 2 }
 Used to select how to read family tables. More...
 
enum  A3DProEReadConstructEntities { A3DProEReadConstructEntities_AsDatum = 0, A3DProEReadConstructEntities_Yes, A3DProEReadConstructEntities_No }
 Used to control the construction entities reading, entity such as sketch, curves... More...
 
enum  A3DProESessionColorType { kA3DLastCreoVersionSessionColor = 0, kA3DHExchangeSessionColor, kA3DFileVersionSessionColor }
 Used to control the default PMI color: If you load a Wildfire file and set kA3DFileVersionSessionColor to: More...
 

Functions

A3DStatus A3DAsmModelFileLoadFromFile (const A3DUTF8Char *pcFileName, const A3DRWParamsLoadData *pLoadParametersData, A3DAsmModelFile **ppModelFile)
 Loads an A3DAsmModelFile from a physical file. More...
 
A3DStatus A3DAsmModelFileLoadFromPrcStream (const A3DUTF8Char *pcBufferStream, unsigned int uBufferLength, A3DRWParamsPrcReadHelper **ppPrcReadHelper, A3DAsmModelFile **ppModelFile)
 Loads an A3DAsmModelFile from a PRC Buffer. More...
 
A3DStatus A3DAsmModelFileLoadFromXMLFile (const A3DUTF8Char *pcFileName, const A3DRWParamsLoadData *pLoadParametersData, A3DAsmModelFile **ppModelFile)
 Loads an A3DAsmModelFile from a XML file and a set of native cad files. More...
 
A3DStatus A3DCheckFileFormat (const A3DUTF8Char *pcFileName, const int &rCadTypeWanted)
 Checks the format of a physical file. More...
 
A3DStatus A3DExtractFileThumbnail (const A3DUTF8Char *pcFileName, A3DThumbnailData *pThumbnailData)
 Extract thumbnail stored in a CAD file. More...
 
A3DStatus A3DGet3DPDFStreams (const A3DUTF8Char *pcFileName, A3DStream3DPDFData **ppStreamData, A3DInt32 *piNumStreams)
 Function to retrieve all 3D streams embedded in a PDF document. More...
 
A3DStatus A3DGetFileFormat (const A3DUTF8Char *pcFileName, A3DEModellerType *peModellerType)
 Returns the format of a physical file. More...
 
A3DStatus A3DGetFileInformation (const A3DUTF8Char *pcFileName, A3DFileInformationData *pFileInformationData)
 Get file information a CAD file. More...
 
A3DVoid A3DRWParamsPrcReadHelperFree (A3DRWParamsPrcReadHelper *pA3DRWParamsPrcReadHelper)
 Free PRC read helper. More...
 

Detailed Description

Loads the model file with information from the input CAD file.

Please refer to HOOPS Exchange Supported File Formats documentation for list of available formats.

Enumeration Type Documentation

JT LOD to retrieve from file.

Version
8.0
Enumerator
JTTessLODLow 

Will load the lowest level of tessellation available in the JT file.

JTTessLODMedium 

Will load an in-between level of tessellation available in the JT file.

JTTessLODHigh 

Will load the highest level of tessellation available in the JT file.

A3DSDKReadWrite.

ReadingMode of the model file. Set which kind of content should be read.

Version
3.0
Enumerator
kA3DReadGeomOnly 

Read only geometry.

kA3DReadGeomAndTess 

Mixed mode: read geometry and tessellation.

kA3DReadTessOnly 

Read only tessellation.

Used to select which name to use from NEXT_ASSEMBLY_USAGE_OCCURRENCE as occurrence name.

Version
4.2
Enumerator
kA3DStepNameFromNAUO_ID 

First Field of NEXT_ASSEMBLY_USAGE_OCCURRENCE.

kA3DStepNameFromNAUO_NAME 

Second Field of NEXT_ASSEMBLY_USAGE_OCCURRENCE.

kA3DStepNameFromNAUO_DESCRIPTION 

Third Field of NEXT_ASSEMBLY_USAGE_OCCURRENCE.

Structure to specify the level of detail of the tessellation.

See A3DRWParamsTessellationData parameters. When a level is given, the Chord Height Ratio (A3DRWParamsTessellationData::m_dChordHeightRatio) and Wireframe Chord Angle (A3DRWParamsTessellationData::m_dAngleToleranceDeg) change to preset values for the selected level.

Version
3.0
Enumerator
kA3DTessLODExtraLow 

Extra Low level: when selected, these members are automatically defined with the following values:

kA3DTessLODLow 

Low level: when selected, these members are automatically defined with the following values:

kA3DTessLODMedium 

Medium level: when selected, these members are automatically defined with the following values:

kA3DTessLODHigh 

High level: when selected, these members are automatically defined with the following values:

kA3DTessLODExtraHigh 

Extra High level: when selected, these members are automatically defined with the following values:

kA3DTessLODUserDefined 

User Defined level: when selected, these members should be defined:

kA3DTessLODControlledPrecision 

This is a deprecated feature. Controlled Precision level: when selected, these members should be defined:

enum A3DEUnits

Unit used in the model file.

Version
3.0
Enumerator
kA3DUnitPoint 

Point.

kA3DUnitInch 

Inch.

kA3DUnitMillimeter 

Millimeter.

kA3DUnitCentimeter 

Centimeter.

kA3DUnitPicas 

Picas.

kA3DUnitFoot 

Foot.

kA3DUnitYard 

Yard.

kA3DUnitMeter 

Meter.

kA3DUnitKilometer 

Kilometer.

kA3DUnitMile 

Mile.

kA3DUnitUnknown 

Unknown.

Used to select how to read family tables.

Version
9.0
Enumerator
A3DProEFamTabAcceleratorFileOnly 

Only use accelerator file that is to say even there's tessellation or generic non will be used

A3DProEFamTabOrUseTessellation 

If the accelerator file isn't present then we search for the tessellation representation: if found and we use it

A3DProEFamTabOrUseWireAndGeneric 

If none of the accelerator file or the tessellation representation is present so we use the generic or wire representation: be aware that the representation will not be what the configuration should be! it's like a placebo in order to have something

Used to control the construction entities reading, entity such as sketch, curves...

Version
8.2
Enumerator
A3DProEReadConstructEntities_AsDatum 

Read wire according to the datum reading option

A3DProEReadConstructEntities_Yes 

read wire

A3DProEReadConstructEntities_No 

Do not read wire

Used to control the default PMI color: If you load a Wildfire file and set kA3DFileVersionSessionColor to:

  • kA3DFileVersionSessionColor, the PMI with no color will be displayed in yellow;
  • kA3DLastCreoVersionSessionColor, the PMI with no color will be displayed in blue as in Creo 2 (for HOOPS Exchange 6.0);
  • kA3DHExchangeSessionColor, the PMI with no color will be displayed with the color you chose.
    Version
    6.1
Enumerator
kA3DLastCreoVersionSessionColor 

Sets the default session color corresponding to the last version of Creo that HOOPS Exchange supports.

kA3DHExchangeSessionColor 

Uses HOOPS Exchange default color.

kA3DFileVersionSessionColor 

Lets the user define the color by using graphics parameters options ( A3DRWParamsPmiData::m_sDefaultColor).

Function Documentation

A3DStatus A3DAsmModelFileLoadFromFile ( const A3DUTF8Char pcFileName,
const A3DRWParamsLoadData pLoadParametersData,
A3DAsmModelFile **  ppModelFile 
)

Loads an A3DAsmModelFile from a physical file.

This function loads an A3DAsmModelFile from a file. The file could be in any supported CAD format.

Parameters
[in]pcFileNameReferences the path to the file containing the 3D CAD model.
[in]pLoadParametersDataReferences the parameters for reading.
[out]ppModelFileReferences a pointer into which should be stored the location of the model file. Set this pointer to null before calling the function.
Returns
A3D_INITIALIZE_NOT_CALLED
A3D_INVALID_DATA_STRUCT_NULL
A3D_INVALID_DATA_STRUCT_SIZE
A3D_INVALID_ENTITY_NULL
A3D_LOAD_CANNOT_ACCESS_CADFILE
A3D_LOAD_READER_NOT_IMPLEMENTED
A3D_LOAD_CANNOT_LOAD_MODEL
A3D_LOAD_CANNOT_LOAD_MULTIENTRY
A3D_LOAD_EMPTY_MULTI_MODEL
A3D_LOAD_MISSING_COMPONENTS
A3D_LOAD_MULTI_MODELS_CADFILE if the file contains multiple entries (see A3DRWParamsMultiEntriesData).
A3D_LOAD_INVALID_FILE_FORMAT
A3D_SUCCESS
Version
3.0
A3DStatus A3DAsmModelFileLoadFromPrcStream ( const A3DUTF8Char pcBufferStream,
unsigned int  uBufferLength,
A3DRWParamsPrcReadHelper **  ppPrcReadHelper,
A3DAsmModelFile **  ppModelFile 
)

Loads an A3DAsmModelFile from a PRC Buffer.

This function loads an A3DAsmModelFile from a PRC Buffer.

Parameters
[in]pcBufferStreamBuffer containing the PRC stream.
[in]uBufferLengthLength of pcBufferStream.
[in,out]ppPrcReadHelperReserved for future use.
[out]ppModelFileReferences a pointer into which the location should be stored. of the model file. Set this pointer to null before calling the function.
Returns
A3D_INITIALIZE_NOT_CALLED
A3D_INVALID_DATA_STRUCT_NULL
A3D_INVALID_DATA_STRUCT_SIZE
A3D_INVALID_ENTITY_NULL
A3D_LOAD_CANNOT_ACCESS_CADFILE
A3D_LOAD_READER_NOT_IMPLEMENTED
A3D_LOAD_CANNOT_LOAD_MODEL
A3D_LOAD_CANNOT_LOAD_MULTIENTRY
A3D_LOAD_EMPTY_MULTI_MODEL
A3D_LOAD_MISSING_COMPONENTS
A3D_LOAD_MULTI_MODELS_CADFILE if the file contains multiple entries (see A3DRWParamsMultiEntriesData).
A3D_LOAD_INVALID_FILE_FORMAT
A3D_SUCCESS
Version
5.2
A3DStatus A3DAsmModelFileLoadFromXMLFile ( const A3DUTF8Char pcFileName,
const A3DRWParamsLoadData pLoadParametersData,
A3DAsmModelFile **  ppModelFile 
)

Loads an A3DAsmModelFile from a XML file and a set of native cad files.

This function loads an A3DAsmModelFile from a XML file and a set of native cad files.

Parameters
[in]pcFileNameReferences the path to the file containing the XML description of the assembly.
[in]pLoadParametersDataReferences the parameters for reading the native parts.
[out]ppModelFileReferences a pointer into which should be stored the location of the model file. Set this pointer to null before calling the function.
Returns
A3D_INITIALIZE_NOT_CALLED
A3D_INVALID_DATA_STRUCT_NULL
A3D_INVALID_DATA_STRUCT_SIZE
A3D_INVALID_ENTITY_NULL
A3D_LOAD_CANNOT_ACCESS_CADFILE
A3D_LOAD_READER_NOT_IMPLEMENTED
A3D_LOAD_CANNOT_LOAD_MODEL
A3D_LOAD_CANNOT_LOAD_MULTIENTRY
A3D_LOAD_EMPTY_MULTI_MODEL
A3D_LOAD_MISSING_COMPONENTS
A3D_LOAD_MULTI_MODELS_CADFILE if the file contains multiple entries (see A3DRWParamsMultiEntriesData).
A3D_LOAD_INVALID_FILE_FORMAT
A3D_SUCCESS
Version
7.0
A3DStatus A3DCheckFileFormat ( const A3DUTF8Char pcFileName,
const int &  rCadTypeWanted 
)

Checks the format of a physical file.

Parameters
[in]pcFileNameReferences the path to the CAD file
[in]rCadTypeWantedReferences the format that the input CAD file is going to be checked against
Returns
A3D_INVALID_LICENSE
A3D_LOAD_CANNOT_ACCESS_CADFILE
A3D_LOAD_CANNOT_LOAD_MODEL
A3D_LOAD_CANNOT_LOAD_MULTIENTRY
A3D_LOAD_EMPTY_MULTI_MODEL
A3D_LOAD_INVALID_FILE_FORMAT
A3D_LOAD_MISSING_COMPONENTS
A3D_LOAD_MULTI_MODELS_CADFILE
A3D_LOAD_READER_NOT_IMPLEMENTED
A3D_WRITE_CANNOT_LOAD_WRITER
A3D_WRITE_ERROR
A3D_WRITE_WRITER_NOT_IMPLEMENTED
A3D_SUCCESS
Version
6.0
A3DStatus A3DExtractFileThumbnail ( const A3DUTF8Char pcFileName,
A3DThumbnailData pThumbnailData 
)
A3DStatus A3DGet3DPDFStreams ( const A3DUTF8Char pcFileName,
A3DStream3DPDFData **  ppStreamData,
A3DInt32 piNumStreams 
)

Function to retrieve all 3D streams embedded in a PDF document.

The stream is the raw binary data stored as a char* stream. A PRC stream can be interpreted with the function A3DAsmModelFileLoadFromPrcStream. A U3D stream needs to be written as a physical file before being read with classical A3DAsmModelFileLoadFromFile function.

Parameters
[in]pcFileNameReferences the path to the PDF file
[out]ppStreamDataArray of stream data
[out]piNumStreamsNumber of streams

If pcFileName is NULL, *ppStreamData will be freed if *piNumStreams is non-null. A3DGet3DPDFStreams(NULL, ppStreamData, piNumStreams) to release *ppStreamData.

Returns
A3D_LOAD_CANNOT_ACCESS_CADFILE
A3D_SUCCESS
Version
6.0
A3DStatus A3DGetFileFormat ( const A3DUTF8Char pcFileName,
A3DEModellerType peModellerType 
)
A3DStatus A3DGetFileInformation ( const A3DUTF8Char pcFileName,
A3DFileInformationData pFileInformationData 
)
A3DVoid A3DRWParamsPrcReadHelperFree ( A3DRWParamsPrcReadHelper pA3DRWParamsPrcReadHelper)

Free PRC read helper.

Parameters
[in,out]pA3DRWParamsPrcReadHelperThe helper to free.
Version
8.1