IFC 4.3.0.1 (IFC4X3_TC1)

Annex E Examples - UT_SpatialStructure_4

Example overview

UT_SpatialStructure_4

Intent

This UT establishes a spatial structure for the level crossing storyline. The intention is to serve as a skeleton for upcoming unit tests for this storyline.

It is based on the storylines SLLC-DD (IFC Rail phase 2) and bSFi_IR_SLRD_DD (IFC Infra Deployment)

Prerequisites

None

Content

This scenario covers the following concepts and/or IFC entities: - Georeferencing - IfcProjectedCRS - IfcMapConversion - Spatial structure - IfcSite - IfcRailway - IfcRoad - IfcFacilityPart with correct PredefinedType - IfcRelInterferesElements - Geometry - IfcExtrudedAreaSolid - IfcBoundingBox

Situation

The figure below shows the extent of the IfcSite and its georeferenced location.

Figure 63fcb32f-228f-483e-82c4-d716794f5d62

The figures below shows the spatial breakdown of the project into IfcFacility (blue) and IfcFacilityPart (turkoise).

Figure 30eabde1-695a-4b94-a968-11c09e0c9859
Figure 2f189565-089b-4aa2-a8a0-01c23fabe1df

Project Breakdown

To represent the project breakdown for this unit test, we envision the following project structure:


Expected Results

The aim of this Unit Test, as explained above, is to test the implementation of the project breakdown through the spatial structure concepts of IFC 4.3.

As such, the expected results are:

  1. Screen-shot of the spatial structure breakdown as represented in the native application,
  2. The resulting IFC file containing the spatial structure requested.

For example, the application should be able to display something like what is shown in the picture below:

Figure 375724c9-8e88-4e5b-ad2e-7190082a17a7

Supporting files

Following files correspond to this scenario:

Filename Description
UT_SpatialStructure_4.ifc IFC file with the content
Figure 1 - Situation.png picture showing a map view of the situation
Figure 2 - Toivola_area_borders.JPG picture showing a map over different facilities and parts - part1
Figure 3 - Toivola_area_borders2.JPG picture showing a map over different facilities and parts - part 2
Figure 4 - result.png picture showing possible result
Toivola_area_borders.dwg dwg file as basis for figures 2 and 3
IFCTreeView.png picture showing file structure in IFCTreeView
Table 6021f59b-2d65-415e-9122-7c7b42e3ac74

Images

  • Figure 97d9b914-5b1e-4f8f-a9a3-51a74aa07fcf
  • Figure 0b4d6693-b91c-4029-9014-bac53301fb93
  • Figure 6fea6ff4-ab06-44b0-8151-3f5fb47beee6
  • Figure 6486298c-a8fd-4c08-ad5d-0e3330cd49e1
  • Figure 27325363-6f71-4624-a2e9-7476f09eb69f
  • Figure d3365311-05d5-4738-9e31-df5c29cb6dce

IFC-SPF source

ISO-10303-21;
HEADER;
FILE_DESCRIPTION(('ViewDefinition [Ifc4X3NotAssigned]'),'2;1');
FILE_NAME(
/* name */ 'UT_SpatialStructure_4.ifc',
/* time_stamp */ '2021-01-21T14:36:20',
/* author */ ('lars'),
/* organization */ ('Unknown'),
/* preprocessor_version */ 'GeometryGymIFC v0.1.4.0 by Geometry Gym Pty Ltd built 2020-11-12T09:32:58',
/* originating_system */ 'UT_RSS_4 v1.0.0.0',
/* authorization */ 'None');

FILE_SCHEMA (('IFC4X3_RC2'));
ENDSEC;

