sdaiCloseModel

This call can be used to close a model. Be aware that closing a model will release all memory allocated for this model, handles and strings allocated in the context of this model cannot be trusted anymore after this call.

Syntax

public const string IFCEngineDLL = @"IFCEngine.dll";

[DllImport(IFCEngineDLL, EntryPoint = "sdaiCloseModel")]
public static extern void sdaiCloseModel(Int32 model);    

Property model

Size: 32 bit / 4 byte (value)
Handle of the model containing the IFC file, this handle is needed in many other calls and given when the model is created.

Examples

Here you can find code snippits that show how the API call sdaiCloseModel can be used.

string ifcFileName = "myFile.ifc";

//
//  In case input strings are already UTF8, the following line 
//
Int32 model = IfcEngine.x86.sdaiOpenModelBN(0, ifcFileName, "IFC2X3_TC1.exp");

//
//  In case it is not sure each element with the string is UTF8, the following line is save
//    (will convert some of the characters, use of sdaiOpenModelBNUnicode is prefered)
//
Int32 model = IfcEngine.x86.sdaiOpenModelBN(0, System.Text.Encoding.UTF8.GetBytes(ifcFileName), System.Text.Encoding.UTF8.GetBytes("IFC2X3_TC1.exp"));

if (model != 0)
{
    ...         //  Use the open model to read/write/edit the content
    ...         //  or to create geometry

    string ifcFileNameSaving = "mySavedFile.ifc";

    //
    //  In case input strings are already UTF8, the following line
    //
    IfcEngine.x86.sdaiSaveModelBN(model, ifcFileNameSaving);

    //
    //  In case it is not sure each element with the string is UTF8, the following line is save
    //    (will convert some of the characters, use of sdaiSaveModelBNUnicode is prefered)
    //
    IfcEngine.x86.sdaiSaveModelBN(model, System.Text.Encoding.UTF8.GetBytes(ifcFileNameSaving));

    IfcEngine.x86.sdaiCloseModel(model);
    model = 0;  //  Not required of course
}