Identifies the MIME type of files loaded by this parser.
Filename extensions expected on loaded model files.
The loaded model file format.
Gets the schema version of the given file data.
InternalparsersA parser for each supported schema version.
IDs of supported file schema versions.
Loads file data into a SceneModel and/or a DataModel.
The parameters used for loading the file data.
Options for customizing the loading process. These are specific to the Loader subclass.
Resolves when the file data has been successfully loaded into the SceneModel and/or DataModel.
Loads an ISO 10303-21 STEP file (
.step/.stp) into a SceneModel and/or a DataModel.STEP is the ASCII-encoded EXPRESS-language exchange format used by mechanical CAD tooling (CATIA, NX, SolidWorks, Creo, …). The top-level shape mirrors IFCLoader and RVMLoader — one constructor wires per-schema parsers and a getVersion hook that sniffs the
FILE_SCHEMA(...)declaration in the HEADER section to pick one.Schema tags currently dispatched (all routed through the AP214 parser today; split when the schemas diverge in handling):
AP203/CONFIG_CONTROL_DESIGN— early aerospace / shape exchange.AP214/AUTOMOTIVE_DESIGN— automotive + general MCAD (default).AP242/MANAGED_MODEL_BASED_3D_ENGINEERING— modern superset of AP203 + AP214.Status: partial — instance-graph walker landed.
Map<#ref, Entity>plus an inverse referrers index).PRODUCT → PRODUCT_DEFINITION_FORMATION → PRODUCT_DEFINITION → PRODUCT_DEFINITION_SHAPE → SHAPE_DEFINITION_REPRESENTATION → SHAPE_REPRESENTATION → AXIS2_PLACEMENT_3Dchain, withMAPPED_ITEMhonoured.NEXT_ASSEMBLY_USAGE_OCCURRENCE+CONTEXT_DEPENDENT_SHAPE_REPRESENTATION+REPRESENTATION_RELATIONSHIP_WITH_TRANSFORMATION+ITEM_DEFINED_TRANSFORMATION), withrelative = matrix_of(item_2) × inverse(matrix_of(item_1))(the inverse is short-circuited when item_1 is identity).id#1, id#2, …ids and per-occurrence world matrices.MANIFOLD_SOLID_BREP / BREP_WITH_VOIDS / FACETED_BREP → CLOSED_SHELL → ADVANCED_FACE → FACE_OUTER_BOUND → EDGE_LOOP → ORIENTED_EDGE → EDGE_CURVE → VERTEX_POINT → CARTESIAN_POINT, fan-triangulates eachPLANEface into per-face flat-normal triangles. Curved surfaces (CYLINDRICAL_SURFACE, B_SPLINE_…) emit no triangles for now and the part falls back to the AABB-sized placeholder cube.Map<TessellatedGeometry, id>dedup) or — when tessellation produces no triangles — the shared placeholder cube scaled to the part's AABB.The remaining tessellation work is the curved-surface family — cylinders / cones / spheres / tori first, NURBS later — plus concave-face ear clipping and hole punching. The planar-only pass already renders faceted CAD parts correctly.
For detailed usage, refer to @xeokit/sdk/formats/step.