VS:IFC SetEntityProp
From Vectorworks Developer
.VectorScript|VectorScript ..VS:Function Reference|Function Reference ..VS:Function_Reference_Appendix|Appendix
Description
This function sets a value to the selected property of the IFC entity.FUNCTION IFC_SetEntityProp(
hObject :HANDLE;
inStrPropName :STRING;
inStrPropValue :STRING) : BOOLEAN;
def vs.IFC_SetEntityProp(hObject, inStrPropName, inStrPropValue): return BOOLEAN
Parameters
hObject HANDLE Handle to object inStrPropName STRING Name of the property inStrPropValue STRING Value of the property
Return Value
TRUE on success, FALSE indicates failure – incorrect handle, the object has no IFC data, incorrect name of the property.Note that, all of the mandatory properties of the IFC entity must be given, otherwise IFC exported file will be not valid (regarding the specification). Also, all properties with enumeration value must be set, even if they are optional - if not sure about the value, USERDEFINED or NOTDEFINED can be supplied – there are a lot of known issues with existing software implementations in case of missing values.
Example
Assume we have an extrude, that we want to be exported as a slab. IfcSlab has a property with enumeration value (“PredefinedType”), so it’s necessary to be set:VectorScript
PROCEDURE Test; VAR hExtrude : HANDLE; ok : BOOLEAN; BEGIN hExtrude := FSActLayer; ok := IFC_SetIFCEntity(hExtrude, 'IfcSlab'); ok := IFC_SetEntityProp(hExtrude, 'PredefinedType', 'BASESLAB'); END; RUN(Test);
Python
hExtrude = vs.FSActLayer() ok = vs.IFC_SetIFCEntity(hExtrude, 'IfcSlab') ok = vs.IFC_SetEntityProp(hExtrude, 'PredefinedType', 'BASESLAB')