diff --git a/E1a-ARSE/ALIN01/Dataset/HorizontalAlignmentParameters.csv b/E1a-ARSE/ALIN01/Dataset/HorizontalAlignmentParameters.csv new file mode 100644 index 0000000..aaa4a23 --- /dev/null +++ b/E1a-ARSE/ALIN01/Dataset/HorizontalAlignmentParameters.csv @@ -0,0 +1,16 @@ +Name;Type;StartPointX;StartPointY;StartDirection;StartRadius;EndRadius;Length;Type +H1;IfcAlignmentHorizontalSegment;0,28371400013566;18,7504709996283;0,712199895871347;0;0;193,4232;LINE +H2;IfcAlignmentHorizontalSegment;146,690777998418;145,152630999684;0,712199906334298;0;200;63,845;CLOTHOID +H3;IfcAlignmentHorizontalSegment;192,677965000272;189,335668999702;0,871812399176709;200;200;34,420584;CIRCULARARC +H4;IfcAlignmentHorizontalSegment;212,454617001116;217,455753999762;1,04391527787276;200;0;63,845;CLOTHOID +H5;IfcAlignmentHorizontalSegment;238,485470999032;275,673937000334;1,20352784295313;0;0;21,346852;LINE +H6;IfcAlignmentHorizontalSegment;246,150430001318;295,597202000208;1,20352781983867;0;-200;63,845;CLOTHOID +H7;IfcAlignmentHorizontalSegment;272,181283999234;353,815386000089;1,04391531991188;-200;-200;85,355704;CIRCULARARC +H8;IfcAlignmentHorizontalSegment;329,316711999476;416,355174000375;0,617136818616182;-200;0;63,845;CLOTHOID +H9;IfcAlignmentHorizontalSegment;384,951684001833;447,527471999638;0,457524298045646;0;0;192,323738;LINE +H10;IfcAlignmentHorizontalSegment;557,494701001793;532,482327000238;0,457524292762515;200;200;82,814142;CIRCULARARC +H11;IfcAlignmentHorizontalSegment;622,220316998661;583,19077100046;0,871595018418373;-200;-200;100,11889;CIRCULARARC +H12;IfcAlignmentHorizontalSegment;702,781991001219;640,86246099975;0,37100055838095;0;0;58,659577;LINE +H13;IfcAlignmentHorizontalSegment;757,450667001307;662,129378999583;0,371000555025985;-200;-200;115,440984;CIRCULARARC +H14;IfcAlignmentHorizontalSegment;870,909519001842;671,499387999997;6,07698093924176;200;200;102,335082;CIRCULARARC +H15;IfcAlignmentHorizontalSegment;972,007240001112;676,521331000142;0,305471032863846;0;0;28,790227;LINE diff --git a/E1a-ARSE/ALIN01/Dataset/README.md b/E1a-ARSE/ALIN01/Dataset/README.md new file mode 100644 index 0000000..f8c4249 --- /dev/null +++ b/E1a-ARSE/ALIN01/Dataset/README.md @@ -0,0 +1,113 @@ +## Model Dataset +This test case utilises the following dataset: + +- One alignment layout (no geometric representation is required) +- The alignment is composed of one horizontal alignment layout and one vertical alignment layout +- The horizontal layout has the following sequences of elements: + + - Line => Clothoid => Circular arc (cw) => Clothoid => Line => Clothoid => Circular arc (ccw) => Clothoid => Line + + - Line => Circular arc (cw) => Circular arc (ccw) => Line + + - Line => Circular arc (ccw) => Circular arc (cw) => Line +- The vertical layout has the following sequences of elements: + + - Line => Circular arc => Line + - Line => Circular arc (crest) => Circular arc (sag) => Line + - Line => Circular arc (sag) => Circular arc (crest) => Line + + + +| Filename | Description | +| ------------------------------------------------------------ | --------------------------------------------- | +| [HorizontalAlignmentParameters](./HorizontalAlignmentParameters.csv) | Parameters for the horizontal segments as csv | +| [VerticalAlignmentParameters](./VerticalAlignmentParameters.csv) | Parameters for the vertical segments as csv | +| [LandXML](./Testi_101_ml.xml) | LandXML-file representing the alignment | + +## Dataset specification + +### Entities table + +| **Element** | **Attribute** | **Value** | **Notes** | +| ---------------------- | ------------- | ----------- | --------- | +| IfcProject | Name | Alin01 | | +| IfcSite | Name | Alin01.Site | | +| IfcAlignment | Name | A1 | | +| IfcRoad | Name | Alin01.Road | | +| IfcAlignmentHorizontal | Name | AH1 | | +| IfcAlignmentVertical | Name | AV1 | | + +### Horizontal segments table + +Horizontal segments nested into AH1 in the following order: + +| Entity | PredefinedType | Name | Start Point X | Start Point Y | Start Direction | Start Radius Of Curvature | End Radius Of Curvature | Segment Length | +| ----------------------------- | -------------- | ---- | ------------- | ------------- | --------------- | ------------------------- | ----------------------- | -------------- | +| IfcAlignmentHorizontalSegment | LINE | H1 | 0,283714 | 18,750471 | 0,712199896 | 0 | 0 | 193,4232 | +| IfcAlignmentHorizontalSegment | CLOTHOID | H2 | 146,690778 | 145,152631 | 0,712199906 | 0 | 200 | 63,845 | +| IfcAlignmentHorizontalSegment | CIRCULARARC | H3 | 192,677965 | 189,335669 | 0,871812399 | 200 | 200 | 34,420584 | +| IfcAlignmentHorizontalSegment | CLOTHOID | H4 | 212,454617 | 217,455754 | 1,043915278 | 200 | 0 | 63,845 | +| IfcAlignmentHorizontalSegment | LINE | H5 | 238,485471 | 275,673937 | 1,203527843 | 0 | 0 | 21,346852 | +| IfcAlignmentHorizontalSegment | CLOTHOID | H6 | 246,15043 | 295,597202 | 1,20352782 | 0 | -200 | 63,845 | +| IfcAlignmentHorizontalSegment | CIRCULARARC | H7 | 272,181284 | 353,815386 | 1,04391532 | -200 | -200 | 85,355704 | +| IfcAlignmentHorizontalSegment | CLOTHOID | H8 | 329,316712 | 416,355174 | 0,617136819 | -200 | 0 | 63,845 | +| IfcAlignmentHorizontalSegment | LINE | H9 | 384,951684 | 447,527472 | 0,457524298 | 0 | 0 | 192,323738 | +| IfcAlignmentHorizontalSegment | CIRCULARARC | H10 | 557,494701 | 532,482327 | 0,457524293 | 200 | 200 | 82,814142 | +| IfcAlignmentHorizontalSegment | CIRCULARARC | H11 | 622,220317 | 583,190771 | 0,871595018 | -200 | -200 | 100,11889 | +| IfcAlignmentHorizontalSegment | LINE | H12 | 702,781991 | 640,862461 | 0,371000558 | 0 | 0 | 58,659577 | +| IfcAlignmentHorizontalSegment | CIRCULARARC | H13 | 757,450667 | 662,129379 | 0,371000555 | -200 | -200 | 115,440984 | +| IfcAlignmentHorizontalSegment | CIRCULARARC | H14 | 870,909519 | 671,499388 | 6,076980939 | 200 | 200 | 102,335082 | +| IfcAlignmentHorizontalSegment | LINE | H15 | 972,00724 | 676,521331 | 0,305471033 | 0 | 0 | 28,790227 | + +**NOTE**: + +- Please note the Project Global Positioning and unit parameters specified in the main Readme file + +### Vertical segments table + +Vertical segments nested into AV1 in the following order: + +| Entity | PredefinedType | Name | Start Dist Along | Horizontal Length | Start Height | Start Gradient | End Gradient | RadiusOfCurvature | +| --------------------------- | ---------------- | ---- | ---------------- | ----------------- | ------------ | -------------- | ------------ | ----------------- | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V1 | 0 | 67,96662759 | 43,475329 | -0,007734105 | -0,007734105 | 0 | +| IfcAlignmentVerticalSegment | CIRCULARARC | V2 | 67,96662759 | 25,56006049 | 42,94966796 | -0,007734105 | -0,093338018 | -300 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V3 | 93,52668809 | 20,39853177 | 41,66031927 | -0,093338018 | -0,093338018 | 0 | +| IfcAlignmentVerticalSegment | CIRCULARARC | V4 | 113,9252199 | 21,6842049 | 39,75636075 | -0,093338018 | -0,020657799 | 300 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V5 | 135,6094248 | 68,62574308 | 38,52203122 | -0,020657799 | -0,020657799 | 0 | +| IfcAlignmentVerticalSegment | CIRCULARARC | V6 | 204,2351678 | 56,93193013 | 37,10437443 | -0,020657799 | 0,007812811 | 2000 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V7 | 261,167098 | 46,44967561 | 36,73880354 | 0,007812811 | 0,007812811 | 0 | +| IfcAlignmentVerticalSegment | CIRCULARARC | V8 | 307,6167736 | 101,9005629 | 37,10170608 | 0,007812811 | 0,048630199 | 2500 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V9 | 409,5173365 | 30,59165499 | 39,97629696 | 0,048630199 | 0,048630199 | 0 | +| IfcAlignmentVerticalSegment | CIRCULARARC | V10 | 440,1089914 | 64,02882141 | 41,46397522 | 0,048630199 | -0,01545787 | -1000 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V11 | 504,1378129 | 203,5716837 | 42,52487872 | -0,01545787 | -0,01545787 | 0 | +| IfcAlignmentVerticalSegment | CIRCULARARC | V12 | 707,7094965 | 55,84829226 | 39,3780941 | -0,01545787 | -0,071486276 | -1000 | +| IfcAlignmentVerticalSegment | CIRCULARARC | V13 | 763,5577815 | 76,62507339 | 36,95215385 | -0,071486276 | 0,005320833 | 1000 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V14 | 840,1828549 | 152,3446543 | 34,42091694 | 0,005320833 | 0,005320833 | 0 | +| IfcAlignmentVerticalSegment | CIRCULARARC | V15 | 992,5275091 | 36,817362 | 35,23151739 | 0,005320833 | 0,023736122 | 2000 | +| IfcAlignmentVerticalSegment | CIRCULARARC | V16 | 1029,344877 | 52,56256394 | 35,76637241 | 0,023736122 | -0,028845118 | -1000 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V17 | 1081,907441 | 188,5015408 | 35,6321942 | -0,028845118 | -0,028845118 | 0 | + +### Spatial (De)Composition table + +| **Parent Element** | **Parent Element Type** | **Parent Element Name** | **MinSize** | **MaxSize** | **Child Element** | **Child Element Type** | **Child Element Name** | +| ------------------ | ----------------------- | ----------------------- | ----------- | ----------- | ----------------- | ---------------------- | ---------------------- | +| IfcProject | | Alin01 | 1 | 1 | IfcSite | | Alin01.Site | +| IfcSite | | Alin01.Site | 1 | 1 | IfcRoad | | Allin01.Road | + +### Spatial Containment table + +| **Spatial Element** | **Spatial Element Type** | **Spatial Element Name** | **MinSize** | **MaxSize** | **Element** | **Element Type** | **Element Name** | +| ------------------- | ------------------------ | ------------------------ | ----------- | ----------- | ------------ | ---------------- | ---------------- | +| IfcSite | | Alin01.Site | 1 | 1 | IfcAlignment | | A1 | + +## Drawings (Visualisations) + +The following Drawings and visualisations describe the test case dataset to be modelled and certified. + +| Filename | Description | +| -------------------------------------------- | -------------------------------------------- | +| [Testi_ml_map](./Testi_ml_map.pdf) | Planar (map) view of the test case | +| [Testi_ml_profiles](./Testi_ml_profiles.pdf) | Long section (profile) view of the test case | + + +## diff --git a/E1a-ARSE/ALIN01/Dataset/Testi_101_ml.ifc b/E1a-ARSE/ALIN01/Dataset/Testi_101_ml.ifc new file mode 100644 index 0000000..da86021 --- /dev/null +++ b/E1a-ARSE/ALIN01/Dataset/Testi_101_ml.ifc @@ -0,0 +1,344 @@ +ISO-10303-21; +HEADER; +FILE_DESCRIPTION(('ViewDefinition [Ifc4NotAssigned]'),'2;1'); +FILE_NAME( +/* name */ 'C:\\Users\\lars\\Documents\\Projekt\\IFCInfra\\Tests\\Testi_101_ml.ifc', +/* time_stamp */ '2022-02-10T08:16:24', +/* author */ ('lars'), +/* organization */ ('Unknown'), +/* preprocessor_version */ 'ggIfcConverter v0.0.5.0 by Geometry Gym Pty Ltd built 2022-02-10T07:15:39', +/* originating_system */ 'ggIFCConverter v0.0.5.0 - Converter by Geometry Gym Pty Ltd', +/* authorization */ 'None'); + +FILE_SCHEMA (('IFC4X3_RC4')); +ENDSEC; + +DATA; +#1= IFCCARTESIANPOINT((0.0,0.0,0.0)); +#2= IFCDIRECTION((1.0,0.0,0.0)); +#3= IFCDIRECTION((0.0,1.0,0.0)); +#4= IFCDIRECTION((0.0,0.0,1.0)); +#5= IFCAXIS2PLACEMENT3D(#1,$,$); +#6= IFCCARTESIANPOINT((0.0,0.0)); +#7= IFCAXIS2PLACEMENT2D(#6,$); +#8= IFCSIUNIT(*,.LENGTHUNIT.,$,.METRE.); +#9= IFCSIUNIT(*,.AREAUNIT.,$,.SQUARE_METRE.); +#10= IFCSIUNIT(*,.VOLUMEUNIT.,$,.CUBIC_METRE.); +#11= IFCSIUNIT(*,.PLANEANGLEUNIT.,$,.RADIAN.); +#12= IFCUNITASSIGNMENT((#8,#11)); +#13= IFCPROJECT('0ecx2rClfBtAk7rrRtzpG7',$,'IFC testi','IFC testi',$,$,$,(#80),#12); +#14= IFCCARTESIANPOINT((0.0,0.0,0.0)); +#15= IFCAXIS2PLACEMENT3D(#14,$,$); +#16= IFCLOCALPLACEMENT($,#15); +#17= IFCSITE('0AeyuwY3Sco4GqVIWj7KBz',$,'IFC testi',$,$,#16,$,$,$,$,$,$,$,$); +#18= IFCRELAGGREGATES('1Q9vKweljnFkXDa3IGNYn4',$,$,$,#13,(#17)); +#19= IFCLOCALPLACEMENT(#16,#5); +#20= IFCALIGNMENT('1V4IFLD5FZEHUFn2xxO5TX',$,'Testi',$,$,#19,#321,$); +#21= IFCRELCONTAINEDINSPATIALSTRUCTURE('3Vg8iVaUzCc8kgu5atnp5Z',$,'Site','Site Container for Elements',(#20),#17); +#22= IFCCARTESIANPOINT((0.0,0.0,0.0)); +#23= IFCAXIS2PLACEMENT3D(#22,#4,#2); +#25= IFCALIGNMENTHORIZONTAL('3aXJ1N8KqGC4XvJ0PdDKpy',$,$,$,$,#19,#169); +#26= IFCRELNESTS('3bHIy9qJHBYPOZgc7zqv0h',$,$,$,#20,(#25,#187)); +#27= IFCCARTESIANPOINT((24474600.283714,6654918.750471)); +#28= IFCALIGNMENTHORIZONTALSEGMENT($,$,#27,0.712199895871347,0.0,0.0,193.4232,$,.LINE.); +#29= IFCALIGNMENTSEGMENT('2vaztxIjrKOr$0KqItOJ$I',$,$,$,$,#19,#86,#28); +#30= IFCRELNESTS('1KmS$Dxxj4qx0ze8hbov2P',$,$,$,#25,(#29,#33,#36,#39,#42,#45,#48,#51,#54,#57,#60,#63,#66,#69,#72)); +#31= IFCCARTESIANPOINT((24474746.690778,6655045.152631)); +#32= IFCALIGNMENTHORIZONTALSEGMENT($,$,#31,0.712199906334298,0.0,200.0,63.845,$,.CLOTHOID.); +#33= IFCALIGNMENTSEGMENT('0sGR5JP9JE3NzGE0Oyp0za',$,$,$,$,#19,#92,#32); +#34= IFCCARTESIANPOINT((24474792.677965,6655089.335669)); +#35= IFCALIGNMENTHORIZONTALSEGMENT($,$,#34,0.871812399176709,200.0,200.0,34.420584,$,.CIRCULARARC.); +#36= IFCALIGNMENTSEGMENT('3uyWopL_852h4xFIJlpBjd',$,$,$,$,#19,#98,#35); +#37= IFCCARTESIANPOINT((24474812.454617,6655117.455754)); +#38= IFCALIGNMENTHORIZONTALSEGMENT($,$,#37,1.04391527787276,200.0,0.0,63.845,$,.CLOTHOID.); +#39= IFCALIGNMENTSEGMENT('0bOZo63U6dC0a70iOtGkCQ',$,$,$,$,#19,#104,#38); +#40= IFCCARTESIANPOINT((24474838.485471,6655175.673937)); +#41= IFCALIGNMENTHORIZONTALSEGMENT($,$,#40,1.20352784295313,0.0,0.0,21.346852,$,.LINE.); +#42= IFCALIGNMENTSEGMENT('3uw5yTngOd73UakCbjcKPN',$,$,$,$,#19,#109,#41); +#43= IFCCARTESIANPOINT((24474846.15043,6655195.597202)); +#44= IFCALIGNMENTHORIZONTALSEGMENT($,$,#43,1.20352781983867,0.0,-200.0,63.845,$,.CLOTHOID.); +#45= IFCALIGNMENTSEGMENT('2NuHEWbbdCcMrblPJjitBe',$,$,$,$,#19,#115,#44); +#46= IFCCARTESIANPOINT((24474872.181284,6655253.815386)); +#47= IFCALIGNMENTHORIZONTALSEGMENT($,$,#46,1.04391531991188,-200.0,-200.0,85.355704,$,.CIRCULARARC.); +#48= IFCALIGNMENTSEGMENT('3lHxSswtYwB01wMksZZIMT',$,$,$,$,#19,#121,#47); +#49= IFCCARTESIANPOINT((24474929.316712,6655316.355174)); +#50= IFCALIGNMENTHORIZONTALSEGMENT($,$,#49,0.617136818616182,-200.0,0.0,63.845,$,.CLOTHOID.); +#51= IFCALIGNMENTSEGMENT('2B5epfRrF3gcg_hsGk922T',$,$,$,$,#19,#127,#50); +#52= IFCCARTESIANPOINT((24474984.951684,6655347.527472)); +#53= IFCALIGNMENTHORIZONTALSEGMENT($,$,#52,0.457524298045646,0.0,0.0,192.323738,$,.LINE.); +#54= IFCALIGNMENTSEGMENT('0f8_8Cj8lvTUcnnmiVdCiP',$,$,$,$,#19,#132,#53); +#55= IFCCARTESIANPOINT((24475157.494701,6655432.482327)); +#56= IFCALIGNMENTHORIZONTALSEGMENT($,$,#55,0.457524292762515,200.0,200.0,82.814142,$,.CIRCULARARC.); +#57= IFCALIGNMENTSEGMENT('2I$Xcy$JkuUauhfYMs2_jz',$,$,$,$,#19,#138,#56); +#58= IFCCARTESIANPOINT((24475222.220317,6655483.190771)); +#59= IFCALIGNMENTHORIZONTALSEGMENT($,$,#58,0.871595018418373,-200.0,-200.0,100.11889,$,.CIRCULARARC.); +#60= IFCALIGNMENTSEGMENT('2czZ2zyktpvqOs4xYwOTKV',$,$,$,$,#19,#144,#59); +#61= IFCCARTESIANPOINT((24475302.781991,6655540.862461)); +#62= IFCALIGNMENTHORIZONTALSEGMENT($,$,#61,0.37100055838095,0.0,0.0,58.659577,$,.LINE.); +#63= IFCALIGNMENTSEGMENT('0l0XkEmfjreXS$jzp6amF6',$,$,$,$,#19,#149,#62); +#64= IFCCARTESIANPOINT((24475357.450667,6655562.129379)); +#65= IFCALIGNMENTHORIZONTALSEGMENT($,$,#64,0.371000555025985,-200.0,-200.0,115.440984,$,.CIRCULARARC.); +#66= IFCALIGNMENTSEGMENT('0Bb9yB3iA_2DK_lIKVX5zx',$,$,$,$,#19,#155,#65); +#67= IFCCARTESIANPOINT((24475470.909519,6655571.499388)); +#68= IFCALIGNMENTHORIZONTALSEGMENT($,$,#67,6.07698093924176,200.0,200.0,102.335082,$,.CIRCULARARC.); +#69= IFCALIGNMENTSEGMENT('3miJ11ZCKhG0rTvyyAcgwC',$,$,$,$,#19,#161,#68); +#70= IFCCARTESIANPOINT((24475572.00724,6655576.521331)); +#71= IFCALIGNMENTHORIZONTALSEGMENT($,$,#70,0.305471032863846,0.0,0.0,28.790227,$,.LINE.); +#72= IFCALIGNMENTSEGMENT('3zvKhvQ6EEPa36uvd5tvQ9',$,$,$,$,#19,#166,#71); +#73= IFCAXIS2PLACEMENT2D(#27,#74); +#74= IFCDIRECTION((0.75692608,0.65350051)); +#75= IFCCARTESIANPOINT((0.0,0.0)); +#76= IFCDIRECTION((1.0,0.0)); +#77= IFCVECTOR(#76,1.0); +#78= IFCLINE(#75,#77); +#79= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#73,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(193.4232),#78); +#80= IFCGEOMETRICREPRESENTATIONCONTEXT($,'Model',3,0.00001,#82,#83); +#81= IFCCARTESIANPOINT((0.0,0.0,0.0)); +#82= IFCAXIS2PLACEMENT3D(#81,$,$); +#83= IFCDIRECTION((0.0,1.0)); +#84= IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Axis','Model',*,*,*,*,#80,$,.GRAPH_VIEW.,$); +#85= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#79)); +#86= IFCPRODUCTDEFINITIONSHAPE($,$,(#85)); +#87= IFCAXIS2PLACEMENT2D(#31,#88); +#88= IFCDIRECTION((0.75692607,0.65350052)); +#89= IFCCLOTHOID(#7,113.0); +#90= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#87,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(63.845),#89); +#91= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#90)); +#92= IFCPRODUCTDEFINITIONSHAPE($,$,(#91)); +#93= IFCAXIS2PLACEMENT2D(#34,#94); +#94= IFCDIRECTION((0.64344022,0.76549636)); +#95= IFCCIRCLE(#7,200.0); +#96= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#93,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(34.420584),#95); +#97= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#96)); +#98= IFCPRODUCTDEFINITIONSHAPE($,$,(#97)); +#99= IFCAXIS2PLACEMENT2D(#37,#100); +#100= IFCDIRECTION((0.50283983,0.86437961)); +#101= IFCCLOTHOID(#7,-113.0); +#102= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#99,IFCPARAMETERVALUE(-63.845),IFCNONNEGATIVELENGTHMEASURE(63.845),#101); +#103= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#102)); +#104= IFCPRODUCTDEFINITIONSHAPE($,$,(#103)); +#105= IFCAXIS2PLACEMENT2D(#40,#106); +#106= IFCDIRECTION((0.35906742,0.93331162)); +#107= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#105,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(21.346852),#78); +#108= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#107)); +#109= IFCPRODUCTDEFINITIONSHAPE($,$,(#108)); +#110= IFCAXIS2PLACEMENT2D(#43,#111); +#111= IFCDIRECTION((0.35906744,0.93331162)); +#112= IFCCLOTHOID(#7,-113.0); +#113= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#110,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(63.845),#112); +#114= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#113)); +#115= IFCPRODUCTDEFINITIONSHAPE($,$,(#114)); +#116= IFCAXIS2PLACEMENT2D(#46,#117); +#117= IFCDIRECTION((0.5028398,0.86437963)); +#118= IFCCIRCLE(#7,200.0); +#119= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#116,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(-0.42677852),#118); +#120= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#119)); +#121= IFCPRODUCTDEFINITIONSHAPE($,$,(#120)); +#122= IFCAXIS2PLACEMENT2D(#49,#123); +#123= IFCDIRECTION((0.81553873,0.5787025)); +#124= IFCCLOTHOID(#7,113.0); +#125= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#122,IFCPARAMETERVALUE(-63.845),IFCNONNEGATIVELENGTHMEASURE(63.845),#124); +#126= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#125)); +#127= IFCPRODUCTDEFINITIONSHAPE($,$,(#126)); +#128= IFCAXIS2PLACEMENT2D(#52,#129); +#129= IFCDIRECTION((0.89714883,0.44172839)); +#130= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#128,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(192.323738),#78); +#131= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#130)); +#132= IFCPRODUCTDEFINITIONSHAPE($,$,(#131)); +#133= IFCAXIS2PLACEMENT2D(#55,#134); +#134= IFCDIRECTION((0.89714884,0.44172839)); +#135= IFCCIRCLE(#7,200.0); +#136= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#133,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(82.814142),#135); +#137= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#136)); +#138= IFCPRODUCTDEFINITIONSHAPE($,$,(#137)); +#139= IFCAXIS2PLACEMENT2D(#58,#140); +#140= IFCDIRECTION((0.64360661,0.76535647)); +#141= IFCCIRCLE(#7,200.0); +#142= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#139,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(-0.50059445),#141); +#143= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#142)); +#144= IFCPRODUCTDEFINITIONSHAPE($,$,(#143)); +#145= IFCAXIS2PLACEMENT2D(#61,#146); +#146= IFCDIRECTION((0.93196506,0.3625481)); +#147= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#145,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(58.659577),#78); +#148= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#147)); +#149= IFCPRODUCTDEFINITIONSHAPE($,$,(#148)); +#150= IFCAXIS2PLACEMENT2D(#64,#151); +#151= IFCDIRECTION((0.93196506,0.3625481)); +#152= IFCCIRCLE(#7,200.0); +#153= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#150,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(-0.57720492),#152); +#154= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#153)); +#155= IFCPRODUCTDEFINITIONSHAPE($,$,(#154)); +#156= IFCAXIS2PLACEMENT2D(#67,#157); +#157= IFCDIRECTION((0.9788151,-0.20474616)); +#158= IFCCIRCLE(#7,200.0); +#159= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#156,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(102.335082),#158); +#160= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#159)); +#161= IFCPRODUCTDEFINITIONSHAPE($,$,(#160)); +#162= IFCAXIS2PLACEMENT2D(#70,#163); +#163= IFCDIRECTION((0.9537054,0.30074244)); +#164= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#162,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(28.790227),#78); +#165= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#164)); +#166= IFCPRODUCTDEFINITIONSHAPE($,$,(#165)); +#167= IFCCOMPOSITECURVE((#79,#90,#96,#102,#107,#113,#119,#125,#130,#136,#142,#147,#153,#159,#164),.U.); +#168= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#167)); +#169= IFCPRODUCTDEFINITIONSHAPE($,$,(#168)); +#170= IFCALIGNMENTVERTICALSEGMENT($,$,0.0,67.9666275938242,43.475329,-0.00773410503537014,-0.00773410503537014,$,.CONSTANTGRADIENT.); +#171= IFCALIGNMENTVERTICALSEGMENT($,$,67.9666275938242,25.56006049186,42.9496679632888,-0.00773410503537014,-0.0933380176556316,-300.0,.CIRCULARARC.); +#172= IFCALIGNMENTVERTICALSEGMENT($,$,93.5266880856841,20.3985317664884,41.6603192684821,-0.0933380176556316,-0.0933380176556316,$,.CONSTANTGRADIENT.); +#173= IFCALIGNMENTVERTICALSEGMENT($,$,113.925219852173,21.6842049028376,39.7563607503138,-0.0933380176556316,-0.0206577987550277,300.0,.CIRCULARARC.); +#174= IFCALIGNMENTVERTICALSEGMENT($,$,135.60942475501,68.6257430776865,38.5220312181138,-0.0206577987550277,-0.0206577987550277,$,.CONSTANTGRADIENT.); +#175= IFCALIGNMENTVERTICALSEGMENT($,$,204.235167832697,56.9319301335483,37.1043744281956,-0.0206577987550277,0.00781281114018211,2000.0,.CIRCULARARC.); +#176= IFCALIGNMENTVERTICALSEGMENT($,$,261.167097966245,46.449675607139,36.7388035371268,0.00781281114018211,0.00781281114018211,$,.CONSTANTGRADIENT.); +#177= IFCALIGNMENTVERTICALSEGMENT($,$,307.616773573384,101.90056287711,37.101706080191,0.00781281114018211,0.0486301987513986,2500.0,.CIRCULARARC.); +#178= IFCALIGNMENTVERTICALSEGMENT($,$,409.517336450494,30.5916549869268,39.9762969622553,0.0486301987513986,0.0486301987513986,$,.CONSTANTGRADIENT.); +#179= IFCALIGNMENTVERTICALSEGMENT($,$,440.108991437421,64.0288214133387,41.4639752243932,0.0486301987513986,-0.0154578700237117,-1000.0,.CIRCULARARC.); +#180= IFCALIGNMENTVERTICALSEGMENT($,$,504.13781285076,203.571683667725,42.5248787225931,-0.0154578700237117,-0.0154578700237117,$,.CONSTANTGRADIENT.); +#181= IFCALIGNMENTVERTICALSEGMENT($,$,707.709496518485,55.8482922569574,39.3780940959472,-0.0154578700237117,-0.0714862764285531,-1000.0,.CIRCULARARC.); +#182= IFCALIGNMENTVERTICALSEGMENT($,$,763.557781493212,76.6250733893689,36.9521538451958,-0.0714862764285531,0.00532083289209283,1000.0,.CIRCULARARC.); +#183= IFCALIGNMENTVERTICALSEGMENT($,$,840.182854882581,152.344654262115,34.4209169381877,0.00532083289209283,0.00532083289209283,$,.CONSTANTGRADIENT.); +#184= IFCALIGNMENTVERTICALSEGMENT($,$,992.527509144696,36.8173619984802,35.2315173854975,0.00532083289209283,0.0237361222562795,2000.0,.CIRCULARARC.); +#185= IFCALIGNMENTVERTICALSEGMENT($,$,1029.34487722718,52.5625639402238,35.7663724122683,0.0237361222562795,-0.0288451180418102,-1000.0,.CIRCULARARC.); +#186= IFCALIGNMENTVERTICALSEGMENT($,$,1081.90744116741,188.501540832592,35.6321941963812,-0.0288451180418207,-0.0288451180418207,$,.CONSTANTGRADIENT.); +#187= IFCALIGNMENTVERTICAL('3X$U5$NVT6K9Ko9bGmnTu2',$,'Testi',$,$,#19,#319); +#188= IFCALIGNMENTSEGMENT('26hB2BUmb2Veh74un0Xpfb',$,$,$,$,#19,#211,#170); +#189= IFCRELNESTS('0221xrOpX7n9rswbXSA$aN',$,$,$,#187,(#188,#190,#191,#192,#193,#194,#195,#196,#197,#198,#199,#200,#201,#202,#203,#204,#205)); +#190= IFCALIGNMENTSEGMENT('1eMXlD_EfCk9dPhHpP0rsu',$,$,$,$,#19,#218,#171); +#191= IFCALIGNMENTSEGMENT('147CHC9rT4p8XukwIN_JR3',$,$,$,$,#19,#224,#172); +#192= IFCALIGNMENTSEGMENT('1hojd2yvH5n8$dNLvVeYAr',$,$,$,$,#19,#231,#173); +#193= IFCALIGNMENTSEGMENT('3F09I6WPz6F9DZ0VSoaOCM',$,$,$,$,#19,#237,#174); +#194= IFCALIGNMENTSEGMENT('31QCTES6zA3fiZ4oJeZyb5',$,$,$,$,#19,#244,#175); +#195= IFCALIGNMENTSEGMENT('2A43wLJJjD3vkH$$FgJt_Y',$,$,$,$,#19,#250,#176); +#196= IFCALIGNMENTSEGMENT('3W2WokM2n7ghCxTiHp1bH0',$,$,$,$,#19,#257,#177); +#197= IFCALIGNMENTSEGMENT('25Cl1FkpD2v8EJErxkyuuN',$,$,$,$,#19,#263,#178); +#198= IFCALIGNMENTSEGMENT('1UgJmOR355CPy_gjJ3oLEV',$,$,$,$,#19,#270,#179); +#199= IFCALIGNMENTSEGMENT('0KetFY0jv3XAjvLuVVQEpz',$,$,$,$,#19,#276,#180); +#200= IFCALIGNMENTSEGMENT('2Y85$WNn98nOTLMVM_s_z5',$,$,$,$,#19,#283,#181); +#201= IFCALIGNMENTSEGMENT('2yAiFMqkrF4B9LRlwAqY_7',$,$,$,$,#19,#290,#182); +#202= IFCALIGNMENTSEGMENT('0nHVW1pGTEdvbPo9$0K2fd',$,$,$,$,#19,#296,#183); +#203= IFCALIGNMENTSEGMENT('0WmjnZ8LH1shpB8fjLvHEY',$,$,$,$,#19,#303,#184); +#204= IFCALIGNMENTSEGMENT('0t4c9fkL51CvLVKIaPJz8f',$,$,$,$,#19,#310,#185); +#205= IFCALIGNMENTSEGMENT('1i6Y5IqCXEsO45nyGwtUYB',$,$,$,$,#19,#316,#186); +#206= IFCCARTESIANPOINT((0.0,43.475329)); +#207= IFCDIRECTION((0.99997009,-0.00773387)); +#208= IFCAXIS2PLACEMENT2D(#206,#207); +#209= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#208,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(67.9686603222625),#78); +#210= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#209)); +#211= IFCPRODUCTDEFINITIONSHAPE($,$,(#210)); +#212= IFCCARTESIANPOINT((67.966628,42.949668)); +#213= IFCDIRECTION((0.99997009,-0.00773387)); +#214= IFCAXIS2PLACEMENT2D(#212,#213); +#215= IFCCIRCLE(#7,300.0); +#216= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#214,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(-0.0853344217592635),#215); +#217= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#216)); +#218= IFCPRODUCTDEFINITIONSHAPE($,$,(#217)); +#219= IFCCARTESIANPOINT((93.526688,41.660319)); +#220= IFCDIRECTION((0.99567226,-0.09293408)); +#221= IFCAXIS2PLACEMENT2D(#219,#220); +#222= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#221,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(20.4871949340886),#78); +#223= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#222)); +#224= IFCPRODUCTDEFINITIONSHAPE($,$,(#223)); +#225= IFCCARTESIANPOINT((113.92522,39.756361)); +#226= IFCDIRECTION((0.99567226,-0.09293408)); +#227= IFCAXIS2PLACEMENT2D(#225,#226); +#228= IFCCIRCLE(#7,300.0); +#229= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#227,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(0.0724135116192724),#228); +#230= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#229)); +#231= IFCPRODUCTDEFINITIONSHAPE($,$,(#230)); +#232= IFCCARTESIANPOINT((135.609425,38.522031)); +#233= IFCDIRECTION((0.9997867,-0.02065339)); +#234= IFCAXIS2PLACEMENT2D(#232,#233); +#235= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#234,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(68.6403843501667),#78); +#236= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#235)); +#237= IFCPRODUCTDEFINITIONSHAPE($,$,(#236)); +#238= IFCCARTESIANPOINT((204.235168,37.104374)); +#239= IFCDIRECTION((0.9997867,-0.02065339)); +#240= IFCAXIS2PLACEMENT2D(#238,#239); +#241= IFCCIRCLE(#7,2000.0); +#242= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#240,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(0.0284675131534649),#241); +#243= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#242)); +#244= IFCPRODUCTDEFINITIONSHAPE($,$,(#243)); +#245= IFCCARTESIANPOINT((261.167098,36.738804)); +#246= IFCDIRECTION((0.99996948,0.00781257)); +#247= IFCAXIS2PLACEMENT2D(#245,#246); +#248= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#247,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(46.4510932300219),#78); +#249= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#248)); +#250= IFCPRODUCTDEFINITIONSHAPE($,$,(#249)); +#251= IFCCARTESIANPOINT((307.616774,37.101706)); +#252= IFCDIRECTION((0.99996948,0.00781257)); +#253= IFCAXIS2PLACEMENT2D(#251,#252); +#254= IFCCIRCLE(#7,2500.0); +#255= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#253,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(0.0407792657489707),#254); +#256= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#255)); +#257= IFCPRODUCTDEFINITIONSHAPE($,$,(#256)); +#258= IFCCARTESIANPOINT((409.517336,39.976297)); +#259= IFCDIRECTION((0.99881965,0.0485728)); +#260= IFCAXIS2PLACEMENT2D(#258,#259); +#261= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#260,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(30.6278066705866),#78); +#262= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#261)); +#263= IFCPRODUCTDEFINITIONSHAPE($,$,(#262)); +#264= IFCCARTESIANPOINT((440.108991,41.463975)); +#265= IFCDIRECTION((0.99881965,0.0485728)); +#266= IFCAXIS2PLACEMENT2D(#264,#265); +#267= IFCCIRCLE(#7,1000.0); +#268= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#266,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(-0.0640485569330326),#267); +#269= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#268)); +#270= IFCPRODUCTDEFINITIONSHAPE($,$,(#269)); +#271= IFCCARTESIANPOINT((504.137813,42.524879)); +#272= IFCDIRECTION((0.99988055,-0.01545602)); +#273= IFCAXIS2PLACEMENT2D(#271,#272); +#274= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#273,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(203.596003508907),#78); +#275= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#274)); +#276= IFCPRODUCTDEFINITIONSHAPE($,$,(#275)); +#277= IFCCARTESIANPOINT((707.709497,39.378094)); +#278= IFCDIRECTION((0.99988055,-0.01545602)); +#279= IFCAXIS2PLACEMENT2D(#277,#278); +#280= IFCCIRCLE(#7,1000.0); +#281= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#279,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(-0.0559082376282203),#280); +#282= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#281)); +#283= IFCPRODUCTDEFINITIONSHAPE($,$,(#282)); +#284= IFCCARTESIANPOINT((763.557781,36.952154)); +#285= IFCDIRECTION((0.99745461,-0.07130432)); +#286= IFCAXIS2PLACEMENT2D(#284,#285); +#287= IFCCIRCLE(#7,1000.0); +#288= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#286,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(0.076685659310769),#287); +#289= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#288)); +#290= IFCPRODUCTDEFINITIONSHAPE($,$,(#289)); +#291= IFCCARTESIANPOINT((840.182855,34.420917)); +#292= IFCDIRECTION((0.99998584,0.00532076)); +#293= IFCAXIS2PLACEMENT2D(#291,#292); +#294= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#293,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(152.346810781613),#78); +#295= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#294)); +#296= IFCPRODUCTDEFINITIONSHAPE($,$,(#295)); +#297= IFCCARTESIANPOINT((992.527509,35.231517)); +#298= IFCDIRECTION((0.99998584,0.00532076)); +#299= IFCAXIS2PLACEMENT2D(#297,#298); +#300= IFCCIRCLE(#7,2000.0); +#301= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#299,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(0.0184108834113241),#300); +#302= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#301)); +#303= IFCPRODUCTDEFINITIONSHAPE($,$,(#302)); +#304= IFCCARTESIANPOINT((1029.344877,35.766372)); +#305= IFCDIRECTION((0.99971842,0.02372944)); +#306= IFCAXIS2PLACEMENT2D(#304,#305); +#307= IFCCIRCLE(#7,1000.0); +#308= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#306,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(-0.0525687880190251),#307); +#309= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#308)); +#310= IFCPRODUCTDEFINITIONSHAPE($,$,(#309)); +#311= IFCCARTESIANPOINT((1081.907441,35.632194)); +#312= IFCDIRECTION((0.99958424,-0.02883313)); +#313= IFCAXIS2PLACEMENT2D(#311,#312); +#314= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#313,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(188.579945016814),#78); +#315= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#314)); +#316= IFCPRODUCTDEFINITIONSHAPE($,$,(#315)); +#317= IFCGRADIENTCURVE((#209,#216,#222,#229,#235,#242,#248,#255,#261,#268,#274,#281,#288,#294,#301,#308,#314),.U.,#167,$); +#318= IFCSHAPEREPRESENTATION(#84,'Axis','Curve3D',(#317)); +#319= IFCPRODUCTDEFINITIONSHAPE($,$,(#318)); +#320= IFCSHAPEREPRESENTATION(#84,'Axis','Curve3D',(#317)); +#321= IFCPRODUCTDEFINITIONSHAPE($,$,(#320)); +#322= IFCPROPERTYSINGLEVALUE('state',$,IFCIDENTIFIER('proposed'),$); +#323= IFCPROPERTYSET('1GzoJm_T13fRi9EcDx2r9U',$,'landXML_Alignment',$,(#322)); +#324= IFCRELDEFINESBYPROPERTIES('0zJtMCYNrDHB6mAADvGL7b',$,$,$,(#20),#323); +#325= IFCPROJECTEDCRS('EPSG:3878',$,$,$,$,$,$); +#326= IFCMAPCONVERSION(#80,#325,0.0,0.0,0.0,$,$,$,$,$); +ENDSEC; + +END-ISO-10303-21; diff --git a/E1a-ARSE/ALIN01/Dataset/Testi_101_ml.xml b/E1a-ARSE/ALIN01/Dataset/Testi_101_ml.xml new file mode 100644 index 0000000..2aa38b0 --- /dev/null +++ b/E1a-ARSE/ALIN01/Dataset/Testi_101_ml.xml @@ -0,0 +1,116 @@ + + + + + + + + + + + + + + + + + + + + + + + + + 6654918.750471 24474600.283714 0.000000 + 6655045.152631 24474746.690778 0.000000 + + + 6655045.152631 24474746.690778 + 6655089.335669 24474792.677965 + 6655073.005000 24474778.951172 + + + 6655089.335669 24474792.677965 + 6655117.455754 24474812.454617 +
6655218.023713 24474639.578692
+
+ + 6655117.455754 24474812.454617 + 6655175.673937 24474838.485471 + 6655135.895942 24474823.181919 + + + 6655175.673937 24474838.485471 0.000000 + 6655195.597202 24474846.150430 0.000000 + + + 6655195.597202 24474846.150430 + 6655253.815386 24474872.181284 + 6655235.375197 24474861.453982 + + + 6655253.815386 24474872.181284 + 6655316.355174 24474929.316712 +
6655153.247426 24475045.057209
+
+ + 6655316.355174 24474929.316712 + 6655347.527472 24474984.951684 + 6655328.700888 24474946.714957 + + + 6655347.527472 24474984.951684 0.000000 + 6655432.482327 24475157.494701 0.000000 + + + 6655432.482327 24475157.494701 + 6655483.190771 24475222.220317 +
6655611.912094 24475069.149023
+
+ + 6655483.190771 24475222.220317 + 6655540.862461 24475302.781991 +
6655354.469449 24475375.291611
+
+ + 6655540.862461 24475302.781991 0.000000 + 6655562.129379 24475357.450667 0.000000 + + + 6655562.129379 24475357.450667 + 6655571.499388 24475470.909519 +
6655375.736367 24475429.960288
+
+ + 6655571.499388 24475470.909519 + 6655576.521331 24475572.007240 +
6655767.262409 24475511.858750
+
+ + 6655576.521331 24475572.007240 0.000000 + 6655585.179774 24475599.464635 0.000000 + +
+ + + 0.000000 43.475329 + 80.774181 42.850613 + 124.744967 38.746467 + 232.698531 36.516384 + 358.596365 37.500000 + 472.106409 43.020016 + 735.667559 38.945922 + 801.821767 34.216804 + 1010.938652 35.329480 + 1055.627923 36.390230 + 1270.408982 30.194845 + + + + + + +
+
+
diff --git a/E1a-ARSE/ALIN01/Dataset/Testi_ml_map.pdf b/E1a-ARSE/ALIN01/Dataset/Testi_ml_map.pdf new file mode 100644 index 0000000..a64cfde Binary files /dev/null and b/E1a-ARSE/ALIN01/Dataset/Testi_ml_map.pdf differ diff --git a/E1a-ARSE/ALIN01/Dataset/Testi_ml_profiles.pdf b/E1a-ARSE/ALIN01/Dataset/Testi_ml_profiles.pdf new file mode 100644 index 0000000..f9d0c57 Binary files /dev/null and b/E1a-ARSE/ALIN01/Dataset/Testi_ml_profiles.pdf differ diff --git a/E1a-ARSE/ALIN01/Dataset/VerticalAlignmentParameters.csv b/E1a-ARSE/ALIN01/Dataset/VerticalAlignmentParameters.csv new file mode 100644 index 0000000..366b22e --- /dev/null +++ b/E1a-ARSE/ALIN01/Dataset/VerticalAlignmentParameters.csv @@ -0,0 +1,18 @@ +Name;Type;StartDistAlong;HorizontalLength;StartHeight;StartGradient;EndGradient;Radius;Type +V1;IfcAlignmentVerticalSegment;0;67,9666275938242;43,475329;-0,00773410503537014;-0,00773410503537014;0;CONSTANTGRADIENT +V2;IfcAlignmentVerticalSegment;67,9666275938242;25,56006049186;42,9496679632888;-0,00773410503537014;-0,0933380176556316;-300;CIRCULARARC +V3;IfcAlignmentVerticalSegment;93,5266880856841;20,3985317664884;41,6603192684821;-0,0933380176556316;-0,0933380176556316;0;CONSTANTGRADIENT +V4;IfcAlignmentVerticalSegment;113,925219852173;21,6842049028376;39,7563607503138;-0,0933380176556316;-0,0206577987550277;300;CIRCULARARC +V5;IfcAlignmentVerticalSegment;135,60942475501;68,6257430776865;38,5220312181138;-0,0206577987550277;-0,0206577987550277;0;CONSTANTGRADIENT +V6;IfcAlignmentVerticalSegment;204,235167832697;56,9319301335483;37,1043744281956;-0,0206577987550277;0,00781281114018211;2000;CIRCULARARC +V7;IfcAlignmentVerticalSegment;261,167097966245;46,449675607139;36,7388035371268;0,00781281114018211;0,00781281114018211;0;CONSTANTGRADIENT +V8;IfcAlignmentVerticalSegment;307,616773573384;101,90056287711;37,101706080191;0,00781281114018211;0,0486301987513986;2500;CIRCULARARC +V9;IfcAlignmentVerticalSegment;409,517336450494;30,5916549869268;39,9762969622553;0,0486301987513986;0,0486301987513986;0;CONSTANTGRADIENT +V10;IfcAlignmentVerticalSegment;440,108991437421;64,0288214133387;41,4639752243932;0,0486301987513986;-0,0154578700237117;-1000;CIRCULARARC +V11;IfcAlignmentVerticalSegment;504,13781285076;203,571683667725;42,5248787225931;-0,0154578700237117;-0,0154578700237117;0;CONSTANTGRADIENT +V12;IfcAlignmentVerticalSegment;707,709496518485;55,8482922569574;39,3780940959472;-0,0154578700237117;-0,0714862764285531;-1000;CIRCULARARC +V13;IfcAlignmentVerticalSegment;763,557781493212;76,6250733893689;36,9521538451958;-0,0714862764285531;0,00532083289209283;1000;CIRCULARARC +V14;IfcAlignmentVerticalSegment;840,182854882581;152,344654262115;34,4209169381877;0,00532083289209283;0,00532083289209283;0;CONSTANTGRADIENT +V15;IfcAlignmentVerticalSegment;992,527509144696;36,8173619984802;35,2315173854975;0,00532083289209283;0,0237361222562795;2000;CIRCULARARC +V16;IfcAlignmentVerticalSegment;1029,34487722718;52,5625639402238;35,7663724122683;0,0237361222562795;-0,0288451180418102;-1000;CIRCULARARC +V17;IfcAlignmentVerticalSegment;1081,90744116741;188,501540832592;35,6321941963812;-0,0288451180418207;-0,0288451180418207;0;CONSTANTGRADIENT diff --git a/E1a-ARSE/ALIN01/README.md b/E1a-ARSE/ALIN01/README.md new file mode 100644 index 0000000..91376bc --- /dev/null +++ b/E1a-ARSE/ALIN01/README.md @@ -0,0 +1,199 @@ +# Test Instruction + +| Documentation Code | Title | Exchange Code | Test Code | Author | Data Owner | Version | Date | +| --------------------- | ------------------------------- | ------------- | --------- | ------------- | ---------- | ------- | ---------- | +| IFC4.3AbRV_E1a_ALIN01 | Alignment Infrastructure Curves | E1a | ALIN01 | Lars Wikström | FTIA | 1.0 | 07.01.2022 | + + +## Summary (Intent) + +With these instructions the infrastructure (e.g. Road) alignment exchange is established. + +| Info | | +| ---------------------------- | ------------------------------------- | +| Number of alignment(s) | 1 | +| Properties of segments | no | +| Horizontal layout | Straight Line, Circular Arc, Clothoid | +| Vertical layout | Straight Line, Circular Arc | +| Geometric representation | No | +| IFC reference file available | Yes | + +- Refer to [Test Case Imports](#Test-Case-Imports) to know the prerequisites for the present test. + +- The [Expected Results](#Expected-Results) section lists the material that will be used to assess the fulfilment of capabilities. + +- :zap: This is a test-driven process: refer to the [Validation Criteria](#Validation-Criteria) to understand what is required by the test :zap: + +## Itemised Roots +The Test instruction addresses the import and export of the following IFC Entities & Concept Templates: + +
IFC Entities +These entities represent a test-specific subset of the wider AbRV_Ex exchange and the overall AbRV MVD. **The scope of the test shall not be used as a definitive scope of the exchange, or of the entire MVD.** + + +- Model setup + - *IfcProject* + - *IfcRepresentationContext* + - *IfcMapConversion* + - *IfcProjectedCRS* + - *IfcUnitAssignment* +- Spatial structure + - *IfcSite* + - *IfcRoad* +- Alignment + + - *IfcAlignment* + - *IfcAlignmentHorizontal* + - *IfcAlignmentVertical* + - *IfcAlignmentSegment* + - *IfcAlignmentHorizontalSegment* + - *IfcAlignmentVerticalSegment* + +
+ +
Concept Templates + +These concept templates represent a test-specific subset of the wider AbRV_Ex exchange and the overall AbRV MVD, that must be correctly exported to meet the validation criteria. **The scope of the test shall not be used as a definitive scope of the exchange, or of the entire MVD.** + +- Project Context + - *Project Units* + - *Project Representation Context* + - *Project Global Positioning* + - *Project Global Positioning* +- Object Composition + - *Alignment Decomposition* + - *Spatial Decomposition* +- Object Connectivity + - *Spatial Containment* + +
+ +## Model Dataset + +This test case utilises the dataset collected in the Dataset folder and summarised in the table below. **For more details on each item see [Dataset description](Dataset/README.md).** + +| Filename | Description | +| ------------------------------------------------------------ | --------------------------------------------- | +| [HorizontalAlignmentParameters](Dataset/HorizontalAlignmentParameters.csv) | Parameters for the horizontal segments as csv | +| [VerticalAlignmentParameters](Dataset/VerticalAlignmentParameters.csv) | Parameters for the vertical segments as csv | +| [LandXML](Dataset/Testi_101_ml.xml) | LandXML-file representing the alignment | + +## Test Case Imports + +Test instructions are defined with a modular approach to reduce repetition of validation criteria and test content, and improve vendors ability to solve issues and bugs. therefore this test instruction *imports/reuses* the following Test instructions and entities with the relevant associated validation criteria. + +No test cases are imported for this test case. All necessary data and criteria are included. + +## Expected Results + +For certification of capabilities the only source will be: + +- n. 1 IFC file containing the information as requested. The file shall be named using the following syntax: `MVDCode`-`ExchangeCode`-`TestCode`-`SoftwareVendor`.`ifc` (Example: `IFC4.3_AbRV-E2b-ASTPC-AmazingSoft.ifc`) + +Considering the aim of this test, other **optional** results, not subject to the bSI certification process, yet usefull to illustrate test results are: +- Screen-shot of a planar view and a "long section" similar to the provided examples +- CSV export of the horizontal and vertical alignment segment parameters + +--- + +## Validation criteria +:zap: For this test case to be considered passed **all capabilities listed in this section**, and **the ones of pre-required tests** shall be verified, with no exception. :zap: + +### General + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | ------------------------------------------------------------ | ------------------------------------------------------------ | -------------------------- | ---------------------- | +| GENE_00 | All validation criteria of precondition's tests shall be verified | | na | na | +| GENE_01 | All requested entities (and attributes) exist in file | As per Entities Table. See [Dataset description](Dataset/README.md) | na | na | + +### Road alignment + +**Acceptance criteria**: For the **Railway alignment (without cant)** capability, the validation procedure must verify that **all** the following validation criteria are satisfied. + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | -------------------------------------------------------- | ---------------------- | -------------------------- | ---------------------- | +| SITE_00 | All IfcAlignment shall always be contained in an IfcSite | | | Spatial Containment | +| ALIG_00 | Alignment layout structure is verified | See steps | | Alignment Layout | +| ALIG_01 | Number of alignments contained in file | [1] | | | +| ALIG_02 | Parameters of alignment segments are verified | As per Alignment Table | | | + +
ALIG_00 steps + + + +| **STEP ID** | **STEP** | +| ----------- | ------------------------------------------------------------ | +| ALIG_00.1 | Each IfcAlignment must nest exactly 1 IfcAlignmentHorizontal | +| ALIG_00.2 | Each IfcAlignment must nest at most 1 IfcAlignmentVertical | +| ALIG_00.3 | Each IfcAlignment must nest exactly 1 IfcAlignmentVertical | +| ALIG_00.6 | Each IfcAlignmentHorizontal must be nested only by 1 IfcAlignment | +| ALIG_00.7 | Each IfcAlignmentVertical must be nested only by 1 IfcAlignment | +| ALIG_00.9 | Each IfcAlignment must nest only the following entities: IfcAlignmentHorizontal, IfcAlignmentVertical | +| ALIG_00.10 | Each IfcAlignmentHorizontal nests a list of IfcAlignmentSegment, each of which has DesignParameters typed as IfcAlignmentHorizontalSegment | +| ALIG_00.11 | Each IfcAlignmentVertical nests a list of IfcAlignmentSegment, each of which has DesignParameters typed as IfcAlignmentVerticalSegment | + +
+ +### Spatial (De)Composition + + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | --------------------------------- | ------------------------------------------------------------ | -------------------------- | ---------------------- | +| SDEC_01 | Spatial decomposition is verified | As per Spatial (De)Composition Table. See [Dataset description](Dataset/README.md) | na | Spatial Decomposition | + +> **Acceptance criteria**: For the **Spatial decomposition** capability, the validation procedure must verify that a Parent Element of the requested type aggregates (via `IfcRelAggregates`) exactly a given number of Child Elements of the requested type, no more and no less. + +
SDEC_01 details: Spatial decomposition is verified + + + +> - Given a set of elements taken from the [Spatial (De)Composition Table](Dataset/README.md#Dataset/README.md#spatial-decomposition-table) +> - Then the Parent Element, and optionally the Parent Element Type, exists +> - And the Parent Element must aggregate at least a number within [MinSize..MaxSize] of the requested Child Element + +
+ +### Spatial Containment + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | ------------------------------- | -------------------------------- | -------------------------- | ---------------------- | +| SCON_01 | Spatial containment is verified | As per Spatial Containment Table | na | Spatial Containment | + +> **Acceptance criteria**: For the **Spatial containment** capability, the validation procedure must verify that a Spatial Element of the requested type contains (via `IfcRelContainedInSpatialStructure`) exactly a given number of Elements of the requested type, no more and no less. + +
SCON_01 details: Spatial containment is verified + + + +> - Given a set of elements taken from the [Spatial Containment Table](Dataset/README.md#Spatial-Containment-Table) +> - Then the Spatial Element, and optionally the Spatial Element Type, exists +> - And the Spatial Element must contain at least a number within [MinSize..MaxSize] of the requested Element + +
+ +### Project Setup + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | ----------------------------------------------- | -------------------- | -------------------------- | -------------------------- | +| ORIG_01 | Origin of Coordinate System is set as requested | [(0., 0., 0.)] | | Project Global Positioning | +| ORIG_02 | True north is set as requested | [(0., 1., 0.)] | | Project Global Positioning | +| DIST_01 | Unit of measure for all distances | [meter] | | Project Units | +| ANGL_01 | Unit of measure all angles | [radian] | | Project Units | +| DIST_02 | Required precision for distances | [0,0001] | all alignment segments | na | +| ANGL_02 | Required precision for angles and slope | [0,000001] | | na | + +### Project global positioning + +| Element | Attribute | Value | Comment | +| ---------------- | ---------------- | --------- | ------- | +| IfcMapConversion | Eastings | 24474600 | | +| IfcMapConversion | Northings | 6655000 | | +| IfcMapConversion | OrthogonalHeight | 0 | | +| IfcMapConversion | XAxisAbscissa | 1 | | +| IfcMapConversion | XAxisOrdinate | 0 | | +| IfcMapConversion | Scale | 1 | | +| IfcProjectedCRS | Name | EPSG:3878 | | +| IfcProjectedCRS | GeodeticDatum | EPSG:6258 | | +| IfcProjectedCRS | VerticalDatum | EPSG:3900 | | + +### diff --git a/E1a-ARSE/ALIN02/Dataset/Horizontal.PNG b/E1a-ARSE/ALIN02/Dataset/Horizontal.PNG new file mode 100644 index 0000000..9dad2a5 Binary files /dev/null and b/E1a-ARSE/ALIN02/Dataset/Horizontal.PNG differ diff --git a/E1a-ARSE/ALIN02/Dataset/HorizontalAlignmentParameters.csv b/E1a-ARSE/ALIN02/Dataset/HorizontalAlignmentParameters.csv new file mode 100644 index 0000000..c255850 --- /dev/null +++ b/E1a-ARSE/ALIN02/Dataset/HorizontalAlignmentParameters.csv @@ -0,0 +1,10 @@ +Name;Type;StartPointX;StartPointY;StartDirection;StartRadius;EndRadius;Length;Type +H1;IfcAlignmentHorizontalSegment;145685,855172;6591370,14247;3,81786017386422;0;0;47,36403;LINE +H2;IfcAlignmentHorizontalSegment;145648,91529;6591340,497969;3,81786015919453;0;0;84,45946;CLOTHOID +H3;IfcAlignmentHorizontalSegment;145587,393864;6591282,917242;4,04612898397448;185;185;137,211623;CIRCULARARC +H4;IfcAlignmentHorizontalSegment;145548,355486;6591154,637666;4,78781344986031;185;185;59,594595;CLOTHOID +H5;IfcAlignmentHorizontalSegment;145559,177136;6591096,103693;4,94887976098661;0;0;55,65383;CLOTHOID +H6;IfcAlignmentHorizontalSegment;145569,732915;6591041,507035;4,81233958697448;-203,799988;-203,799988;25,757113;CIRCULARARC +H7;IfcAlignmentHorizontalSegment;145570,678864;6591015,784448;4,68595602013852;-203,799988;-203,799988;125,614636;CLOTHOID +H8;IfcAlignmentHorizontalSegment;145541,922395;6590894,049604;4,37777593581732;0;0;118,881381;CLOTHOID +H9;IfcAlignmentHorizontalSegment;145505,510693;6590780,90873;4,44754181497448;851,999999;851,999999;2,84745;CIRCULARARC diff --git a/E1a-ARSE/ALIN02/Dataset/README.md b/E1a-ARSE/ALIN02/Dataset/README.md new file mode 100644 index 0000000..50dd465 --- /dev/null +++ b/E1a-ARSE/ALIN02/Dataset/README.md @@ -0,0 +1,107 @@ +## Model Dataset +This test case utilises the following dataset: + +- One alignment layout (no geometric representation is required) +- The alignment is composed of one horizontal alignment layout and one vertical alignment layout +- The horizontal layout has the following sequences of elements: + + - Line => Clothoid => Circular arc (cw) => Clothoid => Clothoid => Circular arc (ccw) => Clothoid => Clothoid => Circular arc (cw) +- The vertical layout has the following sequences of elements: + + - Line => Parabolic arc => Line + - Line => Parabolic arc => Parabolic arc => Line (crest and sag) + - Line => Line => Line => ... + +| Filename | Description | +| ------------------------------------------------------------ | --------------------------------------------- | +| [HorizontalAlignmentParameters](./HorizontalAlignmentParameters.csv) | Parameters for the horizontal segments as csv | +| [VerticalAlignmentParameters](./VerticalAlignmentParameters.csv) | Parameters for the vertical segments as csv | +| [LandXML](./T616AAC0.ifc) | LandXML-file representing the alignment | + +## Dataset specification + +### Entities table + +| **Element** | **Attribute** | **Value** | **Notes** | +| ---------------------- | ------------- | ----------- | --------- | +| IfcProject | Name | Alin02 | | +| IfcSite | Name | Alin02.Site | | +| IfcAlignment | Name | A1 | | +| IfcRoad | Name | Alin02.Road | | +| IfcAlignmentHorizontal | Name | AH1 | | +| IfcAlignmentVertical | Name | AV1 | | + +### Horizontal segments table + +Horizontal segments nested into AH1 in the following order: + +| Entity | PredefinedType | Name | Start Point X | Start Point Y | Start Direction | Start Radius Of Curvature | End Radius Of Curvature | Segment Length | +| ----------------------------- | -------------- | ---- | ------------- | ------------- | --------------- | ------------------------- | ----------------------- | -------------- | +| IfcAlignmentHorizontalSegment | LINE | H1 | 145685,8552 | 6591370,142 | 3,817860174 | 0 | 0 | 47,36403 | +| IfcAlignmentHorizontalSegment | CLOTHOID | H2 | 145648,9153 | 6591340,498 | 3,817860159 | 0 | 185 | 84,45946 | +| IfcAlignmentHorizontalSegment | CIRCULARARC | H3 | 145587,3939 | 6591282,917 | 4,046128984 | 185 | 185 | 137,211623 | +| IfcAlignmentHorizontalSegment | CLOTHOID | H4 | 145548,3555 | 6591154,638 | 4,78781345 | 185 | 0 | 59,594595 | +| IfcAlignmentHorizontalSegment | CLOTHOID | H5 | 145559,1771 | 6591096,104 | 4,948879761 | 0 | -203,799988 | 55,65383 | +| IfcAlignmentHorizontalSegment | CIRCULARARC | H6 | 145569,7329 | 6591041,507 | 4,812339587 | -203,799988 | -203,799988 | 25,757113 | +| IfcAlignmentHorizontalSegment | CLOTHOID | H7 | 145570,6789 | 6591015,784 | 4,68595602 | -203,799988 | 0 | 125,614636 | +| IfcAlignmentHorizontalSegment | CLOTHOID | H8 | 145541,9224 | 6590894,05 | 4,377775936 | 0 | 851,999999 | 118,881381 | +| IfcAlignmentHorizontalSegment | CIRCULARARC | H9 | 145505,5107 | 6590780,909 | 4,447541815 | 851,999999 | 851,999999 | 2,84745 | + +### Vertical segments table + +Vertical segments nested into AV1 in the following order: + +| Entity | PredefinedType | Name | Start Dist Along | Horizontal Length | Start Height | Start Gradient | End Gradient | RadiusOfCurvature | +| --------------------------- | ---------------- | ---- | ---------------- | ----------------- | ------------ | -------------- | ------------ | ----------------- | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V1 | 85 | 1,41860495 | 15,82 | 0,009739982 | 0,009739982 | 0 | +| IfcAlignmentVerticalSegment | PARABOLICARC | V2 | 86,41860495 | 20,6264881 | 15,83381719 | 0,009739982 | 0,023047408 | 1549,998375 | +| IfcAlignmentVerticalSegment | PARABOLICARC | V3 | 107,0450938 | 30,9389625 | 16,17196156 | 0,023047408 | 0,016859621 | -5000,004241 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V4 | 137,9840563 | 66,893377 | 16,78930258 | 0,016859621 | 0,016859621 | 0 | +| IfcAlignmentVerticalSegment | PARABOLICARC | V5 | 204,8774333 | 12,6667695 | 17,91709954 | 0,016859621 | 0,012637385 | -3000,015228 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V6 | 217,5442028 | 4,4678966 | 18,10391542 | 0,012637385 | 0,012637385 | 0 | +| IfcAlignmentVerticalSegment | PARABOLICARC | V7 | 222,0120994 | 13,9676113 | 18,16037796 | 0,012637385 | 0,017293222 | 3000,021522 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V8 | 235,9797107 | 29,55312205 | 18,36940751 | 0,017293222 | 0,017293222 | 0 | +| IfcAlignmentVerticalSegment | PARABOLICARC | V9 | 265,5328327 | 17,4384826 | 18,88047622 | 0,017293222 | 0,023106068 | 2999,990831 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V10 | 282,9713153 | 12,9163156 | 19,23272738 | 0,023106068 | 0,023106068 | 0 | +| IfcAlignmentVerticalSegment | PARABOLICARC | V11 | 295,8876309 | 64,5895582 | 19,53117264 | 0,023106068 | 0,045000824 | 2950,001197 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V12 | 360,4771891 | 0,0557456 | 21,73066968 | 0,045000824 | 0,045000824 | 0 | +| IfcAlignmentVerticalSegment | PARABOLICARC | V13 | 360,5329347 | 42,5278306 | 21,73317828 | 0,045000824 | 0,030824882 | -3000,000288 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V14 | 403,0607653 | 126,9386947 | 23,34552968 | 0,030824882 | 0,030824882 | 0 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V15 | 529,99946 | 10 | 27,2584 | 0,028668 | 0,028668 | 0 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V16 | 539,99946 | 10 | 27,54508 | 0,027292 | 0,027292 | 0 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V17 | 549,99946 | 10 | 27,818 | 0,026832 | 0,026832 | 0 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V18 | 559,99946 | 10 | 28,08632 | 0,026325 | 0,026325 | 0 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V19 | 569,99946 | 10 | 28,34957 | 0,02537 | 0,02537 | 0 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V20 | 579,99946 | 10 | 28,60327 | 0,020813 | 0,020813 | 0 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V21 | 589,99946 | 10 | 28,8114 | 0,020176 | 0,020176 | 0 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V22 | 599,99946 | 10 | 29,01316 | 0,019498 | 0,019498 | 0 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V23 | 609,99946 | 10 | 29,20814 | 0,018781 | 0,018781 | 0 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V24 | 619,99946 | 10 | 29,39595 | 0,018022 | 0,018022 | 0 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V25 | 629,99946 | 10 | 29,57617 | 0,017226 | 0,017226 | 0 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V26 | 639,99946 | 10 | 29,74843 | 0,01639 | 0,01639 | 0 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V27 | 649,99946 | 7,384658 | 29,91233 | 0,015674389 | 0,015674389 | 0 | + +### Spatial (De)Composition table + +| **Parent Element** | **Parent Element Type** | **Parent Element Name** | **MinSize** | **MaxSize** | **Child Element** | **Child Element Type** | **Child Element Name** | +| ------------------ | ----------------------- | ----------------------- | ----------- | ----------- | ----------------- | ---------------------- | ---------------------- | +| IfcProject | | Alin02 | 1 | 1 | IfcSite | | Alin02.Site | +| IfcSite | | Alin02.Site | 1 | 1 | IfcRoad | | Allin02.Road | + +### Spatial Containment table + +| **Spatial Element** | **Spatial Element Type** | **Spatial Element Name** | **MinSize** | **MaxSize** | **Element** | **Element Type** | **Element Name** | +| ------------------- | ------------------------ | ------------------------ | ----------- | ----------- | ------------ | ---------------- | ---------------- | +| IfcSite | | Alin02.Site | 1 | 1 | IfcAlignment | | A1 | + +## Drawings (Visualisations) + +The following Drawings and visualisations describe the test case dataset to be modelled and certified. + +| Filename | Description | +| ---------------------------------- | -------------------------------------------- | +| [Horizontal](./Horizontal.PNG) | Planar view of the horizontal alignment | +| [Vertical](./T616AAC0_profile.pdf) | Long section (profile) view of the alignment | + + +## diff --git a/E1a-ARSE/ALIN02/Dataset/T616AAC0.ifc b/E1a-ARSE/ALIN02/Dataset/T616AAC0.ifc new file mode 100644 index 0000000..1f85899 --- /dev/null +++ b/E1a-ARSE/ALIN02/Dataset/T616AAC0.ifc @@ -0,0 +1,379 @@ +ISO-10303-21; +HEADER; +FILE_DESCRIPTION(('ViewDefinition [Ifc4NotAssigned]'),'2;1'); +FILE_NAME( +/* name */ 'C:\\Users\\lars\\Documents\\Projekt\\IFCInfra\\Tests\\T616AAC0.ifc', +/* time_stamp */ '2022-02-11T14:31:20', +/* author */ ('lars'), +/* organization */ ('Unknown'), +/* preprocessor_version */ 'ggIfcConverter v0.0.5.0 by Geometry Gym Pty Ltd built 2022-02-10T07:15:39', +/* originating_system */ 'ggIFCConverter v0.0.5.0 - Converter by Geometry Gym Pty Ltd', +/* authorization */ 'None'); + +FILE_SCHEMA (('IFC4X3_RC4')); +ENDSEC; + +DATA; +#1= IFCCARTESIANPOINT((0.0,0.0,0.0)); +#2= IFCDIRECTION((1.0,0.0,0.0)); +#3= IFCDIRECTION((0.0,1.0,0.0)); +#4= IFCDIRECTION((0.0,0.0,1.0)); +#5= IFCAXIS2PLACEMENT3D(#1,$,$); +#6= IFCCARTESIANPOINT((0.0,0.0)); +#7= IFCAXIS2PLACEMENT2D(#6,$); +#8= IFCSIUNIT(*,.LENGTHUNIT.,$,.METRE.); +#9= IFCSIUNIT(*,.AREAUNIT.,$,.SQUARE_METRE.); +#10= IFCSIUNIT(*,.VOLUMEUNIT.,$,.CUBIC_METRE.); +#11= IFCSIUNIT(*,.PLANEANGLEUNIT.,$,.RADIAN.); +#12= IFCUNITASSIGNMENT((#8,#11)); +#13= IFCPROJECT('1Tv021Gck$7ughfYxwF4yI',$,'FSE62','Haggvik',$,$,$,(#62),#12); +#14= IFCCARTESIANPOINT((0.0,0.0,0.0)); +#15= IFCAXIS2PLACEMENT3D(#14,$,$); +#16= IFCLOCALPLACEMENT($,#15); +#17= IFCSITE('3T1iwTWw_7C9gXxbplesA6',$,'FSE62',$,$,#16,$,$,$,$,$,$,$,$); +#18= IFCRELAGGREGATES('0r0HqCeSODTtdmcoweUKiT',$,$,$,#13,(#17)); +#19= IFCLOCALPLACEMENT(#16,#5); +#20= IFCALIGNMENT('1qKoYQmefwILLh4ZsI6LxI',$,'BH FSK06 T 616 - MCL0',$,$,#19,#349,$); +#21= IFCRELCONTAINEDINSPATIALSTRUCTURE('0nVagFNqT69QpkPBmysnEN',$,'Site','Site Container for Elements',(#20),#17); +#22= IFCCARTESIANPOINT((0.0,0.0,0.0)); +#23= IFCAXIS2PLACEMENT3D(#22,#4,#2); +#25= IFCALIGNMENTHORIZONTAL('0eCZ0W41XqosthTwW3nHMK',$,$,$,$,#19,#119); +#26= IFCRELNESTS('3LMExpFLX4iQsPL7OaDfQh',$,$,$,#20,(#25,#147)); +#27= IFCCARTESIANPOINT((145685.855172,6591370.14247)); +#28= IFCALIGNMENTHORIZONTALSEGMENT($,$,#27,3.81786017386422,0.0,0.0,47.36403,$,.LINE.); +#29= IFCALIGNMENTSEGMENT('0fFLjTpDOX1QYJYWSPuaEh',$,$,$,$,#19,#68,#28); +#30= IFCRELNESTS('305zaPLUj2JfD1ZD3UQPAH',$,$,$,#25,(#29,#33,#36,#39,#42,#45,#48,#51,#54)); +#31= IFCCARTESIANPOINT((145648.91529,6591340.497969)); +#32= IFCALIGNMENTHORIZONTALSEGMENT($,$,#31,3.81786015919453,0.0,185.0,84.45946,$,.CLOTHOID.); +#33= IFCALIGNMENTSEGMENT('3l1vipy03BwwW_WnKuy0xn',$,$,$,$,#19,#74,#32); +#34= IFCCARTESIANPOINT((145587.393864,6591282.917242)); +#35= IFCALIGNMENTHORIZONTALSEGMENT($,$,#34,4.04612898397448,185.0,185.0,137.211623,$,.CIRCULARARC.); +#36= IFCALIGNMENTSEGMENT('1kDteeSkka4ZRXjPeCwS4$',$,$,$,$,#19,#80,#35); +#37= IFCCARTESIANPOINT((145548.355486,6591154.637666)); +#38= IFCALIGNMENTHORIZONTALSEGMENT($,$,#37,4.78781344986031,185.0,0.0,59.594595,$,.CLOTHOID.); +#39= IFCALIGNMENTSEGMENT('1dhuWBbsUf660FT84XQd$R',$,$,$,$,#19,#86,#38); +#40= IFCCARTESIANPOINT((145559.177136,6591096.103693)); +#41= IFCALIGNMENTHORIZONTALSEGMENT($,$,#40,4.94887976098661,0.0,-203.799988,55.65383,$,.CLOTHOID.); +#42= IFCALIGNMENTSEGMENT('0TjXmuzRqJQbl7$1zvHNM0',$,$,$,$,#19,#92,#41); +#43= IFCCARTESIANPOINT((145569.732915,6591041.507035)); +#44= IFCALIGNMENTHORIZONTALSEGMENT($,$,#43,4.81233958697448,-203.799988,-203.799988,25.757113,$,.CIRCULARARC.); +#45= IFCALIGNMENTSEGMENT('2LV6BwicdV_X3HMaqU2uph',$,$,$,$,#19,#98,#44); +#46= IFCCARTESIANPOINT((145570.678864,6591015.784448)); +#47= IFCALIGNMENTHORIZONTALSEGMENT($,$,#46,4.68595602013852,-203.799988,0.0,125.614636,$,.CLOTHOID.); +#48= IFCALIGNMENTSEGMENT('03KECuLeEdyOHhsPBo52s8',$,$,$,$,#19,#104,#47); +#49= IFCCARTESIANPOINT((145541.922395,6590894.049604)); +#50= IFCALIGNMENTHORIZONTALSEGMENT($,$,#49,4.37777593581732,0.0,851.999999,118.881381,$,.CLOTHOID.); +#51= IFCALIGNMENTSEGMENT('1TlIJ8w4HdkkZ$zAwmVOT5',$,$,$,$,#19,#110,#50); +#52= IFCCARTESIANPOINT((145505.510693,6590780.90873)); +#53= IFCALIGNMENTHORIZONTALSEGMENT($,$,#52,4.44754181497448,851.999999,851.999999,2.84745,$,.CIRCULARARC.); +#54= IFCALIGNMENTSEGMENT('1SwrZzgdyr8eBKAjrC6oJA',$,$,$,$,#19,#116,#53); +#55= IFCAXIS2PLACEMENT2D(#27,#56); +#56= IFCDIRECTION((-0.77991425,-0.62588638)); +#57= IFCCARTESIANPOINT((0.0,0.0)); +#58= IFCDIRECTION((1.0,0.0)); +#59= IFCVECTOR(#58,1.0); +#60= IFCLINE(#57,#59); +#61= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#55,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(47.3640298),#60); +#62= IFCGEOMETRICREPRESENTATIONCONTEXT($,'Model',3,0.00001,#64,#65); +#63= IFCCARTESIANPOINT((0.0,0.0,0.0)); +#64= IFCAXIS2PLACEMENT3D(#63,$,$); +#65= IFCDIRECTION((0.0,1.0)); +#66= IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Axis','Model',*,*,*,*,#62,$,.GRAPH_VIEW.,$); +#67= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#61)); +#68= IFCPRODUCTDEFINITIONSHAPE($,$,(#67)); +#69= IFCAXIS2PLACEMENT2D(#31,#70); +#70= IFCDIRECTION((-0.77991426,-0.62588636)); +#71= IFCCLOTHOID(#7,125.00000003); +#72= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#69,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(84.4594595),#71); +#73= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#72)); +#74= IFCPRODUCTDEFINITIONSHAPE($,$,(#73)); +#75= IFCAXIS2PLACEMENT2D(#34,#76); +#76= IFCDIRECTION((-0.61805015,-0.78613867)); +#77= IFCCIRCLE(#7,185.0); +#78= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#75,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(137.2116232),#77); +#79= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#78)); +#80= IFCPRODUCTDEFINITIONSHAPE($,$,(#79)); +#81= IFCAXIS2PLACEMENT2D(#37,#82); +#82= IFCDIRECTION((0.07535298,-0.99715692)); +#83= IFCCLOTHOID(#7,-105.000000004762); +#84= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#81,IFCPARAMETERVALUE(-59.5945946),IFCNONNEGATIVELENGTHMEASURE(59.5945946),#83); +#85= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#84)); +#86= IFCPRODUCTDEFINITIONSHAPE($,$,(#85)); +#87= IFCAXIS2PLACEMENT2D(#40,#88); +#88= IFCDIRECTION((0.23429253,-0.97216614)); +#89= IFCCLOTHOID(#7,-106.50000004843); +#90= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#87,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(55.6538305),#89); +#91= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#90)); +#92= IFCPRODUCTDEFINITIONSHAPE($,$,(#91)); +#93= IFCAXIS2PLACEMENT2D(#43,#94); +#94= IFCDIRECTION((0.09978427,-0.9950091)); +#95= IFCCIRCLE(#7,203.799988); +#96= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#93,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(-0.126384271668585),#95); +#97= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#96)); +#98= IFCPRODUCTDEFINITIONSHAPE($,$,(#97)); +#99= IFCAXIS2PLACEMENT2D(#46,#100); +#100= IFCDIRECTION((-0.02642988,-0.99965067)); +#101= IFCCLOTHOID(#7,160.000816780929); +#102= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#99,IFCPARAMETERVALUE(-125.6146363),IFCNONNEGATIVELENGTHMEASURE(125.6146363),#101); +#103= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#102)); +#104= IFCPRODUCTDEFINITIONSHAPE($,$,(#103)); +#105= IFCAXIS2PLACEMENT2D(#49,#106); +#106= IFCDIRECTION((-0.3284037,-0.94453746)); +#107= IFCCLOTHOID(#7,318.256086779962); +#108= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#105,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(118.8813813),#107); +#109= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#108)); +#110= IFCPRODUCTDEFINITIONSHAPE($,$,(#109)); +#111= IFCAXIS2PLACEMENT2D(#52,#112); +#112= IFCDIRECTION((-0.26176177,-0.96513252)); +#113= IFCCIRCLE(#7,851.999999); +#114= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#111,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(2.8474498),#113); +#115= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#114)); +#116= IFCPRODUCTDEFINITIONSHAPE($,$,(#115)); +#117= IFCCOMPOSITECURVE((#61,#72,#78,#84,#90,#96,#102,#108,#114),.U.); +#118= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#117)); +#119= IFCPRODUCTDEFINITIONSHAPE($,$,(#118)); +#120= IFCALIGNMENTVERTICALSEGMENT($,$,85.0,1.41860494999992,15.82,0.00973998216308436,0.00973998216308436,$,.CONSTANTGRADIENT.); +#121= IFCALIGNMENTVERTICALSEGMENT($,$,86.4186049499999,20.6264881,15.8338171869095,0.00973998216308436,0.0230474077876794,1549.99837548427,.PARABOLICARC.); +#122= IFCALIGNMENTVERTICALSEGMENT($,$,107.04509375,30.9389625,16.1719615573674,0.0230474077876794,0.0168596205365767,-5000.00424133629,.PARABOLICARC.); +#123= IFCALIGNMENTVERTICALSEGMENT($,$,137.98405625,66.8933770000001,16.7893025837727,0.0168596205365767,0.0168596205365767,$,.CONSTANTGRADIENT.); +#124= IFCALIGNMENTVERTICALSEGMENT($,$,204.87743325,12.6667695,17.9170995364029,0.0168596205365767,0.0126373854679485,-3000.01522750735,.PARABOLICARC.); +#125= IFCALIGNMENTVERTICALSEGMENT($,$,217.54420275,4.4678965999999,18.1039154244026,0.0126373854679485,0.0126373854679485,$,.CONSTANTGRADIENT.); +#126= IFCALIGNMENTVERTICALSEGMENT($,$,222.01209935,13.9676113,18.1603779559677,0.0126373854679485,0.0172932224996773,3000.02152240574,.PARABOLICARC.); +#127= IFCALIGNMENTVERTICALSEGMENT($,$,235.97971065,29.55312205,18.369407505,0.0172932224996773,0.0172932224996773,$,.CONSTANTGRADIENT.); +#128= IFCALIGNMENTVERTICALSEGMENT($,$,265.5328327,17.4384826,18.8804762201707,0.0172932224996773,0.0231060677982796,2999.99083137358,.PARABOLICARC.); +#129= IFCALIGNMENTVERTICALSEGMENT($,$,282.9713153,12.9163156,19.2327273806274,0.0231060677982796,0.0231060677982796,$,.CONSTANTGRADIENT.); +#130= IFCALIGNMENTVERTICALSEGMENT($,$,295.8876309,64.5895582,19.5311726445849,0.0231060677982796,0.0450008244047686,2950.00119712944,.PARABOLICARC.); +#131= IFCALIGNMENTVERTICALSEGMENT($,$,360.4771891,0.0557456000001366,21.7306696834699,0.0450008244047686,0.0450008244047686,$,.CONSTANTGRADIENT.); +#132= IFCALIGNMENTVERTICALSEGMENT($,$,360.5329347,42.5278306,21.7331782814268,0.0450008244047686,0.0308248822338554,-3000.00028832373,.PARABOLICARC.); +#133= IFCALIGNMENTVERTICALSEGMENT($,$,403.0607653,126.9386947,23.3455296849532,0.0308248822338554,0.0308248822338554,$,.CONSTANTGRADIENT.); +#134= IFCALIGNMENTVERTICALSEGMENT($,$,529.99946,10.0,27.2584,0.0286679999999997,0.0286679999999997,$,.CONSTANTGRADIENT.); +#135= IFCALIGNMENTVERTICALSEGMENT($,$,539.99946,10.0,27.54508,0.0272920000000003,0.0272920000000003,$,.CONSTANTGRADIENT.); +#136= IFCALIGNMENTVERTICALSEGMENT($,$,549.99946,10.0,27.818,0.0268319999999999,0.0268319999999999,$,.CONSTANTGRADIENT.); +#137= IFCALIGNMENTVERTICALSEGMENT($,$,559.99946,10.0,28.08632,0.0263249999999999,0.0263249999999999,$,.CONSTANTGRADIENT.); +#138= IFCALIGNMENTVERTICALSEGMENT($,$,569.99946,10.0,28.34957,0.0253699999999998,0.0253699999999998,$,.CONSTANTGRADIENT.); +#139= IFCALIGNMENTVERTICALSEGMENT($,$,579.99946,10.0,28.60327,0.0208130000000001,0.0208130000000001,$,.CONSTANTGRADIENT.); +#140= IFCALIGNMENTVERTICALSEGMENT($,$,589.99946,10.0,28.8114,0.020176,0.020176,$,.CONSTANTGRADIENT.); +#141= IFCALIGNMENTVERTICALSEGMENT($,$,599.99946,10.0,29.01316,0.0194980000000001,0.0194980000000001,$,.CONSTANTGRADIENT.); +#142= IFCALIGNMENTVERTICALSEGMENT($,$,609.99946,10.0,29.20814,0.0187809999999999,0.0187809999999999,$,.CONSTANTGRADIENT.); +#143= IFCALIGNMENTVERTICALSEGMENT($,$,619.99946,10.0,29.39595,0.0180220000000002,0.0180220000000002,$,.CONSTANTGRADIENT.); +#144= IFCALIGNMENTVERTICALSEGMENT($,$,629.99946,10.0,29.57617,0.0172259999999998,0.0172259999999998,$,.CONSTANTGRADIENT.); +#145= IFCALIGNMENTVERTICALSEGMENT($,$,639.99946,10.0,29.74843,0.0163900000000002,0.0163900000000002,$,.CONSTANTGRADIENT.); +#146= IFCALIGNMENTVERTICALSEGMENT($,$,649.99946,7.38465799999994,29.91233,0.0156743887123817,0.0156743887123817,$,.CONSTANTGRADIENT.); +#147= IFCALIGNMENTVERTICAL('3yZID4z3LD1Q169TMHXNS9',$,'GCL0BH FSK06 T 616',$,$,#19,#347); +#148= IFCALIGNMENTSEGMENT('0Oz2vXYBnFQeKCpYLUInCA',$,$,$,$,#19,#181,#120); +#149= IFCRELNESTS('2B4aDb4$XDIA9eMNMVsOsk',$,$,$,#147,(#148,#150,#151,#152,#153,#154,#155,#156,#157,#158,#159,#160,#161,#162,#163,#164,#165,#166,#167,#168,#169,#170,#171,#172,#173,#174,#175)); +#150= IFCALIGNMENTSEGMENT('1FVHW310TC$8EwmI8ZOvzK',$,$,$,$,#19,#188,#121); +#151= IFCALIGNMENTSEGMENT('0vmaF4tqL2AxYtl1WwGjlg',$,$,$,$,#19,#195,#122); +#152= IFCALIGNMENTSEGMENT('2Y_b_GPi99ag_YmKfEAcE1',$,$,$,$,#19,#201,#123); +#153= IFCALIGNMENTSEGMENT('0cTpBx3CTDXf7Ga0_WuGUO',$,$,$,$,#19,#208,#124); +#154= IFCALIGNMENTSEGMENT('16PlGGFWT7ZhtAxP15DL9Z',$,$,$,$,#19,#214,#125); +#155= IFCALIGNMENTSEGMENT('3rhOV0RST8sg_$KPVceuMS',$,$,$,$,#19,#221,#126); +#156= IFCALIGNMENTSEGMENT('0EGpLYeWDEDwcg93ZEWbtC',$,$,$,$,#19,#227,#127); +#157= IFCALIGNMENTSEGMENT('3xk5NvLRr1Fxqy4DUiAvr7',$,$,$,$,#19,#234,#128); +#158= IFCALIGNMENTSEGMENT('1$4qk3FZ557ur2whBLMvpt',$,$,$,$,#19,#240,#129); +#159= IFCALIGNMENTSEGMENT('2nrrGm_dr6w8OwQNM$pjuJ',$,$,$,$,#19,#247,#130); +#160= IFCALIGNMENTSEGMENT('2qI4jYgTfA99unGS59jrcW',$,$,$,$,#19,#253,#131); +#161= IFCALIGNMENTSEGMENT('0fQzmPlJH0j9qUngDIS_gn',$,$,$,$,#19,#260,#132); +#162= IFCALIGNMENTSEGMENT('3Vf_IpZ1nEdQWbNIR9se5b',$,$,$,$,#19,#266,#133); +#163= IFCALIGNMENTSEGMENT('2RBYedQIzDaQy4fYsJd1KF',$,$,$,$,#19,#272,#134); +#164= IFCALIGNMENTSEGMENT('3idbhVgBDFBOsuRZzMmHc7',$,$,$,$,#19,#278,#135); +#165= IFCALIGNMENTSEGMENT('2xGprMiYj9LAbf1kLD8EN5',$,$,$,$,#19,#284,#136); +#166= IFCALIGNMENTSEGMENT('33cR$eeuLD$goDR6Cb7njT',$,$,$,$,#19,#290,#137); +#167= IFCALIGNMENTSEGMENT('3A_5iVdsr7Lg4rzwhQFNuu',$,$,$,$,#19,#296,#138); +#168= IFCALIGNMENTSEGMENT('2kWm0SYR94Jx4rvOW0Oq6g',$,$,$,$,#19,#302,#139); +#169= IFCALIGNMENTSEGMENT('2fXcw4EVj7Vw84m$cXpyyg',$,$,$,$,#19,#308,#140); +#170= IFCALIGNMENTSEGMENT('15opIWozD44AgdO2ccxWqO',$,$,$,$,#19,#314,#141); +#171= IFCALIGNMENTSEGMENT('0hKmt36IjFzQju$FM19J9T',$,$,$,$,#19,#320,#142); +#172= IFCALIGNMENTSEGMENT('2lBotrH$HAZQZnJSW2xESI',$,$,$,$,#19,#326,#143); +#173= IFCALIGNMENTSEGMENT('3v3_LX3fP0eB$G9ABpj8tP',$,$,$,$,#19,#332,#144); +#174= IFCALIGNMENTSEGMENT('0k3aRclTX3mBfN5kQbH_8z',$,$,$,$,#19,#338,#145); +#175= IFCALIGNMENTSEGMENT('1_Zh_6n0PD2ud7HcMKKXcP',$,$,$,$,#19,#344,#146); +#176= IFCCARTESIANPOINT((85.0,15.82)); +#177= IFCDIRECTION((0.99995257,0.00973952)); +#178= IFCAXIS2PLACEMENT2D(#176,#177); +#179= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#178,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(1.41867223798112),#60); +#180= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#179)); +#181= IFCPRODUCTDEFINITIONSHAPE($,$,(#180)); +#182= IFCCARTESIANPOINT((86.418605,15.833817)); +#183= IFCDIRECTION((0.99995257,0.00973952)); +#184= IFCAXIS2PLACEMENT2D(#182,#183); +#185= IFCPOLYNOMIALCURVE(#7,(0.0,1.0),(0.0,0.0,3.22580983E-04),$); +#186= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#184,IFCPARAMETERVALUE(15.0969565300265),IFCPARAMETERVALUE(20.6264881),#185); +#187= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#186)); +#188= IFCPRODUCTDEFINITIONSHAPE($,$,(#187)); +#189= IFCCARTESIANPOINT((107.045094,16.171962)); +#190= IFCDIRECTION((0.99973451,0.02304129)); +#191= IFCAXIS2PLACEMENT2D(#189,#190); +#192= IFCPOLYNOMIALCURVE(#7,(0.0,1.0),(0.0,0.0,-9.99999152E-05),$); +#193= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#191,IFCPARAMETERVALUE(-115.237136690204),IFCPARAMETERVALUE(30.9389625),#192); +#194= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#193)); +#195= IFCPRODUCTDEFINITIONSHAPE($,$,(#194)); +#196= IFCCARTESIANPOINT((137.984056,16.789303)); +#197= IFCDIRECTION((0.99985791,0.01685722)); +#198= IFCAXIS2PLACEMENT2D(#196,#197); +#199= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#198,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(66.9028834388362),#60); +#200= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#199)); +#201= IFCPRODUCTDEFINITIONSHAPE($,$,(#200)); +#202= IFCCARTESIANPOINT((204.877433,17.9171)); +#203= IFCDIRECTION((0.99985791,0.01685722)); +#204= IFCAXIS2PLACEMENT2D(#202,#203); +#205= IFCPOLYNOMIALCURVE(#7,(0.0,1.0),(0.0,0.0,-1.66665821E-04),$); +#206= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#204,IFCPARAMETERVALUE(-50.5791183397258),IFCPARAMETERVALUE(12.6667695),#205); +#207= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#206)); +#208= IFCPRODUCTDEFINITIONSHAPE($,$,(#207)); +#209= IFCCARTESIANPOINT((217.544203,18.103915)); +#210= IFCDIRECTION((0.99992016,0.01263638)); +#211= IFCAXIS2PLACEMENT2D(#209,#210); +#212= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#211,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(4.46825335514465),#60); +#213= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#212)); +#214= IFCPRODUCTDEFINITIONSHAPE($,$,(#213)); +#215= IFCCARTESIANPOINT((222.012099,18.160378)); +#216= IFCDIRECTION((0.99992016,0.01263638)); +#217= IFCAXIS2PLACEMENT2D(#215,#216); +#218= IFCPOLYNOMIALCURVE(#7,(0.0,1.0),(0.0,0.0,1.66665471E-04),$); +#219= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#217,IFCPARAMETERVALUE(37.9124283907832),IFCPARAMETERVALUE(13.9676113),#218); +#220= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#219)); +#221= IFCPRODUCTDEFINITIONSHAPE($,$,(#220)); +#222= IFCCARTESIANPOINT((235.979711,18.369408)); +#223= IFCDIRECTION((0.99985051,0.01729064)); +#224= IFCAXIS2PLACEMENT2D(#222,#223); +#225= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#224,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(29.5575407321688),#60); +#226= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#225)); +#227= IFCPRODUCTDEFINITIONSHAPE($,$,(#226)); +#228= IFCCARTESIANPOINT((265.532833,18.880476)); +#229= IFCDIRECTION((0.99985051,0.01729064)); +#230= IFCAXIS2PLACEMENT2D(#228,#229); +#231= IFCPOLYNOMIALCURVE(#7,(0.0,1.0),(0.0,0.0,1.66667176E-04),$); +#232= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#230,IFCPARAMETERVALUE(51.8795089439353),IFCPARAMETERVALUE(17.4384826),#231); +#233= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#232)); +#234= IFCPRODUCTDEFINITIONSHAPE($,$,(#233)); +#235= IFCCARTESIANPOINT((282.971315,19.232727)); +#236= IFCDIRECTION((0.99973316,0.0230999)); +#237= IFCAXIS2PLACEMENT2D(#235,#236); +#238= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#237,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(12.9197630881677),#60); +#239= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#238)); +#240= IFCPRODUCTDEFINITIONSHAPE($,$,(#239)); +#241= IFCCARTESIANPOINT((295.887631,19.531173)); +#242= IFCDIRECTION((0.99973316,0.0230999)); +#243= IFCAXIS2PLACEMENT2D(#241,#242); +#244= IFCPOLYNOMIALCURVE(#7,(0.0,1.0),(0.0,0.0,1.69491457E-04),$); +#245= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#243,IFCPARAMETERVALUE(68.162927665879),IFCPARAMETERVALUE(64.5895582),#244); +#246= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#245)); +#247= IFCPRODUCTDEFINITIONSHAPE($,$,(#246)); +#248= IFCCARTESIANPOINT((360.477189,21.73067)); +#249= IFCDIRECTION((0.998989,0.04495533)); +#250= IFCAXIS2PLACEMENT2D(#248,#249); +#251= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#250,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(0.0558020159410466),#60); +#252= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#251)); +#253= IFCPRODUCTDEFINITIONSHAPE($,$,(#252)); +#254= IFCCARTESIANPOINT((360.532935,21.733178)); +#255= IFCDIRECTION((0.998989,0.04495533)); +#256= IFCAXIS2PLACEMENT2D(#254,#255); +#257= IFCPOLYNOMIALCURVE(#7,(0.0,1.0),(0.0,0.0,-1.66666651E-04),$); +#258= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#256,IFCPARAMETERVALUE(-135.002486189111),IFCPARAMETERVALUE(42.5278306),#257); +#259= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#258)); +#260= IFCPRODUCTDEFINITIONSHAPE($,$,(#259)); +#261= IFCCARTESIANPOINT((403.060765,23.34553)); +#262= IFCDIRECTION((0.99952525,0.03081025)); +#263= IFCAXIS2PLACEMENT2D(#261,#262); +#264= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#263,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(126.998987264632),#60); +#265= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#264)); +#266= IFCPRODUCTDEFINITIONSHAPE($,$,(#265)); +#267= IFCCARTESIANPOINT((529.99946,27.2584)); +#268= IFCDIRECTION((0.99958933,0.02865623)); +#269= IFCAXIS2PLACEMENT2D(#267,#268); +#270= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#269,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(10.0041084271613),#60); +#271= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#270)); +#272= IFCPRODUCTDEFINITIONSHAPE($,$,(#271)); +#273= IFCCARTESIANPOINT((539.99946,27.54508)); +#274= IFCDIRECTION((0.99962778,0.02728184)); +#275= IFCAXIS2PLACEMENT2D(#273,#274); +#276= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#275,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(10.0037235730702),#60); +#277= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#276)); +#278= IFCPRODUCTDEFINITIONSHAPE($,$,(#277)); +#279= IFCCARTESIANPOINT((549.99946,27.818)); +#280= IFCDIRECTION((0.99964022,0.02682235)); +#281= IFCAXIS2PLACEMENT2D(#279,#280); +#282= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#281,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(10.0035991334319),#60); +#283= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#282)); +#284= IFCPRODUCTDEFINITIONSHAPE($,$,(#283)); +#285= IFCCARTESIANPOINT((559.99946,28.08632)); +#286= IFCDIRECTION((0.99965368,0.02631588)); +#287= IFCAXIS2PLACEMENT2D(#285,#286); +#288= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#287,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(10.0034644280119),#60); +#289= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#288)); +#290= IFCPRODUCTDEFINITIONSHAPE($,$,(#289)); +#291= IFCCARTESIANPOINT((569.99946,28.34957)); +#292= IFCDIRECTION((0.99967834,0.02536184)); +#293= IFCAXIS2PLACEMENT2D(#291,#292); +#294= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#293,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(10.003217666831),#60); +#295= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#294)); +#296= IFCPRODUCTDEFINITIONSHAPE($,$,(#295)); +#297= IFCCARTESIANPOINT((579.99946,28.60327)); +#298= IFCDIRECTION((0.99978348,0.02080849)); +#299= IFCAXIS2PLACEMENT2D(#297,#298); +#300= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#299,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(10.0021656703386),#60); +#301= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#300)); +#302= IFCPRODUCTDEFINITIONSHAPE($,$,(#301)); +#303= IFCCARTESIANPOINT((589.99946,28.8114)); +#304= IFCDIRECTION((0.99979653,0.02017189)); +#305= IFCAXIS2PLACEMENT2D(#303,#304); +#306= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#305,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(10.0020351477887),#60); +#307= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#306)); +#308= IFCPRODUCTDEFINITIONSHAPE($,$,(#307)); +#309= IFCCARTESIANPOINT((599.99946,29.01316)); +#310= IFCDIRECTION((0.99980997,0.01949429)); +#311= IFCAXIS2PLACEMENT2D(#309,#310); +#312= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#311,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(10.0019006793909),#60); +#313= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#312)); +#314= IFCPRODUCTDEFINITIONSHAPE($,$,(#313)); +#315= IFCCARTESIANPOINT((609.99946,29.20814)); +#316= IFCDIRECTION((0.99982368,0.01877769)); +#317= IFCAXIS2PLACEMENT2D(#315,#316); +#318= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#317,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(10.0017634743129),#60); +#319= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#318)); +#320= IFCPRODUCTDEFINITIONSHAPE($,$,(#319)); +#321= IFCCARTESIANPOINT((619.99946,29.39595)); +#322= IFCDIRECTION((0.99983764,0.01801907)); +#323= IFCAXIS2PLACEMENT2D(#321,#322); +#324= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#323,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(10.0016238305787),#60); +#325= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#324)); +#326= IFCPRODUCTDEFINITIONSHAPE($,$,(#325)); +#327= IFCCARTESIANPOINT((629.99946,29.57617)); +#328= IFCDIRECTION((0.99985167,0.01722344)); +#329= IFCAXIS2PLACEMENT2D(#327,#328); +#330= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#329,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(10.0014835653317),#60); +#331= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#330)); +#332= IFCPRODUCTDEFINITIONSHAPE($,$,(#331)); +#333= IFCCARTESIANPOINT((639.99946,29.74843)); +#334= IFCDIRECTION((0.99986571,0.0163878)); +#335= IFCAXIS2PLACEMENT2D(#333,#334); +#336= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#335,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(10.0013430703081),#60); +#337= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#336)); +#338= IFCPRODUCTDEFINITIONSHAPE($,$,(#337)); +#339= IFCCARTESIANPOINT((649.99946,29.91233)); +#340= IFCDIRECTION((0.99987718,0.01567246)); +#341= IFCAXIS2PLACEMENT2D(#339,#340); +#342= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#341,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(7.38556509953458),#60); +#343= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#342)); +#344= IFCPRODUCTDEFINITIONSHAPE($,$,(#343)); +#345= IFCGRADIENTCURVE((#179,#186,#193,#199,#206,#212,#219,#225,#232,#238,#245,#251,#258,#264,#270,#276,#282,#288,#294,#300,#306,#312,#318,#324,#330,#336,#342),.U.,#117,$); +#346= IFCSHAPEREPRESENTATION(#66,'Axis','Curve3D',(#345)); +#347= IFCPRODUCTDEFINITIONSHAPE($,$,(#346)); +#348= IFCSHAPEREPRESENTATION(#66,'Axis','Curve3D',(#345)); +#349= IFCPRODUCTDEFINITIONSHAPE($,$,(#348)); +#350= IFCREFERENT('1rOA0_Hlj4wvgaMcjms$Y1',$,$,$,$,#358,$,.STATION.,$); +#351= IFCRELNESTS('1sGo_$YJD4me8QWpepB0x9',$,$,$,#20,(#350)); +#352= IFCRELPOSITIONS('0LAIHHfBH9phTNLqeDurRB',$,$,$,#20,(#350)); +#353= IFCPROPERTYSET('3sJJbJ_GHEtxzf4$LdFusm',$,'Pset_Stationing',$,(#355)); +#354= IFCRELDEFINESBYPROPERTIES('1wMkSiEC95JeqBq8a1gtPS',$,$,$,(#350),#353); +#355= IFCPROPERTYSINGLEVALUE('Station',$,IFCLENGTHMEASURE(1000.0),$); +#356= IFCPOINTBYDISTANCEEXPRESSION(IFCNONNEGATIVELENGTHMEASURE(0.0),$,$,$,#117); +#357= IFCAXIS2PLACEMENTLINEAR(#356,$,$); +#358= IFCLINEARPLACEMENT(#16,#357,$); +#359= IFCPROPERTYSINGLEVALUE('state',$,IFCIDENTIFIER('proposed'),$); +#360= IFCPROPERTYSET('0gT_0DEtH21ADdZKVgGwbx',$,'landXML_Alignment',$,(#359)); +#361= IFCRELDEFINESBYPROPERTIES('0zFoF1ac9F3BXzX37veXrP',$,$,$,(#20),#360); +ENDSEC; + +END-ISO-10303-21; diff --git a/E1a-ARSE/ALIN02/Dataset/T616AAC0.xml b/E1a-ARSE/ALIN02/Dataset/T616AAC0.xml new file mode 100644 index 0000000..3aacb2f --- /dev/null +++ b/E1a-ARSE/ALIN02/Dataset/T616AAC0.xml @@ -0,0 +1,215 @@ + + + + + + + + + + + + + + + + + 6591370.142470 145685.855172 0.000000 + + + 6591340.497969 145648.915290 0.000000 + + + + + + + + 6591340.497969 145648.915290 0.000000 + + + 6591305.159950 145604.880739 0.000000 + + + 6591282.917242 145587.393864 0.000000 + + + + + + + + 6591282.917242 145587.393864 0.000000 + +
+ 6591168.577963 145732.829517 0.000000 +
+ + 6591154.637666 145548.355486 0.000000 + + + + +
+ + + 6591154.637666 145548.355486 0.000000 + + + 6591134.780206 145549.856071 0.000000 + + + 6591096.103693 145559.177136 0.000000 + + + + + + + + 6591096.103693 145559.177136 0.000000 + + + 6591059.998499 145567.878506 0.000000 + + + 6591041.507035 145569.732915 0.000000 + + + + + + + + 6591041.507035 145569.732915 0.000000 + +
+ 6591021.171001 145366.950073 0.000000 +
+ + 6591015.784448 145570.678864 0.000000 + + + + +
+ + + 6591015.784448 145570.678864 0.000000 + + + 6590973.545180 145569.562095 0.000000 + + + 6590894.049604 145541.922395 0.000000 + + + + + + + + 6590894.049604 145541.922395 0.000000 + + + 6590819.171864 145515.888354 0.000000 + + + 6590780.908730 145505.510693 0.000000 + + + + + + + + 6590780.908730 145505.510693 0.000000 + +
+ 6590557.887706 146327.803598 0.000000 +
+ + 6590778.159323 145504.769933 0.000000 + + + + +
+
+ + + + 1085.000000 15.820000 + + + 1096.731849 15.934268 + + + 1122.514575 16.528493 + + + 1211.210818 18.023878 + + + 1228.995905 18.248635 + + + 1274.252074 19.031260 + + + 1328.182410 20.277378 + + + 1381.796850 22.690072 + + + 1529.999460 27.258400 + + + 1539.999460 27.545080 + + + 1549.999460 27.818000 + + + 1559.999460 28.086320 + + + 1569.999460 28.349570 + + + 1579.999460 28.603270 + + + 1589.999460 28.811400 + + + 1599.999460 29.013160 + + + 1609.999460 29.208140 + + + 1619.999460 29.395950 + + + 1629.999460 29.576170 + + + 1639.999460 29.748430 + + + 1649.999460 29.912330 + + + 1657.384118 30.028080 + + + + + + + +
+
+
diff --git a/E1a-ARSE/ALIN02/Dataset/T616AAC0_profile.pdf b/E1a-ARSE/ALIN02/Dataset/T616AAC0_profile.pdf new file mode 100644 index 0000000..670710a Binary files /dev/null and b/E1a-ARSE/ALIN02/Dataset/T616AAC0_profile.pdf differ diff --git a/E1a-ARSE/ALIN02/Dataset/VerticalAlignmentParameters.csv b/E1a-ARSE/ALIN02/Dataset/VerticalAlignmentParameters.csv new file mode 100644 index 0000000..d5cea53 --- /dev/null +++ b/E1a-ARSE/ALIN02/Dataset/VerticalAlignmentParameters.csv @@ -0,0 +1,28 @@ +Name;Type;StartDistAlong;HorizontalLength;StartHeight;StartGradient;EndGradient;Radius;Type +V1;IfcAlignmentVerticalSegment;85;1,41860494999992;15,82;0,00973998216308436;0,00973998216308436;0;CONSTANTGRADIENT +V2;IfcAlignmentVerticalSegment;86,4186049499999;20,6264881;15,8338171869095;0,00973998216308436;0,0230474077876794;1549,99837548427;PARABOLICARC +V3;IfcAlignmentVerticalSegment;107,04509375;30,9389625;16,1719615573674;0,0230474077876794;0,0168596205365767;-5000,00424133629;PARABOLICARC +V4;IfcAlignmentVerticalSegment;137,98405625;66,8933770000001;16,7893025837727;0,0168596205365767;0,0168596205365767;0;CONSTANTGRADIENT +V5;IfcAlignmentVerticalSegment;204,87743325;12,6667695;17,9170995364029;0,0168596205365767;0,0126373854679485;-3000,01522750735;PARABOLICARC +V6;IfcAlignmentVerticalSegment;217,54420275;4,4678965999999;18,1039154244026;0,0126373854679485;0,0126373854679485;0;CONSTANTGRADIENT +V7;IfcAlignmentVerticalSegment;222,01209935;13,9676113;18,1603779559677;0,0126373854679485;0,0172932224996773;3000,02152240574;PARABOLICARC +V8;IfcAlignmentVerticalSegment;235,97971065;29,55312205;18,369407505;0,0172932224996773;0,0172932224996773;0;CONSTANTGRADIENT +V9;IfcAlignmentVerticalSegment;265,5328327;17,4384826;18,8804762201707;0,0172932224996773;0,0231060677982796;2999,99083137358;PARABOLICARC +V10;IfcAlignmentVerticalSegment;282,9713153;12,9163156;19,2327273806274;0,0231060677982796;0,0231060677982796;0;CONSTANTGRADIENT +V11;IfcAlignmentVerticalSegment;295,8876309;64,5895582;19,5311726445849;0,0231060677982796;0,0450008244047686;2950,00119712944;PARABOLICARC +V12;IfcAlignmentVerticalSegment;360,4771891;0,0557456000001366;21,7306696834699;0,0450008244047686;0,0450008244047686;0;CONSTANTGRADIENT +V13;IfcAlignmentVerticalSegment;360,5329347;42,5278306;21,7331782814268;0,0450008244047686;0,0308248822338554;-3000,00028832373;PARABOLICARC +V14;IfcAlignmentVerticalSegment;403,0607653;126,9386947;23,3455296849532;0,0308248822338554;0,0308248822338554;0;CONSTANTGRADIENT +V15;IfcAlignmentVerticalSegment;529,99946;10;27,2584;0,0286679999999997;0,0286679999999997;0;CONSTANTGRADIENT +V16;IfcAlignmentVerticalSegment;539,99946;10;27,54508;0,0272920000000003;0,0272920000000003;0;CONSTANTGRADIENT +V17;IfcAlignmentVerticalSegment;549,99946;10;27,818;0,0268319999999999;0,0268319999999999;0;CONSTANTGRADIENT +V18;IfcAlignmentVerticalSegment;559,99946;10;28,08632;0,0263249999999999;0,0263249999999999;0;CONSTANTGRADIENT +V19;IfcAlignmentVerticalSegment;569,99946;10;28,34957;0,0253699999999998;0,0253699999999998;0;CONSTANTGRADIENT +V20;IfcAlignmentVerticalSegment;579,99946;10;28,60327;0,0208130000000001;0,0208130000000001;0;CONSTANTGRADIENT +V21;IfcAlignmentVerticalSegment;589,99946;10;28,8114;0,020176;0,020176;0;CONSTANTGRADIENT +V22;IfcAlignmentVerticalSegment;599,99946;10;29,01316;0,0194980000000001;0,0194980000000001;0;CONSTANTGRADIENT +V23;IfcAlignmentVerticalSegment;609,99946;10;29,20814;0,0187809999999999;0,0187809999999999;0;CONSTANTGRADIENT +V24;IfcAlignmentVerticalSegment;619,99946;10;29,39595;0,0180220000000002;0,0180220000000002;0;CONSTANTGRADIENT +V25;IfcAlignmentVerticalSegment;629,99946;10;29,57617;0,0172259999999998;0,0172259999999998;0;CONSTANTGRADIENT +V26;IfcAlignmentVerticalSegment;639,99946;10;29,74843;0,0163900000000002;0,0163900000000002;0;CONSTANTGRADIENT +V27;IfcAlignmentVerticalSegment;649,99946;7,38465799999994;29,91233;0,0156743887123817;0,0156743887123817;0;CONSTANTGRADIENT diff --git a/E1a-ARSE/ALIN02/README.md b/E1a-ARSE/ALIN02/README.md new file mode 100644 index 0000000..0b98573 --- /dev/null +++ b/E1a-ARSE/ALIN02/README.md @@ -0,0 +1,206 @@ +# Test Instruction + +| Documentation Code | Title | Exchange Code | Test Code | Author | Data Owner | Version | Date | +| --------------------- | ------------------------------- | ------------- | --------- | ------------- | ---------- | ------- | ---------- | +| IFC4.3AbRV_E1a_ALIN02 | Alignment Infrastructure Curves | E1a | ALIN02 | Lars Wikström | TRV | 1.0 | 07.01.2022 | + + +## Summary (Intent) + +With these instructions the infrastructure (e.g. Road) alignment exchange is established. + +| Info | | +| ---------------------------- | ------------------------------------- | +| Number of alignment(s) | 1 | +| Properties of segments | no | +| Horizontal layout | Straight Line, Circular Arc, Clothoid | +| Vertical layout | Straight Line, Parabolic Arc | +| Geometric representation | No | +| IFC reference file available | Yes | + +- Refer to [Test Case Imports](#Test-Case-Imports) to know the prerequisites for the present test. + +- The [Expected Results](#Expected-Results) section lists the material that will be used to assess the fulfilment of capabilities. + +- :zap: This is a test-driven process: refer to the [Validation Criteria](#Validation-Criteria) to understand what is required by the test :zap: + +## Itemised Roots +The Test instruction addresses the import and export of the following IFC Entities & Concept Templates: + +
IFC Entities +These entities represent a test-specific subset of the wider AbRV_Ex exchange and the overall AbRV MVD. **The scope of the test shall not be used as a definitive scope of the exchange, or of the entire MVD.** + + + +- Model setup + - *IfcProject* + - *IfcRepresentationContext* + - *IfcMapConversion* + - *IfcProjectedCRS* + - *IfcUnitAssignment* +- Spatial structure + - *IfcSite* + - *IfcRoad* +- Alignment + + - *IfcAlignment* + - *IfcAlignmentHorizontal* + - *IfcAlignmentVertical* + - *IfcAlignmentSegment* + - *IfcAlignmentHorizontalSegment* + - *IfcAlignmentVerticalSegment* + +
+ +
Concept Templates + + +These concept templates represent a test-specific subset of the wider AbRV_Ex exchange and the overall AbRV MVD, that must be correctly exported to meet the validation criteria. **The scope of the test shall not be used as a definitive scope of the exchange, or of the entire MVD.** + +- Project Context + - *Project Units* + - *Project Representation Context* + - *Project Global Positioning* +- Object Composition + - *Alignment Decomposition* + - *Spatial Decomposition* +- Object Connectivity + - *Spatial Containment* + +
+ +## Model Dataset + +This test case utilises the dataset collected in the Dataset folder and summarised in the table below. **For more details on each item see [Dataset description](Dataset/README.md).** + +| Filename | Description | +| ------------------------------------------------------------ | --------------------------------------------- | +| [HorizontalAlignmentParameters](Dataset/HorizontalAlignmentParameters.csv) | Parameters for the horizontal segments as csv | +| [VerticalAlignmentParameters](Dataset/VerticalAlignmentParameters.csv) | Parameters for the vertical segments as csv | +| [LandXML](Dataset/T616AAC0.ifc) | LandXML-file representing the alignment | + +## Test Case Imports + +Test instructions are defined with a modular approach to reduce repetition of validation criteria and test content, and improve vendors ability to solve issues and bugs. therefore this test instruction *imports/reuses* the following Test instructions and entities with the relevant associated validation criteria. + +No test cases are imported for this test case. All necessary data and criteria are included. + +## Expected Results + +For certification of capabilities the only source will be: + +:construction: under construction :construction: + +- n. 1 IFC file containing the information as requested. The file shall be named using the following syntax: `MVDCode`-`ExchangeCode`-`TestCode`-`SoftwareVendor`.`ifc` (Example: `IFC4.3_AbRV-E2b-ASTPC-AmazingSoft.ifc`) + +Considering the aim of this test, other **optional** results, not subject to the bSI certification process, yet usefull to illustrate test results are: +- Screen-shot of a planar view and a "long section" similar to the provided examples +- CSV export of the horizontal and vertical alignment segment parameters + +--- + +## Validation criteria +## Validation criteria + +:zap: For this test case to be considered passed **all capabilities listed in this section**, and **the ones of pre-required tests** shall be verified, with no exception. :zap: + +### General + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | ------------------------------------------------------------ | ------------------------------------------------------------ | -------------------------- | ---------------------- | +| GENE_00 | All validation criteria of precondition's tests shall be verified | | na | na | +| GENE_01 | All requested entities (and attributes) exist in file | As per Entities Table. See [Dataset description](Dataset/README.md) | na | na | + +### Road alignment + +**Acceptance criteria**: For the **Railway alignment (without cant)** capability, the validation procedure must verify that **all** the following validation criteria are satisfied. + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | -------------------------------------------------------- | ---------------------- | -------------------------- | ---------------------- | +| SITE_00 | All IfcAlignment shall always be contained in an IfcSite | | | Spatial Containment | +| ALIG_00 | Alignment layout structure is verified | See steps | | Alignment Layout | +| ALIG_01 | Number of alignments contained in file | [1] | | | +| ALIG_02 | Parameters of alignment segments are verified | As per Alignment Table | | | + +
ALIG_00 steps + + + + +| **STEP ID** | **STEP** | +| ----------- | ------------------------------------------------------------ | +| ALIG_00.1 | Each IfcAlignment must nest exactly 1 IfcAlignmentHorizontal | +| ALIG_00.2 | Each IfcAlignment must nest at most 1 IfcAlignmentVertical | +| ALIG_00.3 | Each IfcAlignment must nest exactly 1 IfcAlignmentVertical | +| ALIG_00.6 | Each IfcAlignmentHorizontal must be nested only by 1 IfcAlignment | +| ALIG_00.7 | Each IfcAlignmentVertical must be nested only by 1 IfcAlignment | +| ALIG_00.9 | Each IfcAlignment must nest only the following entities: IfcAlignmentHorizontal, IfcAlignmentVertical | +| ALIG_00.10 | Each IfcAlignmentHorizontal nests a list of IfcAlignmentSegment, each of which has DesignParameters typed as IfcAlignmentHorizontalSegment | +| ALIG_00.11 | Each IfcAlignmentVertical nests a list of IfcAlignmentSegment, each of which has DesignParameters typed as IfcAlignmentVerticalSegment | + +
+ +### Spatial (De)Composition + + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | --------------------------------- | ------------------------------------------------------------ | -------------------------- | ---------------------- | +| SDEC_01 | Spatial decomposition is verified | As per Spatial (De)Composition Table. See [Dataset description](Dataset/README.md) | na | Spatial Decomposition | + +> **Acceptance criteria**: For the **Spatial decomposition** capability, the validation procedure must verify that a Parent Element of the requested type aggregates (via `IfcRelAggregates`) exactly a given number of Child Elements of the requested type, no more and no less. + +
SDEC_01 details: Spatial decomposition is verified + + + + +> - Given a set of elements taken from the [Spatial (De)Composition Table](Dataset/README.md#Dataset/README.md#spatial-decomposition-table) +> - Then the Parent Element, and optionally the Parent Element Type, exists +> - And the Parent Element must aggregate at least a number within [MinSize..MaxSize] of the requested Child Element + +
+ +### Spatial Containment + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | ------------------------------- | -------------------------------- | -------------------------- | ---------------------- | +| SCON_01 | Spatial containment is verified | As per Spatial Containment Table | na | Spatial Containment | + +> **Acceptance criteria**: For the **Spatial containment** capability, the validation procedure must verify that a Spatial Element of the requested type contains (via `IfcRelContainedInSpatialStructure`) exactly a given number of Elements of the requested type, no more and no less. + +
SCON_01 details: Spatial containment is verified + + + + +> - Given a set of elements taken from the [Spatial Containment Table](Dataset/README.md#Spatial-Containment-Table) +> - Then the Spatial Element, and optionally the Spatial Element Type, exists +> - And the Spatial Element must contain at least a number within [MinSize..MaxSize] of the requested Element + +
+ +### Project Setup + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | ----------------------------------------------- | -------------------- | -------------------------- | -------------------------- | +| ORIG_01 | Origin of Coordinate System is set as requested | [(0., 0., 0.)] | | Project Global Positioning | +| ORIG_02 | True north is set as requested | [(0., 1., 0.)] | | Project Global Positioning | +| DIST_01 | Unit of measure for all distances | [meter] | | Project Units | +| ANGL_01 | Unit of measure all angles | [radian] | | Project Units | +| DIST_02 | Required precision for distances | [0,0001] | all alignment segments | na | +| ANGL_02 | Required precision for angles and slope | [0,000001] | | na | + +### Project global positioning + +| Element | Attribute | Value | Comment | +| ---------------- | ---------------- | --------- | ------- | +| IfcMapConversion | Eastings | 0 | | +| IfcMapConversion | Northings | 0 | | +| IfcMapConversion | OrthogonalHeight | 0 | | +| IfcMapConversion | XAxisAbscissa | 1 | | +| IfcMapConversion | XAxisOrdinate | 0 | | +| IfcMapConversion | Scale | 1 | | +| IfcProjectedCRS | Name | EPSG:3011 | | +| IfcProjectedCRS | GeodeticDatum | EPSG:6619 | | +| IfcProjectedCRS | VerticalDatum | EPSG:5615 | | + diff --git a/E1a-ARSE/ALIN03/Dataset/HorizontalAlignmentParameters.csv b/E1a-ARSE/ALIN03/Dataset/HorizontalAlignmentParameters.csv new file mode 100644 index 0000000..edcdc81 --- /dev/null +++ b/E1a-ARSE/ALIN03/Dataset/HorizontalAlignmentParameters.csv @@ -0,0 +1,8 @@ +Name;Type;StartPointX;StartPointY;StartDirection;StartRadius;EndRadius;Length;Type +H1;IfcAlignmentHorizontalSegment;276,867419000715;935,549266999587;0,00172462248684613;0;0;229,405681;LINE +H2;IfcAlignmentHorizontalSegment;506,272759001702;935,944904999807;0,00172462964706543;-110;-110;15,594208;CIRCULARARC +H3;IfcAlignmentHorizontalSegment;521,816665999591;934,868200000376;6,14314439461041;0;0;91,725737;LINE +H4;IfcAlignmentHorizontalSegment;612,644434001297;922,064788999967;6,14314439896281;-110;-110;120,80482;CIRCULARARC +H5;IfcAlignmentHorizontalSegment;701,264387000352;849,049537000246;5,04491873079937;0;0;25,538554;LINE +H6;IfcAlignmentHorizontalSegment;709,601071000099;824,909996000119;5,04491876114541;110;110;49,633636;CIRCULARARC +H7;IfcAlignmentHorizontalSegment;735,664969999343;783,164849000052;5,49613363003069;0;0;83,739856;LINE diff --git a/E1a-ARSE/ALIN03/Dataset/README.md b/E1a-ARSE/ALIN03/Dataset/README.md new file mode 100644 index 0000000..0abebbf --- /dev/null +++ b/E1a-ARSE/ALIN03/Dataset/README.md @@ -0,0 +1,99 @@ +## Model Dataset + +This test case utilizes the following dataset. + +- One alignment layout including geometric representation +- The alignment is composed of one horizontal alignment layout and one vertical alignment layout +- The horizontal layout contains lines and circular arcs +- The vertical layout contains lines and circular arcs + +The Following occurrence variations need to be checked and certified in relation to the targeted entities and concept templates: + +- IfcAlignmentHorizontalSegment - *The test shall include linear and circular arc segments* +- IfcAlignmentVerticalSegment - *The test shall include linear and circular arc segments* +- Alignment Decomposition: + - The horizontal alignment shall be decomposed with element sequences containing lines and both clockwise and counter-clockwise turns + - The vertical alignment shall be decomposed with element sequences containing linear and circular arc segments including both clockwise and counter-clockwise turns + +| Filename | Description | +| ------------------------------------------------------------ | --------------------------------------------- | +| [HorizontalAlignmentParameters](./HorizontalAlignmentParameters.csv) | Parameters for the horizontal segments as csv | +| [VerticalAlignmentParameters](./VerticalAlignmentParameters.csv) | Parameters for the vertical segments as csv | +| [LandXML](./TOI-M14334-0000A.xml) | LandXML-file representing the alignment | + +## Dataset specification + +### Entities table + +| **Element** | **Attribute** | **Value** | **Notes** | +| ---------------------- | ------------- | ----------- | --------- | +| IfcProject | Name | Alin03 | | +| IfcSite | Name | Alin03.Site | | +| IfcAlignment | Name | A1 | | +| IfcRoad | Name | Alin03.Road | | +| IfcAlignmentHorizontal | Name | AH1 | | +| IfcAlignmentVertical | Name | AV1 | | + +### Horizontal segments table + +Horizontal segments nested into AH1 in the following order: + +| Entity | PredefinedType | Name | Start Point X | Start Point Y | Start Direction | Start Radius Of Curvature | End Radius Of Curvature | Segment Length | +| ----------------------------- | -------------- | ---- | ------------- | ------------- | --------------- | ------------------------- | ----------------------- | -------------- | +| IfcAlignmentHorizontalSegment | LINE | H1 | 276,867419 | 935,549267 | 0,001724622 | 0 | 0 | 229,405681 | +| IfcAlignmentHorizontalSegment | CIRCULARARC | H2 | 506,272759 | 935,944905 | 0,00172463 | -110 | -110 | 15,594208 | +| IfcAlignmentHorizontalSegment | LINE | H3 | 521,816666 | 934,8682 | 6,143144395 | 0 | 0 | 91,725737 | +| IfcAlignmentHorizontalSegment | CIRCULARARC | H4 | 612,644434 | 922,064789 | 6,143144399 | -110 | -110 | 120,80482 | +| IfcAlignmentHorizontalSegment | LINE | H5 | 701,264387 | 849,049537 | 5,044918731 | 0 | 0 | 25,538554 | +| IfcAlignmentHorizontalSegment | CIRCULARARC | H6 | 709,601071 | 824,909996 | 5,044918761 | 110 | 110 | 49,633636 | +| IfcAlignmentHorizontalSegment | LINE | H7 | 735,66497 | 783,164849 | 5,49613363 | 0 | 0 | 83,739856 | + +**NOTE**: + +- Please note the Project Global Positioning and unit parameters specified in the main Readme file + +### Vertical segments table + +Vertical segments nested into AV1 in the following order: + +| Entity | PredefinedType | Name | Type | Start Dist Along | Horizontal Length | Start Height | Start Gradient | End Gradient | RadiusOfCurvature | +| --------------------------- | ---------------- | ---- | --------------------------- | ---------------- | ----------------- | ------------ | -------------- | ------------ | ----------------- | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V1 | IfcAlignmentVerticalSegment | 135,557 | 10,84246946 | 125,687614 | 0,03416131 | 0,03416131 | 0 | +| IfcAlignmentVerticalSegment | CIRCULARARC | V2 | IfcAlignmentVerticalSegment | 146,3994695 | 18,11228261 | 126,058007 | 0,03416131 | 0,020212997 | -1300 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V3 | IfcAlignmentVerticalSegment | 164,5117521 | 40,83305808 | 126,5504044 | 0,020212997 | 0,020212997 | 0 | +| IfcAlignmentVerticalSegment | CIRCULARARC | V4 | IfcAlignmentVerticalSegment | 205,3448102 | 39,03368133 | 127,3757629 | 0,020212997 | -0,009817512 | -1300 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V5 | IfcAlignmentVerticalSegment | 244,3784915 | 50,17607352 | 127,5786042 | -0,009817512 | -0,009817512 | 0 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V6 | IfcAlignmentVerticalSegment | 294,554565 | 11,522986 | 127,086 | 0 | 0 | 0 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V7 | IfcAlignmentVerticalSegment | 306,077551 | 192,5126892 | 127,086 | -0,003529811 | -0,003529811 | 0 | +| IfcAlignmentVerticalSegment | CIRCULARARC | V8 | IfcAlignmentVerticalSegment | 498,5902402 | 15,27528964 | 126,4064666 | -0,003529811 | -0,006584989 | -5000 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V9 | IfcAlignmentVerticalSegment | 513,8655298 | 78,35926585 | 126,3292136 | -0,006584989 | -0,006584989 | 0 | +| IfcAlignmentVerticalSegment | CIRCULARARC | V10 | IfcAlignmentVerticalSegment | 592,2247957 | 10,41034226 | 125,8132186 | -0,006584989 | 0,00142311 | 1300 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V11 | IfcAlignmentVerticalSegment | 602,6351379 | 13,80735508 | 125,7863506 | 0,00142311 | 0,00142311 | 0 | + +### Spatial (De)Composition table + +| **Parent Element** | **Parent Element Type** | **Parent Element Name** | **MinSize** | **MaxSize** | **Child Element** | **Child Element Type** | **Child Element Name** | +| ------------------ | ----------------------- | ----------------------- | ----------- | ----------- | ----------------- | ---------------------- | ---------------------- | +| IfcProject | | Alin06 | 1 | 1 | IfcSite | | Alin03.Site | +| IfcSite | | Alin06.Site | 1 | 1 | IfcRoad | | Allin03.Road | + +### Spatial Containment table + +| **Spatial Element** | **Spatial Element Type** | **Spatial Element Name** | **MinSize** | **MaxSize** | **Element** | **Element Type** | **Element Name** | +| ------------------- | ------------------------ | ------------------------ | ----------- | ----------- | ------------ | ---------------- | ---------------- | +| IfcSite | | Alin03.Site | 1 | 1 | IfcAlignment | | A1 | + +### Product Geometric Representation table + +| **Product** | **Product Type** | **Product Name** | **Representation Identifier** | **Representation Type** | **Items** | +| ---------------------- | ---------------- | ---------------- | ----------------------------- | ----------------------- | ------------- | +| IfcAlignment | na | A1 | Axis | Curve3D | 1 IfcPolyline | +| IfcAlignmentHorizontal | na | AH1 | Axis | Curve2D | 1 IfcPolyline | +| IfcAlignmentVertical | na | AV1 | Axis | Curve2D | 1 IfcPolyline | + +### Product Placement table + +| **Product** | **Product Type** | **Product Name** | **Object Placement** | Relative Placement Product | Relative Placement Product Type | Relative Placement Product Name | +| ------------ | ---------------- | ---------------- | -------------------- | -------------------------- | ------------------------------- | ------------------------------- | +| IfcAlignment | | A1 | IfcLocalPlacement | IfcSite | na | Alin03.Site | + diff --git a/E1a-ARSE/ALIN03/Dataset/TOI-M14334-0000A.XML b/E1a-ARSE/ALIN03/Dataset/TOI-M14334-0000A.XML new file mode 100644 index 0000000..f63a694 --- /dev/null +++ b/E1a-ARSE/ALIN03/Dataset/TOI-M14334-0000A.XML @@ -0,0 +1,70 @@ + + + + + + + + + + + + + + + + + + + + + + + + + 6876935.549267 24525276.867419 0.000000 + 6876935.944905 24525506.272759 0.000000 + + + 6876935.944905 24525506.272759 + 6876934.868200 24525521.816666 +
6876825.945068 24525506.462467
+
+ + 6876934.868200 24525521.816666 0.000000 + 6876922.064789 24525612.644434 0.000000 + + + 6876922.064789 24525612.644434 + 6876849.049537 24525701.264387 +
6876813.141658 24525597.290235
+
+ + 6876849.049537 24525701.264387 0.000000 + 6876824.909996 24525709.601071 0.000000 + + + 6876824.909996 24525709.601071 + 6876783.164849 24525735.664970 +
6876860.817875 24525813.575223
+
+ + 6876783.164849 24525735.664970 0.000000 + 6876723.854000 24525794.780000 0.000000 + +
+ + + 135.557000 125.687614 + 155.453895 126.367318 + 224.860128 127.770226 + 294.554565 127.086000 + 306.077551 127.086000 + 506.227944 126.379507 + 597.429913 125.778943 + 616.442493 125.806000 + + +
+
+
diff --git a/E1a-ARSE/ALIN03/Dataset/TOI-M14334-0000A.ifc b/E1a-ARSE/ALIN03/Dataset/TOI-M14334-0000A.ifc new file mode 100644 index 0000000..ce4b25c --- /dev/null +++ b/E1a-ARSE/ALIN03/Dataset/TOI-M14334-0000A.ifc @@ -0,0 +1,220 @@ +ISO-10303-21; +HEADER; +FILE_DESCRIPTION(('ViewDefinition [Ifc4NotAssigned]'),'2;1'); +FILE_NAME( +/* name */ 'C:\\Users\\lars\\Documents\\Projekt\\IFCInfra\\MVD-Infra-Test-Instructions\\E1a-ARSE\\ALIN06\\Dataset\\TOI-M14334-0000A.ifc', +/* time_stamp */ '2022-02-18T13:46:24', +/* author */ ('lars'), +/* organization */ ('Unknown'), +/* preprocessor_version */ 'ggIfcConverter v0.0.5.0 by Geometry Gym Pty Ltd built 2022-02-10T07:15:39', +/* originating_system */ 'ggIFCConverter v0.0.5.0 - Converter by Geometry Gym Pty Ltd', +/* authorization */ 'None'); + +FILE_SCHEMA (('IFC4X3_RC4')); +ENDSEC; + +DATA; +#1= IFCCARTESIANPOINT((0.0,0.0,0.0)); +#2= IFCDIRECTION((1.0,0.0,0.0)); +#3= IFCDIRECTION((0.0,1.0,0.0)); +#4= IFCDIRECTION((0.0,0.0,1.0)); +#5= IFCAXIS2PLACEMENT3D(#1,$,$); +#6= IFCCARTESIANPOINT((0.0,0.0)); +#7= IFCAXIS2PLACEMENT2D(#6,$); +#8= IFCSIUNIT(*,.LENGTHUNIT.,$,.METRE.); +#9= IFCSIUNIT(*,.AREAUNIT.,$,.SQUARE_METRE.); +#10= IFCSIUNIT(*,.VOLUMEUNIT.,$,.CUBIC_METRE.); +#11= IFCSIUNIT(*,.PLANEANGLEUNIT.,$,.RADIAN.); +#12= IFCUNITASSIGNMENT((#8,#11)); +#13= IFCPROJECT('1OEWBMD50yGJCMfbHiMaxa',$,'Toivolan_tasoristeyssuunnitelma','Toivolan_tasoristeyssuunnitelma',$,$,$,(#56),#12); +#14= IFCCARTESIANPOINT((0.0,0.0,0.0)); +#15= IFCAXIS2PLACEMENT3D(#14,$,$); +#16= IFCLOCALPLACEMENT($,#15); +#17= IFCSITE('0fC4Q0ghjshYWRNlyJlyL6',$,'Toivolan_tasoristeyssuunnitelma',$,$,#16,$,$,$,$,$,$,$,$); +#18= IFCRELAGGREGATES('3nli4xTQXW59Tz5QkTJN3h',$,$,$,#13,(#17)); +#19= IFCLOCALPLACEMENT(#16,#5); +#20= IFCALIGNMENT('1MZ$_ugNawDiLW6OHixSD9',$,'Sammalniementie_u',$,$,#19,#197,$); +#21= IFCRELCONTAINEDINSPATIALSTRUCTURE('2d7LGjg5j8deye8rBGu_pT',$,'Site','Site Container for Elements',(#20),#17); +#22= IFCCARTESIANPOINT((0.0,0.0,0.0)); +#23= IFCAXIS2PLACEMENT3D(#22,#4,#2); +#25= IFCALIGNMENTHORIZONTAL('1ck1ztc5NTxKcmM$6H$rwZ',$,$,$,$,#19,#98); +#26= IFCRELNESTS('2Qr6YhEtzBeeELe82FHdbs',$,$,$,#20,(#25,#110)); +#27= IFCCARTESIANPOINT((24525276.867419,6876935.549267)); +#28= IFCALIGNMENTHORIZONTALSEGMENT($,$,#27,0.00172462248684613,0.0,0.0,229.405681,$,.LINE.); +#29= IFCALIGNMENTSEGMENT('3hZ8l87U1Q8BI_$y_2nj$z',$,$,$,$,#19,#62,#28); +#30= IFCRELNESTS('3i$XYZYN91owg1IkJG3pGm',$,$,$,#25,(#29,#33,#36,#39,#42,#45,#48)); +#31= IFCCARTESIANPOINT((24525506.272759,6876935.944905)); +#32= IFCALIGNMENTHORIZONTALSEGMENT($,$,#31,0.00172462964706543,-110.0,-110.0,15.594208,$,.CIRCULARARC.); +#33= IFCALIGNMENTSEGMENT('3tOKSRAS5$p_$XokyCfvbo',$,$,$,$,#19,#68,#32); +#34= IFCCARTESIANPOINT((24525521.816666,6876934.8682)); +#35= IFCALIGNMENTHORIZONTALSEGMENT($,$,#34,6.14314439461041,0.0,0.0,91.725737,$,.LINE.); +#36= IFCALIGNMENTSEGMENT('3MWD2DeWHQ8QevjrZg99YR',$,$,$,$,#19,#73,#35); +#37= IFCCARTESIANPOINT((24525612.644434,6876922.064789)); +#38= IFCALIGNMENTHORIZONTALSEGMENT($,$,#37,6.14314439896281,-110.0,-110.0,120.80482,$,.CIRCULARARC.); +#39= IFCALIGNMENTSEGMENT('260dLIlSB8SrmmNwWvQa3d',$,$,$,$,#19,#79,#38); +#40= IFCCARTESIANPOINT((24525701.264387,6876849.049537)); +#41= IFCALIGNMENTHORIZONTALSEGMENT($,$,#40,5.04491873079937,0.0,0.0,25.538554,$,.LINE.); +#42= IFCALIGNMENTSEGMENT('09$rVBiaRE6xbncNrNsbYP',$,$,$,$,#19,#84,#41); +#43= IFCCARTESIANPOINT((24525709.601071,6876824.909996)); +#44= IFCALIGNMENTHORIZONTALSEGMENT($,$,#43,5.04491876114541,110.0,110.0,49.633636,$,.CIRCULARARC.); +#45= IFCALIGNMENTSEGMENT('0gRR1YO7HbZ_XxQmRDcf3R',$,$,$,$,#19,#90,#44); +#46= IFCCARTESIANPOINT((24525735.66497,6876783.164849)); +#47= IFCALIGNMENTHORIZONTALSEGMENT($,$,#46,5.49613363003069,0.0,0.0,83.739856,$,.LINE.); +#48= IFCALIGNMENTSEGMENT('3VXcUYLknohuCoYzWkCCrX',$,$,$,$,#19,#95,#47); +#49= IFCAXIS2PLACEMENT2D(#27,#50); +#50= IFCDIRECTION((0.99999851,0.00172462)); +#51= IFCCARTESIANPOINT((0.0,0.0)); +#52= IFCDIRECTION((1.0,0.0)); +#53= IFCVECTOR(#52,1.0); +#54= IFCLINE(#51,#53); +#55= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#49,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(229.405681),#54); +#56= IFCGEOMETRICREPRESENTATIONCONTEXT($,'Model',3,0.00001,#58,#59); +#57= IFCCARTESIANPOINT((0.0,0.0,0.0)); +#58= IFCAXIS2PLACEMENT3D(#57,$,$); +#59= IFCDIRECTION((0.0,1.0)); +#60= IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Axis','Model',*,*,*,*,#56,$,.GRAPH_VIEW.,$); +#61= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#55)); +#62= IFCPRODUCTDEFINITIONSHAPE($,$,(#61)); +#63= IFCAXIS2PLACEMENT2D(#31,#64); +#64= IFCDIRECTION((0.99999851,0.00172463)); +#65= IFCCIRCLE(#7,110.0); +#66= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#63,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(-0.141765527272727),#65); +#67= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#66)); +#68= IFCPRODUCTDEFINITIONSHAPE($,$,(#67)); +#69= IFCAXIS2PLACEMENT2D(#34,#70); +#70= IFCDIRECTION((0.99021029,-0.13958363)); +#71= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#69,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(91.725737),#54); +#72= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#71)); +#73= IFCPRODUCTDEFINITIONSHAPE($,$,(#72)); +#74= IFCAXIS2PLACEMENT2D(#37,#75); +#75= IFCDIRECTION((0.99021029,-0.13958362)); +#76= IFCCIRCLE(#7,110.0); +#77= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#74,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(-1.09822563636364),#76); +#78= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#77)); +#79= IFCPRODUCTDEFINITIONSHAPE($,$,(#78)); +#80= IFCAXIS2PLACEMENT2D(#40,#81); +#81= IFCDIRECTION((0.32643524,-0.94521957)); +#82= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#80,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(25.538554),#54); +#83= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#82)); +#84= IFCPRODUCTDEFINITIONSHAPE($,$,(#83)); +#85= IFCAXIS2PLACEMENT2D(#43,#86); +#86= IFCDIRECTION((0.32643527,-0.94521956)); +#87= IFCCIRCLE(#7,110.0); +#88= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#85,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(49.633636),#87); +#89= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#88)); +#90= IFCPRODUCTDEFINITIONSHAPE($,$,(#89)); +#91= IFCAXIS2PLACEMENT2D(#46,#92); +#92= IFCDIRECTION((0.7059366,-0.70827502)); +#93= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#91,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(83.739856),#54); +#94= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#93)); +#95= IFCPRODUCTDEFINITIONSHAPE($,$,(#94)); +#96= IFCCOMPOSITECURVE((#55,#66,#71,#77,#82,#88,#93),.U.); +#97= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#96)); +#98= IFCPRODUCTDEFINITIONSHAPE($,$,(#97)); +#99= IFCALIGNMENTVERTICALSEGMENT($,$,135.557,10.8424694551669,125.687614,0.0341613100938614,0.0341613100938614,$,.CONSTANTGRADIENT.); +#100= IFCALIGNMENTVERTICALSEGMENT($,$,146.399469455167,18.112282610652,126.05800696124,0.0341613100938614,0.0202129972966548,-1300.0,.CIRCULARARC.); +#101= IFCALIGNMENTVERTICALSEGMENT($,$,164.511752065819,40.8330580844944,126.550404440385,0.0202129972966548,0.0202129972966548,$,.CONSTANTGRADIENT.); +#102= IFCALIGNMENTVERTICALSEGMENT($,$,205.344810150313,39.033681330639,127.37576293306,0.0202129972966548,-0.00981751240776929,-1300.0,.CIRCULARARC.); +#103= IFCALIGNMENTVERTICALSEGMENT($,$,244.378491480952,50.1760735190479,127.578604224343,-0.00981751240776929,-0.00981751240776929,$,.CONSTANTGRADIENT.); +#104= IFCALIGNMENTVERTICALSEGMENT($,$,294.554565,11.522986,127.086,0.0,0.0,$,.CONSTANTGRADIENT.); +#105= IFCALIGNMENTVERTICALSEGMENT($,$,306.077551,192.512689171019,127.086,-0.00352981070589252,-0.00352981070589252,$,.CONSTANTGRADIENT.); +#106= IFCALIGNMENTVERTICALSEGMENT($,$,498.590240171019,15.2752896431409,126.406466648677,-0.00352981070589252,-0.0065849894096037,-5000.0,.CIRCULARARC.); +#107= IFCALIGNMENTVERTICALSEGMENT($,$,513.865529814159,78.3592658459091,126.329213578221,-0.0065849894096037,-0.0065849894096037,$,.CONSTANTGRADIENT.); +#108= IFCALIGNMENTVERTICALSEGMENT($,$,592.224795660069,10.4103422623946,125.813218642574,-0.0065849894096037,0.00142311038270447,1300.0,.CIRCULARARC.); +#109= IFCALIGNMENTVERTICALSEGMENT($,$,602.635137922463,13.8073550775368,125.786350609637,0.00142311038228749,0.00142311038228749,$,.CONSTANTGRADIENT.); +#110= IFCALIGNMENTVERTICAL('0ddJLdQIDCxQPle3A8jrLs',$,'Sammalniementie_u',$,$,#19,#195); +#111= IFCALIGNMENTSEGMENT('2gA7djODHC_xXIgPPzoY82',$,$,$,$,#19,#128,#99); +#112= IFCRELNESTS('1DZ_kkZob34vJO5FhOR8v0',$,$,$,#110,(#111,#113,#114,#115,#116,#117,#118,#119,#120,#121,#122)); +#113= IFCALIGNMENTSEGMENT('3VN7AVMVzA_hvweeeU0O3k',$,$,$,$,#19,#135,#100); +#114= IFCALIGNMENTSEGMENT('0Kp4hED2zAPfMpvgzW7ch1',$,$,$,$,#19,#141,#101); +#115= IFCALIGNMENTSEGMENT('2FkuepSxf5hwJ23i51BHsZ',$,$,$,$,#19,#148,#102); +#116= IFCALIGNMENTSEGMENT('1XPAkBHBLF$9aeTcrcNcTy',$,$,$,$,#19,#154,#103); +#117= IFCALIGNMENTSEGMENT('0R2$FQBtr3AOpdTIkDMGs6',$,$,$,$,#19,#160,#104); +#118= IFCALIGNMENTSEGMENT('2C21qLVkvBj8P$f2FUURr0',$,$,$,$,#19,#166,#105); +#119= IFCALIGNMENTSEGMENT('0kI5Vw8vH0I9llwt5OikKa',$,$,$,$,#19,#173,#106); +#120= IFCALIGNMENTSEGMENT('04SGZEGwnFsPtmf3BfW1fT',$,$,$,$,#19,#179,#107); +#121= IFCALIGNMENTSEGMENT('0$CKSTZez7cgM3mmkSQwii',$,$,$,$,#19,#186,#108); +#122= IFCALIGNMENTSEGMENT('3tHQKCgSX4DQDDVRkZ3PN3',$,$,$,$,#19,#192,#109); +#123= IFCCARTESIANPOINT((135.557,125.687614)); +#124= IFCDIRECTION((0.99941701,0.03414139)); +#125= IFCAXIS2PLACEMENT2D(#123,#124); +#126= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#125,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(10.8487941648814),#54); +#127= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#126)); +#128= IFCPRODUCTDEFINITIONSHAPE($,$,(#127)); +#129= IFCCARTESIANPOINT((146.399469,126.058007)); +#130= IFCDIRECTION((0.99941701,0.03414139)); +#131= IFCAXIS2PLACEMENT2D(#129,#130); +#132= IFCCIRCLE(#7,1300.0); +#133= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#131,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(-0.0139377855017958),#132); +#134= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#133)); +#135= IFCPRODUCTDEFINITIONSHAPE($,$,(#134)); +#136= IFCCARTESIANPOINT((164.511752,126.550404)); +#137= IFCDIRECTION((0.99979578,0.02020887)); +#138= IFCAXIS2PLACEMENT2D(#136,#137); +#139= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#138,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(40.8413987171488),#54); +#140= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#139)); +#141= IFCPRODUCTDEFINITIONSHAPE($,$,(#140)); +#142= IFCCARTESIANPOINT((205.34481,127.375763)); +#143= IFCDIRECTION((0.99979578,0.02020887)); +#144= IFCAXIS2PLACEMENT2D(#142,#143); +#145= IFCCIRCLE(#7,1300.0); +#146= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#144,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(-0.0300274422055508),#145); +#147= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#146)); +#148= IFCPRODUCTDEFINITIONSHAPE($,$,(#147)); +#149= IFCCARTESIANPOINT((244.378491,127.578604)); +#150= IFCDIRECTION((0.99995181,-0.00981704)); +#151= IFCAXIS2PLACEMENT2D(#149,#150); +#152= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#151,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(50.1784915348274),#54); +#153= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#152)); +#154= IFCPRODUCTDEFINITIONSHAPE($,$,(#153)); +#155= IFCCARTESIANPOINT((294.554565,127.086)); +#156= IFCDIRECTION((1.0,0.0)); +#157= IFCAXIS2PLACEMENT2D(#155,#156); +#158= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#157,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(11.522986),#54); +#159= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#158)); +#160= IFCPRODUCTDEFINITIONSHAPE($,$,(#159)); +#161= IFCCARTESIANPOINT((306.077551,127.086)); +#162= IFCDIRECTION((0.99999377,-0.00352979)); +#163= IFCAXIS2PLACEMENT2D(#161,#162); +#164= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#163,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(192.513888479332),#54); +#165= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#164)); +#166= IFCPRODUCTDEFINITIONSHAPE($,$,(#165)); +#167= IFCCARTESIANPOINT((498.59024,126.406467)); +#168= IFCDIRECTION((0.99999377,-0.00352979)); +#169= IFCAXIS2PLACEMENT2D(#167,#168); +#170= IFCCIRCLE(#7,5000.0); +#171= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#169,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(-0.00305509818642019),#170); +#172= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#171)); +#173= IFCPRODUCTDEFINITIONSHAPE($,$,(#172)); +#174= IFCCARTESIANPOINT((513.86553,126.329214)); +#175= IFCDIRECTION((0.99997832,-0.00658485)); +#176= IFCAXIS2PLACEMENT2D(#174,#175); +#177= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#176,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(78.3609647380861),#54); +#178= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#177)); +#179= IFCPRODUCTDEFINITIONSHAPE($,$,(#178)); +#180= IFCCARTESIANPOINT((592.224796,125.813219)); +#181= IFCDIRECTION((0.99997832,-0.00658485)); +#182= IFCAXIS2PLACEMENT2D(#180,#181); +#183= IFCCIRCLE(#7,1300.0); +#184= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#182,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(0.00800800365444606),#183); +#185= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#184)); +#186= IFCPRODUCTDEFINITIONSHAPE($,$,(#185)); +#187= IFCCARTESIANPOINT((602.635138,125.786351)); +#188= IFCDIRECTION((0.99999899,0.00142311)); +#189= IFCAXIS2PLACEMENT2D(#187,#188); +#190= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#189,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(13.8073690591555),#54); +#191= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#190)); +#192= IFCPRODUCTDEFINITIONSHAPE($,$,(#191)); +#193= IFCGRADIENTCURVE((#126,#133,#139,#146,#152,#158,#164,#171,#177,#184,#190),.U.,#96,$); +#194= IFCSHAPEREPRESENTATION(#60,'Axis','Curve3D',(#193)); +#195= IFCPRODUCTDEFINITIONSHAPE($,$,(#194)); +#196= IFCSHAPEREPRESENTATION(#60,'Axis','Curve3D',(#193)); +#197= IFCPRODUCTDEFINITIONSHAPE($,$,(#196)); +#198= IFCPROPERTYSINGLEVALUE('state',$,IFCIDENTIFIER('proposed'),$); +#199= IFCPROPERTYSET('1lf3$ojeXENeMMmuDejpya',$,'landXML_Alignment',$,(#198)); +#200= IFCRELDEFINESBYPROPERTIES('3$NwrSvbH6df0$Z67Fhrb9',$,$,$,(#20),#199); +#201= IFCPROJECTEDCRS('EPSG:3878',$,$,$,$,$,$); +#202= IFCMAPCONVERSION(#56,#201,0.0,0.0,0.0,$,$,$,$,$); +ENDSEC; + +END-ISO-10303-21; diff --git a/E1a-ARSE/ALIN03/Dataset/VerticalAlignmentParameters.csv b/E1a-ARSE/ALIN03/Dataset/VerticalAlignmentParameters.csv new file mode 100644 index 0000000..fc0b572 --- /dev/null +++ b/E1a-ARSE/ALIN03/Dataset/VerticalAlignmentParameters.csv @@ -0,0 +1,12 @@ +Name;Type;StartDistAlong;HorizontalLength;StartHeight;StartGradient;EndGradient;Radius;Type +V1;IfcAlignmentVerticalSegment;135,557;10,8424694551669;125,687614;0,0341613100938614;0,0341613100938614;0;CONSTANTGRADIENT +V2;IfcAlignmentVerticalSegment;146,399469455167;18,112282610652;126,05800696124;0,0341613100938614;0,0202129972966548;-1300;CIRCULARARC +V3;IfcAlignmentVerticalSegment;164,511752065819;40,8330580844944;126,550404440385;0,0202129972966548;0,0202129972966548;0;CONSTANTGRADIENT +V4;IfcAlignmentVerticalSegment;205,344810150313;39,033681330639;127,37576293306;0,0202129972966548;-0,00981751240776929;-1300;CIRCULARARC +V5;IfcAlignmentVerticalSegment;244,378491480952;50,1760735190479;127,578604224343;-0,00981751240776929;-0,00981751240776929;0;CONSTANTGRADIENT +V6;IfcAlignmentVerticalSegment;294,554565;11,522986;127,086;0;0;0;CONSTANTGRADIENT +V7;IfcAlignmentVerticalSegment;306,077551;192,512689171019;127,086;-0,00352981070589252;-0,00352981070589252;0;CONSTANTGRADIENT +V8;IfcAlignmentVerticalSegment;498,590240171019;15,2752896431409;126,406466648677;-0,00352981070589252;-0,0065849894096037;-5000;CIRCULARARC +V9;IfcAlignmentVerticalSegment;513,865529814159;78,3592658459091;126,329213578221;-0,0065849894096037;-0,0065849894096037;0;CONSTANTGRADIENT +V10;IfcAlignmentVerticalSegment;592,224795660069;10,4103422623946;125,813218642574;-0,0065849894096037;0,00142311038270447;1300;CIRCULARARC +V11;IfcAlignmentVerticalSegment;602,635137922463;13,8073550775368;125,786350609637;0,00142311038228749;0,00142311038228749;0;CONSTANTGRADIENT diff --git a/E1a-ARSE/ALIN03/README.md b/E1a-ARSE/ALIN03/README.md new file mode 100644 index 0000000..167d8e0 --- /dev/null +++ b/E1a-ARSE/ALIN03/README.md @@ -0,0 +1,268 @@ +# Test Instruction + +| Documentation Code | Title | Exchange Code | Test Code | Author | Data Owner | Version | Date | +| --------------------- | ------------------------------- | ------------- | --------- | ------------- | ---------- | ------- | ---------- | +| IFC4.3AbRV_E1a_ALIN03 | Alignment Infrastructure Curves | E1a | ALIN03 | Lars Wikström | FTIA? | 1.0 | 07.01.2022 | + + +## Summary (Intent) + +With these instructions the infrastructure (e.g. Road) alignment exchange is established. This test instruction use the same alignment definition as [ALIN06](../ALIN06) and adds a geometric definition in the shape of a 3D polyline and a 2D polyline. + +| Info | | +| ---------------------------- | --------------------------- | +| Number of alignment(s) | 1 | +| Properties of segments | no | +| Horizontal layout | Straight Line, Circular Arc | +| Vertical layout | Straight Line, Circular Arc | +| Geometric representation | IfcPolyline | +| IFC reference file available | Yes | + +- Refer to [Test Case Imports](#Test-Case-Imports) to know the prerequisites for the present test. + +- The [Expected Results](#Expected-Results) section lists the material that will be used to assess the fulfilment of capabilities. + +- :zap: This is a test-driven process: refer to the [Validation Criteria](#Validation-Criteria) to understand what is required by the test :zap: + +## Itemised Roots +*This section lists the primary entities and concept templates being validated by this test instruction, these are listed to understand the scope of the data entities being addressed. this is the documentation of the data placed within BIMQ* + +The Test instruction addresses the import and export of the following IFC Entities & Concept Templates: + +:construction: under construction :construction: + +
IFC Entities +These entities represent a test-specific subset of the wider AbRV_Ex exchange and the overall AbRV MVD. **The scope of the test shall not be used as a definitive scope of the exchange, or of the entire MVD.** + + +- Model setup + - *IfcProject* + - *IfcRepresentationContext* + - *IfcMapConversion* + - *IfcProjectedCRS* + - *IfcUnitAssignment* +- Spatial structure + - *IfcSite* + - *IfcRoad* + +- Alignment + + - *IfcAlignment* + - *IfcAlignmentHorizontal* + - *IfcAlignmentVertical* + - *IfcAlignmentSegment* + - *IfcAlignmentHorizontalSegment* + - *IfcAlignmentVerticalSegment* + + - *IfcPolyline* + + +
+ +
Concept Templates + +These concept templates represent a test-specific subset of the wider AbRV_Ex exchange and the overall AbRV MVD, that must be correctly exported to meet the validation criteria. **The scope of the test shall not be used as a definitive scope of the exchange, or of the entire MVD.** + +- Project Context + - *Project Units* + - *Project Representation Context* + - *Project Global Positioning* +- Object Composition + - *Spatial Decomposition* + - *Alignment Decomposition* +- Object Connectivity + - *Spatial Containment* + +- Product Shape + - Product Geometric Representation + - *Alignment Geometry* + +
+ +## Model Dataset + +This test case utilises the dataset collected in the Dataset folder and summarised in the table below. **For more details on each item see [Dataset description](Dataset/README.md).** + +| Filename | Type (format) | Description | +| ------------------------------------------------------------ | --------------------------------------------- | ----------- | +| [HorizontalAlignmentParameters](Dataset/HorizontalAlignmentParameters.csv) | Parameters for the horizontal segments as csv | | +| [VerticalAlignmentParameters](Dataset/VerticalAlignmentParameters.csv) | Parameters for the vertical segments as csv | | +| [LandXML](Dataset/TOI-M14334-0000A.xml) | LandXML-file representing the alignment | | + +## Test Case Imports + +Test instructions are defined with a modular approach to reduce repetition of validation criteria and test content, and improve vendors ability to solve issues and bugs. therefore this test instruction *imports/reuses* the following Test instructions and entities with the relevant associated validation criteria. + +No test cases are imported for this test case. All necessary data and criteria are included. + +## Expected Results + +For certification of capabilities the only source will be: + +:construction: under construction :construction: + +- n. 1 IFC file containing the information as requested. The file shall be named using the following syntax: `MVDCode`-`ExchangeCode`-`TestCode`-`SoftwareVendor`.`ifc` (Example: `IFC4.3_AbRV-E2b-ASTPC-AmazingSoft.ifc`) + +Considering the aim of this test, other **optional** results, not subject to the bSI certification process, yet usefull to illustrate test results are: +- Screen-shot of a planar view and a "long section" similar to the provided examples +- CSV export of the horizontal and vertical alignment segment parameters +- CSV or e.g. GPX export of the polyline geometries + +--- + +## Validation criteria + +:zap: For this test case to be considered passed **all capabilities listed in this section**, and **the ones of pre-required tests** shall be verified, with no exception. :zap: + +### General + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | ------------------------------------------------------------ | ------------------------------------------------------------ | -------------------------- | ---------------------- | +| GENE_00 | All validation criteria of precondition's tests shall be verified | | na | na | +| GENE_01 | All requested entities (and attributes) exist in file | As per Entities Table. See [Dataset description](Dataset/README.md) | na | na | + +### Road alignment + +**Acceptance criteria**: For the **Railway alignment (without cant)** capability, the validation procedure must verify that **all** the following validation criteria are satisfied. + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | -------------------------------------------------------- | ---------------------------------------------- | -------------------------- | ---------------------- | +| SITE_00 | All IfcAlignment shall always be contained in an IfcSite | | | Spatial Containment | +| ALIG_00 | Alignment layout structure is verified | See steps | | Alignment Layout | +| ALIG_01 | Number of alignments contained in file | [1] | | | +| ALIG_02 | Parameters of alignment segments are verified | As per Alignment Table | | | +| ALIG_03 | Alignment geometric compliance is verified | As per Alignment geometric compliance document | | | + +
ALIG_00 steps + + + +| **STEP ID** | **STEP** | +| ----------- | ------------------------------------------------------------ | +| ALIG_00.1 | Each IfcAlignment must nest exactly 1 IfcAlignmentHorizontal | +| ALIG_00.2 | Each IfcAlignment must nest at most 1 IfcAlignmentVertical | +| ALIG_00.3 | Each IfcAlignment must nest exactly 1 IfcAlignmentVertical | +| ALIG_00.6 | Each IfcAlignmentHorizontal must be nested only by 1 IfcAlignment | +| ALIG_00.7 | Each IfcAlignmentVertical must be nested only by 1 IfcAlignment | +| ALIG_00.9 | Each IfcAlignment must nest only the following entities: IfcAlignmentHorizontal, IfcAlignmentVertical | +| ALIG_00.10 | Each IfcAlignmentHorizontal nests a list of IfcAlignmentSegment, each of which has DesignParameters typed as IfcAlignmentHorizontalSegment | +| ALIG_00.11 | Each IfcAlignmentVertical nests a list of IfcAlignmentSegment, each of which has DesignParameters typed as IfcAlignmentVerticalSegment | + +
+ +### Spatial (De)Composition + + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | --------------------------------- | ------------------------------------------------------------ | -------------------------- | ---------------------- | +| SDEC_01 | Spatial decomposition is verified | As per Spatial (De)Composition Table. See [Dataset description](Dataset/README.md) | na | Spatial Decomposition | + +> **Acceptance criteria**: For the **Spatial decomposition** capability, the validation procedure must verify that a Parent Element of the requested type aggregates (via `IfcRelAggregates`) exactly a given number of Child Elements of the requested type, no more and no less. + +
SDEC_01 details: Spatial decomposition is verified + + + +> - Given a set of elements taken from the [Spatial (De)Composition Table](Dataset/README.md#Dataset/README.md#spatial-decomposition-table) +> - Then the Parent Element, and optionally the Parent Element Type, exists +> - And the Parent Element must aggregate at least a number within [MinSize..MaxSize] of the requested Child Element + +
+ +### Spatial Containment + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | ------------------------------- | -------------------------------- | -------------------------- | ---------------------- | +| SCON_01 | Spatial containment is verified | As per Spatial Containment Table | na | Spatial Containment | + +> **Acceptance criteria**: For the **Spatial containment** capability, the validation procedure must verify that a Spatial Element of the requested type contains (via `IfcRelContainedInSpatialStructure`) exactly a given number of Elements of the requested type, no more and no less. + +
SCON_01 details: Spatial containment is verified + + + +> - Given a set of elements taken from the [Spatial Containment Table](Dataset/README.md#Spatial-Containment-Table) +> - Then the Spatial Element, and optionally the Spatial Element Type, exists +> - And the Spatial Element must contain at least a number within [MinSize..MaxSize] of the requested Element + +
+ +### Product geometric representation + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | ------------------------------------------------ | --------------------------------------------- | -------------------------- | ----------------------------------------------------- | +| PREP_01 | Geometric representation of products is verified | As per Product Geometric Representation Table | | Product Geometric Representation and its subtemplates | + +> **Acceptance criteria**: For the **Group Geometric Representation** capability, the validation procedure must verify that a Product of the requested type (and optionally a requested name) has an IfcShapeRepresentation with the requested Representation Identifier, Representation Type and Items. + +
PREP_01 details: Geometric representation of products is verified + + + +> - Given a set of products taken from the [Product Geometric Representation Table](Dataset/README.md#Product-Geometric-Representation-Table) +> +> - Then the Product, and optionally the Product Type, exists +> +> - And the Product must have an IfcShapeRepresentation (via IfcProductDefinitionShape) with the requested Representation Identifier, Representation Type and Items. +> +> - 2D IfcPolyline for IfcAlignmentHorizontal: +> +> Line segments: each as one segment in the polyline. Segment start and end points must match exactly the horizontal layout in the [Dataset description](Dataset/README.md). +> +> Curve segments: each as at least two equal length segments in the polyline. Segment start and end points must match exactly the curve start, end and intermediate point(s) according to the horizontal layout in the [Dataset description](Dataset/README.md). +> +> (No clothoids in the Dataset, but the same is sufficient for clothoid segments…) +> +> - 3D IfcPolyline for IfcAlignment: +> +> Same as 2D IfcPolyline for IfcAlignmentHorizontal, but z-values at each polyline segment start and end point must match exactly the z-value according to the vertical layout in the Dataset description. + +
+ +### Product placement + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | ------------------------------------------------------------ | ------------------------------ | -------------------------- | ------------------------------ | +| PPLA_01 | Placement of products is verified | As per Product Placement Table | | Product Placement subtemplates | +| PPLA_02 | For a product that has ObjectPlacement as IfcLinearPlacement, the CartesianPosition of IfcLinearPlacement shall be available | depends on cases | | Product Linear Placement | + +> **Acceptance criteria**: For the **Product Placement** capability, the validation procedure must verify that a Product of the requested type (and optionally a requested name) has the requested Object Placement, and optionally the Object Placement has PlacementRelTo reference to the Object Placement of Relative Placement Product with requested Relative Placement Product Type and Relative Placement Product Name. + +
PPLA_01 details: Placement of products is verified + + + +> - Given a set of products taken from the [Product Geometric Representation Table](#Product-Geometric-Representation-Table) +> - Then the Product with Product Type and Product Name, exists +> - And the Product must have Object Placement, and the Object Placement has PlacementRelTo reference to the ObjectPlacement of Relative Placement Product with requested Relative Placement Product Type and Relative Placement Product Name. + +
+ +### Project Setup + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | ----------------------------------------------- | -------------------- | -------------------------- | -------------------------- | +| ORIG_01 | Origin of Coordinate System is set as requested | [(0., 0., 0.)] | | Project Global Positioning | +| ORIG_02 | True north is set as requested | [(0., 1., 0.)] | | Project Global Positioning | +| DIST_01 | Unit of measure for all distances | [meter] | | Project Units | +| ANGL_01 | Unit of measure all angles | [radian] | | Project Units | +| DIST_02 | Required precision for distances | [0,0001] | all alignment segments | na | +| ANGL_02 | Required precision for angles and slope | [0,000001] | | na | + +### Project global positioning + + +| Element | Attribute | Value | Comment | +| ---------------- | ---------------- | --------- | ------- | +| IfcMapConversion | Eastings | 24525000 | | +| IfcMapConversion | Northings | 6876000 | | +| IfcMapConversion | OrthogonalHeight | 0 | | +| IfcMapConversion | XAxisAbscissa | 1 | | +| IfcMapConversion | XAxisOrdinate | 0 | | +| IfcMapConversion | Scale | 1 | | +| IfcProjectedCRS | Name | EPSG:3878 | | +| IfcProjectedCRS | GeodeticDatum | EPSG:6258 | | +| IfcProjectedCRS | VerticalDatum | EPSG:3900 | | + + + diff --git a/E1a-ARSE/ALIN04/Dataset/HorizontalAlignmentParameters.csv b/E1a-ARSE/ALIN04/Dataset/HorizontalAlignmentParameters.csv new file mode 100644 index 0000000..aaa4a23 --- /dev/null +++ b/E1a-ARSE/ALIN04/Dataset/HorizontalAlignmentParameters.csv @@ -0,0 +1,16 @@ +Name;Type;StartPointX;StartPointY;StartDirection;StartRadius;EndRadius;Length;Type +H1;IfcAlignmentHorizontalSegment;0,28371400013566;18,7504709996283;0,712199895871347;0;0;193,4232;LINE +H2;IfcAlignmentHorizontalSegment;146,690777998418;145,152630999684;0,712199906334298;0;200;63,845;CLOTHOID +H3;IfcAlignmentHorizontalSegment;192,677965000272;189,335668999702;0,871812399176709;200;200;34,420584;CIRCULARARC +H4;IfcAlignmentHorizontalSegment;212,454617001116;217,455753999762;1,04391527787276;200;0;63,845;CLOTHOID +H5;IfcAlignmentHorizontalSegment;238,485470999032;275,673937000334;1,20352784295313;0;0;21,346852;LINE +H6;IfcAlignmentHorizontalSegment;246,150430001318;295,597202000208;1,20352781983867;0;-200;63,845;CLOTHOID +H7;IfcAlignmentHorizontalSegment;272,181283999234;353,815386000089;1,04391531991188;-200;-200;85,355704;CIRCULARARC +H8;IfcAlignmentHorizontalSegment;329,316711999476;416,355174000375;0,617136818616182;-200;0;63,845;CLOTHOID +H9;IfcAlignmentHorizontalSegment;384,951684001833;447,527471999638;0,457524298045646;0;0;192,323738;LINE +H10;IfcAlignmentHorizontalSegment;557,494701001793;532,482327000238;0,457524292762515;200;200;82,814142;CIRCULARARC +H11;IfcAlignmentHorizontalSegment;622,220316998661;583,19077100046;0,871595018418373;-200;-200;100,11889;CIRCULARARC +H12;IfcAlignmentHorizontalSegment;702,781991001219;640,86246099975;0,37100055838095;0;0;58,659577;LINE +H13;IfcAlignmentHorizontalSegment;757,450667001307;662,129378999583;0,371000555025985;-200;-200;115,440984;CIRCULARARC +H14;IfcAlignmentHorizontalSegment;870,909519001842;671,499387999997;6,07698093924176;200;200;102,335082;CIRCULARARC +H15;IfcAlignmentHorizontalSegment;972,007240001112;676,521331000142;0,305471032863846;0;0;28,790227;LINE diff --git a/E1a-ARSE/ALIN04/Dataset/README.md b/E1a-ARSE/ALIN04/Dataset/README.md new file mode 100644 index 0000000..6c04745 --- /dev/null +++ b/E1a-ARSE/ALIN04/Dataset/README.md @@ -0,0 +1,125 @@ +## Model Dataset +This test case utilises the following dataset: + +- One alignment layout (no geometric representation is required) +- The alignment is composed of one horizontal alignment layout and one vertical alignment layout +- The horizontal layout has the following sequences of elements: + + - Line => Clothoid => Circular arc (cw) => Clothoid => Line => Clothoid => Circular arc (ccw) => Clothoid => Line + + - Line => Circular arc (cw) => Circular arc (ccw) => Line + + - Line => Circular arc (ccw) => Circular arc (cw) => Line +- The vertical layout has the following sequences of elements: + + - Line => Circular arc => Line + - Line => Circular arc (crest) => Circular arc (sag) => Line + - Line => Circular arc (sag) => Circular arc (crest) => Line + +| Filename | Description | +| ------------------------------------------------------------ | --------------------------------------------- | +| [HorizontalAlignmentParameters](./HorizontalAlignmentParameters.csv) | Parameters for the horizontal segments as csv | +| [VerticalAlignmentParameters](./VerticalAlignmentParameters.csv) | Parameters for the vertical segments as csv | +| [LandXML](./Testi_101_ml.xml) | LandXML-file representing the alignment | + +## Dataset specification + +### Entities table + +| **Element** | **Attribute** | **Value** | **Notes** | +| ---------------------- | ------------- | ----------- | --------- | +| IfcProject | Name | Alin04 | | +| IfcSite | Name | Alin04.Site | | +| IfcAlignment | Name | A1 | | +| IfcRoad | Name | Alin04.Road | | +| IfcAlignmentHorizontal | Name | AH1 | | +| IfcAlignmentVertical | Name | AV1 | | + +### Horizontal segments table + +Horizontal segments nested into AH1 in the following order: + +| Entity | PredefinedType | Name | Start Point X | Start Point Y | Start Direction | Start Radius Of Curvature | End Radius Of Curvature | Segment Length | +| ----------------------------- | -------------- | ---- | ------------- | ------------- | --------------- | ------------------------- | ----------------------- | -------------- | +| IfcAlignmentHorizontalSegment | LINE | H1 | 0,283714 | 18,750471 | 0,712199896 | 0 | 0 | 193,4232 | +| IfcAlignmentHorizontalSegment | CLOTHOID | H2 | 146,690778 | 145,152631 | 0,712199906 | 0 | 200 | 63,845 | +| IfcAlignmentHorizontalSegment | CIRCULARARC | H3 | 192,677965 | 189,335669 | 0,871812399 | 200 | 200 | 34,420584 | +| IfcAlignmentHorizontalSegment | CLOTHOID | H4 | 212,454617 | 217,455754 | 1,043915278 | 200 | 0 | 63,845 | +| IfcAlignmentHorizontalSegment | LINE | H5 | 238,485471 | 275,673937 | 1,203527843 | 0 | 0 | 21,346852 | +| IfcAlignmentHorizontalSegment | CLOTHOID | H6 | 246,15043 | 295,597202 | 1,20352782 | 0 | -200 | 63,845 | +| IfcAlignmentHorizontalSegment | CIRCULARARC | H7 | 272,181284 | 353,815386 | 1,04391532 | -200 | -200 | 85,355704 | +| IfcAlignmentHorizontalSegment | CLOTHOID | H8 | 329,316712 | 416,355174 | 0,617136819 | -200 | 0 | 63,845 | +| IfcAlignmentHorizontalSegment | LINE | H9 | 384,951684 | 447,527472 | 0,457524298 | 0 | 0 | 192,323738 | +| IfcAlignmentHorizontalSegment | CIRCULARARC | H10 | 557,494701 | 532,482327 | 0,457524293 | 200 | 200 | 82,814142 | +| IfcAlignmentHorizontalSegment | CIRCULARARC | H11 | 622,220317 | 583,190771 | 0,871595018 | -200 | -200 | 100,11889 | +| IfcAlignmentHorizontalSegment | LINE | H12 | 702,781991 | 640,862461 | 0,371000558 | 0 | 0 | 58,659577 | +| IfcAlignmentHorizontalSegment | CIRCULARARC | H13 | 757,450667 | 662,129379 | 0,371000555 | -200 | -200 | 115,440984 | +| IfcAlignmentHorizontalSegment | CIRCULARARC | H14 | 870,909519 | 671,499388 | 6,076980939 | 200 | 200 | 102,335082 | +| IfcAlignmentHorizontalSegment | LINE | H15 | 972,00724 | 676,521331 | 0,305471033 | 0 | 0 | 28,790227 | + +**NOTE**: + +- Please note the Project Global Positioning and unit parameters specified in the main Readme file + +### Vertical segments table + +Vertical segments nested into AV1 in the following order: + +| Entity | PredefinedType | Name | Start Dist Along | Horizontal Length | Start Height | Start Gradient | End Gradient | RadiusOfCurvature | +| --------------------------- | ---------------- | ---- | ---------------- | ----------------- | ------------ | -------------- | ------------ | ----------------- | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V1 | 0 | 67,96662759 | 43,475329 | -0,007734105 | -0,007734105 | 0 | +| IfcAlignmentVerticalSegment | CIRCULARARC | V2 | 67,96662759 | 25,56006049 | 42,94966796 | -0,007734105 | -0,093338018 | -300 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V3 | 93,52668809 | 20,39853177 | 41,66031927 | -0,093338018 | -0,093338018 | 0 | +| IfcAlignmentVerticalSegment | CIRCULARARC | V4 | 113,9252199 | 21,6842049 | 39,75636075 | -0,093338018 | -0,020657799 | 300 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V5 | 135,6094248 | 68,62574308 | 38,52203122 | -0,020657799 | -0,020657799 | 0 | +| IfcAlignmentVerticalSegment | CIRCULARARC | V6 | 204,2351678 | 56,93193013 | 37,10437443 | -0,020657799 | 0,007812811 | 2000 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V7 | 261,167098 | 46,44967561 | 36,73880354 | 0,007812811 | 0,007812811 | 0 | +| IfcAlignmentVerticalSegment | CIRCULARARC | V8 | 307,6167736 | 101,9005629 | 37,10170608 | 0,007812811 | 0,048630199 | 2500 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V9 | 409,5173365 | 30,59165499 | 39,97629696 | 0,048630199 | 0,048630199 | 0 | +| IfcAlignmentVerticalSegment | CIRCULARARC | V10 | 440,1089914 | 64,02882141 | 41,46397522 | 0,048630199 | -0,01545787 | -1000 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V11 | 504,1378129 | 203,5716837 | 42,52487872 | -0,01545787 | -0,01545787 | 0 | +| IfcAlignmentVerticalSegment | CIRCULARARC | V12 | 707,7094965 | 55,84829226 | 39,3780941 | -0,01545787 | -0,071486276 | -1000 | +| IfcAlignmentVerticalSegment | CIRCULARARC | V13 | 763,5577815 | 76,62507339 | 36,95215385 | -0,071486276 | 0,005320833 | 1000 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V14 | 840,1828549 | 152,3446543 | 34,42091694 | 0,005320833 | 0,005320833 | 0 | +| IfcAlignmentVerticalSegment | CIRCULARARC | V15 | 992,5275091 | 36,817362 | 35,23151739 | 0,005320833 | 0,023736122 | 2000 | +| IfcAlignmentVerticalSegment | CIRCULARARC | V16 | 1029,344877 | 52,56256394 | 35,76637241 | 0,023736122 | -0,028845118 | -1000 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V17 | 1081,907441 | 188,5015408 | 35,6321942 | -0,028845118 | -0,028845118 | 0 | + +### Spatial (De)Composition table + +| **Parent Element** | **Parent Element Type** | **Parent Element Name** | **MinSize** | **MaxSize** | **Child Element** | **Child Element Type** | **Child Element Name** | +| ------------------ | ----------------------- | ----------------------- | ----------- | ----------- | ----------------- | ---------------------- | ---------------------- | +| IfcProject | | Alin04 | 1 | 1 | IfcSite | | Alin04.Site | +| IfcSite | | Alin04.Site | 1 | 1 | IfcRoad | | Allin04.Road | + +### Spatial Containment table + +| **Spatial Element** | **Spatial Element Type** | **Spatial Element Name** | **MinSize** | **MaxSize** | **Element** | **Element Type** | **Element Name** | +| ------------------- | ------------------------ | ------------------------ | ----------- | ----------- | ------------ | ---------------- | ---------------- | +| IfcSite | | Alin04.Site | 1 | 1 | IfcAlignment | | A1 | + +### Product Geometric Representation table + +| **Product** | **Product Type** | **Product Name** | **Representation Identifier** | **Representation Type** | **Items** | +| ---------------------- | ---------------- | ---------------- | ----------------------------- | ----------------------- | ------------------- | +| IfcAlignment | na | A1 | Axis | Curve3D | 1 IfcGradientCurve | +| IfcAlignmentHorizontal | na | AH1 | Axis | Curve2D | 1 IfcCompositeCurve | +| IfcAlignmentVertical | na | AV1 | Axis | Curve2D | 1 IfcGradientCurve | + +### Product Placement table + +| **Product** | **Product Type** | **Product Name** | **Object Placement** | Relative Placement Product | Relative Placement Product Type | Relative Placement Product Name | +| ------------ | ---------------- | ---------------- | -------------------- | -------------------------- | ------------------------------- | ------------------------------- | +| IfcAlignment | | A1 | IfcLocalPlacement | IfcSite | na | Alin04.Site | + +## Drawings (Visualisations) + +The following Drawings and visualisations describe the test case dataset to be modelled and certified. + +| Filename | Description | +| -------------------------------------------- | -------------------------------------------- | +| [Testi_ml_map](./Testi_ml_map.pdf) | Planar (map) view of the test case | +| [Testi_ml_profiles](./Testi_ml_profiles.pdf) | Long section (profile) view of the test case | + + +## diff --git a/E1a-ARSE/ALIN04/Dataset/Testi_101_ml.ifc b/E1a-ARSE/ALIN04/Dataset/Testi_101_ml.ifc new file mode 100644 index 0000000..da86021 --- /dev/null +++ b/E1a-ARSE/ALIN04/Dataset/Testi_101_ml.ifc @@ -0,0 +1,344 @@ +ISO-10303-21; +HEADER; +FILE_DESCRIPTION(('ViewDefinition [Ifc4NotAssigned]'),'2;1'); +FILE_NAME( +/* name */ 'C:\\Users\\lars\\Documents\\Projekt\\IFCInfra\\Tests\\Testi_101_ml.ifc', +/* time_stamp */ '2022-02-10T08:16:24', +/* author */ ('lars'), +/* organization */ ('Unknown'), +/* preprocessor_version */ 'ggIfcConverter v0.0.5.0 by Geometry Gym Pty Ltd built 2022-02-10T07:15:39', +/* originating_system */ 'ggIFCConverter v0.0.5.0 - Converter by Geometry Gym Pty Ltd', +/* authorization */ 'None'); + +FILE_SCHEMA (('IFC4X3_RC4')); +ENDSEC; + +DATA; +#1= IFCCARTESIANPOINT((0.0,0.0,0.0)); +#2= IFCDIRECTION((1.0,0.0,0.0)); +#3= IFCDIRECTION((0.0,1.0,0.0)); +#4= IFCDIRECTION((0.0,0.0,1.0)); +#5= IFCAXIS2PLACEMENT3D(#1,$,$); +#6= IFCCARTESIANPOINT((0.0,0.0)); +#7= IFCAXIS2PLACEMENT2D(#6,$); +#8= IFCSIUNIT(*,.LENGTHUNIT.,$,.METRE.); +#9= IFCSIUNIT(*,.AREAUNIT.,$,.SQUARE_METRE.); +#10= IFCSIUNIT(*,.VOLUMEUNIT.,$,.CUBIC_METRE.); +#11= IFCSIUNIT(*,.PLANEANGLEUNIT.,$,.RADIAN.); +#12= IFCUNITASSIGNMENT((#8,#11)); +#13= IFCPROJECT('0ecx2rClfBtAk7rrRtzpG7',$,'IFC testi','IFC testi',$,$,$,(#80),#12); +#14= IFCCARTESIANPOINT((0.0,0.0,0.0)); +#15= IFCAXIS2PLACEMENT3D(#14,$,$); +#16= IFCLOCALPLACEMENT($,#15); +#17= IFCSITE('0AeyuwY3Sco4GqVIWj7KBz',$,'IFC testi',$,$,#16,$,$,$,$,$,$,$,$); +#18= IFCRELAGGREGATES('1Q9vKweljnFkXDa3IGNYn4',$,$,$,#13,(#17)); +#19= IFCLOCALPLACEMENT(#16,#5); +#20= IFCALIGNMENT('1V4IFLD5FZEHUFn2xxO5TX',$,'Testi',$,$,#19,#321,$); +#21= IFCRELCONTAINEDINSPATIALSTRUCTURE('3Vg8iVaUzCc8kgu5atnp5Z',$,'Site','Site Container for Elements',(#20),#17); +#22= IFCCARTESIANPOINT((0.0,0.0,0.0)); +#23= IFCAXIS2PLACEMENT3D(#22,#4,#2); +#25= IFCALIGNMENTHORIZONTAL('3aXJ1N8KqGC4XvJ0PdDKpy',$,$,$,$,#19,#169); +#26= IFCRELNESTS('3bHIy9qJHBYPOZgc7zqv0h',$,$,$,#20,(#25,#187)); +#27= IFCCARTESIANPOINT((24474600.283714,6654918.750471)); +#28= IFCALIGNMENTHORIZONTALSEGMENT($,$,#27,0.712199895871347,0.0,0.0,193.4232,$,.LINE.); +#29= IFCALIGNMENTSEGMENT('2vaztxIjrKOr$0KqItOJ$I',$,$,$,$,#19,#86,#28); +#30= IFCRELNESTS('1KmS$Dxxj4qx0ze8hbov2P',$,$,$,#25,(#29,#33,#36,#39,#42,#45,#48,#51,#54,#57,#60,#63,#66,#69,#72)); +#31= IFCCARTESIANPOINT((24474746.690778,6655045.152631)); +#32= IFCALIGNMENTHORIZONTALSEGMENT($,$,#31,0.712199906334298,0.0,200.0,63.845,$,.CLOTHOID.); +#33= IFCALIGNMENTSEGMENT('0sGR5JP9JE3NzGE0Oyp0za',$,$,$,$,#19,#92,#32); +#34= IFCCARTESIANPOINT((24474792.677965,6655089.335669)); +#35= IFCALIGNMENTHORIZONTALSEGMENT($,$,#34,0.871812399176709,200.0,200.0,34.420584,$,.CIRCULARARC.); +#36= IFCALIGNMENTSEGMENT('3uyWopL_852h4xFIJlpBjd',$,$,$,$,#19,#98,#35); +#37= IFCCARTESIANPOINT((24474812.454617,6655117.455754)); +#38= IFCALIGNMENTHORIZONTALSEGMENT($,$,#37,1.04391527787276,200.0,0.0,63.845,$,.CLOTHOID.); +#39= IFCALIGNMENTSEGMENT('0bOZo63U6dC0a70iOtGkCQ',$,$,$,$,#19,#104,#38); +#40= IFCCARTESIANPOINT((24474838.485471,6655175.673937)); +#41= IFCALIGNMENTHORIZONTALSEGMENT($,$,#40,1.20352784295313,0.0,0.0,21.346852,$,.LINE.); +#42= IFCALIGNMENTSEGMENT('3uw5yTngOd73UakCbjcKPN',$,$,$,$,#19,#109,#41); +#43= IFCCARTESIANPOINT((24474846.15043,6655195.597202)); +#44= IFCALIGNMENTHORIZONTALSEGMENT($,$,#43,1.20352781983867,0.0,-200.0,63.845,$,.CLOTHOID.); +#45= IFCALIGNMENTSEGMENT('2NuHEWbbdCcMrblPJjitBe',$,$,$,$,#19,#115,#44); +#46= IFCCARTESIANPOINT((24474872.181284,6655253.815386)); +#47= IFCALIGNMENTHORIZONTALSEGMENT($,$,#46,1.04391531991188,-200.0,-200.0,85.355704,$,.CIRCULARARC.); +#48= IFCALIGNMENTSEGMENT('3lHxSswtYwB01wMksZZIMT',$,$,$,$,#19,#121,#47); +#49= IFCCARTESIANPOINT((24474929.316712,6655316.355174)); +#50= IFCALIGNMENTHORIZONTALSEGMENT($,$,#49,0.617136818616182,-200.0,0.0,63.845,$,.CLOTHOID.); +#51= IFCALIGNMENTSEGMENT('2B5epfRrF3gcg_hsGk922T',$,$,$,$,#19,#127,#50); +#52= IFCCARTESIANPOINT((24474984.951684,6655347.527472)); +#53= IFCALIGNMENTHORIZONTALSEGMENT($,$,#52,0.457524298045646,0.0,0.0,192.323738,$,.LINE.); +#54= IFCALIGNMENTSEGMENT('0f8_8Cj8lvTUcnnmiVdCiP',$,$,$,$,#19,#132,#53); +#55= IFCCARTESIANPOINT((24475157.494701,6655432.482327)); +#56= IFCALIGNMENTHORIZONTALSEGMENT($,$,#55,0.457524292762515,200.0,200.0,82.814142,$,.CIRCULARARC.); +#57= IFCALIGNMENTSEGMENT('2I$Xcy$JkuUauhfYMs2_jz',$,$,$,$,#19,#138,#56); +#58= IFCCARTESIANPOINT((24475222.220317,6655483.190771)); +#59= IFCALIGNMENTHORIZONTALSEGMENT($,$,#58,0.871595018418373,-200.0,-200.0,100.11889,$,.CIRCULARARC.); +#60= IFCALIGNMENTSEGMENT('2czZ2zyktpvqOs4xYwOTKV',$,$,$,$,#19,#144,#59); +#61= IFCCARTESIANPOINT((24475302.781991,6655540.862461)); +#62= IFCALIGNMENTHORIZONTALSEGMENT($,$,#61,0.37100055838095,0.0,0.0,58.659577,$,.LINE.); +#63= IFCALIGNMENTSEGMENT('0l0XkEmfjreXS$jzp6amF6',$,$,$,$,#19,#149,#62); +#64= IFCCARTESIANPOINT((24475357.450667,6655562.129379)); +#65= IFCALIGNMENTHORIZONTALSEGMENT($,$,#64,0.371000555025985,-200.0,-200.0,115.440984,$,.CIRCULARARC.); +#66= IFCALIGNMENTSEGMENT('0Bb9yB3iA_2DK_lIKVX5zx',$,$,$,$,#19,#155,#65); +#67= IFCCARTESIANPOINT((24475470.909519,6655571.499388)); +#68= IFCALIGNMENTHORIZONTALSEGMENT($,$,#67,6.07698093924176,200.0,200.0,102.335082,$,.CIRCULARARC.); +#69= IFCALIGNMENTSEGMENT('3miJ11ZCKhG0rTvyyAcgwC',$,$,$,$,#19,#161,#68); +#70= IFCCARTESIANPOINT((24475572.00724,6655576.521331)); +#71= IFCALIGNMENTHORIZONTALSEGMENT($,$,#70,0.305471032863846,0.0,0.0,28.790227,$,.LINE.); +#72= IFCALIGNMENTSEGMENT('3zvKhvQ6EEPa36uvd5tvQ9',$,$,$,$,#19,#166,#71); +#73= IFCAXIS2PLACEMENT2D(#27,#74); +#74= IFCDIRECTION((0.75692608,0.65350051)); +#75= IFCCARTESIANPOINT((0.0,0.0)); +#76= IFCDIRECTION((1.0,0.0)); +#77= IFCVECTOR(#76,1.0); +#78= IFCLINE(#75,#77); +#79= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#73,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(193.4232),#78); +#80= IFCGEOMETRICREPRESENTATIONCONTEXT($,'Model',3,0.00001,#82,#83); +#81= IFCCARTESIANPOINT((0.0,0.0,0.0)); +#82= IFCAXIS2PLACEMENT3D(#81,$,$); +#83= IFCDIRECTION((0.0,1.0)); +#84= IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Axis','Model',*,*,*,*,#80,$,.GRAPH_VIEW.,$); +#85= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#79)); +#86= IFCPRODUCTDEFINITIONSHAPE($,$,(#85)); +#87= IFCAXIS2PLACEMENT2D(#31,#88); +#88= IFCDIRECTION((0.75692607,0.65350052)); +#89= IFCCLOTHOID(#7,113.0); +#90= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#87,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(63.845),#89); +#91= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#90)); +#92= IFCPRODUCTDEFINITIONSHAPE($,$,(#91)); +#93= IFCAXIS2PLACEMENT2D(#34,#94); +#94= IFCDIRECTION((0.64344022,0.76549636)); +#95= IFCCIRCLE(#7,200.0); +#96= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#93,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(34.420584),#95); +#97= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#96)); +#98= IFCPRODUCTDEFINITIONSHAPE($,$,(#97)); +#99= IFCAXIS2PLACEMENT2D(#37,#100); +#100= IFCDIRECTION((0.50283983,0.86437961)); +#101= IFCCLOTHOID(#7,-113.0); +#102= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#99,IFCPARAMETERVALUE(-63.845),IFCNONNEGATIVELENGTHMEASURE(63.845),#101); +#103= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#102)); +#104= IFCPRODUCTDEFINITIONSHAPE($,$,(#103)); +#105= IFCAXIS2PLACEMENT2D(#40,#106); +#106= IFCDIRECTION((0.35906742,0.93331162)); +#107= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#105,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(21.346852),#78); +#108= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#107)); +#109= IFCPRODUCTDEFINITIONSHAPE($,$,(#108)); +#110= IFCAXIS2PLACEMENT2D(#43,#111); +#111= IFCDIRECTION((0.35906744,0.93331162)); +#112= IFCCLOTHOID(#7,-113.0); +#113= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#110,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(63.845),#112); +#114= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#113)); +#115= IFCPRODUCTDEFINITIONSHAPE($,$,(#114)); +#116= IFCAXIS2PLACEMENT2D(#46,#117); +#117= IFCDIRECTION((0.5028398,0.86437963)); +#118= IFCCIRCLE(#7,200.0); +#119= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#116,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(-0.42677852),#118); +#120= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#119)); +#121= IFCPRODUCTDEFINITIONSHAPE($,$,(#120)); +#122= IFCAXIS2PLACEMENT2D(#49,#123); +#123= IFCDIRECTION((0.81553873,0.5787025)); +#124= IFCCLOTHOID(#7,113.0); +#125= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#122,IFCPARAMETERVALUE(-63.845),IFCNONNEGATIVELENGTHMEASURE(63.845),#124); +#126= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#125)); +#127= IFCPRODUCTDEFINITIONSHAPE($,$,(#126)); +#128= IFCAXIS2PLACEMENT2D(#52,#129); +#129= IFCDIRECTION((0.89714883,0.44172839)); +#130= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#128,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(192.323738),#78); +#131= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#130)); +#132= IFCPRODUCTDEFINITIONSHAPE($,$,(#131)); +#133= IFCAXIS2PLACEMENT2D(#55,#134); +#134= IFCDIRECTION((0.89714884,0.44172839)); +#135= IFCCIRCLE(#7,200.0); +#136= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#133,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(82.814142),#135); +#137= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#136)); +#138= IFCPRODUCTDEFINITIONSHAPE($,$,(#137)); +#139= IFCAXIS2PLACEMENT2D(#58,#140); +#140= IFCDIRECTION((0.64360661,0.76535647)); +#141= IFCCIRCLE(#7,200.0); +#142= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#139,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(-0.50059445),#141); +#143= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#142)); +#144= IFCPRODUCTDEFINITIONSHAPE($,$,(#143)); +#145= IFCAXIS2PLACEMENT2D(#61,#146); +#146= IFCDIRECTION((0.93196506,0.3625481)); +#147= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#145,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(58.659577),#78); +#148= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#147)); +#149= IFCPRODUCTDEFINITIONSHAPE($,$,(#148)); +#150= IFCAXIS2PLACEMENT2D(#64,#151); +#151= IFCDIRECTION((0.93196506,0.3625481)); +#152= IFCCIRCLE(#7,200.0); +#153= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#150,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(-0.57720492),#152); +#154= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#153)); +#155= IFCPRODUCTDEFINITIONSHAPE($,$,(#154)); +#156= IFCAXIS2PLACEMENT2D(#67,#157); +#157= IFCDIRECTION((0.9788151,-0.20474616)); +#158= IFCCIRCLE(#7,200.0); +#159= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#156,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(102.335082),#158); +#160= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#159)); +#161= IFCPRODUCTDEFINITIONSHAPE($,$,(#160)); +#162= IFCAXIS2PLACEMENT2D(#70,#163); +#163= IFCDIRECTION((0.9537054,0.30074244)); +#164= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#162,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(28.790227),#78); +#165= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#164)); +#166= IFCPRODUCTDEFINITIONSHAPE($,$,(#165)); +#167= IFCCOMPOSITECURVE((#79,#90,#96,#102,#107,#113,#119,#125,#130,#136,#142,#147,#153,#159,#164),.U.); +#168= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#167)); +#169= IFCPRODUCTDEFINITIONSHAPE($,$,(#168)); +#170= IFCALIGNMENTVERTICALSEGMENT($,$,0.0,67.9666275938242,43.475329,-0.00773410503537014,-0.00773410503537014,$,.CONSTANTGRADIENT.); +#171= IFCALIGNMENTVERTICALSEGMENT($,$,67.9666275938242,25.56006049186,42.9496679632888,-0.00773410503537014,-0.0933380176556316,-300.0,.CIRCULARARC.); +#172= IFCALIGNMENTVERTICALSEGMENT($,$,93.5266880856841,20.3985317664884,41.6603192684821,-0.0933380176556316,-0.0933380176556316,$,.CONSTANTGRADIENT.); +#173= IFCALIGNMENTVERTICALSEGMENT($,$,113.925219852173,21.6842049028376,39.7563607503138,-0.0933380176556316,-0.0206577987550277,300.0,.CIRCULARARC.); +#174= IFCALIGNMENTVERTICALSEGMENT($,$,135.60942475501,68.6257430776865,38.5220312181138,-0.0206577987550277,-0.0206577987550277,$,.CONSTANTGRADIENT.); +#175= IFCALIGNMENTVERTICALSEGMENT($,$,204.235167832697,56.9319301335483,37.1043744281956,-0.0206577987550277,0.00781281114018211,2000.0,.CIRCULARARC.); +#176= IFCALIGNMENTVERTICALSEGMENT($,$,261.167097966245,46.449675607139,36.7388035371268,0.00781281114018211,0.00781281114018211,$,.CONSTANTGRADIENT.); +#177= IFCALIGNMENTVERTICALSEGMENT($,$,307.616773573384,101.90056287711,37.101706080191,0.00781281114018211,0.0486301987513986,2500.0,.CIRCULARARC.); +#178= IFCALIGNMENTVERTICALSEGMENT($,$,409.517336450494,30.5916549869268,39.9762969622553,0.0486301987513986,0.0486301987513986,$,.CONSTANTGRADIENT.); +#179= IFCALIGNMENTVERTICALSEGMENT($,$,440.108991437421,64.0288214133387,41.4639752243932,0.0486301987513986,-0.0154578700237117,-1000.0,.CIRCULARARC.); +#180= IFCALIGNMENTVERTICALSEGMENT($,$,504.13781285076,203.571683667725,42.5248787225931,-0.0154578700237117,-0.0154578700237117,$,.CONSTANTGRADIENT.); +#181= IFCALIGNMENTVERTICALSEGMENT($,$,707.709496518485,55.8482922569574,39.3780940959472,-0.0154578700237117,-0.0714862764285531,-1000.0,.CIRCULARARC.); +#182= IFCALIGNMENTVERTICALSEGMENT($,$,763.557781493212,76.6250733893689,36.9521538451958,-0.0714862764285531,0.00532083289209283,1000.0,.CIRCULARARC.); +#183= IFCALIGNMENTVERTICALSEGMENT($,$,840.182854882581,152.344654262115,34.4209169381877,0.00532083289209283,0.00532083289209283,$,.CONSTANTGRADIENT.); +#184= IFCALIGNMENTVERTICALSEGMENT($,$,992.527509144696,36.8173619984802,35.2315173854975,0.00532083289209283,0.0237361222562795,2000.0,.CIRCULARARC.); +#185= IFCALIGNMENTVERTICALSEGMENT($,$,1029.34487722718,52.5625639402238,35.7663724122683,0.0237361222562795,-0.0288451180418102,-1000.0,.CIRCULARARC.); +#186= IFCALIGNMENTVERTICALSEGMENT($,$,1081.90744116741,188.501540832592,35.6321941963812,-0.0288451180418207,-0.0288451180418207,$,.CONSTANTGRADIENT.); +#187= IFCALIGNMENTVERTICAL('3X$U5$NVT6K9Ko9bGmnTu2',$,'Testi',$,$,#19,#319); +#188= IFCALIGNMENTSEGMENT('26hB2BUmb2Veh74un0Xpfb',$,$,$,$,#19,#211,#170); +#189= IFCRELNESTS('0221xrOpX7n9rswbXSA$aN',$,$,$,#187,(#188,#190,#191,#192,#193,#194,#195,#196,#197,#198,#199,#200,#201,#202,#203,#204,#205)); +#190= IFCALIGNMENTSEGMENT('1eMXlD_EfCk9dPhHpP0rsu',$,$,$,$,#19,#218,#171); +#191= IFCALIGNMENTSEGMENT('147CHC9rT4p8XukwIN_JR3',$,$,$,$,#19,#224,#172); +#192= IFCALIGNMENTSEGMENT('1hojd2yvH5n8$dNLvVeYAr',$,$,$,$,#19,#231,#173); +#193= IFCALIGNMENTSEGMENT('3F09I6WPz6F9DZ0VSoaOCM',$,$,$,$,#19,#237,#174); +#194= IFCALIGNMENTSEGMENT('31QCTES6zA3fiZ4oJeZyb5',$,$,$,$,#19,#244,#175); +#195= IFCALIGNMENTSEGMENT('2A43wLJJjD3vkH$$FgJt_Y',$,$,$,$,#19,#250,#176); +#196= IFCALIGNMENTSEGMENT('3W2WokM2n7ghCxTiHp1bH0',$,$,$,$,#19,#257,#177); +#197= IFCALIGNMENTSEGMENT('25Cl1FkpD2v8EJErxkyuuN',$,$,$,$,#19,#263,#178); +#198= IFCALIGNMENTSEGMENT('1UgJmOR355CPy_gjJ3oLEV',$,$,$,$,#19,#270,#179); +#199= IFCALIGNMENTSEGMENT('0KetFY0jv3XAjvLuVVQEpz',$,$,$,$,#19,#276,#180); +#200= IFCALIGNMENTSEGMENT('2Y85$WNn98nOTLMVM_s_z5',$,$,$,$,#19,#283,#181); +#201= IFCALIGNMENTSEGMENT('2yAiFMqkrF4B9LRlwAqY_7',$,$,$,$,#19,#290,#182); +#202= IFCALIGNMENTSEGMENT('0nHVW1pGTEdvbPo9$0K2fd',$,$,$,$,#19,#296,#183); +#203= IFCALIGNMENTSEGMENT('0WmjnZ8LH1shpB8fjLvHEY',$,$,$,$,#19,#303,#184); +#204= IFCALIGNMENTSEGMENT('0t4c9fkL51CvLVKIaPJz8f',$,$,$,$,#19,#310,#185); +#205= IFCALIGNMENTSEGMENT('1i6Y5IqCXEsO45nyGwtUYB',$,$,$,$,#19,#316,#186); +#206= IFCCARTESIANPOINT((0.0,43.475329)); +#207= IFCDIRECTION((0.99997009,-0.00773387)); +#208= IFCAXIS2PLACEMENT2D(#206,#207); +#209= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#208,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(67.9686603222625),#78); +#210= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#209)); +#211= IFCPRODUCTDEFINITIONSHAPE($,$,(#210)); +#212= IFCCARTESIANPOINT((67.966628,42.949668)); +#213= IFCDIRECTION((0.99997009,-0.00773387)); +#214= IFCAXIS2PLACEMENT2D(#212,#213); +#215= IFCCIRCLE(#7,300.0); +#216= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#214,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(-0.0853344217592635),#215); +#217= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#216)); +#218= IFCPRODUCTDEFINITIONSHAPE($,$,(#217)); +#219= IFCCARTESIANPOINT((93.526688,41.660319)); +#220= IFCDIRECTION((0.99567226,-0.09293408)); +#221= IFCAXIS2PLACEMENT2D(#219,#220); +#222= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#221,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(20.4871949340886),#78); +#223= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#222)); +#224= IFCPRODUCTDEFINITIONSHAPE($,$,(#223)); +#225= IFCCARTESIANPOINT((113.92522,39.756361)); +#226= IFCDIRECTION((0.99567226,-0.09293408)); +#227= IFCAXIS2PLACEMENT2D(#225,#226); +#228= IFCCIRCLE(#7,300.0); +#229= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#227,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(0.0724135116192724),#228); +#230= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#229)); +#231= IFCPRODUCTDEFINITIONSHAPE($,$,(#230)); +#232= IFCCARTESIANPOINT((135.609425,38.522031)); +#233= IFCDIRECTION((0.9997867,-0.02065339)); +#234= IFCAXIS2PLACEMENT2D(#232,#233); +#235= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#234,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(68.6403843501667),#78); +#236= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#235)); +#237= IFCPRODUCTDEFINITIONSHAPE($,$,(#236)); +#238= IFCCARTESIANPOINT((204.235168,37.104374)); +#239= IFCDIRECTION((0.9997867,-0.02065339)); +#240= IFCAXIS2PLACEMENT2D(#238,#239); +#241= IFCCIRCLE(#7,2000.0); +#242= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#240,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(0.0284675131534649),#241); +#243= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#242)); +#244= IFCPRODUCTDEFINITIONSHAPE($,$,(#243)); +#245= IFCCARTESIANPOINT((261.167098,36.738804)); +#246= IFCDIRECTION((0.99996948,0.00781257)); +#247= IFCAXIS2PLACEMENT2D(#245,#246); +#248= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#247,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(46.4510932300219),#78); +#249= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#248)); +#250= IFCPRODUCTDEFINITIONSHAPE($,$,(#249)); +#251= IFCCARTESIANPOINT((307.616774,37.101706)); +#252= IFCDIRECTION((0.99996948,0.00781257)); +#253= IFCAXIS2PLACEMENT2D(#251,#252); +#254= IFCCIRCLE(#7,2500.0); +#255= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#253,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(0.0407792657489707),#254); +#256= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#255)); +#257= IFCPRODUCTDEFINITIONSHAPE($,$,(#256)); +#258= IFCCARTESIANPOINT((409.517336,39.976297)); +#259= IFCDIRECTION((0.99881965,0.0485728)); +#260= IFCAXIS2PLACEMENT2D(#258,#259); +#261= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#260,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(30.6278066705866),#78); +#262= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#261)); +#263= IFCPRODUCTDEFINITIONSHAPE($,$,(#262)); +#264= IFCCARTESIANPOINT((440.108991,41.463975)); +#265= IFCDIRECTION((0.99881965,0.0485728)); +#266= IFCAXIS2PLACEMENT2D(#264,#265); +#267= IFCCIRCLE(#7,1000.0); +#268= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#266,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(-0.0640485569330326),#267); +#269= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#268)); +#270= IFCPRODUCTDEFINITIONSHAPE($,$,(#269)); +#271= IFCCARTESIANPOINT((504.137813,42.524879)); +#272= IFCDIRECTION((0.99988055,-0.01545602)); +#273= IFCAXIS2PLACEMENT2D(#271,#272); +#274= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#273,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(203.596003508907),#78); +#275= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#274)); +#276= IFCPRODUCTDEFINITIONSHAPE($,$,(#275)); +#277= IFCCARTESIANPOINT((707.709497,39.378094)); +#278= IFCDIRECTION((0.99988055,-0.01545602)); +#279= IFCAXIS2PLACEMENT2D(#277,#278); +#280= IFCCIRCLE(#7,1000.0); +#281= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#279,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(-0.0559082376282203),#280); +#282= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#281)); +#283= IFCPRODUCTDEFINITIONSHAPE($,$,(#282)); +#284= IFCCARTESIANPOINT((763.557781,36.952154)); +#285= IFCDIRECTION((0.99745461,-0.07130432)); +#286= IFCAXIS2PLACEMENT2D(#284,#285); +#287= IFCCIRCLE(#7,1000.0); +#288= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#286,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(0.076685659310769),#287); +#289= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#288)); +#290= IFCPRODUCTDEFINITIONSHAPE($,$,(#289)); +#291= IFCCARTESIANPOINT((840.182855,34.420917)); +#292= IFCDIRECTION((0.99998584,0.00532076)); +#293= IFCAXIS2PLACEMENT2D(#291,#292); +#294= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#293,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(152.346810781613),#78); +#295= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#294)); +#296= IFCPRODUCTDEFINITIONSHAPE($,$,(#295)); +#297= IFCCARTESIANPOINT((992.527509,35.231517)); +#298= IFCDIRECTION((0.99998584,0.00532076)); +#299= IFCAXIS2PLACEMENT2D(#297,#298); +#300= IFCCIRCLE(#7,2000.0); +#301= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#299,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(0.0184108834113241),#300); +#302= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#301)); +#303= IFCPRODUCTDEFINITIONSHAPE($,$,(#302)); +#304= IFCCARTESIANPOINT((1029.344877,35.766372)); +#305= IFCDIRECTION((0.99971842,0.02372944)); +#306= IFCAXIS2PLACEMENT2D(#304,#305); +#307= IFCCIRCLE(#7,1000.0); +#308= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#306,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(-0.0525687880190251),#307); +#309= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#308)); +#310= IFCPRODUCTDEFINITIONSHAPE($,$,(#309)); +#311= IFCCARTESIANPOINT((1081.907441,35.632194)); +#312= IFCDIRECTION((0.99958424,-0.02883313)); +#313= IFCAXIS2PLACEMENT2D(#311,#312); +#314= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#313,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(188.579945016814),#78); +#315= IFCSHAPEREPRESENTATION(#84,'Axis','Curve2D',(#314)); +#316= IFCPRODUCTDEFINITIONSHAPE($,$,(#315)); +#317= IFCGRADIENTCURVE((#209,#216,#222,#229,#235,#242,#248,#255,#261,#268,#274,#281,#288,#294,#301,#308,#314),.U.,#167,$); +#318= IFCSHAPEREPRESENTATION(#84,'Axis','Curve3D',(#317)); +#319= IFCPRODUCTDEFINITIONSHAPE($,$,(#318)); +#320= IFCSHAPEREPRESENTATION(#84,'Axis','Curve3D',(#317)); +#321= IFCPRODUCTDEFINITIONSHAPE($,$,(#320)); +#322= IFCPROPERTYSINGLEVALUE('state',$,IFCIDENTIFIER('proposed'),$); +#323= IFCPROPERTYSET('1GzoJm_T13fRi9EcDx2r9U',$,'landXML_Alignment',$,(#322)); +#324= IFCRELDEFINESBYPROPERTIES('0zJtMCYNrDHB6mAADvGL7b',$,$,$,(#20),#323); +#325= IFCPROJECTEDCRS('EPSG:3878',$,$,$,$,$,$); +#326= IFCMAPCONVERSION(#80,#325,0.0,0.0,0.0,$,$,$,$,$); +ENDSEC; + +END-ISO-10303-21; diff --git a/E1a-ARSE/ALIN04/Dataset/Testi_101_ml.xml b/E1a-ARSE/ALIN04/Dataset/Testi_101_ml.xml new file mode 100644 index 0000000..2aa38b0 --- /dev/null +++ b/E1a-ARSE/ALIN04/Dataset/Testi_101_ml.xml @@ -0,0 +1,116 @@ + + + + + + + + + + + + + + + + + + + + + + + + + 6654918.750471 24474600.283714 0.000000 + 6655045.152631 24474746.690778 0.000000 + + + 6655045.152631 24474746.690778 + 6655089.335669 24474792.677965 + 6655073.005000 24474778.951172 + + + 6655089.335669 24474792.677965 + 6655117.455754 24474812.454617 +
6655218.023713 24474639.578692
+
+ + 6655117.455754 24474812.454617 + 6655175.673937 24474838.485471 + 6655135.895942 24474823.181919 + + + 6655175.673937 24474838.485471 0.000000 + 6655195.597202 24474846.150430 0.000000 + + + 6655195.597202 24474846.150430 + 6655253.815386 24474872.181284 + 6655235.375197 24474861.453982 + + + 6655253.815386 24474872.181284 + 6655316.355174 24474929.316712 +
6655153.247426 24475045.057209
+
+ + 6655316.355174 24474929.316712 + 6655347.527472 24474984.951684 + 6655328.700888 24474946.714957 + + + 6655347.527472 24474984.951684 0.000000 + 6655432.482327 24475157.494701 0.000000 + + + 6655432.482327 24475157.494701 + 6655483.190771 24475222.220317 +
6655611.912094 24475069.149023
+
+ + 6655483.190771 24475222.220317 + 6655540.862461 24475302.781991 +
6655354.469449 24475375.291611
+
+ + 6655540.862461 24475302.781991 0.000000 + 6655562.129379 24475357.450667 0.000000 + + + 6655562.129379 24475357.450667 + 6655571.499388 24475470.909519 +
6655375.736367 24475429.960288
+
+ + 6655571.499388 24475470.909519 + 6655576.521331 24475572.007240 +
6655767.262409 24475511.858750
+
+ + 6655576.521331 24475572.007240 0.000000 + 6655585.179774 24475599.464635 0.000000 + +
+ + + 0.000000 43.475329 + 80.774181 42.850613 + 124.744967 38.746467 + 232.698531 36.516384 + 358.596365 37.500000 + 472.106409 43.020016 + 735.667559 38.945922 + 801.821767 34.216804 + 1010.938652 35.329480 + 1055.627923 36.390230 + 1270.408982 30.194845 + + + + + + +
+
+
diff --git a/E1a-ARSE/ALIN04/Dataset/Testi_ml_map.pdf b/E1a-ARSE/ALIN04/Dataset/Testi_ml_map.pdf new file mode 100644 index 0000000..a64cfde Binary files /dev/null and b/E1a-ARSE/ALIN04/Dataset/Testi_ml_map.pdf differ diff --git a/E1a-ARSE/ALIN04/Dataset/Testi_ml_profiles.pdf b/E1a-ARSE/ALIN04/Dataset/Testi_ml_profiles.pdf new file mode 100644 index 0000000..f9d0c57 Binary files /dev/null and b/E1a-ARSE/ALIN04/Dataset/Testi_ml_profiles.pdf differ diff --git a/E1a-ARSE/ALIN04/Dataset/VerticalAlignmentParameters.csv b/E1a-ARSE/ALIN04/Dataset/VerticalAlignmentParameters.csv new file mode 100644 index 0000000..366b22e --- /dev/null +++ b/E1a-ARSE/ALIN04/Dataset/VerticalAlignmentParameters.csv @@ -0,0 +1,18 @@ +Name;Type;StartDistAlong;HorizontalLength;StartHeight;StartGradient;EndGradient;Radius;Type +V1;IfcAlignmentVerticalSegment;0;67,9666275938242;43,475329;-0,00773410503537014;-0,00773410503537014;0;CONSTANTGRADIENT +V2;IfcAlignmentVerticalSegment;67,9666275938242;25,56006049186;42,9496679632888;-0,00773410503537014;-0,0933380176556316;-300;CIRCULARARC +V3;IfcAlignmentVerticalSegment;93,5266880856841;20,3985317664884;41,6603192684821;-0,0933380176556316;-0,0933380176556316;0;CONSTANTGRADIENT +V4;IfcAlignmentVerticalSegment;113,925219852173;21,6842049028376;39,7563607503138;-0,0933380176556316;-0,0206577987550277;300;CIRCULARARC +V5;IfcAlignmentVerticalSegment;135,60942475501;68,6257430776865;38,5220312181138;-0,0206577987550277;-0,0206577987550277;0;CONSTANTGRADIENT +V6;IfcAlignmentVerticalSegment;204,235167832697;56,9319301335483;37,1043744281956;-0,0206577987550277;0,00781281114018211;2000;CIRCULARARC +V7;IfcAlignmentVerticalSegment;261,167097966245;46,449675607139;36,7388035371268;0,00781281114018211;0,00781281114018211;0;CONSTANTGRADIENT +V8;IfcAlignmentVerticalSegment;307,616773573384;101,90056287711;37,101706080191;0,00781281114018211;0,0486301987513986;2500;CIRCULARARC +V9;IfcAlignmentVerticalSegment;409,517336450494;30,5916549869268;39,9762969622553;0,0486301987513986;0,0486301987513986;0;CONSTANTGRADIENT +V10;IfcAlignmentVerticalSegment;440,108991437421;64,0288214133387;41,4639752243932;0,0486301987513986;-0,0154578700237117;-1000;CIRCULARARC +V11;IfcAlignmentVerticalSegment;504,13781285076;203,571683667725;42,5248787225931;-0,0154578700237117;-0,0154578700237117;0;CONSTANTGRADIENT +V12;IfcAlignmentVerticalSegment;707,709496518485;55,8482922569574;39,3780940959472;-0,0154578700237117;-0,0714862764285531;-1000;CIRCULARARC +V13;IfcAlignmentVerticalSegment;763,557781493212;76,6250733893689;36,9521538451958;-0,0714862764285531;0,00532083289209283;1000;CIRCULARARC +V14;IfcAlignmentVerticalSegment;840,182854882581;152,344654262115;34,4209169381877;0,00532083289209283;0,00532083289209283;0;CONSTANTGRADIENT +V15;IfcAlignmentVerticalSegment;992,527509144696;36,8173619984802;35,2315173854975;0,00532083289209283;0,0237361222562795;2000;CIRCULARARC +V16;IfcAlignmentVerticalSegment;1029,34487722718;52,5625639402238;35,7663724122683;0,0237361222562795;-0,0288451180418102;-1000;CIRCULARARC +V17;IfcAlignmentVerticalSegment;1081,90744116741;188,501540832592;35,6321941963812;-0,0288451180418207;-0,0288451180418207;0;CONSTANTGRADIENT diff --git a/E1a-ARSE/ALIN04/README.md b/E1a-ARSE/ALIN04/README.md new file mode 100644 index 0000000..d4b734d --- /dev/null +++ b/E1a-ARSE/ALIN04/README.md @@ -0,0 +1,255 @@ +# Test Instruction + +| Documentation Code | Title | Exchange Code | Test Code | Author | Data Owner | Version | Date | +| --------------------- | ------------------------------- | ------------- | --------- | ------------- | ---------- | ------- | ---------- | +| IFC4.3AbRV_E1a_ALIN04 | Alignment Infrastructure Curves | E1a | ALIN04 | Lars Wikström | FTIA | 1.0 | 07.01.2022 | + + +## Summary (Intent) + +With these instructions the infrastructure (e.g. Road) alignment exchange is established. This test instruction use the same alignment definition as [ALIN01](../ALIN01) and adds a geometric definition. + +| Info | | +| ---------------------------- | ------------------------------------- | +| Number of alignment(s) | 1 | +| Properties of segments | no | +| Horizontal layout | Straight Line, Circular Arc, Clothoid | +| Vertical layout | Straight Line, Circular Arc | +| Geometric representation | IfcCompositeCurve, IfcGradientCurve | +| IFC reference file available | Yes | + +- Refer to [Test Case Imports](#Test-Case-Imports) to know the prerequisites for the present test. + +- The [Expected Results](#Expected-Results) section lists the material that will be used to assess the fulfilment of capabilities. + +- :zap: This is a test-driven process: refer to the [Validation Criteria](#Validation-Criteria) to understand what is required by the test :zap: + +## Itemised Roots +The Test instruction addresses the import and export of the following IFC Entities & Concept Templates: + +
IFC Entities +These entities represent a test-specific subset of the wider AbRV_Ex exchange and the overall AbRV MVD. **The scope of the test shall not be used as a definitive scope of the exchange, or of the entire MVD.** + + +- Model setup + - *IfcProject* + - *IfcRepresentationContext* + - *IfcMapConversion* + - *IfcProjectedCRS* + - *IfcUnitAssignment* +- Spatial structure + - *IfcSite* + - *IfcRoad* + +- Alignment + + - *IfcAlignment* + - *IfcAlignmentHorizontal* + - *IfcAlignmentVertical* + - *IfcAlignmentSegment* + - *IfcAlignmentHorizontalSegment* + - *IfcAlignmentVerticalSegment* + - *IfcCompositeCurve* + - *IfcGradientCurve* + - *IfcCurveSegment* + - *IfcLine* + - *IfcCircle* + +
+ +
Concept Templates + + +These concept templates represent a test-specific subset of the wider AbRV_Ex exchange and the overall AbRV MVD, that must be correctly exported to meet the validation criteria. **The scope of the test shall not be used as a definitive scope of the exchange, or of the entire MVD.** + +- Project Context + - *Project Units* + - *Project Representation Context* + - *Project Global Positioning* + - *Project Global Positioning* +- Object Composition + - *Alignment Decomposition* + - *Spatial Decomposition* +- Object Connectivity + - *Spatial Containment* + +- Product Shape + - Product Geometric Representation + - *Alignment Geometry* + - *Alignment Geometry Gradient* + +
+ +## Model Dataset + +This test case utilises the dataset collected in the Dataset folder and summarised in the table below. **For more details on each item see [Dataset description](Dataset/README.md).** + +| Filename | Type (format) | Description | +| ------------------------------------------------------------ | ------------- | -------------------------------------------- | +| [HorizontalAlignmentParameters](Dataset/HorizontalAlignmentParameters.csv) | csv | Alignment parameters for horizontal segments | +| [VerticalAlignmentParameters](Dataset/VerticalAlignmentParameters.csv) | csv | Alignment parameters for vertical segments | +| [Testi_101_ml](Dataset/Testi_101_ml.xml) | xml | LandXML representation of the alignment | + +## Test Case Imports + +Test instructions are defined with a modular approach to reduce repetition of validation criteria and test content, and improve vendors ability to solve issues and bugs. therefore this test instruction *imports/reuses* the following Test instructions and entities with the relevant associated validation criteria. + +No test cases are imported for this test case. All necessary data and criteria are included. + +## Expected Results + +For certification of capabilities the only source will be: + +- n. 1 IFC file containing the information as requested. The file shall be named using the following syntax: `MVDCode`-`ExchangeCode`-`TestCode`-`SoftwareVendor`.`ifc` (Example: `IFC4.3_AbRV-E2b-ASTPC-AmazingSoft.ifc`) + +Considering the aim of this test, other **optional** results, not subject to the bSI certification process, yet usefull to illustrate test results are: +- Screen-shot of a planar view and a "long section" similar to the provided examples +- CSV export of the horizontal and vertical alignment segment parameters + +--- + +## Validation criteria + +:zap: For this test case to be considered passed **all capabilities listed in this section**, and **the ones of pre-required tests** shall be verified, with no exception. :zap: + +### General + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | ------------------------------------------------------------ | ------------------------------------------------------------ | -------------------------- | ---------------------- | +| GENE_00 | All validation criteria of precondition's tests shall be verified | | na | na | +| GENE_01 | All requested entities (and attributes) exist in file | As per Entities Table. See [Dataset description](Dataset/README.md) | na | na | + +### Road alignment + +**Acceptance criteria**: For the **Railway alignment (without cant)** capability, the validation procedure must verify that **all** the following validation criteria are satisfied. + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | -------------------------------------------------------- | ---------------------------------------------- | -------------------------- | ---------------------- | +| SITE_00 | All IfcAlignment shall always be contained in an IfcSite | | | Spatial Containment | +| ALIG_00 | Alignment layout structure is verified | See steps | | Alignment Layout | +| ALIG_01 | Number of alignments contained in file | [1] | | | +| ALIG_02 | Parameters of alignment segments are verified | As per Alignment Table | | | +| ALIG_03 | Alignment geometric compliance is verified | As per Alignment geometric compliance document | | | + +
ALIG_00 steps + + + +| **STEP ID** | **STEP** | +| ----------- | ------------------------------------------------------------ | +| ALIG_00.1 | Each IfcAlignment must nest exactly 1 IfcAlignmentHorizontal | +| ALIG_00.2 | Each IfcAlignment must nest at most 1 IfcAlignmentVertical | +| ALIG_00.3 | Each IfcAlignment must nest exactly 1 IfcAlignmentVertical | +| ALIG_00.6 | Each IfcAlignmentHorizontal must be nested only by 1 IfcAlignment | +| ALIG_00.7 | Each IfcAlignmentVertical must be nested only by 1 IfcAlignment | +| ALIG_00.9 | Each IfcAlignment must nest only the following entities: IfcAlignmentHorizontal, IfcAlignmentVertical | +| ALIG_00.10 | Each IfcAlignmentHorizontal nests a list of IfcAlignmentSegment, each of which has DesignParameters typed as IfcAlignmentHorizontalSegment | +| ALIG_00.11 | Each IfcAlignmentVertical nests a list of IfcAlignmentSegment, each of which has DesignParameters typed as IfcAlignmentVerticalSegment | + +
+ +### Spatial (De)Composition + + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | --------------------------------- | ------------------------------------------------------------ | -------------------------- | ---------------------- | +| SDEC_01 | Spatial decomposition is verified | As per Spatial (De)Composition Table. See [Dataset description](Dataset/README.md) | na | Spatial Decomposition | + +> **Acceptance criteria**: For the **Spatial decomposition** capability, the validation procedure must verify that a Parent Element of the requested type aggregates (via `IfcRelAggregates`) exactly a given number of Child Elements of the requested type, no more and no less. + +
SDEC_01 details: Spatial decomposition is verified + + + +> - Given a set of elements taken from the [Spatial (De)Composition Table](Dataset/README.md#Dataset/README.md#spatial-decomposition-table) +> - Then the Parent Element, and optionally the Parent Element Type, exists +> - And the Parent Element must aggregate at least a number within [MinSize..MaxSize] of the requested Child Element + +
+ +### Spatial Containment + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | ------------------------------- | -------------------------------- | -------------------------- | ---------------------- | +| SCON_01 | Spatial containment is verified | As per Spatial Containment Table | na | Spatial Containment | + +> **Acceptance criteria**: For the **Spatial containment** capability, the validation procedure must verify that a Spatial Element of the requested type contains (via `IfcRelContainedInSpatialStructure`) exactly a given number of Elements of the requested type, no more and no less. + +
SCON_01 details: Spatial containment is verified + + + +> - Given a set of elements taken from the [Spatial Containment Table](Dataset/README.md#Spatial-Containment-Table) +> - Then the Spatial Element, and optionally the Spatial Element Type, exists +> - And the Spatial Element must contain at least a number within [MinSize..MaxSize] of the requested Element + +
+ +### Product geometric representation + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | ------------------------------------------------ | --------------------------------------------- | -------------------------- | ----------------------------------------------------- | +| PREP_01 | Geometric representation of products is verified | As per Product Geometric Representation Table | | Product Geometric Representation and its subtemplates | + +> **Acceptance criteria**: For the **Group Geometric Representation** capability, the validation procedure must verify that a Product of the requested type (and optionally a requested name) has an IfcShapeRepresentation with the requested Representation Identifier, Representation Type and Items. + +
PREP_01 details: Geometric representation of products is verified + + + +> - Given a set of products taken from the [Product Geometric Representation Table](Dataset/README.md#Product-Geometric-Representation-Table) +> - Then the Product, and optionally the Product Type, exists +> - And the Product must have an IfcShapeRepresentation (via IfcProductDefinitionShape) with the requested Representation Identifier, Representation Type and Items. + +
+ +### Product placement + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | ------------------------------------------------------------ | ------------------------------ | -------------------------- | ------------------------------ | +| PPLA_01 | Placement of products is verified | As per Product Placement Table | | Product Placement subtemplates | +| PPLA_02 | For a product that has ObjectPlacement as IfcLinearPlacement, the CartesianPosition of IfcLinearPlacement shall be available | depends on cases | | Product Linear Placement | + +> **Acceptance criteria**: For the **Product Placement** capability, the validation procedure must verify that a Product of the requested type (and optionally a requested name) has the requested Object Placement, and optionally the Object Placement has PlacementRelTo reference to the Object Placement of Relative Placement Product with requested Relative Placement Product Type and Relative Placement Product Name. + +
PPLA_01 details: Placement of products is verified + + + +> - Given a set of products taken from the [Product Geometric Representation Table](#Product-Geometric-Representation-Table) +> - Then the Product with Product Type and Product Name, exists +> - And the Product must have Object Placement, and the Object Placement has PlacementRelTo reference to the ObjectPlacement of Relative Placement Product with requested Relative Placement Product Type and Relative Placement Product Name. + +
+ +### Project Setup + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | ----------------------------------------------- | -------------------- | -------------------------- | -------------------------- | +| ORIG_01 | Origin of Coordinate System is set as requested | [(0., 0., 0.)] | | Project Global Positioning | +| ORIG_02 | True north is set as requested | [(0., 1., 0.)] | | Project Global Positioning | +| DIST_01 | Unit of measure for all distances | [meter] | | Project Units | +| ANGL_01 | Unit of measure all angles | [radian] | | Project Units | +| DIST_02 | Required precision for distances | [0,0001] | all alignment segments | na | +| ANGL_02 | Required precision for angles and slope | [0,000001] | | na | + +### Project global positioning + +
Click to expand +> **Acceptance criteria**: For the **Project global positioning** capability, the validation procedure must verify that there is an IfcMapConversion with the given parameters associated with the IfcGeometricRepresentationContext (via `HasCoordinateOperation`). Furthermore, the IfcMapConversion shall have an association with an IfcProjectedCRS (via `HasCoordinateOperation`) with the given parameters. + + + +| Element | Attribute | Value | Comment | +| ---------------- | ---------------- | --------- | ------- | +| IfcMapConversion | Eastings | 24474600 | | +| IfcMapConversion | Northings | 6655000 | | +| IfcMapConversion | OrthogonalHeight | 0 | | +| IfcMapConversion | XAxisAbscissa | 1 | | +| IfcMapConversion | XAxisOrdinate | 0 | | +| IfcMapConversion | Scale | 1 | | +| IfcProjectedCRS | Name | EPSG:3878 | | +| IfcProjectedCRS | GeodeticDatum | EPSG:6258 | | +| IfcProjectedCRS | VerticalDatum | EPSG:3900 | | + +
diff --git a/E1a-ARSE/ALIN05/Dataset/Horizontal.PNG b/E1a-ARSE/ALIN05/Dataset/Horizontal.PNG new file mode 100644 index 0000000..9dad2a5 Binary files /dev/null and b/E1a-ARSE/ALIN05/Dataset/Horizontal.PNG differ diff --git a/E1a-ARSE/ALIN05/Dataset/HorizontalAlignmentParameters.csv b/E1a-ARSE/ALIN05/Dataset/HorizontalAlignmentParameters.csv new file mode 100644 index 0000000..c255850 --- /dev/null +++ b/E1a-ARSE/ALIN05/Dataset/HorizontalAlignmentParameters.csv @@ -0,0 +1,10 @@ +Name;Type;StartPointX;StartPointY;StartDirection;StartRadius;EndRadius;Length;Type +H1;IfcAlignmentHorizontalSegment;145685,855172;6591370,14247;3,81786017386422;0;0;47,36403;LINE +H2;IfcAlignmentHorizontalSegment;145648,91529;6591340,497969;3,81786015919453;0;0;84,45946;CLOTHOID +H3;IfcAlignmentHorizontalSegment;145587,393864;6591282,917242;4,04612898397448;185;185;137,211623;CIRCULARARC +H4;IfcAlignmentHorizontalSegment;145548,355486;6591154,637666;4,78781344986031;185;185;59,594595;CLOTHOID +H5;IfcAlignmentHorizontalSegment;145559,177136;6591096,103693;4,94887976098661;0;0;55,65383;CLOTHOID +H6;IfcAlignmentHorizontalSegment;145569,732915;6591041,507035;4,81233958697448;-203,799988;-203,799988;25,757113;CIRCULARARC +H7;IfcAlignmentHorizontalSegment;145570,678864;6591015,784448;4,68595602013852;-203,799988;-203,799988;125,614636;CLOTHOID +H8;IfcAlignmentHorizontalSegment;145541,922395;6590894,049604;4,37777593581732;0;0;118,881381;CLOTHOID +H9;IfcAlignmentHorizontalSegment;145505,510693;6590780,90873;4,44754181497448;851,999999;851,999999;2,84745;CIRCULARARC diff --git a/E1a-ARSE/ALIN05/Dataset/README.md b/E1a-ARSE/ALIN05/Dataset/README.md new file mode 100644 index 0000000..c4890db --- /dev/null +++ b/E1a-ARSE/ALIN05/Dataset/README.md @@ -0,0 +1,122 @@ +## Model Dataset + +- - This test case utilises the following dataset: + - One alignment layout (no geometric representation is required) + - The alignment is composed of one horizontal alignment layout and one vertical alignment layout + - The horizontal layout has the following sequences of elements: + + - Line => Clothoid => Circular arc (cw) => Clothoid => Clothoid => Circular arc (ccw) => Clothoid => Clothoid => Circular arc (cw) + - The vertical layout has the following sequences of elements: + + - Line => Parabolic arc => Line + - Line => Parabolic arc => Parabolic arc => Line + - Line => Line => Line => ... + + +| Filename | Description | +| ------------------------------------------------------------ | --------------------------------------------- | +| [HorizontalAlignmentParameters](./HorizontalAlignmentParameters.csv) | Parameters for the horizontal segments as csv | +| [VerticalAlignmentParameters](./VerticalAlignmentParameters.csv) | Parameters for the vertical segments as csv | +| [LandXML](./T616AAC0.xml) | LandXML-file representing the alignment | + +## Dataset specification + +### Entities table + +| **Element** | **Attribute** | **Value** | **Notes** | +| ---------------------- | ------------- | ----------- | --------- | +| IfcProject | Name | Alin05 | | +| IfcSite | Name | Alin05.Site | | +| IfcAlignment | Name | A1 | | +| IfcRoad | Name | Alin05.Road | | +| IfcAlignmentHorizontal | Name | AH1 | | +| IfcAlignmentVertical | Name | AV1 | | + +### Horizontal segments table + +Horizontal segments nested into AH1 in the following order: + +| Entity | PredefinedType | Name | Start Point X | Start Point Y | Start Direction | Start Radius Of Curvature | End Radius Of Curvature | Segment Length | +| ----------------------------- | -------------- | ---- | ------------- | ------------- | --------------- | ------------------------- | ----------------------- | -------------- | +| IfcAlignmentHorizontalSegment | LINE | H1 | 145685,8552 | 6591370,142 | 3,817860174 | 0 | 0 | 47,36403 | +| IfcAlignmentHorizontalSegment | CLOTHOID | H2 | 145648,9153 | 6591340,498 | 3,817860159 | 0 | 185 | 84,45946 | +| IfcAlignmentHorizontalSegment | CIRCULARARC | H3 | 145587,3939 | 6591282,917 | 4,046128984 | 185 | 185 | 137,211623 | +| IfcAlignmentHorizontalSegment | CLOTHOID | H4 | 145548,3555 | 6591154,638 | 4,78781345 | 185 | 0 | 59,594595 | +| IfcAlignmentHorizontalSegment | CLOTHOID | H5 | 145559,1771 | 6591096,104 | 4,948879761 | 0 | -203,799988 | 55,65383 | +| IfcAlignmentHorizontalSegment | CIRCULARARC | H6 | 145569,7329 | 6591041,507 | 4,812339587 | -203,799988 | -203,799988 | 25,757113 | +| IfcAlignmentHorizontalSegment | CLOTHOID | H7 | 145570,6789 | 6591015,784 | 4,68595602 | -203,799988 | 0 | 125,614636 | +| IfcAlignmentHorizontalSegment | CLOTHOID | H8 | 145541,9224 | 6590894,05 | 4,377775936 | 0 | 851,999999 | 118,881381 | +| IfcAlignmentHorizontalSegment | CIRCULARARC | H9 | 145505,5107 | 6590780,909 | 4,447541815 | 851,999999 | 851,999999 | 2,84745 | + +### Vertical segments table + +Vertical segments nested into AV1 in the following order: + +| Entity | PredefinedType | Name | Start Dist Along | Horizontal Length | Start Height | Start Gradient | End Gradient | RadiusOfCurvature | +| --------------------------- | ---------------- | ---- | ---------------- | ----------------- | ------------ | -------------- | ------------ | ----------------- | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V1 | 85 | 1,41860495 | 15,82 | 0,009739982 | 0,009739982 | 0 | +| IfcAlignmentVerticalSegment | PARABOLICARC | V2 | 86,41860495 | 20,6264881 | 15,83381719 | 0,009739982 | 0,023047408 | 1549,998375 | +| IfcAlignmentVerticalSegment | PARABOLICARC | V3 | 107,0450938 | 30,9389625 | 16,17196156 | 0,023047408 | 0,016859621 | -5000,004241 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V4 | 137,9840563 | 66,893377 | 16,78930258 | 0,016859621 | 0,016859621 | 0 | +| IfcAlignmentVerticalSegment | PARABOLICARC | V5 | 204,8774333 | 12,6667695 | 17,91709954 | 0,016859621 | 0,012637385 | -3000,015228 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V6 | 217,5442028 | 4,4678966 | 18,10391542 | 0,012637385 | 0,012637385 | 0 | +| IfcAlignmentVerticalSegment | PARABOLICARC | V7 | 222,0120994 | 13,9676113 | 18,16037796 | 0,012637385 | 0,017293222 | 3000,021522 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V8 | 235,9797107 | 29,55312205 | 18,36940751 | 0,017293222 | 0,017293222 | 0 | +| IfcAlignmentVerticalSegment | PARABOLICARC | V9 | 265,5328327 | 17,4384826 | 18,88047622 | 0,017293222 | 0,023106068 | 2999,990831 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V10 | 282,9713153 | 12,9163156 | 19,23272738 | 0,023106068 | 0,023106068 | 0 | +| IfcAlignmentVerticalSegment | PARABOLICARC | V11 | 295,8876309 | 64,5895582 | 19,53117264 | 0,023106068 | 0,045000824 | 2950,001197 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V12 | 360,4771891 | 0,0557456 | 21,73066968 | 0,045000824 | 0,045000824 | 0 | +| IfcAlignmentVerticalSegment | PARABOLICARC | V13 | 360,5329347 | 42,5278306 | 21,73317828 | 0,045000824 | 0,030824882 | -3000,000288 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V14 | 403,0607653 | 126,9386947 | 23,34552968 | 0,030824882 | 0,030824882 | 0 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V15 | 529,99946 | 10 | 27,2584 | 0,028668 | 0,028668 | 0 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V16 | 539,99946 | 10 | 27,54508 | 0,027292 | 0,027292 | 0 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V17 | 549,99946 | 10 | 27,818 | 0,026832 | 0,026832 | 0 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V18 | 559,99946 | 10 | 28,08632 | 0,026325 | 0,026325 | 0 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V19 | 569,99946 | 10 | 28,34957 | 0,02537 | 0,02537 | 0 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V20 | 579,99946 | 10 | 28,60327 | 0,020813 | 0,020813 | 0 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V21 | 589,99946 | 10 | 28,8114 | 0,020176 | 0,020176 | 0 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V22 | 599,99946 | 10 | 29,01316 | 0,019498 | 0,019498 | 0 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V23 | 609,99946 | 10 | 29,20814 | 0,018781 | 0,018781 | 0 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V24 | 619,99946 | 10 | 29,39595 | 0,018022 | 0,018022 | 0 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V25 | 629,99946 | 10 | 29,57617 | 0,017226 | 0,017226 | 0 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V26 | 639,99946 | 10 | 29,74843 | 0,01639 | 0,01639 | 0 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V27 | 649,99946 | 7,384658 | 29,91233 | 0,015674389 | 0,015674389 | 0 | + +### Spatial (De)Composition table + +| **Parent Element** | **Parent Element Type** | **Parent Element Name** | **MinSize** | **MaxSize** | **Child Element** | **Child Element Type** | **Child Element Name** | +| ------------------ | ----------------------- | ----------------------- | ----------- | ----------- | ----------------- | ---------------------- | ---------------------- | +| IfcProject | | Alin05 | 1 | 1 | IfcSite | | Alin05.Site | +| IfcSite | | Alin05.Site | 1 | 1 | IfcRoad | | Allin05.Road | + +### Spatial Containment table + +| **Spatial Element** | **Spatial Element Type** | **Spatial Element Name** | **MinSize** | **MaxSize** | **Element** | **Element Type** | **Element Name** | +| ------------------- | ------------------------ | ------------------------ | ----------- | ----------- | ------------ | ---------------- | ---------------- | +| IfcSite | | Alin05.Site | 1 | 1 | IfcAlignment | | A1 | + +### Product Geometric Representation table + +| **Product** | **Product Type** | **Product Name** | **Representation Identifier** | **Representation Type** | **Items** | +| ---------------------- | ---------------- | ---------------- | ----------------------------- | ----------------------- | ------------------- | +| IfcAlignment | na | A1 | Axis | Curve3D | 1 IfcGradientCurve | +| IfcAlignmentHorizontal | na | AH1 | Axis | Curve2D | 1 IfcCompositeCurve | +| IfcAlignmentVertical | na | AV1 | Axis | Curve2D | 1 IfcGradientCurve | + +### Product Placement table + +| **Product** | **Product Type** | **Product Name** | **Object Placement** | Relative Placement Product | Relative Placement Product Type | Relative Placement Product Name | +| ------------ | ---------------- | ---------------- | -------------------- | -------------------------- | ------------------------------- | ------------------------------- | +| IfcAlignment | | A1 | IfcLocalPlacement | IfcSite | na | Alin05.Site | + +## Drawings (Visualisations) + +The following Drawings and visualisations describe the test case dataset to be modelled and certified. + +| Filename | Description | +| ---------------------------------- | -------------------------------------------- | +| [Horizontal](./Horizontal.PNG) | Planar view of the horizontal alignment | +| [Vertical](./T616AAC0_profile.pdf) | Long section (profile) view of the alignment | + + +## diff --git a/E1a-ARSE/ALIN05/Dataset/T616AAC0.ifc b/E1a-ARSE/ALIN05/Dataset/T616AAC0.ifc new file mode 100644 index 0000000..1f85899 --- /dev/null +++ b/E1a-ARSE/ALIN05/Dataset/T616AAC0.ifc @@ -0,0 +1,379 @@ +ISO-10303-21; +HEADER; +FILE_DESCRIPTION(('ViewDefinition [Ifc4NotAssigned]'),'2;1'); +FILE_NAME( +/* name */ 'C:\\Users\\lars\\Documents\\Projekt\\IFCInfra\\Tests\\T616AAC0.ifc', +/* time_stamp */ '2022-02-11T14:31:20', +/* author */ ('lars'), +/* organization */ ('Unknown'), +/* preprocessor_version */ 'ggIfcConverter v0.0.5.0 by Geometry Gym Pty Ltd built 2022-02-10T07:15:39', +/* originating_system */ 'ggIFCConverter v0.0.5.0 - Converter by Geometry Gym Pty Ltd', +/* authorization */ 'None'); + +FILE_SCHEMA (('IFC4X3_RC4')); +ENDSEC; + +DATA; +#1= IFCCARTESIANPOINT((0.0,0.0,0.0)); +#2= IFCDIRECTION((1.0,0.0,0.0)); +#3= IFCDIRECTION((0.0,1.0,0.0)); +#4= IFCDIRECTION((0.0,0.0,1.0)); +#5= IFCAXIS2PLACEMENT3D(#1,$,$); +#6= IFCCARTESIANPOINT((0.0,0.0)); +#7= IFCAXIS2PLACEMENT2D(#6,$); +#8= IFCSIUNIT(*,.LENGTHUNIT.,$,.METRE.); +#9= IFCSIUNIT(*,.AREAUNIT.,$,.SQUARE_METRE.); +#10= IFCSIUNIT(*,.VOLUMEUNIT.,$,.CUBIC_METRE.); +#11= IFCSIUNIT(*,.PLANEANGLEUNIT.,$,.RADIAN.); +#12= IFCUNITASSIGNMENT((#8,#11)); +#13= IFCPROJECT('1Tv021Gck$7ughfYxwF4yI',$,'FSE62','Haggvik',$,$,$,(#62),#12); +#14= IFCCARTESIANPOINT((0.0,0.0,0.0)); +#15= IFCAXIS2PLACEMENT3D(#14,$,$); +#16= IFCLOCALPLACEMENT($,#15); +#17= IFCSITE('3T1iwTWw_7C9gXxbplesA6',$,'FSE62',$,$,#16,$,$,$,$,$,$,$,$); +#18= IFCRELAGGREGATES('0r0HqCeSODTtdmcoweUKiT',$,$,$,#13,(#17)); +#19= IFCLOCALPLACEMENT(#16,#5); +#20= IFCALIGNMENT('1qKoYQmefwILLh4ZsI6LxI',$,'BH FSK06 T 616 - MCL0',$,$,#19,#349,$); +#21= IFCRELCONTAINEDINSPATIALSTRUCTURE('0nVagFNqT69QpkPBmysnEN',$,'Site','Site Container for Elements',(#20),#17); +#22= IFCCARTESIANPOINT((0.0,0.0,0.0)); +#23= IFCAXIS2PLACEMENT3D(#22,#4,#2); +#25= IFCALIGNMENTHORIZONTAL('0eCZ0W41XqosthTwW3nHMK',$,$,$,$,#19,#119); +#26= IFCRELNESTS('3LMExpFLX4iQsPL7OaDfQh',$,$,$,#20,(#25,#147)); +#27= IFCCARTESIANPOINT((145685.855172,6591370.14247)); +#28= IFCALIGNMENTHORIZONTALSEGMENT($,$,#27,3.81786017386422,0.0,0.0,47.36403,$,.LINE.); +#29= IFCALIGNMENTSEGMENT('0fFLjTpDOX1QYJYWSPuaEh',$,$,$,$,#19,#68,#28); +#30= IFCRELNESTS('305zaPLUj2JfD1ZD3UQPAH',$,$,$,#25,(#29,#33,#36,#39,#42,#45,#48,#51,#54)); +#31= IFCCARTESIANPOINT((145648.91529,6591340.497969)); +#32= IFCALIGNMENTHORIZONTALSEGMENT($,$,#31,3.81786015919453,0.0,185.0,84.45946,$,.CLOTHOID.); +#33= IFCALIGNMENTSEGMENT('3l1vipy03BwwW_WnKuy0xn',$,$,$,$,#19,#74,#32); +#34= IFCCARTESIANPOINT((145587.393864,6591282.917242)); +#35= IFCALIGNMENTHORIZONTALSEGMENT($,$,#34,4.04612898397448,185.0,185.0,137.211623,$,.CIRCULARARC.); +#36= IFCALIGNMENTSEGMENT('1kDteeSkka4ZRXjPeCwS4$',$,$,$,$,#19,#80,#35); +#37= IFCCARTESIANPOINT((145548.355486,6591154.637666)); +#38= IFCALIGNMENTHORIZONTALSEGMENT($,$,#37,4.78781344986031,185.0,0.0,59.594595,$,.CLOTHOID.); +#39= IFCALIGNMENTSEGMENT('1dhuWBbsUf660FT84XQd$R',$,$,$,$,#19,#86,#38); +#40= IFCCARTESIANPOINT((145559.177136,6591096.103693)); +#41= IFCALIGNMENTHORIZONTALSEGMENT($,$,#40,4.94887976098661,0.0,-203.799988,55.65383,$,.CLOTHOID.); +#42= IFCALIGNMENTSEGMENT('0TjXmuzRqJQbl7$1zvHNM0',$,$,$,$,#19,#92,#41); +#43= IFCCARTESIANPOINT((145569.732915,6591041.507035)); +#44= IFCALIGNMENTHORIZONTALSEGMENT($,$,#43,4.81233958697448,-203.799988,-203.799988,25.757113,$,.CIRCULARARC.); +#45= IFCALIGNMENTSEGMENT('2LV6BwicdV_X3HMaqU2uph',$,$,$,$,#19,#98,#44); +#46= IFCCARTESIANPOINT((145570.678864,6591015.784448)); +#47= IFCALIGNMENTHORIZONTALSEGMENT($,$,#46,4.68595602013852,-203.799988,0.0,125.614636,$,.CLOTHOID.); +#48= IFCALIGNMENTSEGMENT('03KECuLeEdyOHhsPBo52s8',$,$,$,$,#19,#104,#47); +#49= IFCCARTESIANPOINT((145541.922395,6590894.049604)); +#50= IFCALIGNMENTHORIZONTALSEGMENT($,$,#49,4.37777593581732,0.0,851.999999,118.881381,$,.CLOTHOID.); +#51= IFCALIGNMENTSEGMENT('1TlIJ8w4HdkkZ$zAwmVOT5',$,$,$,$,#19,#110,#50); +#52= IFCCARTESIANPOINT((145505.510693,6590780.90873)); +#53= IFCALIGNMENTHORIZONTALSEGMENT($,$,#52,4.44754181497448,851.999999,851.999999,2.84745,$,.CIRCULARARC.); +#54= IFCALIGNMENTSEGMENT('1SwrZzgdyr8eBKAjrC6oJA',$,$,$,$,#19,#116,#53); +#55= IFCAXIS2PLACEMENT2D(#27,#56); +#56= IFCDIRECTION((-0.77991425,-0.62588638)); +#57= IFCCARTESIANPOINT((0.0,0.0)); +#58= IFCDIRECTION((1.0,0.0)); +#59= IFCVECTOR(#58,1.0); +#60= IFCLINE(#57,#59); +#61= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#55,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(47.3640298),#60); +#62= IFCGEOMETRICREPRESENTATIONCONTEXT($,'Model',3,0.00001,#64,#65); +#63= IFCCARTESIANPOINT((0.0,0.0,0.0)); +#64= IFCAXIS2PLACEMENT3D(#63,$,$); +#65= IFCDIRECTION((0.0,1.0)); +#66= IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Axis','Model',*,*,*,*,#62,$,.GRAPH_VIEW.,$); +#67= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#61)); +#68= IFCPRODUCTDEFINITIONSHAPE($,$,(#67)); +#69= IFCAXIS2PLACEMENT2D(#31,#70); +#70= IFCDIRECTION((-0.77991426,-0.62588636)); +#71= IFCCLOTHOID(#7,125.00000003); +#72= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#69,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(84.4594595),#71); +#73= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#72)); +#74= IFCPRODUCTDEFINITIONSHAPE($,$,(#73)); +#75= IFCAXIS2PLACEMENT2D(#34,#76); +#76= IFCDIRECTION((-0.61805015,-0.78613867)); +#77= IFCCIRCLE(#7,185.0); +#78= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#75,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(137.2116232),#77); +#79= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#78)); +#80= IFCPRODUCTDEFINITIONSHAPE($,$,(#79)); +#81= IFCAXIS2PLACEMENT2D(#37,#82); +#82= IFCDIRECTION((0.07535298,-0.99715692)); +#83= IFCCLOTHOID(#7,-105.000000004762); +#84= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#81,IFCPARAMETERVALUE(-59.5945946),IFCNONNEGATIVELENGTHMEASURE(59.5945946),#83); +#85= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#84)); +#86= IFCPRODUCTDEFINITIONSHAPE($,$,(#85)); +#87= IFCAXIS2PLACEMENT2D(#40,#88); +#88= IFCDIRECTION((0.23429253,-0.97216614)); +#89= IFCCLOTHOID(#7,-106.50000004843); +#90= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#87,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(55.6538305),#89); +#91= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#90)); +#92= IFCPRODUCTDEFINITIONSHAPE($,$,(#91)); +#93= IFCAXIS2PLACEMENT2D(#43,#94); +#94= IFCDIRECTION((0.09978427,-0.9950091)); +#95= IFCCIRCLE(#7,203.799988); +#96= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#93,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(-0.126384271668585),#95); +#97= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#96)); +#98= IFCPRODUCTDEFINITIONSHAPE($,$,(#97)); +#99= IFCAXIS2PLACEMENT2D(#46,#100); +#100= IFCDIRECTION((-0.02642988,-0.99965067)); +#101= IFCCLOTHOID(#7,160.000816780929); +#102= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#99,IFCPARAMETERVALUE(-125.6146363),IFCNONNEGATIVELENGTHMEASURE(125.6146363),#101); +#103= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#102)); +#104= IFCPRODUCTDEFINITIONSHAPE($,$,(#103)); +#105= IFCAXIS2PLACEMENT2D(#49,#106); +#106= IFCDIRECTION((-0.3284037,-0.94453746)); +#107= IFCCLOTHOID(#7,318.256086779962); +#108= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#105,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(118.8813813),#107); +#109= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#108)); +#110= IFCPRODUCTDEFINITIONSHAPE($,$,(#109)); +#111= IFCAXIS2PLACEMENT2D(#52,#112); +#112= IFCDIRECTION((-0.26176177,-0.96513252)); +#113= IFCCIRCLE(#7,851.999999); +#114= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#111,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(2.8474498),#113); +#115= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#114)); +#116= IFCPRODUCTDEFINITIONSHAPE($,$,(#115)); +#117= IFCCOMPOSITECURVE((#61,#72,#78,#84,#90,#96,#102,#108,#114),.U.); +#118= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#117)); +#119= IFCPRODUCTDEFINITIONSHAPE($,$,(#118)); +#120= IFCALIGNMENTVERTICALSEGMENT($,$,85.0,1.41860494999992,15.82,0.00973998216308436,0.00973998216308436,$,.CONSTANTGRADIENT.); +#121= IFCALIGNMENTVERTICALSEGMENT($,$,86.4186049499999,20.6264881,15.8338171869095,0.00973998216308436,0.0230474077876794,1549.99837548427,.PARABOLICARC.); +#122= IFCALIGNMENTVERTICALSEGMENT($,$,107.04509375,30.9389625,16.1719615573674,0.0230474077876794,0.0168596205365767,-5000.00424133629,.PARABOLICARC.); +#123= IFCALIGNMENTVERTICALSEGMENT($,$,137.98405625,66.8933770000001,16.7893025837727,0.0168596205365767,0.0168596205365767,$,.CONSTANTGRADIENT.); +#124= IFCALIGNMENTVERTICALSEGMENT($,$,204.87743325,12.6667695,17.9170995364029,0.0168596205365767,0.0126373854679485,-3000.01522750735,.PARABOLICARC.); +#125= IFCALIGNMENTVERTICALSEGMENT($,$,217.54420275,4.4678965999999,18.1039154244026,0.0126373854679485,0.0126373854679485,$,.CONSTANTGRADIENT.); +#126= IFCALIGNMENTVERTICALSEGMENT($,$,222.01209935,13.9676113,18.1603779559677,0.0126373854679485,0.0172932224996773,3000.02152240574,.PARABOLICARC.); +#127= IFCALIGNMENTVERTICALSEGMENT($,$,235.97971065,29.55312205,18.369407505,0.0172932224996773,0.0172932224996773,$,.CONSTANTGRADIENT.); +#128= IFCALIGNMENTVERTICALSEGMENT($,$,265.5328327,17.4384826,18.8804762201707,0.0172932224996773,0.0231060677982796,2999.99083137358,.PARABOLICARC.); +#129= IFCALIGNMENTVERTICALSEGMENT($,$,282.9713153,12.9163156,19.2327273806274,0.0231060677982796,0.0231060677982796,$,.CONSTANTGRADIENT.); +#130= IFCALIGNMENTVERTICALSEGMENT($,$,295.8876309,64.5895582,19.5311726445849,0.0231060677982796,0.0450008244047686,2950.00119712944,.PARABOLICARC.); +#131= IFCALIGNMENTVERTICALSEGMENT($,$,360.4771891,0.0557456000001366,21.7306696834699,0.0450008244047686,0.0450008244047686,$,.CONSTANTGRADIENT.); +#132= IFCALIGNMENTVERTICALSEGMENT($,$,360.5329347,42.5278306,21.7331782814268,0.0450008244047686,0.0308248822338554,-3000.00028832373,.PARABOLICARC.); +#133= IFCALIGNMENTVERTICALSEGMENT($,$,403.0607653,126.9386947,23.3455296849532,0.0308248822338554,0.0308248822338554,$,.CONSTANTGRADIENT.); +#134= IFCALIGNMENTVERTICALSEGMENT($,$,529.99946,10.0,27.2584,0.0286679999999997,0.0286679999999997,$,.CONSTANTGRADIENT.); +#135= IFCALIGNMENTVERTICALSEGMENT($,$,539.99946,10.0,27.54508,0.0272920000000003,0.0272920000000003,$,.CONSTANTGRADIENT.); +#136= IFCALIGNMENTVERTICALSEGMENT($,$,549.99946,10.0,27.818,0.0268319999999999,0.0268319999999999,$,.CONSTANTGRADIENT.); +#137= IFCALIGNMENTVERTICALSEGMENT($,$,559.99946,10.0,28.08632,0.0263249999999999,0.0263249999999999,$,.CONSTANTGRADIENT.); +#138= IFCALIGNMENTVERTICALSEGMENT($,$,569.99946,10.0,28.34957,0.0253699999999998,0.0253699999999998,$,.CONSTANTGRADIENT.); +#139= IFCALIGNMENTVERTICALSEGMENT($,$,579.99946,10.0,28.60327,0.0208130000000001,0.0208130000000001,$,.CONSTANTGRADIENT.); +#140= IFCALIGNMENTVERTICALSEGMENT($,$,589.99946,10.0,28.8114,0.020176,0.020176,$,.CONSTANTGRADIENT.); +#141= IFCALIGNMENTVERTICALSEGMENT($,$,599.99946,10.0,29.01316,0.0194980000000001,0.0194980000000001,$,.CONSTANTGRADIENT.); +#142= IFCALIGNMENTVERTICALSEGMENT($,$,609.99946,10.0,29.20814,0.0187809999999999,0.0187809999999999,$,.CONSTANTGRADIENT.); +#143= IFCALIGNMENTVERTICALSEGMENT($,$,619.99946,10.0,29.39595,0.0180220000000002,0.0180220000000002,$,.CONSTANTGRADIENT.); +#144= IFCALIGNMENTVERTICALSEGMENT($,$,629.99946,10.0,29.57617,0.0172259999999998,0.0172259999999998,$,.CONSTANTGRADIENT.); +#145= IFCALIGNMENTVERTICALSEGMENT($,$,639.99946,10.0,29.74843,0.0163900000000002,0.0163900000000002,$,.CONSTANTGRADIENT.); +#146= IFCALIGNMENTVERTICALSEGMENT($,$,649.99946,7.38465799999994,29.91233,0.0156743887123817,0.0156743887123817,$,.CONSTANTGRADIENT.); +#147= IFCALIGNMENTVERTICAL('3yZID4z3LD1Q169TMHXNS9',$,'GCL0BH FSK06 T 616',$,$,#19,#347); +#148= IFCALIGNMENTSEGMENT('0Oz2vXYBnFQeKCpYLUInCA',$,$,$,$,#19,#181,#120); +#149= IFCRELNESTS('2B4aDb4$XDIA9eMNMVsOsk',$,$,$,#147,(#148,#150,#151,#152,#153,#154,#155,#156,#157,#158,#159,#160,#161,#162,#163,#164,#165,#166,#167,#168,#169,#170,#171,#172,#173,#174,#175)); +#150= IFCALIGNMENTSEGMENT('1FVHW310TC$8EwmI8ZOvzK',$,$,$,$,#19,#188,#121); +#151= IFCALIGNMENTSEGMENT('0vmaF4tqL2AxYtl1WwGjlg',$,$,$,$,#19,#195,#122); +#152= IFCALIGNMENTSEGMENT('2Y_b_GPi99ag_YmKfEAcE1',$,$,$,$,#19,#201,#123); +#153= IFCALIGNMENTSEGMENT('0cTpBx3CTDXf7Ga0_WuGUO',$,$,$,$,#19,#208,#124); +#154= IFCALIGNMENTSEGMENT('16PlGGFWT7ZhtAxP15DL9Z',$,$,$,$,#19,#214,#125); +#155= IFCALIGNMENTSEGMENT('3rhOV0RST8sg_$KPVceuMS',$,$,$,$,#19,#221,#126); +#156= IFCALIGNMENTSEGMENT('0EGpLYeWDEDwcg93ZEWbtC',$,$,$,$,#19,#227,#127); +#157= IFCALIGNMENTSEGMENT('3xk5NvLRr1Fxqy4DUiAvr7',$,$,$,$,#19,#234,#128); +#158= IFCALIGNMENTSEGMENT('1$4qk3FZ557ur2whBLMvpt',$,$,$,$,#19,#240,#129); +#159= IFCALIGNMENTSEGMENT('2nrrGm_dr6w8OwQNM$pjuJ',$,$,$,$,#19,#247,#130); +#160= IFCALIGNMENTSEGMENT('2qI4jYgTfA99unGS59jrcW',$,$,$,$,#19,#253,#131); +#161= IFCALIGNMENTSEGMENT('0fQzmPlJH0j9qUngDIS_gn',$,$,$,$,#19,#260,#132); +#162= IFCALIGNMENTSEGMENT('3Vf_IpZ1nEdQWbNIR9se5b',$,$,$,$,#19,#266,#133); +#163= IFCALIGNMENTSEGMENT('2RBYedQIzDaQy4fYsJd1KF',$,$,$,$,#19,#272,#134); +#164= IFCALIGNMENTSEGMENT('3idbhVgBDFBOsuRZzMmHc7',$,$,$,$,#19,#278,#135); +#165= IFCALIGNMENTSEGMENT('2xGprMiYj9LAbf1kLD8EN5',$,$,$,$,#19,#284,#136); +#166= IFCALIGNMENTSEGMENT('33cR$eeuLD$goDR6Cb7njT',$,$,$,$,#19,#290,#137); +#167= IFCALIGNMENTSEGMENT('3A_5iVdsr7Lg4rzwhQFNuu',$,$,$,$,#19,#296,#138); +#168= IFCALIGNMENTSEGMENT('2kWm0SYR94Jx4rvOW0Oq6g',$,$,$,$,#19,#302,#139); +#169= IFCALIGNMENTSEGMENT('2fXcw4EVj7Vw84m$cXpyyg',$,$,$,$,#19,#308,#140); +#170= IFCALIGNMENTSEGMENT('15opIWozD44AgdO2ccxWqO',$,$,$,$,#19,#314,#141); +#171= IFCALIGNMENTSEGMENT('0hKmt36IjFzQju$FM19J9T',$,$,$,$,#19,#320,#142); +#172= IFCALIGNMENTSEGMENT('2lBotrH$HAZQZnJSW2xESI',$,$,$,$,#19,#326,#143); +#173= IFCALIGNMENTSEGMENT('3v3_LX3fP0eB$G9ABpj8tP',$,$,$,$,#19,#332,#144); +#174= IFCALIGNMENTSEGMENT('0k3aRclTX3mBfN5kQbH_8z',$,$,$,$,#19,#338,#145); +#175= IFCALIGNMENTSEGMENT('1_Zh_6n0PD2ud7HcMKKXcP',$,$,$,$,#19,#344,#146); +#176= IFCCARTESIANPOINT((85.0,15.82)); +#177= IFCDIRECTION((0.99995257,0.00973952)); +#178= IFCAXIS2PLACEMENT2D(#176,#177); +#179= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#178,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(1.41867223798112),#60); +#180= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#179)); +#181= IFCPRODUCTDEFINITIONSHAPE($,$,(#180)); +#182= IFCCARTESIANPOINT((86.418605,15.833817)); +#183= IFCDIRECTION((0.99995257,0.00973952)); +#184= IFCAXIS2PLACEMENT2D(#182,#183); +#185= IFCPOLYNOMIALCURVE(#7,(0.0,1.0),(0.0,0.0,3.22580983E-04),$); +#186= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#184,IFCPARAMETERVALUE(15.0969565300265),IFCPARAMETERVALUE(20.6264881),#185); +#187= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#186)); +#188= IFCPRODUCTDEFINITIONSHAPE($,$,(#187)); +#189= IFCCARTESIANPOINT((107.045094,16.171962)); +#190= IFCDIRECTION((0.99973451,0.02304129)); +#191= IFCAXIS2PLACEMENT2D(#189,#190); +#192= IFCPOLYNOMIALCURVE(#7,(0.0,1.0),(0.0,0.0,-9.99999152E-05),$); +#193= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#191,IFCPARAMETERVALUE(-115.237136690204),IFCPARAMETERVALUE(30.9389625),#192); +#194= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#193)); +#195= IFCPRODUCTDEFINITIONSHAPE($,$,(#194)); +#196= IFCCARTESIANPOINT((137.984056,16.789303)); +#197= IFCDIRECTION((0.99985791,0.01685722)); +#198= IFCAXIS2PLACEMENT2D(#196,#197); +#199= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#198,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(66.9028834388362),#60); +#200= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#199)); +#201= IFCPRODUCTDEFINITIONSHAPE($,$,(#200)); +#202= IFCCARTESIANPOINT((204.877433,17.9171)); +#203= IFCDIRECTION((0.99985791,0.01685722)); +#204= IFCAXIS2PLACEMENT2D(#202,#203); +#205= IFCPOLYNOMIALCURVE(#7,(0.0,1.0),(0.0,0.0,-1.66665821E-04),$); +#206= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#204,IFCPARAMETERVALUE(-50.5791183397258),IFCPARAMETERVALUE(12.6667695),#205); +#207= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#206)); +#208= IFCPRODUCTDEFINITIONSHAPE($,$,(#207)); +#209= IFCCARTESIANPOINT((217.544203,18.103915)); +#210= IFCDIRECTION((0.99992016,0.01263638)); +#211= IFCAXIS2PLACEMENT2D(#209,#210); +#212= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#211,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(4.46825335514465),#60); +#213= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#212)); +#214= IFCPRODUCTDEFINITIONSHAPE($,$,(#213)); +#215= IFCCARTESIANPOINT((222.012099,18.160378)); +#216= IFCDIRECTION((0.99992016,0.01263638)); +#217= IFCAXIS2PLACEMENT2D(#215,#216); +#218= IFCPOLYNOMIALCURVE(#7,(0.0,1.0),(0.0,0.0,1.66665471E-04),$); +#219= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#217,IFCPARAMETERVALUE(37.9124283907832),IFCPARAMETERVALUE(13.9676113),#218); +#220= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#219)); +#221= IFCPRODUCTDEFINITIONSHAPE($,$,(#220)); +#222= IFCCARTESIANPOINT((235.979711,18.369408)); +#223= IFCDIRECTION((0.99985051,0.01729064)); +#224= IFCAXIS2PLACEMENT2D(#222,#223); +#225= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#224,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(29.5575407321688),#60); +#226= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#225)); +#227= IFCPRODUCTDEFINITIONSHAPE($,$,(#226)); +#228= IFCCARTESIANPOINT((265.532833,18.880476)); +#229= IFCDIRECTION((0.99985051,0.01729064)); +#230= IFCAXIS2PLACEMENT2D(#228,#229); +#231= IFCPOLYNOMIALCURVE(#7,(0.0,1.0),(0.0,0.0,1.66667176E-04),$); +#232= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#230,IFCPARAMETERVALUE(51.8795089439353),IFCPARAMETERVALUE(17.4384826),#231); +#233= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#232)); +#234= IFCPRODUCTDEFINITIONSHAPE($,$,(#233)); +#235= IFCCARTESIANPOINT((282.971315,19.232727)); +#236= IFCDIRECTION((0.99973316,0.0230999)); +#237= IFCAXIS2PLACEMENT2D(#235,#236); +#238= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#237,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(12.9197630881677),#60); +#239= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#238)); +#240= IFCPRODUCTDEFINITIONSHAPE($,$,(#239)); +#241= IFCCARTESIANPOINT((295.887631,19.531173)); +#242= IFCDIRECTION((0.99973316,0.0230999)); +#243= IFCAXIS2PLACEMENT2D(#241,#242); +#244= IFCPOLYNOMIALCURVE(#7,(0.0,1.0),(0.0,0.0,1.69491457E-04),$); +#245= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#243,IFCPARAMETERVALUE(68.162927665879),IFCPARAMETERVALUE(64.5895582),#244); +#246= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#245)); +#247= IFCPRODUCTDEFINITIONSHAPE($,$,(#246)); +#248= IFCCARTESIANPOINT((360.477189,21.73067)); +#249= IFCDIRECTION((0.998989,0.04495533)); +#250= IFCAXIS2PLACEMENT2D(#248,#249); +#251= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#250,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(0.0558020159410466),#60); +#252= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#251)); +#253= IFCPRODUCTDEFINITIONSHAPE($,$,(#252)); +#254= IFCCARTESIANPOINT((360.532935,21.733178)); +#255= IFCDIRECTION((0.998989,0.04495533)); +#256= IFCAXIS2PLACEMENT2D(#254,#255); +#257= IFCPOLYNOMIALCURVE(#7,(0.0,1.0),(0.0,0.0,-1.66666651E-04),$); +#258= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#256,IFCPARAMETERVALUE(-135.002486189111),IFCPARAMETERVALUE(42.5278306),#257); +#259= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#258)); +#260= IFCPRODUCTDEFINITIONSHAPE($,$,(#259)); +#261= IFCCARTESIANPOINT((403.060765,23.34553)); +#262= IFCDIRECTION((0.99952525,0.03081025)); +#263= IFCAXIS2PLACEMENT2D(#261,#262); +#264= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#263,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(126.998987264632),#60); +#265= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#264)); +#266= IFCPRODUCTDEFINITIONSHAPE($,$,(#265)); +#267= IFCCARTESIANPOINT((529.99946,27.2584)); +#268= IFCDIRECTION((0.99958933,0.02865623)); +#269= IFCAXIS2PLACEMENT2D(#267,#268); +#270= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#269,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(10.0041084271613),#60); +#271= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#270)); +#272= IFCPRODUCTDEFINITIONSHAPE($,$,(#271)); +#273= IFCCARTESIANPOINT((539.99946,27.54508)); +#274= IFCDIRECTION((0.99962778,0.02728184)); +#275= IFCAXIS2PLACEMENT2D(#273,#274); +#276= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#275,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(10.0037235730702),#60); +#277= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#276)); +#278= IFCPRODUCTDEFINITIONSHAPE($,$,(#277)); +#279= IFCCARTESIANPOINT((549.99946,27.818)); +#280= IFCDIRECTION((0.99964022,0.02682235)); +#281= IFCAXIS2PLACEMENT2D(#279,#280); +#282= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#281,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(10.0035991334319),#60); +#283= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#282)); +#284= IFCPRODUCTDEFINITIONSHAPE($,$,(#283)); +#285= IFCCARTESIANPOINT((559.99946,28.08632)); +#286= IFCDIRECTION((0.99965368,0.02631588)); +#287= IFCAXIS2PLACEMENT2D(#285,#286); +#288= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#287,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(10.0034644280119),#60); +#289= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#288)); +#290= IFCPRODUCTDEFINITIONSHAPE($,$,(#289)); +#291= IFCCARTESIANPOINT((569.99946,28.34957)); +#292= IFCDIRECTION((0.99967834,0.02536184)); +#293= IFCAXIS2PLACEMENT2D(#291,#292); +#294= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#293,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(10.003217666831),#60); +#295= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#294)); +#296= IFCPRODUCTDEFINITIONSHAPE($,$,(#295)); +#297= IFCCARTESIANPOINT((579.99946,28.60327)); +#298= IFCDIRECTION((0.99978348,0.02080849)); +#299= IFCAXIS2PLACEMENT2D(#297,#298); +#300= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#299,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(10.0021656703386),#60); +#301= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#300)); +#302= IFCPRODUCTDEFINITIONSHAPE($,$,(#301)); +#303= IFCCARTESIANPOINT((589.99946,28.8114)); +#304= IFCDIRECTION((0.99979653,0.02017189)); +#305= IFCAXIS2PLACEMENT2D(#303,#304); +#306= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#305,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(10.0020351477887),#60); +#307= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#306)); +#308= IFCPRODUCTDEFINITIONSHAPE($,$,(#307)); +#309= IFCCARTESIANPOINT((599.99946,29.01316)); +#310= IFCDIRECTION((0.99980997,0.01949429)); +#311= IFCAXIS2PLACEMENT2D(#309,#310); +#312= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#311,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(10.0019006793909),#60); +#313= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#312)); +#314= IFCPRODUCTDEFINITIONSHAPE($,$,(#313)); +#315= IFCCARTESIANPOINT((609.99946,29.20814)); +#316= IFCDIRECTION((0.99982368,0.01877769)); +#317= IFCAXIS2PLACEMENT2D(#315,#316); +#318= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#317,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(10.0017634743129),#60); +#319= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#318)); +#320= IFCPRODUCTDEFINITIONSHAPE($,$,(#319)); +#321= IFCCARTESIANPOINT((619.99946,29.39595)); +#322= IFCDIRECTION((0.99983764,0.01801907)); +#323= IFCAXIS2PLACEMENT2D(#321,#322); +#324= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#323,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(10.0016238305787),#60); +#325= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#324)); +#326= IFCPRODUCTDEFINITIONSHAPE($,$,(#325)); +#327= IFCCARTESIANPOINT((629.99946,29.57617)); +#328= IFCDIRECTION((0.99985167,0.01722344)); +#329= IFCAXIS2PLACEMENT2D(#327,#328); +#330= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#329,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(10.0014835653317),#60); +#331= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#330)); +#332= IFCPRODUCTDEFINITIONSHAPE($,$,(#331)); +#333= IFCCARTESIANPOINT((639.99946,29.74843)); +#334= IFCDIRECTION((0.99986571,0.0163878)); +#335= IFCAXIS2PLACEMENT2D(#333,#334); +#336= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#335,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(10.0013430703081),#60); +#337= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#336)); +#338= IFCPRODUCTDEFINITIONSHAPE($,$,(#337)); +#339= IFCCARTESIANPOINT((649.99946,29.91233)); +#340= IFCDIRECTION((0.99987718,0.01567246)); +#341= IFCAXIS2PLACEMENT2D(#339,#340); +#342= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#341,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(7.38556509953458),#60); +#343= IFCSHAPEREPRESENTATION(#66,'Axis','Curve2D',(#342)); +#344= IFCPRODUCTDEFINITIONSHAPE($,$,(#343)); +#345= IFCGRADIENTCURVE((#179,#186,#193,#199,#206,#212,#219,#225,#232,#238,#245,#251,#258,#264,#270,#276,#282,#288,#294,#300,#306,#312,#318,#324,#330,#336,#342),.U.,#117,$); +#346= IFCSHAPEREPRESENTATION(#66,'Axis','Curve3D',(#345)); +#347= IFCPRODUCTDEFINITIONSHAPE($,$,(#346)); +#348= IFCSHAPEREPRESENTATION(#66,'Axis','Curve3D',(#345)); +#349= IFCPRODUCTDEFINITIONSHAPE($,$,(#348)); +#350= IFCREFERENT('1rOA0_Hlj4wvgaMcjms$Y1',$,$,$,$,#358,$,.STATION.,$); +#351= IFCRELNESTS('1sGo_$YJD4me8QWpepB0x9',$,$,$,#20,(#350)); +#352= IFCRELPOSITIONS('0LAIHHfBH9phTNLqeDurRB',$,$,$,#20,(#350)); +#353= IFCPROPERTYSET('3sJJbJ_GHEtxzf4$LdFusm',$,'Pset_Stationing',$,(#355)); +#354= IFCRELDEFINESBYPROPERTIES('1wMkSiEC95JeqBq8a1gtPS',$,$,$,(#350),#353); +#355= IFCPROPERTYSINGLEVALUE('Station',$,IFCLENGTHMEASURE(1000.0),$); +#356= IFCPOINTBYDISTANCEEXPRESSION(IFCNONNEGATIVELENGTHMEASURE(0.0),$,$,$,#117); +#357= IFCAXIS2PLACEMENTLINEAR(#356,$,$); +#358= IFCLINEARPLACEMENT(#16,#357,$); +#359= IFCPROPERTYSINGLEVALUE('state',$,IFCIDENTIFIER('proposed'),$); +#360= IFCPROPERTYSET('0gT_0DEtH21ADdZKVgGwbx',$,'landXML_Alignment',$,(#359)); +#361= IFCRELDEFINESBYPROPERTIES('0zFoF1ac9F3BXzX37veXrP',$,$,$,(#20),#360); +ENDSEC; + +END-ISO-10303-21; diff --git a/E1a-ARSE/ALIN05/Dataset/T616AAC0.xml b/E1a-ARSE/ALIN05/Dataset/T616AAC0.xml new file mode 100644 index 0000000..3aacb2f --- /dev/null +++ b/E1a-ARSE/ALIN05/Dataset/T616AAC0.xml @@ -0,0 +1,215 @@ + + + + + + + + + + + + + + + + + 6591370.142470 145685.855172 0.000000 + + + 6591340.497969 145648.915290 0.000000 + + + + + + + + 6591340.497969 145648.915290 0.000000 + + + 6591305.159950 145604.880739 0.000000 + + + 6591282.917242 145587.393864 0.000000 + + + + + + + + 6591282.917242 145587.393864 0.000000 + +
+ 6591168.577963 145732.829517 0.000000 +
+ + 6591154.637666 145548.355486 0.000000 + + + + +
+ + + 6591154.637666 145548.355486 0.000000 + + + 6591134.780206 145549.856071 0.000000 + + + 6591096.103693 145559.177136 0.000000 + + + + + + + + 6591096.103693 145559.177136 0.000000 + + + 6591059.998499 145567.878506 0.000000 + + + 6591041.507035 145569.732915 0.000000 + + + + + + + + 6591041.507035 145569.732915 0.000000 + +
+ 6591021.171001 145366.950073 0.000000 +
+ + 6591015.784448 145570.678864 0.000000 + + + + +
+ + + 6591015.784448 145570.678864 0.000000 + + + 6590973.545180 145569.562095 0.000000 + + + 6590894.049604 145541.922395 0.000000 + + + + + + + + 6590894.049604 145541.922395 0.000000 + + + 6590819.171864 145515.888354 0.000000 + + + 6590780.908730 145505.510693 0.000000 + + + + + + + + 6590780.908730 145505.510693 0.000000 + +
+ 6590557.887706 146327.803598 0.000000 +
+ + 6590778.159323 145504.769933 0.000000 + + + + +
+
+ + + + 1085.000000 15.820000 + + + 1096.731849 15.934268 + + + 1122.514575 16.528493 + + + 1211.210818 18.023878 + + + 1228.995905 18.248635 + + + 1274.252074 19.031260 + + + 1328.182410 20.277378 + + + 1381.796850 22.690072 + + + 1529.999460 27.258400 + + + 1539.999460 27.545080 + + + 1549.999460 27.818000 + + + 1559.999460 28.086320 + + + 1569.999460 28.349570 + + + 1579.999460 28.603270 + + + 1589.999460 28.811400 + + + 1599.999460 29.013160 + + + 1609.999460 29.208140 + + + 1619.999460 29.395950 + + + 1629.999460 29.576170 + + + 1639.999460 29.748430 + + + 1649.999460 29.912330 + + + 1657.384118 30.028080 + + + + + + + +
+
+
diff --git a/E1a-ARSE/ALIN05/Dataset/T616AAC0_profile.pdf b/E1a-ARSE/ALIN05/Dataset/T616AAC0_profile.pdf new file mode 100644 index 0000000..670710a Binary files /dev/null and b/E1a-ARSE/ALIN05/Dataset/T616AAC0_profile.pdf differ diff --git a/E1a-ARSE/ALIN05/Dataset/VerticalAlignmentParameters.csv b/E1a-ARSE/ALIN05/Dataset/VerticalAlignmentParameters.csv new file mode 100644 index 0000000..d5cea53 --- /dev/null +++ b/E1a-ARSE/ALIN05/Dataset/VerticalAlignmentParameters.csv @@ -0,0 +1,28 @@ +Name;Type;StartDistAlong;HorizontalLength;StartHeight;StartGradient;EndGradient;Radius;Type +V1;IfcAlignmentVerticalSegment;85;1,41860494999992;15,82;0,00973998216308436;0,00973998216308436;0;CONSTANTGRADIENT +V2;IfcAlignmentVerticalSegment;86,4186049499999;20,6264881;15,8338171869095;0,00973998216308436;0,0230474077876794;1549,99837548427;PARABOLICARC +V3;IfcAlignmentVerticalSegment;107,04509375;30,9389625;16,1719615573674;0,0230474077876794;0,0168596205365767;-5000,00424133629;PARABOLICARC +V4;IfcAlignmentVerticalSegment;137,98405625;66,8933770000001;16,7893025837727;0,0168596205365767;0,0168596205365767;0;CONSTANTGRADIENT +V5;IfcAlignmentVerticalSegment;204,87743325;12,6667695;17,9170995364029;0,0168596205365767;0,0126373854679485;-3000,01522750735;PARABOLICARC +V6;IfcAlignmentVerticalSegment;217,54420275;4,4678965999999;18,1039154244026;0,0126373854679485;0,0126373854679485;0;CONSTANTGRADIENT +V7;IfcAlignmentVerticalSegment;222,01209935;13,9676113;18,1603779559677;0,0126373854679485;0,0172932224996773;3000,02152240574;PARABOLICARC +V8;IfcAlignmentVerticalSegment;235,97971065;29,55312205;18,369407505;0,0172932224996773;0,0172932224996773;0;CONSTANTGRADIENT +V9;IfcAlignmentVerticalSegment;265,5328327;17,4384826;18,8804762201707;0,0172932224996773;0,0231060677982796;2999,99083137358;PARABOLICARC +V10;IfcAlignmentVerticalSegment;282,9713153;12,9163156;19,2327273806274;0,0231060677982796;0,0231060677982796;0;CONSTANTGRADIENT +V11;IfcAlignmentVerticalSegment;295,8876309;64,5895582;19,5311726445849;0,0231060677982796;0,0450008244047686;2950,00119712944;PARABOLICARC +V12;IfcAlignmentVerticalSegment;360,4771891;0,0557456000001366;21,7306696834699;0,0450008244047686;0,0450008244047686;0;CONSTANTGRADIENT +V13;IfcAlignmentVerticalSegment;360,5329347;42,5278306;21,7331782814268;0,0450008244047686;0,0308248822338554;-3000,00028832373;PARABOLICARC +V14;IfcAlignmentVerticalSegment;403,0607653;126,9386947;23,3455296849532;0,0308248822338554;0,0308248822338554;0;CONSTANTGRADIENT +V15;IfcAlignmentVerticalSegment;529,99946;10;27,2584;0,0286679999999997;0,0286679999999997;0;CONSTANTGRADIENT +V16;IfcAlignmentVerticalSegment;539,99946;10;27,54508;0,0272920000000003;0,0272920000000003;0;CONSTANTGRADIENT +V17;IfcAlignmentVerticalSegment;549,99946;10;27,818;0,0268319999999999;0,0268319999999999;0;CONSTANTGRADIENT +V18;IfcAlignmentVerticalSegment;559,99946;10;28,08632;0,0263249999999999;0,0263249999999999;0;CONSTANTGRADIENT +V19;IfcAlignmentVerticalSegment;569,99946;10;28,34957;0,0253699999999998;0,0253699999999998;0;CONSTANTGRADIENT +V20;IfcAlignmentVerticalSegment;579,99946;10;28,60327;0,0208130000000001;0,0208130000000001;0;CONSTANTGRADIENT +V21;IfcAlignmentVerticalSegment;589,99946;10;28,8114;0,020176;0,020176;0;CONSTANTGRADIENT +V22;IfcAlignmentVerticalSegment;599,99946;10;29,01316;0,0194980000000001;0,0194980000000001;0;CONSTANTGRADIENT +V23;IfcAlignmentVerticalSegment;609,99946;10;29,20814;0,0187809999999999;0,0187809999999999;0;CONSTANTGRADIENT +V24;IfcAlignmentVerticalSegment;619,99946;10;29,39595;0,0180220000000002;0,0180220000000002;0;CONSTANTGRADIENT +V25;IfcAlignmentVerticalSegment;629,99946;10;29,57617;0,0172259999999998;0,0172259999999998;0;CONSTANTGRADIENT +V26;IfcAlignmentVerticalSegment;639,99946;10;29,74843;0,0163900000000002;0,0163900000000002;0;CONSTANTGRADIENT +V27;IfcAlignmentVerticalSegment;649,99946;7,38465799999994;29,91233;0,0156743887123817;0,0156743887123817;0;CONSTANTGRADIENT diff --git a/E1a-ARSE/ALIN05/README.md b/E1a-ARSE/ALIN05/README.md new file mode 100644 index 0000000..10e4182 --- /dev/null +++ b/E1a-ARSE/ALIN05/README.md @@ -0,0 +1,247 @@ +# Test Instruction + +| Documentation Code | Title | Exchange Code | Test Code | Author | Data Owner | Version | Date | +| --------------------- | ------------------------------- | ------------- | --------- | ------------- | ---------- | ------- | ---------- | +| IFC4.3AbRV_E1a_ALIN05 | Alignment Infrastructure Curves | E1a | ALIN05 | Lars Wikström | TRV | 1.0 | 07.01.2022 | + + +## Summary (Intent) + +With these instructions the infrastructure (e.g. Road) alignment exchange is established. This test instruction use the same alignment definition as [ALIN02](../ALIN02) and adds a geometric definition. + +| Info | | +| ---------------------------- | ------------------------------------- | +| Number of alignment(s) | 1 | +| Properties of segments | no | +| Horizontal layout | Straight Line, Circular Arc, Clothoid | +| Vertical layout | Straight Line, Parabolic Arc | +| Geometric representation | IfcCompositeCurve, IfcGradientCurve | +| IFC reference file available | Yes | + +- Refer to [Test Case Imports](#Test-Case-Imports) to know the prerequisites for the present test. + +- The [Expected Results](#Expected-Results) section lists the material that will be used to assess the fulfilment of capabilities. + +- :zap: This is a test-driven process: refer to the [Validation Criteria](#Validation-Criteria) to understand what is required by the test :zap: + +## Itemised Roots +The Test instruction addresses the import and export of the following IFC Entities & Concept Templates: + +
IFC Entities +These entities represent a test-specific subset of the wider AbRV_Ex exchange and the overall AbRV MVD. **The scope of the test shall not be used as a definitive scope of the exchange, or of the entire MVD.** + + +- Model setup + - *IfcProject* + - *IfcRepresentationContext* + - *IfcMapConversion* + - *IfcProjectedCRS* + - *IfcUnitAssignment* +- Spatial structure + - *IfcSite* + - *IfcRoad* + +- Alignment + + - *IfcAlignment* + - *IfcAlignmentHorizontal* + - *IfcAlignmentVertical* + - *IfcAlignmentSegment* + - *IfcAlignmentHorizontalSegment* + - *IfcAlignmentVerticalSegment* + - *IfcCompositeCurve* + - *IfcGradientCurve* + - *IfcCurveSegment* + - *IfcLine* + - *IfcCircle* + +
+ +
Concept Templates + + +These concept templates represent a test-specific subset of the wider AbRV_Ex exchange and the overall AbRV MVD, that must be correctly exported to meet the validation criteria. **The scope of the test shall not be used as a definitive scope of the exchange, or of the entire MVD.** + +- Project Context + - *Project Units* + - *Project Representation Context* + - *Project Global Positioning* + - *Project Global Positioning* +- Object Composition + - *Alignment Decomposition* + - *Spatial Decomposition* +- Object Connectivity + - *Spatial Containment* + +- Product Shape + - Product Geometric Representation + - *Alignment Geometry* + - *Alignment Geometry Gradient* + +
+ +## Model Dataset + +This test case utilises the dataset collected in the Dataset folder and summarised in the table below. **For more details on each item see [Dataset description](Dataset/README.md).** + +| Filename | Type (format) | Description | +| ------------------------------------------------------------ | --------------------------------------------- | ----------- | +| [HorizontalAlignmentParameters](Dataset/HorizontalAlignmentParameters.csv) | Parameters for the horizontal segments as csv | | +| [VerticalAlignmentParameters](Dataset/VerticalAlignmentParameters.csv) | Parameters for the vertical segments as csv | | +| [LandXML](Dataset/T616AAC0.xml) | LandXML-file representing the alignment | | + +## Test Case Imports + +Test instructions are defined with a modular approach to reduce repetition of validation criteria and test content, and improve vendors ability to solve issues and bugs. therefore this test instruction *imports/reuses* the following Test instructions and entities with the relevant associated validation criteria. + +No test cases are imported for this test case. All necessary data and criteria are included. + +## Expected Results + +For certification of capabilities the only source will be: + +- n. 1 IFC file containing the information as requested. The file shall be named using the following syntax: `MVDCode`-`ExchangeCode`-`TestCode`-`SoftwareVendor`.`ifc` (Example: `IFC4.3_AbRV-E2b-ASTPC-AmazingSoft.ifc`) + +Considering the aim of this test, other **optional** results, not subject to the bSI certification process, yet usefull to illustrate test results are: +- Screen-shot of a planar view and a "long section" similar to the provided examples +- CSV export of the horizontal and vertical alignment segment parameters + +--- + +## Validation criteria +:zap: For this test case to be considered passed **all capabilities listed in this section**, and **the ones of pre-required tests** shall be verified, with no exception. :zap: + +### General + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | ------------------------------------------------------------ | ------------------------------------------------------------ | -------------------------- | ---------------------- | +| GENE_00 | All validation criteria of precondition's tests shall be verified | | na | na | +| GENE_01 | All requested entities (and attributes) exist in file | As per Entities Table. See [Dataset description](Dataset/README.md) | na | na | + +### Road alignment + +**Acceptance criteria**: For the **Railway alignment (without cant)** capability, the validation procedure must verify that **all** the following validation criteria are satisfied. + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | -------------------------------------------------------- | ---------------------------------------------- | -------------------------- | ---------------------- | +| SITE_00 | All IfcAlignment shall always be contained in an IfcSite | | | Spatial Containment | +| ALIG_00 | Alignment layout structure is verified | See steps | | Alignment Layout | +| ALIG_01 | Number of alignments contained in file | [1] | | | +| ALIG_02 | Parameters of alignment segments are verified | As per Alignment Table | | | +| ALIG_03 | Alignment geometric compliance is verified | As per Alignment geometric compliance document | | | + +
ALIG_00 steps + + + +| **STEP ID** | **STEP** | +| ----------- | ------------------------------------------------------------ | +| ALIG_00.1 | Each IfcAlignment must nest exactly 1 IfcAlignmentHorizontal | +| ALIG_00.2 | Each IfcAlignment must nest at most 1 IfcAlignmentVertical | +| ALIG_00.3 | Each IfcAlignment must nest exactly 1 IfcAlignmentVertical | +| ALIG_00.6 | Each IfcAlignmentHorizontal must be nested only by 1 IfcAlignment | +| ALIG_00.7 | Each IfcAlignmentVertical must be nested only by 1 IfcAlignment | +| ALIG_00.9 | Each IfcAlignment must nest only the following entities: IfcAlignmentHorizontal, IfcAlignmentVertical | +| ALIG_00.10 | Each IfcAlignmentHorizontal nests a list of IfcAlignmentSegment, each of which has DesignParameters typed as IfcAlignmentHorizontalSegment | +| ALIG_00.11 | Each IfcAlignmentVertical nests a list of IfcAlignmentSegment, each of which has DesignParameters typed as IfcAlignmentVerticalSegment | + +
+ +### Spatial (De)Composition + + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | --------------------------------- | ------------------------------------------------------------ | -------------------------- | ---------------------- | +| SDEC_01 | Spatial decomposition is verified | As per Spatial (De)Composition Table. See [Dataset description](Dataset/README.md) | na | Spatial Decomposition | + +> **Acceptance criteria**: For the **Spatial decomposition** capability, the validation procedure must verify that a Parent Element of the requested type aggregates (via `IfcRelAggregates`) exactly a given number of Child Elements of the requested type, no more and no less. + +
SDEC_01 details: Spatial decomposition is verified + + + +> - Given a set of elements taken from the [Spatial (De)Composition Table](Dataset/README.md#Dataset/README.md#spatial-decomposition-table) +> - Then the Parent Element, and optionally the Parent Element Type, exists +> - And the Parent Element must aggregate at least a number within [MinSize..MaxSize] of the requested Child Element + +
+ +### Spatial Containment + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | ------------------------------- | -------------------------------- | -------------------------- | ---------------------- | +| SCON_01 | Spatial containment is verified | As per Spatial Containment Table | na | Spatial Containment | + +> **Acceptance criteria**: For the **Spatial containment** capability, the validation procedure must verify that a Spatial Element of the requested type contains (via `IfcRelContainedInSpatialStructure`) exactly a given number of Elements of the requested type, no more and no less. + +
SCON_01 details: Spatial containment is verified + + + +> - Given a set of elements taken from the [Spatial Containment Table](Dataset/README.md#Spatial-Containment-Table) +> - Then the Spatial Element, and optionally the Spatial Element Type, exists +> - And the Spatial Element must contain at least a number within [MinSize..MaxSize] of the requested Element + +
+ +### Product geometric representation + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | ------------------------------------------------ | --------------------------------------------- | -------------------------- | ----------------------------------------------------- | +| PREP_01 | Geometric representation of products is verified | As per Product Geometric Representation Table | | Product Geometric Representation and its subtemplates | + +> **Acceptance criteria**: For the **Group Geometric Representation** capability, the validation procedure must verify that a Product of the requested type (and optionally a requested name) has an IfcShapeRepresentation with the requested Representation Identifier, Representation Type and Items. + +
PREP_01 details: Geometric representation of products is verified + + + +> - Given a set of products taken from the [Product Geometric Representation Table](Dataset/README.md#Product-Geometric-Representation-Table) +> - Then the Product, and optionally the Product Type, exists +> - And the Product must have an IfcShapeRepresentation (via IfcProductDefinitionShape) with the requested Representation Identifier, Representation Type and Items. + +
+ +### Product placement + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | ------------------------------------------------------------ | ------------------------------ | -------------------------- | ------------------------------ | +| PPLA_01 | Placement of products is verified | As per Product Placement Table | | Product Placement subtemplates | +| PPLA_02 | For a product that has ObjectPlacement as IfcLinearPlacement, the CartesianPosition of IfcLinearPlacement shall be available | depends on cases | | Product Linear Placement | + +> **Acceptance criteria**: For the **Product Placement** capability, the validation procedure must verify that a Product of the requested type (and optionally a requested name) has the requested Object Placement, and optionally the Object Placement has PlacementRelTo reference to the Object Placement of Relative Placement Product with requested Relative Placement Product Type and Relative Placement Product Name. + +
PPLA_01 details: Placement of products is verified + + + +> - Given a set of products taken from the [Product Geometric Representation Table](#Product-Geometric-Representation-Table) +> - Then the Product with Product Type and Product Name, exists +> - And the Product must have Object Placement, and the Object Placement has PlacementRelTo reference to the ObjectPlacement of Relative Placement Product with requested Relative Placement Product Type and Relative Placement Product Name. + +
+ +### Project Setup + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | ----------------------------------------------- | -------------------- | -------------------------- | -------------------------- | +| ORIG_01 | Origin of Coordinate System is set as requested | [(0., 0., 0.)] | | Project Global Positioning | +| ORIG_02 | True north is set as requested | [(0., 1., 0.)] | | Project Global Positioning | +| DIST_01 | Unit of measure for all distances | [meter] | | Project Units | +| ANGL_01 | Unit of measure all angles | [radian] | | Project Units | +| DIST_02 | Required precision for distances | [0,0001] | all alignment segments | na | +| ANGL_02 | Required precision for angles and slope | [0,000001] | | na | + +### Project global positioning + +| Element | Attribute | Value | Comment | +| ---------------- | ---------------- | --------- | ------- | +| IfcMapConversion | Eastings | 0 | | +| IfcMapConversion | Northings | 0 | | +| IfcMapConversion | OrthogonalHeight | 0 | | +| IfcMapConversion | XAxisAbscissa | 1 | | +| IfcMapConversion | XAxisOrdinate | 0 | | +| IfcMapConversion | Scale | 1 | | +| IfcProjectedCRS | Name | EPSG:3011 | | +| IfcProjectedCRS | GeodeticDatum | EPSG:6619 | | +| IfcProjectedCRS | VerticalDatum | EPSG:5615 | | diff --git a/E1a-ARSE/ALIN06/Dataset/HorizontalAlignmentParameters.csv b/E1a-ARSE/ALIN06/Dataset/HorizontalAlignmentParameters.csv new file mode 100644 index 0000000..edcdc81 --- /dev/null +++ b/E1a-ARSE/ALIN06/Dataset/HorizontalAlignmentParameters.csv @@ -0,0 +1,8 @@ +Name;Type;StartPointX;StartPointY;StartDirection;StartRadius;EndRadius;Length;Type +H1;IfcAlignmentHorizontalSegment;276,867419000715;935,549266999587;0,00172462248684613;0;0;229,405681;LINE +H2;IfcAlignmentHorizontalSegment;506,272759001702;935,944904999807;0,00172462964706543;-110;-110;15,594208;CIRCULARARC +H3;IfcAlignmentHorizontalSegment;521,816665999591;934,868200000376;6,14314439461041;0;0;91,725737;LINE +H4;IfcAlignmentHorizontalSegment;612,644434001297;922,064788999967;6,14314439896281;-110;-110;120,80482;CIRCULARARC +H5;IfcAlignmentHorizontalSegment;701,264387000352;849,049537000246;5,04491873079937;0;0;25,538554;LINE +H6;IfcAlignmentHorizontalSegment;709,601071000099;824,909996000119;5,04491876114541;110;110;49,633636;CIRCULARARC +H7;IfcAlignmentHorizontalSegment;735,664969999343;783,164849000052;5,49613363003069;0;0;83,739856;LINE diff --git a/E1a-ARSE/ALIN06/Dataset/README.md b/E1a-ARSE/ALIN06/Dataset/README.md new file mode 100644 index 0000000..73c75a2 --- /dev/null +++ b/E1a-ARSE/ALIN06/Dataset/README.md @@ -0,0 +1,98 @@ +## Model Dataset + +This test case utilizes the following dataset. + +- One alignment layout including geometric representation +- The alignment is composed of one horizontal alignment layout and one vertical alignment layout +- The horizontal layout contains lines and circular arcs +- The vertical layout contains lines and circular arcs + +The Following occurrence variations need to be checked and certified in relation to the targeted entities and concept templates: + +- IfcAlignmentHorizontalSegment - *The test shall include linear and circular arc segments* +- IfcAlignmentVerticalSegment - *The test shall include linear and circular arc segments* +- Alignment Decomposition: + - The horizontal alignment shall be decomposed with element sequences containing lines and both clockwise and counter-clockwise turns + - The vertical alignment shall be decomposed with element sequences containing linear and circular arc segments including both clockwise and counter-clockwise turns + +| Filename | Description | +| ------------------------------------------------------------ | --------------------------------------------- | +| [HorizontalAlignmentParameters](./HorizontalAlignmentParameters.csv) | Parameters for the horizontal segments as csv | +| [VerticalAlignmentParameters](./VerticalAlignmentParameters.csv) | Parameters for the vertical segments as csv | +| [LandXML](./TOI-M14334-0000A.xml) | LandXML-file representing the alignment | + +## Dataset specification + +### Entities table + +| **Element** | **Attribute** | **Value** | **Notes** | +| ---------------------- | ------------- | ----------- | --------- | +| IfcProject | Name | Alin06 | | +| IfcSite | Name | Alin06.Site | | +| IfcAlignment | Name | A1 | | +| IfcRoad | Name | Alin06.Road | | +| IfcAlignmentHorizontal | Name | AH1 | | +| IfcAlignmentVertical | Name | AV1 | | + +### Horizontal segments table + +Horizontal segments nested into AH1 in the following order: + +| Entity | PredefinedType | Name | Start Point X | Start Point Y | Start Direction | Start Radius Of Curvature | End Radius Of Curvature | Segment Length | +| ----------------------------- | -------------- | ---- | ------------- | ------------- | --------------- | ------------------------- | ----------------------- | -------------- | +| IfcAlignmentHorizontalSegment | LINE | H1 | 276,867419 | 935,549267 | 0,001724622 | 0 | 0 | 229,405681 | +| IfcAlignmentHorizontalSegment | CIRCULARARC | H2 | 506,272759 | 935,944905 | 0,00172463 | -110 | -110 | 15,594208 | +| IfcAlignmentHorizontalSegment | LINE | H3 | 521,816666 | 934,8682 | 6,143144395 | 0 | 0 | 91,725737 | +| IfcAlignmentHorizontalSegment | CIRCULARARC | H4 | 612,644434 | 922,064789 | 6,143144399 | -110 | -110 | 120,80482 | +| IfcAlignmentHorizontalSegment | LINE | H5 | 701,264387 | 849,049537 | 5,044918731 | 0 | 0 | 25,538554 | +| IfcAlignmentHorizontalSegment | CIRCULARARC | H6 | 709,601071 | 824,909996 | 5,044918761 | 110 | 110 | 49,633636 | +| IfcAlignmentHorizontalSegment | LINE | H7 | 735,66497 | 783,164849 | 5,49613363 | 0 | 0 | 83,739856 | + +**NOTE**: + +- Please note the Project Global Positioning and unit parameters specified in the main Readme file + +### Vertical segments table + +Vertical segments nested into AV1 in the following order: + +| Entity | PredefinedType | Name | Type | Start Dist Along | Horizontal Length | Start Height | Start Gradient | End Gradient | RadiusOfCurvature | +| --------------------------- | ---------------- | ---- | --------------------------- | ---------------- | ----------------- | ------------ | -------------- | ------------ | ----------------- | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V1 | IfcAlignmentVerticalSegment | 135,557 | 10,84246946 | 125,687614 | 0,03416131 | 0,03416131 | 0 | +| IfcAlignmentVerticalSegment | CIRCULARARC | V2 | IfcAlignmentVerticalSegment | 146,3994695 | 18,11228261 | 126,058007 | 0,03416131 | 0,020212997 | -1300 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V3 | IfcAlignmentVerticalSegment | 164,5117521 | 40,83305808 | 126,5504044 | 0,020212997 | 0,020212997 | 0 | +| IfcAlignmentVerticalSegment | CIRCULARARC | V4 | IfcAlignmentVerticalSegment | 205,3448102 | 39,03368133 | 127,3757629 | 0,020212997 | -0,009817512 | -1300 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V5 | IfcAlignmentVerticalSegment | 244,3784915 | 50,17607352 | 127,5786042 | -0,009817512 | -0,009817512 | 0 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V6 | IfcAlignmentVerticalSegment | 294,554565 | 11,522986 | 127,086 | 0 | 0 | 0 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V7 | IfcAlignmentVerticalSegment | 306,077551 | 192,5126892 | 127,086 | -0,003529811 | -0,003529811 | 0 | +| IfcAlignmentVerticalSegment | CIRCULARARC | V8 | IfcAlignmentVerticalSegment | 498,5902402 | 15,27528964 | 126,4064666 | -0,003529811 | -0,006584989 | -5000 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V9 | IfcAlignmentVerticalSegment | 513,8655298 | 78,35926585 | 126,3292136 | -0,006584989 | -0,006584989 | 0 | +| IfcAlignmentVerticalSegment | CIRCULARARC | V10 | IfcAlignmentVerticalSegment | 592,2247957 | 10,41034226 | 125,8132186 | -0,006584989 | 0,00142311 | 1300 | +| IfcAlignmentVerticalSegment | CONSTANTGRADIENT | V11 | IfcAlignmentVerticalSegment | 602,6351379 | 13,80735508 | 125,7863506 | 0,00142311 | 0,00142311 | 0 | + +### Spatial (De)Composition table + +| **Parent Element** | **Parent Element Type** | **Parent Element Name** | **MinSize** | **MaxSize** | **Child Element** | **Child Element Type** | **Child Element Name** | +| ------------------ | ----------------------- | ----------------------- | ----------- | ----------- | ----------------- | ---------------------- | ---------------------- | +| IfcProject | | Alin06 | 1 | 1 | IfcSite | | Alin06.Site | +| IfcSite | | Alin06.Site | 1 | 1 | IfcRoad | | Allin06.Road | + +### Spatial Containment table + +| **Spatial Element** | **Spatial Element Type** | **Spatial Element Name** | **MinSize** | **MaxSize** | **Element** | **Element Type** | **Element Name** | +| ------------------- | ------------------------ | ------------------------ | ----------- | ----------- | ------------ | ---------------- | ---------------- | +| IfcSite | | Alin06.Site | 1 | 1 | IfcAlignment | | A1 | + +### Product Geometric Representation table + +| **Product** | **Product Type** | **Product Name** | **Representation Identifier** | **Representation Type** | **Items** | +| ---------------------- | ---------------- | ---------------- | ----------------------------- | ----------------------- | ------------------- | +| IfcAlignment | na | A1 | Axis | Curve3D | 1 IfcGradientCurve | +| IfcAlignmentHorizontal | na | AH1 | Axis | Curve2D | 1 IfcCompositeCurve | +| IfcAlignmentVertical | na | AV1 | Axis | Curve2D | 1 IfcGradientCurve | + +### Product Placement table + +| **Product** | **Product Type** | **Product Name** | **Object Placement** | Relative Placement Product | Relative Placement Product Type | Relative Placement Product Name | +| ------------ | ---------------- | ---------------- | -------------------- | -------------------------- | ------------------------------- | ------------------------------- | +| IfcAlignment | | A1 | IfcLocalPlacement | IfcSite | na | Alin06.Site | diff --git a/E1a-ARSE/ALIN06/Dataset/TOI-M14334-0000A.XML b/E1a-ARSE/ALIN06/Dataset/TOI-M14334-0000A.XML new file mode 100644 index 0000000..f63a694 --- /dev/null +++ b/E1a-ARSE/ALIN06/Dataset/TOI-M14334-0000A.XML @@ -0,0 +1,70 @@ + + + + + + + + + + + + + + + + + + + + + + + + + 6876935.549267 24525276.867419 0.000000 + 6876935.944905 24525506.272759 0.000000 + + + 6876935.944905 24525506.272759 + 6876934.868200 24525521.816666 +
6876825.945068 24525506.462467
+
+ + 6876934.868200 24525521.816666 0.000000 + 6876922.064789 24525612.644434 0.000000 + + + 6876922.064789 24525612.644434 + 6876849.049537 24525701.264387 +
6876813.141658 24525597.290235
+
+ + 6876849.049537 24525701.264387 0.000000 + 6876824.909996 24525709.601071 0.000000 + + + 6876824.909996 24525709.601071 + 6876783.164849 24525735.664970 +
6876860.817875 24525813.575223
+
+ + 6876783.164849 24525735.664970 0.000000 + 6876723.854000 24525794.780000 0.000000 + +
+ + + 135.557000 125.687614 + 155.453895 126.367318 + 224.860128 127.770226 + 294.554565 127.086000 + 306.077551 127.086000 + 506.227944 126.379507 + 597.429913 125.778943 + 616.442493 125.806000 + + +
+
+
diff --git a/E1a-ARSE/ALIN06/Dataset/TOI-M14334-0000A.ifc b/E1a-ARSE/ALIN06/Dataset/TOI-M14334-0000A.ifc new file mode 100644 index 0000000..ce4b25c --- /dev/null +++ b/E1a-ARSE/ALIN06/Dataset/TOI-M14334-0000A.ifc @@ -0,0 +1,220 @@ +ISO-10303-21; +HEADER; +FILE_DESCRIPTION(('ViewDefinition [Ifc4NotAssigned]'),'2;1'); +FILE_NAME( +/* name */ 'C:\\Users\\lars\\Documents\\Projekt\\IFCInfra\\MVD-Infra-Test-Instructions\\E1a-ARSE\\ALIN06\\Dataset\\TOI-M14334-0000A.ifc', +/* time_stamp */ '2022-02-18T13:46:24', +/* author */ ('lars'), +/* organization */ ('Unknown'), +/* preprocessor_version */ 'ggIfcConverter v0.0.5.0 by Geometry Gym Pty Ltd built 2022-02-10T07:15:39', +/* originating_system */ 'ggIFCConverter v0.0.5.0 - Converter by Geometry Gym Pty Ltd', +/* authorization */ 'None'); + +FILE_SCHEMA (('IFC4X3_RC4')); +ENDSEC; + +DATA; +#1= IFCCARTESIANPOINT((0.0,0.0,0.0)); +#2= IFCDIRECTION((1.0,0.0,0.0)); +#3= IFCDIRECTION((0.0,1.0,0.0)); +#4= IFCDIRECTION((0.0,0.0,1.0)); +#5= IFCAXIS2PLACEMENT3D(#1,$,$); +#6= IFCCARTESIANPOINT((0.0,0.0)); +#7= IFCAXIS2PLACEMENT2D(#6,$); +#8= IFCSIUNIT(*,.LENGTHUNIT.,$,.METRE.); +#9= IFCSIUNIT(*,.AREAUNIT.,$,.SQUARE_METRE.); +#10= IFCSIUNIT(*,.VOLUMEUNIT.,$,.CUBIC_METRE.); +#11= IFCSIUNIT(*,.PLANEANGLEUNIT.,$,.RADIAN.); +#12= IFCUNITASSIGNMENT((#8,#11)); +#13= IFCPROJECT('1OEWBMD50yGJCMfbHiMaxa',$,'Toivolan_tasoristeyssuunnitelma','Toivolan_tasoristeyssuunnitelma',$,$,$,(#56),#12); +#14= IFCCARTESIANPOINT((0.0,0.0,0.0)); +#15= IFCAXIS2PLACEMENT3D(#14,$,$); +#16= IFCLOCALPLACEMENT($,#15); +#17= IFCSITE('0fC4Q0ghjshYWRNlyJlyL6',$,'Toivolan_tasoristeyssuunnitelma',$,$,#16,$,$,$,$,$,$,$,$); +#18= IFCRELAGGREGATES('3nli4xTQXW59Tz5QkTJN3h',$,$,$,#13,(#17)); +#19= IFCLOCALPLACEMENT(#16,#5); +#20= IFCALIGNMENT('1MZ$_ugNawDiLW6OHixSD9',$,'Sammalniementie_u',$,$,#19,#197,$); +#21= IFCRELCONTAINEDINSPATIALSTRUCTURE('2d7LGjg5j8deye8rBGu_pT',$,'Site','Site Container for Elements',(#20),#17); +#22= IFCCARTESIANPOINT((0.0,0.0,0.0)); +#23= IFCAXIS2PLACEMENT3D(#22,#4,#2); +#25= IFCALIGNMENTHORIZONTAL('1ck1ztc5NTxKcmM$6H$rwZ',$,$,$,$,#19,#98); +#26= IFCRELNESTS('2Qr6YhEtzBeeELe82FHdbs',$,$,$,#20,(#25,#110)); +#27= IFCCARTESIANPOINT((24525276.867419,6876935.549267)); +#28= IFCALIGNMENTHORIZONTALSEGMENT($,$,#27,0.00172462248684613,0.0,0.0,229.405681,$,.LINE.); +#29= IFCALIGNMENTSEGMENT('3hZ8l87U1Q8BI_$y_2nj$z',$,$,$,$,#19,#62,#28); +#30= IFCRELNESTS('3i$XYZYN91owg1IkJG3pGm',$,$,$,#25,(#29,#33,#36,#39,#42,#45,#48)); +#31= IFCCARTESIANPOINT((24525506.272759,6876935.944905)); +#32= IFCALIGNMENTHORIZONTALSEGMENT($,$,#31,0.00172462964706543,-110.0,-110.0,15.594208,$,.CIRCULARARC.); +#33= IFCALIGNMENTSEGMENT('3tOKSRAS5$p_$XokyCfvbo',$,$,$,$,#19,#68,#32); +#34= IFCCARTESIANPOINT((24525521.816666,6876934.8682)); +#35= IFCALIGNMENTHORIZONTALSEGMENT($,$,#34,6.14314439461041,0.0,0.0,91.725737,$,.LINE.); +#36= IFCALIGNMENTSEGMENT('3MWD2DeWHQ8QevjrZg99YR',$,$,$,$,#19,#73,#35); +#37= IFCCARTESIANPOINT((24525612.644434,6876922.064789)); +#38= IFCALIGNMENTHORIZONTALSEGMENT($,$,#37,6.14314439896281,-110.0,-110.0,120.80482,$,.CIRCULARARC.); +#39= IFCALIGNMENTSEGMENT('260dLIlSB8SrmmNwWvQa3d',$,$,$,$,#19,#79,#38); +#40= IFCCARTESIANPOINT((24525701.264387,6876849.049537)); +#41= IFCALIGNMENTHORIZONTALSEGMENT($,$,#40,5.04491873079937,0.0,0.0,25.538554,$,.LINE.); +#42= IFCALIGNMENTSEGMENT('09$rVBiaRE6xbncNrNsbYP',$,$,$,$,#19,#84,#41); +#43= IFCCARTESIANPOINT((24525709.601071,6876824.909996)); +#44= IFCALIGNMENTHORIZONTALSEGMENT($,$,#43,5.04491876114541,110.0,110.0,49.633636,$,.CIRCULARARC.); +#45= IFCALIGNMENTSEGMENT('0gRR1YO7HbZ_XxQmRDcf3R',$,$,$,$,#19,#90,#44); +#46= IFCCARTESIANPOINT((24525735.66497,6876783.164849)); +#47= IFCALIGNMENTHORIZONTALSEGMENT($,$,#46,5.49613363003069,0.0,0.0,83.739856,$,.LINE.); +#48= IFCALIGNMENTSEGMENT('3VXcUYLknohuCoYzWkCCrX',$,$,$,$,#19,#95,#47); +#49= IFCAXIS2PLACEMENT2D(#27,#50); +#50= IFCDIRECTION((0.99999851,0.00172462)); +#51= IFCCARTESIANPOINT((0.0,0.0)); +#52= IFCDIRECTION((1.0,0.0)); +#53= IFCVECTOR(#52,1.0); +#54= IFCLINE(#51,#53); +#55= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#49,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(229.405681),#54); +#56= IFCGEOMETRICREPRESENTATIONCONTEXT($,'Model',3,0.00001,#58,#59); +#57= IFCCARTESIANPOINT((0.0,0.0,0.0)); +#58= IFCAXIS2PLACEMENT3D(#57,$,$); +#59= IFCDIRECTION((0.0,1.0)); +#60= IFCGEOMETRICREPRESENTATIONSUBCONTEXT('Axis','Model',*,*,*,*,#56,$,.GRAPH_VIEW.,$); +#61= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#55)); +#62= IFCPRODUCTDEFINITIONSHAPE($,$,(#61)); +#63= IFCAXIS2PLACEMENT2D(#31,#64); +#64= IFCDIRECTION((0.99999851,0.00172463)); +#65= IFCCIRCLE(#7,110.0); +#66= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#63,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(-0.141765527272727),#65); +#67= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#66)); +#68= IFCPRODUCTDEFINITIONSHAPE($,$,(#67)); +#69= IFCAXIS2PLACEMENT2D(#34,#70); +#70= IFCDIRECTION((0.99021029,-0.13958363)); +#71= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#69,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(91.725737),#54); +#72= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#71)); +#73= IFCPRODUCTDEFINITIONSHAPE($,$,(#72)); +#74= IFCAXIS2PLACEMENT2D(#37,#75); +#75= IFCDIRECTION((0.99021029,-0.13958362)); +#76= IFCCIRCLE(#7,110.0); +#77= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#74,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(-1.09822563636364),#76); +#78= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#77)); +#79= IFCPRODUCTDEFINITIONSHAPE($,$,(#78)); +#80= IFCAXIS2PLACEMENT2D(#40,#81); +#81= IFCDIRECTION((0.32643524,-0.94521957)); +#82= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#80,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(25.538554),#54); +#83= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#82)); +#84= IFCPRODUCTDEFINITIONSHAPE($,$,(#83)); +#85= IFCAXIS2PLACEMENT2D(#43,#86); +#86= IFCDIRECTION((0.32643527,-0.94521956)); +#87= IFCCIRCLE(#7,110.0); +#88= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#85,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(49.633636),#87); +#89= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#88)); +#90= IFCPRODUCTDEFINITIONSHAPE($,$,(#89)); +#91= IFCAXIS2PLACEMENT2D(#46,#92); +#92= IFCDIRECTION((0.7059366,-0.70827502)); +#93= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#91,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(83.739856),#54); +#94= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#93)); +#95= IFCPRODUCTDEFINITIONSHAPE($,$,(#94)); +#96= IFCCOMPOSITECURVE((#55,#66,#71,#77,#82,#88,#93),.U.); +#97= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#96)); +#98= IFCPRODUCTDEFINITIONSHAPE($,$,(#97)); +#99= IFCALIGNMENTVERTICALSEGMENT($,$,135.557,10.8424694551669,125.687614,0.0341613100938614,0.0341613100938614,$,.CONSTANTGRADIENT.); +#100= IFCALIGNMENTVERTICALSEGMENT($,$,146.399469455167,18.112282610652,126.05800696124,0.0341613100938614,0.0202129972966548,-1300.0,.CIRCULARARC.); +#101= IFCALIGNMENTVERTICALSEGMENT($,$,164.511752065819,40.8330580844944,126.550404440385,0.0202129972966548,0.0202129972966548,$,.CONSTANTGRADIENT.); +#102= IFCALIGNMENTVERTICALSEGMENT($,$,205.344810150313,39.033681330639,127.37576293306,0.0202129972966548,-0.00981751240776929,-1300.0,.CIRCULARARC.); +#103= IFCALIGNMENTVERTICALSEGMENT($,$,244.378491480952,50.1760735190479,127.578604224343,-0.00981751240776929,-0.00981751240776929,$,.CONSTANTGRADIENT.); +#104= IFCALIGNMENTVERTICALSEGMENT($,$,294.554565,11.522986,127.086,0.0,0.0,$,.CONSTANTGRADIENT.); +#105= IFCALIGNMENTVERTICALSEGMENT($,$,306.077551,192.512689171019,127.086,-0.00352981070589252,-0.00352981070589252,$,.CONSTANTGRADIENT.); +#106= IFCALIGNMENTVERTICALSEGMENT($,$,498.590240171019,15.2752896431409,126.406466648677,-0.00352981070589252,-0.0065849894096037,-5000.0,.CIRCULARARC.); +#107= IFCALIGNMENTVERTICALSEGMENT($,$,513.865529814159,78.3592658459091,126.329213578221,-0.0065849894096037,-0.0065849894096037,$,.CONSTANTGRADIENT.); +#108= IFCALIGNMENTVERTICALSEGMENT($,$,592.224795660069,10.4103422623946,125.813218642574,-0.0065849894096037,0.00142311038270447,1300.0,.CIRCULARARC.); +#109= IFCALIGNMENTVERTICALSEGMENT($,$,602.635137922463,13.8073550775368,125.786350609637,0.00142311038228749,0.00142311038228749,$,.CONSTANTGRADIENT.); +#110= IFCALIGNMENTVERTICAL('0ddJLdQIDCxQPle3A8jrLs',$,'Sammalniementie_u',$,$,#19,#195); +#111= IFCALIGNMENTSEGMENT('2gA7djODHC_xXIgPPzoY82',$,$,$,$,#19,#128,#99); +#112= IFCRELNESTS('1DZ_kkZob34vJO5FhOR8v0',$,$,$,#110,(#111,#113,#114,#115,#116,#117,#118,#119,#120,#121,#122)); +#113= IFCALIGNMENTSEGMENT('3VN7AVMVzA_hvweeeU0O3k',$,$,$,$,#19,#135,#100); +#114= IFCALIGNMENTSEGMENT('0Kp4hED2zAPfMpvgzW7ch1',$,$,$,$,#19,#141,#101); +#115= IFCALIGNMENTSEGMENT('2FkuepSxf5hwJ23i51BHsZ',$,$,$,$,#19,#148,#102); +#116= IFCALIGNMENTSEGMENT('1XPAkBHBLF$9aeTcrcNcTy',$,$,$,$,#19,#154,#103); +#117= IFCALIGNMENTSEGMENT('0R2$FQBtr3AOpdTIkDMGs6',$,$,$,$,#19,#160,#104); +#118= IFCALIGNMENTSEGMENT('2C21qLVkvBj8P$f2FUURr0',$,$,$,$,#19,#166,#105); +#119= IFCALIGNMENTSEGMENT('0kI5Vw8vH0I9llwt5OikKa',$,$,$,$,#19,#173,#106); +#120= IFCALIGNMENTSEGMENT('04SGZEGwnFsPtmf3BfW1fT',$,$,$,$,#19,#179,#107); +#121= IFCALIGNMENTSEGMENT('0$CKSTZez7cgM3mmkSQwii',$,$,$,$,#19,#186,#108); +#122= IFCALIGNMENTSEGMENT('3tHQKCgSX4DQDDVRkZ3PN3',$,$,$,$,#19,#192,#109); +#123= IFCCARTESIANPOINT((135.557,125.687614)); +#124= IFCDIRECTION((0.99941701,0.03414139)); +#125= IFCAXIS2PLACEMENT2D(#123,#124); +#126= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#125,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(10.8487941648814),#54); +#127= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#126)); +#128= IFCPRODUCTDEFINITIONSHAPE($,$,(#127)); +#129= IFCCARTESIANPOINT((146.399469,126.058007)); +#130= IFCDIRECTION((0.99941701,0.03414139)); +#131= IFCAXIS2PLACEMENT2D(#129,#130); +#132= IFCCIRCLE(#7,1300.0); +#133= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#131,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(-0.0139377855017958),#132); +#134= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#133)); +#135= IFCPRODUCTDEFINITIONSHAPE($,$,(#134)); +#136= IFCCARTESIANPOINT((164.511752,126.550404)); +#137= IFCDIRECTION((0.99979578,0.02020887)); +#138= IFCAXIS2PLACEMENT2D(#136,#137); +#139= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#138,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(40.8413987171488),#54); +#140= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#139)); +#141= IFCPRODUCTDEFINITIONSHAPE($,$,(#140)); +#142= IFCCARTESIANPOINT((205.34481,127.375763)); +#143= IFCDIRECTION((0.99979578,0.02020887)); +#144= IFCAXIS2PLACEMENT2D(#142,#143); +#145= IFCCIRCLE(#7,1300.0); +#146= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#144,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(-0.0300274422055508),#145); +#147= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#146)); +#148= IFCPRODUCTDEFINITIONSHAPE($,$,(#147)); +#149= IFCCARTESIANPOINT((244.378491,127.578604)); +#150= IFCDIRECTION((0.99995181,-0.00981704)); +#151= IFCAXIS2PLACEMENT2D(#149,#150); +#152= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#151,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(50.1784915348274),#54); +#153= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#152)); +#154= IFCPRODUCTDEFINITIONSHAPE($,$,(#153)); +#155= IFCCARTESIANPOINT((294.554565,127.086)); +#156= IFCDIRECTION((1.0,0.0)); +#157= IFCAXIS2PLACEMENT2D(#155,#156); +#158= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#157,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(11.522986),#54); +#159= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#158)); +#160= IFCPRODUCTDEFINITIONSHAPE($,$,(#159)); +#161= IFCCARTESIANPOINT((306.077551,127.086)); +#162= IFCDIRECTION((0.99999377,-0.00352979)); +#163= IFCAXIS2PLACEMENT2D(#161,#162); +#164= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#163,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(192.513888479332),#54); +#165= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#164)); +#166= IFCPRODUCTDEFINITIONSHAPE($,$,(#165)); +#167= IFCCARTESIANPOINT((498.59024,126.406467)); +#168= IFCDIRECTION((0.99999377,-0.00352979)); +#169= IFCAXIS2PLACEMENT2D(#167,#168); +#170= IFCCIRCLE(#7,5000.0); +#171= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#169,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(-0.00305509818642019),#170); +#172= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#171)); +#173= IFCPRODUCTDEFINITIONSHAPE($,$,(#172)); +#174= IFCCARTESIANPOINT((513.86553,126.329214)); +#175= IFCDIRECTION((0.99997832,-0.00658485)); +#176= IFCAXIS2PLACEMENT2D(#174,#175); +#177= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#176,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(78.3609647380861),#54); +#178= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#177)); +#179= IFCPRODUCTDEFINITIONSHAPE($,$,(#178)); +#180= IFCCARTESIANPOINT((592.224796,125.813219)); +#181= IFCDIRECTION((0.99997832,-0.00658485)); +#182= IFCAXIS2PLACEMENT2D(#180,#181); +#183= IFCCIRCLE(#7,1300.0); +#184= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#182,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCPARAMETERVALUE(0.00800800365444606),#183); +#185= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#184)); +#186= IFCPRODUCTDEFINITIONSHAPE($,$,(#185)); +#187= IFCCARTESIANPOINT((602.635138,125.786351)); +#188= IFCDIRECTION((0.99999899,0.00142311)); +#189= IFCAXIS2PLACEMENT2D(#187,#188); +#190= IFCCURVESEGMENT(.CONTSAMEGRADIENTSAMECURVATURE.,#189,IFCNONNEGATIVELENGTHMEASURE(0.0),IFCNONNEGATIVELENGTHMEASURE(13.8073690591555),#54); +#191= IFCSHAPEREPRESENTATION(#60,'Axis','Curve2D',(#190)); +#192= IFCPRODUCTDEFINITIONSHAPE($,$,(#191)); +#193= IFCGRADIENTCURVE((#126,#133,#139,#146,#152,#158,#164,#171,#177,#184,#190),.U.,#96,$); +#194= IFCSHAPEREPRESENTATION(#60,'Axis','Curve3D',(#193)); +#195= IFCPRODUCTDEFINITIONSHAPE($,$,(#194)); +#196= IFCSHAPEREPRESENTATION(#60,'Axis','Curve3D',(#193)); +#197= IFCPRODUCTDEFINITIONSHAPE($,$,(#196)); +#198= IFCPROPERTYSINGLEVALUE('state',$,IFCIDENTIFIER('proposed'),$); +#199= IFCPROPERTYSET('1lf3$ojeXENeMMmuDejpya',$,'landXML_Alignment',$,(#198)); +#200= IFCRELDEFINESBYPROPERTIES('3$NwrSvbH6df0$Z67Fhrb9',$,$,$,(#20),#199); +#201= IFCPROJECTEDCRS('EPSG:3878',$,$,$,$,$,$); +#202= IFCMAPCONVERSION(#56,#201,0.0,0.0,0.0,$,$,$,$,$); +ENDSEC; + +END-ISO-10303-21; diff --git a/E1a-ARSE/ALIN06/Dataset/VerticalAlignmentParameters.csv b/E1a-ARSE/ALIN06/Dataset/VerticalAlignmentParameters.csv new file mode 100644 index 0000000..fc0b572 --- /dev/null +++ b/E1a-ARSE/ALIN06/Dataset/VerticalAlignmentParameters.csv @@ -0,0 +1,12 @@ +Name;Type;StartDistAlong;HorizontalLength;StartHeight;StartGradient;EndGradient;Radius;Type +V1;IfcAlignmentVerticalSegment;135,557;10,8424694551669;125,687614;0,0341613100938614;0,0341613100938614;0;CONSTANTGRADIENT +V2;IfcAlignmentVerticalSegment;146,399469455167;18,112282610652;126,05800696124;0,0341613100938614;0,0202129972966548;-1300;CIRCULARARC +V3;IfcAlignmentVerticalSegment;164,511752065819;40,8330580844944;126,550404440385;0,0202129972966548;0,0202129972966548;0;CONSTANTGRADIENT +V4;IfcAlignmentVerticalSegment;205,344810150313;39,033681330639;127,37576293306;0,0202129972966548;-0,00981751240776929;-1300;CIRCULARARC +V5;IfcAlignmentVerticalSegment;244,378491480952;50,1760735190479;127,578604224343;-0,00981751240776929;-0,00981751240776929;0;CONSTANTGRADIENT +V6;IfcAlignmentVerticalSegment;294,554565;11,522986;127,086;0;0;0;CONSTANTGRADIENT +V7;IfcAlignmentVerticalSegment;306,077551;192,512689171019;127,086;-0,00352981070589252;-0,00352981070589252;0;CONSTANTGRADIENT +V8;IfcAlignmentVerticalSegment;498,590240171019;15,2752896431409;126,406466648677;-0,00352981070589252;-0,0065849894096037;-5000;CIRCULARARC +V9;IfcAlignmentVerticalSegment;513,865529814159;78,3592658459091;126,329213578221;-0,0065849894096037;-0,0065849894096037;0;CONSTANTGRADIENT +V10;IfcAlignmentVerticalSegment;592,224795660069;10,4103422623946;125,813218642574;-0,0065849894096037;0,00142311038270447;1300;CIRCULARARC +V11;IfcAlignmentVerticalSegment;602,635137922463;13,8073550775368;125,786350609637;0,00142311038228749;0,00142311038228749;0;CONSTANTGRADIENT diff --git a/E1a-ARSE/ALIN06/README.md b/E1a-ARSE/ALIN06/README.md new file mode 100644 index 0000000..6771534 --- /dev/null +++ b/E1a-ARSE/ALIN06/README.md @@ -0,0 +1,239 @@ +# Test Instruction + +| Documentation Code | Title | Exchange Code | Test Code | Author | Data Owner | Version | Date | +| --------------------- | ------------------------------- | ------------- | --------- | ------------- | ---------- | ------- | ---------- | +| IFC4.3AbRV_E1a_ALIN06 | Alignment Infrastructure Curves | E1a | ALIN06 | Lars Wikström | FTIA | 1.0 | 07.01.2022 | + + +## Summary (Intent) + +With these instructions the infrastructure (e.g. Road) alignment exchange is established. This test instruction use the same alignment definition as [ALIN03](../ALIN03) and adds a geometric definition in the shape of a combination of `IfcCompositeCurve` and `IfcGradientCurve`. + +| Info | | +| ---------------------------- | ----------------------------------- | +| Number of alignment(s) | 1 | +| Properties of segments | no | +| Horizontal layout | Straight Line, Circular Arc | +| Vertical layout | Straight Line, Circular Arc | +| Geometric representation | IfcCompositeCurve, IfcGradientCurve | +| IFC reference file available | Yes | + +- Refer to [Test Case Imports](#Test-Case-Imports) to know the prerequisites for the present test. + +- The [Expected Results](#Expected-Results) section lists the material that will be used to assess the fulfilment of capabilities. + +- :zap: This is a test-driven process: refer to the [Validation Criteria](#Validation-Criteria) to understand what is required by the test :zap: + +## Itemised Roots +The Test instruction addresses the import and export of the following IFC Entities & Concept Templates: + +
IFC Entities +These entities represent a test-specific subset of the wider AbRV_Ex exchange and the overall AbRV MVD. **The scope of the test shall not be used as a definitive scope of the exchange, or of the entire MVD.** + +- Model setup + - *IfcProject* + - *IfcRepresentationContext* + - *IfcMapConversion* + - *IfcProjectedCRS* + - *IfcUnitAssignment* +- Spatial structure + - *IfcSite* + - *IfcRoad* + +- Alignment + + - *IfcAlignment* + - *IfcAlignmentHorizontal* + - *IfcAlignmentVertical* + - *IfcAlignmentSegment* + - *IfcAlignmentHorizontalSegment* + - *IfcAlignmentVerticalSegment* + - *IfcCompositeCurve* + - *IfcGradientCurve* + - *IfcCurveSegment* + - *IfcLine* + - *IfcCircle* + +
+ +
Concept Templates + +These concept templates represent a test-specific subset of the wider AbRV_Ex exchange and the overall AbRV MVD, that must be correctly exported to meet the validation criteria. **The scope of the test shall not be used as a definitive scope of the exchange, or of the entire MVD.** + +- Project Context + - *Project Units* + - *Project Representation Context* + - *Project Global Positioning* + - *Project Global Positioning* +- Object Composition + - *Alignment Decomposition* + - *Spatial Decomposition* +- Object Connectivity + - *Spatial Containment* + +- Product Shape + - Product Geometric Representation + - *Alignment Geometry* + - *Alignment Geometry Gradient* + +
+ +## Model Dataset + +This test case utilises the dataset collected in the Dataset folder and summarised in the table below. **For more details on each item see [Dataset description](Dataset/README.md).** + +| Filename | Type (format) | Description | +| ------------------------------------------------------------ | ------------- | -------------------------------------------- | +| [HorizontalAlignmentParameters](Dataset/HorizontalAlignmentParameters.csv) | csv | Alignment parameters for horizontal segments | +| [VerticalAlignmentParameters](Datsaset/VerticalAlignmentParameters.csv) | csv | Alignment parameters for vertical segments | +| [TOI-M14334-0000A](Dataset/TOI-M14334-0000A.XML) | xml | LandXML representation of the alignment | + +## Test Case Imports +Test instructions are defined with a modular approach to reduce repetition of validation criteria and test content, and improve vendors ability to solve issues and bugs. therefore this test instruction *imports/reuses* the following Test instructions and entities with the relevant associated validation criteria. + +No test cases are imported for this test case. All necessary data and criteria are included. + +## Expected Results + +For certification of capabilities the only source will be: + +- n. 1 IFC file containing the information as requested. The file shall be named using the following syntax: `MVDCode`-`ExchangeCode`-`TestCode`-`SoftwareVendor`.`ifc` (Example: `IFC4.3_AbRV-E2b-ASTPC-AmazingSoft.ifc`) + +Considering the aim of this test, other **optional** results, not subject to the bSI certification process, yet usefull to illustrate test results are: +- Screen-shot of a planar view and a "long section" similar to the provided examples +- CSV export of the horizontal and vertical alignment segment parameters + +--- + +## Validation criteria +:zap: For this test case to be considered passed **all capabilities listed in this section**, and **the ones of pre-required tests** shall be verified, with no exception. :zap: + +### General + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | ------------------------------------------------------------ | ------------------------------------------------------------ | -------------------------- | ---------------------- | +| GENE_00 | All validation criteria of precondition's tests shall be verified | | na | na | +| GENE_01 | All requested entities (and attributes) exist in file | As per Entities Table. See [Dataset description](Dataset/README.md) | na | na | + +### Road alignment + +**Acceptance criteria**: For the **Railway alignment (without cant)** capability, the validation procedure must verify that **all** the following validation criteria are satisfied. + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | -------------------------------------------------------- | ---------------------------------------------- | -------------------------- | ---------------------- | +| SITE_00 | All IfcAlignment shall always be contained in an IfcSite | | | Spatial Containment | +| ALIG_00 | Alignment layout structure is verified | See steps | | Alignment Layout | +| ALIG_01 | Number of alignments contained in file | [1] | | | +| ALIG_02 | Parameters of alignment segments are verified | As per Alignment Table | | | +| ALIG_03 | Alignment geometric compliance is verified | As per Alignment geometric compliance document | | | + +
ALIG_00 steps + + +| **STEP ID** | **STEP** | +| ----------- | ------------------------------------------------------------ | +| ALIG_00.1 | Each IfcAlignment must nest exactly 1 IfcAlignmentHorizontal | +| ALIG_00.2 | Each IfcAlignment must nest at most 1 IfcAlignmentVertical | +| ALIG_00.3 | Each IfcAlignment must nest exactly 1 IfcAlignmentVertical | +| ALIG_00.6 | Each IfcAlignmentHorizontal must be nested only by 1 IfcAlignment | +| ALIG_00.7 | Each IfcAlignmentVertical must be nested only by 1 IfcAlignment | +| ALIG_00.9 | Each IfcAlignment must nest only the following entities: IfcAlignmentHorizontal, IfcAlignmentVertical | +| ALIG_00.10 | Each IfcAlignmentHorizontal nests a list of IfcAlignmentSegment, each of which has DesignParameters typed as IfcAlignmentHorizontalSegment | +| ALIG_00.11 | Each IfcAlignmentVertical nests a list of IfcAlignmentSegment, each of which has DesignParameters typed as IfcAlignmentVerticalSegment | + +
+ +### Spatial (De)Composition + + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | --------------------------------- | ------------------------------------------------------------ | -------------------------- | ---------------------- | +| SDEC_01 | Spatial decomposition is verified | As per Spatial (De)Composition Table. See [Dataset description](Dataset/README.md) | na | Spatial Decomposition | + +> **Acceptance criteria**: For the **Spatial decomposition** capability, the validation procedure must verify that a Parent Element of the requested type aggregates (via `IfcRelAggregates`) exactly a given number of Child Elements of the requested type, no more and no less. + +
SDEC_01 details: Spatial decomposition is verified + + +> - Given a set of elements taken from the [Spatial (De)Composition Table](Dataset/README.md#Dataset/README.md#spatial-decomposition-table) +> - Then the Parent Element, and optionally the Parent Element Type, exists +> - And the Parent Element must aggregate at least a number within [MinSize..MaxSize] of the requested Child Element + +
+ +### Spatial Containment + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | ------------------------------- | -------------------------------- | -------------------------- | ---------------------- | +| SCON_01 | Spatial containment is verified | As per Spatial Containment Table | na | Spatial Containment | + +> **Acceptance criteria**: For the **Spatial containment** capability, the validation procedure must verify that a Spatial Element of the requested type contains (via `IfcRelContainedInSpatialStructure`) exactly a given number of Elements of the requested type, no more and no less. + +
SCON_01 details: Spatial containment is verified + + +> - Given a set of elements taken from the [Spatial Containment Table](Dataset/README.md#Spatial-Containment-Table) +> - Then the Spatial Element, and optionally the Spatial Element Type, exists +> - And the Spatial Element must contain at least a number within [MinSize..MaxSize] of the requested Element + +
+ +### Product geometric representation + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | ------------------------------------------------ | --------------------------------------------- | -------------------------- | ----------------------------------------------------- | +| PREP_01 | Geometric representation of products is verified | As per Product Geometric Representation Table | | Product Geometric Representation and its subtemplates | + +> **Acceptance criteria**: For the **Group Geometric Representation** capability, the validation procedure must verify that a Product of the requested type (and optionally a requested name) has an IfcShapeRepresentation with the requested Representation Identifier, Representation Type and Items. + +
PREP_01 details: Geometric representation of products is verified + + +> - Given a set of products taken from the [Product Geometric Representation Table](Dataset/README.md#Product-Geometric-Representation-Table) +> - Then the Product, and optionally the Product Type, exists +> - And the Product must have an IfcShapeRepresentation (via IfcProductDefinitionShape) with the requested Representation Identifier, Representation Type and Items. + +
+ +### Product placement + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | ------------------------------------------------------------ | ------------------------------ | -------------------------- | ------------------------------ | +| PPLA_01 | Placement of products is verified | As per Product Placement Table | | Product Placement subtemplates | +| PPLA_02 | For a product that has ObjectPlacement as IfcLinearPlacement, the CartesianPosition of IfcLinearPlacement shall be available | depends on cases | | Product Linear Placement | + +> **Acceptance criteria**: For the **Product Placement** capability, the validation procedure must verify that a Product of the requested type (and optionally a requested name) has the requested Object Placement, and optionally the Object Placement has PlacementRelTo reference to the Object Placement of Relative Placement Product with requested Relative Placement Product Type and Relative Placement Product Name. + +
PPLA_01 details: Placement of products is verified + + +> - Given a set of products taken from the [Product Geometric Representation Table](#Product-Geometric-Representation-Table) +> - Then the Product with Product Type and Product Name, exists +> - And the Product must have Object Placement, and the Object Placement has PlacementRelTo reference to the ObjectPlacement of Relative Placement Product with requested Relative Placement Product Type and Relative Placement Product Name. + +
+ +### Project Setup + +| **RULE ID** | **CRITERIA** | **VALUE [examples]** | **ENTITY (if applicable)** | **CT (if applicable)** | +| ----------- | ----------------------------------------------- | -------------------- | -------------------------- | -------------------------- | +| ORIG_01 | Origin of Coordinate System is set as requested | [(0., 0., 0.)] | | Project Global Positioning | +| ORIG_02 | True north is set as requested | [(0., 1., 0.)] | | Project Global Positioning | +| DIST_01 | Unit of measure for all distances | [meter] | | Project Units | +| ANGL_01 | Unit of measure all angles | [radian] | | Project Units | +| DIST_02 | Required precision for distances | [0,0001] | all alignment segments | na | +| ANGL_02 | Required precision for angles and slope | [0,000001] | | na | + +### Project global positioning + +| Element | Attribute | Value | Comment | +| ---------------- | ---------------- | --------- | ------- | +| IfcMapConversion | Eastings | 24525000 | | +| IfcMapConversion | Northings | 6876000 | | +| IfcMapConversion | OrthogonalHeight | 0 | | +| IfcMapConversion | XAxisAbscissa | 1 | | +| IfcMapConversion | XAxisOrdinate | 0 | | +| IfcMapConversion | Scale | 1 | | +| IfcProjectedCRS | Name | EPSG:3878 | | +| IfcProjectedCRS | GeodeticDatum | EPSG:6258 | | +| IfcProjectedCRS | VerticalDatum | EPSG:3900 | | diff --git a/E1a-ARSE/README.md b/E1a-ARSE/README.md index b7d172a..69b48e8 100644 --- a/E1a-ARSE/README.md +++ b/E1a-ARSE/README.md @@ -10,7 +10,7 @@ Exchange Lead: @larswik TBC -...The Alignment Reference Super Elevation Exchange is an extension *superset* of the Alignment Reference Exchange ([IFC4x3_AbRV-E1](../E1-ALRF))... +...The Alignment Reference Super Elevation Exchange is an extension *superset* of the Alignment Reference Exchange ([IFC4x3_AbRV-E1](../E1-ALRF)). ### Scope @@ -20,7 +20,14 @@ TBC ## Test Instructions -| TI Code | Test Instruction Title | -|------------------------------------|-----------------------------------| -| [**IFC4x3_AbRV-E1a-ALIN**](./ALIN) | Alignment Infrastructure Curves | -| [**IFC4x3_AbRV-E1a-ALSE**](./ALSE) | Alignment Super Elevation & Width | \ No newline at end of file +| TI Code | Test Instruction Title | +| -------------------------------------- | ------------------------------------------------------------ | +| [**IFC4x3_AbRV-E1a-ALIN01**](./ALIN01) | Alignment layout
Horizontal: Line, Circular arc, Clothoid
Vertical: Line, Circular arc (including "S") | +| [**IFC4x3_AbRV-E1a-ALIN02**](./ALIN02) | Alignment layout
Horizontal: Line, Circular arc, Clothoid
Vertical: Line, Parabolic arc (including "S") | +| [**IFC4x3_AbRV-E1a-ALIN03**](./ALIN03) | Alignment layout
Horizontal: Line, Circular Arc
Vertical: Line, Circular Arc
Geometry: IfcPolyline (2d) | +| [**IFC4x3_AbRV-E1a-ALIN04**](./ALIN04) | Alignment layout : See ALIN01
Geometry: IfcCompositeCurve, IfcGradientCurve | +| [**IFC4x3_AbRV-E1a-ALIN05**](./ALIN05) | Alignment layout: See ALIN02
Geometry: IfcCompositeCurve, IfcGradientCurve | +| [**IFC4x3_AbRV-E1a-ALIN06**](./ALIN06) | Alignment layout: See ALIN03
Geometry: IfcCompositeCurve, IfcGradientCurve | +| [**IFC4x3_AbRV-E1a-ALSE01**](./ALSE01) | Alignment Superelevation
Alignment: See ALIN06 | +| [**IFC4x3_AbRV-E1a-ALSE02**](./ALSE02) | Alignment Superelevation plus Width
Alignment: See ALIN06 | +