STEP Import Issue: Conical Surface interpreted as a circle

I am experiencing a critical issue when opening a specific STEP file (157f8ef244231cb5305051c293e4ec2d.stp) in Rhino.

Problem: When I directly open the attached STEP file in Rhino (File → Open), the object appears only as a 2D circle/disk, which represents the base of a cone. The conical surface itself is missing entirely.

The same behavior occurs when importing the file programmatically via RhinoDoc.Import() in a C# plugin.
Attaching the STEP file below:

ISO-10303-21;
HEADER;
/* Generated by software containing ST-Developer

from STEP Tools, Inc. (www.steptools.com)
*/

FILE_DESCRIPTION(
/* description / (‘’),
/ implementation_level */ ‘2;1’);

FILE_NAME(
/* name / ‘157f8ef244231cb5305051c293e4ec2d.stp’,
/ time_stamp / ‘2026-06-02T15:43:40+05:30’,
/ author / (‘’),
/ organization / (‘’),
/ preprocessor_version / ‘ST-DEVELOPER v20.1’,
/ originating_system / ‘ATF’,
/ authorisation */ ‘’);

FILE_SCHEMA ((‘AUTOMOTIVE_DESIGN { 1 0 10303 214 3 1 1 }’));
ENDSEC;

DATA;
#10=MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION(‘’,(),#57);
#11=SHAPE_REPRESENTATION_RELATIONSHIP(‘SRR’,‘None’,#63,#12);
#12=ADVANCED_BREP_SHAPE_REPRESENTATION(‘’,(#13),#56);
#13=MANIFOLD_SOLID_BREP(‘’,#33);
#14=PLANE(‘’,#37);
#15=FACE_OUTER_BOUND(‘’,#17,.T.);
#16=FACE_OUTER_BOUND(‘’,#18,.T.);
#17=EDGE_LOOP(‘’,(#26,#27,#28));
#18=EDGE_LOOP(‘’,(#29));
#19=CIRCLE(‘’,#36,152.4);
#20=LINE(‘’,#51,#21);
#21=VECTOR(‘’,#42,76.2);
#22=VERTEX_POINT(‘’,#49);
#23=VERTEX_POINT(‘’,#50);
#24=EDGE_CURVE(‘’,#22,#23,#20,.T.);
#25=EDGE_CURVE(‘’,#23,#23,#19,.T.);
#26=ORIENTED_EDGE(‘’,,,#24,.T.);
#27=ORIENTED_EDGE(‘’,,,#25,.F.);
#28=ORIENTED_EDGE(‘’,,,#24,.F.);
#29=ORIENTED_EDGE(‘’,,,#25,.T.);
#30=CONICAL_SURFACE(‘’,#35,76.2,0.165148677414627);
#31=ADVANCED_FACE(‘’,(#15),#30,.T.);
#32=ADVANCED_FACE(‘’,(#16),#14,.T.);
#33=CLOSED_SHELL(‘’,(#31,#32));
#34=AXIS2_PLACEMENT_3D(‘’,#47,#38,#39);
#35=AXIS2_PLACEMENT_3D(‘’,#48,#40,#41);
#36=AXIS2_PLACEMENT_3D(‘’,#52,#43,#44);
#37=AXIS2_PLACEMENT_3D(‘’,#53,#45,#46);
#38=DIRECTION(‘axis’,(0.,0.,1.));
#39=DIRECTION(‘refdir’,(1.,0.,0.));
#40=DIRECTION(‘center_axis’,(0.,0.,-1.));
#41=DIRECTION(‘ref_axis’,(1.,0.,0.));
#42=DIRECTION(‘’,(-0.164398987305357,-2.01330693586572E-17,-0.986393923832144));
#43=DIRECTION(‘center_axis’,(0.,0.,-1.));
#44=DIRECTION(‘ref_axis’,(1.,0.,0.));
#45=DIRECTION(‘center_axis’,(0.,0.,-1.));
#46=DIRECTION(‘ref_axis’,(-1.,0.,0.));
#47=CARTESIAN_POINT(‘’,(0.,0.,0.));
#48=CARTESIAN_POINT(‘Origin’,(-1828.8,-1828.8,457.2));
#49=CARTESIAN_POINT(‘’,(-1828.8,-1828.8,914.4));
#50=CARTESIAN_POINT(‘’,(-1981.2,-1828.8,0.));
#51=CARTESIAN_POINT(‘’,(-1905.,-1828.8,457.2));
#52=CARTESIAN_POINT(‘Origin’,(-1828.8,-1828.8,0.));
#53=CARTESIAN_POINT(‘Origin’,(-1828.8,-1828.8,0.));
#54=UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(0.001),#58,
‘DISTANCE_ACCURACY_VALUE’,
‘Maximum model space distance between geometric entities at asserted c
onnectivities’);
#55=UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(0.001),#58,
‘DISTANCE_ACCURACY_VALUE’,
‘Maximum model space distance between geometric entities at asserted c
onnectivities’);
#56=(
GEOMETRIC_REPRESENTATION_CONTEXT(3)
GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#54))
GLOBAL_UNIT_ASSIGNED_CONTEXT((#58,#59,#60))
REPRESENTATION_CONTEXT(‘’,‘3D’)
);
#57=(
GEOMETRIC_REPRESENTATION_CONTEXT(3)
GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#55))
GLOBAL_UNIT_ASSIGNED_CONTEXT((#58,#59,#60))
REPRESENTATION_CONTEXT(‘’,‘3D’)
);
#58=(
LENGTH_UNIT()
NAMED_UNIT()
SI_UNIT(.CENTI.,.METRE.)
);
#59=(
NAMED_UNIT()
PLANE_ANGLE_UNIT()
SI_UNIT($,.RADIAN.)
);
#60=(
NAMED_UNIT(*)
SI_UNIT($,.STERADIAN.)
SOLID_ANGLE_UNIT()
);
#61=SHAPE_DEFINITION_REPRESENTATION(#62,#63);
#62=PRODUCT_DEFINITION_SHAPE(‘’,$,#65);
#63=SHAPE_REPRESENTATION(‘’,(#34),#56);
#64=PRODUCT_DEFINITION_CONTEXT(‘part definition’,#69,‘design’);
#65=PRODUCT_DEFINITION(‘157f8ef244231cb5305051c293e4ec2d’,
‘157f8ef244231cb5305051c293e4ec2d’,#66,#64);
#66=PRODUCT_DEFINITION_FORMATION(‘’,$,#71);
#67=PRODUCT_RELATED_PRODUCT_CATEGORY(‘157f8ef244231cb5305051c293e4ec2d’,
‘157f8ef244231cb5305051c293e4ec2d’,(#71));
#68=APPLICATION_PROTOCOL_DEFINITION(‘international standard’,
‘automotive_design’,2009,#69);
#69=APPLICATION_CONTEXT(
‘Core Data for Automotive Mechanical Design Process’);
#70=PRODUCT_CONTEXT(‘part definition’,#69,‘mechanical’);
#71=PRODUCT(‘157f8ef244231cb5305051c293e4ec2d’,
‘157f8ef244231cb5305051c293e4ec2d’,$,(#70));
ENDSEC;
END-ISO-10303-21;

Hi @Abhishek_Patne
Solidworks won’t even open the file. Maybe the file is corrupt? :grimacing:
-Jakob

Hi @Abhishek_Patne
Looking closer, there actually is 2 surfaces in there - albeit the side is only 0.01cm tall. You can explode and extend the surface as needed, but the fact that the trimming is wrong and SolidWorks flat out refuses to open the file, indicates that something might be wrong with the export.


-Jakob

Hi @Normand can you try opening this file.

157f8ef244231cb5305051c293e4ec2d.stp (4.0 KB)

Hi @Abhishek_Patne
This one imports correctly (I assume) in SolidWorks:

Hi @jameschadud I am loading the same in Rhino which results into this.

Hi Abhishek -

There are two surfaces. The conical surface is truncated at about .15 mm above the base of the object, and trimmed at that base.

Which application created this STEP file?

I’ve put it on the list of the developer for a closer look at what’s going on:
RH-96071 File IO: Step: Geometry Issue Sample
-wim