Skip to content

sasuke0787/jsm-step-spec

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

STEP File Specification Extractor

A Python tool for extracting technical specifications from STEP (ISO 10303) CAD files.

Purpose

This application allows users to upload a STEP file (.stp or .step) and automatically extracts key information including:

  • Material specifications
  • Dimensional measurements
  • Manufacturing features
  • Required machining operations
  • Tolerance data

Features

  • Simple command-line interface for processing STEP files
  • Detailed extraction of component specifications
  • Raw analysis mode for direct extraction from file content
  • JSON output option for integration with other systems
  • Visualizations of extracted features (optional)
  • Support for various STEP file formats (AP203, AP214, AP242)

Requirements

  • Python 3.7 or higher
  • Required libraries (see requirements.txt)

Installation

Option 1: Direct Installation

# Clone this repository
git clone https://github.com/yourusername/jsm-step-spec.git
cd jsm-step-spec

# Install required packages
pip install -r requirements.txt

Option 2: Using a Virtual Environment (recommended)

# Clone this repository
git clone https://github.com/yourusername/jsm-step-spec.git
cd jsm-step-spec

# Create and activate a virtual environment
python3 -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install required packages
pip install -r requirements.txt

Usage

There are multiple ways to use this tool:

# Basic usage
python analyze_step.py path/to/your/file.step

# Raw analysis mode (recommended for most files)
python analyze_step.py path/to/your/file.step --raw

# Output to JSON file
python analyze_step.py path/to/your/file.step --output specs.json

# Include detailed information in the output
python analyze_step.py path/to/your/file.step --details

# Visualize the model (requires matplotlib)
python analyze_step.py path/to/your/file.step --visualize

Command Options

  • --raw or -r: Use raw analysis mode that directly reads the STEP file
  • --output or -o: Save results to a JSON file
  • --details or -d: Include detailed entity information in the output
  • --visualize or -v: Show a 3D visualization of the model

How It Works

The application uses open-source libraries to parse STEP file data and extract relevant engineering specifications based on the ISO 10303 standard. It identifies geometric features and maps them to manufacturing requirements.

The raw analysis mode directly parses the STEP file content using regular expressions to extract information about materials, features, and dimensions without requiring additional libraries.

Examples

Example output for a carbon fiber plate with holes:

Performing raw analysis of: file1.step
- File name: Minimized CF Plate.step
- Originating system: Autodesk Translation Framework v14.4.0.0
- Schema: AUTOMOTIVE_DESIGN { 1 0 10303 214 3 1 1 }
- Entity count: 8426
- Materials detected: steel, plastic, composite

Geometric elements:
- Likely holes detected: 59

Manufacturing features:
- Hole: 59

Likely manufacturing operations:
- Composite_layup
- Sheet_metal_fabrication
- Drilling

License

MIT

About

CAD Steps to Specs

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages