Reads and writes a physical file containing a PRC model file; and creates and accesses model file entities. More...

Data Structures

struct  A3DAsmModelFileData
 ModelFile structure. More...
 

Enumerations

enum  A3DEModellerType {
  kA3DModellerUnknown = 0,
  kA3DModellerCatia = 2,
  kA3DModellerCatiaV5 = 3,
  kA3DModellerCadds = 4,
  kA3DModellerUnigraphics = 5,
  kA3DModellerParasolid = 6,
  kA3DModellerEuclid = 7,
  kA3DModellerIges = 9,
  kA3DModellerUnisurf = 10,
  kA3DModellerVda = 11,
  kA3DModellerStl = 12,
  kA3DModellerWrl = 13,
  kA3DModellerDxf = 14,
  kA3DModellerAcis = 15,
  kA3DModellerProE = 16,
  kA3DModellerStep = 18,
  kA3DModellerIdeas = 19,
  kA3DModellerJt = 20,
  kA3DModellerSlw = 22,
  kA3DModellerCgr = 23,
  kA3DModellerPrc = 24,
  kA3DModellerXvl = 25,
  kA3DModellerHpgl = 26,
  kA3DModellerTopSolid = 27,
  kA3DModellerOneSpaceDesigner = 28,
  kA3DModeller3dxml = 29,
  kA3DModellerInventor = 30,
  kA3DModellerPostScript = 31,
  kA3DModellerPDF = 32,
  kA3DModellerU3D = 33,
  kA3DModellerIFC = 34,
  kA3DModellerDWG = 35,
  kA3DModellerDWF = 36,
  kA3DModellerSE = 37,
  kA3DModellerOBJ = 38,
  kA3DModellerKMZ = 39,
  kA3DModellerDAE = 40,
  kA3DModeller3DS = 41,
  kA3DModellerRhino = 43,
  kA3DModellerXML = 44,
  kA3DModeller3mf = 45,
  kA3DModellerScs = 46,
  kA3DModeller3dHtml = 47,
  kA3DModellerHsf = 48,
  kA3DModellerGltf = 49,
  kA3DModellerRevit = 50,
  kA3DModellerFBX = 51
}
 A3DSDKStructure. More...
 

Functions

A3DStatus A3DAsmModelFileCreate (const A3DAsmModelFileData *pData, A3DAsmModelFile **ppModelFile)
 Creates an A3DAsmModelFile from A3DAsmModelFileData structure. More...
 
A3DStatus A3DAsmModelFileDelete (A3DAsmModelFile *pModelFile)
 Deletes the entire A3DAsmModelFile entity from memory. More...
 
A3DStatus A3DAsmModelFileGet (const A3DAsmModelFile *pModelFile, A3DAsmModelFileData *pData)
 Populates the A3DAsmModelFileData structure. More...
 
A3DStatus A3DAsmModelFileGetUnit (const A3DAsmModelFile *pModelFile, A3DDouble *pdUnit)
 Gives the unit of the model. More...
 
A3DStatus A3DAsmModelFileUnloadParts (A3DAsmModelFile *pModelFile, A3DUns32 uiPartsSize, A3DAsmProductOccurrence **ppParts)
 Removes all tessellation and geometry of an A3DAsmProductOccurrence entity This can only be done on parts. More...
 

Detailed Description

Reads and writes a physical file containing a PRC model file; and creates and accesses model file entities.

The A3DAsmModelFile is the root entity of the PRC data. It is the starting point for parsing a PRC file. It is also one of the arguments used to create a 3D annotation within a PDF document.

Entity type is kA3DTypeAsmModelFile.

See also
Technical Overview

Enumeration Type Documentation

A3DSDKStructure.

Modeller type

Version
2.1
Enumerator
kA3DModellerUnknown 

User modeller.

kA3DModellerCatia 

CATIA modeller.

kA3DModellerCatiaV5 

CATIA V5 modeller.

kA3DModellerCadds 

CADDS modeller.

kA3DModellerUnigraphics 

Unigraphics modeller.

kA3DModellerParasolid 

Parasolid modeller.

kA3DModellerEuclid 

Euclid modeller.

kA3DModellerIges 

IGES modeller.

kA3DModellerUnisurf 

Unisurf modeller.

kA3DModellerVda 

VDA modeller.

kA3DModellerStl 

STL modeller.

kA3DModellerWrl 

WRL modeller.

kA3DModellerDxf 

DXF modeller.

kA3DModellerAcis 

ACIS modeller.

kA3DModellerProE 

Pro/E modeller.

kA3DModellerStep 

STEP modeller.

kA3DModellerIdeas 

I-DEAS modeller.

