Specifications_Test_Files/Extrusions_Rectangles/from_FreeCAD/Extrusions_Rectangles_03_PASS.blend

Specifications_Test_Files/Extrusions_Rectangles/from_FreeCAD/Extrusions_Rectangles_04_PASS_blend.ifc
Specifications_Test_Files/Extrusions_Rectangles/from_FreeCAD/Extrusions_Rectangles_04_PASS_blend_commented.ifc
Specifications_Test_Files/Extrusions_Rectangles/from_FreeCAD/Extrusions_Rectangles_05_PASS_blend.rvt
This commit is contained in:
Ryan Schultz 2020-06-21 09:40:32 -05:00
parent d6c592a36b
commit 86534ac85d
7 changed files with 1712 additions and 3001 deletions

View File

@ -1,15 +1,11 @@
# IFC roundtripping specifications
This file lists "exercises" to be performed by a BIM application to achieve adequate round-tripping with IFC files. The application should successfully complete all the steps.
---
## File Naming Convension Examples:
| 1 Original File | 2 Exported IFC File | 3 Imported Native File | 4 Exported IFC File | 5 Imported Native File |
| ------------------- | ---------------------- | ------------------------ | ---------------------------- | ---------------------------- |
| Extrusions_01.FCStd | Extrusions_02_PASS.ifc | Extrusions_03_PASS.rvt | Extrusions_04_FAIL_rvt.ifc | Extrusions_05_FAIL_rvt.rvt |
@ -19,25 +15,18 @@ This file lists "exercises" to be performed by a BIM application to achieve adeq
| | | Extrusions_03_PASS.pln | Extrusions_04_PASS_pln.ifc | Extrusions_05_PASS_pln.pln |
| | | | | Extrusions_05_PASS_pln.rvt |
---
# Tests
---
## Extrusions_Rectangles
The application should be able to export and import an IFC file containing three IfcBuildingElementProxy entities, each with one representation, which is an IfcExtrudedAreaSolid, each based on IfcArbitraryClosedProfileDef made of an IfcPolyline, like the example below. One profile should lie on the XY plane, one in the YZ plane, and a third on a plane made of one of the former rotated 45° along the Y axis. Extrusion directions should be normal to the profiles.
![](Specifications_Test_Files/Extrusions_Rectangles/from_FreeCAD/Extrusions_Rectangles_example.png)
```
#20= IFCBUILDINGELEMENTPROXY('0ohBfsArr3ruXYxacT4yl5',#1,'NOTDEFINED',$,$,#2,#21,$,.NOTDEFINED.);
#21= IFCPRODUCTDEFINITIONSHAPE($,$,(#22));
@ -56,65 +45,51 @@ The application should be able to export and import an IFC file containing three
#34= IFCCARTESIANPOINT((1000.,0.,2000.));
```
#### Native Funtionality
| Program | Native funtion/object |
| ------------ | --------------------------------------- |
| ArchiCAD | |
| BlenderBIM | |
| FreeCAD | |
| Microstation | |
| Revit | Model-in-Place Family - Solid Extrusion |
| Vectorworks | |
| Program | Native funtion/object |
| ------------ | ------------------------------------------------------------------------------- |
| ArchiCAD | |
| BlenderBIM | Mesh - IfcArbitraryClosedProfileDef & ExtrudedDirection saved via Vertex Groups |
| FreeCAD | |
| Microstation | |
| Revit | Model-in-Place Family - Solid Extrusion |
| Vectorworks | |
### Import criteria
* The extrusion directions and profile positions are correct
* The extrusions can be changed after import
* The base polylines can be edited after import
### Export criteria
* The exported IFC file contains three
* IfcBuildingElementProxy, each with an
* IfcExtrudedAreaSolid as its representation and an
* IfcArbitraryClosedProfileDef made of an
* IfcPolyline as its profile.
### Results
Test files here: [FreeMVD_WorkFlow/Specifications_Test_Files/Extrusions_Rectangles/](https://gitlab.com/OpeningDesign/FreeMVD_WorkFlow/tree/master/Specifications_Test_Files/Extrusions_Rectangles)
| Program | Version<br/>native/plugin | Imported Native File (PASS/FAIL) | Import Comments | Exported IFC File (PASS/FAIL) | Export Comments |
| ----------- | ------------------------- | -------------------------------- | ------------------ | ----------------------------- | -------------------------------------------------------------------------------------------------------- |
| ArchiCAD | | | | | |
| BlenderBIM | 2.82a/0.200511 | :x: | - imported as mesh | :x: | - changed IFCEXTRUDEDAREASOLID to IFCFACETEDBREP w/ IFCFACE |
| FreeCAD | | :heavy_check_mark: | | :heavy_check_mark: | |
| Revit | 2020/20.1.0.1 | :heavy_check_mark: | | :x: | - Incorrect extrusion direction <br>- IFCARBITRARYCLOSEDPROFILEDEF was changed to IFCRECTANGLEPROFILEDEF |
| Vectorworks | | | | | |
| Program | Version<br/>native/plugin | Imported Native File (PASS/FAIL) | Import Comments | Exported IFC File (PASS/FAIL) | Export Comments |
| ----------- | ------------------------- | --------------------------------- | ------------------------------------------------------------ | ------------------------------ | -------------------------------------------------------------------------------------------------------- |
| ArchiCAD | | | | | |
| BlenderBIM | 2.82a/0.200621 | :heavy_check_mark: | editing the profile's base polylines, however, is cumbersome | :heavy_check_mark: | |
| FreeCAD | | :heavy_check_mark: | | :heavy_check_mark: | |
| Revit | 2020/20.1.0.1 | :heavy_check_mark: | | :x: | - Incorrect extrusion direction <br>- IFCARBITRARYCLOSEDPROFILEDEF was changed to IFCRECTANGLEPROFILEDEF |
| Vectorworks | | | | | |
## Mapped Items
Mapped Items, which go by many different names in different BIM apps (a few called out below), are objects where the definition of one object is connected to another. That is, if one istance is modified, these changes will also be reflected in other connected or linked instances.
![](Specifications_Test_Files/Mapped_Items/imgs/Mapped_Items_Code.png)
#### Native Funtionality
| Program | Native funtion/object |
| ------------ | --------------------- |
| ArchiCAD | Objects, Modules |
@ -124,52 +99,38 @@ Mapped Items, which go by many different names in different BIM apps (a few call
| Revit | Groups, Families |
| Vectorworks | Symbols |
![](Specifications_Test_Files/Mapped_Items/imgs/Mapped_Items_Visual.gif)
### Import criteria
- That the connection or link between objects in still intact. That is, if one instance is changed, the other instances will change as well.
### Export criteria
- The IFC file has the same shared mapping connected to the objects--circled in red below.
![](Specifications_Test_Files/Mapped_Items/imgs/Mapped_Items_Code_circled.png)
### Results
Test files here: [Specifications_Test_Files/Mapped_Items/](https://gitlab.com/OpeningDesign/FreeMVD_WorkFlow/tree/master/Specifications_Test_Files/Mapped_Items)
| Program | Version<br/>native/plugin | Imported Native File (PASS/FAIL) | Import Comments | Exported IFC File (PASS/FAIL) | Export Comments |
| ----------- | ------------------------- | -------------------------------- | ------------------------------- | ----------------------------- | --------------- |
| ArchiCAD | | | | | |
| BlenderBIM | 2.82a/0.200511 | :heavy_check_mark: | | :heavy_check_mark: | |
| FreeCAD | | :heavy_check_mark: | | :heavy_check_mark: | |
| Revit | 2020/20.1.0.1 | :x: | link was broken between objects | :x: | |
| Vectorworks | | | | | |
| ----------- | ------------------------- | -------------------------------- | ------------------------------- | ------------------------------ | --------------- |
| ArchiCAD | | | | | |
| BlenderBIM | 2.82a/0.200511 | :heavy_check_mark: | | :heavy_check_mark: | |
| FreeCAD | | :heavy_check_mark: | | :heavy_check_mark: | |
| Revit | 2020/20.1.0.1 | :x: | link was broken between objects | :x: | |
| Vectorworks | | | | | |
## Extrusions_Circles
The application should be able to export and import an IFC file containing 2 circle extrusions.
![](Specifications_Test_Files/Extrusions_Circles/from_Revit/imgs/Extrusions_Circles_01.rvt.png)
#### Native Funtionality
| Program | Native funtion/object |
| ------------ | --------------------------------------- |
| ArchiCAD | |
@ -179,49 +140,37 @@ The application should be able to export and import an IFC file containing 2 cir
| Revit | Model-in-Place Family - Solid Extrusion |
| Vectorworks | |
### Import criteria
* The extrusion directions and profile positions are correct
* The extrusions can be changed after import
* The radius of the circles can be changed after import
### Export criteria
- (2) IFCEXTRUDEDAREASOLIDs with
- (1) IFCCIRCLEPROFILEDEF
### Results
Test files here: [FreeMVD_WorkFlow/Specifications_Test_Files/Extrusions_Circles](https://gitlab.com/OpeningDesign/FreeMVD_WorkFlow/tree/master/FreeMVD_WorkFlow/Specifications_Test_Files/Extrusions_Circles)
| Program | Version<br/>native/plugin | Imported Native File (PASS/FAIL) | Import Comments | Exported IFC File (PASS/FAIL) | Export Comments |
| ----------- | ------------------------- | -------------------------------- | ------------------------------------ | ----------------------------- | ------------------------------------------------------------------------------------ |
| ArchiCAD | | | | | |
| BlenderBIM | | | | | |
| FreeCAD | | | | | |
| Revit | | Partial | creates (2) arcs instead of a circle | :heavy_check_mark: | if native file has (2) arcs as the profile, it still exports as IFCCIRCLEPROFILEDEFs |
| Vectorworks | | | | | |
| Program | Version<br/>native/plugin | Imported Native File (PASS/FAIL) | Import Comments | Exported IFC File (PASS/FAIL) | Export Comments |
| ----------- | ------------------------- | --------------------------------- | ------------------------------------ | ------------------------------ | ------------------------------------------------------------------------------------- |
| ArchiCAD | | | | | |
| BlenderBIM | | | | | |
| FreeCAD | | | | | |
| Revit | | Partial | creates (2) arcs instead of a circle | :heavy_check_mark: | if native file has (2) arcs as the profile, it still exports as IFCCIRCLEPROFILEDEFs |
| Vectorworks | | | | | |
## Extrusions_Arcs
The application should be able to export and import an IFC file containing 2 extrusions with arcs in the profile.
![](Specifications_Test_Files/Extrusions_Arcs/from_Revit/imgs/Extrusions_Arcs_01.rvt.png)
#### Native Funtionality
| Program | Native funtion/object |
| ------------ | --------------------------------------- |
| ArchiCAD | |
@ -231,18 +180,14 @@ The application should be able to export and import an IFC file containing 2 ext
| Revit | Model-in-Place Family - Solid Extrusion |
| Vectorworks | |
### Import criteria
* The extrusion directions and profile positions are correct
* The extrusions can be changed after import
* The radius of the arcs can be changed after import
### Export criteria
- IFCEXTRUDEDAREASOLID
- IFCARBITRARYCLOSEDPROFILEDEF
- IFCCOMPOSITECURVE
@ -252,20 +197,17 @@ The application should be able to export and import an IFC file containing 2 ext
- (4) IFCCOMPOSITECURVESEGMENT *(the straight lines)*
- IFCPOLYLINE
### Results
Test files here: [FreeMVD_WorkFlow/Specifications_Test_Files/Arcs](https://gitlab.com/OpeningDesign/FreeMVD_WorkFlow/tree/master/FreeMVD_WorkFlow/Specifications_Test_Files/Extrusions_Arcs)
| Program | Version<br/>native/plugin | Imported Native File (PASS/FAIL) | Import Comments | Exported IFC File (PASS/FAIL) | Export Comments |
| ----------- | ------------------------- | -------------------------------- | --------------- | ----------------------------- | --------------- |
| ArchiCAD | | | | | |
| BlenderBIM | | | | | |
| FreeCAD | | | | | |
| Revit | | :heavy_check_mark: | | :heavy_check_mark: | |
| Vectorworks | | | | | |
<!--stackedit_data:
eyJoaXN0b3J5IjpbLTgxOTIwMzg0MF19
-->
| Program | Version<br/>native/plugin | Imported Native File (PASS/FAIL) | Import Comments | Exported IFC File (PASS/FAIL) | Export Comments |
| -------------------------------- | ------------------------- | --------------------------------- | --------------- | ------------------------------ | --------------- |
| ArchiCAD | | | | | |
| BlenderBIM | | | | | |
| FreeCAD | | | | | |
| Revit | | :heavy_check_mark: | | :heavy_check_mark: | |
| Vectorworks | | | | | |
| <!--stackedit_data: | | | | | |
| eyJoaXN0b3J5IjpbLTgxOTIwMzg0MF19 | | | | | |
| --> | | | | | |

View File

@ -1,182 +0,0 @@
ISO-10303-21;
HEADER;
FILE_DESCRIPTION(('ViewDefinition [CoordinationView]'),'2;1');
FILE_NAME('untitled.blend.ifc','2020-05-23T13:38:41-05:00',(),(),'IfcOpenShell 0.6.0b0','BlenderBIM 0.0.200511','Moult');
FILE_SCHEMA(('IFC4'));
ENDSEC;
DATA;
#1=IFCSIUNIT(*,.LENGTHUNIT.,$,.METRE.);
#2=IFCSIUNIT(*,.AREAUNIT.,$,.SQUARE_METRE.);
#3=IFCSIUNIT(*,.VOLUMEUNIT.,$,.CUBIC_METRE.);
#4=IFCUNITASSIGNMENT((#1,#2,#3));
#5=IFCACTORROLE(.ARCHITECT.,$,'Draws the pretty pictures');
#6=IFCPOSTALADDRESS(.OFFICE.,'Headquarters',$,'Cupboard under the stairs',('221B Baker Street'),$,'MyTown','Middle-Earth','42','Narnia');
#7=IFCTELECOMADDRESS(.OFFICE.,'Headquarters',$,('0123456789'),$,$,('dion@thinkmoult.com'),'https://thinkmoult.com',('irc://irc.freenode.net##architect'));
#8=IFCPERSON('Moult','Moult','Dion',('Sebastian','Isan','Tan'),('Mr'),('UE'),(#5),(#6,#7));
#9=IFCACTORROLE(.USERDEFINED.,'CONTRIBUTOR',$);
#10=IFCTELECOMADDRESS(.USERDEFINED.,'The main webpage of the software collection.','WEBPAGE',$,$,$,$,'https://ifcopenshell.org',$);
#11=IFCTELECOMADDRESS(.USERDEFINED.,'The BlenderBIM webpage of the software collection.','WEBPAGE',$,$,$,$,'https://blenderbim.org',$);
#12=IFCTELECOMADDRESS(.USERDEFINED.,'The source code repository of the software collection.','REPOSITORY',$,$,$,$,'https://github.com/IfcOpenShell/IfcOpenShell.git',$);
#13=IFCORGANIZATION($,'IfcOpenShell','IfcOpenShell is an open source (LGPL) software library that helps users and software developers to work with the IFC file format.',(#9),(#10,#11,#12));
#14=IFCCARTESIANPOINT((0.,0.,0.));
#15=IFCDIRECTION((0.,0.,1.));
#16=IFCDIRECTION((1.,0.,0.));
#17=IFCAXIS2PLACEMENT3D(#14,#15,#16);
#18=IFCPERSONANDORGANIZATION(#8,#13,$);
#19=IFCAPPLICATION(#13,'0.0.200511','BlenderBIM','BlenderBIM');
#20=IFCOWNERHISTORY(#18,#19,.READWRITE.,.NOTDEFINED.,1590259121,#18,#19,1590259121);
#21=IFCGEOMETRICREPRESENTATIONCONTEXT($,'Model',3,1.E-05,#17,$);
#22=IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Body','Model',*,*,*,*,#21,$,.MODEL_VIEW.,$);
#23=IFCPROJECT('03biTKmWH94Au6pQcFXMDQ',$,'multiple',$,$,$,$,(#21),#4);
#24=IFCOBJECTIVE('Beauty','The built form should be beautiful',.HARD.,$,$,$,$,$,$,.DESIGNINTENT.,$);
#25=IFCOBJECTIVE('Safety','No facilities exist to generate killer artificial intelligence',.HARD.,$,$,$,$,$,$,.HEALTHANDSAFETY.,$);
#26=IFCCARTESIANPOINT((-1.37279224395752,-0.899999976158142,3.27279210090637));
#27=IFCCARTESIANPOINT((-0.100000001490116,-0.899999976158142,2.));
#28=IFCCARTESIANPOINT((-0.100000001490116,-0.100000001490116,2.));
#29=IFCCARTESIANPOINT((-1.37279224395752,-0.100000001490116,3.27279210090637));
#30=IFCCARTESIANPOINT((0.748528122901917,-0.100000001490116,5.3941125869751));
#31=IFCCARTESIANPOINT((0.748528122901917,-0.899999976158142,5.3941125869751));
#32=IFCCARTESIANPOINT((2.02132034301758,-0.899999976158142,4.12132024765015));
#33=IFCCARTESIANPOINT((2.02132034301758,-0.100000001490116,4.12132024765015));
#34=IFCPOLYLOOP((#31,#30,#29,#26));
#35=IFCFACEOUTERBOUND(#34,.T.);
#36=IFCFACE((#35));
#37=IFCPOLYLOOP((#26,#27,#32,#31));
#38=IFCFACEOUTERBOUND(#37,.T.);
#39=IFCFACE((#38));
#40=IFCPOLYLOOP((#30,#33,#28,#29));
#41=IFCFACEOUTERBOUND(#40,.T.);
#42=IFCFACE((#41));
#43=IFCPOLYLOOP((#33,#30,#31,#32));
#44=IFCFACEOUTERBOUND(#43,.T.);
#45=IFCFACE((#44));
#46=IFCPOLYLOOP((#33,#32,#27,#28));
#47=IFCFACEOUTERBOUND(#46,.T.);
#48=IFCFACE((#47));
#49=IFCPOLYLOOP((#26,#29,#28,#27));
#50=IFCFACEOUTERBOUND(#49,.T.);
#51=IFCFACE((#50));
#52=IFCCLOSEDSHELL((#36,#39,#42,#45,#48,#51));
#53=IFCFACETEDBREP(#52);
#54=IFCSHAPEREPRESENTATION(#22,'Body','Brep',(#53));
#55=IFCREPRESENTATIONMAP(#17,#54);
#56=IFCCARTESIANPOINT((-1.99840139138572E-16,-0.899999618530273,7.90000009536743));
#57=IFCCARTESIANPOINT((4.,-0.899999618530273,7.90000009536743));
#58=IFCCARTESIANPOINT((1.99840139138572E-16,-0.899999618530273,6.09999990463257));
#59=IFCCARTESIANPOINT((4.,-0.899999618530273,6.09999990463257));
#60=IFCCARTESIANPOINT((1.99840139138572E-16,-0.0999996438622475,6.09999990463257));
#61=IFCCARTESIANPOINT((4.,-0.0999996438622475,6.09999990463257));
#62=IFCCARTESIANPOINT((-1.99840139138572E-16,-0.0999996438622475,7.90000009536743));
#63=IFCCARTESIANPOINT((4.,-0.0999996438622475,7.90000009536743));
#64=IFCPOLYLOOP((#60,#62,#63,#61));
#65=IFCFACEOUTERBOUND(#64,.T.);
#66=IFCFACE((#65));
#67=IFCPOLYLOOP((#57,#63,#62,#56));
#68=IFCFACEOUTERBOUND(#67,.T.);
#69=IFCFACE((#68));
#70=IFCPOLYLOOP((#56,#62,#60,#58));
#71=IFCFACEOUTERBOUND(#70,.T.);
#72=IFCFACE((#71));
#73=IFCPOLYLOOP((#61,#63,#57,#59));
#74=IFCFACEOUTERBOUND(#73,.T.);
#75=IFCFACE((#74));
#76=IFCPOLYLOOP((#59,#57,#56,#58));
#77=IFCFACEOUTERBOUND(#76,.T.);
#78=IFCFACE((#77));
#79=IFCPOLYLOOP((#61,#59,#58,#60));
#80=IFCFACEOUTERBOUND(#79,.T.);
#81=IFCFACE((#80));
#82=IFCCLOSEDSHELL((#66,#69,#72,#75,#78,#81));
#83=IFCFACETEDBREP(#82);
#84=IFCSHAPEREPRESENTATION(#22,'Body','Brep',(#83));
#85=IFCREPRESENTATIONMAP(#17,#84);
#86=IFCCARTESIANPOINT((0.100000001490116,-0.899999976158142,0.));
#87=IFCCARTESIANPOINT((0.100000001490116,-0.899999976158142,2.));
#88=IFCCARTESIANPOINT((1.89999997615814,-0.899999976158142,0.));
#89=IFCCARTESIANPOINT((1.89999997615814,-0.899999976158142,2.));
#90=IFCCARTESIANPOINT((1.89999997615814,-0.100000001490116,0.));
#91=IFCCARTESIANPOINT((1.89999997615814,-0.100000001490116,2.));
#92=IFCCARTESIANPOINT((0.100000001490116,-0.100000001490116,0.));
#93=IFCCARTESIANPOINT((0.100000001490116,-0.100000001490116,2.));
#94=IFCPOLYLOOP((#93,#91,#90,#92));
#95=IFCFACEOUTERBOUND(#94,.T.);
#96=IFCFACE((#95));
#97=IFCPOLYLOOP((#87,#93,#92,#86));
#98=IFCFACEOUTERBOUND(#97,.T.);
#99=IFCFACE((#98));
#100=IFCPOLYLOOP((#86,#92,#90,#88));
#101=IFCFACEOUTERBOUND(#100,.T.);
#102=IFCFACE((#101));
#103=IFCPOLYLOOP((#91,#93,#87,#89));
#104=IFCFACEOUTERBOUND(#103,.T.);
#105=IFCFACE((#104));
#106=IFCPOLYLOOP((#89,#87,#86,#88));
#107=IFCFACEOUTERBOUND(#106,.T.);
#108=IFCFACE((#107));
#109=IFCPOLYLOOP((#91,#89,#88,#90));
#110=IFCFACEOUTERBOUND(#109,.T.);
#111=IFCFACE((#110));
#112=IFCCLOSEDSHELL((#96,#99,#102,#105,#108,#111));
#113=IFCFACETEDBREP(#112);
#114=IFCSHAPEREPRESENTATION(#22,'Body','Brep',(#113));
#115=IFCREPRESENTATIONMAP(#17,#114);
#116=IFCLOCALPLACEMENT($,#17);
#117=IFCBUILDING('3vCTfBNwr06RC435WkcWzH',#20,'Default Building','',$,#116,$,$,.ELEMENT.,$,$,$);
#118=IFCRELAGGREGATES('1l_eoz4CLFqwQ0m3HM$gHQ',#20,$,$,#23,(#117));
#119=IFCCARTESIANPOINT((0.,0.,0.));
#120=IFCDIRECTION((0.,0.,1.));
#121=IFCDIRECTION((1.,0.,0.));
#122=IFCAXIS2PLACEMENT3D(#119,#120,#121);
#123=IFCLOCALPLACEMENT($,#122);
#124=IFCDIRECTION((1.,0.,0.));
#125=IFCDIRECTION((0.,1.,0.));
#126=IFCCARTESIANPOINT((0.,0.,0.));
#127=IFCDIRECTION((0.,0.,1.));
#128=IFCCARTESIANTRANSFORMATIONOPERATOR3D(#124,#125,#126,1.,#127);
#129=IFCMAPPEDITEM(#55,#128);
#130=IFCSHAPEREPRESENTATION(#22,'Body','MappedRepresentation',(#129));
#131=IFCPRODUCTDEFINITIONSHAPE($,$,(#130));
#132=IFCBUILDINGELEMENTPROXY('2vghw0Vaf489N2O8RV4mLV',#20,'Extrude001','',$,#123,#131,$,$);
#133=IFCCARTESIANPOINT((0.,0.,0.));
#134=IFCDIRECTION((0.,0.,1.));
#135=IFCDIRECTION((1.,0.,0.));
#136=IFCAXIS2PLACEMENT3D(#133,#134,#135);
#137=IFCLOCALPLACEMENT($,#136);
#138=IFCDIRECTION((1.,0.,0.));
#139=IFCDIRECTION((0.,1.,0.));
#140=IFCCARTESIANPOINT((0.,0.,0.));
#141=IFCDIRECTION((0.,0.,1.));
#142=IFCCARTESIANTRANSFORMATIONOPERATOR3D(#138,#139,#140,1.,#141);
#143=IFCMAPPEDITEM(#85,#142);
#144=IFCSHAPEREPRESENTATION(#22,'Body','MappedRepresentation',(#143));
#145=IFCPRODUCTDEFINITIONSHAPE($,$,(#144));
#146=IFCBUILDINGELEMENTPROXY('2GBoYAn8514wJYrda0FRVd',#20,'Extrude002','',$,#137,#145,$,$);
#147=IFCCARTESIANPOINT((0.,0.,0.));
#148=IFCDIRECTION((0.,0.,1.));
#149=IFCDIRECTION((1.,0.,0.));
#150=IFCAXIS2PLACEMENT3D(#147,#148,#149);
#151=IFCLOCALPLACEMENT($,#150);
#152=IFCDIRECTION((1.,0.,0.));
#153=IFCDIRECTION((0.,1.,0.));
#154=IFCCARTESIANPOINT((0.,0.,0.));
#155=IFCDIRECTION((0.,0.,1.));
#156=IFCCARTESIANTRANSFORMATIONOPERATOR3D(#152,#153,#154,1.,#155);
#157=IFCMAPPEDITEM(#115,#156);
#158=IFCSHAPEREPRESENTATION(#22,'Body','MappedRepresentation',(#157));
#159=IFCPRODUCTDEFINITIONSHAPE($,$,(#158));
#160=IFCBUILDINGELEMENTPROXY('0iRwTtZ1vDVg4QoKF$wB$X',#20,'Extrude','',$,#151,#159,$,$);
#161=IFCCOLOURRGB($,0.800000011920929,0.800000011920929,0.800000011920929);
#162=IFCSURFACESTYLERENDERING(#161,$,$,$,$,$,$,$,.NOTDEFINED.);
#163=IFCSURFACESTYLE('35',.BOTH.,(#162));
#164=IFCSTYLEDITEM(#53,(#163),'35');
#165=IFCCOLOURRGB($,0.800000011920929,0.800000011920929,0.800000011920929);
#166=IFCSURFACESTYLERENDERING(#165,$,$,$,$,$,$,$,.NOTDEFINED.);
#167=IFCSURFACESTYLE('35',.BOTH.,(#166));
#168=IFCSTYLEDITEM(#83,(#167),'35');
#169=IFCCOLOURRGB($,0.800000011920929,0.800000011920929,0.800000011920929);
#170=IFCSURFACESTYLERENDERING(#169,$,$,$,$,$,$,$,.NOTDEFINED.);
#171=IFCSURFACESTYLE('35',.BOTH.,(#170));
#172=IFCSTYLEDITEM(#113,(#171),'35');
#173=IFCRELCONTAINEDINSPATIALSTRUCTURE('2QqPjJJlDD_Rm7XxDLR0Dx',#20,$,$,(#132,#146,#160),#117);
ENDSEC;
END-ISO-10303-21;

View File

@ -0,0 +1,138 @@
ISO-10303-21;
HEADER;
FILE_DESCRIPTION(('ViewDefinition [CoordinationView]'),'2;1');
FILE_NAME('Extrusions_Rectangles_04_PASS_blend.ifc','2020-06-21T08:25:11-05:00',(),(),'IfcOpenShell 0.6.0b0','BlenderBIM 0.0.200621','Moult');
FILE_SCHEMA(('IFC4'));
ENDSEC;
DATA;
#1=IFCSIUNIT(*,.LENGTHUNIT.,$,.METRE.);
#2=IFCSIUNIT(*,.AREAUNIT.,$,.SQUARE_METRE.);
#3=IFCSIUNIT(*,.VOLUMEUNIT.,$,.CUBIC_METRE.);
#4=IFCUNITASSIGNMENT((#1,#2,#3));
#5=IFCACTORROLE(.ARCHITECT.,$,'Draws the pretty pictures');
#6=IFCPOSTALADDRESS(.OFFICE.,'Headquarters',$,'Cupboard under the stairs',('221B Baker Street'),$,'MyTown','Middle-Earth','42','Narnia');
#7=IFCTELECOMADDRESS(.OFFICE.,'Headquarters',$,('0123456789'),$,$,('dion@thinkmoult.com'),'https://thinkmoult.com',('irc://irc.freenode.net##architect'));
#8=IFCPERSON('Moult','Moult','Dion',('Sebastian','Isan','Tan'),('Mr'),('UE'),(#5),(#6,#7));
#9=IFCACTORROLE(.USERDEFINED.,'CONTRIBUTOR',$);
#10=IFCTELECOMADDRESS(.USERDEFINED.,'The main webpage of the software collection.','WEBPAGE',$,$,$,$,'https://ifcopenshell.org',$);
#11=IFCTELECOMADDRESS(.USERDEFINED.,'The BlenderBIM webpage of the software collection.','WEBPAGE',$,$,$,$,'https://blenderbim.org',$);
#12=IFCTELECOMADDRESS(.USERDEFINED.,'The source code repository of the software collection.','REPOSITORY',$,$,$,$,'https://github.com/IfcOpenShell/IfcOpenShell.git',$);
#13=IFCORGANIZATION($,'IfcOpenShell','IfcOpenShell is an open source (LGPL) software library that helps users and software developers to work with the IFC file format.',(#9),(#10,#11,#12));
#14=IFCCARTESIANPOINT((0.,0.,0.));
#15=IFCDIRECTION((0.,0.,1.));
#16=IFCDIRECTION((1.,0.,0.));
#17=IFCAXIS2PLACEMENT3D(#14,#15,#16);
#18=IFCPERSONANDORGANIZATION(#8,#13,$);
#19=IFCAPPLICATION(#13,'0.0.200621','BlenderBIM','BlenderBIM');
#20=IFCOWNERHISTORY(#18,#19,.READWRITE.,.NOCHANGE.,1592745911,#18,#19,1592745911);
#21=IFCGEOMETRICREPRESENTATIONCONTEXT($,'Model',3,1.E-05,#17,$);
#22=IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Body','Model',*,*,*,*,#21,$,.MODEL_VIEW.,$);
#23=IFCPROJECT('03biTKmWH94Au6pQcFXMDQ',$,'multiple',$,$,$,$,(#21),#4);
#24=IFCOBJECTIVE('Beauty','The built form should be beautiful',.HARD.,$,$,$,$,$,$,.DESIGNINTENT.,$);
#25=IFCOBJECTIVE('Safety','No facilities exist to generate killer artificial intelligence',.HARD.,$,$,$,$,$,$,.HEALTHANDSAFETY.,$);
#26=IFCCARTESIANPOINT((-0.399999976158142,-0.899999976158142));
#27=IFCCARTESIANPOINT((0.400000005960464,-0.899999976158142));
#28=IFCCARTESIANPOINT((0.400000005960464,0.899999976158142));
#29=IFCCARTESIANPOINT((-0.399999976158142,0.899999976158142));
#30=IFCPOLYLINE((#26,#27,#28,#29,#26));
#31=IFCARBITRARYCLOSEDPROFILEDEF(.AREA.,$,#30);
#32=IFCCARTESIANPOINT((1.,-0.5,0.));
#33=IFCDIRECTION((-0.,0.,1.));
#34=IFCDIRECTION((0.,1.,0.));
#35=IFCAXIS2PLACEMENT3D(#32,#33,#34);
#36=IFCDIRECTION((0.,0.,1.));
#37=IFCEXTRUDEDAREASOLID(#31,#35,#36,2.);
#38=IFCSHAPEREPRESENTATION(#22,'Body','SweptSolid',(#37));
#39=IFCREPRESENTATIONMAP(#17,#38);
#40=IFCCARTESIANPOINT((-0.399999976158142,-0.900000095367432));
#41=IFCCARTESIANPOINT((0.400000005960464,-0.900000095367432));
#42=IFCCARTESIANPOINT((0.400000005960464,0.900000095367432));
#43=IFCCARTESIANPOINT((-0.399999976158142,0.900000095367432));
#44=IFCPOLYLINE((#40,#41,#42,#43,#40));
#45=IFCARBITRARYCLOSEDPROFILEDEF(.AREA.,$,#44);
#46=IFCCARTESIANPOINT((0.,-0.499999642372131,7.));
#47=IFCDIRECTION((1.,0.,2.22044565220362E-16));
#48=IFCDIRECTION((0.,1.,0.));
#49=IFCAXIS2PLACEMENT3D(#46,#47,#48);
#50=IFCDIRECTION((0.,-2.22044604925031E-16,1.));
#51=IFCEXTRUDEDAREASOLID(#45,#49,#50,4.);
#52=IFCSHAPEREPRESENTATION(#22,'Body','SweptSolid',(#51));
#53=IFCREPRESENTATIONMAP(#17,#52);
#54=IFCCARTESIANPOINT((-0.399999976158142,-0.900000035762787));
#55=IFCCARTESIANPOINT((0.399999976158142,-0.900000035762787));
#56=IFCCARTESIANPOINT((0.399999976158142,0.899999916553497));
#57=IFCCARTESIANPOINT((-0.399999976158142,0.899999916553497));
#58=IFCPOLYLINE((#54,#55,#56,#57,#54));
#59=IFCARBITRARYCLOSEDPROFILEDEF(.AREA.,$,#58);
#60=IFCCARTESIANPOINT((-0.736396074295044,-0.5,2.63639616966248));
#61=IFCDIRECTION((0.707106828689575,0.,0.70710676908493));
#62=IFCDIRECTION((0.,1.,0.));
#63=IFCAXIS2PLACEMENT3D(#60,#61,#62);
#64=IFCDIRECTION((0.,1.9868217293606E-08,1.));
#65=IFCEXTRUDEDAREASOLID(#59,#63,#64,2.99999984105428);
#66=IFCSHAPEREPRESENTATION(#22,'Body','SweptSolid',(#65));
#67=IFCREPRESENTATIONMAP(#17,#66);
#68=IFCCARTESIANPOINT((0.,0.,0.));
#69=IFCDIRECTION((0.,0.,1.));
#70=IFCDIRECTION((1.,0.,0.));
#71=IFCAXIS2PLACEMENT3D(#68,#69,#70);
#72=IFCLOCALPLACEMENT($,#71);
#73=IFCBUILDING('3vCTfBNwr06RC435WkcWzH',#20,'Default Building','',$,#72,$,$,.ELEMENT.,$,$,$);
#74=IFCRELAGGREGATES('21tSX4HUXAngEZ4$rpdX4k',#20,$,$,#23,(#73));
#75=IFCCARTESIANPOINT((0.,0.,0.));
#76=IFCDIRECTION((0.,0.,1.));
#77=IFCDIRECTION((1.,0.,0.));
#78=IFCAXIS2PLACEMENT3D(#75,#76,#77);
#79=IFCLOCALPLACEMENT(#72,#78);
#80=IFCDIRECTION((1.,0.,0.));
#81=IFCDIRECTION((0.,1.,0.));
#82=IFCCARTESIANPOINT((0.,0.,0.));
#83=IFCDIRECTION((0.,0.,1.));
#84=IFCCARTESIANTRANSFORMATIONOPERATOR3D(#80,#81,#82,1.,#83);
#85=IFCMAPPEDITEM(#39,#84);
#86=IFCSHAPEREPRESENTATION(#22,'Body','MappedRepresentation',(#85));
#87=IFCPRODUCTDEFINITIONSHAPE($,$,(#86));
#88=IFCBUILDINGELEMENTPROXY('0iRwTtZ1vDVg4QoKF$wB$X',#20,'Extrude','',$,#79,#87,$,$);
#89=IFCCARTESIANPOINT((0.,0.,0.));
#90=IFCDIRECTION((0.,0.,1.));
#91=IFCDIRECTION((1.,0.,0.));
#92=IFCAXIS2PLACEMENT3D(#89,#90,#91);
#93=IFCLOCALPLACEMENT(#72,#92);
#94=IFCDIRECTION((1.,0.,0.));
#95=IFCDIRECTION((0.,1.,0.));
#96=IFCCARTESIANPOINT((0.,0.,0.));
#97=IFCDIRECTION((0.,0.,1.));
#98=IFCCARTESIANTRANSFORMATIONOPERATOR3D(#94,#95,#96,1.,#97);
#99=IFCMAPPEDITEM(#53,#98);
#100=IFCSHAPEREPRESENTATION(#22,'Body','MappedRepresentation',(#99));
#101=IFCPRODUCTDEFINITIONSHAPE($,$,(#100));
#102=IFCBUILDINGELEMENTPROXY('2GBoYAn8514wJYrda0FRVd',#20,'Extrude002','',$,#93,#101,$,$);
#103=IFCCARTESIANPOINT((0.,0.,0.));
#104=IFCDIRECTION((0.,0.,1.));
#105=IFCDIRECTION((1.,0.,0.));
#106=IFCAXIS2PLACEMENT3D(#103,#104,#105);
#107=IFCLOCALPLACEMENT(#72,#106);
#108=IFCDIRECTION((1.,0.,0.));
#109=IFCDIRECTION((0.,1.,0.));
#110=IFCCARTESIANPOINT((0.,0.,0.));
#111=IFCDIRECTION((0.,0.,1.));
#112=IFCCARTESIANTRANSFORMATIONOPERATOR3D(#108,#109,#110,1.,#111);
#113=IFCMAPPEDITEM(#67,#112);
#114=IFCSHAPEREPRESENTATION(#22,'Body','MappedRepresentation',(#113));
#115=IFCPRODUCTDEFINITIONSHAPE($,$,(#114));
#116=IFCBUILDINGELEMENTPROXY('2vghw0Vaf489N2O8RV4mLV',#20,'Extrude001','',$,#107,#115,$,$);
#117=IFCCOLOURRGB($,0.800000011920929,0.800000011920929,0.800000011920929);
#118=IFCSURFACESTYLERENDERING(#117,$,$,$,$,$,$,$,.NOTDEFINED.);
#119=IFCSURFACESTYLE('35',.BOTH.,(#118));
#120=IFCSTYLEDITEM(#37,(#119),'35');
#121=IFCCOLOURRGB($,0.800000011920929,0.800000011920929,0.800000011920929);
#122=IFCSURFACESTYLERENDERING(#121,$,$,$,$,$,$,$,.NOTDEFINED.);
#123=IFCSURFACESTYLE('35',.BOTH.,(#122));
#124=IFCSTYLEDITEM(#51,(#123),'35');
#125=IFCCOLOURRGB($,0.800000011920929,0.800000011920929,0.800000011920929);
#126=IFCSURFACESTYLERENDERING(#125,$,$,$,$,$,$,$,.NOTDEFINED.);
#127=IFCSURFACESTYLE('35',.BOTH.,(#126));
#128=IFCSTYLEDITEM(#65,(#127),'35');
#129=IFCRELCONTAINEDINSPATIALSTRUCTURE('3zapqkYpXClP4jHhdDYinu',#20,$,$,(#88,#102,#116),#73);
ENDSEC;
END-ISO-10303-21;