품질 강화 — ADR-004 + IFC snapshot 테스트 + helper 유닛 + clippy 경고 정리
## ADR-004 (Output/reports/ADR-004-sprint-25-39-decisions.md) Sprint 25~39 기간의 **15개 아키텍처 결정** 정리: - D1~D9: 거더교 MVP 확장 (단면 분기·다경간·Skew 관례·방호벽·격벽·Camber·헌치·UI) - D10~D13: IFC4X3 Add2 익스포터 4 결정 (크레이트 분리·형상 전략 3단계·GUID·Camber 근사) - D14: proc-macro 스캐폴딩 (전면 #[param] 는 Feature 10+ 안정 후) - D15: 변단면 거더 알고리즘 (소핏 lift + Y 선형보간) - 미결 6항목 (Pset 확장·LinearPlacement·ElementAssembly·IfcPile·#[param] 전면·변단면 IFC) - 테스트 커버리지 101개 현황표 ## IFC 스냅샷 테스트 (crates/ifc/tests/snapshot_tests.rs) insta 기반 회귀 방지, 8개 baseline: - mask_guids(): 22자 IFC GUID 를 'GUID' 로 정규화 (결정적 비교 가능) - 시나리오: 기본 단경간 PSC-I / 2경간 π형 / skew 15° / camber 50mm / Rectangle 단면 / parapets off - mask_guids 자체 유닛 테스트 2개 ## Mesh helper 유닛 테스트 (crates/viewer/src/bridge_scene.rs helper_tests) 순수 함수 9개 검증: - apply_camber_mesh: zero 항등·midspan 도달값·경간 밖 미영향 - rotate_y_around_z: 0 회전 항등·90° 피봇 회전·정점 개수 보존 - apply_variable_depth: zero 항등·소핏 lift · 지점 0 lift ## clippy lib 경고 15+ → 0 - map_identity (kernel/expansion_joint.rs) - unnecessary_lazy_evaluations ×4 (dsl/abutment·pier·csv_template — auto-fix) - too_many_arguments (usd save_scene — allow with justification) - clamp-like 패턴 ×7 (viewer bridge_scene/incremental_scene 의 .max(1).min(N) → .clamp(1, N)) - redundant_closure ×2 (project_file 의 `|e| Error::other(e)` → `Error::other`) - redundant_guard ×1 (viewer KeyboardInput match guard → 패턴 내 직접 매치) cargo clippy --workspace --lib: 0 경고. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,242 @@
|
||||
---
|
||||
source: crates/ifc/tests/snapshot_tests.rs
|
||||
expression: mask_guids(&ifc)
|
||||
---
|
||||
ISO-10303-21;
|
||||
HEADER;
|
||||
FILE_DESCRIPTION(('ViewDefinition [BridgeViewDefinition]'), '2;1');
|
||||
FILE_NAME('cimery-bridge.ifc', '2026-04-15T00:00:00', (''), (''), 'cimery 0.1.0', 'cimery', '');
|
||||
FILE_SCHEMA(('IFC4X3_ADD2'));
|
||||
ENDSEC;
|
||||
DATA;
|
||||
#1 = IFCSIUNIT(*,.LENGTHUNIT.,.MILLI.,.METRE.);
|
||||
#2 = IFCSIUNIT(*,.PLANEANGLEUNIT.,$,.RADIAN.);
|
||||
#3 = IFCSIUNIT(*,.SOLIDANGLEUNIT.,$,.STERADIAN.);
|
||||
#4 = IFCSIUNIT(*,.AREAUNIT.,$,.SQUARE_METRE.);
|
||||
#5 = IFCSIUNIT(*,.VOLUMEUNIT.,$,.CUBIC_METRE.);
|
||||
#6 = IFCSIUNIT(*,.TIMEUNIT.,$,.SECOND.);
|
||||
#7 = IFCSIUNIT(*,.MASSUNIT.,.KILO.,.GRAM.);
|
||||
#8 = IFCUNITASSIGNMENT((#1, #2, #3, #4, #5, #6, #7));
|
||||
#9 = IFCCARTESIANPOINT((0.000000, 0.000000, 0.000000));
|
||||
#10 = IFCDIRECTION((0.000000, 0.000000, 1.000000));
|
||||
#11 = IFCDIRECTION((1.000000, 0.000000, 0.000000));
|
||||
#12 = IFCAXIS2PLACEMENT3D(#9,#10,#11);
|
||||
#13 = IFCLOCALPLACEMENT($,#12);
|
||||
#14 = IFCGEOMETRICREPRESENTATIONCONTEXT($,'Model',3,1.0E-5,#12,$);
|
||||
#15 = IFCPROJECT('GUID',$,'cimery-bridge',$,$,$,$,(#14),#8);
|
||||
#16 = IFCSITE('GUID',$,'Site',$,$,#13,$,$,.ELEMENT.,$,$,$,$,$);
|
||||
#17 = IFCBRIDGE('GUID',$,'cimery-bridge',$,$,#13,$,$,.ELEMENT.,.GIRDER.);
|
||||
#18 = IFCRELAGGREGATES('GUID',$,$,$,#15,(#16));
|
||||
#19 = IFCCARTESIANPOINT((0.000000,0.000000));
|
||||
#20 = IFCALIGNMENTHORIZONTALSEGMENT($,$,#19,0.000000,$,40000.000000,0.000000,$,.LINE.);
|
||||
#21 = IFCALIGNMENTSEGMENT('GUID',$,$,$,$,#13,$,#20);
|
||||
#22 = IFCALIGNMENTHORIZONTAL('GUID',$,'Horizontal',$,$,#13,$);
|
||||
#23 = IFCRELNESTS('GUID',$,$,$,#22,(#21));
|
||||
#24 = IFCALIGNMENTVERTICALSEGMENT($,$,0.000000,40000.000000,0.000000,0.000000,0.000000,$,.CONSTANTGRADIENT.);
|
||||
#25 = IFCALIGNMENTSEGMENT('GUID',$,$,$,$,#13,$,#24);
|
||||
#26 = IFCALIGNMENTVERTICAL('GUID',$,'Vertical',$,$,#13,$);
|
||||
#27 = IFCRELNESTS('GUID',$,$,$,#26,(#25));
|
||||
#28 = IFCALIGNMENT('GUID',$,'Bridge Alignment',$,$,#13,$,.USERDEFINED.,$);
|
||||
#29 = IFCRELNESTS('GUID',$,$,$,#28,(#22,#26));
|
||||
#30 = IFCRELAGGREGATES('GUID',$,$,$,#16,(#17,#28));
|
||||
#31 = IFCCARTESIANPOINT((-1250.000000, 960.000000, 20000.000000));
|
||||
#32 = IFCDIRECTION((0.000000, 0.000000, 1.000000));
|
||||
#33 = IFCDIRECTION((1.000000, 0.000000, 0.000000));
|
||||
#34 = IFCAXIS2PLACEMENT3D(#31,#32,#33);
|
||||
#35 = IFCLOCALPLACEMENT(#13,#34);
|
||||
#36 = IFCCARTESIANPOINT((-350.000000,-900.000000));
|
||||
#37 = IFCCARTESIANPOINT((350.000000,-900.000000));
|
||||
#38 = IFCCARTESIANPOINT((350.000000,-720.000000));
|
||||
#39 = IFCCARTESIANPOINT((100.000000,-720.000000));
|
||||
#40 = IFCCARTESIANPOINT((100.000000,700.000000));
|
||||
#41 = IFCCARTESIANPOINT((150.000000,750.000000));
|
||||
#42 = IFCCARTESIANPOINT((300.000000,750.000000));
|
||||
#43 = IFCCARTESIANPOINT((300.000000,900.000000));
|
||||
#44 = IFCCARTESIANPOINT((-300.000000,900.000000));
|
||||
#45 = IFCCARTESIANPOINT((-300.000000,750.000000));
|
||||
#46 = IFCCARTESIANPOINT((-150.000000,750.000000));
|
||||
#47 = IFCCARTESIANPOINT((-100.000000,700.000000));
|
||||
#48 = IFCCARTESIANPOINT((-100.000000,-720.000000));
|
||||
#49 = IFCCARTESIANPOINT((-350.000000,-720.000000));
|
||||
#50 = IFCPOLYLINE((#36, #37, #38, #39, #40, #41, #42, #43, #44, #45, #46, #47, #48, #49, #36));
|
||||
#51 = IFCARBITRARYCLOSEDPROFILEDEF(.AREA.,'PSC-I',#50);
|
||||
#52 = IFCCARTESIANPOINT((0.000000, 0.000000, 0.000000));
|
||||
#53 = IFCDIRECTION((0.000000, 0.000000, 1.000000));
|
||||
#54 = IFCDIRECTION((1.000000, 0.000000, 0.000000));
|
||||
#55 = IFCAXIS2PLACEMENT3D(#52,#53,#54);
|
||||
#56 = IFCDIRECTION((0.000000, 0.000000, 1.000000));
|
||||
#57 = IFCEXTRUDEDAREASOLID(#51,#55,#56,40000.000000);
|
||||
#58 = IFCSHAPEREPRESENTATION(#14,'Body','SweptSolid',(#57));
|
||||
#59 = IFCPRODUCTDEFINITIONSHAPE($,$,(#58));
|
||||
#60 = IFCBEAM('GUID',$,'Girder S1-G1',$,$,#35,#59,$,.BEAM.);
|
||||
#61 = IFCPROPERTYSINGLEVALUE('Reference',$,IFCIDENTIFIER('Girder S1-G1'),$);
|
||||
#62 = IFCPROPERTYSINGLEVALUE('Span',$,IFCLENGTHMEASURE(40000.000000),$);
|
||||
#63 = IFCPROPERTYSINGLEVALUE('LoadBearing',$,IFCBOOLEAN(.T.),$);
|
||||
#64 = IFCPROPERTYSINGLEVALUE('IsExternal',$,IFCBOOLEAN(.F.),$);
|
||||
#65 = IFCPROPERTYSET('GUID',$,'Pset_BeamCommon',$,(#61, #62, #63, #64));
|
||||
#66 = IFCRELDEFINESBYPROPERTIES('GUID',$,$,$,(#60),#65);
|
||||
#67 = IFCCARTESIANPOINT((1250.000000, 960.000000, 20000.000000));
|
||||
#68 = IFCDIRECTION((0.000000, 0.000000, 1.000000));
|
||||
#69 = IFCDIRECTION((1.000000, 0.000000, 0.000000));
|
||||
#70 = IFCAXIS2PLACEMENT3D(#67,#68,#69);
|
||||
#71 = IFCLOCALPLACEMENT(#13,#70);
|
||||
#72 = IFCCARTESIANPOINT((-350.000000,-900.000000));
|
||||
#73 = IFCCARTESIANPOINT((350.000000,-900.000000));
|
||||
#74 = IFCCARTESIANPOINT((350.000000,-720.000000));
|
||||
#75 = IFCCARTESIANPOINT((100.000000,-720.000000));
|
||||
#76 = IFCCARTESIANPOINT((100.000000,700.000000));
|
||||
#77 = IFCCARTESIANPOINT((150.000000,750.000000));
|
||||
#78 = IFCCARTESIANPOINT((300.000000,750.000000));
|
||||
#79 = IFCCARTESIANPOINT((300.000000,900.000000));
|
||||
#80 = IFCCARTESIANPOINT((-300.000000,900.000000));
|
||||
#81 = IFCCARTESIANPOINT((-300.000000,750.000000));
|
||||
#82 = IFCCARTESIANPOINT((-150.000000,750.000000));
|
||||
#83 = IFCCARTESIANPOINT((-100.000000,700.000000));
|
||||
#84 = IFCCARTESIANPOINT((-100.000000,-720.000000));
|
||||
#85 = IFCCARTESIANPOINT((-350.000000,-720.000000));
|
||||
#86 = IFCPOLYLINE((#72, #73, #74, #75, #76, #77, #78, #79, #80, #81, #82, #83, #84, #85, #72));
|
||||
#87 = IFCARBITRARYCLOSEDPROFILEDEF(.AREA.,'PSC-I',#86);
|
||||
#88 = IFCCARTESIANPOINT((0.000000, 0.000000, 0.000000));
|
||||
#89 = IFCDIRECTION((0.000000, 0.000000, 1.000000));
|
||||
#90 = IFCDIRECTION((1.000000, 0.000000, 0.000000));
|
||||
#91 = IFCAXIS2PLACEMENT3D(#88,#89,#90);
|
||||
#92 = IFCDIRECTION((0.000000, 0.000000, 1.000000));
|
||||
#93 = IFCEXTRUDEDAREASOLID(#87,#91,#92,40000.000000);
|
||||
#94 = IFCSHAPEREPRESENTATION(#14,'Body','SweptSolid',(#93));
|
||||
#95 = IFCPRODUCTDEFINITIONSHAPE($,$,(#94));
|
||||
#96 = IFCBEAM('GUID',$,'Girder S1-G2',$,$,#71,#95,$,.BEAM.);
|
||||
#97 = IFCPROPERTYSINGLEVALUE('Reference',$,IFCIDENTIFIER('Girder S1-G2'),$);
|
||||
#98 = IFCPROPERTYSINGLEVALUE('Span',$,IFCLENGTHMEASURE(40000.000000),$);
|
||||
#99 = IFCPROPERTYSINGLEVALUE('LoadBearing',$,IFCBOOLEAN(.T.),$);
|
||||
#100 = IFCPROPERTYSINGLEVALUE('IsExternal',$,IFCBOOLEAN(.F.),$);
|
||||
#101 = IFCPROPERTYSET('GUID',$,'Pset_BeamCommon',$,(#97, #98, #99, #100));
|
||||
#102 = IFCRELDEFINESBYPROPERTIES('GUID',$,$,$,(#96),#101);
|
||||
#103 = IFCCARTESIANPOINT((0.000000, 1970.000000, 20000.000000));
|
||||
#104 = IFCDIRECTION((0.000000, 0.000000, 1.000000));
|
||||
#105 = IFCDIRECTION((1.000000, 0.000000, 0.000000));
|
||||
#106 = IFCAXIS2PLACEMENT3D(#103,#104,#105);
|
||||
#107 = IFCLOCALPLACEMENT(#13,#106);
|
||||
#108 = IFCCARTESIANPOINT((0.000000,0.000000));
|
||||
#109 = IFCDIRECTION((1.000000,0.000000));
|
||||
#110 = IFCAXIS2PLACEMENT2D(#108,#109);
|
||||
#111 = IFCRECTANGLEPROFILEDEF(.AREA.,$,#110,4500.000000,220.000000);
|
||||
#112 = IFCCARTESIANPOINT((0.000000, 0.000000, 0.000000));
|
||||
#113 = IFCDIRECTION((0.000000, 0.000000, 1.000000));
|
||||
#114 = IFCDIRECTION((1.000000, 0.000000, 0.000000));
|
||||
#115 = IFCAXIS2PLACEMENT3D(#112,#113,#114);
|
||||
#116 = IFCDIRECTION((0.000000, 0.000000, 1.000000));
|
||||
#117 = IFCEXTRUDEDAREASOLID(#111,#115,#116,40000.000000);
|
||||
#118 = IFCSHAPEREPRESENTATION(#14,'Body','SweptSolid',(#117));
|
||||
#119 = IFCPRODUCTDEFINITIONSHAPE($,$,(#118));
|
||||
#120 = IFCSLAB('GUID',$,'Deck Slab',$,$,#107,#119,$,.FLOOR.);
|
||||
#121 = IFCCARTESIANPOINT((0.000000, -930.000000, -400.000000));
|
||||
#122 = IFCDIRECTION((0.000000, 0.000000, 1.000000));
|
||||
#123 = IFCDIRECTION((1.000000, 0.000000, -0.000000));
|
||||
#124 = IFCAXIS2PLACEMENT3D(#121,#122,#123);
|
||||
#125 = IFCLOCALPLACEMENT(#13,#124);
|
||||
#126 = IFCCARTESIANPOINT((0.000000,0.000000));
|
||||
#127 = IFCDIRECTION((1.000000,0.000000));
|
||||
#128 = IFCAXIS2PLACEMENT2D(#126,#127);
|
||||
#129 = IFCRECTANGLEPROFILEDEF(.AREA.,$,#128,5500.000000,1860.000000);
|
||||
#130 = IFCCARTESIANPOINT((0.000000, 0.000000, 0.000000));
|
||||
#131 = IFCDIRECTION((0.000000, 0.000000, 1.000000));
|
||||
#132 = IFCDIRECTION((1.000000, 0.000000, 0.000000));
|
||||
#133 = IFCAXIS2PLACEMENT3D(#130,#131,#132);
|
||||
#134 = IFCDIRECTION((0.000000, 0.000000, 1.000000));
|
||||
#135 = IFCEXTRUDEDAREASOLID(#129,#133,#134,800.000000);
|
||||
#136 = IFCSHAPEREPRESENTATION(#14,'Body','SweptSolid',(#135));
|
||||
#137 = IFCPRODUCTDEFINITIONSHAPE($,$,(#136));
|
||||
#138 = IFCFOOTING('GUID',$,'Abutment Start',$,$,#125,#137,$,.PAD_FOOTING.);
|
||||
#139 = IFCCARTESIANPOINT((0.000000, -930.000000, 40400.000000));
|
||||
#140 = IFCDIRECTION((0.000000, 0.000000, 1.000000));
|
||||
#141 = IFCDIRECTION((1.000000, 0.000000, -0.000000));
|
||||
#142 = IFCAXIS2PLACEMENT3D(#139,#140,#141);
|
||||
#143 = IFCLOCALPLACEMENT(#13,#142);
|
||||
#144 = IFCCARTESIANPOINT((0.000000,0.000000));
|
||||
#145 = IFCDIRECTION((1.000000,0.000000));
|
||||
#146 = IFCAXIS2PLACEMENT2D(#144,#145);
|
||||
#147 = IFCRECTANGLEPROFILEDEF(.AREA.,$,#146,5500.000000,1860.000000);
|
||||
#148 = IFCCARTESIANPOINT((0.000000, 0.000000, 0.000000));
|
||||
#149 = IFCDIRECTION((0.000000, 0.000000, 1.000000));
|
||||
#150 = IFCDIRECTION((1.000000, 0.000000, 0.000000));
|
||||
#151 = IFCAXIS2PLACEMENT3D(#148,#149,#150);
|
||||
#152 = IFCDIRECTION((0.000000, 0.000000, 1.000000));
|
||||
#153 = IFCEXTRUDEDAREASOLID(#147,#151,#152,800.000000);
|
||||
#154 = IFCSHAPEREPRESENTATION(#14,'Body','SweptSolid',(#153));
|
||||
#155 = IFCPRODUCTDEFINITIONSHAPE($,$,(#154));
|
||||
#156 = IFCFOOTING('GUID',$,'Abutment End',$,$,#143,#155,$,.PAD_FOOTING.);
|
||||
#157 = IFCCARTESIANPOINT((-1250.000000, 0.000000, 0.000000));
|
||||
#158 = IFCDIRECTION((0.000000, 0.000000, 1.000000));
|
||||
#159 = IFCDIRECTION((1.000000, 0.000000, -0.000000));
|
||||
#160 = IFCAXIS2PLACEMENT3D(#157,#158,#159);
|
||||
#161 = IFCLOCALPLACEMENT(#13,#160);
|
||||
#162 = IFCCARTESIANPOINT((0.000000,0.000000));
|
||||
#163 = IFCDIRECTION((1.000000,0.000000));
|
||||
#164 = IFCAXIS2PLACEMENT2D(#162,#163);
|
||||
#165 = IFCRECTANGLEPROFILEDEF(.AREA.,$,#164,450.000000,60.000000);
|
||||
#166 = IFCCARTESIANPOINT((0.000000, 0.000000, 0.000000));
|
||||
#167 = IFCDIRECTION((0.000000, 0.000000, 1.000000));
|
||||
#168 = IFCDIRECTION((1.000000, 0.000000, 0.000000));
|
||||
#169 = IFCAXIS2PLACEMENT3D(#166,#167,#168);
|
||||
#170 = IFCDIRECTION((0.000000, 0.000000, 1.000000));
|
||||
#171 = IFCEXTRUDEDAREASOLID(#165,#169,#170,350.000000);
|
||||
#172 = IFCSHAPEREPRESENTATION(#14,'Body','SweptSolid',(#171));
|
||||
#173 = IFCPRODUCTDEFINITIONSHAPE($,$,(#172));
|
||||
#174 = IFCBEARING('GUID',$,'Bearing S0-G1',$,$,#161,#173,$,.ELASTOMERIC.);
|
||||
#175 = IFCCARTESIANPOINT((1250.000000, 0.000000, 0.000000));
|
||||
#176 = IFCDIRECTION((0.000000, 0.000000, 1.000000));
|
||||
#177 = IFCDIRECTION((1.000000, 0.000000, -0.000000));
|
||||
#178 = IFCAXIS2PLACEMENT3D(#175,#176,#177);
|
||||
#179 = IFCLOCALPLACEMENT(#13,#178);
|
||||
#180 = IFCCARTESIANPOINT((0.000000,0.000000));
|
||||
#181 = IFCDIRECTION((1.000000,0.000000));
|
||||
#182 = IFCAXIS2PLACEMENT2D(#180,#181);
|
||||
#183 = IFCRECTANGLEPROFILEDEF(.AREA.,$,#182,450.000000,60.000000);
|
||||
#184 = IFCCARTESIANPOINT((0.000000, 0.000000, 0.000000));
|
||||
#185 = IFCDIRECTION((0.000000, 0.000000, 1.000000));
|
||||
#186 = IFCDIRECTION((1.000000, 0.000000, 0.000000));
|
||||
#187 = IFCAXIS2PLACEMENT3D(#184,#185,#186);
|
||||
#188 = IFCDIRECTION((0.000000, 0.000000, 1.000000));
|
||||
#189 = IFCEXTRUDEDAREASOLID(#183,#187,#188,350.000000);
|
||||
#190 = IFCSHAPEREPRESENTATION(#14,'Body','SweptSolid',(#189));
|
||||
#191 = IFCPRODUCTDEFINITIONSHAPE($,$,(#190));
|
||||
#192 = IFCBEARING('GUID',$,'Bearing S0-G2',$,$,#179,#191,$,.ELASTOMERIC.);
|
||||
#193 = IFCCARTESIANPOINT((-1250.000000, 0.000000, 40000.000000));
|
||||
#194 = IFCDIRECTION((0.000000, 0.000000, 1.000000));
|
||||
#195 = IFCDIRECTION((1.000000, 0.000000, -0.000000));
|
||||
#196 = IFCAXIS2PLACEMENT3D(#193,#194,#195);
|
||||
#197 = IFCLOCALPLACEMENT(#13,#196);
|
||||
#198 = IFCCARTESIANPOINT((0.000000,0.000000));
|
||||
#199 = IFCDIRECTION((1.000000,0.000000));
|
||||
#200 = IFCAXIS2PLACEMENT2D(#198,#199);
|
||||
#201 = IFCRECTANGLEPROFILEDEF(.AREA.,$,#200,450.000000,60.000000);
|
||||
#202 = IFCCARTESIANPOINT((0.000000, 0.000000, 0.000000));
|
||||
#203 = IFCDIRECTION((0.000000, 0.000000, 1.000000));
|
||||
#204 = IFCDIRECTION((1.000000, 0.000000, 0.000000));
|
||||
#205 = IFCAXIS2PLACEMENT3D(#202,#203,#204);
|
||||
#206 = IFCDIRECTION((0.000000, 0.000000, 1.000000));
|
||||
#207 = IFCEXTRUDEDAREASOLID(#201,#205,#206,350.000000);
|
||||
#208 = IFCSHAPEREPRESENTATION(#14,'Body','SweptSolid',(#207));
|
||||
#209 = IFCPRODUCTDEFINITIONSHAPE($,$,(#208));
|
||||
#210 = IFCBEARING('GUID',$,'Bearing S1-G1',$,$,#197,#209,$,.ELASTOMERIC.);
|
||||
#211 = IFCCARTESIANPOINT((1250.000000, 0.000000, 40000.000000));
|
||||
#212 = IFCDIRECTION((0.000000, 0.000000, 1.000000));
|
||||
#213 = IFCDIRECTION((1.000000, 0.000000, -0.000000));
|
||||
#214 = IFCAXIS2PLACEMENT3D(#211,#212,#213);
|
||||
#215 = IFCLOCALPLACEMENT(#13,#214);
|
||||
#216 = IFCCARTESIANPOINT((0.000000,0.000000));
|
||||
#217 = IFCDIRECTION((1.000000,0.000000));
|
||||
#218 = IFCAXIS2PLACEMENT2D(#216,#217);
|
||||
#219 = IFCRECTANGLEPROFILEDEF(.AREA.,$,#218,450.000000,60.000000);
|
||||
#220 = IFCCARTESIANPOINT((0.000000, 0.000000, 0.000000));
|
||||
#221 = IFCDIRECTION((0.000000, 0.000000, 1.000000));
|
||||
#222 = IFCDIRECTION((1.000000, 0.000000, 0.000000));
|
||||
#223 = IFCAXIS2PLACEMENT3D(#220,#221,#222);
|
||||
#224 = IFCDIRECTION((0.000000, 0.000000, 1.000000));
|
||||
#225 = IFCEXTRUDEDAREASOLID(#219,#223,#224,350.000000);
|
||||
#226 = IFCSHAPEREPRESENTATION(#14,'Body','SweptSolid',(#225));
|
||||
#227 = IFCPRODUCTDEFINITIONSHAPE($,$,(#226));
|
||||
#228 = IFCBEARING('GUID',$,'Bearing S1-G2',$,$,#215,#227,$,.ELASTOMERIC.);
|
||||
#229 = IFCRELCONTAINEDINSPATIALSTRUCTURE('GUID',$,'Contents','Bridge elements',(#60, #96, #120, #138, #156, #174, #192, #210, #228),#17);
|
||||
ENDSEC;
|
||||
END-ISO-10303-21;
|
||||
Reference in New Issue
Block a user