kA3DModellerJt 

JT modeller.

kA3DModellerSlw 

SolidWorks modeller.

kA3DModellerCgr 

CGR modeller.

kA3DModellerPrc 

PRC modeller.

kA3DModellerXvl 

XVL modeller.

kA3DModellerHpgl 

HPGL modeller.

kA3DModellerTopSolid 

TopSolid modeller.

kA3DModellerOneSpaceDesigner 

OneSpace designer modeller.

kA3DModeller3dxml 

3DXML modeller.

kA3DModellerInventor 

Inventor modeller.

kA3DModellerPostScript 

Postscript modeller.

kA3DModellerPDF 

PDF modeller.

kA3DModellerU3D 

U3D modeller.

kA3DModellerIFC 

IFC modeller.

kA3DModellerDWG 

DWG modeller.

kA3DModellerDWF 

DWF modeller.

kA3DModellerSE 

SolidEdge modeller.

kA3DModellerOBJ 

OBJ modeller.

kA3DModellerKMZ 

KMZ modeller.

kA3DModellerDAE 

COLLADA modeller.

kA3DModeller3DS 

3DS modeller.

kA3DModellerRhino 

Rhino modeller.

kA3DModellerXML 

XML modeller.

kA3DModeller3mf 

3MF modeller.

kA3DModellerScs 

SCS modeller.

kA3DModeller3dHtml 

3DHTML modeller.

kA3DModellerHsf 

Hsf modeller.

kA3DModellerGltf 

GL modeller.

kA3DModellerRevit 

Revit modeller.

kA3DModellerFBX 

FBX modeller.

Function Documentation

A3DStatus A3DAsmModelFileGet ( const A3DAsmModelFile pModelFile,
A3DAsmModelFileData pData 
)

Populates the A3DAsmModelFileData structure.

Version
2.0
Parameters
pModelFileA reference to the model file, which is created by invoking A3DAsmModelFileLoadFromFile
pDataA reference to the A3DAsmModelFileData structure in which the HOOPS Exchange Library stores the model file data
Returns
A3D_INITIALIZE_NOT_CALLED
A3D_INVALID_DATA_STRUCT_SIZE
A3D_INVALID_DATA_STRUCT_NULL
A3D_INVALID_ENTITY_NULL
A3D_INVALID_ENTITY_TYPE
A3D_SUCCESS
Sample code
A3DAsmModelFile pModel = NULL;
/* Should call something here in order to get a valid A3DAsmModelFile */
iErr = A3DAsmModelFileGet( pModel , &sData );
if ( iErr == A3D_SUCCESS )
{
/* Insert here your own code to parse through members of Model File */
for (A3DUns32 ui=0;ui<sData.m_uiPOccurrencesSize;ui++)
{
/* current product occurrence is sData.m_ppPOccurrences[ui] */
}
iErr = A3DAsmModelFileGet( NULL, &sData );
}
A3DStatus A3DAsmModelFileDelete ( A3DAsmModelFile pModelFile)

Deletes the entire A3DAsmModelFile entity from memory.

Every entity under this model file is also deleted. This function is responsible for freeing the whole memory reserved for ModelFile. After this call, access to the model file is no longer possible, and pointer must be set to NULL.

Version
2.0
Returns
A3D_INVALID_ENTITY_NULL
A3D_INVALID_ENTITY_TYPE
A3D_SUCCESS
A3DStatus A3DAsmModelFileUnloadParts ( A3DAsmModelFile pModelFile,
A3DUns32  uiPartsSize,
A3DAsmProductOccurrence **  ppParts 
)

Removes all tessellation and geometry of an A3DAsmProductOccurrence entity This can only be done on parts.

Version
9.1
Parameters
pModelFileThe model file
uiPartsSizeSize of next array.
ppPartsArray of parts to unload.
Returns
A3D_INVALID_DATA_STRUCT_SIZE
A3D_INVALID_DATA_STRUCT_NULL
A3D_PRODUCTOCCURRENCE_INCONSISTENT_PART_EXTERNAL
A3D_PRODUCTOCCURRENCE_INCONSISTENT_EMPTY
A3D_SUCCESS.
A3DStatus A3DAsmModelFileGetUnit ( const A3DAsmModelFile pModelFile,
A3DDouble pdUnit 
)

Gives the unit of the model.

Version
12.0
Parameters
pModelFileA reference to the model file, which is created by invoking A3DAsmModelFileLoadFromFile
pdUnitA reference to the unit value
Returns
A3D_INITIALIZE_NOT_CALLED
A3D_INVALID_ENTITY_NULL
A3D_INVALID_ENTITY_TYPE
A3D_SUCCESS