(attributeName) ?
sdaiCreateAggr(
instance,
sdaiGetAttrDefinition(
sdaiGetInstanceType(
instance
),
attributeName
)
) :
sdaiCreateAggr(
instance,
nullptr
);
Syntax
public const string ifcenginedll = @"ifcengine.dll"; [DllImport(ifcenginedll, EntryPoint = "sdaiCreateAggrBN")] public static extern Int64 sdaiCreateAggrBN(int_t instance, string attributeName); [DllImport(ifcenginedll, EntryPoint = "sdaiCreateAggrBN")] public static extern Int64 sdaiCreateAggrBN(int_t instance, byte[] attributeName);
Property instance
Size: 64 bit / 8 byte (value)Property attributeName
Size: 64 bit / 8 byte (reference)
Example (based on pure API calls)
Here you can find code snippets that show how the API call sdaiCreateAggrBN can be used.
using RDF; // include at least IFCEngine.cs within your solution // // Created result when stored as IFC: // #31313 = IFCPOSTALADDRESS($, $, $, $, ('RDF Ltd.', 'Main Office'), '32', 'Bankya', 'Sofia', '1320', 'Bulgaria'); // Int64 ifcPostalAddressInstance = RDF.IFCEngine.sdaiCreateInstanceBN(model, "IFCPOSTALADDRESS"); Int64 addressLines = RDF.IFCEngine.sdaiCreateAggrBN(ifcPostalAddressInstance, "AddressLines"); RDF.IFCEngine.sdaiAppend(addressLines, RDF.IFCEngine.sdaiSTRING, "RDF Ltd."); RDF.IFCEngine.sdaiAppend(addressLines, RDF.IFCEngine.sdaiSTRING, "Main Office"); RDF.IFCEngine.sdaiPutAttrBN(ifcPostalAddressInstance, "PostalBox", RDF.IFCEngine.sdaiSTRING, "32"); RDF.IFCEngine.sdaiPutAttrBN(ifcPostalAddressInstance, "Town", RDF.IFCEngine.sdaiSTRING, "Bankya"); RDF.IFCEngine.sdaiPutAttrBN(ifcPostalAddressInstance, "Region", RDF.IFCEngine.sdaiSTRING, "Sofia"); // It is allowed to mix sdaiUNICODE and sdaiSTRING RDF.IFCEngine.sdaiPutAttrBN(ifcPostalAddressInstance, "PostalCode", RDF.IFCEngine.sdaiUNICODE, "1320"); // as long as each call is consitent in itself. RDF.IFCEngine.sdaiPutAttrBN(ifcPostalAddressInstance, "Country", RDF.IFCEngine.sdaiSTRING, "Bulgaria");