Files
bherbruck fc3dedfd5c STEP import: regression sweep over the step-conformance parts of known shape (#3880)
* STEP import: regression sweep over the step-conformance parts of known shape

Fifteen generated parts from step-conformance (CC0): plain, NURBS, seamed,
placed, inch and far-away cylinders, domes, a grooved shaft, a plate with 100
holes, a 3.6 m disc, a 0.5 mm pin, a B-spline half-torus and a washer. Each
reads back with its exact volume, its box and its face count. The half-torus
on a TOROIDAL_SURFACE and the cones to a point are left out until they read
right.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* STEP conformance sweep: the pin's volume as FRAC_PI_8 (clippy)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-20 23:07:47 +00:00

77 lines
3.0 KiB
Plaintext

ISO-10303-21;
HEADER;
FILE_DESCRIPTION(('step-conformance generated part'),'2;1');
FILE_NAME('tiny_pin.step','2026-10-12T00:00:00',(''),(''),'step-conformance generate','step-conformance generate','');
FILE_SCHEMA(('AUTOMOTIVE_DESIGN { 1 0 10303 214 1 1 1 1 }'));
ENDSEC;
DATA;
#1=( LENGTH_UNIT() NAMED_UNIT(*) SI_UNIT(.MILLI.,.METRE.) );
#2=( NAMED_UNIT(*) PLANE_ANGLE_UNIT() SI_UNIT($,.RADIAN.) );
#3=( NAMED_UNIT(*) SI_UNIT($,.STERADIAN.) SOLID_ANGLE_UNIT() );
#4=UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(1.E-7),#1,'distance_accuracy_value','confusion accuracy');
#5=( GEOMETRIC_REPRESENTATION_CONTEXT(3) GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#4)) GLOBAL_UNIT_ASSIGNED_CONTEXT((#1,#2,#3)) REPRESENTATION_CONTEXT('','3D') );
#6=APPLICATION_CONTEXT('automotive design');
#7=APPLICATION_PROTOCOL_DEFINITION('international standard','automotive_design',2000,#6);
#8=PRODUCT_CONTEXT('',#6,'mechanical');
#9=PRODUCT_DEFINITION_CONTEXT('part definition',#6,'design');
#10=PRODUCT('tiny_pin','tiny_pin','',(#8));
#11=PRODUCT_DEFINITION_FORMATION('','',#10);
#12=PRODUCT_DEFINITION('design','',#11,#9);
#13=PRODUCT_DEFINITION_SHAPE('','',#12);
#14=CARTESIAN_POINT('',(0.0,0.0,0.0));
#15=DIRECTION('',(0.0,0.0,1.0));
#16=DIRECTION('',(1.0,0.0,0.0));
#17=AXIS2_PLACEMENT_3D('',#14,#15,#16);
#18=CARTESIAN_POINT('',(0.0,0.0,0.0));
#19=DIRECTION('',(0.0,0.0,1.0));
#20=DIRECTION('',(1.0,0.0,0.0));
#21=AXIS2_PLACEMENT_3D('',#18,#19,#20);
#22=CIRCLE('',#21,0.25);
#23=CARTESIAN_POINT('',(0.25,0.0,0.0));
#24=VERTEX_POINT('',#23);
#25=EDGE_CURVE('',#24,#24,#22,.T.);
#26=CARTESIAN_POINT('',(0.0,0.0,2.0));
#27=DIRECTION('',(0.0,0.0,1.0));
#28=DIRECTION('',(1.0,0.0,0.0));
#29=AXIS2_PLACEMENT_3D('',#26,#27,#28);
#30=CIRCLE('',#29,0.25);
#31=CARTESIAN_POINT('',(0.25,0.0,2.0));
#32=VERTEX_POINT('',#31);
#33=EDGE_CURVE('',#32,#32,#30,.T.);
#34=CARTESIAN_POINT('',(0.0,0.0,0.0));
#35=DIRECTION('',(0.0,0.0,1.0));
#36=DIRECTION('',(1.0,0.0,0.0));
#37=AXIS2_PLACEMENT_3D('',#34,#35,#36);
#38=PLANE('',#37);
#39=ORIENTED_EDGE('',*,*,#25,.F.);
#40=EDGE_LOOP('',(#39));
#41=FACE_OUTER_BOUND('',#40,.T.);
#42=ADVANCED_FACE('',(#41),#38,.F.);
#43=CARTESIAN_POINT('',(0.0,0.0,0.0));
#44=DIRECTION('',(0.0,0.0,1.0));
#45=DIRECTION('',(1.0,0.0,0.0));
#46=AXIS2_PLACEMENT_3D('',#43,#44,#45);
#47=CYLINDRICAL_SURFACE('',#46,0.25);
#48=ORIENTED_EDGE('',*,*,#25,.T.);
#49=EDGE_LOOP('',(#48));
#50=ORIENTED_EDGE('',*,*,#33,.F.);
#51=EDGE_LOOP('',(#50));
#52=FACE_OUTER_BOUND('',#49,.T.);
#53=FACE_BOUND('',#51,.T.);
#54=ADVANCED_FACE('',(#52,#53),#47,.T.);
#55=CARTESIAN_POINT('',(0.0,0.0,2.0));
#56=DIRECTION('',(0.0,0.0,1.0));
#57=DIRECTION('',(1.0,0.0,0.0));
#58=AXIS2_PLACEMENT_3D('',#55,#56,#57);
#59=PLANE('',#58);
#60=ORIENTED_EDGE('',*,*,#33,.T.);
#61=EDGE_LOOP('',(#60));
#62=FACE_OUTER_BOUND('',#61,.T.);
#63=ADVANCED_FACE('',(#62),#59,.T.);
#64=CLOSED_SHELL('',(#42,#54,#63));
#65=MANIFOLD_SOLID_BREP('',#64);
#66=ADVANCED_BREP_SHAPE_REPRESENTATION('',(#17,#65),#5);
#67=SHAPE_DEFINITION_REPRESENTATION(#13,#66);
ENDSEC;
END-ISO-10303-21;