Files
IfcOpenShell/src/ifcopenshell-python/ifcopenshell/express/rules/IFC2X3.py
T

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

15270 lines
307 KiB
Python
Raw Normal View History

2022-12-26 11:29:32 +01:00
import ifcopenshell
def exists(v):
if callable(v):
try: return v() is not None
except IndexError as e: return False
else: return v is not None
def nvl(v, default): return v if v is not None else default
sizeof = len
hiindex = len
blength = len
loindex = lambda x: 1
from math import *
unknown = 'UNKNOWN'
def usedin(inst, ref_name):
if inst is None:
return []
_, __, attr = ref_name.split('.')
def filter():
for ref, attr_idx in inst.wrapped_data.file.get_inverse(inst, allow_duplicate=True, with_attribute_indices=True):
if ref.wrapped_data.get_attribute_names()[attr_idx].lower() == attr:
yield ref
return list(filter())
class express_set(set):
def __rmul__(self, other):
return express_set(set(other) & self)
def __add__(self, other):
def make_list(v):
# Comply with 12.6.3 Union operator
if isinstance(v, (list, tuple, set, express_set)):
return list(v)
else:
return [v]
return express_set(list(self) + make_list(other))
__radd__ = __add__
def __repr__(self):
return repr(set(self))
def typeof(inst):
if not inst:
# If V evaluates to indeterminate (?), an empty set is returned.
return express_set([])
schema_name = inst.is_a(True).split('.')[0].lower()
def inner():
decl = ifcopenshell.ifcopenshell_wrapper.schema_by_name(schema_name).declaration_by_name(inst.is_a())
while decl:
yield '.'.join((schema_name, decl.name().lower()))
decl = decl.supertype()
return express_set(inner())
class enum_namespace:
def __getattr__(self, k):
return k.upper()
IfcActionSourceTypeEnum = enum_namespace()
dead_load_g = IfcActionSourceTypeEnum.DEAD_LOAD_G
completion_g1 = IfcActionSourceTypeEnum.COMPLETION_G1
live_load_q = IfcActionSourceTypeEnum.LIVE_LOAD_Q
snow_s = IfcActionSourceTypeEnum.SNOW_S
wind_w = IfcActionSourceTypeEnum.WIND_W
prestressing_p = IfcActionSourceTypeEnum.PRESTRESSING_P
settlement_u = IfcActionSourceTypeEnum.SETTLEMENT_U
temperature_t = IfcActionSourceTypeEnum.TEMPERATURE_T
earthquake_e = IfcActionSourceTypeEnum.EARTHQUAKE_E
fire = IfcActionSourceTypeEnum.FIRE
impulse = IfcActionSourceTypeEnum.IMPULSE
impact = IfcActionSourceTypeEnum.IMPACT
transport = IfcActionSourceTypeEnum.TRANSPORT
erection = IfcActionSourceTypeEnum.ERECTION
propping = IfcActionSourceTypeEnum.PROPPING
system_imperfection = IfcActionSourceTypeEnum.SYSTEM_IMPERFECTION
shrinkage = IfcActionSourceTypeEnum.SHRINKAGE
creep = IfcActionSourceTypeEnum.CREEP
lack_of_fit = IfcActionSourceTypeEnum.LACK_OF_FIT
buoyancy = IfcActionSourceTypeEnum.BUOYANCY
ice = IfcActionSourceTypeEnum.ICE
current = IfcActionSourceTypeEnum.CURRENT
wave = IfcActionSourceTypeEnum.WAVE
rain = IfcActionSourceTypeEnum.RAIN
brakes = IfcActionSourceTypeEnum.BRAKES
userdefined = IfcActionSourceTypeEnum.USERDEFINED
notdefined = IfcActionSourceTypeEnum.NOTDEFINED
IfcActionTypeEnum = enum_namespace()
permanent_g = IfcActionTypeEnum.PERMANENT_G
variable_q = IfcActionTypeEnum.VARIABLE_Q
extraordinary_a = IfcActionTypeEnum.EXTRAORDINARY_A
userdefined = IfcActionTypeEnum.USERDEFINED
notdefined = IfcActionTypeEnum.NOTDEFINED
IfcActuatorTypeEnum = enum_namespace()
electricactuator = IfcActuatorTypeEnum.ELECTRICACTUATOR
handoperatedactuator = IfcActuatorTypeEnum.HANDOPERATEDACTUATOR
hydraulicactuator = IfcActuatorTypeEnum.HYDRAULICACTUATOR
pneumaticactuator = IfcActuatorTypeEnum.PNEUMATICACTUATOR
thermostaticactuator = IfcActuatorTypeEnum.THERMOSTATICACTUATOR
userdefined = IfcActuatorTypeEnum.USERDEFINED
notdefined = IfcActuatorTypeEnum.NOTDEFINED
IfcAddressTypeEnum = enum_namespace()
office = IfcAddressTypeEnum.OFFICE
site = IfcAddressTypeEnum.SITE
home = IfcAddressTypeEnum.HOME
distributionpoint = IfcAddressTypeEnum.DISTRIBUTIONPOINT
userdefined = IfcAddressTypeEnum.USERDEFINED
IfcAheadOrBehind = enum_namespace()
ahead = IfcAheadOrBehind.AHEAD
behind = IfcAheadOrBehind.BEHIND
IfcAirTerminalBoxTypeEnum = enum_namespace()
constantflow = IfcAirTerminalBoxTypeEnum.CONSTANTFLOW
variableflowpressuredependant = IfcAirTerminalBoxTypeEnum.VARIABLEFLOWPRESSUREDEPENDANT
variableflowpressureindependant = IfcAirTerminalBoxTypeEnum.VARIABLEFLOWPRESSUREINDEPENDANT
userdefined = IfcAirTerminalBoxTypeEnum.USERDEFINED
notdefined = IfcAirTerminalBoxTypeEnum.NOTDEFINED
IfcAirTerminalTypeEnum = enum_namespace()
grille = IfcAirTerminalTypeEnum.GRILLE
register = IfcAirTerminalTypeEnum.REGISTER
diffuser = IfcAirTerminalTypeEnum.DIFFUSER
eyeball = IfcAirTerminalTypeEnum.EYEBALL
iris = IfcAirTerminalTypeEnum.IRIS
lineargrille = IfcAirTerminalTypeEnum.LINEARGRILLE
lineardiffuser = IfcAirTerminalTypeEnum.LINEARDIFFUSER
userdefined = IfcAirTerminalTypeEnum.USERDEFINED
notdefined = IfcAirTerminalTypeEnum.NOTDEFINED
IfcAirToAirHeatRecoveryTypeEnum = enum_namespace()
fixedplatecounterflowexchanger = IfcAirToAirHeatRecoveryTypeEnum.FIXEDPLATECOUNTERFLOWEXCHANGER
fixedplatecrossflowexchanger = IfcAirToAirHeatRecoveryTypeEnum.FIXEDPLATECROSSFLOWEXCHANGER
fixedplateparallelflowexchanger = IfcAirToAirHeatRecoveryTypeEnum.FIXEDPLATEPARALLELFLOWEXCHANGER
rotarywheel = IfcAirToAirHeatRecoveryTypeEnum.ROTARYWHEEL
runaroundcoilloop = IfcAirToAirHeatRecoveryTypeEnum.RUNAROUNDCOILLOOP
heatpipe = IfcAirToAirHeatRecoveryTypeEnum.HEATPIPE
twintowerenthalpyrecoveryloops = IfcAirToAirHeatRecoveryTypeEnum.TWINTOWERENTHALPYRECOVERYLOOPS
thermosiphonsealedtubeheatexchangers = IfcAirToAirHeatRecoveryTypeEnum.THERMOSIPHONSEALEDTUBEHEATEXCHANGERS
thermosiphoncoiltypeheatexchangers = IfcAirToAirHeatRecoveryTypeEnum.THERMOSIPHONCOILTYPEHEATEXCHANGERS
userdefined = IfcAirToAirHeatRecoveryTypeEnum.USERDEFINED
notdefined = IfcAirToAirHeatRecoveryTypeEnum.NOTDEFINED
IfcAlarmTypeEnum = enum_namespace()
bell = IfcAlarmTypeEnum.BELL
breakglassbutton = IfcAlarmTypeEnum.BREAKGLASSBUTTON
light = IfcAlarmTypeEnum.LIGHT
manualpullbox = IfcAlarmTypeEnum.MANUALPULLBOX
siren = IfcAlarmTypeEnum.SIREN
whistle = IfcAlarmTypeEnum.WHISTLE
userdefined = IfcAlarmTypeEnum.USERDEFINED
notdefined = IfcAlarmTypeEnum.NOTDEFINED
IfcAnalysisModelTypeEnum = enum_namespace()
in_plane_loading_2d = IfcAnalysisModelTypeEnum.IN_PLANE_LOADING_2D
out_plane_loading_2d = IfcAnalysisModelTypeEnum.OUT_PLANE_LOADING_2D
loading_3d = IfcAnalysisModelTypeEnum.LOADING_3D
userdefined = IfcAnalysisModelTypeEnum.USERDEFINED
notdefined = IfcAnalysisModelTypeEnum.NOTDEFINED
IfcAnalysisTheoryTypeEnum = enum_namespace()
first_order_theory = IfcAnalysisTheoryTypeEnum.FIRST_ORDER_THEORY
second_order_theory = IfcAnalysisTheoryTypeEnum.SECOND_ORDER_THEORY
third_order_theory = IfcAnalysisTheoryTypeEnum.THIRD_ORDER_THEORY
full_nonlinear_theory = IfcAnalysisTheoryTypeEnum.FULL_NONLINEAR_THEORY
userdefined = IfcAnalysisTheoryTypeEnum.USERDEFINED
notdefined = IfcAnalysisTheoryTypeEnum.NOTDEFINED
IfcArithmeticOperatorEnum = enum_namespace()
add = IfcArithmeticOperatorEnum.ADD
divide = IfcArithmeticOperatorEnum.DIVIDE
multiply = IfcArithmeticOperatorEnum.MULTIPLY
subtract = IfcArithmeticOperatorEnum.SUBTRACT
IfcAssemblyPlaceEnum = enum_namespace()
site = IfcAssemblyPlaceEnum.SITE
factory = IfcAssemblyPlaceEnum.FACTORY
notdefined = IfcAssemblyPlaceEnum.NOTDEFINED
IfcBSplineCurveForm = enum_namespace()
polyline_form = IfcBSplineCurveForm.POLYLINE_FORM
circular_arc = IfcBSplineCurveForm.CIRCULAR_ARC
elliptic_arc = IfcBSplineCurveForm.ELLIPTIC_ARC
parabolic_arc = IfcBSplineCurveForm.PARABOLIC_ARC
hyperbolic_arc = IfcBSplineCurveForm.HYPERBOLIC_ARC
unspecified = IfcBSplineCurveForm.UNSPECIFIED
IfcBeamTypeEnum = enum_namespace()
beam = IfcBeamTypeEnum.BEAM
joist = IfcBeamTypeEnum.JOIST
lintel = IfcBeamTypeEnum.LINTEL
t_beam = IfcBeamTypeEnum.T_BEAM
userdefined = IfcBeamTypeEnum.USERDEFINED
notdefined = IfcBeamTypeEnum.NOTDEFINED
IfcBenchmarkEnum = enum_namespace()
greaterthan = IfcBenchmarkEnum.GREATERTHAN
greaterthanorequalto = IfcBenchmarkEnum.GREATERTHANOREQUALTO
lessthan = IfcBenchmarkEnum.LESSTHAN
lessthanorequalto = IfcBenchmarkEnum.LESSTHANOREQUALTO
equalto = IfcBenchmarkEnum.EQUALTO
notequalto = IfcBenchmarkEnum.NOTEQUALTO
IfcBoilerTypeEnum = enum_namespace()
water = IfcBoilerTypeEnum.WATER
steam = IfcBoilerTypeEnum.STEAM
userdefined = IfcBoilerTypeEnum.USERDEFINED
notdefined = IfcBoilerTypeEnum.NOTDEFINED
IfcBooleanOperator = enum_namespace()
union = IfcBooleanOperator.UNION
intersection = IfcBooleanOperator.INTERSECTION
difference = IfcBooleanOperator.DIFFERENCE
IfcBuildingElementProxyTypeEnum = enum_namespace()
userdefined = IfcBuildingElementProxyTypeEnum.USERDEFINED
notdefined = IfcBuildingElementProxyTypeEnum.NOTDEFINED
IfcCableCarrierFittingTypeEnum = enum_namespace()
bend = IfcCableCarrierFittingTypeEnum.BEND
cross = IfcCableCarrierFittingTypeEnum.CROSS
reducer = IfcCableCarrierFittingTypeEnum.REDUCER
tee = IfcCableCarrierFittingTypeEnum.TEE
userdefined = IfcCableCarrierFittingTypeEnum.USERDEFINED
notdefined = IfcCableCarrierFittingTypeEnum.NOTDEFINED
IfcCableCarrierSegmentTypeEnum = enum_namespace()
cableladdersegment = IfcCableCarrierSegmentTypeEnum.CABLELADDERSEGMENT
cabletraysegment = IfcCableCarrierSegmentTypeEnum.CABLETRAYSEGMENT
cabletrunkingsegment = IfcCableCarrierSegmentTypeEnum.CABLETRUNKINGSEGMENT
conduitsegment = IfcCableCarrierSegmentTypeEnum.CONDUITSEGMENT
userdefined = IfcCableCarrierSegmentTypeEnum.USERDEFINED
notdefined = IfcCableCarrierSegmentTypeEnum.NOTDEFINED
IfcCableSegmentTypeEnum = enum_namespace()
cablesegment = IfcCableSegmentTypeEnum.CABLESEGMENT
conductorsegment = IfcCableSegmentTypeEnum.CONDUCTORSEGMENT
userdefined = IfcCableSegmentTypeEnum.USERDEFINED
notdefined = IfcCableSegmentTypeEnum.NOTDEFINED
IfcChangeActionEnum = enum_namespace()
nochange = IfcChangeActionEnum.NOCHANGE
modified = IfcChangeActionEnum.MODIFIED
added = IfcChangeActionEnum.ADDED
deleted = IfcChangeActionEnum.DELETED
modifiedadded = IfcChangeActionEnum.MODIFIEDADDED
modifieddeleted = IfcChangeActionEnum.MODIFIEDDELETED
IfcChillerTypeEnum = enum_namespace()
aircooled = IfcChillerTypeEnum.AIRCOOLED
watercooled = IfcChillerTypeEnum.WATERCOOLED
heatrecovery = IfcChillerTypeEnum.HEATRECOVERY
userdefined = IfcChillerTypeEnum.USERDEFINED
notdefined = IfcChillerTypeEnum.NOTDEFINED
IfcCoilTypeEnum = enum_namespace()
dxcoolingcoil = IfcCoilTypeEnum.DXCOOLINGCOIL
watercoolingcoil = IfcCoilTypeEnum.WATERCOOLINGCOIL
steamheatingcoil = IfcCoilTypeEnum.STEAMHEATINGCOIL
waterheatingcoil = IfcCoilTypeEnum.WATERHEATINGCOIL
electricheatingcoil = IfcCoilTypeEnum.ELECTRICHEATINGCOIL
gasheatingcoil = IfcCoilTypeEnum.GASHEATINGCOIL
userdefined = IfcCoilTypeEnum.USERDEFINED
notdefined = IfcCoilTypeEnum.NOTDEFINED
IfcColumnTypeEnum = enum_namespace()
column = IfcColumnTypeEnum.COLUMN
userdefined = IfcColumnTypeEnum.USERDEFINED
notdefined = IfcColumnTypeEnum.NOTDEFINED
IfcCompressorTypeEnum = enum_namespace()
dynamic = IfcCompressorTypeEnum.DYNAMIC
reciprocating = IfcCompressorTypeEnum.RECIPROCATING
rotary = IfcCompressorTypeEnum.ROTARY
scroll = IfcCompressorTypeEnum.SCROLL
trochoidal = IfcCompressorTypeEnum.TROCHOIDAL
singlestage = IfcCompressorTypeEnum.SINGLESTAGE
booster = IfcCompressorTypeEnum.BOOSTER
opentype = IfcCompressorTypeEnum.OPENTYPE
hermetic = IfcCompressorTypeEnum.HERMETIC
semihermetic = IfcCompressorTypeEnum.SEMIHERMETIC
weldedshellhermetic = IfcCompressorTypeEnum.WELDEDSHELLHERMETIC
rollingpiston = IfcCompressorTypeEnum.ROLLINGPISTON
rotaryvane = IfcCompressorTypeEnum.ROTARYVANE
singlescrew = IfcCompressorTypeEnum.SINGLESCREW
twinscrew = IfcCompressorTypeEnum.TWINSCREW
userdefined = IfcCompressorTypeEnum.USERDEFINED
notdefined = IfcCompressorTypeEnum.NOTDEFINED
IfcCondenserTypeEnum = enum_namespace()
watercooledshelltube = IfcCondenserTypeEnum.WATERCOOLEDSHELLTUBE
watercooledshellcoil = IfcCondenserTypeEnum.WATERCOOLEDSHELLCOIL
watercooledtubeintube = IfcCondenserTypeEnum.WATERCOOLEDTUBEINTUBE
watercooledbrazedplate = IfcCondenserTypeEnum.WATERCOOLEDBRAZEDPLATE
aircooled = IfcCondenserTypeEnum.AIRCOOLED
evaporativecooled = IfcCondenserTypeEnum.EVAPORATIVECOOLED
userdefined = IfcCondenserTypeEnum.USERDEFINED
notdefined = IfcCondenserTypeEnum.NOTDEFINED
IfcConnectionTypeEnum = enum_namespace()
atpath = IfcConnectionTypeEnum.ATPATH
atstart = IfcConnectionTypeEnum.ATSTART
atend = IfcConnectionTypeEnum.ATEND
notdefined = IfcConnectionTypeEnum.NOTDEFINED
IfcConstraintEnum = enum_namespace()
hard = IfcConstraintEnum.HARD
soft = IfcConstraintEnum.SOFT
advisory = IfcConstraintEnum.ADVISORY
userdefined = IfcConstraintEnum.USERDEFINED
notdefined = IfcConstraintEnum.NOTDEFINED
IfcControllerTypeEnum = enum_namespace()
floating = IfcControllerTypeEnum.FLOATING
proportional = IfcControllerTypeEnum.PROPORTIONAL
proportionalintegral = IfcControllerTypeEnum.PROPORTIONALINTEGRAL
proportionalintegralderivative = IfcControllerTypeEnum.PROPORTIONALINTEGRALDERIVATIVE
timedtwoposition = IfcControllerTypeEnum.TIMEDTWOPOSITION
twoposition = IfcControllerTypeEnum.TWOPOSITION
userdefined = IfcControllerTypeEnum.USERDEFINED
notdefined = IfcControllerTypeEnum.NOTDEFINED
IfcCooledBeamTypeEnum = enum_namespace()
active = IfcCooledBeamTypeEnum.ACTIVE
passive = IfcCooledBeamTypeEnum.PASSIVE
userdefined = IfcCooledBeamTypeEnum.USERDEFINED
notdefined = IfcCooledBeamTypeEnum.NOTDEFINED
IfcCoolingTowerTypeEnum = enum_namespace()
naturaldraft = IfcCoolingTowerTypeEnum.NATURALDRAFT
mechanicalinduceddraft = IfcCoolingTowerTypeEnum.MECHANICALINDUCEDDRAFT
mechanicalforceddraft = IfcCoolingTowerTypeEnum.MECHANICALFORCEDDRAFT
userdefined = IfcCoolingTowerTypeEnum.USERDEFINED
notdefined = IfcCoolingTowerTypeEnum.NOTDEFINED
IfcCostScheduleTypeEnum = enum_namespace()
budget = IfcCostScheduleTypeEnum.BUDGET
costplan = IfcCostScheduleTypeEnum.COSTPLAN
estimate = IfcCostScheduleTypeEnum.ESTIMATE
tender = IfcCostScheduleTypeEnum.TENDER
pricedbillofquantities = IfcCostScheduleTypeEnum.PRICEDBILLOFQUANTITIES
unpricedbillofquantities = IfcCostScheduleTypeEnum.UNPRICEDBILLOFQUANTITIES
scheduleofrates = IfcCostScheduleTypeEnum.SCHEDULEOFRATES
userdefined = IfcCostScheduleTypeEnum.USERDEFINED
notdefined = IfcCostScheduleTypeEnum.NOTDEFINED
IfcCoveringTypeEnum = enum_namespace()
ceiling = IfcCoveringTypeEnum.CEILING
flooring = IfcCoveringTypeEnum.FLOORING
cladding = IfcCoveringTypeEnum.CLADDING
roofing = IfcCoveringTypeEnum.ROOFING
insulation = IfcCoveringTypeEnum.INSULATION
membrane = IfcCoveringTypeEnum.MEMBRANE
sleeving = IfcCoveringTypeEnum.SLEEVING
wrapping = IfcCoveringTypeEnum.WRAPPING
userdefined = IfcCoveringTypeEnum.USERDEFINED
notdefined = IfcCoveringTypeEnum.NOTDEFINED
IfcCurrencyEnum = enum_namespace()
aed = IfcCurrencyEnum.AED
aes = IfcCurrencyEnum.AES
ats = IfcCurrencyEnum.ATS
aud = IfcCurrencyEnum.AUD
bbd = IfcCurrencyEnum.BBD
beg = IfcCurrencyEnum.BEG
bgl = IfcCurrencyEnum.BGL
bhd = IfcCurrencyEnum.BHD
bmd = IfcCurrencyEnum.BMD
bnd = IfcCurrencyEnum.BND
brl = IfcCurrencyEnum.BRL
bsd = IfcCurrencyEnum.BSD
bwp = IfcCurrencyEnum.BWP
bzd = IfcCurrencyEnum.BZD
cad = IfcCurrencyEnum.CAD
cbd = IfcCurrencyEnum.CBD
chf = IfcCurrencyEnum.CHF
clp = IfcCurrencyEnum.CLP
cny = IfcCurrencyEnum.CNY
cys = IfcCurrencyEnum.CYS
czk = IfcCurrencyEnum.CZK
ddp = IfcCurrencyEnum.DDP
dem = IfcCurrencyEnum.DEM
dkk = IfcCurrencyEnum.DKK
egl = IfcCurrencyEnum.EGL
est = IfcCurrencyEnum.EST
eur = IfcCurrencyEnum.EUR
fak = IfcCurrencyEnum.FAK
fim = IfcCurrencyEnum.FIM
fjd = IfcCurrencyEnum.FJD
fkp = IfcCurrencyEnum.FKP
frf = IfcCurrencyEnum.FRF
gbp = IfcCurrencyEnum.GBP
gip = IfcCurrencyEnum.GIP
gmd = IfcCurrencyEnum.GMD
grx = IfcCurrencyEnum.GRX
hkd = IfcCurrencyEnum.HKD
huf = IfcCurrencyEnum.HUF
ick = IfcCurrencyEnum.ICK
idr = IfcCurrencyEnum.IDR
ils = IfcCurrencyEnum.ILS
inr = IfcCurrencyEnum.INR
irp = IfcCurrencyEnum.IRP
itl = IfcCurrencyEnum.ITL
jmd = IfcCurrencyEnum.JMD
jod = IfcCurrencyEnum.JOD
jpy = IfcCurrencyEnum.JPY
kes = IfcCurrencyEnum.KES
krw = IfcCurrencyEnum.KRW
kwd = IfcCurrencyEnum.KWD
kyd = IfcCurrencyEnum.KYD
lkr = IfcCurrencyEnum.LKR
luf = IfcCurrencyEnum.LUF
mtl = IfcCurrencyEnum.MTL
mur = IfcCurrencyEnum.MUR
mxn = IfcCurrencyEnum.MXN
myr = IfcCurrencyEnum.MYR
nlg = IfcCurrencyEnum.NLG
nzd = IfcCurrencyEnum.NZD
omr = IfcCurrencyEnum.OMR
pgk = IfcCurrencyEnum.PGK
php = IfcCurrencyEnum.PHP
pkr = IfcCurrencyEnum.PKR
pln = IfcCurrencyEnum.PLN
ptn = IfcCurrencyEnum.PTN
qar = IfcCurrencyEnum.QAR
rur = IfcCurrencyEnum.RUR
sar = IfcCurrencyEnum.SAR
scr = IfcCurrencyEnum.SCR
sek = IfcCurrencyEnum.SEK
sgd = IfcCurrencyEnum.SGD
skp = IfcCurrencyEnum.SKP
thb = IfcCurrencyEnum.THB
trl = IfcCurrencyEnum.TRL
ttd = IfcCurrencyEnum.TTD
twd = IfcCurrencyEnum.TWD
usd = IfcCurrencyEnum.USD
veb = IfcCurrencyEnum.VEB
vnd = IfcCurrencyEnum.VND
xeu = IfcCurrencyEnum.XEU
zar = IfcCurrencyEnum.ZAR
zwd = IfcCurrencyEnum.ZWD
nok = IfcCurrencyEnum.NOK
IfcCurtainWallTypeEnum = enum_namespace()
userdefined = IfcCurtainWallTypeEnum.USERDEFINED
notdefined = IfcCurtainWallTypeEnum.NOTDEFINED
IfcDamperTypeEnum = enum_namespace()
controldamper = IfcDamperTypeEnum.CONTROLDAMPER
firedamper = IfcDamperTypeEnum.FIREDAMPER
smokedamper = IfcDamperTypeEnum.SMOKEDAMPER
firesmokedamper = IfcDamperTypeEnum.FIRESMOKEDAMPER
backdraftdamper = IfcDamperTypeEnum.BACKDRAFTDAMPER
reliefdamper = IfcDamperTypeEnum.RELIEFDAMPER
blastdamper = IfcDamperTypeEnum.BLASTDAMPER
gravitydamper = IfcDamperTypeEnum.GRAVITYDAMPER
gravityreliefdamper = IfcDamperTypeEnum.GRAVITYRELIEFDAMPER
balancingdamper = IfcDamperTypeEnum.BALANCINGDAMPER
fumehoodexhaust = IfcDamperTypeEnum.FUMEHOODEXHAUST
userdefined = IfcDamperTypeEnum.USERDEFINED
notdefined = IfcDamperTypeEnum.NOTDEFINED
IfcDataOriginEnum = enum_namespace()
measured = IfcDataOriginEnum.MEASURED
predicted = IfcDataOriginEnum.PREDICTED
simulated = IfcDataOriginEnum.SIMULATED
userdefined = IfcDataOriginEnum.USERDEFINED
notdefined = IfcDataOriginEnum.NOTDEFINED
IfcDerivedUnitEnum = enum_namespace()
angularvelocityunit = IfcDerivedUnitEnum.ANGULARVELOCITYUNIT
compoundplaneangleunit = IfcDerivedUnitEnum.COMPOUNDPLANEANGLEUNIT
dynamicviscosityunit = IfcDerivedUnitEnum.DYNAMICVISCOSITYUNIT
heatfluxdensityunit = IfcDerivedUnitEnum.HEATFLUXDENSITYUNIT
integercountrateunit = IfcDerivedUnitEnum.INTEGERCOUNTRATEUNIT
isothermalmoisturecapacityunit = IfcDerivedUnitEnum.ISOTHERMALMOISTURECAPACITYUNIT
kinematicviscosityunit = IfcDerivedUnitEnum.KINEMATICVISCOSITYUNIT
linearvelocityunit = IfcDerivedUnitEnum.LINEARVELOCITYUNIT
massdensityunit = IfcDerivedUnitEnum.MASSDENSITYUNIT
massflowrateunit = IfcDerivedUnitEnum.MASSFLOWRATEUNIT
moisturediffusivityunit = IfcDerivedUnitEnum.MOISTUREDIFFUSIVITYUNIT
molecularweightunit = IfcDerivedUnitEnum.MOLECULARWEIGHTUNIT
specificheatcapacityunit = IfcDerivedUnitEnum.SPECIFICHEATCAPACITYUNIT
thermaladmittanceunit = IfcDerivedUnitEnum.THERMALADMITTANCEUNIT
thermalconductanceunit = IfcDerivedUnitEnum.THERMALCONDUCTANCEUNIT
thermalresistanceunit = IfcDerivedUnitEnum.THERMALRESISTANCEUNIT
thermaltransmittanceunit = IfcDerivedUnitEnum.THERMALTRANSMITTANCEUNIT
vaporpermeabilityunit = IfcDerivedUnitEnum.VAPORPERMEABILITYUNIT
volumetricflowrateunit = IfcDerivedUnitEnum.VOLUMETRICFLOWRATEUNIT
rotationalfrequencyunit = IfcDerivedUnitEnum.ROTATIONALFREQUENCYUNIT
torqueunit = IfcDerivedUnitEnum.TORQUEUNIT
momentofinertiaunit = IfcDerivedUnitEnum.MOMENTOFINERTIAUNIT
linearmomentunit = IfcDerivedUnitEnum.LINEARMOMENTUNIT
linearforceunit = IfcDerivedUnitEnum.LINEARFORCEUNIT
planarforceunit = IfcDerivedUnitEnum.PLANARFORCEUNIT
modulusofelasticityunit = IfcDerivedUnitEnum.MODULUSOFELASTICITYUNIT
shearmodulusunit = IfcDerivedUnitEnum.SHEARMODULUSUNIT
linearstiffnessunit = IfcDerivedUnitEnum.LINEARSTIFFNESSUNIT
rotationalstiffnessunit = IfcDerivedUnitEnum.ROTATIONALSTIFFNESSUNIT
modulusofsubgradereactionunit = IfcDerivedUnitEnum.MODULUSOFSUBGRADEREACTIONUNIT
accelerationunit = IfcDerivedUnitEnum.ACCELERATIONUNIT
curvatureunit = IfcDerivedUnitEnum.CURVATUREUNIT
heatingvalueunit = IfcDerivedUnitEnum.HEATINGVALUEUNIT
ionconcentrationunit = IfcDerivedUnitEnum.IONCONCENTRATIONUNIT
luminousintensitydistributionunit = IfcDerivedUnitEnum.LUMINOUSINTENSITYDISTRIBUTIONUNIT
massperlengthunit = IfcDerivedUnitEnum.MASSPERLENGTHUNIT
modulusoflinearsubgradereactionunit = IfcDerivedUnitEnum.MODULUSOFLINEARSUBGRADEREACTIONUNIT
modulusofrotationalsubgradereactionunit = IfcDerivedUnitEnum.MODULUSOFROTATIONALSUBGRADEREACTIONUNIT
phunit = IfcDerivedUnitEnum.PHUNIT
rotationalmassunit = IfcDerivedUnitEnum.ROTATIONALMASSUNIT
sectionareaintegralunit = IfcDerivedUnitEnum.SECTIONAREAINTEGRALUNIT
sectionmodulusunit = IfcDerivedUnitEnum.SECTIONMODULUSUNIT
soundpowerunit = IfcDerivedUnitEnum.SOUNDPOWERUNIT
soundpressureunit = IfcDerivedUnitEnum.SOUNDPRESSUREUNIT
temperaturegradientunit = IfcDerivedUnitEnum.TEMPERATUREGRADIENTUNIT
thermalexpansioncoefficientunit = IfcDerivedUnitEnum.THERMALEXPANSIONCOEFFICIENTUNIT
warpingconstantunit = IfcDerivedUnitEnum.WARPINGCONSTANTUNIT
warpingmomentunit = IfcDerivedUnitEnum.WARPINGMOMENTUNIT
userdefined = IfcDerivedUnitEnum.USERDEFINED
IfcDimensionExtentUsage = enum_namespace()
origin = IfcDimensionExtentUsage.ORIGIN
target = IfcDimensionExtentUsage.TARGET
IfcDirectionSenseEnum = enum_namespace()
positive = IfcDirectionSenseEnum.POSITIVE
negative = IfcDirectionSenseEnum.NEGATIVE
IfcDistributionChamberElementTypeEnum = enum_namespace()
formedduct = IfcDistributionChamberElementTypeEnum.FORMEDDUCT
inspectionchamber = IfcDistributionChamberElementTypeEnum.INSPECTIONCHAMBER
inspectionpit = IfcDistributionChamberElementTypeEnum.INSPECTIONPIT
manhole = IfcDistributionChamberElementTypeEnum.MANHOLE
meterchamber = IfcDistributionChamberElementTypeEnum.METERCHAMBER
sump = IfcDistributionChamberElementTypeEnum.SUMP
trench = IfcDistributionChamberElementTypeEnum.TRENCH
valvechamber = IfcDistributionChamberElementTypeEnum.VALVECHAMBER
userdefined = IfcDistributionChamberElementTypeEnum.USERDEFINED
notdefined = IfcDistributionChamberElementTypeEnum.NOTDEFINED
IfcDocumentConfidentialityEnum = enum_namespace()
public = IfcDocumentConfidentialityEnum.PUBLIC
restricted = IfcDocumentConfidentialityEnum.RESTRICTED
confidential = IfcDocumentConfidentialityEnum.CONFIDENTIAL
personal = IfcDocumentConfidentialityEnum.PERSONAL
userdefined = IfcDocumentConfidentialityEnum.USERDEFINED
notdefined = IfcDocumentConfidentialityEnum.NOTDEFINED
IfcDocumentStatusEnum = enum_namespace()
draft = IfcDocumentStatusEnum.DRAFT
finaldraft = IfcDocumentStatusEnum.FINALDRAFT
final = IfcDocumentStatusEnum.FINAL
revision = IfcDocumentStatusEnum.REVISION
notdefined = IfcDocumentStatusEnum.NOTDEFINED
IfcDoorPanelOperationEnum = enum_namespace()
swinging = IfcDoorPanelOperationEnum.SWINGING
double_acting = IfcDoorPanelOperationEnum.DOUBLE_ACTING
sliding = IfcDoorPanelOperationEnum.SLIDING
folding = IfcDoorPanelOperationEnum.FOLDING
revolving = IfcDoorPanelOperationEnum.REVOLVING
rollingup = IfcDoorPanelOperationEnum.ROLLINGUP
userdefined = IfcDoorPanelOperationEnum.USERDEFINED
notdefined = IfcDoorPanelOperationEnum.NOTDEFINED
IfcDoorPanelPositionEnum = enum_namespace()
left = IfcDoorPanelPositionEnum.LEFT
middle = IfcDoorPanelPositionEnum.MIDDLE
right = IfcDoorPanelPositionEnum.RIGHT
notdefined = IfcDoorPanelPositionEnum.NOTDEFINED
IfcDoorStyleConstructionEnum = enum_namespace()
aluminium = IfcDoorStyleConstructionEnum.ALUMINIUM
high_grade_steel = IfcDoorStyleConstructionEnum.HIGH_GRADE_STEEL
steel = IfcDoorStyleConstructionEnum.STEEL
wood = IfcDoorStyleConstructionEnum.WOOD
aluminium_wood = IfcDoorStyleConstructionEnum.ALUMINIUM_WOOD
aluminium_plastic = IfcDoorStyleConstructionEnum.ALUMINIUM_PLASTIC
plastic = IfcDoorStyleConstructionEnum.PLASTIC
userdefined = IfcDoorStyleConstructionEnum.USERDEFINED
notdefined = IfcDoorStyleConstructionEnum.NOTDEFINED
IfcDoorStyleOperationEnum = enum_namespace()
single_swing_left = IfcDoorStyleOperationEnum.SINGLE_SWING_LEFT
single_swing_right = IfcDoorStyleOperationEnum.SINGLE_SWING_RIGHT
double_door_single_swing = IfcDoorStyleOperationEnum.DOUBLE_DOOR_SINGLE_SWING
double_door_single_swing_opposite_left = IfcDoorStyleOperationEnum.DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT
double_door_single_swing_opposite_right = IfcDoorStyleOperationEnum.DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT
double_swing_left = IfcDoorStyleOperationEnum.DOUBLE_SWING_LEFT
double_swing_right = IfcDoorStyleOperationEnum.DOUBLE_SWING_RIGHT
double_door_double_swing = IfcDoorStyleOperationEnum.DOUBLE_DOOR_DOUBLE_SWING
sliding_to_left = IfcDoorStyleOperationEnum.SLIDING_TO_LEFT
sliding_to_right = IfcDoorStyleOperationEnum.SLIDING_TO_RIGHT
double_door_sliding = IfcDoorStyleOperationEnum.DOUBLE_DOOR_SLIDING
folding_to_left = IfcDoorStyleOperationEnum.FOLDING_TO_LEFT
folding_to_right = IfcDoorStyleOperationEnum.FOLDING_TO_RIGHT
double_door_folding = IfcDoorStyleOperationEnum.DOUBLE_DOOR_FOLDING
revolving = IfcDoorStyleOperationEnum.REVOLVING
rollingup = IfcDoorStyleOperationEnum.ROLLINGUP
userdefined = IfcDoorStyleOperationEnum.USERDEFINED
notdefined = IfcDoorStyleOperationEnum.NOTDEFINED
IfcDuctFittingTypeEnum = enum_namespace()
bend = IfcDuctFittingTypeEnum.BEND
connector = IfcDuctFittingTypeEnum.CONNECTOR
entry = IfcDuctFittingTypeEnum.ENTRY
exit = IfcDuctFittingTypeEnum.EXIT
junction = IfcDuctFittingTypeEnum.JUNCTION
obstruction = IfcDuctFittingTypeEnum.OBSTRUCTION
transition = IfcDuctFittingTypeEnum.TRANSITION
userdefined = IfcDuctFittingTypeEnum.USERDEFINED
notdefined = IfcDuctFittingTypeEnum.NOTDEFINED
IfcDuctSegmentTypeEnum = enum_namespace()
rigidsegment = IfcDuctSegmentTypeEnum.RIGIDSEGMENT
flexiblesegment = IfcDuctSegmentTypeEnum.FLEXIBLESEGMENT
userdefined = IfcDuctSegmentTypeEnum.USERDEFINED
notdefined = IfcDuctSegmentTypeEnum.NOTDEFINED
IfcDuctSilencerTypeEnum = enum_namespace()
flatoval = IfcDuctSilencerTypeEnum.FLATOVAL
rectangular = IfcDuctSilencerTypeEnum.RECTANGULAR
round = IfcDuctSilencerTypeEnum.ROUND
userdefined = IfcDuctSilencerTypeEnum.USERDEFINED
notdefined = IfcDuctSilencerTypeEnum.NOTDEFINED
IfcElectricApplianceTypeEnum = enum_namespace()
computer = IfcElectricApplianceTypeEnum.COMPUTER
directwaterheater = IfcElectricApplianceTypeEnum.DIRECTWATERHEATER
dishwasher = IfcElectricApplianceTypeEnum.DISHWASHER
electriccooker = IfcElectricApplianceTypeEnum.ELECTRICCOOKER
electricheater = IfcElectricApplianceTypeEnum.ELECTRICHEATER
facsimile = IfcElectricApplianceTypeEnum.FACSIMILE
freestandingfan = IfcElectricApplianceTypeEnum.FREESTANDINGFAN
freezer = IfcElectricApplianceTypeEnum.FREEZER
fridge_freezer = IfcElectricApplianceTypeEnum.FRIDGE_FREEZER
handdryer = IfcElectricApplianceTypeEnum.HANDDRYER
indirectwaterheater = IfcElectricApplianceTypeEnum.INDIRECTWATERHEATER
microwave = IfcElectricApplianceTypeEnum.MICROWAVE
photocopier = IfcElectricApplianceTypeEnum.PHOTOCOPIER
printer = IfcElectricApplianceTypeEnum.PRINTER
refrigerator = IfcElectricApplianceTypeEnum.REFRIGERATOR
radiantheater = IfcElectricApplianceTypeEnum.RADIANTHEATER
scanner = IfcElectricApplianceTypeEnum.SCANNER
telephone = IfcElectricApplianceTypeEnum.TELEPHONE
tumbledryer = IfcElectricApplianceTypeEnum.TUMBLEDRYER
tv = IfcElectricApplianceTypeEnum.TV
vendingmachine = IfcElectricApplianceTypeEnum.VENDINGMACHINE
washingmachine = IfcElectricApplianceTypeEnum.WASHINGMACHINE
waterheater = IfcElectricApplianceTypeEnum.WATERHEATER
watercooler = IfcElectricApplianceTypeEnum.WATERCOOLER
userdefined = IfcElectricApplianceTypeEnum.USERDEFINED
notdefined = IfcElectricApplianceTypeEnum.NOTDEFINED
IfcElectricCurrentEnum = enum_namespace()
alternating = IfcElectricCurrentEnum.ALTERNATING
direct = IfcElectricCurrentEnum.DIRECT
notdefined = IfcElectricCurrentEnum.NOTDEFINED
IfcElectricDistributionPointFunctionEnum = enum_namespace()
alarmpanel = IfcElectricDistributionPointFunctionEnum.ALARMPANEL
consumerunit = IfcElectricDistributionPointFunctionEnum.CONSUMERUNIT
controlpanel = IfcElectricDistributionPointFunctionEnum.CONTROLPANEL
distributionboard = IfcElectricDistributionPointFunctionEnum.DISTRIBUTIONBOARD
gasdetectorpanel = IfcElectricDistributionPointFunctionEnum.GASDETECTORPANEL
indicatorpanel = IfcElectricDistributionPointFunctionEnum.INDICATORPANEL
mimicpanel = IfcElectricDistributionPointFunctionEnum.MIMICPANEL
motorcontrolcentre = IfcElectricDistributionPointFunctionEnum.MOTORCONTROLCENTRE
switchboard = IfcElectricDistributionPointFunctionEnum.SWITCHBOARD
userdefined = IfcElectricDistributionPointFunctionEnum.USERDEFINED
notdefined = IfcElectricDistributionPointFunctionEnum.NOTDEFINED
IfcElectricFlowStorageDeviceTypeEnum = enum_namespace()
battery = IfcElectricFlowStorageDeviceTypeEnum.BATTERY
capacitorbank = IfcElectricFlowStorageDeviceTypeEnum.CAPACITORBANK
harmonicfilter = IfcElectricFlowStorageDeviceTypeEnum.HARMONICFILTER
inductorbank = IfcElectricFlowStorageDeviceTypeEnum.INDUCTORBANK
ups = IfcElectricFlowStorageDeviceTypeEnum.UPS
userdefined = IfcElectricFlowStorageDeviceTypeEnum.USERDEFINED
notdefined = IfcElectricFlowStorageDeviceTypeEnum.NOTDEFINED
IfcElectricGeneratorTypeEnum = enum_namespace()
userdefined = IfcElectricGeneratorTypeEnum.USERDEFINED
notdefined = IfcElectricGeneratorTypeEnum.NOTDEFINED
IfcElectricHeaterTypeEnum = enum_namespace()
electricpointheater = IfcElectricHeaterTypeEnum.ELECTRICPOINTHEATER
electriccableheater = IfcElectricHeaterTypeEnum.ELECTRICCABLEHEATER
electricmatheater = IfcElectricHeaterTypeEnum.ELECTRICMATHEATER
userdefined = IfcElectricHeaterTypeEnum.USERDEFINED
notdefined = IfcElectricHeaterTypeEnum.NOTDEFINED
IfcElectricMotorTypeEnum = enum_namespace()
dc = IfcElectricMotorTypeEnum.DC
induction = IfcElectricMotorTypeEnum.INDUCTION
polyphase = IfcElectricMotorTypeEnum.POLYPHASE
reluctancesynchronous = IfcElectricMotorTypeEnum.RELUCTANCESYNCHRONOUS
synchronous = IfcElectricMotorTypeEnum.SYNCHRONOUS
userdefined = IfcElectricMotorTypeEnum.USERDEFINED
notdefined = IfcElectricMotorTypeEnum.NOTDEFINED
IfcElectricTimeControlTypeEnum = enum_namespace()
timeclock = IfcElectricTimeControlTypeEnum.TIMECLOCK
timedelay = IfcElectricTimeControlTypeEnum.TIMEDELAY
relay = IfcElectricTimeControlTypeEnum.RELAY
userdefined = IfcElectricTimeControlTypeEnum.USERDEFINED
notdefined = IfcElectricTimeControlTypeEnum.NOTDEFINED
IfcElementAssemblyTypeEnum = enum_namespace()
accessory_assembly = IfcElementAssemblyTypeEnum.ACCESSORY_ASSEMBLY
arch = IfcElementAssemblyTypeEnum.ARCH
beam_grid = IfcElementAssemblyTypeEnum.BEAM_GRID
braced_frame = IfcElementAssemblyTypeEnum.BRACED_FRAME
girder = IfcElementAssemblyTypeEnum.GIRDER
reinforcement_unit = IfcElementAssemblyTypeEnum.REINFORCEMENT_UNIT
rigid_frame = IfcElementAssemblyTypeEnum.RIGID_FRAME
slab_field = IfcElementAssemblyTypeEnum.SLAB_FIELD
truss = IfcElementAssemblyTypeEnum.TRUSS
userdefined = IfcElementAssemblyTypeEnum.USERDEFINED
notdefined = IfcElementAssemblyTypeEnum.NOTDEFINED
IfcElementCompositionEnum = enum_namespace()
complex = IfcElementCompositionEnum.COMPLEX
element = IfcElementCompositionEnum.ELEMENT
partial = IfcElementCompositionEnum.PARTIAL
IfcEnergySequenceEnum = enum_namespace()
primary = IfcEnergySequenceEnum.PRIMARY
secondary = IfcEnergySequenceEnum.SECONDARY
tertiary = IfcEnergySequenceEnum.TERTIARY
auxiliary = IfcEnergySequenceEnum.AUXILIARY
userdefined = IfcEnergySequenceEnum.USERDEFINED
notdefined = IfcEnergySequenceEnum.NOTDEFINED
IfcEnvironmentalImpactCategoryEnum = enum_namespace()
combinedvalue = IfcEnvironmentalImpactCategoryEnum.COMBINEDVALUE
disposal = IfcEnvironmentalImpactCategoryEnum.DISPOSAL
extraction = IfcEnvironmentalImpactCategoryEnum.EXTRACTION
installation = IfcEnvironmentalImpactCategoryEnum.INSTALLATION
manufacture = IfcEnvironmentalImpactCategoryEnum.MANUFACTURE
transportation = IfcEnvironmentalImpactCategoryEnum.TRANSPORTATION
userdefined = IfcEnvironmentalImpactCategoryEnum.USERDEFINED
notdefined = IfcEnvironmentalImpactCategoryEnum.NOTDEFINED
IfcEvaporativeCoolerTypeEnum = enum_namespace()
directevaporativerandommediaaircooler = IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER
directevaporativerigidmediaaircooler = IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER
directevaporativeslingerspackagedaircooler = IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER
directevaporativepackagedrotaryaircooler = IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER
directevaporativeairwasher = IfcEvaporativeCoolerTypeEnum.DIRECTEVAPORATIVEAIRWASHER
indirectevaporativepackageaircooler = IfcEvaporativeCoolerTypeEnum.INDIRECTEVAPORATIVEPACKAGEAIRCOOLER
indirectevaporativewetcoil = IfcEvaporativeCoolerTypeEnum.INDIRECTEVAPORATIVEWETCOIL
indirectevaporativecoolingtowerorcoilcooler = IfcEvaporativeCoolerTypeEnum.INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER
indirectdirectcombination = IfcEvaporativeCoolerTypeEnum.INDIRECTDIRECTCOMBINATION
userdefined = IfcEvaporativeCoolerTypeEnum.USERDEFINED
notdefined = IfcEvaporativeCoolerTypeEnum.NOTDEFINED
IfcEvaporatorTypeEnum = enum_namespace()
directexpansionshellandtube = IfcEvaporatorTypeEnum.DIRECTEXPANSIONSHELLANDTUBE
directexpansiontubeintube = IfcEvaporatorTypeEnum.DIRECTEXPANSIONTUBEINTUBE
directexpansionbrazedplate = IfcEvaporatorTypeEnum.DIRECTEXPANSIONBRAZEDPLATE
floodedshellandtube = IfcEvaporatorTypeEnum.FLOODEDSHELLANDTUBE
shellandcoil = IfcEvaporatorTypeEnum.SHELLANDCOIL
userdefined = IfcEvaporatorTypeEnum.USERDEFINED
notdefined = IfcEvaporatorTypeEnum.NOTDEFINED
IfcFanTypeEnum = enum_namespace()
centrifugalforwardcurved = IfcFanTypeEnum.CENTRIFUGALFORWARDCURVED
centrifugalradial = IfcFanTypeEnum.CENTRIFUGALRADIAL
centrifugalbackwardinclinedcurved = IfcFanTypeEnum.CENTRIFUGALBACKWARDINCLINEDCURVED
centrifugalairfoil = IfcFanTypeEnum.CENTRIFUGALAIRFOIL
tubeaxial = IfcFanTypeEnum.TUBEAXIAL
vaneaxial = IfcFanTypeEnum.VANEAXIAL
propelloraxial = IfcFanTypeEnum.PROPELLORAXIAL
userdefined = IfcFanTypeEnum.USERDEFINED
notdefined = IfcFanTypeEnum.NOTDEFINED
IfcFilterTypeEnum = enum_namespace()
airparticlefilter = IfcFilterTypeEnum.AIRPARTICLEFILTER
odorfilter = IfcFilterTypeEnum.ODORFILTER
oilfilter = IfcFilterTypeEnum.OILFILTER
strainer = IfcFilterTypeEnum.STRAINER
waterfilter = IfcFilterTypeEnum.WATERFILTER
userdefined = IfcFilterTypeEnum.USERDEFINED
notdefined = IfcFilterTypeEnum.NOTDEFINED
IfcFireSuppressionTerminalTypeEnum = enum_namespace()
breechinginlet = IfcFireSuppressionTerminalTypeEnum.BREECHINGINLET
firehydrant = IfcFireSuppressionTerminalTypeEnum.FIREHYDRANT
hosereel = IfcFireSuppressionTerminalTypeEnum.HOSEREEL
sprinkler = IfcFireSuppressionTerminalTypeEnum.SPRINKLER
sprinklerdeflector = IfcFireSuppressionTerminalTypeEnum.SPRINKLERDEFLECTOR
userdefined = IfcFireSuppressionTerminalTypeEnum.USERDEFINED
notdefined = IfcFireSuppressionTerminalTypeEnum.NOTDEFINED
IfcFlowDirectionEnum = enum_namespace()
source = IfcFlowDirectionEnum.SOURCE
sink = IfcFlowDirectionEnum.SINK
sourceandsink = IfcFlowDirectionEnum.SOURCEANDSINK
notdefined = IfcFlowDirectionEnum.NOTDEFINED
IfcFlowInstrumentTypeEnum = enum_namespace()
pressuregauge = IfcFlowInstrumentTypeEnum.PRESSUREGAUGE
thermometer = IfcFlowInstrumentTypeEnum.THERMOMETER
ammeter = IfcFlowInstrumentTypeEnum.AMMETER
frequencymeter = IfcFlowInstrumentTypeEnum.FREQUENCYMETER
powerfactormeter = IfcFlowInstrumentTypeEnum.POWERFACTORMETER
phaseanglemeter = IfcFlowInstrumentTypeEnum.PHASEANGLEMETER
voltmeter_peak = IfcFlowInstrumentTypeEnum.VOLTMETER_PEAK
voltmeter_rms = IfcFlowInstrumentTypeEnum.VOLTMETER_RMS
userdefined = IfcFlowInstrumentTypeEnum.USERDEFINED
notdefined = IfcFlowInstrumentTypeEnum.NOTDEFINED
IfcFlowMeterTypeEnum = enum_namespace()
electricmeter = IfcFlowMeterTypeEnum.ELECTRICMETER
energymeter = IfcFlowMeterTypeEnum.ENERGYMETER
flowmeter = IfcFlowMeterTypeEnum.FLOWMETER
gasmeter = IfcFlowMeterTypeEnum.GASMETER
oilmeter = IfcFlowMeterTypeEnum.OILMETER
watermeter = IfcFlowMeterTypeEnum.WATERMETER
userdefined = IfcFlowMeterTypeEnum.USERDEFINED
notdefined = IfcFlowMeterTypeEnum.NOTDEFINED
IfcFootingTypeEnum = enum_namespace()
footing_beam = IfcFootingTypeEnum.FOOTING_BEAM
pad_footing = IfcFootingTypeEnum.PAD_FOOTING
pile_cap = IfcFootingTypeEnum.PILE_CAP
strip_footing = IfcFootingTypeEnum.STRIP_FOOTING
userdefined = IfcFootingTypeEnum.USERDEFINED
notdefined = IfcFootingTypeEnum.NOTDEFINED
IfcGasTerminalTypeEnum = enum_namespace()
gasappliance = IfcGasTerminalTypeEnum.GASAPPLIANCE
gasbooster = IfcGasTerminalTypeEnum.GASBOOSTER
gasburner = IfcGasTerminalTypeEnum.GASBURNER
userdefined = IfcGasTerminalTypeEnum.USERDEFINED
notdefined = IfcGasTerminalTypeEnum.NOTDEFINED
IfcGeometricProjectionEnum = enum_namespace()
graph_view = IfcGeometricProjectionEnum.GRAPH_VIEW
sketch_view = IfcGeometricProjectionEnum.SKETCH_VIEW
model_view = IfcGeometricProjectionEnum.MODEL_VIEW
plan_view = IfcGeometricProjectionEnum.PLAN_VIEW
reflected_plan_view = IfcGeometricProjectionEnum.REFLECTED_PLAN_VIEW
section_view = IfcGeometricProjectionEnum.SECTION_VIEW
elevation_view = IfcGeometricProjectionEnum.ELEVATION_VIEW
userdefined = IfcGeometricProjectionEnum.USERDEFINED
notdefined = IfcGeometricProjectionEnum.NOTDEFINED
IfcGlobalOrLocalEnum = enum_namespace()
global_coords = IfcGlobalOrLocalEnum.GLOBAL_COORDS
local_coords = IfcGlobalOrLocalEnum.LOCAL_COORDS
IfcHeatExchangerTypeEnum = enum_namespace()
plate = IfcHeatExchangerTypeEnum.PLATE
shellandtube = IfcHeatExchangerTypeEnum.SHELLANDTUBE
userdefined = IfcHeatExchangerTypeEnum.USERDEFINED
notdefined = IfcHeatExchangerTypeEnum.NOTDEFINED
IfcHumidifierTypeEnum = enum_namespace()
steaminjection = IfcHumidifierTypeEnum.STEAMINJECTION
adiabaticairwasher = IfcHumidifierTypeEnum.ADIABATICAIRWASHER
adiabaticpan = IfcHumidifierTypeEnum.ADIABATICPAN
adiabaticwettedelement = IfcHumidifierTypeEnum.ADIABATICWETTEDELEMENT
adiabaticatomizing = IfcHumidifierTypeEnum.ADIABATICATOMIZING
adiabaticultrasonic = IfcHumidifierTypeEnum.ADIABATICULTRASONIC
adiabaticrigidmedia = IfcHumidifierTypeEnum.ADIABATICRIGIDMEDIA
adiabaticcompressedairnozzle = IfcHumidifierTypeEnum.ADIABATICCOMPRESSEDAIRNOZZLE
assistedelectric = IfcHumidifierTypeEnum.ASSISTEDELECTRIC
assistednaturalgas = IfcHumidifierTypeEnum.ASSISTEDNATURALGAS
assistedpropane = IfcHumidifierTypeEnum.ASSISTEDPROPANE
assistedbutane = IfcHumidifierTypeEnum.ASSISTEDBUTANE
assistedsteam = IfcHumidifierTypeEnum.ASSISTEDSTEAM
userdefined = IfcHumidifierTypeEnum.USERDEFINED
notdefined = IfcHumidifierTypeEnum.NOTDEFINED
IfcInternalOrExternalEnum = enum_namespace()
internal = IfcInternalOrExternalEnum.INTERNAL
external = IfcInternalOrExternalEnum.EXTERNAL
notdefined = IfcInternalOrExternalEnum.NOTDEFINED
IfcInventoryTypeEnum = enum_namespace()
assetinventory = IfcInventoryTypeEnum.ASSETINVENTORY
spaceinventory = IfcInventoryTypeEnum.SPACEINVENTORY
furnitureinventory = IfcInventoryTypeEnum.FURNITUREINVENTORY
userdefined = IfcInventoryTypeEnum.USERDEFINED
notdefined = IfcInventoryTypeEnum.NOTDEFINED
IfcJunctionBoxTypeEnum = enum_namespace()
userdefined = IfcJunctionBoxTypeEnum.USERDEFINED
notdefined = IfcJunctionBoxTypeEnum.NOTDEFINED
IfcLampTypeEnum = enum_namespace()
compactfluorescent = IfcLampTypeEnum.COMPACTFLUORESCENT
fluorescent = IfcLampTypeEnum.FLUORESCENT
highpressuremercury = IfcLampTypeEnum.HIGHPRESSUREMERCURY
highpressuresodium = IfcLampTypeEnum.HIGHPRESSURESODIUM
metalhalide = IfcLampTypeEnum.METALHALIDE
tungstenfilament = IfcLampTypeEnum.TUNGSTENFILAMENT
userdefined = IfcLampTypeEnum.USERDEFINED
notdefined = IfcLampTypeEnum.NOTDEFINED
IfcLayerSetDirectionEnum = enum_namespace()
axis1 = IfcLayerSetDirectionEnum.AXIS1
axis2 = IfcLayerSetDirectionEnum.AXIS2
axis3 = IfcLayerSetDirectionEnum.AXIS3
IfcLightDistributionCurveEnum = enum_namespace()
type_a = IfcLightDistributionCurveEnum.TYPE_A
type_b = IfcLightDistributionCurveEnum.TYPE_B
type_c = IfcLightDistributionCurveEnum.TYPE_C
notdefined = IfcLightDistributionCurveEnum.NOTDEFINED
IfcLightEmissionSourceEnum = enum_namespace()
compactfluorescent = IfcLightEmissionSourceEnum.COMPACTFLUORESCENT
fluorescent = IfcLightEmissionSourceEnum.FLUORESCENT
highpressuremercury = IfcLightEmissionSourceEnum.HIGHPRESSUREMERCURY
highpressuresodium = IfcLightEmissionSourceEnum.HIGHPRESSURESODIUM
lightemittingdiode = IfcLightEmissionSourceEnum.LIGHTEMITTINGDIODE
lowpressuresodium = IfcLightEmissionSourceEnum.LOWPRESSURESODIUM
lowvoltagehalogen = IfcLightEmissionSourceEnum.LOWVOLTAGEHALOGEN
mainvoltagehalogen = IfcLightEmissionSourceEnum.MAINVOLTAGEHALOGEN
metalhalide = IfcLightEmissionSourceEnum.METALHALIDE
tungstenfilament = IfcLightEmissionSourceEnum.TUNGSTENFILAMENT
notdefined = IfcLightEmissionSourceEnum.NOTDEFINED
IfcLightFixtureTypeEnum = enum_namespace()
pointsource = IfcLightFixtureTypeEnum.POINTSOURCE
directionsource = IfcLightFixtureTypeEnum.DIRECTIONSOURCE
userdefined = IfcLightFixtureTypeEnum.USERDEFINED
notdefined = IfcLightFixtureTypeEnum.NOTDEFINED
IfcLoadGroupTypeEnum = enum_namespace()
load_group = IfcLoadGroupTypeEnum.LOAD_GROUP
load_case = IfcLoadGroupTypeEnum.LOAD_CASE
load_combination_group = IfcLoadGroupTypeEnum.LOAD_COMBINATION_GROUP
load_combination = IfcLoadGroupTypeEnum.LOAD_COMBINATION
userdefined = IfcLoadGroupTypeEnum.USERDEFINED
notdefined = IfcLoadGroupTypeEnum.NOTDEFINED
IfcLogicalOperatorEnum = enum_namespace()
logicaland = IfcLogicalOperatorEnum.LOGICALAND
logicalor = IfcLogicalOperatorEnum.LOGICALOR
IfcMemberTypeEnum = enum_namespace()
brace = IfcMemberTypeEnum.BRACE
chord = IfcMemberTypeEnum.CHORD
collar = IfcMemberTypeEnum.COLLAR
member = IfcMemberTypeEnum.MEMBER
mullion = IfcMemberTypeEnum.MULLION
plate = IfcMemberTypeEnum.PLATE
post = IfcMemberTypeEnum.POST
purlin = IfcMemberTypeEnum.PURLIN
rafter = IfcMemberTypeEnum.RAFTER
stringer = IfcMemberTypeEnum.STRINGER
strut = IfcMemberTypeEnum.STRUT
stud = IfcMemberTypeEnum.STUD
userdefined = IfcMemberTypeEnum.USERDEFINED
notdefined = IfcMemberTypeEnum.NOTDEFINED
IfcMotorConnectionTypeEnum = enum_namespace()
beltdrive = IfcMotorConnectionTypeEnum.BELTDRIVE
coupling = IfcMotorConnectionTypeEnum.COUPLING
directdrive = IfcMotorConnectionTypeEnum.DIRECTDRIVE
userdefined = IfcMotorConnectionTypeEnum.USERDEFINED
notdefined = IfcMotorConnectionTypeEnum.NOTDEFINED
IfcNullStyle = enum_namespace()
null = IfcNullStyle.NULL
IfcObjectTypeEnum = enum_namespace()
product = IfcObjectTypeEnum.PRODUCT
process = IfcObjectTypeEnum.PROCESS
control = IfcObjectTypeEnum.CONTROL
resource = IfcObjectTypeEnum.RESOURCE
actor = IfcObjectTypeEnum.ACTOR
group = IfcObjectTypeEnum.GROUP
project = IfcObjectTypeEnum.PROJECT
notdefined = IfcObjectTypeEnum.NOTDEFINED
IfcObjectiveEnum = enum_namespace()
codecompliance = IfcObjectiveEnum.CODECOMPLIANCE
designintent = IfcObjectiveEnum.DESIGNINTENT
healthandsafety = IfcObjectiveEnum.HEALTHANDSAFETY
requirement = IfcObjectiveEnum.REQUIREMENT
specification = IfcObjectiveEnum.SPECIFICATION
triggercondition = IfcObjectiveEnum.TRIGGERCONDITION
userdefined = IfcObjectiveEnum.USERDEFINED
notdefined = IfcObjectiveEnum.NOTDEFINED
IfcOccupantTypeEnum = enum_namespace()
assignee = IfcOccupantTypeEnum.ASSIGNEE
assignor = IfcOccupantTypeEnum.ASSIGNOR
lessee = IfcOccupantTypeEnum.LESSEE
lessor = IfcOccupantTypeEnum.LESSOR
lettingagent = IfcOccupantTypeEnum.LETTINGAGENT
owner = IfcOccupantTypeEnum.OWNER
tenant = IfcOccupantTypeEnum.TENANT
userdefined = IfcOccupantTypeEnum.USERDEFINED
notdefined = IfcOccupantTypeEnum.NOTDEFINED
IfcOutletTypeEnum = enum_namespace()
audiovisualoutlet = IfcOutletTypeEnum.AUDIOVISUALOUTLET
communicationsoutlet = IfcOutletTypeEnum.COMMUNICATIONSOUTLET
poweroutlet = IfcOutletTypeEnum.POWEROUTLET
userdefined = IfcOutletTypeEnum.USERDEFINED
notdefined = IfcOutletTypeEnum.NOTDEFINED
IfcPermeableCoveringOperationEnum = enum_namespace()
grill = IfcPermeableCoveringOperationEnum.GRILL
louver = IfcPermeableCoveringOperationEnum.LOUVER
screen = IfcPermeableCoveringOperationEnum.SCREEN
userdefined = IfcPermeableCoveringOperationEnum.USERDEFINED
notdefined = IfcPermeableCoveringOperationEnum.NOTDEFINED
IfcPhysicalOrVirtualEnum = enum_namespace()
physical = IfcPhysicalOrVirtualEnum.PHYSICAL
virtual = IfcPhysicalOrVirtualEnum.VIRTUAL
notdefined = IfcPhysicalOrVirtualEnum.NOTDEFINED
IfcPileConstructionEnum = enum_namespace()
cast_in_place = IfcPileConstructionEnum.CAST_IN_PLACE
composite = IfcPileConstructionEnum.COMPOSITE
precast_concrete = IfcPileConstructionEnum.PRECAST_CONCRETE
prefab_steel = IfcPileConstructionEnum.PREFAB_STEEL
userdefined = IfcPileConstructionEnum.USERDEFINED
notdefined = IfcPileConstructionEnum.NOTDEFINED
IfcPileTypeEnum = enum_namespace()
cohesion = IfcPileTypeEnum.COHESION
friction = IfcPileTypeEnum.FRICTION
support = IfcPileTypeEnum.SUPPORT
userdefined = IfcPileTypeEnum.USERDEFINED
notdefined = IfcPileTypeEnum.NOTDEFINED
IfcPipeFittingTypeEnum = enum_namespace()
bend = IfcPipeFittingTypeEnum.BEND
connector = IfcPipeFittingTypeEnum.CONNECTOR
entry = IfcPipeFittingTypeEnum.ENTRY
exit = IfcPipeFittingTypeEnum.EXIT
junction = IfcPipeFittingTypeEnum.JUNCTION
obstruction = IfcPipeFittingTypeEnum.OBSTRUCTION
transition = IfcPipeFittingTypeEnum.TRANSITION
userdefined = IfcPipeFittingTypeEnum.USERDEFINED
notdefined = IfcPipeFittingTypeEnum.NOTDEFINED
IfcPipeSegmentTypeEnum = enum_namespace()
flexiblesegment = IfcPipeSegmentTypeEnum.FLEXIBLESEGMENT
rigidsegment = IfcPipeSegmentTypeEnum.RIGIDSEGMENT
gutter = IfcPipeSegmentTypeEnum.GUTTER
spool = IfcPipeSegmentTypeEnum.SPOOL
userdefined = IfcPipeSegmentTypeEnum.USERDEFINED
notdefined = IfcPipeSegmentTypeEnum.NOTDEFINED
IfcPlateTypeEnum = enum_namespace()
curtain_panel = IfcPlateTypeEnum.CURTAIN_PANEL
sheet = IfcPlateTypeEnum.SHEET
userdefined = IfcPlateTypeEnum.USERDEFINED
notdefined = IfcPlateTypeEnum.NOTDEFINED
IfcProcedureTypeEnum = enum_namespace()
advice_caution = IfcProcedureTypeEnum.ADVICE_CAUTION
advice_note = IfcProcedureTypeEnum.ADVICE_NOTE
advice_warning = IfcProcedureTypeEnum.ADVICE_WARNING
calibration = IfcProcedureTypeEnum.CALIBRATION
diagnostic = IfcProcedureTypeEnum.DIAGNOSTIC
shutdown = IfcProcedureTypeEnum.SHUTDOWN
startup = IfcProcedureTypeEnum.STARTUP
userdefined = IfcProcedureTypeEnum.USERDEFINED
notdefined = IfcProcedureTypeEnum.NOTDEFINED
IfcProfileTypeEnum = enum_namespace()
curve = IfcProfileTypeEnum.CURVE
area = IfcProfileTypeEnum.AREA
IfcProjectOrderRecordTypeEnum = enum_namespace()
change = IfcProjectOrderRecordTypeEnum.CHANGE
maintenance = IfcProjectOrderRecordTypeEnum.MAINTENANCE
move = IfcProjectOrderRecordTypeEnum.MOVE
purchase = IfcProjectOrderRecordTypeEnum.PURCHASE
work = IfcProjectOrderRecordTypeEnum.WORK
userdefined = IfcProjectOrderRecordTypeEnum.USERDEFINED
notdefined = IfcProjectOrderRecordTypeEnum.NOTDEFINED
IfcProjectOrderTypeEnum = enum_namespace()
changeorder = IfcProjectOrderTypeEnum.CHANGEORDER
maintenanceworkorder = IfcProjectOrderTypeEnum.MAINTENANCEWORKORDER
moveorder = IfcProjectOrderTypeEnum.MOVEORDER
purchaseorder = IfcProjectOrderTypeEnum.PURCHASEORDER
workorder = IfcProjectOrderTypeEnum.WORKORDER
userdefined = IfcProjectOrderTypeEnum.USERDEFINED
notdefined = IfcProjectOrderTypeEnum.NOTDEFINED
IfcProjectedOrTrueLengthEnum = enum_namespace()
projected_length = IfcProjectedOrTrueLengthEnum.PROJECTED_LENGTH
true_length = IfcProjectedOrTrueLengthEnum.TRUE_LENGTH
IfcPropertySourceEnum = enum_namespace()
design = IfcPropertySourceEnum.DESIGN
designmaximum = IfcPropertySourceEnum.DESIGNMAXIMUM
designminimum = IfcPropertySourceEnum.DESIGNMINIMUM
simulated = IfcPropertySourceEnum.SIMULATED
asbuilt = IfcPropertySourceEnum.ASBUILT
commissioning = IfcPropertySourceEnum.COMMISSIONING
measured = IfcPropertySourceEnum.MEASURED
userdefined = IfcPropertySourceEnum.USERDEFINED
notknown = IfcPropertySourceEnum.NOTKNOWN
IfcProtectiveDeviceTypeEnum = enum_namespace()
fusedisconnector = IfcProtectiveDeviceTypeEnum.FUSEDISCONNECTOR
circuitbreaker = IfcProtectiveDeviceTypeEnum.CIRCUITBREAKER
earthfailuredevice = IfcProtectiveDeviceTypeEnum.EARTHFAILUREDEVICE
residualcurrentcircuitbreaker = IfcProtectiveDeviceTypeEnum.RESIDUALCURRENTCIRCUITBREAKER
residualcurrentswitch = IfcProtectiveDeviceTypeEnum.RESIDUALCURRENTSWITCH
varistor = IfcProtectiveDeviceTypeEnum.VARISTOR
userdefined = IfcProtectiveDeviceTypeEnum.USERDEFINED
notdefined = IfcProtectiveDeviceTypeEnum.NOTDEFINED
IfcPumpTypeEnum = enum_namespace()
circulator = IfcPumpTypeEnum.CIRCULATOR
endsuction = IfcPumpTypeEnum.ENDSUCTION
splitcase = IfcPumpTypeEnum.SPLITCASE
verticalinline = IfcPumpTypeEnum.VERTICALINLINE
verticalturbine = IfcPumpTypeEnum.VERTICALTURBINE
userdefined = IfcPumpTypeEnum.USERDEFINED
notdefined = IfcPumpTypeEnum.NOTDEFINED
IfcRailingTypeEnum = enum_namespace()
handrail = IfcRailingTypeEnum.HANDRAIL
guardrail = IfcRailingTypeEnum.GUARDRAIL
balustrade = IfcRailingTypeEnum.BALUSTRADE
userdefined = IfcRailingTypeEnum.USERDEFINED
notdefined = IfcRailingTypeEnum.NOTDEFINED
IfcRampFlightTypeEnum = enum_namespace()
straight = IfcRampFlightTypeEnum.STRAIGHT
spiral = IfcRampFlightTypeEnum.SPIRAL
userdefined = IfcRampFlightTypeEnum.USERDEFINED
notdefined = IfcRampFlightTypeEnum.NOTDEFINED
IfcRampTypeEnum = enum_namespace()
straight_run_ramp = IfcRampTypeEnum.STRAIGHT_RUN_RAMP
two_straight_run_ramp = IfcRampTypeEnum.TWO_STRAIGHT_RUN_RAMP
quarter_turn_ramp = IfcRampTypeEnum.QUARTER_TURN_RAMP
two_quarter_turn_ramp = IfcRampTypeEnum.TWO_QUARTER_TURN_RAMP
half_turn_ramp = IfcRampTypeEnum.HALF_TURN_RAMP
spiral_ramp = IfcRampTypeEnum.SPIRAL_RAMP
userdefined = IfcRampTypeEnum.USERDEFINED
notdefined = IfcRampTypeEnum.NOTDEFINED
IfcReflectanceMethodEnum = enum_namespace()
blinn = IfcReflectanceMethodEnum.BLINN
flat = IfcReflectanceMethodEnum.FLAT
glass = IfcReflectanceMethodEnum.GLASS
matt = IfcReflectanceMethodEnum.MATT
metal = IfcReflectanceMethodEnum.METAL
mirror = IfcReflectanceMethodEnum.MIRROR
phong = IfcReflectanceMethodEnum.PHONG
plastic = IfcReflectanceMethodEnum.PLASTIC
strauss = IfcReflectanceMethodEnum.STRAUSS
notdefined = IfcReflectanceMethodEnum.NOTDEFINED
IfcReinforcingBarRoleEnum = enum_namespace()
main = IfcReinforcingBarRoleEnum.MAIN
shear = IfcReinforcingBarRoleEnum.SHEAR
ligature = IfcReinforcingBarRoleEnum.LIGATURE
stud = IfcReinforcingBarRoleEnum.STUD
punching = IfcReinforcingBarRoleEnum.PUNCHING
edge = IfcReinforcingBarRoleEnum.EDGE
ring = IfcReinforcingBarRoleEnum.RING
userdefined = IfcReinforcingBarRoleEnum.USERDEFINED
notdefined = IfcReinforcingBarRoleEnum.NOTDEFINED
IfcReinforcingBarSurfaceEnum = enum_namespace()
plain = IfcReinforcingBarSurfaceEnum.PLAIN
textured = IfcReinforcingBarSurfaceEnum.TEXTURED
IfcResourceConsumptionEnum = enum_namespace()
consumed = IfcResourceConsumptionEnum.CONSUMED
partiallyconsumed = IfcResourceConsumptionEnum.PARTIALLYCONSUMED
notconsumed = IfcResourceConsumptionEnum.NOTCONSUMED
occupied = IfcResourceConsumptionEnum.OCCUPIED
partiallyoccupied = IfcResourceConsumptionEnum.PARTIALLYOCCUPIED
notoccupied = IfcResourceConsumptionEnum.NOTOCCUPIED
userdefined = IfcResourceConsumptionEnum.USERDEFINED
notdefined = IfcResourceConsumptionEnum.NOTDEFINED
IfcRibPlateDirectionEnum = enum_namespace()
direction_x = IfcRibPlateDirectionEnum.DIRECTION_X
direction_y = IfcRibPlateDirectionEnum.DIRECTION_Y
IfcRoleEnum = enum_namespace()
supplier = IfcRoleEnum.SUPPLIER
manufacturer = IfcRoleEnum.MANUFACTURER
contractor = IfcRoleEnum.CONTRACTOR
subcontractor = IfcRoleEnum.SUBCONTRACTOR
architect = IfcRoleEnum.ARCHITECT
structuralengineer = IfcRoleEnum.STRUCTURALENGINEER
costengineer = IfcRoleEnum.COSTENGINEER
client = IfcRoleEnum.CLIENT
buildingowner = IfcRoleEnum.BUILDINGOWNER
buildingoperator = IfcRoleEnum.BUILDINGOPERATOR
mechanicalengineer = IfcRoleEnum.MECHANICALENGINEER
electricalengineer = IfcRoleEnum.ELECTRICALENGINEER
projectmanager = IfcRoleEnum.PROJECTMANAGER
facilitiesmanager = IfcRoleEnum.FACILITIESMANAGER
civilengineer = IfcRoleEnum.CIVILENGINEER
comissioningengineer = IfcRoleEnum.COMISSIONINGENGINEER
engineer = IfcRoleEnum.ENGINEER
owner = IfcRoleEnum.OWNER
consultant = IfcRoleEnum.CONSULTANT
constructionmanager = IfcRoleEnum.CONSTRUCTIONMANAGER
fieldconstructionmanager = IfcRoleEnum.FIELDCONSTRUCTIONMANAGER
reseller = IfcRoleEnum.RESELLER
userdefined = IfcRoleEnum.USERDEFINED
IfcRoofTypeEnum = enum_namespace()
flat_roof = IfcRoofTypeEnum.FLAT_ROOF
shed_roof = IfcRoofTypeEnum.SHED_ROOF
gable_roof = IfcRoofTypeEnum.GABLE_ROOF
hip_roof = IfcRoofTypeEnum.HIP_ROOF
hipped_gable_roof = IfcRoofTypeEnum.HIPPED_GABLE_ROOF
gambrel_roof = IfcRoofTypeEnum.GAMBREL_ROOF
mansard_roof = IfcRoofTypeEnum.MANSARD_ROOF
barrel_roof = IfcRoofTypeEnum.BARREL_ROOF
rainbow_roof = IfcRoofTypeEnum.RAINBOW_ROOF
butterfly_roof = IfcRoofTypeEnum.BUTTERFLY_ROOF
pavilion_roof = IfcRoofTypeEnum.PAVILION_ROOF
dome_roof = IfcRoofTypeEnum.DOME_ROOF
freeform = IfcRoofTypeEnum.FREEFORM
notdefined = IfcRoofTypeEnum.NOTDEFINED
IfcSIPrefix = enum_namespace()
exa = IfcSIPrefix.EXA
peta = IfcSIPrefix.PETA
tera = IfcSIPrefix.TERA
giga = IfcSIPrefix.GIGA
mega = IfcSIPrefix.MEGA
kilo = IfcSIPrefix.KILO
hecto = IfcSIPrefix.HECTO
deca = IfcSIPrefix.DECA
deci = IfcSIPrefix.DECI
centi = IfcSIPrefix.CENTI
milli = IfcSIPrefix.MILLI
micro = IfcSIPrefix.MICRO
nano = IfcSIPrefix.NANO
pico = IfcSIPrefix.PICO
femto = IfcSIPrefix.FEMTO
atto = IfcSIPrefix.ATTO
IfcSIUnitName = enum_namespace()
ampere = IfcSIUnitName.AMPERE
becquerel = IfcSIUnitName.BECQUEREL
candela = IfcSIUnitName.CANDELA
coulomb = IfcSIUnitName.COULOMB
cubic_metre = IfcSIUnitName.CUBIC_METRE
degree_celsius = IfcSIUnitName.DEGREE_CELSIUS
farad = IfcSIUnitName.FARAD
gram = IfcSIUnitName.GRAM
gray = IfcSIUnitName.GRAY
henry = IfcSIUnitName.HENRY
hertz = IfcSIUnitName.HERTZ
joule = IfcSIUnitName.JOULE
kelvin = IfcSIUnitName.KELVIN
lumen = IfcSIUnitName.LUMEN
lux = IfcSIUnitName.LUX
metre = IfcSIUnitName.METRE
mole = IfcSIUnitName.MOLE
newton = IfcSIUnitName.NEWTON
ohm = IfcSIUnitName.OHM
pascal = IfcSIUnitName.PASCAL
radian = IfcSIUnitName.RADIAN
second = IfcSIUnitName.SECOND
siemens = IfcSIUnitName.SIEMENS
sievert = IfcSIUnitName.SIEVERT
square_metre = IfcSIUnitName.SQUARE_METRE
steradian = IfcSIUnitName.STERADIAN
tesla = IfcSIUnitName.TESLA
volt = IfcSIUnitName.VOLT
watt = IfcSIUnitName.WATT
weber = IfcSIUnitName.WEBER
IfcSanitaryTerminalTypeEnum = enum_namespace()
bath = IfcSanitaryTerminalTypeEnum.BATH
bidet = IfcSanitaryTerminalTypeEnum.BIDET
cistern = IfcSanitaryTerminalTypeEnum.CISTERN
shower = IfcSanitaryTerminalTypeEnum.SHOWER
sink = IfcSanitaryTerminalTypeEnum.SINK
sanitaryfountain = IfcSanitaryTerminalTypeEnum.SANITARYFOUNTAIN
toiletpan = IfcSanitaryTerminalTypeEnum.TOILETPAN
urinal = IfcSanitaryTerminalTypeEnum.URINAL
washhandbasin = IfcSanitaryTerminalTypeEnum.WASHHANDBASIN
wcseat = IfcSanitaryTerminalTypeEnum.WCSEAT
userdefined = IfcSanitaryTerminalTypeEnum.USERDEFINED
notdefined = IfcSanitaryTerminalTypeEnum.NOTDEFINED
IfcSectionTypeEnum = enum_namespace()
uniform = IfcSectionTypeEnum.UNIFORM
tapered = IfcSectionTypeEnum.TAPERED
IfcSensorTypeEnum = enum_namespace()
co2sensor = IfcSensorTypeEnum.CO2SENSOR
firesensor = IfcSensorTypeEnum.FIRESENSOR
flowsensor = IfcSensorTypeEnum.FLOWSENSOR
gassensor = IfcSensorTypeEnum.GASSENSOR
heatsensor = IfcSensorTypeEnum.HEATSENSOR
humiditysensor = IfcSensorTypeEnum.HUMIDITYSENSOR
lightsensor = IfcSensorTypeEnum.LIGHTSENSOR
moisturesensor = IfcSensorTypeEnum.MOISTURESENSOR
movementsensor = IfcSensorTypeEnum.MOVEMENTSENSOR
pressuresensor = IfcSensorTypeEnum.PRESSURESENSOR
smokesensor = IfcSensorTypeEnum.SMOKESENSOR
soundsensor = IfcSensorTypeEnum.SOUNDSENSOR
temperaturesensor = IfcSensorTypeEnum.TEMPERATURESENSOR
userdefined = IfcSensorTypeEnum.USERDEFINED
notdefined = IfcSensorTypeEnum.NOTDEFINED
IfcSequenceEnum = enum_namespace()
start_start = IfcSequenceEnum.START_START
start_finish = IfcSequenceEnum.START_FINISH
finish_start = IfcSequenceEnum.FINISH_START
finish_finish = IfcSequenceEnum.FINISH_FINISH
notdefined = IfcSequenceEnum.NOTDEFINED
IfcServiceLifeFactorTypeEnum = enum_namespace()
a_qualityofcomponents = IfcServiceLifeFactorTypeEnum.A_QUALITYOFCOMPONENTS
b_designlevel = IfcServiceLifeFactorTypeEnum.B_DESIGNLEVEL
c_workexecutionlevel = IfcServiceLifeFactorTypeEnum.C_WORKEXECUTIONLEVEL
d_indoorenvironment = IfcServiceLifeFactorTypeEnum.D_INDOORENVIRONMENT
e_outdoorenvironment = IfcServiceLifeFactorTypeEnum.E_OUTDOORENVIRONMENT
f_inuseconditions = IfcServiceLifeFactorTypeEnum.F_INUSECONDITIONS
g_maintenancelevel = IfcServiceLifeFactorTypeEnum.G_MAINTENANCELEVEL
userdefined = IfcServiceLifeFactorTypeEnum.USERDEFINED
notdefined = IfcServiceLifeFactorTypeEnum.NOTDEFINED
IfcServiceLifeTypeEnum = enum_namespace()
actualservicelife = IfcServiceLifeTypeEnum.ACTUALSERVICELIFE
expectedservicelife = IfcServiceLifeTypeEnum.EXPECTEDSERVICELIFE
optimisticreferenceservicelife = IfcServiceLifeTypeEnum.OPTIMISTICREFERENCESERVICELIFE
pessimisticreferenceservicelife = IfcServiceLifeTypeEnum.PESSIMISTICREFERENCESERVICELIFE
referenceservicelife = IfcServiceLifeTypeEnum.REFERENCESERVICELIFE
IfcSlabTypeEnum = enum_namespace()
floor = IfcSlabTypeEnum.FLOOR
roof = IfcSlabTypeEnum.ROOF
landing = IfcSlabTypeEnum.LANDING
baseslab = IfcSlabTypeEnum.BASESLAB
userdefined = IfcSlabTypeEnum.USERDEFINED
notdefined = IfcSlabTypeEnum.NOTDEFINED
IfcSoundScaleEnum = enum_namespace()
dba = IfcSoundScaleEnum.DBA
dbb = IfcSoundScaleEnum.DBB
dbc = IfcSoundScaleEnum.DBC
nc = IfcSoundScaleEnum.NC
nr = IfcSoundScaleEnum.NR
userdefined = IfcSoundScaleEnum.USERDEFINED
notdefined = IfcSoundScaleEnum.NOTDEFINED
IfcSpaceHeaterTypeEnum = enum_namespace()
sectionalradiator = IfcSpaceHeaterTypeEnum.SECTIONALRADIATOR
panelradiator = IfcSpaceHeaterTypeEnum.PANELRADIATOR
tubularradiator = IfcSpaceHeaterTypeEnum.TUBULARRADIATOR
convector = IfcSpaceHeaterTypeEnum.CONVECTOR
baseboardheater = IfcSpaceHeaterTypeEnum.BASEBOARDHEATER
finnedtubeunit = IfcSpaceHeaterTypeEnum.FINNEDTUBEUNIT
unitheater = IfcSpaceHeaterTypeEnum.UNITHEATER
userdefined = IfcSpaceHeaterTypeEnum.USERDEFINED
notdefined = IfcSpaceHeaterTypeEnum.NOTDEFINED
IfcSpaceTypeEnum = enum_namespace()
userdefined = IfcSpaceTypeEnum.USERDEFINED
notdefined = IfcSpaceTypeEnum.NOTDEFINED
IfcStackTerminalTypeEnum = enum_namespace()
birdcage = IfcStackTerminalTypeEnum.BIRDCAGE
cowl = IfcStackTerminalTypeEnum.COWL
rainwaterhopper = IfcStackTerminalTypeEnum.RAINWATERHOPPER
userdefined = IfcStackTerminalTypeEnum.USERDEFINED
notdefined = IfcStackTerminalTypeEnum.NOTDEFINED
IfcStairFlightTypeEnum = enum_namespace()
straight = IfcStairFlightTypeEnum.STRAIGHT
winder = IfcStairFlightTypeEnum.WINDER
spiral = IfcStairFlightTypeEnum.SPIRAL
curved = IfcStairFlightTypeEnum.CURVED
freeform = IfcStairFlightTypeEnum.FREEFORM
userdefined = IfcStairFlightTypeEnum.USERDEFINED
notdefined = IfcStairFlightTypeEnum.NOTDEFINED
IfcStairTypeEnum = enum_namespace()
straight_run_stair = IfcStairTypeEnum.STRAIGHT_RUN_STAIR
two_straight_run_stair = IfcStairTypeEnum.TWO_STRAIGHT_RUN_STAIR
quarter_winding_stair = IfcStairTypeEnum.QUARTER_WINDING_STAIR
quarter_turn_stair = IfcStairTypeEnum.QUARTER_TURN_STAIR
half_winding_stair = IfcStairTypeEnum.HALF_WINDING_STAIR
half_turn_stair = IfcStairTypeEnum.HALF_TURN_STAIR
two_quarter_winding_stair = IfcStairTypeEnum.TWO_QUARTER_WINDING_STAIR
two_quarter_turn_stair = IfcStairTypeEnum.TWO_QUARTER_TURN_STAIR
three_quarter_winding_stair = IfcStairTypeEnum.THREE_QUARTER_WINDING_STAIR
three_quarter_turn_stair = IfcStairTypeEnum.THREE_QUARTER_TURN_STAIR
spiral_stair = IfcStairTypeEnum.SPIRAL_STAIR
double_return_stair = IfcStairTypeEnum.DOUBLE_RETURN_STAIR
curved_run_stair = IfcStairTypeEnum.CURVED_RUN_STAIR
two_curved_run_stair = IfcStairTypeEnum.TWO_CURVED_RUN_STAIR
userdefined = IfcStairTypeEnum.USERDEFINED
notdefined = IfcStairTypeEnum.NOTDEFINED
IfcStateEnum = enum_namespace()
readwrite = IfcStateEnum.READWRITE
readonly = IfcStateEnum.READONLY
locked = IfcStateEnum.LOCKED
readwritelocked = IfcStateEnum.READWRITELOCKED
readonlylocked = IfcStateEnum.READONLYLOCKED
IfcStructuralCurveTypeEnum = enum_namespace()
rigid_joined_member = IfcStructuralCurveTypeEnum.RIGID_JOINED_MEMBER
pin_joined_member = IfcStructuralCurveTypeEnum.PIN_JOINED_MEMBER
cable = IfcStructuralCurveTypeEnum.CABLE
tension_member = IfcStructuralCurveTypeEnum.TENSION_MEMBER
compression_member = IfcStructuralCurveTypeEnum.COMPRESSION_MEMBER
userdefined = IfcStructuralCurveTypeEnum.USERDEFINED
notdefined = IfcStructuralCurveTypeEnum.NOTDEFINED
IfcStructuralSurfaceTypeEnum = enum_namespace()
bending_element = IfcStructuralSurfaceTypeEnum.BENDING_ELEMENT
membrane_element = IfcStructuralSurfaceTypeEnum.MEMBRANE_ELEMENT
shell = IfcStructuralSurfaceTypeEnum.SHELL
userdefined = IfcStructuralSurfaceTypeEnum.USERDEFINED
notdefined = IfcStructuralSurfaceTypeEnum.NOTDEFINED
IfcSurfaceSide = enum_namespace()
positive = IfcSurfaceSide.POSITIVE
negative = IfcSurfaceSide.NEGATIVE
both = IfcSurfaceSide.BOTH
IfcSurfaceTextureEnum = enum_namespace()
bump = IfcSurfaceTextureEnum.BUMP
opacity = IfcSurfaceTextureEnum.OPACITY
reflection = IfcSurfaceTextureEnum.REFLECTION
selfillumination = IfcSurfaceTextureEnum.SELFILLUMINATION
shininess = IfcSurfaceTextureEnum.SHININESS
specular = IfcSurfaceTextureEnum.SPECULAR
texture = IfcSurfaceTextureEnum.TEXTURE
transparencymap = IfcSurfaceTextureEnum.TRANSPARENCYMAP
notdefined = IfcSurfaceTextureEnum.NOTDEFINED
IfcSwitchingDeviceTypeEnum = enum_namespace()
contactor = IfcSwitchingDeviceTypeEnum.CONTACTOR
emergencystop = IfcSwitchingDeviceTypeEnum.EMERGENCYSTOP
starter = IfcSwitchingDeviceTypeEnum.STARTER
switchdisconnector = IfcSwitchingDeviceTypeEnum.SWITCHDISCONNECTOR
toggleswitch = IfcSwitchingDeviceTypeEnum.TOGGLESWITCH
userdefined = IfcSwitchingDeviceTypeEnum.USERDEFINED
notdefined = IfcSwitchingDeviceTypeEnum.NOTDEFINED
IfcTankTypeEnum = enum_namespace()
preformed = IfcTankTypeEnum.PREFORMED
sectional = IfcTankTypeEnum.SECTIONAL
expansion = IfcTankTypeEnum.EXPANSION
pressurevessel = IfcTankTypeEnum.PRESSUREVESSEL
userdefined = IfcTankTypeEnum.USERDEFINED
notdefined = IfcTankTypeEnum.NOTDEFINED
IfcTendonTypeEnum = enum_namespace()
strand = IfcTendonTypeEnum.STRAND
wire = IfcTendonTypeEnum.WIRE
bar = IfcTendonTypeEnum.BAR
coated = IfcTendonTypeEnum.COATED
userdefined = IfcTendonTypeEnum.USERDEFINED
notdefined = IfcTendonTypeEnum.NOTDEFINED
IfcTextPath = enum_namespace()
left = IfcTextPath.LEFT
right = IfcTextPath.RIGHT
up = IfcTextPath.UP
down = IfcTextPath.DOWN
IfcThermalLoadSourceEnum = enum_namespace()
people = IfcThermalLoadSourceEnum.PEOPLE
lighting = IfcThermalLoadSourceEnum.LIGHTING
equipment = IfcThermalLoadSourceEnum.EQUIPMENT
ventilationindoorair = IfcThermalLoadSourceEnum.VENTILATIONINDOORAIR
ventilationoutsideair = IfcThermalLoadSourceEnum.VENTILATIONOUTSIDEAIR
recirculatedair = IfcThermalLoadSourceEnum.RECIRCULATEDAIR
exhaustair = IfcThermalLoadSourceEnum.EXHAUSTAIR
airexchangerate = IfcThermalLoadSourceEnum.AIREXCHANGERATE
drybulbtemperature = IfcThermalLoadSourceEnum.DRYBULBTEMPERATURE
relativehumidity = IfcThermalLoadSourceEnum.RELATIVEHUMIDITY
infiltration = IfcThermalLoadSourceEnum.INFILTRATION
userdefined = IfcThermalLoadSourceEnum.USERDEFINED
notdefined = IfcThermalLoadSourceEnum.NOTDEFINED
IfcThermalLoadTypeEnum = enum_namespace()
sensible = IfcThermalLoadTypeEnum.SENSIBLE
latent = IfcThermalLoadTypeEnum.LATENT
radiant = IfcThermalLoadTypeEnum.RADIANT
notdefined = IfcThermalLoadTypeEnum.NOTDEFINED
IfcTimeSeriesDataTypeEnum = enum_namespace()
continuous = IfcTimeSeriesDataTypeEnum.CONTINUOUS
discrete = IfcTimeSeriesDataTypeEnum.DISCRETE
discretebinary = IfcTimeSeriesDataTypeEnum.DISCRETEBINARY
piecewisebinary = IfcTimeSeriesDataTypeEnum.PIECEWISEBINARY
piecewiseconstant = IfcTimeSeriesDataTypeEnum.PIECEWISECONSTANT
piecewisecontinuous = IfcTimeSeriesDataTypeEnum.PIECEWISECONTINUOUS
notdefined = IfcTimeSeriesDataTypeEnum.NOTDEFINED
IfcTimeSeriesScheduleTypeEnum = enum_namespace()
annual = IfcTimeSeriesScheduleTypeEnum.ANNUAL
monthly = IfcTimeSeriesScheduleTypeEnum.MONTHLY
weekly = IfcTimeSeriesScheduleTypeEnum.WEEKLY
daily = IfcTimeSeriesScheduleTypeEnum.DAILY
userdefined = IfcTimeSeriesScheduleTypeEnum.USERDEFINED
notdefined = IfcTimeSeriesScheduleTypeEnum.NOTDEFINED
IfcTransformerTypeEnum = enum_namespace()
current = IfcTransformerTypeEnum.CURRENT
frequency = IfcTransformerTypeEnum.FREQUENCY
voltage = IfcTransformerTypeEnum.VOLTAGE
userdefined = IfcTransformerTypeEnum.USERDEFINED
notdefined = IfcTransformerTypeEnum.NOTDEFINED
IfcTransitionCode = enum_namespace()
discontinuous = IfcTransitionCode.DISCONTINUOUS
continuous = IfcTransitionCode.CONTINUOUS
contsamegradient = IfcTransitionCode.CONTSAMEGRADIENT
contsamegradientsamecurvature = IfcTransitionCode.CONTSAMEGRADIENTSAMECURVATURE
IfcTransportElementTypeEnum = enum_namespace()
elevator = IfcTransportElementTypeEnum.ELEVATOR
escalator = IfcTransportElementTypeEnum.ESCALATOR
movingwalkway = IfcTransportElementTypeEnum.MOVINGWALKWAY
userdefined = IfcTransportElementTypeEnum.USERDEFINED
notdefined = IfcTransportElementTypeEnum.NOTDEFINED
IfcTrimmingPreference = enum_namespace()
cartesian = IfcTrimmingPreference.CARTESIAN
parameter = IfcTrimmingPreference.PARAMETER
unspecified = IfcTrimmingPreference.UNSPECIFIED
IfcTubeBundleTypeEnum = enum_namespace()
finned = IfcTubeBundleTypeEnum.FINNED
userdefined = IfcTubeBundleTypeEnum.USERDEFINED
notdefined = IfcTubeBundleTypeEnum.NOTDEFINED
IfcUnitEnum = enum_namespace()
absorbeddoseunit = IfcUnitEnum.ABSORBEDDOSEUNIT
amountofsubstanceunit = IfcUnitEnum.AMOUNTOFSUBSTANCEUNIT
areaunit = IfcUnitEnum.AREAUNIT
doseequivalentunit = IfcUnitEnum.DOSEEQUIVALENTUNIT
electriccapacitanceunit = IfcUnitEnum.ELECTRICCAPACITANCEUNIT
electricchargeunit = IfcUnitEnum.ELECTRICCHARGEUNIT
electricconductanceunit = IfcUnitEnum.ELECTRICCONDUCTANCEUNIT
electriccurrentunit = IfcUnitEnum.ELECTRICCURRENTUNIT
electricresistanceunit = IfcUnitEnum.ELECTRICRESISTANCEUNIT
electricvoltageunit = IfcUnitEnum.ELECTRICVOLTAGEUNIT
energyunit = IfcUnitEnum.ENERGYUNIT
forceunit = IfcUnitEnum.FORCEUNIT
frequencyunit = IfcUnitEnum.FREQUENCYUNIT
illuminanceunit = IfcUnitEnum.ILLUMINANCEUNIT
inductanceunit = IfcUnitEnum.INDUCTANCEUNIT
lengthunit = IfcUnitEnum.LENGTHUNIT
luminousfluxunit = IfcUnitEnum.LUMINOUSFLUXUNIT
luminousintensityunit = IfcUnitEnum.LUMINOUSINTENSITYUNIT
magneticfluxdensityunit = IfcUnitEnum.MAGNETICFLUXDENSITYUNIT
magneticfluxunit = IfcUnitEnum.MAGNETICFLUXUNIT
massunit = IfcUnitEnum.MASSUNIT
planeangleunit = IfcUnitEnum.PLANEANGLEUNIT
powerunit = IfcUnitEnum.POWERUNIT
pressureunit = IfcUnitEnum.PRESSUREUNIT
radioactivityunit = IfcUnitEnum.RADIOACTIVITYUNIT
solidangleunit = IfcUnitEnum.SOLIDANGLEUNIT
thermodynamictemperatureunit = IfcUnitEnum.THERMODYNAMICTEMPERATUREUNIT
timeunit = IfcUnitEnum.TIMEUNIT
volumeunit = IfcUnitEnum.VOLUMEUNIT
userdefined = IfcUnitEnum.USERDEFINED
IfcUnitaryEquipmentTypeEnum = enum_namespace()
airhandler = IfcUnitaryEquipmentTypeEnum.AIRHANDLER
airconditioningunit = IfcUnitaryEquipmentTypeEnum.AIRCONDITIONINGUNIT
splitsystem = IfcUnitaryEquipmentTypeEnum.SPLITSYSTEM
rooftopunit = IfcUnitaryEquipmentTypeEnum.ROOFTOPUNIT
userdefined = IfcUnitaryEquipmentTypeEnum.USERDEFINED
notdefined = IfcUnitaryEquipmentTypeEnum.NOTDEFINED
IfcValveTypeEnum = enum_namespace()
airrelease = IfcValveTypeEnum.AIRRELEASE
antivacuum = IfcValveTypeEnum.ANTIVACUUM
changeover = IfcValveTypeEnum.CHANGEOVER
check = IfcValveTypeEnum.CHECK
commissioning = IfcValveTypeEnum.COMMISSIONING
diverting = IfcValveTypeEnum.DIVERTING
drawoffcock = IfcValveTypeEnum.DRAWOFFCOCK
doublecheck = IfcValveTypeEnum.DOUBLECHECK
doubleregulating = IfcValveTypeEnum.DOUBLEREGULATING
faucet = IfcValveTypeEnum.FAUCET
flushing = IfcValveTypeEnum.FLUSHING
gascock = IfcValveTypeEnum.GASCOCK
gastap = IfcValveTypeEnum.GASTAP
isolating = IfcValveTypeEnum.ISOLATING
mixing = IfcValveTypeEnum.MIXING
pressurereducing = IfcValveTypeEnum.PRESSUREREDUCING
pressurerelief = IfcValveTypeEnum.PRESSURERELIEF
regulating = IfcValveTypeEnum.REGULATING
safetycutoff = IfcValveTypeEnum.SAFETYCUTOFF
steamtrap = IfcValveTypeEnum.STEAMTRAP
stopcock = IfcValveTypeEnum.STOPCOCK
userdefined = IfcValveTypeEnum.USERDEFINED
notdefined = IfcValveTypeEnum.NOTDEFINED
IfcVibrationIsolatorTypeEnum = enum_namespace()
compression = IfcVibrationIsolatorTypeEnum.COMPRESSION
spring = IfcVibrationIsolatorTypeEnum.SPRING
userdefined = IfcVibrationIsolatorTypeEnum.USERDEFINED
notdefined = IfcVibrationIsolatorTypeEnum.NOTDEFINED
IfcWallTypeEnum = enum_namespace()
standard = IfcWallTypeEnum.STANDARD
polygonal = IfcWallTypeEnum.POLYGONAL
shear = IfcWallTypeEnum.SHEAR
elementedwall = IfcWallTypeEnum.ELEMENTEDWALL
plumbingwall = IfcWallTypeEnum.PLUMBINGWALL
userdefined = IfcWallTypeEnum.USERDEFINED
notdefined = IfcWallTypeEnum.NOTDEFINED
IfcWasteTerminalTypeEnum = enum_namespace()
floortrap = IfcWasteTerminalTypeEnum.FLOORTRAP
floorwaste = IfcWasteTerminalTypeEnum.FLOORWASTE
gullysump = IfcWasteTerminalTypeEnum.GULLYSUMP
gullytrap = IfcWasteTerminalTypeEnum.GULLYTRAP
greaseinterceptor = IfcWasteTerminalTypeEnum.GREASEINTERCEPTOR
oilinterceptor = IfcWasteTerminalTypeEnum.OILINTERCEPTOR
petrolinterceptor = IfcWasteTerminalTypeEnum.PETROLINTERCEPTOR
roofdrain = IfcWasteTerminalTypeEnum.ROOFDRAIN
wastedisposalunit = IfcWasteTerminalTypeEnum.WASTEDISPOSALUNIT
wastetrap = IfcWasteTerminalTypeEnum.WASTETRAP
userdefined = IfcWasteTerminalTypeEnum.USERDEFINED
notdefined = IfcWasteTerminalTypeEnum.NOTDEFINED
IfcWindowPanelOperationEnum = enum_namespace()
sidehungrighthand = IfcWindowPanelOperationEnum.SIDEHUNGRIGHTHAND
sidehunglefthand = IfcWindowPanelOperationEnum.SIDEHUNGLEFTHAND
tiltandturnrighthand = IfcWindowPanelOperationEnum.TILTANDTURNRIGHTHAND
tiltandturnlefthand = IfcWindowPanelOperationEnum.TILTANDTURNLEFTHAND
tophung = IfcWindowPanelOperationEnum.TOPHUNG
bottomhung = IfcWindowPanelOperationEnum.BOTTOMHUNG
pivothorizontal = IfcWindowPanelOperationEnum.PIVOTHORIZONTAL
pivotvertical = IfcWindowPanelOperationEnum.PIVOTVERTICAL
slidinghorizontal = IfcWindowPanelOperationEnum.SLIDINGHORIZONTAL
slidingvertical = IfcWindowPanelOperationEnum.SLIDINGVERTICAL
removablecasement = IfcWindowPanelOperationEnum.REMOVABLECASEMENT
fixedcasement = IfcWindowPanelOperationEnum.FIXEDCASEMENT
otheroperation = IfcWindowPanelOperationEnum.OTHEROPERATION
notdefined = IfcWindowPanelOperationEnum.NOTDEFINED
IfcWindowPanelPositionEnum = enum_namespace()
left = IfcWindowPanelPositionEnum.LEFT
middle = IfcWindowPanelPositionEnum.MIDDLE
right = IfcWindowPanelPositionEnum.RIGHT
bottom = IfcWindowPanelPositionEnum.BOTTOM
top = IfcWindowPanelPositionEnum.TOP
notdefined = IfcWindowPanelPositionEnum.NOTDEFINED
IfcWindowStyleConstructionEnum = enum_namespace()
aluminium = IfcWindowStyleConstructionEnum.ALUMINIUM
high_grade_steel = IfcWindowStyleConstructionEnum.HIGH_GRADE_STEEL
steel = IfcWindowStyleConstructionEnum.STEEL
wood = IfcWindowStyleConstructionEnum.WOOD
aluminium_wood = IfcWindowStyleConstructionEnum.ALUMINIUM_WOOD
plastic = IfcWindowStyleConstructionEnum.PLASTIC
other_construction = IfcWindowStyleConstructionEnum.OTHER_CONSTRUCTION
notdefined = IfcWindowStyleConstructionEnum.NOTDEFINED
IfcWindowStyleOperationEnum = enum_namespace()
single_panel = IfcWindowStyleOperationEnum.SINGLE_PANEL
double_panel_vertical = IfcWindowStyleOperationEnum.DOUBLE_PANEL_VERTICAL
double_panel_horizontal = IfcWindowStyleOperationEnum.DOUBLE_PANEL_HORIZONTAL
triple_panel_vertical = IfcWindowStyleOperationEnum.TRIPLE_PANEL_VERTICAL
triple_panel_bottom = IfcWindowStyleOperationEnum.TRIPLE_PANEL_BOTTOM
triple_panel_top = IfcWindowStyleOperationEnum.TRIPLE_PANEL_TOP
triple_panel_left = IfcWindowStyleOperationEnum.TRIPLE_PANEL_LEFT
triple_panel_right = IfcWindowStyleOperationEnum.TRIPLE_PANEL_RIGHT
triple_panel_horizontal = IfcWindowStyleOperationEnum.TRIPLE_PANEL_HORIZONTAL
userdefined = IfcWindowStyleOperationEnum.USERDEFINED
notdefined = IfcWindowStyleOperationEnum.NOTDEFINED
IfcWorkControlTypeEnum = enum_namespace()
actual = IfcWorkControlTypeEnum.ACTUAL
baseline = IfcWorkControlTypeEnum.BASELINE
planned = IfcWorkControlTypeEnum.PLANNED
userdefined = IfcWorkControlTypeEnum.USERDEFINED
notdefined = IfcWorkControlTypeEnum.NOTDEFINED
def Ifc2DCompositeCurve(*args, **kwargs): return ifcopenshell.create_entity('Ifc2DCompositeCurve', 'IFC2X3', *args, **kwargs)
def IfcActionRequest(*args, **kwargs): return ifcopenshell.create_entity('IfcActionRequest', 'IFC2X3', *args, **kwargs)
def IfcActor(*args, **kwargs): return ifcopenshell.create_entity('IfcActor', 'IFC2X3', *args, **kwargs)
def IfcActorRole(*args, **kwargs): return ifcopenshell.create_entity('IfcActorRole', 'IFC2X3', *args, **kwargs)
def IfcActuatorType(*args, **kwargs): return ifcopenshell.create_entity('IfcActuatorType', 'IFC2X3', *args, **kwargs)
def IfcAddress(*args, **kwargs): return ifcopenshell.create_entity('IfcAddress', 'IFC2X3', *args, **kwargs)
def IfcAirTerminalBoxType(*args, **kwargs): return ifcopenshell.create_entity('IfcAirTerminalBoxType', 'IFC2X3', *args, **kwargs)
def IfcAirTerminalType(*args, **kwargs): return ifcopenshell.create_entity('IfcAirTerminalType', 'IFC2X3', *args, **kwargs)
def IfcAirToAirHeatRecoveryType(*args, **kwargs): return ifcopenshell.create_entity('IfcAirToAirHeatRecoveryType', 'IFC2X3', *args, **kwargs)
def IfcAlarmType(*args, **kwargs): return ifcopenshell.create_entity('IfcAlarmType', 'IFC2X3', *args, **kwargs)
def IfcAngularDimension(*args, **kwargs): return ifcopenshell.create_entity('IfcAngularDimension', 'IFC2X3', *args, **kwargs)
def IfcAnnotation(*args, **kwargs): return ifcopenshell.create_entity('IfcAnnotation', 'IFC2X3', *args, **kwargs)
def IfcAnnotationCurveOccurrence(*args, **kwargs): return ifcopenshell.create_entity('IfcAnnotationCurveOccurrence', 'IFC2X3', *args, **kwargs)
def IfcAnnotationFillArea(*args, **kwargs): return ifcopenshell.create_entity('IfcAnnotationFillArea', 'IFC2X3', *args, **kwargs)
def IfcAnnotationFillAreaOccurrence(*args, **kwargs): return ifcopenshell.create_entity('IfcAnnotationFillAreaOccurrence', 'IFC2X3', *args, **kwargs)
def IfcAnnotationOccurrence(*args, **kwargs): return ifcopenshell.create_entity('IfcAnnotationOccurrence', 'IFC2X3', *args, **kwargs)
def IfcAnnotationSurface(*args, **kwargs): return ifcopenshell.create_entity('IfcAnnotationSurface', 'IFC2X3', *args, **kwargs)
def IfcAnnotationSurfaceOccurrence(*args, **kwargs): return ifcopenshell.create_entity('IfcAnnotationSurfaceOccurrence', 'IFC2X3', *args, **kwargs)
def IfcAnnotationSymbolOccurrence(*args, **kwargs): return ifcopenshell.create_entity('IfcAnnotationSymbolOccurrence', 'IFC2X3', *args, **kwargs)
def IfcAnnotationTextOccurrence(*args, **kwargs): return ifcopenshell.create_entity('IfcAnnotationTextOccurrence', 'IFC2X3', *args, **kwargs)
def IfcApplication(*args, **kwargs): return ifcopenshell.create_entity('IfcApplication', 'IFC2X3', *args, **kwargs)
def IfcAppliedValue(*args, **kwargs): return ifcopenshell.create_entity('IfcAppliedValue', 'IFC2X3', *args, **kwargs)
def IfcAppliedValueRelationship(*args, **kwargs): return ifcopenshell.create_entity('IfcAppliedValueRelationship', 'IFC2X3', *args, **kwargs)
def IfcApproval(*args, **kwargs): return ifcopenshell.create_entity('IfcApproval', 'IFC2X3', *args, **kwargs)
def IfcApprovalActorRelationship(*args, **kwargs): return ifcopenshell.create_entity('IfcApprovalActorRelationship', 'IFC2X3', *args, **kwargs)
def IfcApprovalPropertyRelationship(*args, **kwargs): return ifcopenshell.create_entity('IfcApprovalPropertyRelationship', 'IFC2X3', *args, **kwargs)
def IfcApprovalRelationship(*args, **kwargs): return ifcopenshell.create_entity('IfcApprovalRelationship', 'IFC2X3', *args, **kwargs)
def IfcArbitraryClosedProfileDef(*args, **kwargs): return ifcopenshell.create_entity('IfcArbitraryClosedProfileDef', 'IFC2X3', *args, **kwargs)
def IfcArbitraryOpenProfileDef(*args, **kwargs): return ifcopenshell.create_entity('IfcArbitraryOpenProfileDef', 'IFC2X3', *args, **kwargs)
def IfcArbitraryProfileDefWithVoids(*args, **kwargs): return ifcopenshell.create_entity('IfcArbitraryProfileDefWithVoids', 'IFC2X3', *args, **kwargs)
def IfcAsset(*args, **kwargs): return ifcopenshell.create_entity('IfcAsset', 'IFC2X3', *args, **kwargs)
def IfcAsymmetricIShapeProfileDef(*args, **kwargs): return ifcopenshell.create_entity('IfcAsymmetricIShapeProfileDef', 'IFC2X3', *args, **kwargs)
def IfcAxis1Placement(*args, **kwargs): return ifcopenshell.create_entity('IfcAxis1Placement', 'IFC2X3', *args, **kwargs)
def IfcAxis2Placement2D(*args, **kwargs): return ifcopenshell.create_entity('IfcAxis2Placement2D', 'IFC2X3', *args, **kwargs)
def IfcAxis2Placement3D(*args, **kwargs): return ifcopenshell.create_entity('IfcAxis2Placement3D', 'IFC2X3', *args, **kwargs)
def IfcBSplineCurve(*args, **kwargs): return ifcopenshell.create_entity('IfcBSplineCurve', 'IFC2X3', *args, **kwargs)
def IfcBeam(*args, **kwargs): return ifcopenshell.create_entity('IfcBeam', 'IFC2X3', *args, **kwargs)
def IfcBeamType(*args, **kwargs): return ifcopenshell.create_entity('IfcBeamType', 'IFC2X3', *args, **kwargs)
def IfcBezierCurve(*args, **kwargs): return ifcopenshell.create_entity('IfcBezierCurve', 'IFC2X3', *args, **kwargs)
def IfcBlobTexture(*args, **kwargs): return ifcopenshell.create_entity('IfcBlobTexture', 'IFC2X3', *args, **kwargs)
def IfcBlock(*args, **kwargs): return ifcopenshell.create_entity('IfcBlock', 'IFC2X3', *args, **kwargs)
def IfcBoilerType(*args, **kwargs): return ifcopenshell.create_entity('IfcBoilerType', 'IFC2X3', *args, **kwargs)
def IfcBooleanClippingResult(*args, **kwargs): return ifcopenshell.create_entity('IfcBooleanClippingResult', 'IFC2X3', *args, **kwargs)
def IfcBooleanResult(*args, **kwargs): return ifcopenshell.create_entity('IfcBooleanResult', 'IFC2X3', *args, **kwargs)
def IfcBoundaryCondition(*args, **kwargs): return ifcopenshell.create_entity('IfcBoundaryCondition', 'IFC2X3', *args, **kwargs)
def IfcBoundaryEdgeCondition(*args, **kwargs): return ifcopenshell.create_entity('IfcBoundaryEdgeCondition', 'IFC2X3', *args, **kwargs)
def IfcBoundaryFaceCondition(*args, **kwargs): return ifcopenshell.create_entity('IfcBoundaryFaceCondition', 'IFC2X3', *args, **kwargs)
def IfcBoundaryNodeCondition(*args, **kwargs): return ifcopenshell.create_entity('IfcBoundaryNodeCondition', 'IFC2X3', *args, **kwargs)
def IfcBoundaryNodeConditionWarping(*args, **kwargs): return ifcopenshell.create_entity('IfcBoundaryNodeConditionWarping', 'IFC2X3', *args, **kwargs)
def IfcBoundedCurve(*args, **kwargs): return ifcopenshell.create_entity('IfcBoundedCurve', 'IFC2X3', *args, **kwargs)
def IfcBoundedSurface(*args, **kwargs): return ifcopenshell.create_entity('IfcBoundedSurface', 'IFC2X3', *args, **kwargs)
def IfcBoundingBox(*args, **kwargs): return ifcopenshell.create_entity('IfcBoundingBox', 'IFC2X3', *args, **kwargs)
def IfcBoxedHalfSpace(*args, **kwargs): return ifcopenshell.create_entity('IfcBoxedHalfSpace', 'IFC2X3', *args, **kwargs)
def IfcBuilding(*args, **kwargs): return ifcopenshell.create_entity('IfcBuilding', 'IFC2X3', *args, **kwargs)
def IfcBuildingElement(*args, **kwargs): return ifcopenshell.create_entity('IfcBuildingElement', 'IFC2X3', *args, **kwargs)
def IfcBuildingElementComponent(*args, **kwargs): return ifcopenshell.create_entity('IfcBuildingElementComponent', 'IFC2X3', *args, **kwargs)
def IfcBuildingElementPart(*args, **kwargs): return ifcopenshell.create_entity('IfcBuildingElementPart', 'IFC2X3', *args, **kwargs)
def IfcBuildingElementProxy(*args, **kwargs): return ifcopenshell.create_entity('IfcBuildingElementProxy', 'IFC2X3', *args, **kwargs)
def IfcBuildingElementProxyType(*args, **kwargs): return ifcopenshell.create_entity('IfcBuildingElementProxyType', 'IFC2X3', *args, **kwargs)
def IfcBuildingElementType(*args, **kwargs): return ifcopenshell.create_entity('IfcBuildingElementType', 'IFC2X3', *args, **kwargs)
def IfcBuildingStorey(*args, **kwargs): return ifcopenshell.create_entity('IfcBuildingStorey', 'IFC2X3', *args, **kwargs)
def IfcCShapeProfileDef(*args, **kwargs): return ifcopenshell.create_entity('IfcCShapeProfileDef', 'IFC2X3', *args, **kwargs)
def IfcCableCarrierFittingType(*args, **kwargs): return ifcopenshell.create_entity('IfcCableCarrierFittingType', 'IFC2X3', *args, **kwargs)
def IfcCableCarrierSegmentType(*args, **kwargs): return ifcopenshell.create_entity('IfcCableCarrierSegmentType', 'IFC2X3', *args, **kwargs)
def IfcCableSegmentType(*args, **kwargs): return ifcopenshell.create_entity('IfcCableSegmentType', 'IFC2X3', *args, **kwargs)
def IfcCalendarDate(*args, **kwargs): return ifcopenshell.create_entity('IfcCalendarDate', 'IFC2X3', *args, **kwargs)
def IfcCartesianPoint(*args, **kwargs): return ifcopenshell.create_entity('IfcCartesianPoint', 'IFC2X3', *args, **kwargs)
def IfcCartesianTransformationOperator(*args, **kwargs): return ifcopenshell.create_entity('IfcCartesianTransformationOperator', 'IFC2X3', *args, **kwargs)
def IfcCartesianTransformationOperator2D(*args, **kwargs): return ifcopenshell.create_entity('IfcCartesianTransformationOperator2D', 'IFC2X3', *args, **kwargs)
def IfcCartesianTransformationOperator2DnonUniform(*args, **kwargs): return ifcopenshell.create_entity('IfcCartesianTransformationOperator2DnonUniform', 'IFC2X3', *args, **kwargs)
def IfcCartesianTransformationOperator3D(*args, **kwargs): return ifcopenshell.create_entity('IfcCartesianTransformationOperator3D', 'IFC2X3', *args, **kwargs)
def IfcCartesianTransformationOperator3DnonUniform(*args, **kwargs): return ifcopenshell.create_entity('IfcCartesianTransformationOperator3DnonUniform', 'IFC2X3', *args, **kwargs)
def IfcCenterLineProfileDef(*args, **kwargs): return ifcopenshell.create_entity('IfcCenterLineProfileDef', 'IFC2X3', *args, **kwargs)
def IfcChamferEdgeFeature(*args, **kwargs): return ifcopenshell.create_entity('IfcChamferEdgeFeature', 'IFC2X3', *args, **kwargs)
def IfcChillerType(*args, **kwargs): return ifcopenshell.create_entity('IfcChillerType', 'IFC2X3', *args, **kwargs)
def IfcCircle(*args, **kwargs): return ifcopenshell.create_entity('IfcCircle', 'IFC2X3', *args, **kwargs)
def IfcCircleHollowProfileDef(*args, **kwargs): return ifcopenshell.create_entity('IfcCircleHollowProfileDef', 'IFC2X3', *args, **kwargs)
def IfcCircleProfileDef(*args, **kwargs): return ifcopenshell.create_entity('IfcCircleProfileDef', 'IFC2X3', *args, **kwargs)
def IfcClassification(*args, **kwargs): return ifcopenshell.create_entity('IfcClassification', 'IFC2X3', *args, **kwargs)
def IfcClassificationItem(*args, **kwargs): return ifcopenshell.create_entity('IfcClassificationItem', 'IFC2X3', *args, **kwargs)
def IfcClassificationItemRelationship(*args, **kwargs): return ifcopenshell.create_entity('IfcClassificationItemRelationship', 'IFC2X3', *args, **kwargs)
def IfcClassificationNotation(*args, **kwargs): return ifcopenshell.create_entity('IfcClassificationNotation', 'IFC2X3', *args, **kwargs)
def IfcClassificationNotationFacet(*args, **kwargs): return ifcopenshell.create_entity('IfcClassificationNotationFacet', 'IFC2X3', *args, **kwargs)
def IfcClassificationReference(*args, **kwargs): return ifcopenshell.create_entity('IfcClassificationReference', 'IFC2X3', *args, **kwargs)
def IfcClosedShell(*args, **kwargs): return ifcopenshell.create_entity('IfcClosedShell', 'IFC2X3', *args, **kwargs)
def IfcCoilType(*args, **kwargs): return ifcopenshell.create_entity('IfcCoilType', 'IFC2X3', *args, **kwargs)
def IfcColourRgb(*args, **kwargs): return ifcopenshell.create_entity('IfcColourRgb', 'IFC2X3', *args, **kwargs)
def IfcColourSpecification(*args, **kwargs): return ifcopenshell.create_entity('IfcColourSpecification', 'IFC2X3', *args, **kwargs)
def IfcColumn(*args, **kwargs): return ifcopenshell.create_entity('IfcColumn', 'IFC2X3', *args, **kwargs)
def IfcColumnType(*args, **kwargs): return ifcopenshell.create_entity('IfcColumnType', 'IFC2X3', *args, **kwargs)
def IfcComplexProperty(*args, **kwargs): return ifcopenshell.create_entity('IfcComplexProperty', 'IFC2X3', *args, **kwargs)
def IfcCompositeCurve(*args, **kwargs): return ifcopenshell.create_entity('IfcCompositeCurve', 'IFC2X3', *args, **kwargs)
def IfcCompositeCurveSegment(*args, **kwargs): return ifcopenshell.create_entity('IfcCompositeCurveSegment', 'IFC2X3', *args, **kwargs)
def IfcCompositeProfileDef(*args, **kwargs): return ifcopenshell.create_entity('IfcCompositeProfileDef', 'IFC2X3', *args, **kwargs)
def IfcCompressorType(*args, **kwargs): return ifcopenshell.create_entity('IfcCompressorType', 'IFC2X3', *args, **kwargs)
def IfcCondenserType(*args, **kwargs): return ifcopenshell.create_entity('IfcCondenserType', 'IFC2X3', *args, **kwargs)
def IfcCondition(*args, **kwargs): return ifcopenshell.create_entity('IfcCondition', 'IFC2X3', *args, **kwargs)
def IfcConditionCriterion(*args, **kwargs): return ifcopenshell.create_entity('IfcConditionCriterion', 'IFC2X3', *args, **kwargs)
def IfcConic(*args, **kwargs): return ifcopenshell.create_entity('IfcConic', 'IFC2X3', *args, **kwargs)
def IfcConnectedFaceSet(*args, **kwargs): return ifcopenshell.create_entity('IfcConnectedFaceSet', 'IFC2X3', *args, **kwargs)
def IfcConnectionCurveGeometry(*args, **kwargs): return ifcopenshell.create_entity('IfcConnectionCurveGeometry', 'IFC2X3', *args, **kwargs)
def IfcConnectionGeometry(*args, **kwargs): return ifcopenshell.create_entity('IfcConnectionGeometry', 'IFC2X3', *args, **kwargs)
def IfcConnectionPointEccentricity(*args, **kwargs): return ifcopenshell.create_entity('IfcConnectionPointEccentricity', 'IFC2X3', *args, **kwargs)
def IfcConnectionPointGeometry(*args, **kwargs): return ifcopenshell.create_entity('IfcConnectionPointGeometry', 'IFC2X3', *args, **kwargs)
def IfcConnectionPortGeometry(*args, **kwargs): return ifcopenshell.create_entity('IfcConnectionPortGeometry', 'IFC2X3', *args, **kwargs)
def IfcConnectionSurfaceGeometry(*args, **kwargs): return ifcopenshell.create_entity('IfcConnectionSurfaceGeometry', 'IFC2X3', *args, **kwargs)
def IfcConstraint(*args, **kwargs): return ifcopenshell.create_entity('IfcConstraint', 'IFC2X3', *args, **kwargs)
def IfcConstraintAggregationRelationship(*args, **kwargs): return ifcopenshell.create_entity('IfcConstraintAggregationRelationship', 'IFC2X3', *args, **kwargs)
def IfcConstraintClassificationRelationship(*args, **kwargs): return ifcopenshell.create_entity('IfcConstraintClassificationRelationship', 'IFC2X3', *args, **kwargs)
def IfcConstraintRelationship(*args, **kwargs): return ifcopenshell.create_entity('IfcConstraintRelationship', 'IFC2X3', *args, **kwargs)
def IfcConstructionEquipmentResource(*args, **kwargs): return ifcopenshell.create_entity('IfcConstructionEquipmentResource', 'IFC2X3', *args, **kwargs)
def IfcConstructionMaterialResource(*args, **kwargs): return ifcopenshell.create_entity('IfcConstructionMaterialResource', 'IFC2X3', *args, **kwargs)
def IfcConstructionProductResource(*args, **kwargs): return ifcopenshell.create_entity('IfcConstructionProductResource', 'IFC2X3', *args, **kwargs)
def IfcConstructionResource(*args, **kwargs): return ifcopenshell.create_entity('IfcConstructionResource', 'IFC2X3', *args, **kwargs)
def IfcContextDependentUnit(*args, **kwargs): return ifcopenshell.create_entity('IfcContextDependentUnit', 'IFC2X3', *args, **kwargs)
def IfcControl(*args, **kwargs): return ifcopenshell.create_entity('IfcControl', 'IFC2X3', *args, **kwargs)
def IfcControllerType(*args, **kwargs): return ifcopenshell.create_entity('IfcControllerType', 'IFC2X3', *args, **kwargs)
def IfcConversionBasedUnit(*args, **kwargs): return ifcopenshell.create_entity('IfcConversionBasedUnit', 'IFC2X3', *args, **kwargs)
def IfcCooledBeamType(*args, **kwargs): return ifcopenshell.create_entity('IfcCooledBeamType', 'IFC2X3', *args, **kwargs)
def IfcCoolingTowerType(*args, **kwargs): return ifcopenshell.create_entity('IfcCoolingTowerType', 'IFC2X3', *args, **kwargs)
def IfcCoordinatedUniversalTimeOffset(*args, **kwargs): return ifcopenshell.create_entity('IfcCoordinatedUniversalTimeOffset', 'IFC2X3', *args, **kwargs)
def IfcCostItem(*args, **kwargs): return ifcopenshell.create_entity('IfcCostItem', 'IFC2X3', *args, **kwargs)
def IfcCostSchedule(*args, **kwargs): return ifcopenshell.create_entity('IfcCostSchedule', 'IFC2X3', *args, **kwargs)
def IfcCostValue(*args, **kwargs): return ifcopenshell.create_entity('IfcCostValue', 'IFC2X3', *args, **kwargs)
def IfcCovering(*args, **kwargs): return ifcopenshell.create_entity('IfcCovering', 'IFC2X3', *args, **kwargs)
def IfcCoveringType(*args, **kwargs): return ifcopenshell.create_entity('IfcCoveringType', 'IFC2X3', *args, **kwargs)
def IfcCraneRailAShapeProfileDef(*args, **kwargs): return ifcopenshell.create_entity('IfcCraneRailAShapeProfileDef', 'IFC2X3', *args, **kwargs)
def IfcCraneRailFShapeProfileDef(*args, **kwargs): return ifcopenshell.create_entity('IfcCraneRailFShapeProfileDef', 'IFC2X3', *args, **kwargs)
def IfcCrewResource(*args, **kwargs): return ifcopenshell.create_entity('IfcCrewResource', 'IFC2X3', *args, **kwargs)
def IfcCsgPrimitive3D(*args, **kwargs): return ifcopenshell.create_entity('IfcCsgPrimitive3D', 'IFC2X3', *args, **kwargs)
def IfcCsgSolid(*args, **kwargs): return ifcopenshell.create_entity('IfcCsgSolid', 'IFC2X3', *args, **kwargs)
def IfcCurrencyRelationship(*args, **kwargs): return ifcopenshell.create_entity('IfcCurrencyRelationship', 'IFC2X3', *args, **kwargs)
def IfcCurtainWall(*args, **kwargs): return ifcopenshell.create_entity('IfcCurtainWall', 'IFC2X3', *args, **kwargs)
def IfcCurtainWallType(*args, **kwargs): return ifcopenshell.create_entity('IfcCurtainWallType', 'IFC2X3', *args, **kwargs)
def IfcCurve(*args, **kwargs): return ifcopenshell.create_entity('IfcCurve', 'IFC2X3', *args, **kwargs)
def IfcCurveBoundedPlane(*args, **kwargs): return ifcopenshell.create_entity('IfcCurveBoundedPlane', 'IFC2X3', *args, **kwargs)
def IfcCurveStyle(*args, **kwargs): return ifcopenshell.create_entity('IfcCurveStyle', 'IFC2X3', *args, **kwargs)
def IfcCurveStyleFont(*args, **kwargs): return ifcopenshell.create_entity('IfcCurveStyleFont', 'IFC2X3', *args, **kwargs)
def IfcCurveStyleFontAndScaling(*args, **kwargs): return ifcopenshell.create_entity('IfcCurveStyleFontAndScaling', 'IFC2X3', *args, **kwargs)
def IfcCurveStyleFontPattern(*args, **kwargs): return ifcopenshell.create_entity('IfcCurveStyleFontPattern', 'IFC2X3', *args, **kwargs)
def IfcDamperType(*args, **kwargs): return ifcopenshell.create_entity('IfcDamperType', 'IFC2X3', *args, **kwargs)
def IfcDateAndTime(*args, **kwargs): return ifcopenshell.create_entity('IfcDateAndTime', 'IFC2X3', *args, **kwargs)
def IfcDefinedSymbol(*args, **kwargs): return ifcopenshell.create_entity('IfcDefinedSymbol', 'IFC2X3', *args, **kwargs)
def IfcDerivedProfileDef(*args, **kwargs): return ifcopenshell.create_entity('IfcDerivedProfileDef', 'IFC2X3', *args, **kwargs)
def IfcDerivedUnit(*args, **kwargs): return ifcopenshell.create_entity('IfcDerivedUnit', 'IFC2X3', *args, **kwargs)
def IfcDerivedUnitElement(*args, **kwargs): return ifcopenshell.create_entity('IfcDerivedUnitElement', 'IFC2X3', *args, **kwargs)
def IfcDiameterDimension(*args, **kwargs): return ifcopenshell.create_entity('IfcDiameterDimension', 'IFC2X3', *args, **kwargs)
def IfcDimensionCalloutRelationship(*args, **kwargs): return ifcopenshell.create_entity('IfcDimensionCalloutRelationship', 'IFC2X3', *args, **kwargs)
def IfcDimensionCurve(*args, **kwargs): return ifcopenshell.create_entity('IfcDimensionCurve', 'IFC2X3', *args, **kwargs)
def IfcDimensionCurveDirectedCallout(*args, **kwargs): return ifcopenshell.create_entity('IfcDimensionCurveDirectedCallout', 'IFC2X3', *args, **kwargs)
def IfcDimensionCurveTerminator(*args, **kwargs): return ifcopenshell.create_entity('IfcDimensionCurveTerminator', 'IFC2X3', *args, **kwargs)
def IfcDimensionPair(*args, **kwargs): return ifcopenshell.create_entity('IfcDimensionPair', 'IFC2X3', *args, **kwargs)
def IfcDimensionalExponents(*args, **kwargs): return ifcopenshell.create_entity('IfcDimensionalExponents', 'IFC2X3', *args, **kwargs)
def IfcDirection(*args, **kwargs): return ifcopenshell.create_entity('IfcDirection', 'IFC2X3', *args, **kwargs)
def IfcDiscreteAccessory(*args, **kwargs): return ifcopenshell.create_entity('IfcDiscreteAccessory', 'IFC2X3', *args, **kwargs)
def IfcDiscreteAccessoryType(*args, **kwargs): return ifcopenshell.create_entity('IfcDiscreteAccessoryType', 'IFC2X3', *args, **kwargs)
def IfcDistributionChamberElement(*args, **kwargs): return ifcopenshell.create_entity('IfcDistributionChamberElement', 'IFC2X3', *args, **kwargs)
def IfcDistributionChamberElementType(*args, **kwargs): return ifcopenshell.create_entity('IfcDistributionChamberElementType', 'IFC2X3', *args, **kwargs)
def IfcDistributionControlElement(*args, **kwargs): return ifcopenshell.create_entity('IfcDistributionControlElement', 'IFC2X3', *args, **kwargs)
def IfcDistributionControlElementType(*args, **kwargs): return ifcopenshell.create_entity('IfcDistributionControlElementType', 'IFC2X3', *args, **kwargs)
def IfcDistributionElement(*args, **kwargs): return ifcopenshell.create_entity('IfcDistributionElement', 'IFC2X3', *args, **kwargs)
def IfcDistributionElementType(*args, **kwargs): return ifcopenshell.create_entity('IfcDistributionElementType', 'IFC2X3', *args, **kwargs)
def IfcDistributionFlowElement(*args, **kwargs): return ifcopenshell.create_entity('IfcDistributionFlowElement', 'IFC2X3', *args, **kwargs)
def IfcDistributionFlowElementType(*args, **kwargs): return ifcopenshell.create_entity('IfcDistributionFlowElementType', 'IFC2X3', *args, **kwargs)
def IfcDistributionPort(*args, **kwargs): return ifcopenshell.create_entity('IfcDistributionPort', 'IFC2X3', *args, **kwargs)
def IfcDocumentElectronicFormat(*args, **kwargs): return ifcopenshell.create_entity('IfcDocumentElectronicFormat', 'IFC2X3', *args, **kwargs)
def IfcDocumentInformation(*args, **kwargs): return ifcopenshell.create_entity('IfcDocumentInformation', 'IFC2X3', *args, **kwargs)
def IfcDocumentInformationRelationship(*args, **kwargs): return ifcopenshell.create_entity('IfcDocumentInformationRelationship', 'IFC2X3', *args, **kwargs)
def IfcDocumentReference(*args, **kwargs): return ifcopenshell.create_entity('IfcDocumentReference', 'IFC2X3', *args, **kwargs)
def IfcDoor(*args, **kwargs): return ifcopenshell.create_entity('IfcDoor', 'IFC2X3', *args, **kwargs)
def IfcDoorLiningProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcDoorLiningProperties', 'IFC2X3', *args, **kwargs)
def IfcDoorPanelProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcDoorPanelProperties', 'IFC2X3', *args, **kwargs)
def IfcDoorStyle(*args, **kwargs): return ifcopenshell.create_entity('IfcDoorStyle', 'IFC2X3', *args, **kwargs)
def IfcDraughtingCallout(*args, **kwargs): return ifcopenshell.create_entity('IfcDraughtingCallout', 'IFC2X3', *args, **kwargs)
def IfcDraughtingCalloutRelationship(*args, **kwargs): return ifcopenshell.create_entity('IfcDraughtingCalloutRelationship', 'IFC2X3', *args, **kwargs)
def IfcDraughtingPreDefinedColour(*args, **kwargs): return ifcopenshell.create_entity('IfcDraughtingPreDefinedColour', 'IFC2X3', *args, **kwargs)
def IfcDraughtingPreDefinedCurveFont(*args, **kwargs): return ifcopenshell.create_entity('IfcDraughtingPreDefinedCurveFont', 'IFC2X3', *args, **kwargs)
def IfcDraughtingPreDefinedTextFont(*args, **kwargs): return ifcopenshell.create_entity('IfcDraughtingPreDefinedTextFont', 'IFC2X3', *args, **kwargs)
def IfcDuctFittingType(*args, **kwargs): return ifcopenshell.create_entity('IfcDuctFittingType', 'IFC2X3', *args, **kwargs)
def IfcDuctSegmentType(*args, **kwargs): return ifcopenshell.create_entity('IfcDuctSegmentType', 'IFC2X3', *args, **kwargs)
def IfcDuctSilencerType(*args, **kwargs): return ifcopenshell.create_entity('IfcDuctSilencerType', 'IFC2X3', *args, **kwargs)
def IfcEdge(*args, **kwargs): return ifcopenshell.create_entity('IfcEdge', 'IFC2X3', *args, **kwargs)
def IfcEdgeCurve(*args, **kwargs): return ifcopenshell.create_entity('IfcEdgeCurve', 'IFC2X3', *args, **kwargs)
def IfcEdgeFeature(*args, **kwargs): return ifcopenshell.create_entity('IfcEdgeFeature', 'IFC2X3', *args, **kwargs)
def IfcEdgeLoop(*args, **kwargs): return ifcopenshell.create_entity('IfcEdgeLoop', 'IFC2X3', *args, **kwargs)
def IfcElectricApplianceType(*args, **kwargs): return ifcopenshell.create_entity('IfcElectricApplianceType', 'IFC2X3', *args, **kwargs)
def IfcElectricDistributionPoint(*args, **kwargs): return ifcopenshell.create_entity('IfcElectricDistributionPoint', 'IFC2X3', *args, **kwargs)
def IfcElectricFlowStorageDeviceType(*args, **kwargs): return ifcopenshell.create_entity('IfcElectricFlowStorageDeviceType', 'IFC2X3', *args, **kwargs)
def IfcElectricGeneratorType(*args, **kwargs): return ifcopenshell.create_entity('IfcElectricGeneratorType', 'IFC2X3', *args, **kwargs)
def IfcElectricHeaterType(*args, **kwargs): return ifcopenshell.create_entity('IfcElectricHeaterType', 'IFC2X3', *args, **kwargs)
def IfcElectricMotorType(*args, **kwargs): return ifcopenshell.create_entity('IfcElectricMotorType', 'IFC2X3', *args, **kwargs)
def IfcElectricTimeControlType(*args, **kwargs): return ifcopenshell.create_entity('IfcElectricTimeControlType', 'IFC2X3', *args, **kwargs)
def IfcElectricalBaseProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcElectricalBaseProperties', 'IFC2X3', *args, **kwargs)
def IfcElectricalCircuit(*args, **kwargs): return ifcopenshell.create_entity('IfcElectricalCircuit', 'IFC2X3', *args, **kwargs)
def IfcElectricalElement(*args, **kwargs): return ifcopenshell.create_entity('IfcElectricalElement', 'IFC2X3', *args, **kwargs)
def IfcElement(*args, **kwargs): return ifcopenshell.create_entity('IfcElement', 'IFC2X3', *args, **kwargs)
def IfcElementAssembly(*args, **kwargs): return ifcopenshell.create_entity('IfcElementAssembly', 'IFC2X3', *args, **kwargs)
def IfcElementComponent(*args, **kwargs): return ifcopenshell.create_entity('IfcElementComponent', 'IFC2X3', *args, **kwargs)
def IfcElementComponentType(*args, **kwargs): return ifcopenshell.create_entity('IfcElementComponentType', 'IFC2X3', *args, **kwargs)
def IfcElementQuantity(*args, **kwargs): return ifcopenshell.create_entity('IfcElementQuantity', 'IFC2X3', *args, **kwargs)
def IfcElementType(*args, **kwargs): return ifcopenshell.create_entity('IfcElementType', 'IFC2X3', *args, **kwargs)
def IfcElementarySurface(*args, **kwargs): return ifcopenshell.create_entity('IfcElementarySurface', 'IFC2X3', *args, **kwargs)
def IfcEllipse(*args, **kwargs): return ifcopenshell.create_entity('IfcEllipse', 'IFC2X3', *args, **kwargs)
def IfcEllipseProfileDef(*args, **kwargs): return ifcopenshell.create_entity('IfcEllipseProfileDef', 'IFC2X3', *args, **kwargs)
def IfcEnergyConversionDevice(*args, **kwargs): return ifcopenshell.create_entity('IfcEnergyConversionDevice', 'IFC2X3', *args, **kwargs)
def IfcEnergyConversionDeviceType(*args, **kwargs): return ifcopenshell.create_entity('IfcEnergyConversionDeviceType', 'IFC2X3', *args, **kwargs)
def IfcEnergyProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcEnergyProperties', 'IFC2X3', *args, **kwargs)
def IfcEnvironmentalImpactValue(*args, **kwargs): return ifcopenshell.create_entity('IfcEnvironmentalImpactValue', 'IFC2X3', *args, **kwargs)
def IfcEquipmentElement(*args, **kwargs): return ifcopenshell.create_entity('IfcEquipmentElement', 'IFC2X3', *args, **kwargs)
def IfcEquipmentStandard(*args, **kwargs): return ifcopenshell.create_entity('IfcEquipmentStandard', 'IFC2X3', *args, **kwargs)
def IfcEvaporativeCoolerType(*args, **kwargs): return ifcopenshell.create_entity('IfcEvaporativeCoolerType', 'IFC2X3', *args, **kwargs)
def IfcEvaporatorType(*args, **kwargs): return ifcopenshell.create_entity('IfcEvaporatorType', 'IFC2X3', *args, **kwargs)
def IfcExtendedMaterialProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcExtendedMaterialProperties', 'IFC2X3', *args, **kwargs)
def IfcExternalReference(*args, **kwargs): return ifcopenshell.create_entity('IfcExternalReference', 'IFC2X3', *args, **kwargs)
def IfcExternallyDefinedHatchStyle(*args, **kwargs): return ifcopenshell.create_entity('IfcExternallyDefinedHatchStyle', 'IFC2X3', *args, **kwargs)
def IfcExternallyDefinedSurfaceStyle(*args, **kwargs): return ifcopenshell.create_entity('IfcExternallyDefinedSurfaceStyle', 'IFC2X3', *args, **kwargs)
def IfcExternallyDefinedSymbol(*args, **kwargs): return ifcopenshell.create_entity('IfcExternallyDefinedSymbol', 'IFC2X3', *args, **kwargs)
def IfcExternallyDefinedTextFont(*args, **kwargs): return ifcopenshell.create_entity('IfcExternallyDefinedTextFont', 'IFC2X3', *args, **kwargs)
def IfcExtrudedAreaSolid(*args, **kwargs): return ifcopenshell.create_entity('IfcExtrudedAreaSolid', 'IFC2X3', *args, **kwargs)
def IfcFace(*args, **kwargs): return ifcopenshell.create_entity('IfcFace', 'IFC2X3', *args, **kwargs)
def IfcFaceBasedSurfaceModel(*args, **kwargs): return ifcopenshell.create_entity('IfcFaceBasedSurfaceModel', 'IFC2X3', *args, **kwargs)
def IfcFaceBound(*args, **kwargs): return ifcopenshell.create_entity('IfcFaceBound', 'IFC2X3', *args, **kwargs)
def IfcFaceOuterBound(*args, **kwargs): return ifcopenshell.create_entity('IfcFaceOuterBound', 'IFC2X3', *args, **kwargs)
def IfcFaceSurface(*args, **kwargs): return ifcopenshell.create_entity('IfcFaceSurface', 'IFC2X3', *args, **kwargs)
def IfcFacetedBrep(*args, **kwargs): return ifcopenshell.create_entity('IfcFacetedBrep', 'IFC2X3', *args, **kwargs)
def IfcFacetedBrepWithVoids(*args, **kwargs): return ifcopenshell.create_entity('IfcFacetedBrepWithVoids', 'IFC2X3', *args, **kwargs)
def IfcFailureConnectionCondition(*args, **kwargs): return ifcopenshell.create_entity('IfcFailureConnectionCondition', 'IFC2X3', *args, **kwargs)
def IfcFanType(*args, **kwargs): return ifcopenshell.create_entity('IfcFanType', 'IFC2X3', *args, **kwargs)
def IfcFastener(*args, **kwargs): return ifcopenshell.create_entity('IfcFastener', 'IFC2X3', *args, **kwargs)
def IfcFastenerType(*args, **kwargs): return ifcopenshell.create_entity('IfcFastenerType', 'IFC2X3', *args, **kwargs)
def IfcFeatureElement(*args, **kwargs): return ifcopenshell.create_entity('IfcFeatureElement', 'IFC2X3', *args, **kwargs)
def IfcFeatureElementAddition(*args, **kwargs): return ifcopenshell.create_entity('IfcFeatureElementAddition', 'IFC2X3', *args, **kwargs)
def IfcFeatureElementSubtraction(*args, **kwargs): return ifcopenshell.create_entity('IfcFeatureElementSubtraction', 'IFC2X3', *args, **kwargs)
def IfcFillAreaStyle(*args, **kwargs): return ifcopenshell.create_entity('IfcFillAreaStyle', 'IFC2X3', *args, **kwargs)
def IfcFillAreaStyleHatching(*args, **kwargs): return ifcopenshell.create_entity('IfcFillAreaStyleHatching', 'IFC2X3', *args, **kwargs)
def IfcFillAreaStyleTileSymbolWithStyle(*args, **kwargs): return ifcopenshell.create_entity('IfcFillAreaStyleTileSymbolWithStyle', 'IFC2X3', *args, **kwargs)
def IfcFillAreaStyleTiles(*args, **kwargs): return ifcopenshell.create_entity('IfcFillAreaStyleTiles', 'IFC2X3', *args, **kwargs)
def IfcFilterType(*args, **kwargs): return ifcopenshell.create_entity('IfcFilterType', 'IFC2X3', *args, **kwargs)
def IfcFireSuppressionTerminalType(*args, **kwargs): return ifcopenshell.create_entity('IfcFireSuppressionTerminalType', 'IFC2X3', *args, **kwargs)
def IfcFlowController(*args, **kwargs): return ifcopenshell.create_entity('IfcFlowController', 'IFC2X3', *args, **kwargs)
def IfcFlowControllerType(*args, **kwargs): return ifcopenshell.create_entity('IfcFlowControllerType', 'IFC2X3', *args, **kwargs)
def IfcFlowFitting(*args, **kwargs): return ifcopenshell.create_entity('IfcFlowFitting', 'IFC2X3', *args, **kwargs)
def IfcFlowFittingType(*args, **kwargs): return ifcopenshell.create_entity('IfcFlowFittingType', 'IFC2X3', *args, **kwargs)
def IfcFlowInstrumentType(*args, **kwargs): return ifcopenshell.create_entity('IfcFlowInstrumentType', 'IFC2X3', *args, **kwargs)
def IfcFlowMeterType(*args, **kwargs): return ifcopenshell.create_entity('IfcFlowMeterType', 'IFC2X3', *args, **kwargs)
def IfcFlowMovingDevice(*args, **kwargs): return ifcopenshell.create_entity('IfcFlowMovingDevice', 'IFC2X3', *args, **kwargs)
def IfcFlowMovingDeviceType(*args, **kwargs): return ifcopenshell.create_entity('IfcFlowMovingDeviceType', 'IFC2X3', *args, **kwargs)
def IfcFlowSegment(*args, **kwargs): return ifcopenshell.create_entity('IfcFlowSegment', 'IFC2X3', *args, **kwargs)
def IfcFlowSegmentType(*args, **kwargs): return ifcopenshell.create_entity('IfcFlowSegmentType', 'IFC2X3', *args, **kwargs)
def IfcFlowStorageDevice(*args, **kwargs): return ifcopenshell.create_entity('IfcFlowStorageDevice', 'IFC2X3', *args, **kwargs)
def IfcFlowStorageDeviceType(*args, **kwargs): return ifcopenshell.create_entity('IfcFlowStorageDeviceType', 'IFC2X3', *args, **kwargs)
def IfcFlowTerminal(*args, **kwargs): return ifcopenshell.create_entity('IfcFlowTerminal', 'IFC2X3', *args, **kwargs)
def IfcFlowTerminalType(*args, **kwargs): return ifcopenshell.create_entity('IfcFlowTerminalType', 'IFC2X3', *args, **kwargs)
def IfcFlowTreatmentDevice(*args, **kwargs): return ifcopenshell.create_entity('IfcFlowTreatmentDevice', 'IFC2X3', *args, **kwargs)
def IfcFlowTreatmentDeviceType(*args, **kwargs): return ifcopenshell.create_entity('IfcFlowTreatmentDeviceType', 'IFC2X3', *args, **kwargs)
def IfcFluidFlowProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcFluidFlowProperties', 'IFC2X3', *args, **kwargs)
def IfcFooting(*args, **kwargs): return ifcopenshell.create_entity('IfcFooting', 'IFC2X3', *args, **kwargs)
def IfcFuelProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcFuelProperties', 'IFC2X3', *args, **kwargs)
def IfcFurnishingElement(*args, **kwargs): return ifcopenshell.create_entity('IfcFurnishingElement', 'IFC2X3', *args, **kwargs)
def IfcFurnishingElementType(*args, **kwargs): return ifcopenshell.create_entity('IfcFurnishingElementType', 'IFC2X3', *args, **kwargs)
def IfcFurnitureStandard(*args, **kwargs): return ifcopenshell.create_entity('IfcFurnitureStandard', 'IFC2X3', *args, **kwargs)
def IfcFurnitureType(*args, **kwargs): return ifcopenshell.create_entity('IfcFurnitureType', 'IFC2X3', *args, **kwargs)
def IfcGasTerminalType(*args, **kwargs): return ifcopenshell.create_entity('IfcGasTerminalType', 'IFC2X3', *args, **kwargs)
def IfcGeneralMaterialProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcGeneralMaterialProperties', 'IFC2X3', *args, **kwargs)
def IfcGeneralProfileProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcGeneralProfileProperties', 'IFC2X3', *args, **kwargs)
def IfcGeometricCurveSet(*args, **kwargs): return ifcopenshell.create_entity('IfcGeometricCurveSet', 'IFC2X3', *args, **kwargs)
def IfcGeometricRepresentationContext(*args, **kwargs): return ifcopenshell.create_entity('IfcGeometricRepresentationContext', 'IFC2X3', *args, **kwargs)
def IfcGeometricRepresentationItem(*args, **kwargs): return ifcopenshell.create_entity('IfcGeometricRepresentationItem', 'IFC2X3', *args, **kwargs)
def IfcGeometricRepresentationSubContext(*args, **kwargs): return ifcopenshell.create_entity('IfcGeometricRepresentationSubContext', 'IFC2X3', *args, **kwargs)
def IfcGeometricSet(*args, **kwargs): return ifcopenshell.create_entity('IfcGeometricSet', 'IFC2X3', *args, **kwargs)
def IfcGrid(*args, **kwargs): return ifcopenshell.create_entity('IfcGrid', 'IFC2X3', *args, **kwargs)
def IfcGridAxis(*args, **kwargs): return ifcopenshell.create_entity('IfcGridAxis', 'IFC2X3', *args, **kwargs)
def IfcGridPlacement(*args, **kwargs): return ifcopenshell.create_entity('IfcGridPlacement', 'IFC2X3', *args, **kwargs)
def IfcGroup(*args, **kwargs): return ifcopenshell.create_entity('IfcGroup', 'IFC2X3', *args, **kwargs)
def IfcHalfSpaceSolid(*args, **kwargs): return ifcopenshell.create_entity('IfcHalfSpaceSolid', 'IFC2X3', *args, **kwargs)
def IfcHeatExchangerType(*args, **kwargs): return ifcopenshell.create_entity('IfcHeatExchangerType', 'IFC2X3', *args, **kwargs)
def IfcHumidifierType(*args, **kwargs): return ifcopenshell.create_entity('IfcHumidifierType', 'IFC2X3', *args, **kwargs)
def IfcHygroscopicMaterialProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcHygroscopicMaterialProperties', 'IFC2X3', *args, **kwargs)
def IfcIShapeProfileDef(*args, **kwargs): return ifcopenshell.create_entity('IfcIShapeProfileDef', 'IFC2X3', *args, **kwargs)
def IfcImageTexture(*args, **kwargs): return ifcopenshell.create_entity('IfcImageTexture', 'IFC2X3', *args, **kwargs)
def IfcInventory(*args, **kwargs): return ifcopenshell.create_entity('IfcInventory', 'IFC2X3', *args, **kwargs)
def IfcIrregularTimeSeries(*args, **kwargs): return ifcopenshell.create_entity('IfcIrregularTimeSeries', 'IFC2X3', *args, **kwargs)
def IfcIrregularTimeSeriesValue(*args, **kwargs): return ifcopenshell.create_entity('IfcIrregularTimeSeriesValue', 'IFC2X3', *args, **kwargs)
def IfcJunctionBoxType(*args, **kwargs): return ifcopenshell.create_entity('IfcJunctionBoxType', 'IFC2X3', *args, **kwargs)
def IfcLShapeProfileDef(*args, **kwargs): return ifcopenshell.create_entity('IfcLShapeProfileDef', 'IFC2X3', *args, **kwargs)
def IfcLaborResource(*args, **kwargs): return ifcopenshell.create_entity('IfcLaborResource', 'IFC2X3', *args, **kwargs)
def IfcLampType(*args, **kwargs): return ifcopenshell.create_entity('IfcLampType', 'IFC2X3', *args, **kwargs)
def IfcLibraryInformation(*args, **kwargs): return ifcopenshell.create_entity('IfcLibraryInformation', 'IFC2X3', *args, **kwargs)
def IfcLibraryReference(*args, **kwargs): return ifcopenshell.create_entity('IfcLibraryReference', 'IFC2X3', *args, **kwargs)
def IfcLightDistributionData(*args, **kwargs): return ifcopenshell.create_entity('IfcLightDistributionData', 'IFC2X3', *args, **kwargs)
def IfcLightFixtureType(*args, **kwargs): return ifcopenshell.create_entity('IfcLightFixtureType', 'IFC2X3', *args, **kwargs)
def IfcLightIntensityDistribution(*args, **kwargs): return ifcopenshell.create_entity('IfcLightIntensityDistribution', 'IFC2X3', *args, **kwargs)
def IfcLightSource(*args, **kwargs): return ifcopenshell.create_entity('IfcLightSource', 'IFC2X3', *args, **kwargs)
def IfcLightSourceAmbient(*args, **kwargs): return ifcopenshell.create_entity('IfcLightSourceAmbient', 'IFC2X3', *args, **kwargs)
def IfcLightSourceDirectional(*args, **kwargs): return ifcopenshell.create_entity('IfcLightSourceDirectional', 'IFC2X3', *args, **kwargs)
def IfcLightSourceGoniometric(*args, **kwargs): return ifcopenshell.create_entity('IfcLightSourceGoniometric', 'IFC2X3', *args, **kwargs)
def IfcLightSourcePositional(*args, **kwargs): return ifcopenshell.create_entity('IfcLightSourcePositional', 'IFC2X3', *args, **kwargs)
def IfcLightSourceSpot(*args, **kwargs): return ifcopenshell.create_entity('IfcLightSourceSpot', 'IFC2X3', *args, **kwargs)
def IfcLine(*args, **kwargs): return ifcopenshell.create_entity('IfcLine', 'IFC2X3', *args, **kwargs)
def IfcLinearDimension(*args, **kwargs): return ifcopenshell.create_entity('IfcLinearDimension', 'IFC2X3', *args, **kwargs)
def IfcLocalPlacement(*args, **kwargs): return ifcopenshell.create_entity('IfcLocalPlacement', 'IFC2X3', *args, **kwargs)
def IfcLocalTime(*args, **kwargs): return ifcopenshell.create_entity('IfcLocalTime', 'IFC2X3', *args, **kwargs)
def IfcLoop(*args, **kwargs): return ifcopenshell.create_entity('IfcLoop', 'IFC2X3', *args, **kwargs)
def IfcManifoldSolidBrep(*args, **kwargs): return ifcopenshell.create_entity('IfcManifoldSolidBrep', 'IFC2X3', *args, **kwargs)
def IfcMappedItem(*args, **kwargs): return ifcopenshell.create_entity('IfcMappedItem', 'IFC2X3', *args, **kwargs)
def IfcMaterial(*args, **kwargs): return ifcopenshell.create_entity('IfcMaterial', 'IFC2X3', *args, **kwargs)
def IfcMaterialClassificationRelationship(*args, **kwargs): return ifcopenshell.create_entity('IfcMaterialClassificationRelationship', 'IFC2X3', *args, **kwargs)
def IfcMaterialDefinitionRepresentation(*args, **kwargs): return ifcopenshell.create_entity('IfcMaterialDefinitionRepresentation', 'IFC2X3', *args, **kwargs)
def IfcMaterialLayer(*args, **kwargs): return ifcopenshell.create_entity('IfcMaterialLayer', 'IFC2X3', *args, **kwargs)
def IfcMaterialLayerSet(*args, **kwargs): return ifcopenshell.create_entity('IfcMaterialLayerSet', 'IFC2X3', *args, **kwargs)
def IfcMaterialLayerSetUsage(*args, **kwargs): return ifcopenshell.create_entity('IfcMaterialLayerSetUsage', 'IFC2X3', *args, **kwargs)
def IfcMaterialList(*args, **kwargs): return ifcopenshell.create_entity('IfcMaterialList', 'IFC2X3', *args, **kwargs)
def IfcMaterialProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcMaterialProperties', 'IFC2X3', *args, **kwargs)
def IfcMeasureWithUnit(*args, **kwargs): return ifcopenshell.create_entity('IfcMeasureWithUnit', 'IFC2X3', *args, **kwargs)
def IfcMechanicalConcreteMaterialProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcMechanicalConcreteMaterialProperties', 'IFC2X3', *args, **kwargs)
def IfcMechanicalFastener(*args, **kwargs): return ifcopenshell.create_entity('IfcMechanicalFastener', 'IFC2X3', *args, **kwargs)
def IfcMechanicalFastenerType(*args, **kwargs): return ifcopenshell.create_entity('IfcMechanicalFastenerType', 'IFC2X3', *args, **kwargs)
def IfcMechanicalMaterialProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcMechanicalMaterialProperties', 'IFC2X3', *args, **kwargs)
def IfcMechanicalSteelMaterialProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcMechanicalSteelMaterialProperties', 'IFC2X3', *args, **kwargs)
def IfcMember(*args, **kwargs): return ifcopenshell.create_entity('IfcMember', 'IFC2X3', *args, **kwargs)
def IfcMemberType(*args, **kwargs): return ifcopenshell.create_entity('IfcMemberType', 'IFC2X3', *args, **kwargs)
def IfcMetric(*args, **kwargs): return ifcopenshell.create_entity('IfcMetric', 'IFC2X3', *args, **kwargs)
def IfcMonetaryUnit(*args, **kwargs): return ifcopenshell.create_entity('IfcMonetaryUnit', 'IFC2X3', *args, **kwargs)
def IfcMotorConnectionType(*args, **kwargs): return ifcopenshell.create_entity('IfcMotorConnectionType', 'IFC2X3', *args, **kwargs)
def IfcMove(*args, **kwargs): return ifcopenshell.create_entity('IfcMove', 'IFC2X3', *args, **kwargs)
def IfcNamedUnit(*args, **kwargs): return ifcopenshell.create_entity('IfcNamedUnit', 'IFC2X3', *args, **kwargs)
def IfcObject(*args, **kwargs): return ifcopenshell.create_entity('IfcObject', 'IFC2X3', *args, **kwargs)
def IfcObjectDefinition(*args, **kwargs): return ifcopenshell.create_entity('IfcObjectDefinition', 'IFC2X3', *args, **kwargs)
def IfcObjectPlacement(*args, **kwargs): return ifcopenshell.create_entity('IfcObjectPlacement', 'IFC2X3', *args, **kwargs)
def IfcObjective(*args, **kwargs): return ifcopenshell.create_entity('IfcObjective', 'IFC2X3', *args, **kwargs)
def IfcOccupant(*args, **kwargs): return ifcopenshell.create_entity('IfcOccupant', 'IFC2X3', *args, **kwargs)
def IfcOffsetCurve2D(*args, **kwargs): return ifcopenshell.create_entity('IfcOffsetCurve2D', 'IFC2X3', *args, **kwargs)
def IfcOffsetCurve3D(*args, **kwargs): return ifcopenshell.create_entity('IfcOffsetCurve3D', 'IFC2X3', *args, **kwargs)
def IfcOneDirectionRepeatFactor(*args, **kwargs): return ifcopenshell.create_entity('IfcOneDirectionRepeatFactor', 'IFC2X3', *args, **kwargs)
def IfcOpenShell(*args, **kwargs): return ifcopenshell.create_entity('IfcOpenShell', 'IFC2X3', *args, **kwargs)
def IfcOpeningElement(*args, **kwargs): return ifcopenshell.create_entity('IfcOpeningElement', 'IFC2X3', *args, **kwargs)
def IfcOpticalMaterialProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcOpticalMaterialProperties', 'IFC2X3', *args, **kwargs)
def IfcOrderAction(*args, **kwargs): return ifcopenshell.create_entity('IfcOrderAction', 'IFC2X3', *args, **kwargs)
def IfcOrganization(*args, **kwargs): return ifcopenshell.create_entity('IfcOrganization', 'IFC2X3', *args, **kwargs)
def IfcOrganizationRelationship(*args, **kwargs): return ifcopenshell.create_entity('IfcOrganizationRelationship', 'IFC2X3', *args, **kwargs)
def IfcOrientedEdge(*args, **kwargs): return ifcopenshell.create_entity('IfcOrientedEdge', 'IFC2X3', *args, **kwargs)
def IfcOutletType(*args, **kwargs): return ifcopenshell.create_entity('IfcOutletType', 'IFC2X3', *args, **kwargs)
def IfcOwnerHistory(*args, **kwargs): return ifcopenshell.create_entity('IfcOwnerHistory', 'IFC2X3', *args, **kwargs)
def IfcParameterizedProfileDef(*args, **kwargs): return ifcopenshell.create_entity('IfcParameterizedProfileDef', 'IFC2X3', *args, **kwargs)
def IfcPath(*args, **kwargs): return ifcopenshell.create_entity('IfcPath', 'IFC2X3', *args, **kwargs)
def IfcPerformanceHistory(*args, **kwargs): return ifcopenshell.create_entity('IfcPerformanceHistory', 'IFC2X3', *args, **kwargs)
def IfcPermeableCoveringProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcPermeableCoveringProperties', 'IFC2X3', *args, **kwargs)
def IfcPermit(*args, **kwargs): return ifcopenshell.create_entity('IfcPermit', 'IFC2X3', *args, **kwargs)
def IfcPerson(*args, **kwargs): return ifcopenshell.create_entity('IfcPerson', 'IFC2X3', *args, **kwargs)
def IfcPersonAndOrganization(*args, **kwargs): return ifcopenshell.create_entity('IfcPersonAndOrganization', 'IFC2X3', *args, **kwargs)
def IfcPhysicalComplexQuantity(*args, **kwargs): return ifcopenshell.create_entity('IfcPhysicalComplexQuantity', 'IFC2X3', *args, **kwargs)
def IfcPhysicalQuantity(*args, **kwargs): return ifcopenshell.create_entity('IfcPhysicalQuantity', 'IFC2X3', *args, **kwargs)
def IfcPhysicalSimpleQuantity(*args, **kwargs): return ifcopenshell.create_entity('IfcPhysicalSimpleQuantity', 'IFC2X3', *args, **kwargs)
def IfcPile(*args, **kwargs): return ifcopenshell.create_entity('IfcPile', 'IFC2X3', *args, **kwargs)
def IfcPipeFittingType(*args, **kwargs): return ifcopenshell.create_entity('IfcPipeFittingType', 'IFC2X3', *args, **kwargs)
def IfcPipeSegmentType(*args, **kwargs): return ifcopenshell.create_entity('IfcPipeSegmentType', 'IFC2X3', *args, **kwargs)
def IfcPixelTexture(*args, **kwargs): return ifcopenshell.create_entity('IfcPixelTexture', 'IFC2X3', *args, **kwargs)
def IfcPlacement(*args, **kwargs): return ifcopenshell.create_entity('IfcPlacement', 'IFC2X3', *args, **kwargs)
def IfcPlanarBox(*args, **kwargs): return ifcopenshell.create_entity('IfcPlanarBox', 'IFC2X3', *args, **kwargs)
def IfcPlanarExtent(*args, **kwargs): return ifcopenshell.create_entity('IfcPlanarExtent', 'IFC2X3', *args, **kwargs)
def IfcPlane(*args, **kwargs): return ifcopenshell.create_entity('IfcPlane', 'IFC2X3', *args, **kwargs)
def IfcPlate(*args, **kwargs): return ifcopenshell.create_entity('IfcPlate', 'IFC2X3', *args, **kwargs)
def IfcPlateType(*args, **kwargs): return ifcopenshell.create_entity('IfcPlateType', 'IFC2X3', *args, **kwargs)
def IfcPoint(*args, **kwargs): return ifcopenshell.create_entity('IfcPoint', 'IFC2X3', *args, **kwargs)
def IfcPointOnCurve(*args, **kwargs): return ifcopenshell.create_entity('IfcPointOnCurve', 'IFC2X3', *args, **kwargs)
def IfcPointOnSurface(*args, **kwargs): return ifcopenshell.create_entity('IfcPointOnSurface', 'IFC2X3', *args, **kwargs)
def IfcPolyLoop(*args, **kwargs): return ifcopenshell.create_entity('IfcPolyLoop', 'IFC2X3', *args, **kwargs)
def IfcPolygonalBoundedHalfSpace(*args, **kwargs): return ifcopenshell.create_entity('IfcPolygonalBoundedHalfSpace', 'IFC2X3', *args, **kwargs)
def IfcPolyline(*args, **kwargs): return ifcopenshell.create_entity('IfcPolyline', 'IFC2X3', *args, **kwargs)
def IfcPort(*args, **kwargs): return ifcopenshell.create_entity('IfcPort', 'IFC2X3', *args, **kwargs)
def IfcPostalAddress(*args, **kwargs): return ifcopenshell.create_entity('IfcPostalAddress', 'IFC2X3', *args, **kwargs)
def IfcPreDefinedColour(*args, **kwargs): return ifcopenshell.create_entity('IfcPreDefinedColour', 'IFC2X3', *args, **kwargs)
def IfcPreDefinedCurveFont(*args, **kwargs): return ifcopenshell.create_entity('IfcPreDefinedCurveFont', 'IFC2X3', *args, **kwargs)
def IfcPreDefinedDimensionSymbol(*args, **kwargs): return ifcopenshell.create_entity('IfcPreDefinedDimensionSymbol', 'IFC2X3', *args, **kwargs)
def IfcPreDefinedItem(*args, **kwargs): return ifcopenshell.create_entity('IfcPreDefinedItem', 'IFC2X3', *args, **kwargs)
def IfcPreDefinedPointMarkerSymbol(*args, **kwargs): return ifcopenshell.create_entity('IfcPreDefinedPointMarkerSymbol', 'IFC2X3', *args, **kwargs)
def IfcPreDefinedSymbol(*args, **kwargs): return ifcopenshell.create_entity('IfcPreDefinedSymbol', 'IFC2X3', *args, **kwargs)
def IfcPreDefinedTerminatorSymbol(*args, **kwargs): return ifcopenshell.create_entity('IfcPreDefinedTerminatorSymbol', 'IFC2X3', *args, **kwargs)
def IfcPreDefinedTextFont(*args, **kwargs): return ifcopenshell.create_entity('IfcPreDefinedTextFont', 'IFC2X3', *args, **kwargs)
def IfcPresentationLayerAssignment(*args, **kwargs): return ifcopenshell.create_entity('IfcPresentationLayerAssignment', 'IFC2X3', *args, **kwargs)
def IfcPresentationLayerWithStyle(*args, **kwargs): return ifcopenshell.create_entity('IfcPresentationLayerWithStyle', 'IFC2X3', *args, **kwargs)
def IfcPresentationStyle(*args, **kwargs): return ifcopenshell.create_entity('IfcPresentationStyle', 'IFC2X3', *args, **kwargs)
def IfcPresentationStyleAssignment(*args, **kwargs): return ifcopenshell.create_entity('IfcPresentationStyleAssignment', 'IFC2X3', *args, **kwargs)
def IfcProcedure(*args, **kwargs): return ifcopenshell.create_entity('IfcProcedure', 'IFC2X3', *args, **kwargs)
def IfcProcess(*args, **kwargs): return ifcopenshell.create_entity('IfcProcess', 'IFC2X3', *args, **kwargs)
def IfcProduct(*args, **kwargs): return ifcopenshell.create_entity('IfcProduct', 'IFC2X3', *args, **kwargs)
def IfcProductDefinitionShape(*args, **kwargs): return ifcopenshell.create_entity('IfcProductDefinitionShape', 'IFC2X3', *args, **kwargs)
def IfcProductRepresentation(*args, **kwargs): return ifcopenshell.create_entity('IfcProductRepresentation', 'IFC2X3', *args, **kwargs)
def IfcProductsOfCombustionProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcProductsOfCombustionProperties', 'IFC2X3', *args, **kwargs)
def IfcProfileDef(*args, **kwargs): return ifcopenshell.create_entity('IfcProfileDef', 'IFC2X3', *args, **kwargs)
def IfcProfileProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcProfileProperties', 'IFC2X3', *args, **kwargs)
def IfcProject(*args, **kwargs): return ifcopenshell.create_entity('IfcProject', 'IFC2X3', *args, **kwargs)
def IfcProjectOrder(*args, **kwargs): return ifcopenshell.create_entity('IfcProjectOrder', 'IFC2X3', *args, **kwargs)
def IfcProjectOrderRecord(*args, **kwargs): return ifcopenshell.create_entity('IfcProjectOrderRecord', 'IFC2X3', *args, **kwargs)
def IfcProjectionCurve(*args, **kwargs): return ifcopenshell.create_entity('IfcProjectionCurve', 'IFC2X3', *args, **kwargs)
def IfcProjectionElement(*args, **kwargs): return ifcopenshell.create_entity('IfcProjectionElement', 'IFC2X3', *args, **kwargs)
def IfcProperty(*args, **kwargs): return ifcopenshell.create_entity('IfcProperty', 'IFC2X3', *args, **kwargs)
def IfcPropertyBoundedValue(*args, **kwargs): return ifcopenshell.create_entity('IfcPropertyBoundedValue', 'IFC2X3', *args, **kwargs)
def IfcPropertyConstraintRelationship(*args, **kwargs): return ifcopenshell.create_entity('IfcPropertyConstraintRelationship', 'IFC2X3', *args, **kwargs)
def IfcPropertyDefinition(*args, **kwargs): return ifcopenshell.create_entity('IfcPropertyDefinition', 'IFC2X3', *args, **kwargs)
def IfcPropertyDependencyRelationship(*args, **kwargs): return ifcopenshell.create_entity('IfcPropertyDependencyRelationship', 'IFC2X3', *args, **kwargs)
def IfcPropertyEnumeratedValue(*args, **kwargs): return ifcopenshell.create_entity('IfcPropertyEnumeratedValue', 'IFC2X3', *args, **kwargs)
def IfcPropertyEnumeration(*args, **kwargs): return ifcopenshell.create_entity('IfcPropertyEnumeration', 'IFC2X3', *args, **kwargs)
def IfcPropertyListValue(*args, **kwargs): return ifcopenshell.create_entity('IfcPropertyListValue', 'IFC2X3', *args, **kwargs)
def IfcPropertyReferenceValue(*args, **kwargs): return ifcopenshell.create_entity('IfcPropertyReferenceValue', 'IFC2X3', *args, **kwargs)
def IfcPropertySet(*args, **kwargs): return ifcopenshell.create_entity('IfcPropertySet', 'IFC2X3', *args, **kwargs)
def IfcPropertySetDefinition(*args, **kwargs): return ifcopenshell.create_entity('IfcPropertySetDefinition', 'IFC2X3', *args, **kwargs)
def IfcPropertySingleValue(*args, **kwargs): return ifcopenshell.create_entity('IfcPropertySingleValue', 'IFC2X3', *args, **kwargs)
def IfcPropertyTableValue(*args, **kwargs): return ifcopenshell.create_entity('IfcPropertyTableValue', 'IFC2X3', *args, **kwargs)
def IfcProtectiveDeviceType(*args, **kwargs): return ifcopenshell.create_entity('IfcProtectiveDeviceType', 'IFC2X3', *args, **kwargs)
def IfcProxy(*args, **kwargs): return ifcopenshell.create_entity('IfcProxy', 'IFC2X3', *args, **kwargs)
def IfcPumpType(*args, **kwargs): return ifcopenshell.create_entity('IfcPumpType', 'IFC2X3', *args, **kwargs)
def IfcQuantityArea(*args, **kwargs): return ifcopenshell.create_entity('IfcQuantityArea', 'IFC2X3', *args, **kwargs)
def IfcQuantityCount(*args, **kwargs): return ifcopenshell.create_entity('IfcQuantityCount', 'IFC2X3', *args, **kwargs)
def IfcQuantityLength(*args, **kwargs): return ifcopenshell.create_entity('IfcQuantityLength', 'IFC2X3', *args, **kwargs)
def IfcQuantityTime(*args, **kwargs): return ifcopenshell.create_entity('IfcQuantityTime', 'IFC2X3', *args, **kwargs)
def IfcQuantityVolume(*args, **kwargs): return ifcopenshell.create_entity('IfcQuantityVolume', 'IFC2X3', *args, **kwargs)
def IfcQuantityWeight(*args, **kwargs): return ifcopenshell.create_entity('IfcQuantityWeight', 'IFC2X3', *args, **kwargs)
def IfcRadiusDimension(*args, **kwargs): return ifcopenshell.create_entity('IfcRadiusDimension', 'IFC2X3', *args, **kwargs)
def IfcRailing(*args, **kwargs): return ifcopenshell.create_entity('IfcRailing', 'IFC2X3', *args, **kwargs)
def IfcRailingType(*args, **kwargs): return ifcopenshell.create_entity('IfcRailingType', 'IFC2X3', *args, **kwargs)
def IfcRamp(*args, **kwargs): return ifcopenshell.create_entity('IfcRamp', 'IFC2X3', *args, **kwargs)
def IfcRampFlight(*args, **kwargs): return ifcopenshell.create_entity('IfcRampFlight', 'IFC2X3', *args, **kwargs)
def IfcRampFlightType(*args, **kwargs): return ifcopenshell.create_entity('IfcRampFlightType', 'IFC2X3', *args, **kwargs)
def IfcRationalBezierCurve(*args, **kwargs): return ifcopenshell.create_entity('IfcRationalBezierCurve', 'IFC2X3', *args, **kwargs)
def IfcRectangleHollowProfileDef(*args, **kwargs): return ifcopenshell.create_entity('IfcRectangleHollowProfileDef', 'IFC2X3', *args, **kwargs)
def IfcRectangleProfileDef(*args, **kwargs): return ifcopenshell.create_entity('IfcRectangleProfileDef', 'IFC2X3', *args, **kwargs)
def IfcRectangularPyramid(*args, **kwargs): return ifcopenshell.create_entity('IfcRectangularPyramid', 'IFC2X3', *args, **kwargs)
def IfcRectangularTrimmedSurface(*args, **kwargs): return ifcopenshell.create_entity('IfcRectangularTrimmedSurface', 'IFC2X3', *args, **kwargs)
def IfcReferencesValueDocument(*args, **kwargs): return ifcopenshell.create_entity('IfcReferencesValueDocument', 'IFC2X3', *args, **kwargs)
def IfcRegularTimeSeries(*args, **kwargs): return ifcopenshell.create_entity('IfcRegularTimeSeries', 'IFC2X3', *args, **kwargs)
def IfcReinforcementBarProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcReinforcementBarProperties', 'IFC2X3', *args, **kwargs)
def IfcReinforcementDefinitionProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcReinforcementDefinitionProperties', 'IFC2X3', *args, **kwargs)
def IfcReinforcingBar(*args, **kwargs): return ifcopenshell.create_entity('IfcReinforcingBar', 'IFC2X3', *args, **kwargs)
def IfcReinforcingElement(*args, **kwargs): return ifcopenshell.create_entity('IfcReinforcingElement', 'IFC2X3', *args, **kwargs)
def IfcReinforcingMesh(*args, **kwargs): return ifcopenshell.create_entity('IfcReinforcingMesh', 'IFC2X3', *args, **kwargs)
def IfcRelAggregates(*args, **kwargs): return ifcopenshell.create_entity('IfcRelAggregates', 'IFC2X3', *args, **kwargs)
def IfcRelAssigns(*args, **kwargs): return ifcopenshell.create_entity('IfcRelAssigns', 'IFC2X3', *args, **kwargs)
def IfcRelAssignsTasks(*args, **kwargs): return ifcopenshell.create_entity('IfcRelAssignsTasks', 'IFC2X3', *args, **kwargs)
def IfcRelAssignsToActor(*args, **kwargs): return ifcopenshell.create_entity('IfcRelAssignsToActor', 'IFC2X3', *args, **kwargs)
def IfcRelAssignsToControl(*args, **kwargs): return ifcopenshell.create_entity('IfcRelAssignsToControl', 'IFC2X3', *args, **kwargs)
def IfcRelAssignsToGroup(*args, **kwargs): return ifcopenshell.create_entity('IfcRelAssignsToGroup', 'IFC2X3', *args, **kwargs)
def IfcRelAssignsToProcess(*args, **kwargs): return ifcopenshell.create_entity('IfcRelAssignsToProcess', 'IFC2X3', *args, **kwargs)
def IfcRelAssignsToProduct(*args, **kwargs): return ifcopenshell.create_entity('IfcRelAssignsToProduct', 'IFC2X3', *args, **kwargs)
def IfcRelAssignsToProjectOrder(*args, **kwargs): return ifcopenshell.create_entity('IfcRelAssignsToProjectOrder', 'IFC2X3', *args, **kwargs)
def IfcRelAssignsToResource(*args, **kwargs): return ifcopenshell.create_entity('IfcRelAssignsToResource', 'IFC2X3', *args, **kwargs)
def IfcRelAssociates(*args, **kwargs): return ifcopenshell.create_entity('IfcRelAssociates', 'IFC2X3', *args, **kwargs)
def IfcRelAssociatesAppliedValue(*args, **kwargs): return ifcopenshell.create_entity('IfcRelAssociatesAppliedValue', 'IFC2X3', *args, **kwargs)
def IfcRelAssociatesApproval(*args, **kwargs): return ifcopenshell.create_entity('IfcRelAssociatesApproval', 'IFC2X3', *args, **kwargs)
def IfcRelAssociatesClassification(*args, **kwargs): return ifcopenshell.create_entity('IfcRelAssociatesClassification', 'IFC2X3', *args, **kwargs)
def IfcRelAssociatesConstraint(*args, **kwargs): return ifcopenshell.create_entity('IfcRelAssociatesConstraint', 'IFC2X3', *args, **kwargs)
def IfcRelAssociatesDocument(*args, **kwargs): return ifcopenshell.create_entity('IfcRelAssociatesDocument', 'IFC2X3', *args, **kwargs)
def IfcRelAssociatesLibrary(*args, **kwargs): return ifcopenshell.create_entity('IfcRelAssociatesLibrary', 'IFC2X3', *args, **kwargs)
def IfcRelAssociatesMaterial(*args, **kwargs): return ifcopenshell.create_entity('IfcRelAssociatesMaterial', 'IFC2X3', *args, **kwargs)
def IfcRelAssociatesProfileProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcRelAssociatesProfileProperties', 'IFC2X3', *args, **kwargs)
def IfcRelConnects(*args, **kwargs): return ifcopenshell.create_entity('IfcRelConnects', 'IFC2X3', *args, **kwargs)
def IfcRelConnectsElements(*args, **kwargs): return ifcopenshell.create_entity('IfcRelConnectsElements', 'IFC2X3', *args, **kwargs)
def IfcRelConnectsPathElements(*args, **kwargs): return ifcopenshell.create_entity('IfcRelConnectsPathElements', 'IFC2X3', *args, **kwargs)
def IfcRelConnectsPortToElement(*args, **kwargs): return ifcopenshell.create_entity('IfcRelConnectsPortToElement', 'IFC2X3', *args, **kwargs)
def IfcRelConnectsPorts(*args, **kwargs): return ifcopenshell.create_entity('IfcRelConnectsPorts', 'IFC2X3', *args, **kwargs)
def IfcRelConnectsStructuralActivity(*args, **kwargs): return ifcopenshell.create_entity('IfcRelConnectsStructuralActivity', 'IFC2X3', *args, **kwargs)
def IfcRelConnectsStructuralElement(*args, **kwargs): return ifcopenshell.create_entity('IfcRelConnectsStructuralElement', 'IFC2X3', *args, **kwargs)
def IfcRelConnectsStructuralMember(*args, **kwargs): return ifcopenshell.create_entity('IfcRelConnectsStructuralMember', 'IFC2X3', *args, **kwargs)
def IfcRelConnectsWithEccentricity(*args, **kwargs): return ifcopenshell.create_entity('IfcRelConnectsWithEccentricity', 'IFC2X3', *args, **kwargs)
def IfcRelConnectsWithRealizingElements(*args, **kwargs): return ifcopenshell.create_entity('IfcRelConnectsWithRealizingElements', 'IFC2X3', *args, **kwargs)
def IfcRelContainedInSpatialStructure(*args, **kwargs): return ifcopenshell.create_entity('IfcRelContainedInSpatialStructure', 'IFC2X3', *args, **kwargs)
def IfcRelCoversBldgElements(*args, **kwargs): return ifcopenshell.create_entity('IfcRelCoversBldgElements', 'IFC2X3', *args, **kwargs)
def IfcRelCoversSpaces(*args, **kwargs): return ifcopenshell.create_entity('IfcRelCoversSpaces', 'IFC2X3', *args, **kwargs)
def IfcRelDecomposes(*args, **kwargs): return ifcopenshell.create_entity('IfcRelDecomposes', 'IFC2X3', *args, **kwargs)
def IfcRelDefines(*args, **kwargs): return ifcopenshell.create_entity('IfcRelDefines', 'IFC2X3', *args, **kwargs)
def IfcRelDefinesByProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcRelDefinesByProperties', 'IFC2X3', *args, **kwargs)
def IfcRelDefinesByType(*args, **kwargs): return ifcopenshell.create_entity('IfcRelDefinesByType', 'IFC2X3', *args, **kwargs)
def IfcRelFillsElement(*args, **kwargs): return ifcopenshell.create_entity('IfcRelFillsElement', 'IFC2X3', *args, **kwargs)
def IfcRelFlowControlElements(*args, **kwargs): return ifcopenshell.create_entity('IfcRelFlowControlElements', 'IFC2X3', *args, **kwargs)
def IfcRelInteractionRequirements(*args, **kwargs): return ifcopenshell.create_entity('IfcRelInteractionRequirements', 'IFC2X3', *args, **kwargs)
def IfcRelNests(*args, **kwargs): return ifcopenshell.create_entity('IfcRelNests', 'IFC2X3', *args, **kwargs)
def IfcRelOccupiesSpaces(*args, **kwargs): return ifcopenshell.create_entity('IfcRelOccupiesSpaces', 'IFC2X3', *args, **kwargs)
def IfcRelOverridesProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcRelOverridesProperties', 'IFC2X3', *args, **kwargs)
def IfcRelProjectsElement(*args, **kwargs): return ifcopenshell.create_entity('IfcRelProjectsElement', 'IFC2X3', *args, **kwargs)
def IfcRelReferencedInSpatialStructure(*args, **kwargs): return ifcopenshell.create_entity('IfcRelReferencedInSpatialStructure', 'IFC2X3', *args, **kwargs)
def IfcRelSchedulesCostItems(*args, **kwargs): return ifcopenshell.create_entity('IfcRelSchedulesCostItems', 'IFC2X3', *args, **kwargs)
def IfcRelSequence(*args, **kwargs): return ifcopenshell.create_entity('IfcRelSequence', 'IFC2X3', *args, **kwargs)
def IfcRelServicesBuildings(*args, **kwargs): return ifcopenshell.create_entity('IfcRelServicesBuildings', 'IFC2X3', *args, **kwargs)
def IfcRelSpaceBoundary(*args, **kwargs): return ifcopenshell.create_entity('IfcRelSpaceBoundary', 'IFC2X3', *args, **kwargs)
def IfcRelVoidsElement(*args, **kwargs): return ifcopenshell.create_entity('IfcRelVoidsElement', 'IFC2X3', *args, **kwargs)
def IfcRelationship(*args, **kwargs): return ifcopenshell.create_entity('IfcRelationship', 'IFC2X3', *args, **kwargs)
def IfcRelaxation(*args, **kwargs): return ifcopenshell.create_entity('IfcRelaxation', 'IFC2X3', *args, **kwargs)
def IfcRepresentation(*args, **kwargs): return ifcopenshell.create_entity('IfcRepresentation', 'IFC2X3', *args, **kwargs)
def IfcRepresentationContext(*args, **kwargs): return ifcopenshell.create_entity('IfcRepresentationContext', 'IFC2X3', *args, **kwargs)
def IfcRepresentationItem(*args, **kwargs): return ifcopenshell.create_entity('IfcRepresentationItem', 'IFC2X3', *args, **kwargs)
def IfcRepresentationMap(*args, **kwargs): return ifcopenshell.create_entity('IfcRepresentationMap', 'IFC2X3', *args, **kwargs)
def IfcResource(*args, **kwargs): return ifcopenshell.create_entity('IfcResource', 'IFC2X3', *args, **kwargs)
def IfcRevolvedAreaSolid(*args, **kwargs): return ifcopenshell.create_entity('IfcRevolvedAreaSolid', 'IFC2X3', *args, **kwargs)
def IfcRibPlateProfileProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcRibPlateProfileProperties', 'IFC2X3', *args, **kwargs)
def IfcRightCircularCone(*args, **kwargs): return ifcopenshell.create_entity('IfcRightCircularCone', 'IFC2X3', *args, **kwargs)
def IfcRightCircularCylinder(*args, **kwargs): return ifcopenshell.create_entity('IfcRightCircularCylinder', 'IFC2X3', *args, **kwargs)
def IfcRoof(*args, **kwargs): return ifcopenshell.create_entity('IfcRoof', 'IFC2X3', *args, **kwargs)
def IfcRoot(*args, **kwargs): return ifcopenshell.create_entity('IfcRoot', 'IFC2X3', *args, **kwargs)
def IfcRoundedEdgeFeature(*args, **kwargs): return ifcopenshell.create_entity('IfcRoundedEdgeFeature', 'IFC2X3', *args, **kwargs)
def IfcRoundedRectangleProfileDef(*args, **kwargs): return ifcopenshell.create_entity('IfcRoundedRectangleProfileDef', 'IFC2X3', *args, **kwargs)
def IfcSIUnit(*args, **kwargs): return ifcopenshell.create_entity('IfcSIUnit', 'IFC2X3', *args, **kwargs)
def IfcSanitaryTerminalType(*args, **kwargs): return ifcopenshell.create_entity('IfcSanitaryTerminalType', 'IFC2X3', *args, **kwargs)
def IfcScheduleTimeControl(*args, **kwargs): return ifcopenshell.create_entity('IfcScheduleTimeControl', 'IFC2X3', *args, **kwargs)
def IfcSectionProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcSectionProperties', 'IFC2X3', *args, **kwargs)
def IfcSectionReinforcementProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcSectionReinforcementProperties', 'IFC2X3', *args, **kwargs)
def IfcSectionedSpine(*args, **kwargs): return ifcopenshell.create_entity('IfcSectionedSpine', 'IFC2X3', *args, **kwargs)
def IfcSensorType(*args, **kwargs): return ifcopenshell.create_entity('IfcSensorType', 'IFC2X3', *args, **kwargs)
def IfcServiceLife(*args, **kwargs): return ifcopenshell.create_entity('IfcServiceLife', 'IFC2X3', *args, **kwargs)
def IfcServiceLifeFactor(*args, **kwargs): return ifcopenshell.create_entity('IfcServiceLifeFactor', 'IFC2X3', *args, **kwargs)
def IfcShapeAspect(*args, **kwargs): return ifcopenshell.create_entity('IfcShapeAspect', 'IFC2X3', *args, **kwargs)
def IfcShapeModel(*args, **kwargs): return ifcopenshell.create_entity('IfcShapeModel', 'IFC2X3', *args, **kwargs)
def IfcShapeRepresentation(*args, **kwargs): return ifcopenshell.create_entity('IfcShapeRepresentation', 'IFC2X3', *args, **kwargs)
def IfcShellBasedSurfaceModel(*args, **kwargs): return ifcopenshell.create_entity('IfcShellBasedSurfaceModel', 'IFC2X3', *args, **kwargs)
def IfcSimpleProperty(*args, **kwargs): return ifcopenshell.create_entity('IfcSimpleProperty', 'IFC2X3', *args, **kwargs)
def IfcSite(*args, **kwargs): return ifcopenshell.create_entity('IfcSite', 'IFC2X3', *args, **kwargs)
def IfcSlab(*args, **kwargs): return ifcopenshell.create_entity('IfcSlab', 'IFC2X3', *args, **kwargs)
def IfcSlabType(*args, **kwargs): return ifcopenshell.create_entity('IfcSlabType', 'IFC2X3', *args, **kwargs)
def IfcSlippageConnectionCondition(*args, **kwargs): return ifcopenshell.create_entity('IfcSlippageConnectionCondition', 'IFC2X3', *args, **kwargs)
def IfcSolidModel(*args, **kwargs): return ifcopenshell.create_entity('IfcSolidModel', 'IFC2X3', *args, **kwargs)
def IfcSoundProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcSoundProperties', 'IFC2X3', *args, **kwargs)
def IfcSoundValue(*args, **kwargs): return ifcopenshell.create_entity('IfcSoundValue', 'IFC2X3', *args, **kwargs)
def IfcSpace(*args, **kwargs): return ifcopenshell.create_entity('IfcSpace', 'IFC2X3', *args, **kwargs)
def IfcSpaceHeaterType(*args, **kwargs): return ifcopenshell.create_entity('IfcSpaceHeaterType', 'IFC2X3', *args, **kwargs)
def IfcSpaceProgram(*args, **kwargs): return ifcopenshell.create_entity('IfcSpaceProgram', 'IFC2X3', *args, **kwargs)
def IfcSpaceThermalLoadProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcSpaceThermalLoadProperties', 'IFC2X3', *args, **kwargs)
def IfcSpaceType(*args, **kwargs): return ifcopenshell.create_entity('IfcSpaceType', 'IFC2X3', *args, **kwargs)
def IfcSpatialStructureElement(*args, **kwargs): return ifcopenshell.create_entity('IfcSpatialStructureElement', 'IFC2X3', *args, **kwargs)
def IfcSpatialStructureElementType(*args, **kwargs): return ifcopenshell.create_entity('IfcSpatialStructureElementType', 'IFC2X3', *args, **kwargs)
def IfcSphere(*args, **kwargs): return ifcopenshell.create_entity('IfcSphere', 'IFC2X3', *args, **kwargs)
def IfcStackTerminalType(*args, **kwargs): return ifcopenshell.create_entity('IfcStackTerminalType', 'IFC2X3', *args, **kwargs)
def IfcStair(*args, **kwargs): return ifcopenshell.create_entity('IfcStair', 'IFC2X3', *args, **kwargs)
def IfcStairFlight(*args, **kwargs): return ifcopenshell.create_entity('IfcStairFlight', 'IFC2X3', *args, **kwargs)
def IfcStairFlightType(*args, **kwargs): return ifcopenshell.create_entity('IfcStairFlightType', 'IFC2X3', *args, **kwargs)
def IfcStructuralAction(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralAction', 'IFC2X3', *args, **kwargs)
def IfcStructuralActivity(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralActivity', 'IFC2X3', *args, **kwargs)
def IfcStructuralAnalysisModel(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralAnalysisModel', 'IFC2X3', *args, **kwargs)
def IfcStructuralConnection(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralConnection', 'IFC2X3', *args, **kwargs)
def IfcStructuralConnectionCondition(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralConnectionCondition', 'IFC2X3', *args, **kwargs)
def IfcStructuralCurveConnection(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralCurveConnection', 'IFC2X3', *args, **kwargs)
def IfcStructuralCurveMember(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralCurveMember', 'IFC2X3', *args, **kwargs)
def IfcStructuralCurveMemberVarying(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralCurveMemberVarying', 'IFC2X3', *args, **kwargs)
def IfcStructuralItem(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralItem', 'IFC2X3', *args, **kwargs)
def IfcStructuralLinearAction(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralLinearAction', 'IFC2X3', *args, **kwargs)
def IfcStructuralLinearActionVarying(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralLinearActionVarying', 'IFC2X3', *args, **kwargs)
def IfcStructuralLoad(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralLoad', 'IFC2X3', *args, **kwargs)
def IfcStructuralLoadGroup(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralLoadGroup', 'IFC2X3', *args, **kwargs)
def IfcStructuralLoadLinearForce(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralLoadLinearForce', 'IFC2X3', *args, **kwargs)
def IfcStructuralLoadPlanarForce(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralLoadPlanarForce', 'IFC2X3', *args, **kwargs)
def IfcStructuralLoadSingleDisplacement(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralLoadSingleDisplacement', 'IFC2X3', *args, **kwargs)
def IfcStructuralLoadSingleDisplacementDistortion(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralLoadSingleDisplacementDistortion', 'IFC2X3', *args, **kwargs)
def IfcStructuralLoadSingleForce(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralLoadSingleForce', 'IFC2X3', *args, **kwargs)
def IfcStructuralLoadSingleForceWarping(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralLoadSingleForceWarping', 'IFC2X3', *args, **kwargs)
def IfcStructuralLoadStatic(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralLoadStatic', 'IFC2X3', *args, **kwargs)
def IfcStructuralLoadTemperature(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralLoadTemperature', 'IFC2X3', *args, **kwargs)
def IfcStructuralMember(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralMember', 'IFC2X3', *args, **kwargs)
def IfcStructuralPlanarAction(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralPlanarAction', 'IFC2X3', *args, **kwargs)
def IfcStructuralPlanarActionVarying(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralPlanarActionVarying', 'IFC2X3', *args, **kwargs)
def IfcStructuralPointAction(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralPointAction', 'IFC2X3', *args, **kwargs)
def IfcStructuralPointConnection(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralPointConnection', 'IFC2X3', *args, **kwargs)
def IfcStructuralPointReaction(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralPointReaction', 'IFC2X3', *args, **kwargs)
def IfcStructuralProfileProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralProfileProperties', 'IFC2X3', *args, **kwargs)
def IfcStructuralReaction(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralReaction', 'IFC2X3', *args, **kwargs)
def IfcStructuralResultGroup(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralResultGroup', 'IFC2X3', *args, **kwargs)
def IfcStructuralSteelProfileProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralSteelProfileProperties', 'IFC2X3', *args, **kwargs)
def IfcStructuralSurfaceConnection(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralSurfaceConnection', 'IFC2X3', *args, **kwargs)
def IfcStructuralSurfaceMember(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralSurfaceMember', 'IFC2X3', *args, **kwargs)
def IfcStructuralSurfaceMemberVarying(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuralSurfaceMemberVarying', 'IFC2X3', *args, **kwargs)
def IfcStructuredDimensionCallout(*args, **kwargs): return ifcopenshell.create_entity('IfcStructuredDimensionCallout', 'IFC2X3', *args, **kwargs)
def IfcStyleModel(*args, **kwargs): return ifcopenshell.create_entity('IfcStyleModel', 'IFC2X3', *args, **kwargs)
def IfcStyledItem(*args, **kwargs): return ifcopenshell.create_entity('IfcStyledItem', 'IFC2X3', *args, **kwargs)
def IfcStyledRepresentation(*args, **kwargs): return ifcopenshell.create_entity('IfcStyledRepresentation', 'IFC2X3', *args, **kwargs)
def IfcSubContractResource(*args, **kwargs): return ifcopenshell.create_entity('IfcSubContractResource', 'IFC2X3', *args, **kwargs)
def IfcSubedge(*args, **kwargs): return ifcopenshell.create_entity('IfcSubedge', 'IFC2X3', *args, **kwargs)
def IfcSurface(*args, **kwargs): return ifcopenshell.create_entity('IfcSurface', 'IFC2X3', *args, **kwargs)
def IfcSurfaceCurveSweptAreaSolid(*args, **kwargs): return ifcopenshell.create_entity('IfcSurfaceCurveSweptAreaSolid', 'IFC2X3', *args, **kwargs)
def IfcSurfaceOfLinearExtrusion(*args, **kwargs): return ifcopenshell.create_entity('IfcSurfaceOfLinearExtrusion', 'IFC2X3', *args, **kwargs)
def IfcSurfaceOfRevolution(*args, **kwargs): return ifcopenshell.create_entity('IfcSurfaceOfRevolution', 'IFC2X3', *args, **kwargs)
def IfcSurfaceStyle(*args, **kwargs): return ifcopenshell.create_entity('IfcSurfaceStyle', 'IFC2X3', *args, **kwargs)
def IfcSurfaceStyleLighting(*args, **kwargs): return ifcopenshell.create_entity('IfcSurfaceStyleLighting', 'IFC2X3', *args, **kwargs)
def IfcSurfaceStyleRefraction(*args, **kwargs): return ifcopenshell.create_entity('IfcSurfaceStyleRefraction', 'IFC2X3', *args, **kwargs)
def IfcSurfaceStyleRendering(*args, **kwargs): return ifcopenshell.create_entity('IfcSurfaceStyleRendering', 'IFC2X3', *args, **kwargs)
def IfcSurfaceStyleShading(*args, **kwargs): return ifcopenshell.create_entity('IfcSurfaceStyleShading', 'IFC2X3', *args, **kwargs)
def IfcSurfaceStyleWithTextures(*args, **kwargs): return ifcopenshell.create_entity('IfcSurfaceStyleWithTextures', 'IFC2X3', *args, **kwargs)
def IfcSurfaceTexture(*args, **kwargs): return ifcopenshell.create_entity('IfcSurfaceTexture', 'IFC2X3', *args, **kwargs)
def IfcSweptAreaSolid(*args, **kwargs): return ifcopenshell.create_entity('IfcSweptAreaSolid', 'IFC2X3', *args, **kwargs)
def IfcSweptDiskSolid(*args, **kwargs): return ifcopenshell.create_entity('IfcSweptDiskSolid', 'IFC2X3', *args, **kwargs)
def IfcSweptSurface(*args, **kwargs): return ifcopenshell.create_entity('IfcSweptSurface', 'IFC2X3', *args, **kwargs)
def IfcSwitchingDeviceType(*args, **kwargs): return ifcopenshell.create_entity('IfcSwitchingDeviceType', 'IFC2X3', *args, **kwargs)
def IfcSymbolStyle(*args, **kwargs): return ifcopenshell.create_entity('IfcSymbolStyle', 'IFC2X3', *args, **kwargs)
def IfcSystem(*args, **kwargs): return ifcopenshell.create_entity('IfcSystem', 'IFC2X3', *args, **kwargs)
def IfcSystemFurnitureElementType(*args, **kwargs): return ifcopenshell.create_entity('IfcSystemFurnitureElementType', 'IFC2X3', *args, **kwargs)
def IfcTShapeProfileDef(*args, **kwargs): return ifcopenshell.create_entity('IfcTShapeProfileDef', 'IFC2X3', *args, **kwargs)
def IfcTable(*args, **kwargs): return ifcopenshell.create_entity('IfcTable', 'IFC2X3', *args, **kwargs)
def IfcTableRow(*args, **kwargs): return ifcopenshell.create_entity('IfcTableRow', 'IFC2X3', *args, **kwargs)
def IfcTankType(*args, **kwargs): return ifcopenshell.create_entity('IfcTankType', 'IFC2X3', *args, **kwargs)
def IfcTask(*args, **kwargs): return ifcopenshell.create_entity('IfcTask', 'IFC2X3', *args, **kwargs)
def IfcTelecomAddress(*args, **kwargs): return ifcopenshell.create_entity('IfcTelecomAddress', 'IFC2X3', *args, **kwargs)
def IfcTendon(*args, **kwargs): return ifcopenshell.create_entity('IfcTendon', 'IFC2X3', *args, **kwargs)
def IfcTendonAnchor(*args, **kwargs): return ifcopenshell.create_entity('IfcTendonAnchor', 'IFC2X3', *args, **kwargs)
def IfcTerminatorSymbol(*args, **kwargs): return ifcopenshell.create_entity('IfcTerminatorSymbol', 'IFC2X3', *args, **kwargs)
def IfcTextLiteral(*args, **kwargs): return ifcopenshell.create_entity('IfcTextLiteral', 'IFC2X3', *args, **kwargs)
def IfcTextLiteralWithExtent(*args, **kwargs): return ifcopenshell.create_entity('IfcTextLiteralWithExtent', 'IFC2X3', *args, **kwargs)
def IfcTextStyle(*args, **kwargs): return ifcopenshell.create_entity('IfcTextStyle', 'IFC2X3', *args, **kwargs)
def IfcTextStyleFontModel(*args, **kwargs): return ifcopenshell.create_entity('IfcTextStyleFontModel', 'IFC2X3', *args, **kwargs)
def IfcTextStyleForDefinedFont(*args, **kwargs): return ifcopenshell.create_entity('IfcTextStyleForDefinedFont', 'IFC2X3', *args, **kwargs)
def IfcTextStyleTextModel(*args, **kwargs): return ifcopenshell.create_entity('IfcTextStyleTextModel', 'IFC2X3', *args, **kwargs)
def IfcTextStyleWithBoxCharacteristics(*args, **kwargs): return ifcopenshell.create_entity('IfcTextStyleWithBoxCharacteristics', 'IFC2X3', *args, **kwargs)
def IfcTextureCoordinate(*args, **kwargs): return ifcopenshell.create_entity('IfcTextureCoordinate', 'IFC2X3', *args, **kwargs)
def IfcTextureCoordinateGenerator(*args, **kwargs): return ifcopenshell.create_entity('IfcTextureCoordinateGenerator', 'IFC2X3', *args, **kwargs)
def IfcTextureMap(*args, **kwargs): return ifcopenshell.create_entity('IfcTextureMap', 'IFC2X3', *args, **kwargs)
def IfcTextureVertex(*args, **kwargs): return ifcopenshell.create_entity('IfcTextureVertex', 'IFC2X3', *args, **kwargs)
def IfcThermalMaterialProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcThermalMaterialProperties', 'IFC2X3', *args, **kwargs)
def IfcTimeSeries(*args, **kwargs): return ifcopenshell.create_entity('IfcTimeSeries', 'IFC2X3', *args, **kwargs)
def IfcTimeSeriesReferenceRelationship(*args, **kwargs): return ifcopenshell.create_entity('IfcTimeSeriesReferenceRelationship', 'IFC2X3', *args, **kwargs)
def IfcTimeSeriesSchedule(*args, **kwargs): return ifcopenshell.create_entity('IfcTimeSeriesSchedule', 'IFC2X3', *args, **kwargs)
def IfcTimeSeriesValue(*args, **kwargs): return ifcopenshell.create_entity('IfcTimeSeriesValue', 'IFC2X3', *args, **kwargs)
def IfcTopologicalRepresentationItem(*args, **kwargs): return ifcopenshell.create_entity('IfcTopologicalRepresentationItem', 'IFC2X3', *args, **kwargs)
def IfcTopologyRepresentation(*args, **kwargs): return ifcopenshell.create_entity('IfcTopologyRepresentation', 'IFC2X3', *args, **kwargs)
def IfcTransformerType(*args, **kwargs): return ifcopenshell.create_entity('IfcTransformerType', 'IFC2X3', *args, **kwargs)
def IfcTransportElement(*args, **kwargs): return ifcopenshell.create_entity('IfcTransportElement', 'IFC2X3', *args, **kwargs)
def IfcTransportElementType(*args, **kwargs): return ifcopenshell.create_entity('IfcTransportElementType', 'IFC2X3', *args, **kwargs)
def IfcTrapeziumProfileDef(*args, **kwargs): return ifcopenshell.create_entity('IfcTrapeziumProfileDef', 'IFC2X3', *args, **kwargs)
def IfcTrimmedCurve(*args, **kwargs): return ifcopenshell.create_entity('IfcTrimmedCurve', 'IFC2X3', *args, **kwargs)
def IfcTubeBundleType(*args, **kwargs): return ifcopenshell.create_entity('IfcTubeBundleType', 'IFC2X3', *args, **kwargs)
def IfcTwoDirectionRepeatFactor(*args, **kwargs): return ifcopenshell.create_entity('IfcTwoDirectionRepeatFactor', 'IFC2X3', *args, **kwargs)
def IfcTypeObject(*args, **kwargs): return ifcopenshell.create_entity('IfcTypeObject', 'IFC2X3', *args, **kwargs)
def IfcTypeProduct(*args, **kwargs): return ifcopenshell.create_entity('IfcTypeProduct', 'IFC2X3', *args, **kwargs)
def IfcUShapeProfileDef(*args, **kwargs): return ifcopenshell.create_entity('IfcUShapeProfileDef', 'IFC2X3', *args, **kwargs)
def IfcUnitAssignment(*args, **kwargs): return ifcopenshell.create_entity('IfcUnitAssignment', 'IFC2X3', *args, **kwargs)
def IfcUnitaryEquipmentType(*args, **kwargs): return ifcopenshell.create_entity('IfcUnitaryEquipmentType', 'IFC2X3', *args, **kwargs)
def IfcValveType(*args, **kwargs): return ifcopenshell.create_entity('IfcValveType', 'IFC2X3', *args, **kwargs)
def IfcVector(*args, **kwargs): return ifcopenshell.create_entity('IfcVector', 'IFC2X3', *args, **kwargs)
def IfcVertex(*args, **kwargs): return ifcopenshell.create_entity('IfcVertex', 'IFC2X3', *args, **kwargs)
def IfcVertexBasedTextureMap(*args, **kwargs): return ifcopenshell.create_entity('IfcVertexBasedTextureMap', 'IFC2X3', *args, **kwargs)
def IfcVertexLoop(*args, **kwargs): return ifcopenshell.create_entity('IfcVertexLoop', 'IFC2X3', *args, **kwargs)
def IfcVertexPoint(*args, **kwargs): return ifcopenshell.create_entity('IfcVertexPoint', 'IFC2X3', *args, **kwargs)
def IfcVibrationIsolatorType(*args, **kwargs): return ifcopenshell.create_entity('IfcVibrationIsolatorType', 'IFC2X3', *args, **kwargs)
def IfcVirtualElement(*args, **kwargs): return ifcopenshell.create_entity('IfcVirtualElement', 'IFC2X3', *args, **kwargs)
def IfcVirtualGridIntersection(*args, **kwargs): return ifcopenshell.create_entity('IfcVirtualGridIntersection', 'IFC2X3', *args, **kwargs)
def IfcWall(*args, **kwargs): return ifcopenshell.create_entity('IfcWall', 'IFC2X3', *args, **kwargs)
def IfcWallStandardCase(*args, **kwargs): return ifcopenshell.create_entity('IfcWallStandardCase', 'IFC2X3', *args, **kwargs)
def IfcWallType(*args, **kwargs): return ifcopenshell.create_entity('IfcWallType', 'IFC2X3', *args, **kwargs)
def IfcWasteTerminalType(*args, **kwargs): return ifcopenshell.create_entity('IfcWasteTerminalType', 'IFC2X3', *args, **kwargs)
def IfcWaterProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcWaterProperties', 'IFC2X3', *args, **kwargs)
def IfcWindow(*args, **kwargs): return ifcopenshell.create_entity('IfcWindow', 'IFC2X3', *args, **kwargs)
def IfcWindowLiningProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcWindowLiningProperties', 'IFC2X3', *args, **kwargs)
def IfcWindowPanelProperties(*args, **kwargs): return ifcopenshell.create_entity('IfcWindowPanelProperties', 'IFC2X3', *args, **kwargs)
def IfcWindowStyle(*args, **kwargs): return ifcopenshell.create_entity('IfcWindowStyle', 'IFC2X3', *args, **kwargs)
def IfcWorkControl(*args, **kwargs): return ifcopenshell.create_entity('IfcWorkControl', 'IFC2X3', *args, **kwargs)
def IfcWorkPlan(*args, **kwargs): return ifcopenshell.create_entity('IfcWorkPlan', 'IFC2X3', *args, **kwargs)
def IfcWorkSchedule(*args, **kwargs): return ifcopenshell.create_entity('IfcWorkSchedule', 'IFC2X3', *args, **kwargs)
def IfcZShapeProfileDef(*args, **kwargs): return ifcopenshell.create_entity('IfcZShapeProfileDef', 'IFC2X3', *args, **kwargs)
def IfcZone(*args, **kwargs): return ifcopenshell.create_entity('IfcZone', 'IFC2X3', *args, **kwargs)
class IfcBoxAlignment_WR1:
SCOPE = "type"
TYPE_NAME = "IfcBoxAlignment"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert self in ['top-left','top-middle','top-right','middle-left','center','middle-right','bottom-left','bottom-middle','bottom-right']
class IfcCompoundPlaneAngleMeasure_WR1:
SCOPE = "type"
TYPE_NAME = "IfcCompoundPlaneAngleMeasure"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert -360 <= self[1 - 1] < 360
class IfcCompoundPlaneAngleMeasure_WR2:
SCOPE = "type"
TYPE_NAME = "IfcCompoundPlaneAngleMeasure"
RULE_NAME = "WR2"
@staticmethod
def __call__(self):
assert -60 <= self[2 - 1] < 60
class IfcCompoundPlaneAngleMeasure_WR3:
SCOPE = "type"
TYPE_NAME = "IfcCompoundPlaneAngleMeasure"
RULE_NAME = "WR3"
@staticmethod
def __call__(self):
assert -60 <= self[3 - 1] < 60
class IfcCompoundPlaneAngleMeasure_WR4:
SCOPE = "type"
TYPE_NAME = "IfcCompoundPlaneAngleMeasure"
RULE_NAME = "WR4"
@staticmethod
def __call__(self):
assert (((self[1 - 1]) >= 0) and ((self[2 - 1]) >= 0) and ((self[3 - 1]) >= 0)) or (((self[1 - 1]) <= 0) and ((self[2 - 1]) <= 0) and ((self[3 - 1]) <= 0))
class IfcDaylightSavingHour_WR1:
SCOPE = "type"
TYPE_NAME = "IfcDaylightSavingHour"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert 0 <= self <= 2
class IfcDimensionCount_WR1:
SCOPE = "type"
TYPE_NAME = "IfcDimensionCount"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert 0 < self <= 3
class IfcFontStyle_WR1:
SCOPE = "type"
TYPE_NAME = "IfcFontStyle"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert self in ['normal','italic','oblique']
class IfcFontVariant_WR1:
SCOPE = "type"
TYPE_NAME = "IfcFontVariant"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert self in ['normal','small-caps']
class IfcFontWeight_WR1:
SCOPE = "type"
TYPE_NAME = "IfcFontWeight"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert self in ['normal','small-caps','100','200','300','400','500','600','700','800','900']
class IfcHeatingValueMeasure_WR1:
SCOPE = "type"
TYPE_NAME = "IfcHeatingValueMeasure"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert self > 0.
class IfcHourInDay_WR1:
SCOPE = "type"
TYPE_NAME = "IfcHourInDay"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert 0 <= self < 24
class IfcMinuteInHour_WR1:
SCOPE = "type"
TYPE_NAME = "IfcMinuteInHour"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert 0 <= self <= 59
class IfcMonthInYearNumber_WR1:
SCOPE = "type"
TYPE_NAME = "IfcMonthInYearNumber"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert 1 <= self <= 12
class IfcNormalisedRatioMeasure_WR1:
SCOPE = "type"
TYPE_NAME = "IfcNormalisedRatioMeasure"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert 0.0 <= self <= 1.0
class IfcPHMeasure_WR21:
SCOPE = "type"
TYPE_NAME = "IfcPHMeasure"
RULE_NAME = "WR21"
@staticmethod
def __call__(self):
assert 0.0 <= self <= 14.0
class IfcPositiveLengthMeasure_WR1:
SCOPE = "type"
TYPE_NAME = "IfcPositiveLengthMeasure"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert self > 0.
class IfcPositivePlaneAngleMeasure_WR1:
SCOPE = "type"
TYPE_NAME = "IfcPositivePlaneAngleMeasure"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert self > 0.
class IfcPositiveRatioMeasure_WR1:
SCOPE = "type"
TYPE_NAME = "IfcPositiveRatioMeasure"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert self > 0.
class IfcSecondInMinute_WR1:
SCOPE = "type"
TYPE_NAME = "IfcSecondInMinute"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert 0. <= self < 60.
class IfcSpecularRoughness_WR1:
SCOPE = "type"
TYPE_NAME = "IfcSpecularRoughness"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert 0.0 <= self <= 1.0
class IfcTextAlignment_WR1:
SCOPE = "type"
TYPE_NAME = "IfcTextAlignment"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert self in ['left','right','center','justify']
class IfcTextDecoration_WR1:
SCOPE = "type"
TYPE_NAME = "IfcTextDecoration"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert self in ['none','underline','overline','line-through','blink']
class IfcTextTransformation_WR1:
SCOPE = "type"
TYPE_NAME = "IfcTextTransformation"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert self in ['capitalize','uppercase','lowercase','none']
class Ifc2DCompositeCurve_WR1:
SCOPE = "entity"
TYPE_NAME = "Ifc2DCompositeCurve"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert self.ClosedCurve
class Ifc2DCompositeCurve_WR2:
SCOPE = "entity"
TYPE_NAME = "Ifc2DCompositeCurve"
RULE_NAME = "WR2"
@staticmethod
def __call__(self):
assert self.Dim == 2
class IfcActorRole_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcActorRole"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
role = self.Role
assert (role != IfcRoleEnum.USERDEFINED) or ((role == IfcRoleEnum.USERDEFINED) and exists(self.UserDefinedRole))
class IfcAddress_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcAddress"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
purpose = self.Purpose
assert (not exists(purpose)) or ((purpose != IfcAddressTypeEnum.USERDEFINED) or ((purpose == IfcAddressTypeEnum.USERDEFINED) and exists(self.UserDefinedPurpose)))
class IfcAirTerminalBoxType_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcAirTerminalBoxType"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcAirTerminalBoxTypeEnum.USERDEFINED) or ((predefinedtype == IfcAirTerminalBoxTypeEnum.USERDEFINED) and exists(self.ElementType))
class IfcAirTerminalType_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcAirTerminalType"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcAirTerminalTypeEnum.USERDEFINED) or ((predefinedtype == IfcAirTerminalTypeEnum.USERDEFINED) and exists(self.ElementType))
class IfcAirToAirHeatRecoveryType_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcAirToAirHeatRecoveryType"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcAirToAirHeatRecoveryTypeEnum.USERDEFINED) or ((predefinedtype == IfcAirToAirHeatRecoveryTypeEnum.USERDEFINED) and exists(self.ElementType))
class IfcAnnotationCurveOccurrence_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcAnnotationCurveOccurrence"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
assert (not exists(self.Item)) or ('ifc2x3.ifccurve' in typeof(self.Item))
class IfcAnnotationFillAreaOccurrence_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcAnnotationFillAreaOccurrence"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
assert (not exists(self.Item)) or ('ifc2x3.ifcannotationfillarea' in typeof(self.Item))
class IfcAnnotationSurface_WR01:
SCOPE = "entity"
TYPE_NAME = "IfcAnnotationSurface"
RULE_NAME = "WR01"
@staticmethod
def __call__(self):
item = self.Item
assert (sizeof(['ifc2x3.ifcsurface','ifc2x3.ifcshellbasedsurfacemodel','ifc2x3.ifcfacebasedsurfacemodel','ifc2x3.ifcsolidmodel','ifc2x3.ifcbooleanresult','ifc2x3.ifccsgprimitive3d'] * typeof(item))) >= 1
class IfcAnnotationSurfaceOccurrence_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcAnnotationSurfaceOccurrence"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
assert (not exists(self.Item)) or ((sizeof(['ifc2x3.ifcsurface','ifc2x3.ifcfacebasedsurfacemodel','ifc2x3.ifcshellbasedsurfacemodel','ifc2x3.ifcsolidmodel'] * typeof(self.Item))) > 0)
class IfcAnnotationSymbolOccurrence_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcAnnotationSymbolOccurrence"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
assert (not exists(self.Item)) or ('ifc2x3.ifcdefinedsymbol' in typeof(self.Item))
class IfcAnnotationTextOccurrence_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcAnnotationTextOccurrence"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
assert (not exists(self.Item)) or ('ifc2x3.ifctextliteral' in typeof(self.Item))
class IfcAppliedValue_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcAppliedValue"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
appliedvalue = self.AppliedValue
valueofcomponents = self.ValueOfComponents
assert exists(appliedvalue) or exists(valueofcomponents)
class IfcArbitraryClosedProfileDef_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcArbitraryClosedProfileDef"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
outercurve = self.OuterCurve
assert outercurve.Dim == 2
class IfcArbitraryClosedProfileDef_WR2:
SCOPE = "entity"
TYPE_NAME = "IfcArbitraryClosedProfileDef"
RULE_NAME = "WR2"
@staticmethod
def __call__(self):
outercurve = self.OuterCurve
assert not 'ifc2x3.ifcline' in typeof(outercurve)
class IfcArbitraryClosedProfileDef_WR3:
SCOPE = "entity"
TYPE_NAME = "IfcArbitraryClosedProfileDef"
RULE_NAME = "WR3"
@staticmethod
def __call__(self):
outercurve = self.OuterCurve
assert not 'ifc2x3.ifcoffsetcurve2d' in typeof(outercurve)
class IfcArbitraryOpenProfileDef_WR11:
SCOPE = "entity"
TYPE_NAME = "IfcArbitraryOpenProfileDef"
RULE_NAME = "WR11"
@staticmethod
def __call__(self):
assert ('ifc2x3.ifccenterlineprofiledef' in typeof(self)) or (self.ProfileType == IfcProfileTypeEnum.CURVE)
class IfcArbitraryOpenProfileDef_WR12:
SCOPE = "entity"
TYPE_NAME = "IfcArbitraryOpenProfileDef"
RULE_NAME = "WR12"
@staticmethod
def __call__(self):
curve = self.Curve
assert curve.Dim == 2
class IfcArbitraryProfileDefWithVoids_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcArbitraryProfileDefWithVoids"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert self.ProfileType == area
class IfcArbitraryProfileDefWithVoids_WR2:
SCOPE = "entity"
TYPE_NAME = "IfcArbitraryProfileDefWithVoids"
RULE_NAME = "WR2"
@staticmethod
def __call__(self):
innercurves = self.InnerCurves
assert (sizeof([temp for temp in innercurves if temp.Dim != 2])) == 0
class IfcArbitraryProfileDefWithVoids_WR3:
SCOPE = "entity"
TYPE_NAME = "IfcArbitraryProfileDefWithVoids"
RULE_NAME = "WR3"
@staticmethod
def __call__(self):
innercurves = self.InnerCurves
assert (sizeof([temp for temp in innercurves if 'ifc2x3.ifcline' in typeof(temp)])) == 0
class IfcAsset_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcAsset"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert (sizeof([temp for temp in self.IsGroupedBy.RelatedObjects if not 'ifc2x3.ifcelement' in typeof(temp)])) == 0
class IfcAxis1Placement_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcAxis1Placement"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
axis = self.Axis
assert (not exists(axis)) or (axis.Dim == 3)
class IfcAxis1Placement_WR2:
SCOPE = "entity"
TYPE_NAME = "IfcAxis1Placement"
RULE_NAME = "WR2"
@staticmethod
def __call__(self):
assert self.Location.Dim == 3
def calc_IfcAxis1Placement_Z(self):
axis = self.Axis
return \
nvl(IfcNormalise(axis),IfcDirection(DirectionRatios=[0.0,0.0,1.0]))
class IfcAxis2Placement2D_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcAxis2Placement2D"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
refdirection = self.RefDirection
assert (not exists(refdirection)) or (refdirection.Dim == 2)
class IfcAxis2Placement2D_WR2:
SCOPE = "entity"
TYPE_NAME = "IfcAxis2Placement2D"
RULE_NAME = "WR2"
@staticmethod
def __call__(self):
assert self.Location.Dim == 2
def calc_IfcAxis2Placement2D_P(self):
refdirection = self.RefDirection
return \
IfcBuild2Axes(refdirection)
class IfcAxis2Placement3D_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcAxis2Placement3D"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert self.Location.Dim == 3
class IfcAxis2Placement3D_WR2:
SCOPE = "entity"
TYPE_NAME = "IfcAxis2Placement3D"
RULE_NAME = "WR2"
@staticmethod
def __call__(self):
axis = self.Axis
assert (not exists(axis)) or (axis.Dim == 3)
class IfcAxis2Placement3D_WR3:
SCOPE = "entity"
TYPE_NAME = "IfcAxis2Placement3D"
RULE_NAME = "WR3"
@staticmethod
def __call__(self):
refdirection = self.RefDirection
assert (not exists(refdirection)) or (refdirection.Dim == 3)
class IfcAxis2Placement3D_WR4:
SCOPE = "entity"
TYPE_NAME = "IfcAxis2Placement3D"
RULE_NAME = "WR4"
@staticmethod
def __call__(self):
axis = self.Axis
refdirection = self.RefDirection
assert (not exists(axis)) or (not exists(refdirection)) or (IfcCrossProduct(axis,refdirection).Magnitude > 0.0)
class IfcAxis2Placement3D_WR5:
SCOPE = "entity"
TYPE_NAME = "IfcAxis2Placement3D"
RULE_NAME = "WR5"
@staticmethod
def __call__(self):
axis = self.Axis
refdirection = self.RefDirection
assert not exists(axis) ^ exists(refdirection)
def calc_IfcAxis2Placement3D_P(self):
axis = self.Axis
refdirection = self.RefDirection
return \
IfcBuildAxes(axis,refdirection)
class IfcBSplineCurve_WR41:
SCOPE = "entity"
TYPE_NAME = "IfcBSplineCurve"
RULE_NAME = "WR41"
@staticmethod
def __call__(self):
controlpointslist = self.ControlPointsList
assert (sizeof([temp for temp in controlpointslist if temp.Dim != (controlpointslist[1 - 1].Dim)])) == 0
def calc_IfcBSplineCurve_ControlPoints(self):
controlpointslist = self.ControlPointsList
upperindexoncontrolpoints = self.UpperIndexOnControlPoints
return \
IfcListToArray(controlpointslist,0,upperindexoncontrolpoints)
def calc_IfcBSplineCurve_UpperIndexOnControlPoints(self):
controlpointslist = self.ControlPointsList
return \
sizeof(controlpointslist) - 1
class IfcBlobTexture_WR11:
SCOPE = "entity"
TYPE_NAME = "IfcBlobTexture"
RULE_NAME = "WR11"
@staticmethod
def __call__(self):
assert self.RasterFormat in ['bmp','jpg','gif','png']
class IfcBoilerType_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcBoilerType"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcBoilerTypeEnum.USERDEFINED) or ((predefinedtype == IfcBoilerTypeEnum.USERDEFINED) and exists(self.ElementType))
class IfcBooleanClippingResult_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcBooleanClippingResult"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
firstoperand = self.FirstOperand
assert ('ifc2x3.ifcsweptareasolid' in typeof(firstoperand)) or ('ifc2x3.ifcbooleanclippingresult' in typeof(firstoperand))
class IfcBooleanClippingResult_WR2:
SCOPE = "entity"
TYPE_NAME = "IfcBooleanClippingResult"
RULE_NAME = "WR2"
@staticmethod
def __call__(self):
secondoperand = self.SecondOperand
assert 'ifc2x3.ifchalfspacesolid' in typeof(secondoperand)
class IfcBooleanClippingResult_WR3:
SCOPE = "entity"
TYPE_NAME = "IfcBooleanClippingResult"
RULE_NAME = "WR3"
@staticmethod
def __call__(self):
operator = self.Operator
assert operator == difference
class IfcBooleanResult_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcBooleanResult"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
firstoperand = self.FirstOperand
secondoperand = self.SecondOperand
assert firstoperand.Dim == secondoperand.Dim
def calc_IfcBooleanResult_Dim(self):
firstoperand = self.FirstOperand
return \
firstoperand.Dim
def calc_IfcBoundingBox_Dim(self):
return \
3
class IfcBoxedHalfSpace_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcBoxedHalfSpace"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert not 'ifc2x3.ifccurveboundedplane' in typeof(self.BaseSurface)
class IfcBuildingElementProxy_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcBuildingElementProxy"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert exists(self.Name)
class IfcCShapeProfileDef_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcCShapeProfileDef"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
depth = self.Depth
girth = self.Girth
assert girth < (depth / 2.)
class IfcCShapeProfileDef_WR2:
SCOPE = "entity"
TYPE_NAME = "IfcCShapeProfileDef"
RULE_NAME = "WR2"
@staticmethod
def __call__(self):
depth = self.Depth
width = self.Width
internalfilletradius = self.InternalFilletRadius
assert (not exists(internalfilletradius)) or ((internalfilletradius <= (width / 2.)) and (internalfilletradius <= (depth / 2.)))
class IfcCShapeProfileDef_WR3:
SCOPE = "entity"
TYPE_NAME = "IfcCShapeProfileDef"
RULE_NAME = "WR3"
@staticmethod
def __call__(self):
depth = self.Depth
width = self.Width
wallthickness = self.WallThickness
assert (wallthickness < (width / 2.)) and (wallthickness < (depth / 2.))
class IfcCableCarrierFittingType_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcCableCarrierFittingType"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcCableCarrierFittingTypeEnum.USERDEFINED) or ((predefinedtype == IfcCableCarrierFittingTypeEnum.USERDEFINED) and exists(self.ElementType))
class IfcCalendarDate_WR21:
SCOPE = "entity"
TYPE_NAME = "IfcCalendarDate"
RULE_NAME = "WR21"
@staticmethod
def __call__(self):
assert IfcValidCalendarDate(self)
class IfcCartesianPoint_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcCartesianPoint"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
coordinates = self.Coordinates
assert hiindex(coordinates) >= 2
def calc_IfcCartesianPoint_Dim(self):
coordinates = self.Coordinates
return \
hiindex(coordinates)
class IfcCartesianTransformationOperator_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcCartesianTransformationOperator"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
scl = self.Scl
assert scl > 0.0
def calc_IfcCartesianTransformationOperator_Scl(self):
scale = self.Scale
return \
nvl(scale,1.0)
def calc_IfcCartesianTransformationOperator_Dim(self):
localorigin = self.LocalOrigin
return \
localorigin.Dim
class IfcCartesianTransformationOperator2D_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcCartesianTransformationOperator2D"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert self.Dim == 2
class IfcCartesianTransformationOperator2D_WR2:
SCOPE = "entity"
TYPE_NAME = "IfcCartesianTransformationOperator2D"
RULE_NAME = "WR2"
@staticmethod
def __call__(self):
assert (not exists(self.Axis1)) or (self.Axis1.Dim == 2)
class IfcCartesianTransformationOperator2D_WR3:
SCOPE = "entity"
TYPE_NAME = "IfcCartesianTransformationOperator2D"
RULE_NAME = "WR3"
@staticmethod
def __call__(self):
assert (not exists(self.Axis2)) or (self.Axis2.Dim == 2)
def calc_IfcCartesianTransformationOperator2D_U(self):
return \
IfcBaseAxis(2,self.Axis1,self.Axis2,None)
class IfcCartesianTransformationOperator2DnonUniform_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcCartesianTransformationOperator2DnonUniform"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
scl2 = self.Scl2
assert scl2 > 0.0
def calc_IfcCartesianTransformationOperator2DnonUniform_Scl2(self):
scale2 = self.Scale2
return \
nvl(scale2,self.Scl)
class IfcCartesianTransformationOperator3D_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcCartesianTransformationOperator3D"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert self.Dim == 3
class IfcCartesianTransformationOperator3D_WR2:
SCOPE = "entity"
TYPE_NAME = "IfcCartesianTransformationOperator3D"
RULE_NAME = "WR2"
@staticmethod
def __call__(self):
assert (not exists(self.Axis1)) or (self.Axis1.Dim == 3)
class IfcCartesianTransformationOperator3D_WR3:
SCOPE = "entity"
TYPE_NAME = "IfcCartesianTransformationOperator3D"
RULE_NAME = "WR3"
@staticmethod
def __call__(self):
assert (not exists(self.Axis2)) or (self.Axis2.Dim == 3)
class IfcCartesianTransformationOperator3D_WR4:
SCOPE = "entity"
TYPE_NAME = "IfcCartesianTransformationOperator3D"
RULE_NAME = "WR4"
@staticmethod
def __call__(self):
axis3 = self.Axis3
assert (not exists(axis3)) or (axis3.Dim == 3)
def calc_IfcCartesianTransformationOperator3D_U(self):
axis3 = self.Axis3
return \
IfcBaseAxis(3,self.Axis1,self.Axis2,axis3)
class IfcCartesianTransformationOperator3DnonUniform_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcCartesianTransformationOperator3DnonUniform"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
scl2 = self.Scl2
assert scl2 > 0.0
class IfcCartesianTransformationOperator3DnonUniform_WR2:
SCOPE = "entity"
TYPE_NAME = "IfcCartesianTransformationOperator3DnonUniform"
RULE_NAME = "WR2"
@staticmethod
def __call__(self):
scl3 = self.Scl3
assert scl3 > 0.0
def calc_IfcCartesianTransformationOperator3DnonUniform_Scl2(self):
scale2 = self.Scale2
return \
nvl(scale2,self.Scl)
def calc_IfcCartesianTransformationOperator3DnonUniform_Scl3(self):
scale3 = self.Scale3
return \
nvl(scale3,self.Scl)
class IfcChillerType_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcChillerType"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcChillerTypeEnum.USERDEFINED) or ((predefinedtype == IfcChillerTypeEnum.USERDEFINED) and exists(self.ElementType))
class IfcCircleHollowProfileDef_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcCircleHollowProfileDef"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
wallthickness = self.WallThickness
assert wallthickness < self.Radius
class IfcCoilType_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcCoilType"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcCoilTypeEnum.USERDEFINED) or ((predefinedtype == IfcCoilTypeEnum.USERDEFINED) and exists(self.ElementType))
class IfcComplexProperty_WR21:
SCOPE = "entity"
TYPE_NAME = "IfcComplexProperty"
RULE_NAME = "WR21"
@staticmethod
def __call__(self):
hasproperties = self.HasProperties
assert (sizeof([temp for temp in hasproperties if self == temp])) == 0
class IfcComplexProperty_WR22:
SCOPE = "entity"
TYPE_NAME = "IfcComplexProperty"
RULE_NAME = "WR22"
@staticmethod
def __call__(self):
hasproperties = self.HasProperties
assert IfcUniquePropertyName(hasproperties)
class IfcCompositeCurve_WR41:
SCOPE = "entity"
TYPE_NAME = "IfcCompositeCurve"
RULE_NAME = "WR41"
@staticmethod
def __call__(self):
segments = self.Segments
closedcurve = self.ClosedCurve
assert ((not closedcurve) and ((sizeof([temp for temp in segments if temp.Transition == discontinuous])) == 1)) or (closedcurve and ((sizeof([temp for temp in segments if temp.Transition == discontinuous])) == 0))
class IfcCompositeCurve_WR42:
SCOPE = "entity"
TYPE_NAME = "IfcCompositeCurve"
RULE_NAME = "WR42"
@staticmethod
def __call__(self):
segments = self.Segments
assert (sizeof([temp for temp in segments if temp.Dim != (segments[1 - 1].Dim)])) == 0
def calc_IfcCompositeCurve_NSegments(self):
segments = self.Segments
return \
sizeof(segments)
def calc_IfcCompositeCurve_ClosedCurve(self):
segments = self.Segments
nsegments = self.NSegments
return \
(segments[nsegments - 1].Transition) != discontinuous
class IfcCompositeCurveSegment_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcCompositeCurveSegment"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
parentcurve = self.ParentCurve
assert 'ifc2x3.ifcboundedcurve' in typeof(parentcurve)
def calc_IfcCompositeCurveSegment_Dim(self):
parentcurve = self.ParentCurve
return \
parentcurve.Dim
class IfcCompositeProfileDef_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcCompositeProfileDef"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
profiles = self.Profiles
assert (sizeof([temp for temp in profiles if temp.ProfileType != (profiles[1 - 1].ProfileType)])) == 0
class IfcCompositeProfileDef_WR2:
SCOPE = "entity"
TYPE_NAME = "IfcCompositeProfileDef"
RULE_NAME = "WR2"
@staticmethod
def __call__(self):
profiles = self.Profiles
assert (sizeof([temp for temp in profiles if 'ifc2x3.ifccompositeprofiledef' in typeof(temp)])) == 0
class IfcCompressorType_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcCompressorType"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcCompressorTypeEnum.USERDEFINED) or ((predefinedtype == IfcCompressorTypeEnum.USERDEFINED) and exists(self.ElementType))
class IfcCondenserType_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcCondenserType"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcCondenserTypeEnum.USERDEFINED) or ((predefinedtype == IfcCondenserTypeEnum.USERDEFINED) and exists(self.ElementType))
class IfcConditionCriterion_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcConditionCriterion"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert exists(self.Name)
class IfcConstraint_WR11:
SCOPE = "entity"
TYPE_NAME = "IfcConstraint"
RULE_NAME = "WR11"
@staticmethod
def __call__(self):
constraintgrade = self.ConstraintGrade
assert (constraintgrade != IfcConstraintEnum.USERDEFINED) or ((constraintgrade == IfcConstraintEnum.USERDEFINED) and exists(self.UserDefinedGrade))
class IfcConstraintAggregationRelationship_WR11:
SCOPE = "entity"
TYPE_NAME = "IfcConstraintAggregationRelationship"
RULE_NAME = "WR11"
@staticmethod
def __call__(self):
relatingconstraint = self.RelatingConstraint
relatedconstraints = self.RelatedConstraints
assert (sizeof([temp for temp in relatedconstraints if temp == relatingconstraint])) == 0
class IfcConstraintRelationship_WR11:
SCOPE = "entity"
TYPE_NAME = "IfcConstraintRelationship"
RULE_NAME = "WR11"
@staticmethod
def __call__(self):
relatingconstraint = self.RelatingConstraint
relatedconstraints = self.RelatedConstraints
assert (sizeof([temp for temp in relatedconstraints if temp == relatingconstraint])) == 0
class IfcConstructionMaterialResource_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcConstructionMaterialResource"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert sizeof(self.ResourceOf) <= 1
class IfcConstructionMaterialResource_WR2:
SCOPE = "entity"
TYPE_NAME = "IfcConstructionMaterialResource"
RULE_NAME = "WR2"
@staticmethod
def __call__(self):
assert (not exists(lambda: self.ResourceOf[1 - 1])) or ((self.ResourceOf[1 - 1].RelatedObjectsType) == IfcObjectTypeEnum.PRODUCT)
class IfcConstructionProductResource_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcConstructionProductResource"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert sizeof(self.ResourceOf) <= 1
class IfcConstructionProductResource_WR2:
SCOPE = "entity"
TYPE_NAME = "IfcConstructionProductResource"
RULE_NAME = "WR2"
@staticmethod
def __call__(self):
assert (not exists(lambda: self.ResourceOf[1 - 1])) or ((self.ResourceOf[1 - 1].RelatedObjectsType) == IfcObjectTypeEnum.PRODUCT)
class IfcCooledBeamType_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcCooledBeamType"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcCooledBeamTypeEnum.USERDEFINED) or ((predefinedtype == IfcCooledBeamTypeEnum.USERDEFINED) and exists(self.ElementType))
class IfcCoolingTowerType_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcCoolingTowerType"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcCoolingTowerTypeEnum.USERDEFINED) or ((predefinedtype == IfcCoolingTowerTypeEnum.USERDEFINED) and exists(self.ElementType))
class IfcCovering_WR61:
SCOPE = "entity"
TYPE_NAME = "IfcCovering"
RULE_NAME = "WR61"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (not exists(predefinedtype)) or (predefinedtype != IfcCoveringTypeEnum.USERDEFINED) or ((predefinedtype == IfcCoveringTypeEnum.USERDEFINED) and exists(self.ObjectType))
def calc_IfcCsgPrimitive3D_Dim(self):
return \
3
def calc_IfcCurve_Dim(self):
return \
IfcCurveDim(self)
def calc_IfcCurveBoundedPlane_Dim(self):
basissurface = self.BasisSurface
return \
basissurface.Dim
class IfcCurveStyle_WR11:
SCOPE = "entity"
TYPE_NAME = "IfcCurveStyle"
RULE_NAME = "WR11"
@staticmethod
def __call__(self):
curvewidth = self.CurveWidth
assert (not exists(curvewidth)) or ('ifc2x3.ifcpositivelengthmeasure' in typeof(curvewidth)) or (('ifc2x3.ifcdescriptivemeasure' in typeof(curvewidth)) and (curvewidth == 'bylayer'))
class IfcCurveStyleFontPattern_WR01:
SCOPE = "entity"
TYPE_NAME = "IfcCurveStyleFontPattern"
RULE_NAME = "WR01"
@staticmethod
def __call__(self):
visiblesegmentlength = self.VisibleSegmentLength
assert visiblesegmentlength >= 0.
class IfcDamperType_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcDamperType"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcDamperTypeEnum.USERDEFINED) or ((predefinedtype == IfcDamperTypeEnum.USERDEFINED) and exists(self.ElementType))
class IfcDerivedProfileDef_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcDerivedProfileDef"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
parentprofile = self.ParentProfile
assert self.ProfileType == parentprofile.ProfileType
class IfcDerivedUnit_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcDerivedUnit"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
elements = self.Elements
assert (sizeof(elements) > 1) or ((sizeof(elements) == 1) and ((elements[1 - 1].Exponent) != 1))
class IfcDerivedUnit_WR2:
SCOPE = "entity"
TYPE_NAME = "IfcDerivedUnit"
RULE_NAME = "WR2"
@staticmethod
def __call__(self):
unittype = self.UnitType
assert (unittype != IfcDerivedUnitEnum.USERDEFINED) or ((unittype == IfcDerivedUnitEnum.USERDEFINED) and exists(self.UserDefinedType))
def calc_IfcDerivedUnit_Dimensions(self):
elements = self.Elements
return \
IfcDeriveDimensionalExponents(elements)
class IfcDimensionCalloutRelationship_WR11:
SCOPE = "entity"
TYPE_NAME = "IfcDimensionCalloutRelationship"
RULE_NAME = "WR11"
@staticmethod
def __call__(self):
assert self.Name in ['primary','secondary']
class IfcDimensionCalloutRelationship_WR12:
SCOPE = "entity"
TYPE_NAME = "IfcDimensionCalloutRelationship"
RULE_NAME = "WR12"
@staticmethod
def __call__(self):
assert (sizeof(typeof(self.RelatingDraughtingCallout) * ['ifc2x3.ifcangulardimension','ifc2x3.ifcdiameterdimension','ifc2x3.ifclineardimension','ifc2x3.ifcradiusdimension'])) == 1
class IfcDimensionCalloutRelationship_WR13:
SCOPE = "entity"
TYPE_NAME = "IfcDimensionCalloutRelationship"
RULE_NAME = "WR13"
@staticmethod
def __call__(self):
assert not 'ifc2x3.ifcdimensioncurvedirectedcallout' in typeof(self.RelatedDraughtingCallout)
class IfcDimensionCurve_WR51:
SCOPE = "entity"
TYPE_NAME = "IfcDimensionCurve"
RULE_NAME = "WR51"
@staticmethod
def __call__(self):
assert sizeof(usedin(self,'ifc2x3.ifcdraughtingcallout.contents')) >= 1
class IfcDimensionCurve_WR52:
SCOPE = "entity"
TYPE_NAME = "IfcDimensionCurve"
RULE_NAME = "WR52"
@staticmethod
def __call__(self):
assert ((sizeof([dct1 for dct1 in usedin(self,'ifc2x3.' + 'ifcterminatorsymbol.annotatedcurve') if dct1.Role == IfcDimensionExtentUsage.ORIGIN])) <= 1) and ((sizeof([dct2 for dct2 in usedin(self,'ifc2x3.' + 'ifcterminatorsymbol.annotatedcurve') if dct2.Role == IfcDimensionExtentUsage.TARGET])) <= 1)
class IfcDimensionCurve_WR53:
SCOPE = "entity"
TYPE_NAME = "IfcDimensionCurve"
RULE_NAME = "WR53"
@staticmethod
def __call__(self):
annotatedbysymbols = self.AnnotatedBySymbols
assert (sizeof([dct for dct in annotatedbysymbols if not 'ifc2x3.ifcdimensioncurveterminator' in typeof(dct)])) == 0
class IfcDimensionCurveDirectedCallout_WR41:
SCOPE = "entity"
TYPE_NAME = "IfcDimensionCurveDirectedCallout"
RULE_NAME = "WR41"
@staticmethod
def __call__(self):
assert (sizeof([dc for dc in self.Contents if 'ifc2x3.ifcdimensioncurve' in typeof(dc)])) == 1
class IfcDimensionCurveDirectedCallout_WR42:
SCOPE = "entity"
TYPE_NAME = "IfcDimensionCurveDirectedCallout"
RULE_NAME = "WR42"
@staticmethod
def __call__(self):
contents = self.Contents
assert (sizeof([dc for dc in self.contents if 'ifc2x3.ifcprojectioncurve' in typeof(dc)])) <= 2
class IfcDimensionCurveTerminator_WR61:
SCOPE = "entity"
TYPE_NAME = "IfcDimensionCurveTerminator"
RULE_NAME = "WR61"
@staticmethod
def __call__(self):
assert 'ifc2x3.ifcdimensioncurve' in typeof(self.AnnotatedCurve)
class IfcDimensionPair_WR11:
SCOPE = "entity"
TYPE_NAME = "IfcDimensionPair"
RULE_NAME = "WR11"
@staticmethod
def __call__(self):
assert self.Name in ['chained','parallel']
class IfcDimensionPair_WR12:
SCOPE = "entity"
TYPE_NAME = "IfcDimensionPair"
RULE_NAME = "WR12"
@staticmethod
def __call__(self):
assert (sizeof(typeof(self.RelatingDraughtingCallout) * ['ifc2x3.ifcangulardimension','ifc2x3.ifcdiameterdimension','ifc2x3.ifclineardimension','ifc2x3.ifcradiusdimension'])) == 1
class IfcDimensionPair_WR13:
SCOPE = "entity"
TYPE_NAME = "IfcDimensionPair"
RULE_NAME = "WR13"
@staticmethod
def __call__(self):
assert (sizeof(typeof(self.RelatedDraughtingCallout) * ['ifc2x3.ifcangulardimension','ifc2x3.ifcdiameterdimension','ifc2x3.ifclineardimension','ifc2x3.ifcradiusdimension'])) == 1
def calc_IfcDirection_Dim(self):
directionratios = self.DirectionRatios
return \
hiindex(directionratios)
class IfcDocumentElectronicFormat_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcDocumentElectronicFormat"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
fileextension = self.FileExtension
mimecontenttype = self.MimeContentType
assert exists(fileextension) or exists(mimecontenttype)
class IfcDocumentReference_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcDocumentReference"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
name = self.Name
referencetodocument = self.ReferenceToDocument
assert exists(name) ^ (exists(lambda: referencetodocument[1 - 1]))
class IfcDoorLiningProperties_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcDoorLiningProperties"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
liningdepth = self.LiningDepth
liningthickness = self.LiningThickness
assert not (not exists(liningdepth)) and exists(liningthickness)
class IfcDoorLiningProperties_WR32:
SCOPE = "entity"
TYPE_NAME = "IfcDoorLiningProperties"
RULE_NAME = "WR32"
@staticmethod
def __call__(self):
thresholddepth = self.ThresholdDepth
thresholdthickness = self.ThresholdThickness
assert not (not exists(thresholddepth)) and exists(thresholdthickness)
class IfcDoorLiningProperties_WR33:
SCOPE = "entity"
TYPE_NAME = "IfcDoorLiningProperties"
RULE_NAME = "WR33"
@staticmethod
def __call__(self):
transomthickness = self.TransomThickness
transomoffset = self.TransomOffset
assert (exists(transomoffset) and exists(transomthickness)) ^ ((not exists(transomoffset)) and (not exists(transomthickness)))
class IfcDoorLiningProperties_WR34:
SCOPE = "entity"
TYPE_NAME = "IfcDoorLiningProperties"
RULE_NAME = "WR34"
@staticmethod
def __call__(self):
casingthickness = self.CasingThickness
casingdepth = self.CasingDepth
assert (exists(casingdepth) and exists(casingthickness)) ^ ((not exists(casingdepth)) and (not exists(casingthickness)))
class IfcDoorLiningProperties_WR35:
SCOPE = "entity"
TYPE_NAME = "IfcDoorLiningProperties"
RULE_NAME = "WR35"
@staticmethod
def __call__(self):
assert (exists(lambda: self.DefinesType[1 - 1])) and ('ifc2x3.ifcdoorstyle' in (typeof(self.DefinesType[1 - 1])))
class IfcDoorPanelProperties_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcDoorPanelProperties"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
assert (exists(lambda: self.DefinesType[1 - 1])) and ('ifc2x3.ifcdoorstyle' in (typeof(self.DefinesType[1 - 1])))
class IfcDraughtingPreDefinedColour_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcDraughtingPreDefinedColour"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
assert self.Name in ['black','red','green','blue','yellow','magenta','cyan','white','bylayer']
class IfcDraughtingPreDefinedCurveFont_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcDraughtingPreDefinedCurveFont"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
assert self.Name in ['continuous','chain','chaindoubledash','dashed','dotted','bylayer']
class IfcDraughtingPreDefinedTextFont_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcDraughtingPreDefinedTextFont"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
assert self.Name in ['iso3098-1fonta','iso3098-1fontb']
class IfcDuctFittingType_WR2:
SCOPE = "entity"
TYPE_NAME = "IfcDuctFittingType"
RULE_NAME = "WR2"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcDuctFittingTypeEnum.USERDEFINED) or ((predefinedtype == IfcDuctFittingTypeEnum.USERDEFINED) and exists(self.ElementType))
class IfcDuctSegmentType_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcDuctSegmentType"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcDuctSegmentTypeEnum.USERDEFINED) or ((predefinedtype == IfcDuctSegmentTypeEnum.USERDEFINED) and exists(self.ElementType))
class IfcDuctSilencerType_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcDuctSilencerType"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcDuctSilencerTypeEnum.USERDEFINED) or ((predefinedtype == IfcDuctSilencerTypeEnum.USERDEFINED) and exists(self.ElementType))
class IfcEdgeLoop_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcEdgeLoop"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
edgelist = self.EdgeList
ne = self.Ne
assert (edgelist[1 - 1].EdgeStart) == (edgelist[ne - 1].EdgeEnd)
class IfcEdgeLoop_WR2:
SCOPE = "entity"
TYPE_NAME = "IfcEdgeLoop"
RULE_NAME = "WR2"
@staticmethod
def __call__(self):
assert IfcLoopHeadToTail(self)
def calc_IfcEdgeLoop_Ne(self):
edgelist = self.EdgeList
return \
sizeof(edgelist)
class IfcElectricDistributionPoint_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcElectricDistributionPoint"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
distributionpointfunction = self.DistributionPointFunction
assert (distributionpointfunction != IfcElectricDistributionPointFunctionEnum.USERDEFINED) or ((distributionpointfunction == IfcElectricDistributionPointFunctionEnum.USERDEFINED) and exists(self.UserDefinedFunction))
class IfcElementAssembly_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcElementAssembly"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcElementAssemblyTypeEnum.USERDEFINED) or ((predefinedtype == IfcElementAssemblyTypeEnum.USERDEFINED) and exists(self.ObjectType))
def calc_IfcElementarySurface_Dim(self):
position = self.Position
return \
position.Dim
class IfcEnvironmentalImpactValue_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcEnvironmentalImpactValue"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
category = self.Category
assert (category != IfcEnvironmentalImpactCategoryEnum.USERDEFINED) or ((category == IfcEnvironmentalImpactCategoryEnum.USERDEFINED) and exists(self.UserDefinedCategory))
class IfcEvaporativeCoolerType_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcEvaporativeCoolerType"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcEvaporativeCoolerTypeEnum.USERDEFINED) or ((predefinedtype == IfcEvaporativeCoolerTypeEnum.USERDEFINED) and exists(self.ElementType))
class IfcEvaporatorType_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcEvaporatorType"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcEvaporatorTypeEnum.USERDEFINED) or ((predefinedtype == IfcEvaporatorTypeEnum.USERDEFINED) and exists(self.ElementType))
class IfcExternalReference_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcExternalReference"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
location = self.Location
itemreference = self.ItemReference
name = self.Name
assert exists(itemreference) or exists(location) or exists(name)
class IfcExtrudedAreaSolid_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcExtrudedAreaSolid"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
assert IfcDotProduct(IfcDirection(DirectionRatios=[0.0,0.0,1.0]),self.ExtrudedDirection) != 0.0
class IfcFace_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcFace"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
bounds = self.Bounds
assert (sizeof([temp for temp in bounds if 'ifc2x3.ifcfaceouterbound' in typeof(temp)])) <= 1
def calc_IfcFaceBasedSurfaceModel_Dim(self):
return \
3
class IfcFanType_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcFanType"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcFanTypeEnum.USERDEFINED) or ((predefinedtype == IfcFanTypeEnum.USERDEFINED) and exists(self.ElementType))
class IfcFillAreaStyle_WR11:
SCOPE = "entity"
TYPE_NAME = "IfcFillAreaStyle"
RULE_NAME = "WR11"
@staticmethod
def __call__(self):
assert (sizeof([style for style in self.FillStyles if 'ifc2x3.ifccolour' in typeof(style)])) <= 1
class IfcFillAreaStyle_WR12:
SCOPE = "entity"
TYPE_NAME = "IfcFillAreaStyle"
RULE_NAME = "WR12"
@staticmethod
def __call__(self):
assert (sizeof([style for style in self.FillStyles if 'ifc2x3.ifcexternallydefinedhatchstyle' in typeof(style)])) <= 1
class IfcFillAreaStyle_WR13:
SCOPE = "entity"
TYPE_NAME = "IfcFillAreaStyle"
RULE_NAME = "WR13"
@staticmethod
def __call__(self):
assert IfcCorrectFillAreaStyle(self.FillStyles)
class IfcFillAreaStyleHatching_WR21:
SCOPE = "entity"
TYPE_NAME = "IfcFillAreaStyleHatching"
RULE_NAME = "WR21"
@staticmethod
def __call__(self):
startofnexthatchline = self.StartOfNextHatchLine
assert not 'ifc2x3.ifctwodirectionrepeatfactor' in typeof(startofnexthatchline)
class IfcFillAreaStyleHatching_WR22:
SCOPE = "entity"
TYPE_NAME = "IfcFillAreaStyleHatching"
RULE_NAME = "WR22"
@staticmethod
def __call__(self):
patternstart = self.PatternStart
assert (not exists(patternstart)) or (patternstart.Dim == 2)
class IfcFillAreaStyleHatching_WR23:
SCOPE = "entity"
TYPE_NAME = "IfcFillAreaStyleHatching"
RULE_NAME = "WR23"
@staticmethod
def __call__(self):
pointofreferencehatchline = self.PointOfReferenceHatchLine
assert (not exists(pointofreferencehatchline)) or (pointofreferencehatchline.Dim == 2)
class IfcFilterType_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcFilterType"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcFilterTypeEnum.USERDEFINED) or ((predefinedtype == IfcFilterTypeEnum.USERDEFINED) and exists(self.ElementType))
class IfcFlowMeterType_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcFlowMeterType"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcFlowMeterTypeEnum.USERDEFINED) or ((predefinedtype == IfcFlowMeterTypeEnum.USERDEFINED) and exists(self.ElementType))
class IfcFooting_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcFooting"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcFootingTypeEnum.USERDEFINED) or ((predefinedtype == IfcFootingTypeEnum.USERDEFINED) and exists(self.ObjectType))
class IfcGasTerminalType_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcGasTerminalType"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcGasTerminalTypeEnum.USERDEFINED) or ((predefinedtype == IfcGasTerminalTypeEnum.USERDEFINED) and exists(self.ElementType))
class IfcGeneralProfileProperties_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcGeneralProfileProperties"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
crosssectionarea = self.CrossSectionArea
assert (not exists(crosssectionarea)) or (crosssectionarea > 0.)
class IfcGeometricCurveSet_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcGeometricCurveSet"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert (sizeof([temp for temp in self.Elements if 'ifc2x3.ifcsurface' in typeof(temp)])) == 0
class IfcGeometricRepresentationSubContext_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcGeometricRepresentationSubContext"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
parentcontext = self.ParentContext
assert not 'ifc2x3.ifcgeometricrepresentationsubcontext' in typeof(parentcontext)
class IfcGeometricRepresentationSubContext_WR32:
SCOPE = "entity"
TYPE_NAME = "IfcGeometricRepresentationSubContext"
RULE_NAME = "WR32"
@staticmethod
def __call__(self):
targetview = self.TargetView
userdefinedtargetview = self.UserDefinedTargetView
assert (targetview != IfcGeometricProjectionEnum.USERDEFINED) or ((targetview == IfcGeometricProjectionEnum.USERDEFINED) and exists(userdefinedtargetview))
def calc_IfcGeometricRepresentationSubContext_WorldCoordinateSystem(self):
parentcontext = self.ParentContext
return \
parentcontext.WorldCoordinateSystem
def calc_IfcGeometricRepresentationSubContext_CoordinateSpaceDimension(self):
parentcontext = self.ParentContext
return \
parentcontext.CoordinateSpaceDimension
def calc_IfcGeometricRepresentationSubContext_TrueNorth(self):
parentcontext = self.ParentContext
return \
nvl(parentcontext.TrueNorth,self.WorldCoordinateSystem.P[2 - 1])
def calc_IfcGeometricRepresentationSubContext_Precision(self):
parentcontext = self.ParentContext
return \
nvl(parentcontext.Precision,1)
class IfcGeometricSet_WR21:
SCOPE = "entity"
TYPE_NAME = "IfcGeometricSet"
RULE_NAME = "WR21"
@staticmethod
def __call__(self):
elements = self.Elements
assert (sizeof([temp for temp in elements if temp.Dim != (elements[1 - 1].Dim)])) == 0
def calc_IfcGeometricSet_Dim(self):
elements = self.Elements
return \
elements[1 - 1].Dim
class IfcGrid_WR41:
SCOPE = "entity"
TYPE_NAME = "IfcGrid"
RULE_NAME = "WR41"
@staticmethod
def __call__(self):
assert exists(self.ObjectPlacement)
class IfcGridAxis_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcGridAxis"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
axiscurve = self.AxisCurve
assert axiscurve.Dim == 2
class IfcGridAxis_WR2:
SCOPE = "entity"
TYPE_NAME = "IfcGridAxis"
RULE_NAME = "WR2"
@staticmethod
def __call__(self):
partofw = self.PartOfW
partofv = self.PartOfV
partofu = self.PartOfU
assert (sizeof(partofu) == 1) ^ (sizeof(partofv) == 1) ^ (sizeof(partofw) == 1)
def calc_IfcHalfSpaceSolid_Dim(self):
return \
3
class IfcHeatExchangerType_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcHeatExchangerType"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcHeatExchangerTypeEnum.USERDEFINED) or ((predefinedtype == IfcHeatExchangerTypeEnum.USERDEFINED) and exists(self.ElementType))
class IfcHumidifierType_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcHumidifierType"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcHumidifierTypeEnum.USERDEFINED) or ((predefinedtype == IfcHumidifierTypeEnum.USERDEFINED) and exists(self.ElementType))
class IfcIShapeProfileDef_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcIShapeProfileDef"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
overalldepth = self.OverallDepth
flangethickness = self.FlangeThickness
assert flangethickness < (overalldepth / 2.)
class IfcIShapeProfileDef_WR2:
SCOPE = "entity"
TYPE_NAME = "IfcIShapeProfileDef"
RULE_NAME = "WR2"
@staticmethod
def __call__(self):
overallwidth = self.OverallWidth
webthickness = self.WebThickness
assert webthickness < overallwidth
class IfcIShapeProfileDef_WR3:
SCOPE = "entity"
TYPE_NAME = "IfcIShapeProfileDef"
RULE_NAME = "WR3"
@staticmethod
def __call__(self):
overallwidth = self.OverallWidth
overalldepth = self.OverallDepth
webthickness = self.WebThickness
flangethickness = self.FlangeThickness
filletradius = self.FilletRadius
assert (not exists(filletradius)) or ((filletradius <= ((overallwidth - webthickness) / 2.)) and (filletradius <= ((overalldepth - (2. * flangethickness)) / 2.)))
class IfcInventory_WR41:
SCOPE = "entity"
TYPE_NAME = "IfcInventory"
RULE_NAME = "WR41"
@staticmethod
def __call__(self):
assert (sizeof([temp for temp in self.IsGroupedBy.RelatedObjects if not ('ifc2x3.ifcspace' in typeof(temp)) or ('ifc2x3.ifcasset' in typeof(temp)) or ('ifc2x3.ifcfurnishingelement' in typeof(temp))])) == 0
class IfcLShapeProfileDef_WR21:
SCOPE = "entity"
TYPE_NAME = "IfcLShapeProfileDef"
RULE_NAME = "WR21"
@staticmethod
def __call__(self):
depth = self.Depth
thickness = self.Thickness
assert thickness < depth
class IfcLShapeProfileDef_WR22:
SCOPE = "entity"
TYPE_NAME = "IfcLShapeProfileDef"
RULE_NAME = "WR22"
@staticmethod
def __call__(self):
width = self.Width
thickness = self.Thickness
assert (not exists(width)) or (thickness < width)
class IfcLine_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcLine"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
pnt = self.Pnt
dir = self.Dir
assert dir.Dim == pnt.Dim
class IfcLocalPlacement_WR21:
SCOPE = "entity"
TYPE_NAME = "IfcLocalPlacement"
RULE_NAME = "WR21"
@staticmethod
def __call__(self):
placementrelto = self.PlacementRelTo
relativeplacement = self.RelativePlacement
assert IfcCorrectLocalPlacement(relativeplacement,placementrelto)
class IfcLocalTime_WR21:
SCOPE = "entity"
TYPE_NAME = "IfcLocalTime"
RULE_NAME = "WR21"
@staticmethod
def __call__(self):
assert IfcValidTime(self)
class IfcMaterialDefinitionRepresentation_WR11:
SCOPE = "entity"
TYPE_NAME = "IfcMaterialDefinitionRepresentation"
RULE_NAME = "WR11"
@staticmethod
def __call__(self):
representations = self.Representations
assert (sizeof([temp for temp in representations if not 'ifc2x3.ifcstyledrepresentation' in typeof(temp)])) == 0
def calc_IfcMaterialLayerSet_TotalThickness(self):
return \
IfcMlsTotalThickness(self)
class IfcMechanicalMaterialProperties_WR21:
SCOPE = "entity"
TYPE_NAME = "IfcMechanicalMaterialProperties"
RULE_NAME = "WR21"
@staticmethod
def __call__(self):
youngmodulus = self.YoungModulus
assert (not exists(youngmodulus)) or (youngmodulus >= 0.0)
class IfcMechanicalMaterialProperties_WR22:
SCOPE = "entity"
TYPE_NAME = "IfcMechanicalMaterialProperties"
RULE_NAME = "WR22"
@staticmethod
def __call__(self):
shearmodulus = self.ShearModulus
assert (not exists(shearmodulus)) or (shearmodulus >= 0.0)
class IfcMechanicalSteelMaterialProperties_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcMechanicalSteelMaterialProperties"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
yieldstress = self.YieldStress
assert (not exists(yieldstress)) or (yieldstress >= 0.)
class IfcMechanicalSteelMaterialProperties_WR32:
SCOPE = "entity"
TYPE_NAME = "IfcMechanicalSteelMaterialProperties"
RULE_NAME = "WR32"
@staticmethod
def __call__(self):
ultimatestress = self.UltimateStress
assert (not exists(ultimatestress)) or (ultimatestress >= 0.)
class IfcMechanicalSteelMaterialProperties_WR33:
SCOPE = "entity"
TYPE_NAME = "IfcMechanicalSteelMaterialProperties"
RULE_NAME = "WR33"
@staticmethod
def __call__(self):
hardeningmodule = self.HardeningModule
assert (not exists(hardeningmodule)) or (hardeningmodule >= 0.)
class IfcMechanicalSteelMaterialProperties_WR34:
SCOPE = "entity"
TYPE_NAME = "IfcMechanicalSteelMaterialProperties"
RULE_NAME = "WR34"
@staticmethod
def __call__(self):
proportionalstress = self.ProportionalStress
assert (not exists(proportionalstress)) or (proportionalstress >= 0.)
class IfcMove_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcMove"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert sizeof(self.OperatesOn) >= 1
class IfcMove_WR2:
SCOPE = "entity"
TYPE_NAME = "IfcMove"
RULE_NAME = "WR2"
@staticmethod
def __call__(self):
operateson = self.OperatesOn
assert (sizeof([temp for temp in operateson if (sizeof([temp2 for temp2 in temp.RelatedObjects if ('ifc2x3.ifcactor' in typeof(temp2)) or ('ifc2x3.ifcequipmentelement' in typeof(temp2)) or ('ifc2x3.ifcfurnishingelement' in typeof(temp2))])) >= 1])) >= 1
class IfcMove_WR3:
SCOPE = "entity"
TYPE_NAME = "IfcMove"
RULE_NAME = "WR3"
@staticmethod
def __call__(self):
assert exists(self.Name)
class IfcNamedUnit_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcNamedUnit"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert IfcCorrectDimensions(self.UnitType,self.Dimensions)
class IfcObject_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcObject"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
isdefinedby = self.IsDefinedBy
assert (sizeof([temp for temp in isdefinedby if 'ifc2x3.ifcreldefinesbytype' in typeof(temp)])) <= 1
class IfcObjective_WR21:
SCOPE = "entity"
TYPE_NAME = "IfcObjective"
RULE_NAME = "WR21"
@staticmethod
def __call__(self):
objectivequalifier = self.ObjectiveQualifier
assert (objectivequalifier != IfcObjectiveEnum.USERDEFINED) or ((objectivequalifier == IfcObjectiveEnum.USERDEFINED) and exists(self.UserDefinedQualifier))
class IfcOccupant_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcOccupant"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (not predefinedtype == IfcOccupantTypeEnum.USERDEFINED) or exists(self.ObjectType)
class IfcOffsetCurve2D_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcOffsetCurve2D"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
basiscurve = self.BasisCurve
assert basiscurve.Dim == 2
class IfcOffsetCurve3D_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcOffsetCurve3D"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
basiscurve = self.BasisCurve
assert basiscurve.Dim == 3
class IfcOrientedEdge_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcOrientedEdge"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
edgeelement = self.EdgeElement
assert not 'ifc2x3.ifcorientededge' in typeof(edgeelement)
def calc_IfcOrientedEdge_EdgeStart(self):
edgeelement = self.EdgeElement
orientation = self.Orientation
return \
IfcBooleanChoose(orientation,edgeelement.EdgeStart,edgeelement.EdgeEnd)
def calc_IfcOrientedEdge_EdgeEnd(self):
edgeelement = self.EdgeElement
orientation = self.Orientation
return \
IfcBooleanChoose(orientation,edgeelement.EdgeEnd,edgeelement.EdgeStart)
class IfcPath_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcPath"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert IfcPathHeadToTail(self)
class IfcPerson_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcPerson"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
familyname = self.FamilyName
givenname = self.GivenName
assert exists(familyname) or exists(givenname)
class IfcPhysicalComplexQuantity_WR21:
SCOPE = "entity"
TYPE_NAME = "IfcPhysicalComplexQuantity"
RULE_NAME = "WR21"
@staticmethod
def __call__(self):
hasquantities = self.HasQuantities
assert (sizeof([temp for temp in hasquantities if self == temp])) == 0
class IfcPile_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcPile"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcPileTypeEnum.USERDEFINED) or ((predefinedtype == IfcPileTypeEnum.USERDEFINED) and exists(self.ObjectType))
class IfcPipeFittingType_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcPipeFittingType"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcPipeFittingTypeEnum.USERDEFINED) or ((predefinedtype == IfcPipeFittingTypeEnum.USERDEFINED) and exists(self.ElementType))
class IfcPipeSegmentType_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcPipeSegmentType"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcPipeSegmentTypeEnum.USERDEFINED) or ((predefinedtype == IfcPipeSegmentTypeEnum.USERDEFINED) and exists(self.ElementType))
class IfcPixelTexture_WR21:
SCOPE = "entity"
TYPE_NAME = "IfcPixelTexture"
RULE_NAME = "WR21"
@staticmethod
def __call__(self):
width = self.Width
assert width >= 1
class IfcPixelTexture_WR22:
SCOPE = "entity"
TYPE_NAME = "IfcPixelTexture"
RULE_NAME = "WR22"
@staticmethod
def __call__(self):
height = self.Height
assert height >= 1
class IfcPixelTexture_WR23:
SCOPE = "entity"
TYPE_NAME = "IfcPixelTexture"
RULE_NAME = "WR23"
@staticmethod
def __call__(self):
colourcomponents = self.ColourComponents
assert 1 <= colourcomponents <= 4
class IfcPixelTexture_WR24:
SCOPE = "entity"
TYPE_NAME = "IfcPixelTexture"
RULE_NAME = "WR24"
@staticmethod
def __call__(self):
width = self.Width
height = self.Height
pixel = self.Pixel
assert sizeof(pixel) == (width * height)
def calc_IfcPlacement_Dim(self):
location = self.Location
return \
location.Dim
def calc_IfcPointOnCurve_Dim(self):
basiscurve = self.BasisCurve
return \
basiscurve.Dim
def calc_IfcPointOnSurface_Dim(self):
basissurface = self.BasisSurface
return \
basissurface.Dim
class IfcPolyLoop_WR21:
SCOPE = "entity"
TYPE_NAME = "IfcPolyLoop"
RULE_NAME = "WR21"
@staticmethod
def __call__(self):
polygon = self.Polygon
assert (sizeof([temp for temp in polygon if temp.Dim != (polygon[1 - 1].Dim)])) == 0
class IfcPolygonalBoundedHalfSpace_WR41:
SCOPE = "entity"
TYPE_NAME = "IfcPolygonalBoundedHalfSpace"
RULE_NAME = "WR41"
@staticmethod
def __call__(self):
polygonalboundary = self.PolygonalBoundary
assert polygonalboundary.Dim == 2
class IfcPolygonalBoundedHalfSpace_WR42:
SCOPE = "entity"
TYPE_NAME = "IfcPolygonalBoundedHalfSpace"
RULE_NAME = "WR42"
@staticmethod
def __call__(self):
polygonalboundary = self.PolygonalBoundary
assert (sizeof(typeof(polygonalboundary) * ['ifc2x3.ifcpolyline','ifc2x3.ifccompositecurve'])) == 1
class IfcPolyline_WR41:
SCOPE = "entity"
TYPE_NAME = "IfcPolyline"
RULE_NAME = "WR41"
@staticmethod
def __call__(self):
points = self.Points
assert (sizeof([temp for temp in points if temp.Dim != (points[1 - 1].Dim)])) == 0
class IfcPostalAddress_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcPostalAddress"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
internallocation = self.InternalLocation
addresslines = self.AddressLines
postalbox = self.PostalBox
town = self.Town
region = self.Region
postalcode = self.PostalCode
country = self.Country
assert exists(internallocation) or exists(addresslines) or exists(postalbox) or exists(postalcode) or exists(town) or exists(region) or exists(country)
class IfcPreDefinedDimensionSymbol_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcPreDefinedDimensionSymbol"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
assert self.Name in ['arclength','conicaltaper','counterbore','countersink','depth','diameter','plusminus','radius','slope','sphericaldiameter','sphericalradius','square']
class IfcPreDefinedPointMarkerSymbol_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcPreDefinedPointMarkerSymbol"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
assert self.Name in ['asterisk','circle','dot','plus','square','triangle','x']
class IfcPreDefinedTerminatorSymbol_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcPreDefinedTerminatorSymbol"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
assert self.Name in ['blankedarrow','blankedbox','blankeddot','dimensionorigin','filledarrow','filledbox','filleddot','integralsymbol','openarrow','slash','unfilledarrow']
class IfcProcedure_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcProcedure"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert (sizeof([temp for temp in self.Decomposes if not 'ifc2x3.ifcrelnests' in typeof(temp)])) == 0
class IfcProcedure_WR2:
SCOPE = "entity"
TYPE_NAME = "IfcProcedure"
RULE_NAME = "WR2"
@staticmethod
def __call__(self):
assert (sizeof([temp for temp in self.IsDecomposedBy if not 'ifc2x3.ifcrelnests' in typeof(temp)])) == 0
class IfcProcedure_WR3:
SCOPE = "entity"
TYPE_NAME = "IfcProcedure"
RULE_NAME = "WR3"
@staticmethod
def __call__(self):
assert exists(self.Name)
class IfcProcedure_WR4:
SCOPE = "entity"
TYPE_NAME = "IfcProcedure"
RULE_NAME = "WR4"
@staticmethod
def __call__(self):
proceduretype = self.ProcedureType
assert (proceduretype != IfcProcedureTypeEnum.USERDEFINED) or ((proceduretype == IfcProcedureTypeEnum.USERDEFINED) and exists(self.UserDefinedProcedureType))
class IfcProduct_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcProduct"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
objectplacement = self.ObjectPlacement
representation = self.Representation
assert (exists(representation) and exists(objectplacement)) or (exists(representation) and (not 'ifc2x3.ifcproductdefinitionshape' in typeof(representation))) or (not exists(representation))
class IfcProductDefinitionShape_WR11:
SCOPE = "entity"
TYPE_NAME = "IfcProductDefinitionShape"
RULE_NAME = "WR11"
@staticmethod
def __call__(self):
representations = self.Representations
assert (sizeof([temp for temp in representations if not 'ifc2x3.ifcshapemodel' in typeof(temp)])) == 0
class IfcProject_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcProject"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
assert exists(self.Name)
class IfcProject_WR32:
SCOPE = "entity"
TYPE_NAME = "IfcProject"
RULE_NAME = "WR32"
@staticmethod
def __call__(self):
representationcontexts = self.RepresentationContexts
assert (sizeof([temp for temp in representationcontexts if 'ifc2x3.ifcgeometricrepresentationsubcontext' in typeof(temp)])) == 0
class IfcProject_WR33:
SCOPE = "entity"
TYPE_NAME = "IfcProject"
RULE_NAME = "WR33"
@staticmethod
def __call__(self):
assert sizeof(self.Decomposes) == 0
class IfcPropertyBoundedValue_WR21:
SCOPE = "entity"
TYPE_NAME = "IfcPropertyBoundedValue"
RULE_NAME = "WR21"
@staticmethod
def __call__(self):
upperboundvalue = self.UpperBoundValue
lowerboundvalue = self.LowerBoundValue
assert (not exists(upperboundvalue)) or (not exists(lowerboundvalue)) or (typeof(upperboundvalue) == typeof(lowerboundvalue))
class IfcPropertyBoundedValue_WR22:
SCOPE = "entity"
TYPE_NAME = "IfcPropertyBoundedValue"
RULE_NAME = "WR22"
@staticmethod
def __call__(self):
upperboundvalue = self.UpperBoundValue
lowerboundvalue = self.LowerBoundValue
assert exists(upperboundvalue) or exists(lowerboundvalue)
class IfcPropertyDependencyRelationship_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcPropertyDependencyRelationship"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
dependingproperty = self.DependingProperty
dependantproperty = self.DependantProperty
assert dependingproperty != dependantproperty
class IfcPropertyEnumeratedValue_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcPropertyEnumeratedValue"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
enumerationvalues = self.EnumerationValues
enumerationreference = self.EnumerationReference
assert (not exists(enumerationreference)) or ((sizeof([temp for temp in enumerationvalues if temp in enumerationreference.EnumerationValues])) == sizeof(enumerationvalues))
class IfcPropertyEnumeration_WR01:
SCOPE = "entity"
TYPE_NAME = "IfcPropertyEnumeration"
RULE_NAME = "WR01"
@staticmethod
def __call__(self):
assert (sizeof([temp for temp in self.EnumerationValues if not (typeof(self.EnumerationValues[1 - 1])) == typeof(temp)])) == 0
class IfcPropertyListValue_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcPropertyListValue"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
assert (sizeof([temp for temp in self.ListValues if not (typeof(self.ListValues[1 - 1])) == typeof(temp)])) == 0
class IfcPropertySet_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcPropertySet"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
assert exists(self.Name)
class IfcPropertySet_WR32:
SCOPE = "entity"
TYPE_NAME = "IfcPropertySet"
RULE_NAME = "WR32"
@staticmethod
def __call__(self):
hasproperties = self.HasProperties
assert IfcUniquePropertyName(hasproperties)
class IfcPropertyTableValue_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcPropertyTableValue"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
definingvalues = self.DefiningValues
definedvalues = self.DefinedValues
assert sizeof(definingvalues) == sizeof(definedvalues)
class IfcPropertyTableValue_WR2:
SCOPE = "entity"
TYPE_NAME = "IfcPropertyTableValue"
RULE_NAME = "WR2"
@staticmethod
def __call__(self):
assert (sizeof([temp for temp in self.DefiningValues if typeof(temp) != (typeof(self.DefiningValues[1 - 1]))])) == 0
class IfcPropertyTableValue_WR3:
SCOPE = "entity"
TYPE_NAME = "IfcPropertyTableValue"
RULE_NAME = "WR3"
@staticmethod
def __call__(self):
assert (sizeof([temp for temp in self.DefinedValues if typeof(temp) != (typeof(self.DefinedValues[1 - 1]))])) == 0
class IfcProxy_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcProxy"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert exists(self.Name)
class IfcPumpType_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcPumpType"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcPumpTypeEnum.USERDEFINED) or ((predefinedtype == IfcPumpTypeEnum.USERDEFINED) and exists(self.ElementType))
class IfcQuantityArea_WR21:
SCOPE = "entity"
TYPE_NAME = "IfcQuantityArea"
RULE_NAME = "WR21"
@staticmethod
def __call__(self):
assert (not exists(self.Unit)) or (self.Unit.UnitType == IfcUnitEnum.AREAUNIT)
class IfcQuantityArea_WR22:
SCOPE = "entity"
TYPE_NAME = "IfcQuantityArea"
RULE_NAME = "WR22"
@staticmethod
def __call__(self):
areavalue = self.AreaValue
assert areavalue >= 0.
class IfcQuantityCount_WR21:
SCOPE = "entity"
TYPE_NAME = "IfcQuantityCount"
RULE_NAME = "WR21"
@staticmethod
def __call__(self):
countvalue = self.CountValue
assert countvalue >= 0.
class IfcQuantityLength_WR21:
SCOPE = "entity"
TYPE_NAME = "IfcQuantityLength"
RULE_NAME = "WR21"
@staticmethod
def __call__(self):
assert (not exists(self.Unit)) or (self.Unit.UnitType == IfcUnitEnum.LENGTHUNIT)
class IfcQuantityLength_WR22:
SCOPE = "entity"
TYPE_NAME = "IfcQuantityLength"
RULE_NAME = "WR22"
@staticmethod
def __call__(self):
lengthvalue = self.LengthValue
assert lengthvalue >= 0.
class IfcQuantityTime_WR21:
SCOPE = "entity"
TYPE_NAME = "IfcQuantityTime"
RULE_NAME = "WR21"
@staticmethod
def __call__(self):
assert (not exists(self.Unit)) or (self.Unit.UnitType == IfcUnitEnum.TIMEUNIT)
class IfcQuantityTime_WR22:
SCOPE = "entity"
TYPE_NAME = "IfcQuantityTime"
RULE_NAME = "WR22"
@staticmethod
def __call__(self):
timevalue = self.TimeValue
assert timevalue >= 0.
class IfcQuantityVolume_WR21:
SCOPE = "entity"
TYPE_NAME = "IfcQuantityVolume"
RULE_NAME = "WR21"
@staticmethod
def __call__(self):
assert (not exists(self.Unit)) or (self.Unit.UnitType == IfcUnitEnum.VOLUMEUNIT)
class IfcQuantityVolume_WR22:
SCOPE = "entity"
TYPE_NAME = "IfcQuantityVolume"
RULE_NAME = "WR22"
@staticmethod
def __call__(self):
volumevalue = self.VolumeValue
assert volumevalue >= 0.
class IfcQuantityWeight_WR21:
SCOPE = "entity"
TYPE_NAME = "IfcQuantityWeight"
RULE_NAME = "WR21"
@staticmethod
def __call__(self):
assert (not exists(self.Unit)) or (self.Unit.UnitType == IfcUnitEnum.MASSUNIT)
class IfcQuantityWeight_WR22:
SCOPE = "entity"
TYPE_NAME = "IfcQuantityWeight"
RULE_NAME = "WR22"
@staticmethod
def __call__(self):
weightvalue = self.WeightValue
assert weightvalue >= 0.
class IfcRailing_WR61:
SCOPE = "entity"
TYPE_NAME = "IfcRailing"
RULE_NAME = "WR61"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (not exists(predefinedtype)) or (predefinedtype != IfcRailingTypeEnum.USERDEFINED) or ((predefinedtype == IfcRailingTypeEnum.USERDEFINED) and exists(self.ObjectType))
class IfcRamp_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcRamp"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert (hiindex(self.IsDecomposedBy) == 0) or ((hiindex(self.IsDecomposedBy) == 1) and (not exists(self.Representation)))
class IfcRationalBezierCurve_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcRationalBezierCurve"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
weightsdata = self.WeightsData
assert sizeof(weightsdata) == sizeof(self.ControlPointsList)
class IfcRationalBezierCurve_WR2:
SCOPE = "entity"
TYPE_NAME = "IfcRationalBezierCurve"
RULE_NAME = "WR2"
@staticmethod
def __call__(self):
assert IfcCurveWeightsPositive(self)
def calc_IfcRationalBezierCurve_Weights(self):
weightsdata = self.WeightsData
return \
IfcListToArray(weightsdata,0,self.UpperIndexOnControlPoints)
class IfcRectangleHollowProfileDef_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcRectangleHollowProfileDef"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
wallthickness = self.WallThickness
assert (wallthickness < (self.XDim / 2.)) and (wallthickness < (self.YDim / 2.))
class IfcRectangleHollowProfileDef_WR32:
SCOPE = "entity"
TYPE_NAME = "IfcRectangleHollowProfileDef"
RULE_NAME = "WR32"
@staticmethod
def __call__(self):
outerfilletradius = self.OuterFilletRadius
assert (not exists(outerfilletradius)) or ((outerfilletradius <= (self.XDim / 2.)) and (outerfilletradius <= (self.YDim / 2.)))
class IfcRectangleHollowProfileDef_WR33:
SCOPE = "entity"
TYPE_NAME = "IfcRectangleHollowProfileDef"
RULE_NAME = "WR33"
@staticmethod
def __call__(self):
wallthickness = self.WallThickness
innerfilletradius = self.InnerFilletRadius
assert (not exists(innerfilletradius)) or ((innerfilletradius <= ((self.XDim / 2.) - wallthickness)) and (innerfilletradius <= ((self.YDim / 2.) - wallthickness)))
class IfcRectangularTrimmedSurface_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcRectangularTrimmedSurface"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
u1 = self.U1
u2 = self.U2
assert u1 != u2
class IfcRectangularTrimmedSurface_WR2:
SCOPE = "entity"
TYPE_NAME = "IfcRectangularTrimmedSurface"
RULE_NAME = "WR2"
@staticmethod
def __call__(self):
v1 = self.V1
v2 = self.V2
assert v1 != v2
class IfcRectangularTrimmedSurface_WR3:
SCOPE = "entity"
TYPE_NAME = "IfcRectangularTrimmedSurface"
RULE_NAME = "WR3"
@staticmethod
def __call__(self):
basissurface = self.BasisSurface
u1 = self.U1
u2 = self.U2
usense = self.Usense
assert (('ifc2x3.ifcelementarysurface' in typeof(basissurface)) and (not 'ifc2x3.ifcplane' in typeof(basissurface))) or ('ifc2x3.ifcsurfaceofrevolution' in typeof(basissurface)) or (usense == (u2 > u1))
class IfcRectangularTrimmedSurface_WR4:
SCOPE = "entity"
TYPE_NAME = "IfcRectangularTrimmedSurface"
RULE_NAME = "WR4"
@staticmethod
def __call__(self):
v1 = self.V1
v2 = self.V2
vsense = self.Vsense
assert vsense == (v2 > v1)
def calc_IfcRectangularTrimmedSurface_Dim(self):
basissurface = self.BasisSurface
return \
basissurface.Dim
class IfcReinforcingBar_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcReinforcingBar"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
barrole = self.BarRole
assert (barrole != IfcReinforcingBarRoleEnum.USERDEFINED) or ((barrole == IfcReinforcingBarRoleEnum.USERDEFINED) and exists(self.ObjectType))
class IfcRelAssigns_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcRelAssigns"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
relatedobjects = self.RelatedObjects
relatedobjectstype = self.RelatedObjectsType
assert IfcCorrectObjectAssignment(relatedobjectstype,relatedobjects)
class IfcRelAssignsTasks_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcRelAssignsTasks"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert hiindex(self.RelatedObjects) == 1
class IfcRelAssignsTasks_WR2:
SCOPE = "entity"
TYPE_NAME = "IfcRelAssignsTasks"
RULE_NAME = "WR2"
@staticmethod
def __call__(self):
assert 'ifc2x3.ifctask' in (typeof(self.RelatedObjects[1 - 1]))
class IfcRelAssignsTasks_WR3:
SCOPE = "entity"
TYPE_NAME = "IfcRelAssignsTasks"
RULE_NAME = "WR3"
@staticmethod
def __call__(self):
assert 'ifc2x3.ifcworkcontrol' in typeof(self.RelatingControl)
class IfcRelAssignsToActor_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcRelAssignsToActor"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
relatingactor = self.RelatingActor
assert (sizeof([temp for temp in self.RelatedObjects if relatingactor == temp])) == 0
class IfcRelAssignsToControl_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcRelAssignsToControl"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
relatingcontrol = self.RelatingControl
assert (sizeof([temp for temp in self.RelatedObjects if relatingcontrol == temp])) == 0
class IfcRelAssignsToGroup_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcRelAssignsToGroup"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
relatinggroup = self.RelatingGroup
assert (sizeof([temp for temp in self.RelatedObjects if relatinggroup == temp])) == 0
class IfcRelAssignsToProcess_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcRelAssignsToProcess"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
relatingprocess = self.RelatingProcess
assert (sizeof([temp for temp in self.RelatedObjects if relatingprocess == temp])) == 0
class IfcRelAssignsToProduct_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcRelAssignsToProduct"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
relatingproduct = self.RelatingProduct
assert (sizeof([temp for temp in self.RelatedObjects if relatingproduct == temp])) == 0
class IfcRelAssignsToResource_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcRelAssignsToResource"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
relatingresource = self.RelatingResource
assert (sizeof([temp for temp in self.RelatedObjects if relatingresource == temp])) == 0
class IfcRelAssociates_WR21:
SCOPE = "entity"
TYPE_NAME = "IfcRelAssociates"
RULE_NAME = "WR21"
@staticmethod
def __call__(self):
relatedobjects = self.RelatedObjects
assert (sizeof([temp for temp in relatedobjects if not ('ifc2x3.ifcobjectdefinition' in typeof(temp)) or ('ifc2x3.ifcpropertydefinition' in typeof(temp))])) == 0
class IfcRelAssociatesMaterial_WR21:
SCOPE = "entity"
TYPE_NAME = "IfcRelAssociatesMaterial"
RULE_NAME = "WR21"
@staticmethod
def __call__(self):
assert (sizeof([temp for temp in self.RelatedObjects if ('ifc2x3.ifcfeatureelementsubtraction' in typeof(temp)) or ('ifc2x3.ifcvirtualelement' in typeof(temp))])) == 0
class IfcRelAssociatesMaterial_WR22:
SCOPE = "entity"
TYPE_NAME = "IfcRelAssociatesMaterial"
RULE_NAME = "WR22"
@staticmethod
def __call__(self):
assert (sizeof([temp for temp in self.RelatedObjects if (not 'ifc2x3.ifcproduct' in typeof(temp)) and (not 'ifc2x3.ifctypeproduct' in typeof(temp))])) == 0
class IfcRelConnectsElements_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcRelConnectsElements"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
relatingelement = self.RelatingElement
relatedelement = self.RelatedElement
assert relatingelement != relatedelement
class IfcRelContainedInSpatialStructure_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcRelContainedInSpatialStructure"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
relatedelements = self.RelatedElements
assert (sizeof([temp for temp in relatedelements if 'ifc2x3.ifcspatialstructureelement' in typeof(temp)])) == 0
class IfcRelDecomposes_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcRelDecomposes"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
relatingobject = self.RelatingObject
relatedobjects = self.RelatedObjects
assert (sizeof([temp for temp in relatedobjects if relatingobject == temp])) == 0
class IfcRelNests_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcRelNests"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert (sizeof([temp for temp in self.RelatedObjects if not typeof(self.RelatingObject) == typeof(temp)])) == 0
class IfcRelOverridesProperties_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcRelOverridesProperties"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert sizeof(self.RelatedObjects) == 1
class IfcRelReferencedInSpatialStructure_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcRelReferencedInSpatialStructure"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
relatedelements = self.RelatedElements
assert (sizeof([temp for temp in relatedelements if 'ifc2x3.ifcspatialstructureelement' in typeof(temp)])) == 0
class IfcRelSchedulesCostItems_WR11:
SCOPE = "entity"
TYPE_NAME = "IfcRelSchedulesCostItems"
RULE_NAME = "WR11"
@staticmethod
def __call__(self):
assert (sizeof([temp for temp in self.RelatedObjects if not 'ifc2x3.ifccostitem' in typeof(temp)])) == 0
class IfcRelSchedulesCostItems_WR12:
SCOPE = "entity"
TYPE_NAME = "IfcRelSchedulesCostItems"
RULE_NAME = "WR12"
@staticmethod
def __call__(self):
assert 'ifc2x3.ifccostschedule' in typeof(self.RelatingControl)
class IfcRelSequence_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcRelSequence"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
relatingprocess = self.RelatingProcess
relatedprocess = self.RelatedProcess
assert relatingprocess != relatedprocess
class IfcRelSpaceBoundary_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcRelSpaceBoundary"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
relatedbuildingelement = self.RelatedBuildingElement
physicalorvirtualboundary = self.PhysicalOrVirtualBoundary
assert ((physicalorvirtualboundary == IfcPhysicalOrVirtualEnum.Physical) and (exists(relatedbuildingelement) and (not 'ifc2x3.ifcvirtualelement' in typeof(relatedbuildingelement)))) or ((physicalorvirtualboundary == IfcPhysicalOrVirtualEnum.Virtual) and ((not exists(relatedbuildingelement)) or ('ifc2x3.ifcvirtualelement' in typeof(relatedbuildingelement)))) or (physicalorvirtualboundary == IfcPhysicalOrVirtualEnum.NotDefined)
class IfcRevolvedAreaSolid_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcRevolvedAreaSolid"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
axis = self.Axis
assert (axis.Location.Coordinates[3 - 1]) == 0.0
class IfcRevolvedAreaSolid_WR32:
SCOPE = "entity"
TYPE_NAME = "IfcRevolvedAreaSolid"
RULE_NAME = "WR32"
@staticmethod
def __call__(self):
axis = self.Axis
assert (axis.Z.DirectionRatios[3 - 1]) == 0.0
def calc_IfcRevolvedAreaSolid_AxisLine(self):
axis = self.Axis
return \
IfcLine(Pnt=axis.Location, Dir=IfcVector(Orientation=axis.Z, Magnitude=1.0))
class IfcRoof_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcRoof"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert (hiindex(self.IsDecomposedBy) == 0) or ((hiindex(self.IsDecomposedBy) == 1) and (not exists(self.Representation)))
class IfcRoundedRectangleProfileDef_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcRoundedRectangleProfileDef"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
roundingradius = self.RoundingRadius
assert (roundingradius <= (self.XDim / 2.)) and (roundingradius <= (self.YDim / 2.))
def calc_IfcSIUnit_Dimensions(self):
return \
IfcDimensionsForSiUnit(self.Name)
class IfcSectionedSpine_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcSectionedSpine"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
crosssections = self.CrossSections
crosssectionpositions = self.CrossSectionPositions
assert sizeof(crosssections) == sizeof(crosssectionpositions)
class IfcSectionedSpine_WR2:
SCOPE = "entity"
TYPE_NAME = "IfcSectionedSpine"
RULE_NAME = "WR2"
@staticmethod
def __call__(self):
crosssections = self.CrossSections
assert (sizeof([temp for temp in crosssections if (crosssections[1 - 1].ProfileType) != temp.ProfileType])) == 0
class IfcSectionedSpine_WR3:
SCOPE = "entity"
TYPE_NAME = "IfcSectionedSpine"
RULE_NAME = "WR3"
@staticmethod
def __call__(self):
spinecurve = self.SpineCurve
assert spinecurve.Dim == 3
def calc_IfcSectionedSpine_Dim(self):
return \
3
class IfcServiceLifeFactor_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcServiceLifeFactor"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (not predefinedtype == IfcServiceLifeFactorTypeEnum.USERDEFINED) or exists(self.ObjectType)
class IfcShapeModel_WR11:
SCOPE = "entity"
TYPE_NAME = "IfcShapeModel"
RULE_NAME = "WR11"
@staticmethod
def __call__(self):
ofshapeaspect = self.OfShapeAspect
assert (sizeof(self.OfProductRepresentation) == 1) ^ (sizeof(self.RepresentationMap) == 1) ^ (sizeof(ofshapeaspect) == 1)
class IfcShapeRepresentation_WR21:
SCOPE = "entity"
TYPE_NAME = "IfcShapeRepresentation"
RULE_NAME = "WR21"
@staticmethod
def __call__(self):
assert 'ifc2x3.ifcgeometricrepresentationcontext' in typeof(self.ContextOfItems)
class IfcShapeRepresentation_WR22:
SCOPE = "entity"
TYPE_NAME = "IfcShapeRepresentation"
RULE_NAME = "WR22"
@staticmethod
def __call__(self):
items = self.Items
assert (sizeof([temp for temp in items if ('ifc2x3.ifctopologicalrepresentationitem' in typeof(temp)) and (not (sizeof(['ifc2x3.ifcvertexpoint','ifc2x3.ifcedgecurve','ifc2x3.ifcfacesurface'] * typeof(temp))) == 1)])) == 0
class IfcShapeRepresentation_WR23:
SCOPE = "entity"
TYPE_NAME = "IfcShapeRepresentation"
RULE_NAME = "WR23"
@staticmethod
def __call__(self):
assert exists(self.RepresentationType)
class IfcShapeRepresentation_WR24:
SCOPE = "entity"
TYPE_NAME = "IfcShapeRepresentation"
RULE_NAME = "WR24"
@staticmethod
def __call__(self):
assert IfcShapeRepresentationTypes(self.RepresentationType,self.Items)
def calc_IfcShellBasedSurfaceModel_Dim(self):
return \
3
class IfcSlab_WR61:
SCOPE = "entity"
TYPE_NAME = "IfcSlab"
RULE_NAME = "WR61"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (not exists(predefinedtype)) or (predefinedtype != IfcSlabTypeEnum.USERDEFINED) or ((predefinedtype == IfcSlabTypeEnum.USERDEFINED) and exists(self.ObjectType))
def calc_IfcSolidModel_Dim(self):
return \
3
class IfcSpaceHeaterType_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcSpaceHeaterType"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcSpaceHeaterTypeEnum.USERDEFINED) or ((predefinedtype == IfcSpaceHeaterTypeEnum.USERDEFINED) and exists(self.ElementType))
class IfcSpatialStructureElement_WR41:
SCOPE = "entity"
TYPE_NAME = "IfcSpatialStructureElement"
RULE_NAME = "WR41"
@staticmethod
def __call__(self):
assert (hiindex(self.Decomposes) == 1) and ('ifc2x3.ifcrelaggregates' in (typeof(self.Decomposes[1 - 1]))) and (('ifc2x3.ifcproject' in (typeof(self.Decomposes[1 - 1].RelatingObject))) or ('ifc2x3.ifcspatialstructureelement' in (typeof(self.Decomposes[1 - 1].RelatingObject))))
class IfcStair_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcStair"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert (hiindex(self.IsDecomposedBy) == 0) or ((hiindex(self.IsDecomposedBy) == 1) and (not exists(self.Representation)))
class IfcStructuralLinearAction_WR61:
SCOPE = "entity"
TYPE_NAME = "IfcStructuralLinearAction"
RULE_NAME = "WR61"
@staticmethod
def __call__(self):
assert (sizeof(['ifc2x3.ifcstructuralloadlinearforce','ifc2x3.ifcstructuralloadtemperature'] * typeof(self.AppliedLoad))) == 1
def calc_IfcStructuralLinearActionVarying_VaryingAppliedLoads(self):
subsequentappliedloads = self.SubsequentAppliedLoads
return \
IfcAddToBeginOfList(self.AppliedLoad,subsequentappliedloads)
class IfcStructuralPlanarAction_WR61:
SCOPE = "entity"
TYPE_NAME = "IfcStructuralPlanarAction"
RULE_NAME = "WR61"
@staticmethod
def __call__(self):
assert (sizeof(['ifc2x3.ifcstructuralloadplanarforce','ifc2x3.ifcstructuralloadtemperature'] * typeof(self.AppliedLoad))) == 1
def calc_IfcStructuralPlanarActionVarying_VaryingAppliedLoads(self):
subsequentappliedloads = self.SubsequentAppliedLoads
return \
IfcAddToBeginOfList(self.AppliedLoad,subsequentappliedloads)
class IfcStructuralPointAction_WR61:
SCOPE = "entity"
TYPE_NAME = "IfcStructuralPointAction"
RULE_NAME = "WR61"
@staticmethod
def __call__(self):
assert (sizeof(['ifc2x3.ifcstructuralloadsingleforce','ifc2x3.ifcstructuralloadsingledisplacement'] * typeof(self.AppliedLoad))) == 1
class IfcStructuralPointReaction_WR61:
SCOPE = "entity"
TYPE_NAME = "IfcStructuralPointReaction"
RULE_NAME = "WR61"
@staticmethod
def __call__(self):
assert (sizeof(['ifc2x3.ifcstructuralloadsingleforce','ifc2x3.ifcstructuralloadsingledisplacement'] * typeof(self.AppliedLoad))) == 1
class IfcStructuralProfileProperties_WR21:
SCOPE = "entity"
TYPE_NAME = "IfcStructuralProfileProperties"
RULE_NAME = "WR21"
@staticmethod
def __call__(self):
sheardeformationareay = self.ShearDeformationAreaY
assert (not exists(sheardeformationareay)) or (sheardeformationareay >= 0.)
class IfcStructuralProfileProperties_WR22:
SCOPE = "entity"
TYPE_NAME = "IfcStructuralProfileProperties"
RULE_NAME = "WR22"
@staticmethod
def __call__(self):
sheardeformationareaz = self.ShearDeformationAreaZ
assert (not exists(sheardeformationareaz)) or (sheardeformationareaz >= 0.)
class IfcStructuralSteelProfileProperties_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcStructuralSteelProfileProperties"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
shearareay = self.ShearAreaY
assert (not exists(shearareay)) or (shearareay >= 0.)
class IfcStructuralSteelProfileProperties_WR32:
SCOPE = "entity"
TYPE_NAME = "IfcStructuralSteelProfileProperties"
RULE_NAME = "WR32"
@staticmethod
def __call__(self):
shearareaz = self.ShearAreaZ
assert (not exists(shearareaz)) or (shearareaz >= 0.)
class IfcStructuralSurfaceMemberVarying_WR61:
SCOPE = "entity"
TYPE_NAME = "IfcStructuralSurfaceMemberVarying"
RULE_NAME = "WR61"
@staticmethod
def __call__(self):
assert exists(self.Thickness)
class IfcStructuralSurfaceMemberVarying_WR62:
SCOPE = "entity"
TYPE_NAME = "IfcStructuralSurfaceMemberVarying"
RULE_NAME = "WR62"
@staticmethod
def __call__(self):
assert (sizeof([temp for temp in self.VaryingThicknessLocation.ShapeRepresentations if not sizeof(temp.Items) == 1])) == 0
class IfcStructuralSurfaceMemberVarying_WR63:
SCOPE = "entity"
TYPE_NAME = "IfcStructuralSurfaceMemberVarying"
RULE_NAME = "WR63"
@staticmethod
def __call__(self):
assert (sizeof([temp for temp in self.VaryingThicknessLocation.ShapeRepresentations if not ('ifc2x3.ifccartesianpoint' in (typeof(temp.Items[1 - 1]))) or ('ifc2x3.ifcpointonsurface' in (typeof(temp.Items[1 - 1])))])) == 0
def calc_IfcStructuralSurfaceMemberVarying_VaryingThickness(self):
subsequentthickness = self.SubsequentThickness
return \
IfcAddToBeginOfList(self.Thickness,subsequentthickness)
class IfcStructuredDimensionCallout_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcStructuredDimensionCallout"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
contents = self.Contents
assert (sizeof([ato for ato in [con for con in self.contents if 'ifc2x3.ifcannotationtextoccurrence' in typeof(con)] if not ato.Name in ['dimensionvalue','tolerancevalue','unittext','prefixtext','suffixtext']])) == 0
class IfcStyledItem_WR11:
SCOPE = "entity"
TYPE_NAME = "IfcStyledItem"
RULE_NAME = "WR11"
@staticmethod
def __call__(self):
styles = self.Styles
assert sizeof(styles) == 1
class IfcStyledItem_WR12:
SCOPE = "entity"
TYPE_NAME = "IfcStyledItem"
RULE_NAME = "WR12"
@staticmethod
def __call__(self):
item = self.Item
assert not 'ifc2x3.ifcstyleditem' in typeof(item)
class IfcStyledRepresentation_WR21:
SCOPE = "entity"
TYPE_NAME = "IfcStyledRepresentation"
RULE_NAME = "WR21"
@staticmethod
def __call__(self):
assert (sizeof([temp for temp in self.Items if not 'ifc2x3.ifcstyleditem' in typeof(temp)])) == 0
class IfcSurfaceOfLinearExtrusion_WR41:
SCOPE = "entity"
TYPE_NAME = "IfcSurfaceOfLinearExtrusion"
RULE_NAME = "WR41"
@staticmethod
def __call__(self):
depth = self.Depth
assert depth > 0.
def calc_IfcSurfaceOfLinearExtrusion_ExtrusionAxis(self):
extrudeddirection = self.ExtrudedDirection
depth = self.Depth
return \
IfcVector(Orientation=extrudeddirection, Magnitude=depth)
def calc_IfcSurfaceOfRevolution_AxisLine(self):
axisposition = self.AxisPosition
return \
IfcLine(Pnt=axisposition.Location, Dir=IfcVector(Orientation=axisposition.Z, Magnitude=1.0))
class IfcSurfaceStyle_WR11:
SCOPE = "entity"
TYPE_NAME = "IfcSurfaceStyle"
RULE_NAME = "WR11"
@staticmethod
def __call__(self):
assert (sizeof([style for style in self.Styles if 'ifc2x3.ifcsurfacestyleshading' in typeof(style)])) <= 1
class IfcSurfaceStyle_WR12:
SCOPE = "entity"
TYPE_NAME = "IfcSurfaceStyle"
RULE_NAME = "WR12"
@staticmethod
def __call__(self):
assert (sizeof([style for style in self.Styles if 'ifc2x3.ifcsurfacestylelighting' in typeof(style)])) <= 1
class IfcSurfaceStyle_WR13:
SCOPE = "entity"
TYPE_NAME = "IfcSurfaceStyle"
RULE_NAME = "WR13"
@staticmethod
def __call__(self):
assert (sizeof([style for style in self.Styles if 'ifc2x3.ifcsurfacestylerefraction' in typeof(style)])) <= 1
class IfcSurfaceStyle_WR14:
SCOPE = "entity"
TYPE_NAME = "IfcSurfaceStyle"
RULE_NAME = "WR14"
@staticmethod
def __call__(self):
assert (sizeof([style for style in self.Styles if 'ifc2x3.ifcsurfacestylewithtextures' in typeof(style)])) <= 1
class IfcSurfaceStyle_WR15:
SCOPE = "entity"
TYPE_NAME = "IfcSurfaceStyle"
RULE_NAME = "WR15"
@staticmethod
def __call__(self):
assert (sizeof([style for style in self.Styles if 'ifc2x3.ifcexternallydefinedsurfacestyle' in typeof(style)])) <= 1
class IfcSweptAreaSolid_WR22:
SCOPE = "entity"
TYPE_NAME = "IfcSweptAreaSolid"
RULE_NAME = "WR22"
@staticmethod
def __call__(self):
sweptarea = self.SweptArea
assert sweptarea.ProfileType == IfcProfileTypeEnum.Area
class IfcSweptDiskSolid_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcSweptDiskSolid"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
directrix = self.Directrix
assert directrix.Dim == 3
class IfcSweptDiskSolid_WR2:
SCOPE = "entity"
TYPE_NAME = "IfcSweptDiskSolid"
RULE_NAME = "WR2"
@staticmethod
def __call__(self):
radius = self.Radius
innerradius = self.InnerRadius
assert (not exists(innerradius)) or (radius > innerradius)
class IfcSweptSurface_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcSweptSurface"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
sweptcurve = self.SweptCurve
assert not 'ifc2x3.ifcderivedprofiledef' in typeof(sweptcurve)
class IfcSweptSurface_WR2:
SCOPE = "entity"
TYPE_NAME = "IfcSweptSurface"
RULE_NAME = "WR2"
@staticmethod
def __call__(self):
sweptcurve = self.SweptCurve
assert sweptcurve.ProfileType == IfcProfileTypeEnum.Curve
def calc_IfcSweptSurface_Dim(self):
position = self.Position
return \
position.Dim
class IfcTShapeProfileDef_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcTShapeProfileDef"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
depth = self.Depth
flangethickness = self.FlangeThickness
assert flangethickness < depth
class IfcTShapeProfileDef_WR2:
SCOPE = "entity"
TYPE_NAME = "IfcTShapeProfileDef"
RULE_NAME = "WR2"
@staticmethod
def __call__(self):
flangewidth = self.FlangeWidth
webthickness = self.WebThickness
assert webthickness < flangewidth
class IfcTable_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcTable"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
rows = self.Rows
assert (sizeof([temp for temp in rows if hiindex(temp.RowCells) != (hiindex(rows[1 - 1].RowCells))])) == 0
class IfcTable_WR2:
SCOPE = "entity"
TYPE_NAME = "IfcTable"
RULE_NAME = "WR2"
@staticmethod
def __call__(self):
rows = self.Rows
assert (sizeof([temp for temp in rows if hiindex(temp.RowCells) != (hiindex(rows[1 - 1].RowCells))])) == 0
class IfcTable_WR3:
SCOPE = "entity"
TYPE_NAME = "IfcTable"
RULE_NAME = "WR3"
@staticmethod
def __call__(self):
numberofheadings = self.NumberOfHeadings
assert 0 <= numberofheadings <= 1
def calc_IfcTable_NumberOfCellsInRow(self):
rows = self.Rows
return \
hiindex(rows[1 - 1].RowCells)
def calc_IfcTable_NumberOfHeadings(self):
rows = self.Rows
return \
sizeof([temp for temp in rows if temp.IsHeading])
def calc_IfcTable_NumberOfDataRows(self):
rows = self.Rows
return \
sizeof([temp for temp in rows if not temp.IsHeading])
class IfcTankType_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcTankType"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcTankTypeEnum.USERDEFINED) or ((predefinedtype == IfcTankTypeEnum.USERDEFINED) and exists(self.ElementType))
class IfcTask_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcTask"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert (sizeof([temp for temp in self.Decomposes if not 'ifc2x3.ifcrelnests' in typeof(temp)])) == 0
class IfcTask_WR2:
SCOPE = "entity"
TYPE_NAME = "IfcTask"
RULE_NAME = "WR2"
@staticmethod
def __call__(self):
assert (sizeof([temp for temp in self.IsDecomposedBy if not 'ifc2x3.ifcrelnests' in typeof(temp)])) == 0
class IfcTask_WR3:
SCOPE = "entity"
TYPE_NAME = "IfcTask"
RULE_NAME = "WR3"
@staticmethod
def __call__(self):
assert exists(self.Name)
class IfcTelecomAddress_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcTelecomAddress"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
telephonenumbers = self.TelephoneNumbers
facsimilenumbers = self.FacsimileNumbers
pagernumber = self.PagerNumber
electronicmailaddresses = self.ElectronicMailAddresses
wwwhomepageurl = self.WWWHomePageURL
assert exists(telephonenumbers) or exists(pagernumber) or exists(facsimilenumbers) or exists(electronicmailaddresses) or exists(wwwhomepageurl)
class IfcTendon_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcTendon"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcTendonTypeEnum.USERDEFINED) or ((predefinedtype == IfcTendonTypeEnum.USERDEFINED) and exists(self.ObjectType))
class IfcTextLiteralWithExtent_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcTextLiteralWithExtent"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
extent = self.Extent
assert not 'ifc2x3.ifcplanarbox' in typeof(extent)
class IfcTextStyleFontModel_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcTextStyleFontModel"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
assert ('ifc2x3.ifclengthmeasure' in typeof(self.FontSize)) and (self.FontSize > 0.)
class IfcTextureMap_WR11:
SCOPE = "entity"
TYPE_NAME = "IfcTextureMap"
RULE_NAME = "WR11"
@staticmethod
def __call__(self):
assert (sizeof(['ifc2x3.ifcshellbasedsurfacemodel','ifc2x3.ifcfacebasedsurfacemodel','ifc2x3.ifcfacetedbrep','ifc2x3.ifcfacetedbrepwithvoids'] * (typeof(self.AnnotatedSurface[1 - 1].Item)))) >= 1
class IfcTimeSeriesSchedule_WR41:
SCOPE = "entity"
TYPE_NAME = "IfcTimeSeriesSchedule"
RULE_NAME = "WR41"
@staticmethod
def __call__(self):
timeseriesscheduletype = self.TimeSeriesScheduleType
assert (not timeseriesscheduletype == IfcTimeSeriesScheduleTypeEnum.USERDEFINED) or exists(self.ObjectType)
class IfcTopologyRepresentation_WR21:
SCOPE = "entity"
TYPE_NAME = "IfcTopologyRepresentation"
RULE_NAME = "WR21"
@staticmethod
def __call__(self):
assert (sizeof([temp for temp in self.Items if not 'ifc2x3.ifctopologicalrepresentationitem' in typeof(temp)])) == 0
class IfcTopologyRepresentation_WR22:
SCOPE = "entity"
TYPE_NAME = "IfcTopologyRepresentation"
RULE_NAME = "WR22"
@staticmethod
def __call__(self):
assert exists(self.RepresentationType)
class IfcTopologyRepresentation_WR23:
SCOPE = "entity"
TYPE_NAME = "IfcTopologyRepresentation"
RULE_NAME = "WR23"
@staticmethod
def __call__(self):
assert IfcTopologyRepresentationTypes(self.RepresentationType,self.Items)
class IfcTrimmedCurve_WR41:
SCOPE = "entity"
TYPE_NAME = "IfcTrimmedCurve"
RULE_NAME = "WR41"
@staticmethod
def __call__(self):
trim1 = self.Trim1
assert (hiindex(trim1) == 1) or ((typeof(trim1[1 - 1])) != (typeof(trim1[2 - 1])))
class IfcTrimmedCurve_WR42:
SCOPE = "entity"
TYPE_NAME = "IfcTrimmedCurve"
RULE_NAME = "WR42"
@staticmethod
def __call__(self):
trim2 = self.Trim2
assert (hiindex(trim2) == 1) or ((typeof(trim2[1 - 1])) != (typeof(trim2[2 - 1])))
class IfcTrimmedCurve_WR43:
SCOPE = "entity"
TYPE_NAME = "IfcTrimmedCurve"
RULE_NAME = "WR43"
@staticmethod
def __call__(self):
basiscurve = self.BasisCurve
assert not 'ifc2x3.ifcboundedcurve' in typeof(basiscurve)
class IfcTubeBundleType_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcTubeBundleType"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcTubeBundleTypeEnum.USERDEFINED) or ((predefinedtype == IfcTubeBundleTypeEnum.USERDEFINED) and exists(self.ElementType))
class IfcTypeObject_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcTypeObject"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert exists(self.Name)
class IfcTypeProduct_WR41:
SCOPE = "entity"
TYPE_NAME = "IfcTypeProduct"
RULE_NAME = "WR41"
@staticmethod
def __call__(self):
assert (not exists(lambda: self.ObjectTypeOf[1 - 1])) or ((sizeof([temp for temp in self.ObjectTypeOf[1 - 1].RelatedObjects if not 'ifc2x3.ifcproduct' in typeof(temp)])) == 0)
class IfcUShapeProfileDef_WR21:
SCOPE = "entity"
TYPE_NAME = "IfcUShapeProfileDef"
RULE_NAME = "WR21"
@staticmethod
def __call__(self):
depth = self.Depth
flangethickness = self.FlangeThickness
assert flangethickness < (depth / 2.)
class IfcUShapeProfileDef_WR22:
SCOPE = "entity"
TYPE_NAME = "IfcUShapeProfileDef"
RULE_NAME = "WR22"
@staticmethod
def __call__(self):
flangewidth = self.FlangeWidth
webthickness = self.WebThickness
assert webthickness < flangewidth
class IfcUnitAssignment_WR01:
SCOPE = "entity"
TYPE_NAME = "IfcUnitAssignment"
RULE_NAME = "WR01"
@staticmethod
def __call__(self):
units = self.Units
assert IfcCorrectUnitAssignment(units)
class IfcUnitaryEquipmentType_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcUnitaryEquipmentType"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcUnitaryEquipmentTypeEnum.USERDEFINED) or ((predefinedtype == IfcUnitaryEquipmentTypeEnum.USERDEFINED) and exists(self.ElementType))
class IfcValveType_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcValveType"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcValveTypeEnum.USERDEFINED) or ((predefinedtype == IfcValveTypeEnum.USERDEFINED) and exists(self.ElementType))
class IfcVector_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcVector"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
magnitude = self.Magnitude
assert magnitude >= 0.0
def calc_IfcVector_Dim(self):
orientation = self.Orientation
return \
orientation.Dim
class IfcVibrationIsolatorType_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcVibrationIsolatorType"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
predefinedtype = self.PredefinedType
assert (predefinedtype != IfcVibrationIsolatorTypeEnum.USERDEFINED) or ((predefinedtype == IfcVibrationIsolatorTypeEnum.USERDEFINED) and exists(self.ElementType))
class IfcWall_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcWall"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert (sizeof([temp for temp in self.HasAssociations if 'ifc2x3.ifcrelassociatesmaterial' in typeof(temp)])) <= 1
class IfcWallStandardCase_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcWallStandardCase"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert (sizeof([temp for temp in usedin(self,'ifc2x3.ifcrelassociates.relatedobjects') if ('ifc2x3.ifcrelassociatesmaterial' in typeof(temp)) and ('ifc2x3.ifcmateriallayersetusage' in typeof(temp.RelatingMaterial))])) == 1
class IfcWindowLiningProperties_WR31:
SCOPE = "entity"
TYPE_NAME = "IfcWindowLiningProperties"
RULE_NAME = "WR31"
@staticmethod
def __call__(self):
liningdepth = self.LiningDepth
liningthickness = self.LiningThickness
assert not (not exists(liningdepth)) and exists(liningthickness)
class IfcWindowLiningProperties_WR32:
SCOPE = "entity"
TYPE_NAME = "IfcWindowLiningProperties"
RULE_NAME = "WR32"
@staticmethod
def __call__(self):
firsttransomoffset = self.FirstTransomOffset
secondtransomoffset = self.SecondTransomOffset
assert not (not exists(firsttransomoffset)) and exists(secondtransomoffset)
class IfcWindowLiningProperties_WR33:
SCOPE = "entity"
TYPE_NAME = "IfcWindowLiningProperties"
RULE_NAME = "WR33"
@staticmethod
def __call__(self):
firstmullionoffset = self.FirstMullionOffset
secondmullionoffset = self.SecondMullionOffset
assert not (not exists(firstmullionoffset)) and exists(secondmullionoffset)
class IfcWindowLiningProperties_WR34:
SCOPE = "entity"
TYPE_NAME = "IfcWindowLiningProperties"
RULE_NAME = "WR34"
@staticmethod
def __call__(self):
assert (exists(lambda: self.DefinesType[1 - 1])) and ('ifc2x3.ifcwindowstyle' in (typeof(self.DefinesType[1 - 1])))
class IfcWorkControl_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcWorkControl"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
workcontroltype = self.WorkControlType
assert (workcontroltype != IfcWorkControlTypeEnum.USERDEFINED) or ((workcontroltype == IfcWorkControlTypeEnum.USERDEFINED) and exists(self.UserDefinedControlType))
class IfcZShapeProfileDef_WR21:
SCOPE = "entity"
TYPE_NAME = "IfcZShapeProfileDef"
RULE_NAME = "WR21"
@staticmethod
def __call__(self):
depth = self.Depth
flangethickness = self.FlangeThickness
assert flangethickness < (depth / 2.)
class IfcZone_WR1:
SCOPE = "entity"
TYPE_NAME = "IfcZone"
RULE_NAME = "WR1"
@staticmethod
def __call__(self):
assert (sizeof([temp for temp in self.IsGroupedBy.RelatedObjects if not ('ifc2x3.ifczone' in typeof(temp)) or ('ifc2x3.ifcspace' in typeof(temp))])) == 0
class IfcRepresentationContextSameWCS:
SCOPE = "file"
@staticmethod
def __call__(file):
IfcGeometricRepresentationContext = file.by_type("IfcGeometricRepresentationContext")
isdifferent = False
if sizeof(IfcGeometricRepresentationContext) > 1:
for i in range(2, hiindex(IfcGeometricRepresentationContext) + 1):
if (IfcGeometricRepresentationContext[1 - 1].WorldCoordinateSystem) != (IfcGeometricRepresentationContext[i - 1].WorldCoordinateSystem):
isdifferent = (not IfcSameValidPrecision(IfcGeometricRepresentationContext[1 - 1].Precision,IfcGeometricRepresentationContext[i - 1].Precision)) or (not IfcSameAxis2Placement(IfcGeometricRepresentationContext[1 - 1].WorldCoordinateSystem,IfcGeometricRepresentationContext[i - 1].WorldCoordinateSystem,IfcGeometricRepresentationContext[1 - 1].Precision))
if isdifferent == True:
break
assert isdifferent == False
class IfcSingleProjectInstance:
SCOPE = "file"
@staticmethod
def __call__(file):
IfcProject = file.by_type("IfcProject")
assert sizeof(IfcProject) <= 1
def IfcAddToBeginOfList(ascalar, alist):
result = []
if not exists(ascalar):
result = alist
else:
result = result + ascalar
if hiindex(alist) >= 1:
for i in range(1, hiindex(alist) + 1):
temp = list(result)
temp[i - 1] = alist[i - 1]
result = temp
return result
def IfcBaseAxis(dim, axis1, axis2, axis3):
if dim == 3:
d1 = nvl(IfcNormalise(axis3),IfcDirection(DirectionRatios=[0.0,0.0,1.0]))
d2 = IfcFirstProjAxis(d1,axis1)
u = [d2,IfcSecondProjAxis(d1,d2,axis2),d1]
else:
if exists(axis1):
d1 = IfcNormalise(axis1)
u = [d1,IfcOrthogonalComplement(d1)]
if exists(axis2):
factor = IfcDotProduct(axis2,u[2 - 1])
if factor < 0.0:
u[2 - 1].DirectionRatios[1 - 1] = -u[2 - 1].DirectionRatios[1 - 1]
u[2 - 1].DirectionRatios[2 - 1] = -u[2 - 1].DirectionRatios[2 - 1]
else:
if exists(axis2):
d1 = IfcNormalise(axis2)
u = [IfcOrthogonalComplement(d1),d1]
u[1 - 1].DirectionRatios[1 - 1] = -u[1 - 1].DirectionRatios[1 - 1]
u[1 - 1].DirectionRatios[2 - 1] = -u[1 - 1].DirectionRatios[2 - 1]
else:
u = [IfcDirection(DirectionRatios=[1.0,0.0]),IfcDirection(DirectionRatios=[0.0,1.0])]
return u
def IfcBooleanChoose(b, choice1, choice2):
if b:
return choice1
else:
return choice2
def IfcBuild2Axes(refdirection):
d = nvl(IfcNormalise(refdirection),IfcDirection(DirectionRatios=[1.0,0.0]))
return [d,IfcOrthogonalComplement(d)]
def IfcBuildAxes(axis, refdirection):
d1 = nvl(IfcNormalise(axis),IfcDirection(DirectionRatios=[0.0,0.0,1.0]))
d2 = IfcFirstProjAxis(d1,refdirection)
return [d2,IfcNormalise(IfcCrossProduct(d1,d2)).Orientation,d1]
def IfcCorrectDimensions(m, dim):
if m == lengthunit:
if dim == IfcDimensionalExponents(1,0,0,0,0,0,0):
return True
else:
return False
elif m == massunit:
if dim == IfcDimensionalExponents(0,1,0,0,0,0,0):
return True
else:
return False
elif m == timeunit:
if dim == IfcDimensionalExponents(0,0,1,0,0,0,0):
return True
else:
return False
elif m == electriccurrentunit:
if dim == IfcDimensionalExponents(0,0,0,1,0,0,0):
return True
else:
return False
elif m == thermodynamictemperatureunit:
if dim == IfcDimensionalExponents(0,0,0,0,1,0,0):
return True
else:
return False
elif m == amountofsubstanceunit:
if dim == IfcDimensionalExponents(0,0,0,0,0,1,0):
return True
else:
return False
elif m == luminousintensityunit:
if dim == IfcDimensionalExponents(0,0,0,0,0,0,1):
return True
else:
return False
elif m == planeangleunit:
if dim == IfcDimensionalExponents(0,0,0,0,0,0,0):
return True
else:
return False
elif m == solidangleunit:
if dim == IfcDimensionalExponents(0,0,0,0,0,0,0):
return True
else:
return False
elif m == areaunit:
if dim == IfcDimensionalExponents(2,0,0,0,0,0,0):
return True
else:
return False
elif m == volumeunit:
if dim == IfcDimensionalExponents(3,0,0,0,0,0,0):
return True
else:
return False
elif m == absorbeddoseunit:
if dim == IfcDimensionalExponents(2,0,-2,0,0,0,0):
return True
else:
return False
elif m == radioactivityunit:
if dim == IfcDimensionalExponents(0,0,-1,0,0,0,0):
return True
else:
return False
elif m == electriccapacitanceunit:
if dim == IfcDimensionalExponents(-2,1,4,1,0,0,0):
return True
else:
return False
elif m == doseequivalentunit:
if dim == IfcDimensionalExponents(2,0,-2,0,0,0,0):
return True
else:
return False
elif m == electricchargeunit:
if dim == IfcDimensionalExponents(0,0,1,1,0,0,0):
return True
else:
return False
elif m == electricconductanceunit:
if dim == IfcDimensionalExponents(-2,-1,3,2,0,0,0):
return True
else:
return False
elif m == electricvoltageunit:
if dim == IfcDimensionalExponents(2,1,-3,-1,0,0,0):
return True
else:
return False
elif m == electricresistanceunit:
if dim == IfcDimensionalExponents(2,1,-3,-2,0,0,0):
return True
else:
return False
elif m == energyunit:
if dim == IfcDimensionalExponents(2,1,-2,0,0,0,0):
return True
else:
return False
elif m == forceunit:
if dim == IfcDimensionalExponents(1,1,-2,0,0,0,0):
return True
else:
return False
elif m == frequencyunit:
if dim == IfcDimensionalExponents(0,0,-1,0,0,0,0):
return True
else:
return False
elif m == inductanceunit:
if dim == IfcDimensionalExponents(2,1,-2,-2,0,0,0):
return True
else:
return False
elif m == illuminanceunit:
if dim == IfcDimensionalExponents(-2,0,0,0,0,0,1):
return True
else:
return False
elif m == luminousfluxunit:
if dim == IfcDimensionalExponents(0,0,0,0,0,0,1):
return True
else:
return False
elif m == magneticfluxunit:
if dim == IfcDimensionalExponents(2,1,-2,-1,0,0,0):
return True
else:
return False
elif m == magneticfluxdensityunit:
if dim == IfcDimensionalExponents(0,1,-2,-1,0,0,0):
return True
else:
return False
elif m == powerunit:
if dim == IfcDimensionalExponents(2,1,-3,0,0,0,0):
return True
else:
return False
elif m == pressureunit:
if dim == IfcDimensionalExponents(-1,1,-2,0,0,0,0):
return True
else:
return False
else:
return unknown
def IfcCorrectFillAreaStyle(styles):
hatching = 0
tiles = 0
colour = 0
external = 0
external = sizeof([style for style in styles if 'ifc2x3.ifcexternallydefinedhatchstyle' in typeof(style)])
hatching = sizeof([style for style in styles if 'ifc2x3.ifcfillareastylehatching' in typeof(style)])
tiles = sizeof([style for style in styles if 'ifc2x3.ifcfillareastyletiles' in typeof(style)])
colour = sizeof([style for style in styles if 'ifc2x3.ifccolour' in typeof(style)])
if external > 1:
return False
if (external == 1) and ((hatching > 0) or (tiles > 0) or (colour > 0)):
return False
if colour > 1:
return False
if (hatching > 0) and (tiles > 0):
return False
return True
def IfcCorrectLocalPlacement(axisplacement, relplacement):
if exists(relplacement):
if 'ifc2x3.ifcgridplacement' in typeof(relplacement):
return None
if 'ifc2x3.ifclocalplacement' in typeof(relplacement):
if 'ifc2x3.ifcaxis2placement2d' in typeof(axisplacement):
return True
if 'ifc2x3.ifcaxis2placement3d' in typeof(axisplacement):
if relplacement.RelativePlacement.Dim == 3:
return True
else:
return False
return True
return None
def IfcCorrectObjectAssignment(constraint, objects):
count = 0
if not exists(constraint):
return True
if constraint == IfcObjectTypeEnum.NOTDEFINED:
return True
elif constraint == IfcObjectTypeEnum.PRODUCT:
count = sizeof([temp for temp in objects if not 'ifc2x3.ifcproduct' in typeof(temp)])
return count == 0
elif constraint == IfcObjectTypeEnum.PROCESS:
count = sizeof([temp for temp in objects if not 'ifc2x3.ifcprocess' in typeof(temp)])
return count == 0
elif constraint == IfcObjectTypeEnum.CONTROL:
count = sizeof([temp for temp in objects if not 'ifc2x3.ifccontrol' in typeof(temp)])
return count == 0
elif constraint == IfcObjectTypeEnum.RESOURCE:
count = sizeof([temp for temp in objects if not 'ifc2x3.ifcresource' in typeof(temp)])
return count == 0
elif constraint == IfcObjectTypeEnum.ACTOR:
count = sizeof([temp for temp in objects if not 'ifc2x3.ifcactor' in typeof(temp)])
return count == 0
elif constraint == IfcObjectTypeEnum.GROUP:
count = sizeof([temp for temp in objects if not 'ifc2x3.ifcgroup' in typeof(temp)])
return count == 0
elif constraint == IfcObjectTypeEnum.PROJECT:
count = sizeof([temp for temp in objects if not 'ifc2x3.ifcproject' in typeof(temp)])
return count == 0
else:
return None
def IfcCorrectUnitAssignment(units):
namedunitnumber = 0
derivedunitnumber = 0
monetaryunitnumber = 0
namedunitnames = express_set([])
derivedunitnames = express_set([])
namedunitnumber = sizeof([temp for temp in units if ('ifc2x3.ifcnamedunit' in typeof(temp)) and (not temp.UnitType == IfcUnitEnum.USERDEFINED)])
derivedunitnumber = sizeof([temp for temp in units if ('ifc2x3.ifcderivedunit' in typeof(temp)) and (not temp.UnitType == IfcDerivedUnitEnum.USERDEFINED)])
monetaryunitnumber = sizeof([temp for temp in units if 'ifc2x3.ifcmonetaryunit' in typeof(temp)])
for i in range(1, sizeof(units) + 1):
if ('ifc2x3.ifcnamedunit' in (typeof(units[i - 1]))) and (not (units[i - 1].UnitType) == IfcUnitEnum.USERDEFINED):
namedunitnames = namedunitnames + (units[i - 1].UnitType)
if ('ifc2x3.ifcderivedunit' in (typeof(units[i - 1]))) and (not (units[i - 1].UnitType) == IfcDerivedUnitEnum.USERDEFINED):
derivedunitnames = derivedunitnames + (units[i - 1].UnitType)
return (sizeof(namedunitnames) == namedunitnumber) and (sizeof(derivedunitnames) == derivedunitnumber) and (monetaryunitnumber <= 1)
def IfcCrossProduct(arg1, arg2):
if ((not exists(arg1)) or (arg1.Dim == 2)) or ((not exists(arg2)) or (arg2.Dim == 2)):
return None
else:
v1 = IfcNormalise(arg1).DirectionRatios
v2 = IfcNormalise(arg2).DirectionRatios
res = IfcDirection(DirectionRatios=[((v1[2 - 1]) * (v2[3 - 1])) - ((v1[3 - 1]) * (v2[2 - 1])),((v1[3 - 1]) * (v2[1 - 1])) - ((v1[1 - 1]) * (v2[3 - 1])),((v1[1 - 1]) * (v2[2 - 1])) - ((v1[2 - 1]) * (v2[1 - 1]))])
mag = 0.0
for i in range(1, 3 + 1):
mag = mag + ((res.DirectionRatios[i - 1]) * (res.DirectionRatios[i - 1]))
if mag > 0.0:
result = IfcVector(Orientation=res, Magnitude=sqrt(mag))
else:
result = IfcVector(Orientation=arg1, Magnitude=0.0)
return result
def IfcCurveDim(curve):
if 'ifc2x3.ifcline' in typeof(curve):
return curve.Pnt.Dim
if 'ifc2x3.ifcconic' in typeof(curve):
return curve.Position.Dim
if 'ifc2x3.ifcpolyline' in typeof(curve):
return curve.Points[1 - 1].Dim
if 'ifc2x3.ifctrimmedcurve' in typeof(curve):
return IfcCurveDim(curve.BasisCurve)
if 'ifc2x3.ifccompositecurve' in typeof(curve):
return curve.Segments[1 - 1].Dim
if 'ifc2x3.ifcbsplinecurve' in typeof(curve):
return curve.ControlPointsList[1 - 1].Dim
if 'ifc2x3.ifcoffsetcurve2d' in typeof(curve):
return 2
if 'ifc2x3.ifcoffsetcurve3d' in typeof(curve):
return 3
return None
def IfcCurveWeightsPositive(b):
result = True
for i in range(0, b.UpperIndexOnControlPoints + 1):
if (b.Weights[i - 1]) <= 0.0:
result = False
return result
return result
def IfcDeriveDimensionalExponents(unitelements):
result = IfcDimensionalExponents(0,0,0,0,0,0,0)
for i in range(loindex(unitelements), hiindex(unitelements) + 1):
result.LengthExponent = result.LengthExponent + ((unitelements[i - 1].Exponent) * (unitelements[i - 1].Unit.Dimensions.LengthExponent))
result.MassExponent = result.MassExponent + ((unitelements[i - 1].Exponent) * (unitelements[i - 1].Unit.Dimensions.MassExponent))
result.TimeExponent = result.TimeExponent + ((unitelements[i - 1].Exponent) * (unitelements[i - 1].Unit.Dimensions.TimeExponent))
result.ElectricCurrentExponent = result.ElectricCurrentExponent + ((unitelements[i - 1].Exponent) * (unitelements[i - 1].Unit.Dimensions.ElectricCurrentExponent))
result.ThermodynamicTemperatureExponent = result.ThermodynamicTemperatureExponent + ((unitelements[i - 1].Exponent) * (unitelements[i - 1].Unit.Dimensions.ThermodynamicTemperatureExponent))
result.AmountOfSubstanceExponent = result.AmountOfSubstanceExponent + ((unitelements[i - 1].Exponent) * (unitelements[i - 1].Unit.Dimensions.AmountOfSubstanceExponent))
result.LuminousIntensityExponent = result.LuminousIntensityExponent + ((unitelements[i - 1].Exponent) * (unitelements[i - 1].Unit.Dimensions.LuminousIntensityExponent))
return result
def IfcDimensionsForSiUnit(n):
if n == metre:
return IfcDimensionalExponents(1,0,0,0,0,0,0)
elif n == square_metre:
return IfcDimensionalExponents(2,0,0,0,0,0,0)
elif n == cubic_metre:
return IfcDimensionalExponents(3,0,0,0,0,0,0)
elif n == gram:
return IfcDimensionalExponents(0,1,0,0,0,0,0)
elif n == second:
return IfcDimensionalExponents(0,0,1,0,0,0,0)
elif n == ampere:
return IfcDimensionalExponents(0,0,0,1,0,0,0)
elif n == kelvin:
return IfcDimensionalExponents(0,0,0,0,1,0,0)
elif n == mole:
return IfcDimensionalExponents(0,0,0,0,0,1,0)
elif n == candela:
return IfcDimensionalExponents(0,0,0,0,0,0,1)
elif n == radian:
return IfcDimensionalExponents(0,0,0,0,0,0,0)
elif n == steradian:
return IfcDimensionalExponents(0,0,0,0,0,0,0)
elif n == hertz:
return IfcDimensionalExponents(0,0,-1,0,0,0,0)
elif n == newton:
return IfcDimensionalExponents(1,1,-2,0,0,0,0)
elif n == pascal:
return IfcDimensionalExponents(-1,1,-2,0,0,0,0)
elif n == joule:
return IfcDimensionalExponents(2,1,-2,0,0,0,0)
elif n == watt:
return IfcDimensionalExponents(2,1,-3,0,0,0,0)
elif n == coulomb:
return IfcDimensionalExponents(0,0,1,1,0,0,0)
elif n == volt:
return IfcDimensionalExponents(2,1,-3,-1,0,0,0)
elif n == farad:
return IfcDimensionalExponents(-2,-1,4,1,0,0,0)
elif n == ohm:
return IfcDimensionalExponents(2,1,-3,-2,0,0,0)
elif n == siemens:
return IfcDimensionalExponents(-2,-1,3,2,0,0,0)
elif n == weber:
return IfcDimensionalExponents(2,1,-2,-1,0,0,0)
elif n == tesla:
return IfcDimensionalExponents(0,1,-2,-1,0,0,0)
elif n == henry:
return IfcDimensionalExponents(2,1,-2,-2,0,0,0)
elif n == degree_celsius:
return IfcDimensionalExponents(0,0,0,0,1,0,0)
elif n == lumen:
return IfcDimensionalExponents(0,0,0,0,0,0,1)
elif n == lux:
return IfcDimensionalExponents(-2,0,0,0,0,0,1)
elif n == becquerel:
return IfcDimensionalExponents(0,0,-1,0,0,0,0)
elif n == gray:
return IfcDimensionalExponents(2,0,-2,0,0,0,0)
elif n == sievert:
return IfcDimensionalExponents(2,0,-2,0,0,0,0)
else:
return IfcDimensionalExponents(0,0,0,0,0,0,0)
def IfcDotProduct(arg1, arg2):
if (not exists(arg1)) or (not exists(arg2)):
scalar = None
else:
if arg1.Dim != arg2.Dim:
scalar = None
else:
vec1 = IfcNormalise(arg1)
vec2 = IfcNormalise(arg2)
ndim = arg1.Dim
scalar = 0.0
for i in range(1, ndim + 1):
scalar = scalar + ((vec1.DirectionRatios[i - 1]) * (vec2.DirectionRatios[i - 1]))
return scalar
def IfcFirstProjAxis(zaxis, arg):
if not exists(zaxis):
return None
else:
z = IfcNormalise(zaxis)
if not exists(arg):
if z.DirectionRatios != [1.0,0.0,0.0]:
v = IfcDirection(DirectionRatios=[1.0,0.0,0.0])
else:
v = IfcDirection(DirectionRatios=[0.0,1.0,0.0])
else:
if arg.Dim != 3:
return None
if IfcCrossProduct(arg,z).Magnitude == 0.0:
return None
else:
v = IfcNormalise(arg)
xvec = IfcScalarTimesVector(IfcDotProduct(v,z),z)
xaxis = IfcVectorDifference(v,xvec).Orientation
xaxis = IfcNormalise(xaxis)
return xaxis
def IfcLeapYear(year):
if (((year % 4) == 0) and ((year % 100) != 0)) or ((year % 400) == 0):
return True
else:
return False
def IfcListToArray(lis, low, u):
n = sizeof(lis)
if n != (u - low + 1):
return None
else:
res = ([lis[1 - 1]] * n)
for i in range(2, n + 1):
temp = list(res)
temp[low - 1] = lis[i - 1]
res = temp
return res
def IfcLoopHeadToTail(aloop):
p = True
n = sizeof(aloop.EdgeList)
for i in range(2, n + 1):
p = p and ((aloop.EdgeList[i - 1].EdgeEnd) == (aloop.EdgeList[i - 1].EdgeStart))
return p
def IfcMlsTotalThickness(layerset):
max = layerset.MaterialLayers[1 - 1].LayerThickness
if sizeof(layerset.MaterialLayers) > 1:
for i in range(2, hiindex(layerset.MaterialLayers) + 1):
max = max + (layerset.MaterialLayers[i - 1].LayerThickness)
return max
def IfcNormalise(arg):
v = IfcDirection(DirectionRatios=[1.,0.])
vec = IfcVector(Orientation=IfcDirection(DirectionRatios=[1.,0.]), Magnitude=1.)
result = v
if not exists(arg):
return None
else:
ndim = arg.Dim
if 'ifc2x3.ifcvector' in typeof(arg):
v.DirectionRatios = arg.Orientation.DirectionRatios
vec.Magnitude = arg.Magnitude
vec.Orientation = v
if arg.Magnitude == 0.0:
return None
else:
vec.Magnitude = 1.0
else:
v.DirectionRatios = arg.DirectionRatios
mag = 0.0
for i in range(1, ndim + 1):
mag = mag + ((v.DirectionRatios[i - 1]) * (v.DirectionRatios[i - 1]))
if mag > 0.0:
mag = sqrt(mag)
for i in range(1, ndim + 1):
temp = list(v.DirectionRatios)
temp[i - 1] = (v.DirectionRatios[i - 1]) / mag
v.DirectionRatios = temp
if 'ifc2x3.ifcvector' in typeof(arg):
vec.Orientation = v
result = vec
else:
result = v
else:
return None
return result
def IfcOrthogonalComplement(vec):
if (not exists(vec)) or (vec.Dim != 2):
return None
else:
result = IfcDirection(DirectionRatios=[-vec.DirectionRatios[2 - 1],vec.DirectionRatios[1 - 1]])
return result
def IfcPathHeadToTail(apath):
n = 0
p = unknown
n = sizeof(apath.EdgeList)
for i in range(2, n + 1):
p = p and ((apath.EdgeList[i - 1].EdgeEnd) == (apath.EdgeList[i - 1].EdgeStart))
return p
def IfcSameAxis2Placement(ap1, ap2, epsilon):
return (IfcSameDirection(ap1.P[1 - 1],ap2.P[1 - 1],epsilon)) and (IfcSameDirection(ap1.P[2 - 1],ap2.P[2 - 1],epsilon)) and IfcSameCartesianPoint(ap1.Location,ap1.Location,epsilon)
def IfcSameCartesianPoint(cp1, cp2, epsilon):
cp1x = cp1.Coordinates[1 - 1]
cp1y = cp1.Coordinates[2 - 1]
cp1z = 0
cp2x = cp2.Coordinates[1 - 1]
cp2y = cp2.Coordinates[2 - 1]
cp2z = 0
if sizeof(cp1.Coordinates) > 2:
cp1z = cp1.Coordinates[3 - 1]
if sizeof(cp2.Coordinates) > 2:
cp2z = cp2.Coordinates[3 - 1]
return IfcSameValue(cp1x,cp2x,epsilon) and IfcSameValue(cp1y,cp2y,epsilon) and IfcSameValue(cp1z,cp2z,epsilon)
def IfcSameDirection(dir1, dir2, epsilon):
dir1x = dir1.DirectionRatios[1 - 1]
dir1y = dir1.DirectionRatios[2 - 1]
dir1z = 0
dir2x = dir2.DirectionRatios[1 - 1]
dir2y = dir2.DirectionRatios[2 - 1]
dir2z = 0
if sizeof(dir1.DirectionRatios) > 2:
dir1z = dir1.DirectionRatios[3 - 1]
if sizeof(dir2.DirectionRatios) > 2:
dir2z = dir2.DirectionRatios[3 - 1]
return IfcSameValue(dir1x,dir2x,epsilon) and IfcSameValue(dir1y,dir2y,epsilon) and IfcSameValue(dir1z,dir2z,epsilon)
def IfcSameValidPrecision(epsilon1, epsilon2):
defaulteps = 0.000001
derivationofeps = 1.001
uppereps = 1.0
valideps1 = nvl(epsilon1,defaulteps)
valideps2 = nvl(epsilon2,defaulteps)
return (0.0 < valideps1) and (valideps1 <= (derivationofeps * valideps2)) and (valideps2 <= (derivationofeps * valideps1)) and (valideps2 < uppereps)
def IfcSameValue(value1, value2, epsilon):
defaulteps = 0.000001
valideps = nvl(epsilon,defaulteps)
return ((value1 + valideps) > value2) and (value1 < (value2 + valideps))
def IfcScalarTimesVector(scalar, vec):
if (not exists(scalar)) or (not exists(vec)):
return None
else:
if 'ifc2x3.ifcvector' in typeof(vec):
v = vec.Orientation
mag = scalar * vec.Magnitude
else:
v = vec
mag = scalar
if mag < 0.0:
for i in range(1, sizeof(v.DirectionRatios) + 1):
temp = list(v.DirectionRatios)
temp[i - 1] = -v.DirectionRatios[i - 1]
v.DirectionRatios = temp
mag = -mag
result = IfcVector(Orientation=IfcNormalise(v), Magnitude=mag)
return result
def IfcSecondProjAxis(zaxis, xaxis, arg):
if not exists(arg):
v = IfcDirection(DirectionRatios=[0.0,1.0,0.0])
else:
v = arg
temp = IfcScalarTimesVector(IfcDotProduct(v,zaxis),zaxis)
yaxis = IfcVectorDifference(v,temp)
temp = IfcScalarTimesVector(IfcDotProduct(v,xaxis),xaxis)
yaxis = IfcVectorDifference(yaxis,temp)
yaxis = IfcNormalise(yaxis)
return yaxis.Orientation
def IfcShapeRepresentationTypes(reptype, items):
count = 0
if reptype.lower() == 'curve2d':
count = sizeof([temp for temp in items if ('ifc2x3.ifccurve' in typeof(temp)) and (temp.Dim == 2)])
elif reptype.lower() == 'annotation2d':
count = sizeof([temp for temp in items if (sizeof(typeof(temp) * ['ifc2x3.ifcpoint','ifc2x3.ifccurve','ifc2x3.ifcgeometriccurveset','ifc2x3.ifcannotationfillarea','ifc2x3.ifcdefinedsymbol','ifc2x3.ifctextliteral','ifc2x3.ifcdraughtingcallout'])) == 1])
elif reptype.lower() == 'geometricset':
count = sizeof([temp for temp in items if ('ifc2x3.ifcgeometricset' in typeof(temp)) or ('ifc2x3.ifcpoint' in typeof(temp)) or ('ifc2x3.ifccurve' in typeof(temp)) or ('ifc2x3.ifcsurface' in typeof(temp))])
elif reptype.lower() == 'geometriccurveset':
count = sizeof([temp for temp in items if ('ifc2x3.ifcgeometriccurveset' in typeof(temp)) or ('ifc2x3.ifcgeometricset' in typeof(temp)) or ('ifc2x3.ifcpoint' in typeof(temp)) or ('ifc2x3.ifccurve' in typeof(temp))])
for i in range(1, hiindex(items) + 1):
if 'ifc2x3.ifcgeometricset' in (typeof(items[i - 1])):
if (sizeof([temp for temp in items[i - 1].Elements if 'ifc2x3.ifcsurface' in typeof(temp)])) > 0:
count = count - 1
elif reptype.lower() == 'surfacemodel':
count = sizeof([temp for temp in items if (sizeof(['ifc2x3.ifcshellbasedsurfacemodel','ifc2x3.ifcfacebasedsurfacemodel','ifc2x3.ifcfacetedbrep','ifc2x3.ifcfacetedbrepwithvoids'] * typeof(temp))) >= 1])
elif reptype.lower() == 'solidmodel':
count = sizeof([temp for temp in items if 'ifc2x3.ifcsolidmodel' in typeof(temp)])
elif reptype.lower() == 'sweptsolid':
count = sizeof([temp for temp in items if 'ifc2x3.ifcsweptareasolid' in typeof(temp)])
elif reptype.lower() == 'csg':
count = sizeof([temp for temp in items if 'ifc2x3.ifcbooleanresult' in typeof(temp)])
elif reptype.lower() == 'clipping':
count = sizeof([temp for temp in items if 'ifc2x3.ifcbooleanclippingresult' in typeof(temp)])
elif reptype.lower() == 'advancedsweptsolid':
count = sizeof([temp for temp in items if ('ifc2x3.ifcsurfacecurvesweptareasolid' in typeof(temp)) or ('ifc2x3.ifcsweptdisksolid' in typeof(temp))])
elif reptype.lower() == 'brep':
count = sizeof([temp for temp in items if ('ifc2x3.ifcfacetedbrep' in typeof(temp)) or ('ifc2x3.ifcfacetedbrepwithvoids' in typeof(temp))])
elif reptype.lower() == 'boundingbox':
count = sizeof([temp for temp in items if 'ifc2x3.ifcboundingbox' in typeof(temp)])
if sizeof(items) > 1:
count = 0
elif reptype.lower() == 'sectionedspine':
count = sizeof([temp for temp in items if 'ifc2x3.ifcsectionedspine' in typeof(temp)])
elif reptype.lower() == 'mappedrepresentation':
count = sizeof([temp for temp in items if 'ifc2x3.ifcmappeditem' in typeof(temp)])
else:
return None
return count == sizeof(items)
def IfcTopologyRepresentationTypes(reptype, items):
count = 0
if reptype.lower() == 'vertex':
count = sizeof([temp for temp in items if 'ifc2x3.ifcvertex' in typeof(temp)])
elif reptype.lower() == 'edge':
count = sizeof([temp for temp in items if 'ifc2x3.ifcedge' in typeof(temp)])
elif reptype.lower() == 'path':
count = sizeof([temp for temp in items if 'ifc2x3.ifcpath' in typeof(temp)])
elif reptype.lower() == 'face':
count = sizeof([temp for temp in items if 'ifc2x3.ifcface' in typeof(temp)])
elif reptype.lower() == 'shell':
count = sizeof([temp for temp in items if ('ifc2x3.ifcopenshell' in typeof(temp)) or ('ifc2x3.ifcclosedshell' in typeof(temp))])
elif reptype.lower() == 'undefined':
return True
else:
return None
return count == sizeof(items)
def IfcUniquePropertyName(properties):
names = express_set([])
for i in range(1, hiindex(properties) + 1):
names = names + (properties[i - 1].Name)
return sizeof(names) == sizeof(properties)
def IfcValidCalendarDate(date):
if not 1 <= date.DayComponent <= 31:
return False
if date.MonthComponent == 4:
return 1 <= date.DayComponent <= 30
elif date.MonthComponent == 6:
return 1 <= date.DayComponent <= 30
elif date.MonthComponent == 9:
return 1 <= date.DayComponent <= 30
elif date.MonthComponent == 11:
return 1 <= date.DayComponent <= 30
elif date.MonthComponent == 2:
if IfcLeapYear(date.YearComponent):
return 1 <= date.DayComponent <= 29
else:
return 1 <= date.DayComponent <= 28
else:
return True
def IfcValidTime(time):
if exists(time.SecondComponent):
return exists(time.MinuteComponent)
else:
return True
def IfcVectorDifference(arg1, arg2):
if ((not exists(arg1)) or (not exists(arg2))) or (arg1.Dim != arg2.Dim):
return None
else:
if 'ifc2x3.ifcvector' in typeof(arg1):
mag1 = arg1.Magnitude
vec1 = arg1.Orientation
else:
mag1 = 1.0
vec1 = arg1
if 'ifc2x3.ifcvector' in typeof(arg2):
mag2 = arg2.Magnitude
vec2 = arg2.Orientation
else:
mag2 = 1.0
vec2 = arg2
vec1 = IfcNormalise(vec1)
vec2 = IfcNormalise(vec2)
ndim = sizeof(vec1.DirectionRatios)
mag = 0.0
res = IfcDirection(DirectionRatios=([0.0] * ndim))
for i in range(1, ndim + 1):
temp = list(res.DirectionRatios)
temp[i - 1] = (mag1 * (vec1.DirectionRatios[i - 1])) - (mag2 * (vec2.DirectionRatios[i - 1]))
res.DirectionRatios = temp
mag = mag + ((res.DirectionRatios[i - 1]) * (res.DirectionRatios[i - 1]))
if mag > 0.0:
result = IfcVector(Orientation=res, Magnitude=sqrt(mag))
else:
result = IfcVector(Orientation=vec1, Magnitude=0.0)
return result
def IfcVectorSum(arg1, arg2):
if ((not exists(arg1)) or (not exists(arg2))) or (arg1.Dim != arg2.Dim):
return None
else:
if 'ifc2x3.ifcvector' in typeof(arg1):
mag1 = arg1.Magnitude
vec1 = arg1.Orientation
else:
mag1 = 1.0
vec1 = arg1
if 'ifc2x3.ifcvector' in typeof(arg2):
mag2 = arg2.Magnitude
vec2 = arg2.Orientation
else:
mag2 = 1.0
vec2 = arg2
vec1 = IfcNormalise(vec1)
vec2 = IfcNormalise(vec2)
ndim = sizeof(vec1.DirectionRatios)
mag = 0.0
res = IfcDirection(DirectionRatios=([0.0] * ndim))
for i in range(1, ndim + 1):
temp = list(res.DirectionRatios)
temp[i - 1] = (mag1 * (vec1.DirectionRatios[i - 1])) + (mag2 * (vec2.DirectionRatios[i - 1]))
res.DirectionRatios = temp
mag = mag + ((res.DirectionRatios[i - 1]) * (res.DirectionRatios[i - 1]))
if mag > 0.0:
result = IfcVector(Orientation=res, Magnitude=sqrt(mag))
else:
result = IfcVector(Orientation=vec1, Magnitude=0.0)
return result