DATA;
#1= IFCCARTESIANPOINT((0.0,0.0,0.0));
#2= IFCAXIS2PLACEMENT3D(#1,$,$);
#3= IFCLOCALPLACEMENT($,#2);
#4= IFCSITE('2NjC27sCn3gwpGGryTu_CQ',#10,'Site',$,$,#3,#31,$,$,$,$,$,$,$);
#5= IFCPERSON('lars','lars',$,$,$,$,$,$);
#6= IFCORGANIZATION($,'Unknown',$,$,$);
#7= IFCPERSONANDORGANIZATION(#5,#6,$);
#8= IFCAPPLICATION(#9,'0.1.4.0','UT_RSS_2 v1.0.0.0','UT_RSS_2 v1.0.0.0');
#9= IFCORGANIZATION($,'Geometry Gym Pty Ltd',$,$,$);
#10= IFCOWNERHISTORY(#7,#8,$,.ADDED.,1611236179,$,$,1611236179);
#11= IFCPROJECT('3NPL0sHqL37h1Ybzl4hNSg',#10,'Spatial structure skeleton for Level crossing storyline',$,$,$,$,(#24),#12);
#12= IFCUNITASSIGNMENT((#13,#14,#15,#16,#17));
#13= IFCSIUNIT(*,.LENGTHUNIT.,$,.METRE.);
#14= IFCSIUNIT(*,.AREAUNIT.,$,.SQUARE_METRE.);
#15= IFCSIUNIT(*,.VOLUMEUNIT.,$,.CUBIC_METRE.);
#16= IFCSIUNIT(*,.PLANEANGLEUNIT.,$,.RADIAN.);
#17= IFCSIUNIT(*,.TIMEUNIT.,$,.SECOND.);
#18= IFCRELAGGREGATES('0cZel8fzP8kQOdCyKs2vlv',#10,$,$,#11,(#4));
#19= IFCCARTESIANPOINT((0.0,0.0,0.0));
#20= IFCDIRECTION((0.0,0.0,1.0));
#21= IFCDIRECTION((1.0,0.0,0.0));
#22= IFCAXIS2PLACEMENT3D(#19,#20,#21);
#23= IFCDIRECTION((1.0,0.0,0.0));
#24= IFCGEOMETRICREPRESENTATIONCONTEXT($,'Model',3,0.00000001,#22,#25);
#25= IFCDIRECTION((0.0,1.0));
#26= IFCPROJECTEDCRS('EPSG:3878',$,'European Terrestrial Reference System 1989','N2000',$,$,$);
#27= IFCMAPCONVERSION(#24,#26,24525000.0,6876000.0,0.0,1.0,0.0,1.0);
#28= IFCCARTESIANPOINT((400.0,700.0,100.0));
#29= IFCBOUNDINGBOX(#28,415.0,337.0,40.0);
#30= IFCSHAPEREPRESENTATION(#24,'Box','BoundingBox',(#29));
#31= IFCPRODUCTDEFINITIONSHAPE($,$,(#30));
#32= IFCROAD('3ZHPGICrH2Fu60GMv0tD4H',#10,'Sammalammintie',$,$,#3,#55,$,$);
#33= IFCCARTESIANPOINT((425.883,926.168));
#34= IFCCARTESIANPOINT((425.849,945.975));
#35= IFCCARTESIANPOINT((495.835,954.723));
#36= IFCCARTESIANPOINT((594.173,939.512));
#37= IFCCARTESIANPOINT((623.792,932.47));
#38= IFCCARTESIANPOINT((653.055,922.201));
#39= IFCCARTESIANPOINT((693.281,894.012));
#40= IFCCARTESIANPOINT((749.574,786.526));
#41= IFCCARTESIANPOINT((802.3,729.938));
#42= IFCCARTESIANPOINT((786.196,713.887));
#43= IFCCARTESIANPOINT((710.153,794.224));
#44= IFCCARTESIANPOINT((648.204,891.377));
#45= IFCCARTESIANPOINT((630.467,899.733));
#46= IFCCARTESIANPOINT((522.074,916.146));
#47= IFCCARTESIANPOINT((425.833,926.168));
#48= IFCPOLYLINE((#33,#34,#35,#36,#37,#38,#39,#40,#41,#42,#43,#44,#45,#46,#47));
#49= IFCARBITRARYCLOSEDPROFILEDEF(.AREA.,'Sammalammintie area',#48);
#50= IFCCARTESIANPOINT((0.0,0.0,100.0));
#51= IFCAXIS2PLACEMENT3D(#50,$,$);
#52= IFCDIRECTION((0.0,0.0,1.0));
#53= IFCEXTRUDEDAREASOLID(#49,#51,#52,40.0);
#54= IFCSHAPEREPRESENTATION(#24,'Body','SweptSolid',(#53));
#55= IFCPRODUCTDEFINITIONSHAPE($,$,(#54));
#56= IFCRELAGGREGATES('3nLbaREiP08x82o5a7A6Z0',#10,$,$,#4,(#32,#217,#258,#300));
#57= IFCCARTESIANPOINT((0.0,0.0,0.0));
#58= IFCAXIS2PLACEMENT3D(#57,$,$);
#59= IFCLOCALPLACEMENT(#3,#58);
#60= IFCFACILITYPART('0BjWByapHE6gMux88pT_gs',#10,'Sammalammintie segment 150 - 230',$,$,#59,#74,$,$,IFCROADPARTTYPEENUM(.ROADSEGMENT.),.LONGITUDINAL.);
#61= IFCRELAGGREGATES('22pDz_ExT1pRk2eDPQPTNa',#10,$,$,#32,(#60,#78,#95,#112,#129,#146,#165,#187));
#62= IFCCARTESIANPOINT((426.881,927.17));
#63= IFCCARTESIANPOINT((426.85,944.977));
#64= IFCCARTESIANPOINT((496.852,945.098));
#65= IFCCARTESIANPOINT((496.882,927.291));
#66= IFCCARTESIANPOINT((426.881,927.17));
#67= IFCPOLYLINE((#62,#63,#64,#65,#66));
#68= IFCARBITRARYCLOSEDPROFILEDEF(.AREA.,'Sammalammintie segment 150 - 230 area',#67);
#69= IFCCARTESIANPOINT((0.0,0.0,100.0));
#70= IFCAXIS2PLACEMENT3D(#69,$,$);
#71= IFCDIRECTION((0.0,0.0,1.0));
#72= IFCEXTRUDEDAREASOLID(#68,#70,#71,40.0);
#73= IFCSHAPEREPRESENTATION(#24,'Body','SweptSolid',(#72));
#74= IFCPRODUCTDEFINITIONSHAPE($,$,(#73));
#75= IFCCARTESIANPOINT((0.0,0.0,0.0));
#76= IFCAXIS2PLACEMENT3D(#75,$,$);
#77= IFCLOCALPLACEMENT(#3,#76);
#78= IFCFACILITYPART('28dpdn0vn3ce8IlyaoznfL',#10,'Sammalammintie P\X2\00E4\X0\ij\X2\00E4\X0\nteentie intersection',$,$,#77,#91,$,$,IFCROADPARTTYPEENUM(.INTERSECTION.),.LONGITUDINAL.);
#79= IFCCARTESIANPOINT((496.889,927.291));
#80= IFCCARTESIANPOINT((496.837,953.497));
#81= IFCCARTESIANPOINT((525.502,946.633));
#82= IFCCARTESIANPOINT((521.238,917.378));
#83= IFCCARTESIANPOINT((496.889,927.291));
#84= IFCPOLYLINE((#79,#80,#81,#82,#83));
#85= IFCARBITRARYCLOSEDPROFILEDEF(.AREA.,'Sammalammintie P\X2\00E4\X0\ij\X2\00E4\X0\nteentie intersection area',#84);
#86= IFCCARTESIANPOINT((0.0,0.0,100.0));
#87= IFCAXIS2PLACEMENT3D(#86,$,$);
#88= IFCDIRECTION((0.0,0.0,1.0));
#89= IFCEXTRUDEDAREASOLID(#85,#87,#88,40.0);
#90= IFCSHAPEREPRESENTATION(#24,'Body','SweptSolid',(#89));
#91= IFCPRODUCTDEFINITIONSHAPE($,$,(#90));
#92= IFCCARTESIANPOINT((0.0,0.0,0.0));
#93= IFCAXIS2PLACEMENT3D(#92,$,$);
#94= IFCLOCALPLACEMENT(#3,#93);
#95= IFCFACILITYPART('2B5vbxWpv7KOcdJoB2Pp_7',#10,'Sammalammintie segment 247 - 270',$,$,#94,#108,$,$,IFCROADPARTTYPEENUM(.ROADSEGMENT.),.LONGITUDINAL.);
#96= IFCCARTESIANPOINT((521.907,922.13));
#97= IFCCARTESIANPOINT((524.835,942.895));
#98= IFCCARTESIANPOINT((547.74,939.666));
#99= IFCCARTESIANPOINT((544.813,918.901));
#100= IFCCARTESIANPOINT((521.907,922.13));
#101= IFCPOLYLINE((#96,#97,#98,#99,#100));
#102= IFCARBITRARYCLOSEDPROFILEDEF(.AREA.,'Sammalammintie segment 247 - 270 area',#101);
#103= IFCCARTESIANPOINT((0.0,0.0,100.0));
#104= IFCAXIS2PLACEMENT3D(#103,$,$);
#105= IFCDIRECTION((0.0,0.0,1.0));
#106= IFCEXTRUDEDAREASOLID(#102,#104,#105,40.0);
#107= IFCSHAPEREPRESENTATION(#24,'Body','SweptSolid',(#106));
#108= IFCPRODUCTDEFINITIONSHAPE($,$,(#107));
#109= IFCCARTESIANPOINT((0.0,0.0,0.0));
#110= IFCAXIS2PLACEMENT3D(#109,$,$);
#111= IFCLOCALPLACEMENT(#3,#110);
#112= IFCFACILITYPART('235tSjkXT6bxgGk4RyA_dk',#10,'Sammalammintie safety equipment road intersection',$,$,#111,#125,$,$,IFCROADPARTTYPEENUM(.INTERSECTION.),.LONGITUDINAL.);
#113= IFCCARTESIANPOINT((544.68,917.959));
#114= IFCCARTESIANPOINT((547.95,941.155));
#115= IFCCARTESIANPOINT((570.844,937.928));
#116= IFCCARTESIANPOINT((567.575,914.732));
#117= IFCCARTESIANPOINT((544.68,917.959));
#118= IFCPOLYLINE((#113,#114,#115,#116,#117));
#119= IFCARBITRARYCLOSEDPROFILEDEF(.AREA.,'Sammalammintie safety equipment road intersection area',#118);
#120= IFCCARTESIANPOINT((0.0,0.0,100.0));
#121= IFCAXIS2PLACEMENT3D(#120,$,$);
#122= IFCDIRECTION((0.0,0.0,1.0));
#123= IFCEXTRUDEDAREASOLID(#119,#121,#122,40.0);
#124= IFCSHAPEREPRESENTATION(#24,'Body','SweptSolid',(#123));
#125= IFCPRODUCTDEFINITIONSHAPE($,$,(#124));
#126= IFCCARTESIANPOINT((0.0,0.0,0.0));
#127= IFCAXIS2PLACEMENT3D(#126,$,$);
#128= IFCLOCALPLACEMENT(#3,#127);
#129= IFCFACILITYPART('0y4DVUY9n2rx2gP$zcuP6l',#10,'Sammalamminitie level crossing',$,$,#128,#142,$,$,IFCROADPARTTYPEENUM(.RAILWAYCROSSING.),.LONGITUDINAL.);
#130= IFCCARTESIANPOINT((567.67,915.406));
#131= IFCCARTESIANPOINT((571.39,941.709));
#132= IFCCARTESIANPOINT((593.043,938.661));
#133= IFCCARTESIANPOINT((589.335,912.352));
#134= IFCCARTESIANPOINT((567.67,915.406));
#135= IFCPOLYLINE((#130,#131,#132,#133,#134));
#136= IFCARBITRARYCLOSEDPROFILEDEF(.AREA.,'Sammalamminitie level crossing area',#135);
#137= IFCCARTESIANPOINT((0.0,0.0,100.0));
#138= IFCAXIS2PLACEMENT3D(#137,$,$);
#139= IFCDIRECTION((0.0,0.0,1.0));
#140= IFCEXTRUDEDAREASOLID(#136,#138,#139,40.0);
#141= IFCSHAPEREPRESENTATION(#24,'Body','SweptSolid',(#140));
#142= IFCPRODUCTDEFINITIONSHAPE($,$,(#141));
#143= IFCCARTESIANPOINT((0.0,0.0,0.0));
#144= IFCAXIS2PLACEMENT3D(#143,$,$);
#145= IFCLOCALPLACEMENT(#3,#144);
#146= IFCFACILITYPART('28J3XJCgj2Vg8u5oyIfIxn',#10,'Sammalammimtie segment 315 - 358',$,$,#145,#161,$,$,IFCROADPARTTYPEENUM(.ROADSEGMENT.),.LONGITUDINAL.);
#147= IFCCARTESIANPOINT((589.489,913.442));
#148= IFCCARTESIANPOINT((592.647,935.851));
#149= IFCCARTESIANPOINT((623.554,931.491));
#150= IFCCARTESIANPOINT((637.194,926.708));
#151= IFCCARTESIANPOINT((630.002,906.214));
#152= IFCCARTESIANPOINT((622.793,908.747));
#153= IFCCARTESIANPOINT((589.489,913.442));
#154= IFCPOLYLINE((#147,#148,#149,#150,#151,#152,#153));
#155= IFCARBITRARYCLOSEDPROFILEDEF(.AREA.,'Sammalammimtie segment 315 - 358 area',#154);
#156= IFCCARTESIANPOINT((0.0,0.0,100.0));
#157= IFCAXIS2PLACEMENT3D(#156,$,$);
#158= IFCDIRECTION((0.0,0.0,1.0));
#159= IFCEXTRUDEDAREASOLID(#155,#157,#158,40.0);
#160= IFCSHAPEREPRESENTATION(#24,'Body','SweptSolid',(#159));
#161= IFCPRODUCTDEFINITIONSHAPE($,$,(#160));
#162= IFCCARTESIANPOINT((0.0,0.0,0.0));
#163= IFCAXIS2PLACEMENT3D(#162,$,$);
#164= IFCLOCALPLACEMENT(#3,#163);
#165= IFCFACILITYPART('28OcnhqhjAwQb_r7iirS2V',#10,'Sammalammintie Road2 intersection',$,$,#164,#183,$,$,IFCROADPARTTYPEENUM(.INTERSECTION.),.LONGITUDINAL.);
#166= IFCCARTESIANPOINT((630.002,906.214));
#167= IFCCARTESIANPOINT((637.194,926.708));
#168= IFCCARTESIANPOINT((652.593,921.304));
#169= IFCCARTESIANPOINT((663.834,913.389));
#170= IFCCARTESIANPOINT((651.804,895.266));
#171= IFCCARTESIANPOINT((650.426,896.181));
#172= IFCCARTESIANPOINT((647.878,892.636));
#173= IFCCARTESIANPOINT((631.677,900.268));
#174= IFCCARTESIANPOINT((633.164,905.102));
#175= IFCCARTESIANPOINT((630.002,906.214));
#176= IFCPOLYLINE((#166,#167,#168,#169,#170,#171,#172,#173,#174,#175));
#177= IFCARBITRARYCLOSEDPROFILEDEF(.AREA.,'Sammalammintie Road2 intersection area',#176);
#178= IFCCARTESIANPOINT((0.0,0.0,100.0));
#179= IFCAXIS2PLACEMENT3D(#178,$,$);
#180= IFCDIRECTION((0.0,0.0,1.0));
#181= IFCEXTRUDEDAREASOLID(#177,#179,#180,40.0);
#182= IFCSHAPEREPRESENTATION(#24,'Body','SweptSolid',(#181));
#183= IFCPRODUCTDEFINITIONSHAPE($,$,(#182));
#184= IFCCARTESIANPOINT((0.0,0.0,0.0));
#185= IFCAXIS2PLACEMENT3D(#184,$,$);
#186= IFCLOCALPLACEMENT(#3,#185);
#187= IFCFACILITYPART('1_wCCpOyP73xUqV9rwGlcy',#10,'Sammalammintie segment 386 - 620',$,$,#186,#216,$,$,IFCROADPARTTYPEENUM(.ROADSEGMENT.),.LONGITUDINAL.);
#188= IFCCARTESIANPOINT((651.804,895.266));
#189= IFCCARTESIANPOINT((663.834,913.389));
#190= IFCCARTESIANPOINT((676.669,904.432));
#191= IFCCARTESIANPOINT((691.413,889.716));
#192= IFCCARTESIANPOINT((704.997,869.481));
#193= IFCCARTESIANPOINT((713.554,850.839));
#194= IFCCARTESIANPOINT((720.745,831.983));
#195= IFCCARTESIANPOINT((727.675,814.228));
#196= IFCCARTESIANPOINT((735.77,799.321));
#197= IFCCARTESIANPOINT((748.84,785.846));
#198= IFCCARTESIANPOINT((800.991,729.938));
#199= IFCCARTESIANPOINT((786.28,715.383));
#200= IFCCARTESIANPOINT((733.381,770.639));
#201= IFCCARTESIANPOINT((718.609,786.744));
#202= IFCCARTESIANPOINT((705.403,804.231));
#203= IFCCARTESIANPOINT((696.083,823.575));
#204= IFCCARTESIANPOINT((689.918,842.55));
#205= IFCCARTESIANPOINT((683.327,859.279));
#206= IFCCARTESIANPOINT((673.793,874.277));
#207= IFCCARTESIANPOINT((661.709,887.379));
#208= IFCCARTESIANPOINT((651.804,895.266));
#209= IFCPOLYLINE((#188,#189,#190,#191,#192,#193,#194,#195,#196,#197,#198,#199,#200,#201,#202,#203,#204,#205,#206,#207,#208));
#210= IFCARBITRARYCLOSEDPROFILEDEF(.AREA.,'Sammalammintie segment 386 - 620 area',#209);
#211= IFCCARTESIANPOINT((0.0,0.0,100.0));
#212= IFCAXIS2PLACEMENT3D(#211,$,$);
#213= IFCDIRECTION((0.0,0.0,1.0));
#214= IFCEXTRUDEDAREASOLID(#210,#212,#213,40.0);
#215= IFCSHAPEREPRESENTATION(#24,'Body','SweptSolid',(#214));
#216= IFCPRODUCTDEFINITIONSHAPE($,$,(#215));
#217= IFCROAD('1o8KjZ6v9CNAPrdumHWA_F',#10,'Safety equipment road',$,$,#3,#232,$,$);
#218= IFCCARTESIANPOINT((543.551,917.108));
#219= IFCCARTESIANPOINT((547.1,942.285));
#220= IFCCARTESIANPOINT((556.134,941.011));
#221= IFCCARTESIANPOINT((557.797,952.54));
#222= IFCCARTESIANPOINT((573.633,950.255));
#223= IFCCARTESIANPOINT((568.423,913.581));
#224= IFCCARTESIANPOINT((543.551,917.108));
#225= IFCPOLYLINE((#218,#219,#220,#221,#222,#223,#224));
#226= IFCARBITRARYCLOSEDPROFILEDEF(.AREA.,'Safety equipment road area',#225);
#227= IFCCARTESIANPOINT((0.0,0.0,100.0));
#228= IFCAXIS2PLACEMENT3D(#227,$,$);
#229= IFCDIRECTION((0.0,0.0,1.0));
#230= IFCEXTRUDEDAREASOLID(#226,#228,#229,40.0);
#231= IFCSHAPEREPRESENTATION(#24,'Body','SweptSolid',(#230));
#232= IFCPRODUCTDEFINITIONSHAPE($,$,(#231));
#233= IFCCARTESIANPOINT((0.0,0.0,0.0));
#234= IFCAXIS2PLACEMENT3D(#233,$,$);
#235= IFCLOCALPLACEMENT(#3,#234);
#236= IFCFACILITYPART('3RG7s1uWfBcBvmbxRdE$7l',#10,'Safety equipment terminal',$,$,#235,#250,$,$,IFCFACILITYPARTCOMMONTYPEENUM(.TERMINAL.),.LONGITUDINAL.);
#237= IFCRELAGGREGATES('1lEnire$DFVfnakY0Mxm_g',#10,$,$,#217,(#236,#254));
#238= IFCCARTESIANPOINT((556.981,939.882));
#239= IFCCARTESIANPOINT((558.644,951.408));
#240= IFCCARTESIANPOINT((572.501,949.408));
#241= IFCCARTESIANPOINT((570.844,937.928));
#242= IFCCARTESIANPOINT((556.981,939.882));
#243= IFCPOLYLINE((#238,#239,#240,#241,#242));
#244= IFCARBITRARYCLOSEDPROFILEDEF(.AREA.,'Safety equipment terminal area',#243);
#245= IFCCARTESIANPOINT((0.0,0.0,100.0));
#246= IFCAXIS2PLACEMENT3D(#245,$,$);
#247= IFCDIRECTION((0.0,0.0,1.0));
#248= IFCEXTRUDEDAREASOLID(#244,#246,#247,40.0);
#249= IFCSHAPEREPRESENTATION(#24,'Body','SweptSolid',(#248));
#250= IFCPRODUCTDEFINITIONSHAPE($,$,(#249));
#251= IFCCARTESIANPOINT((0.0,0.0,0.0));
#252= IFCAXIS2PLACEMENT3D(#251,$,$);
#253= IFCLOCALPLACEMENT(#3,#252);
#254= IFCFACILITYPART('0m2ccjR$r5leaAaTc93cz4',#10,'Sammalammintie safety equipment road intersection',$,$,#253,#256,$,$,IFCROADPARTTYPEENUM(.INTERSECTION.),.LONGITUDINAL.);
#255= IFCSHAPEREPRESENTATION(#24,'Body','SweptSolid',(#123));
#256= IFCPRODUCTDEFINITIONSHAPE($,$,(#255));
#257= IFCRELINTERFERESELEMENTS('19zglBh$b12ecc0p1bgaKn',#10,$,$,#112,#254,$,'Crosses',.U.);
#258= IFCROAD('22WEdPeHj1QhDP4vm5srTv',#10,'Road2',$,$,#3,#274,$,$);
#259= IFCCARTESIANPOINT((624.813,881.346));
#260= IFCCARTESIANPOINT((628.727,905.602));
#261= IFCCARTESIANPOINT((636.581,927.982));
#262= IFCCARTESIANPOINT((653.055,922.201));
#263= IFCCARTESIANPOINT((665.205,913.646));
#264= IFCCARTESIANPOINT((652.084,893.88));
#265= IFCCARTESIANPOINT((636.899,875.651));
#266= IFCCARTESIANPOINT((624.813,881.346));
#267= IFCPOLYLINE((#259,#260,#261,#262,#263,#264,#265,#266));
#268= IFCARBITRARYCLOSEDPROFILEDEF(.AREA.,'Road2 area',#267);
#269= IFCCARTESIANPOINT((0.0,0.0,100.0));
#270= IFCAXIS2PLACEMENT3D(#269,$,$);
#271= IFCDIRECTION((0.0,0.0,1.0));
#272= IFCEXTRUDEDAREASOLID(#268,#270,#271,40.0);
#273= IFCSHAPEREPRESENTATION(#24,'Body','SweptSolid',(#272));
#274= IFCPRODUCTDEFINITIONSHAPE($,$,(#273));
#275= IFCCARTESIANPOINT((0.0,0.0,0.0));
#276= IFCAXIS2PLACEMENT3D(#275,$,$);
#277= IFCLOCALPLACEMENT(#3,#276);
#278= IFCFACILITYPART('3$v5XmQF9CQ8BnRbaINbu8',#10,'Road2 segment 18 - 36',$,$,#277,#292,$,$,IFCROADPARTTYPEENUM(.ROADSEGMENT.),.LONGITUDINAL.);
#279= IFCRELAGGREGATES('1Jwt9sRwLEY9aOH9JXtCNX',#10,$,$,#258,(#278,#296));
#280= IFCCARTESIANPOINT((626.024,881.881));
#281= IFCCARTESIANPOINT((631.677,900.268));
#282= IFCCARTESIANPOINT((647.878,892.636));
#283= IFCCARTESIANPOINT((636.573,876.91));
#284= IFCCARTESIANPOINT((626.024,881.881));
#285= IFCPOLYLINE((#280,#281,#282,#283,#284));
#286= IFCARBITRARYCLOSEDPROFILEDEF(.AREA.,'Road2 segment 18 - 36 area',#285);
#287= IFCCARTESIANPOINT((0.0,0.0,100.0));
#288= IFCAXIS2PLACEMENT3D(#287,$,$);
#289= IFCDIRECTION((0.0,0.0,1.0));
#290= IFCEXTRUDEDAREASOLID(#286,#288,#289,40.0);
#291= IFCSHAPEREPRESENTATION(#24,'Body','SweptSolid',(#290));
#292= IFCPRODUCTDEFINITIONSHAPE($,$,(#291));
#293= IFCCARTESIANPOINT((0.0,0.0,0.0));
#294= IFCAXIS2PLACEMENT3D(#293,$,$);
#295= IFCLOCALPLACEMENT(#3,#294);
#296= IFCFACILITYPART('0FnkJcf_jAaf2IwREplWr3',#10,'Sammalammintie Road2 intersection',$,$,#295,#298,$,$,IFCROADPARTTYPEENUM(.INTERSECTION.),.LONGITUDINAL.);
#297= IFCSHAPEREPRESENTATION(#24,'Body','SweptSolid',(#181));
#298= IFCPRODUCTDEFINITIONSHAPE($,$,(#297));
#299= IFCRELINTERFERESELEMENTS('1kVMJXnhj5$QuvcpWbeJxM',#10,$,$,#165,#296,$,'Crosses',.U.);
#300= IFCRAILWAY('1CWLdx$bDBleY2a_KBTJBy',#10,'Railway',$,$,#3,#314,$,$);
#301= IFCCARTESIANPOINT((560.762,875.053));
#302= IFCCARTESIANPOINT((576.255,982.428));
#303= IFCCARTESIANPOINT((599.756,979.115));
#304= IFCCARTESIANPOINT((594.173,939.512));
#305= IFCCARTESIANPOINT((584.602,871.613));
#306= IFCCARTESIANPOINT((560.762,875.053));
#307= IFCPOLYLINE((#301,#302,#303,#304,#305,#306));
#308= IFCARBITRARYCLOSEDPROFILEDEF(.AREA.,'Railway area',#307);
#309= IFCCARTESIANPOINT((0.0,0.0,100.0));
#310= IFCAXIS2PLACEMENT3D(#309,$,$);
#311= IFCDIRECTION((0.0,0.0,1.0));
#312= IFCEXTRUDEDAREASOLID(#308,#310,#311,40.0);
#313= IFCSHAPEREPRESENTATION(#24,'Body','SweptSolid',(#312));
#314= IFCPRODUCTDEFINITIONSHAPE($,$,(#313));
#315= IFCCARTESIANPOINT((0.0,0.0,0.0));
#316= IFCAXIS2PLACEMENT3D(#315,$,$);
#317= IFCLOCALPLACEMENT(#3,#316);
#318= IFCFACILITYPART('3fka4UEY94gPadfNSYUCtf',#10,'Railway part 1',$,$,#317,$,$,$,IFCRAILWAYPARTTYPEENUM(.TRACKSTRUCTUREPART.),.LONGITUDINAL.);
#319= IFCRELAGGREGATES('3qVDiRciXE6v9qvzat9TK_',#10,$,$,#300,(#318,#323,#329,#334));
#320= IFCCARTESIANPOINT((0.0,0.0,0.0));
#321= IFCAXIS2PLACEMENT3D(#320,$,$);
#322= IFCLOCALPLACEMENT(#3,#321);
#323= IFCFACILITYPART('1kP4loal5FfAVrs$7Up$sn',#10,'Sammalamminitie level crossing',$,$,#322,#325,$,$,IFCFACILITYPARTCOMMONTYPEENUM(.LEVELCROSSING.),.LONGITUDINAL.);
#324= IFCSHAPEREPRESENTATION(#24,'Body','SweptSolid',(#140));
#325= IFCPRODUCTDEFINITIONSHAPE($,$,(#324));
#326= IFCCARTESIANPOINT((0.0,0.0,0.0));
#327= IFCAXIS2PLACEMENT3D(#326,$,$);
#328= IFCLOCALPLACEMENT(#3,#327);
#329= IFCFACILITYPART('2ZOqRSqLb0KxLgfklcZOIS',#10,'Railway part 3',$,$,#328,$,$,$,IFCRAILWAYPARTTYPEENUM(.TRACKSTRUCTUREPART.),.LONGITUDINAL.);
#330= IFCRELINTERFERESELEMENTS('20bWx6nEf42ACBHvWuy8$g',#10,$,$,#129,#323,$,'Crosses',.U.);
#331= IFCCARTESIANPOINT((0.0,0.0,0.0));
#332= IFCAXIS2PLACEMENT3D(#331,$,$);
#333= IFCLOCALPLACEMENT(#3,#332);
#334= IFCFACILITYPART('2edfO2yIDB8Rl_8nwsK0i_',#10,'Turvalaite Terminal',$,$,#333,#336,$,$,IFCFACILITYPARTCOMMONTYPEENUM(.TERMINAL.),.LONGITUDINAL.);
#335= IFCSHAPEREPRESENTATION(#24,'Body','SweptSolid',(#248));
#336= IFCPRODUCTDEFINITIONSHAPE($,$,(#335));
#337= IFCRELINTERFERESELEMENTS('2AooRPOALAABK$zyUgG1pd',#10,$,$,#236,#334,$,'Crosses',.U.);
ENDSEC;

END-ISO-10303-21;