You can now insert doors, and we distribute a sample demo and site library

This commit is contained in:
Dion Moult
2021-08-28 19:00:32 +10:00
parent c726e8feb9
commit 99d7eaaf70
5 changed files with 542 additions and 31 deletions
@@ -121,11 +121,13 @@ class AddTypeInstance(bpy.types.Operator):
bpy.ops.bim.assign_type(relating_type=int(tprops.relating_type), related_object=obj.name)
if building_obj:
if instance_class == "IfcWindow":
# TODO For now we are hardcoding windows as a prototype
if instance_class in ["IfcWindow", "IfcDoor"]:
# TODO For now we are hardcoding windows and doors as a prototype
bpy.ops.bim.add_element_opening(
voided_building_element=building_obj.name, filling_building_element=obj.name
)
if instance_class == "IfcDoor":
obj.location[2] = building_obj.location[2] - min([v[2] for v in obj.bound_box])
else:
if collection_obj and collection_obj.BIMObjectProperties.ifc_definition_id:
obj.location[2] = collection_obj.location[2] - min([v[2] for v in obj.bound_box])
Binary file not shown.
+32 -29
View File
@@ -33,9 +33,11 @@ class LibraryGenerator:
)
ifcopenshell.api.run("unit.assign_unit", self.file, length={"is_metric": True, "raw": "METERS"})
ifcopenshell.api.run("context.add_context", self.file, context="Model")
self.body = ifcopenshell.api.run(
"context.add_context", self.file, context="Model", subcontext="Body", target_view="MODEL_VIEW"
)
self.representations = {
"body": ifcopenshell.api.run(
"context.add_context", self.file, context="Model", subcontext="Body", target_view="MODEL_VIEW"
)
}
ifcopenshell.api.run("context.add_context", self.file, context="Plan")
self.annotation = ifcopenshell.api.run(
"context.add_context", self.file, context="Model", subcontext="Annotation", target_view="PLAN_VIEW"
@@ -109,7 +111,8 @@ class LibraryGenerator:
)
self.create_profile_type("IfcBeamType", "DEMO2", profile)
self.create_window_type("IfcWindowType", "DEMO1")
self.create_type("IfcWindowType", "DEMO1", {"body": "Window"})
self.create_type("IfcDoorType", "DEMO1", {"body": "Door"})
self.file.write("blenderbim-demo-library.ifc")
@@ -132,32 +135,32 @@ class LibraryGenerator:
ifcopenshell.api.run("material.assign_profile", self.file, material_profile=material_profile, profile=profile)
ifcopenshell.api.run("project.assign_declaration", self.file, definition=element, relating_context=self.project)
def create_window_type(self, ifc_class, name):
def create_type(self, ifc_class, name, representations):
element = ifcopenshell.api.run("root.create_entity", self.file, ifc_class=ifc_class, name=name)
obj = bpy.data.objects.get("Window")
representation = ifcopenshell.api.run(
"geometry.add_representation",
self.file,
context=self.body,
blender_object=obj,
geometry=obj.data,
total_items=max(1, len(obj.material_slots)),
)
ifcopenshell.api.run(
"style.assign_representation_styles",
self.file,
**{
"shape_representation": representation,
"styles": [
ifcopenshell.api.run("style.add_style", self.file, **self.get_style_settings(s.material))
for s in obj.material_slots
],
},
)
ifcopenshell.api.run(
"geometry.assign_representation", self.file, product=element, representation=representation
)
for rep_name, obj_name in representations.items():
obj = bpy.data.objects.get(obj_name)
representation = ifcopenshell.api.run(
"geometry.add_representation",
self.file,
context=self.representations[rep_name],
blender_object=obj,
geometry=obj.data,
total_items=max(1, len(obj.material_slots)),
)
ifcopenshell.api.run(
"style.assign_representation_styles",
self.file,
**{
"shape_representation": representation,
"styles": [
ifcopenshell.api.run("style.add_style", self.file, **self.get_style_settings(s.material))
for s in obj.material_slots
],
},
)
ifcopenshell.api.run(
"geometry.assign_representation", self.file, product=element, representation=representation
)
ifcopenshell.api.run("project.assign_declaration", self.file, definition=element, relating_context=self.project)
def get_style_settings(self, material):
@@ -0,0 +1,196 @@
ISO-10303-21;
HEADER;
FILE_DESCRIPTION(('ViewDefinition[DesignTransferView]'),'2;1');
FILE_NAME('/dev/null','2021-08-28T18:41:40+10:00',(),(),'IfcOpenShell 0.6.0b0','IfcOpenShell 0.6.0b0','Nobody');
FILE_SCHEMA(('IFC4'));
ENDSEC;
DATA;
#1=IFCACTORROLE(.USERDEFINED.,'CONTRIBUTOR',$);
#2=IFCTELECOMADDRESS(.USERDEFINED.,'The main webpage of the software collection.','WEBPAGE',$,$,$,$,'https://ifcopenshell.org',$);
#3=IFCTELECOMADDRESS(.USERDEFINED.,'The BlenderBIM Add-on webpage of the software collection.','WEBPAGE',$,$,$,$,'https://blenderbim.org',$);
#4=IFCTELECOMADDRESS(.USERDEFINED.,'The source code repository of the software collection.','REPOSITORY',$,$,$,$,'https://github.com/IfcOpenShell/IfcOpenShell.git',$);
#5=IFCORGANIZATION($,'IfcOpenShell','IfcOpenShell is an open source (LGPL) software library that helps users and software developers to work with the IFC file format.',(#1),(#2,#3,#4));
#6=IFCAPPLICATION(#5,'0.0.210605','BlenderBIM Add-on','BlenderBIM');
#7=IFCPROJECTLIBRARY('0H_Sa4feT0KveBrtGY7p5V',$,'BlenderBIM Demo Library',$,$,$,$,(#16,#22),#11);
#8=IFCSIUNIT(*,.LENGTHUNIT.,$,.METRE.);
#9=IFCSIUNIT(*,.AREAUNIT.,$,.SQUARE_METRE.);
#10=IFCSIUNIT(*,.VOLUMEUNIT.,$,.CUBIC_METRE.);
#11=IFCUNITASSIGNMENT((#9,#10,#8));
#12=IFCCARTESIANPOINT((0.,0.,0.));
#13=IFCDIRECTION((0.,0.,1.));
#14=IFCDIRECTION((1.,0.,0.));
#15=IFCAXIS2PLACEMENT3D(#12,#13,#14);
#16=IFCGEOMETRICREPRESENTATIONCONTEXT($,'Model',3,1.E-05,#15,$);
#17=IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Body','Model',*,*,*,*,#16,$,.MODEL_VIEW.,$);
#18=IFCCARTESIANPOINT((0.,0.,0.));
#19=IFCDIRECTION((0.,0.,1.));
#20=IFCDIRECTION((1.,0.,0.));
#21=IFCAXIS2PLACEMENT3D(#18,#19,#20);
#22=IFCGEOMETRICREPRESENTATIONCONTEXT($,'Plan',2,1.E-05,#21,$);
#23=IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Annotation','Model',*,*,*,*,#16,$,.PLAN_VIEW.,$);
#24=IFCMATERIAL('Unknown',$,$);
#25=IFCWALLTYPE('2uk$uXokb3GBZVA$vNH_SU',$,'DEMO50',$,$,$,$,$,$,$);
#26=IFCMATERIALLAYERSET((#28),$,$);
#27=IFCRELASSOCIATESMATERIAL('0jpC5URcX7OPayuV7$ohu_',$,$,$,(#25),#26);
#28=IFCMATERIALLAYER(#24,0.05,$,$,$,$,$);
#29=IFCRELDECLARES('1ucSMOcOHFfeZjk8uPttNq',$,$,$,#7,(#52,#30,#58,#91,#46,#86,#63,#25,#42,#142,#100,#38,#71,#96,#34,#67,#81,#76));
#30=IFCWALLTYPE('14PXQtM7T5J8vNA1dD1dhd',$,'DEMO100',$,$,$,$,$,$,$);
#31=IFCMATERIALLAYERSET((#33),$,$);
#32=IFCRELASSOCIATESMATERIAL('1i8cpFKY1Cz97HIemrGWnd',$,$,$,(#30),#31);
#33=IFCMATERIALLAYER(#24,0.1,$,$,$,$,$);
#34=IFCWALLTYPE('1xhMMJsBf7Tez7_CYWD587',$,'DEMO200',$,$,$,$,$,$,$);
#35=IFCMATERIALLAYERSET((#37),$,$);
#36=IFCRELASSOCIATESMATERIAL('2cwT38GFjB7v7Pqc4KZhZt',$,$,$,(#34),#35);
#37=IFCMATERIALLAYER(#24,0.2,$,$,$,$,$);
#38=IFCWALLTYPE('2r37t_GPTBk9laaiX_nWH1',$,'DEMO300',$,$,$,$,$,$,$);
#39=IFCMATERIALLAYERSET((#41),$,$);
#40=IFCRELASSOCIATESMATERIAL('0qtVmmTMr3yAGWXRPSQqGd',$,$,$,(#38),#39);
#41=IFCMATERIALLAYER(#24,0.3,$,$,$,$,$);
#42=IFCCOVERINGTYPE('3Uk6T5mFn0kg8XYa1At3cI',$,'DEMO10',$,$,$,$,$,$,$);
#43=IFCMATERIALLAYERSET((#45),$,$);
#44=IFCRELASSOCIATESMATERIAL('3569eB$mr0CfLG8NM_SkmT',$,$,$,(#42),#43);
#45=IFCMATERIALLAYER(#24,0.01,$,$,$,$,$);
#46=IFCCOVERINGTYPE('0vHGihDTfAmxoNxodTI6YE',$,'DEMO20',$,$,(#50),$,$,$,$);
#47=IFCMATERIALLAYERSET((#49),$,$);
#48=IFCRELASSOCIATESMATERIAL('1z6TWtxTbDNurEHgAbI44H',$,$,$,(#46),#47);
#49=IFCMATERIALLAYER(#24,0.02,$,$,$,$,$);
#50=IFCPROPERTYSET('07OrawIjLFcBuc8HuMhP34',$,'EPset_Parametric',$,(#51));
#51=IFCPROPERTYSINGLEVALUE('LayerSetDirection',$,IFCLABEL('AXIS2'),$);
#52=IFCCOVERINGTYPE('2S3nmtZdf0TeCEHilgLucE',$,'DEMO30',$,$,(#56),$,$,$,$);
#53=IFCMATERIALLAYERSET((#55),$,$);
#54=IFCRELASSOCIATESMATERIAL('1sBRKybo9BIPbWz0egldJq',$,$,$,(#52),#53);
#55=IFCMATERIALLAYER(#24,0.03,$,$,$,$,$);
#56=IFCPROPERTYSET('3snYH$8sX4o8S5bvtPkDM1',$,'EPset_Parametric',$,(#57));
#57=IFCPROPERTYSINGLEVALUE('LayerSetDirection',$,IFCLABEL('AXIS3'),$);
#58=IFCRAMPTYPE('0v_rACbQDASuK_tBy6uIph',$,'DEMO200',$,$,$,$,$,$,$);
#59=IFCMATERIALLAYERSET((#61),$,$);
#60=IFCRELASSOCIATESMATERIAL('3RVidt7sP7lABIbzFBstcC',$,$,$,(#58),#59);
#61=IFCMATERIALLAYER(#24,0.2,$,$,$,$,$);
#62=IFCCIRCLEPROFILEDEF(.AREA.,$,$,0.3);
#63=IFCPILETYPE('3GVp8yh5X8yeT0TyygKAZO',$,'DEMO1',$,$,$,$,$,$,$);
#64=IFCMATERIALPROFILESET($,$,(#66),$);
#65=IFCRELASSOCIATESMATERIAL('1xWyh_Dfz5R9Kn_odeGRUs',$,$,$,(#63),#64);
#66=IFCMATERIALPROFILE($,$,#24,#62,$,$);
#67=IFCSLABTYPE('0ax0t_7Z12XgneinEO826H',$,'DEMO150',$,$,$,$,$,$,$);
#68=IFCMATERIALLAYERSET((#70),$,$);
#69=IFCRELASSOCIATESMATERIAL('0AdABIDlT3pASYvQRkSeTv',$,$,$,(#67),#68);
#70=IFCMATERIALLAYER(#24,0.2,$,$,$,$,$);
#71=IFCSLABTYPE('0anFF9jm56dv0b2EGcvUI4',$,'DEMO250',$,$,$,$,$,$,$);
#72=IFCMATERIALLAYERSET((#74),$,$);
#73=IFCRELASSOCIATESMATERIAL('2gsu_uFxL8$gABCB9hvaZv',$,$,$,(#71),#72);
#74=IFCMATERIALLAYER(#24,0.3,$,$,$,$,$);
#75=IFCRECTANGLEPROFILEDEF(.AREA.,$,$,0.5,0.6);
#76=IFCCOLUMNTYPE('2teCQbo7591w3zzKEgTGw6',$,'DEMO1',$,$,$,$,$,$,$);
#77=IFCMATERIALPROFILESET($,$,(#79),$);
#78=IFCRELASSOCIATESMATERIAL('3gYaAwqj99fRfLHu900POL',$,$,$,(#76),#77);
#79=IFCMATERIALPROFILE($,$,#24,#75,$,$);
#80=IFCCIRCLEHOLLOWPROFILEDEF(.AREA.,$,$,0.25,0.005);
#81=IFCCOLUMNTYPE('2C46Af2Rf5UR1u2jPH6Hrs',$,'DEMO2',$,$,$,$,$,$,$);
#82=IFCMATERIALPROFILESET($,$,(#84),$);
#83=IFCRELASSOCIATESMATERIAL('1GHUeK7ojBVAHw_J9tytsw',$,$,$,(#81),#82);
#84=IFCMATERIALPROFILE($,$,#24,#80,$,$);
#85=IFCRECTANGLEHOLLOWPROFILEDEF(.AREA.,$,$,0.075,0.15,0.005,0.005,0.005);
#86=IFCCOLUMNTYPE('2nd9Gq0rH5PvqcdIn0o5GE',$,'DEMO3',$,$,$,$,$,$,$);
#87=IFCMATERIALPROFILESET($,$,(#89),$);
#88=IFCRELASSOCIATESMATERIAL('3O8tdK1q9Dc80NeoGA2mc2',$,$,$,(#86),#87);
#89=IFCMATERIALPROFILE($,$,#24,#85,$,$);
#90=IFCISHAPEPROFILEDEF(.AREA.,'DEMO-I',$,0.1,0.2,0.005,0.01,0.005,$,$);
#91=IFCBEAMTYPE('1Qq2BHV_zDHOeQJzV2NFtQ',$,'DEMO1',$,$,$,$,$,$,$);
#92=IFCMATERIALPROFILESET($,$,(#94),$);
#93=IFCRELASSOCIATESMATERIAL('0wKsOvs$jArRBcVacJEmdU',$,$,$,(#91),#92);
#94=IFCMATERIALPROFILE($,$,#24,#90,$,$);
#95=IFCCSHAPEPROFILEDEF(.AREA.,'DEMO-C',$,0.2,0.1,0.0015,0.03,0.005);
#96=IFCBEAMTYPE('0FR2DbWM991Q0wEwhXUtao',$,'DEMO2',$,$,$,$,$,$,$);
#97=IFCMATERIALPROFILESET($,$,(#99),$);
#98=IFCRELASSOCIATESMATERIAL('2P6qEKsav618SE2wpnLhpb',$,$,$,(#96),#97);
#99=IFCMATERIALPROFILE($,$,#24,#95,$,$);
#100=IFCWINDOWTYPE('1lq$4g2j11RfmHPOxojjsF',$,'DEMO1',$,$,$,(#141),$,$,$,$,$,$);
#101=IFCINDEXEDPOLYGONALFACE((13,17,18,14));
#102=IFCINDEXEDPOLYGONALFACE((5,6,3,4));
#103=IFCINDEXEDPOLYGONALFACE((7,8,2,1));
#104=IFCINDEXEDPOLYGONALFACE((6,7,1,3));
#105=IFCINDEXEDPOLYGONALFACE((8,5,4,2));
#106=IFCINDEXEDPOLYGONALFACE((12,11,10,9));
#107=IFCINDEXEDPOLYGONALFACE((15,19,20,16));
#108=IFCINDEXEDPOLYGONALFACE((14,18,19,15));
#109=IFCINDEXEDPOLYGONALFACE((16,20,17,13));
#110=IFCINDEXEDPOLYGONALFACE((4,17,20,2));
#111=IFCINDEXEDPOLYGONALFACE((2,20,19,1));
#112=IFCINDEXEDPOLYGONALFACE((8,16,13,5));
#113=IFCINDEXEDPOLYGONALFACE((7,15,16,8));
#114=IFCINDEXEDPOLYGONALFACE((1,19,18,3));
#115=IFCINDEXEDPOLYGONALFACE((3,18,17,4));
#116=IFCINDEXEDPOLYGONALFACE((6,14,15,7));
#117=IFCINDEXEDPOLYGONALFACE((5,13,14,6));
#118=IFCINDEXEDPOLYGONALFACE((24,21,22,23));
#119=IFCINDEXEDPOLYGONALFACE((11,23,22,10));
#120=IFCINDEXEDPOLYGONALFACE((10,22,21,9));
#121=IFCINDEXEDPOLYGONALFACE((9,21,24,12));
#122=IFCINDEXEDPOLYGONALFACE((12,24,23,11));
#123=IFCCARTESIANPOINTLIST3D(((0.899999976158142,0.,1.20000004768372),(0.899999976158142,0.,0.),(0.,0.,1.20000004768372),(0.,0.,0.),(0.0999999940395355,0.,0.0999999940395355),(0.0999999940395355,0.,1.10000002384186),(0.800000011920929,0.,1.10000002384186),(0.800000011920929,0.,0.0999999940395355),(0.0999999940395355,0.0199999995529652,0.0999999940395355),(0.0999999940395355,0.0199999995529652,1.10000002384186),(0.800000011920929,0.0199999995529652,1.10000002384186),(0.800000011920929,0.0199999995529652,0.0999999940395355),(0.0999999940395355,0.0500000007450581,0.0999999940395355),(0.0999999940395355,0.0500000007450581,1.10000002384186),(0.800000011920929,0.0500000007450581,1.10000002384186),(0.800000011920929,0.0500000007450581,0.0999999940395355),(0.,0.0500000007450581,0.),(0.,0.0500000007450581,1.20000004768372),(0.899999976158142,0.0500000007450581,1.20000004768372),(0.899999976158142,0.0500000007450581,0.),(0.0999999940395355,0.0299999993294477,0.0999999940395355),(0.0999999940395355,0.0299999993294477,1.10000002384186),(0.800000011920929,0.0299999993294477,1.10000002384186),(0.800000011920929,0.0299999993294477,0.0999999940395355)));
#124=IFCPOLYGONALFACESET(#123,$,(#101,#102,#103,#104,#105,#107,#108,#109,#110,#111,#112,#113,#114,#115,#116,#117),$);
#125=IFCPOLYGONALFACESET(#123,$,(#106,#118,#119,#120,#121,#122),$);
#126=IFCSHAPEREPRESENTATION(#17,'Body','Tessellation',(#124,#125));
#127=IFCCOLOURRGB($,0.0429765619337559,0.0429765619337559,0.0429765619337559);
#128=IFCCOLOURRGB($,0.0429765619337559,0.0429765619337559,0.0429765619337559);
#129=IFCSURFACESTYLERENDERING(#127,0.,#128,$,$,$,$,$,.NOTDEFINED.);
#130=IFCSURFACESTYLE('Frame',.BOTH.,(#129));
#131=IFCCOLOURRGB($,0.800000011920929,1.,1.);
#132=IFCCOLOURRGB($,0.800000011920929,1.,1.);
#133=IFCSURFACESTYLERENDERING(#131,0.799999997019768,#132,$,$,$,$,$,.NOTDEFINED.);
#134=IFCSURFACESTYLE('Glass',.BOTH.,(#133));
#135=IFCSTYLEDITEM(#124,(#130),'Frame');
#136=IFCSTYLEDITEM(#125,(#134),'Glass');
#137=IFCCARTESIANPOINT((0.,0.,0.));
#138=IFCDIRECTION((1.,0.,0.));
#139=IFCDIRECTION((0.,0.,1.));
#140=IFCAXIS2PLACEMENT3D(#137,#139,#138);
#141=IFCREPRESENTATIONMAP(#140,#126);
#142=IFCDOORTYPE('02Vmf$GHjA3xWMpsR7HwPP',$,'DEMO1',$,$,$,(#187),$,$,$,$,$,$);
#143=IFCINDEXEDPOLYGONALFACE((17,16,15,14));
#144=IFCINDEXEDPOLYGONALFACE((2,3,29,28));
#145=IFCINDEXEDPOLYGONALFACE((27,28,29,30,32,31));
#146=IFCINDEXEDPOLYGONALFACE((7,6,5,3));
#147=IFCINDEXEDPOLYGONALFACE((8,7,3,2));
#148=IFCINDEXEDPOLYGONALFACE((23,24,6,7));
#149=IFCINDEXEDPOLYGONALFACE((21,20,4,24,23,22));
#150=IFCINDEXEDPOLYGONALFACE((12,13,14,15));
#151=IFCINDEXEDPOLYGONALFACE((16,19,12,15));
#152=IFCINDEXEDPOLYGONALFACE((11,10,25,26));
#153=IFCINDEXEDPOLYGONALFACE((25,1,27,31));
#154=IFCINDEXEDPOLYGONALFACE((24,4,11,6));
#155=IFCINDEXEDPOLYGONALFACE((20,21,9,10));
#156=IFCINDEXEDPOLYGONALFACE((9,8,2,1));
#157=IFCINDEXEDPOLYGONALFACE((10,9,1,25));
#158=IFCINDEXEDPOLYGONALFACE((22,23,7,8));
#159=IFCINDEXEDPOLYGONALFACE((4,20,10,11));
#160=IFCINDEXEDPOLYGONALFACE((19,16,17,18));
#161=IFCINDEXEDPOLYGONALFACE((19,18,13,12));
#162=IFCINDEXEDPOLYGONALFACE((21,22,8,9));
#163=IFCINDEXEDPOLYGONALFACE((6,11,26,5));
#164=IFCINDEXEDPOLYGONALFACE((18,17,14,13));
#165=IFCINDEXEDPOLYGONALFACE((5,26,32,30));
#166=IFCINDEXEDPOLYGONALFACE((1,2,28,27));
#167=IFCINDEXEDPOLYGONALFACE((26,25,31,32));
#168=IFCINDEXEDPOLYGONALFACE((3,5,30,29));
#169=IFCCARTESIANPOINTLIST3D(((0.955000162124634,0.0999999940395355,2.09000015258789),(0.955000162124634,0.0450000055134296,2.09000015258789),(0.970000028610229,0.0450000017881393,2.10500001907349),(0.,0.,0.),(0.970000028610229,0.,2.10500001907349),(0.0399999991059303,0.,2.10500001907349),(0.0399999991059303,0.0450000017881393,2.10500001907349),(0.0549999997019768,0.0450000055134296,2.09000015258789),(0.0549999997019768,0.0999999940395355,2.09000015258789),(0.,0.0999999940395355,2.14500021934509),(0.,-3.72529029846191E-09,2.14500021934509),(0.044999998062849,0.,2.09999990463257),(0.044999998062849,0.0399999991059303,2.09999990463257),(0.965000033378601,0.0399999991059303,2.09999990463257),(0.965000033378601,0.,2.09999990463257),(0.965000033378601,0.,0.),(0.965000033378601,0.0399999991059303,0.),(0.044999998062849,0.0399999991059303,0.),(0.044999998062849,0.,0.),(0.,0.0999999940395355,0.),(0.0549999997019768,0.0999999940395355,0.),(0.0549999997019768,0.0450000017881393,0.),(0.0399999991059303,0.0450000017881393,0.),(0.0399999991059303,0.,0.),(1.01000034809113,0.0999999940395355,2.14500021934509),(1.01000034809113,-3.72529029846191E-09,2.14500021934509),(0.955000162124634,0.0999999940395355,0.),(0.955000162124634,0.0450000055134296,0.),(0.970000028610229,0.0450000017881393,0.),(0.970000028610229,0.,0.),(1.01000034809113,0.0999999940395355,0.),(1.01000034809113,-3.72529029846191E-09,0.)));
#170=IFCPOLYGONALFACESET(#169,$,(#144,#145,#146,#147,#148,#149,#152,#153,#154,#155,#156,#157,#158,#159,#162,#163,#165,#166,#167,#168),$);
#171=IFCPOLYGONALFACESET(#169,$,(#143,#150,#151,#160,#161,#164),$);
#172=IFCSHAPEREPRESENTATION(#17,'Body','Tessellation',(#170,#171));
#173=IFCCOLOURRGB($,0.0429765619337559,0.0429765619337559,0.0429765619337559);
#174=IFCCOLOURRGB($,0.0429765619337559,0.0429765619337559,0.0429765619337559);
#175=IFCSURFACESTYLERENDERING(#173,0.,#174,$,$,$,$,$,.NOTDEFINED.);
#176=IFCSURFACESTYLE('Frame',.BOTH.,(#175));
#177=IFCCOLOURRGB($,0.184475064277649,0.184475019574165,0.184475019574165);
#178=IFCCOLOURRGB($,0.184475064277649,0.184475019574165,0.184475019574165);
#179=IFCSURFACESTYLERENDERING(#177,0.,#178,$,$,$,$,$,.NOTDEFINED.);
#180=IFCSURFACESTYLE('Panel',.BOTH.,(#179));
#181=IFCSTYLEDITEM(#170,(#176),'Frame');
#182=IFCSTYLEDITEM(#171,(#180),'Panel');
#183=IFCCARTESIANPOINT((0.,0.,0.));
#184=IFCDIRECTION((1.,0.,0.));
#185=IFCDIRECTION((0.,0.,1.));
#186=IFCAXIS2PLACEMENT3D(#183,#185,#184);
#187=IFCREPRESENTATIONMAP(#186,#172);
ENDSEC;
END-ISO-10303-21;
File diff suppressed because one or more lines are too long