An Autodesk Inventor add-in that turns a hopper configuration into a verified release package

Self-owned demonstration Fabrication & equipment manufacturingSheet metal & enclosures 2026

Problem
Every rectangular transition hopper a plate shop builds is a different size, but the method is identical each time — develop four converging panels, choose formed flanges or a bolted angle frame, space the stiffeners, then produce the model, drawings, cut files and a bill of materials by hand.
What was built
An Autodesk Inventor 2026 add-in that takes eleven inputs and produces the part models, an assembly, drawings, flat-pattern DXF, PDF and a bill of materials, then validates them and refuses to release a package that fails a check.
Result
64 engine rules across eight families, with a second implementation that agrees on all seven reference sizes; flat patterns read back within the 2.5% validation gate (about 1.2% on the nominal hopper); 111 automated tests pass and every release carries a SHA-256 manifest.

Problem

Every plate shop that makes hoppers redraws the same development for each new size. A rectangular inlet transitions to a smaller — sometimes offset — rectangular outlet through four converging sheet-metal panels. Each panel has to be developed flat, its bends and flange found and its bolt holes laid out; then the model, the drawings, the cut files and the bill of materials all have to agree. It is a half-day of careful, repetitive work per order, and the rules for it usually live in one senior designer's head and a spreadsheet.

The demonstration goal: show that the whole chain — from a configuration to a checked, releasable package — can be written once as tested software, with every rule identified and every output verified before it is allowed out.

Constraints

  • The rules live in plain C#, outside the CAD system, so the same logic is tested without Inventor open and can be reused elsewhere.
  • A second, independent implementation in Python re-derives the same rules from the specification and must agree.
  • Every rule carries an identifier; the output is deterministic; nothing is produced or checked by a machine-learning model.
  • Each job is a portable, self-contained folder — its own models, drawings, cut files, bill of materials, validation report and manifest.
  • The release is fail-closed: it is refused unless every error-level check passes, and a refused release writes nothing.
  • Drawings and cut files are demonstration documentation, not approved for fabrication.

Engineering logic

64 engine rules across eight families — validation, geometry, sheet metal, bolting, stiffeners, angle frame, mass and naming — plus 5 drawing rules, each with an identifier and a formula, labelled as a standard formula or a demonstration rule, and exercised by golden-configuration, failure-case and fuzz tests. The valley angle that governs flow is GEO-008; the choice between a formed flange and a bolted angle frame comes from the press-brake limit and a minimum wall angle (SM-006, SM-008); the bend allowance uses a stated K-factor (SM-005). Demonstration design rules are labelled as such and kept separate from standard formulas, so a client's own rules can replace them one identifier at a time.

All four developed panels of an offset hopper transition in the combined DXF layout
Four converging panels of a rectangular transition hopper, developed from the inlet, outlet and height. generated by the site geometry core

System

A pure C# rule engine — with no Inventor dependency — turns eleven inputs into a full derived design. The add-in then drives Autodesk Inventor to build it: one sheet-metal panel per face, an assembly of four grounded panels placed by computed transforms, a general-arrangement drawing and one flat-pattern sheet per panel, four flat DXF, five PDF, and the bill-of-materials, cut-list and blanks CSVs. A ribbon command opens a configuration window; the operator sees eleven plain inputs, never a CAD parameter name, and drives Configure → Validate → Generate → Release.

Validation

The point of the system is not that Inventor produced files — it is that two independent routes agree the files are right, and nothing ships until they do.

How each output is checked
CheckWhat it proves
Second implementation (Python)Re-derives the 64 engine rules from the specification and agrees with the C# engine on all seven reference sizes.
Independent DXF read-back (ezdxf)The flat-pattern outer profile, read back by a library that had no part in producing it, matches the computed blank area within the 2.5% validation gate — about 1.2% on the published nominal hopper, exactly for plain panels.
Deterministic drawing layoutEvery sheet is placed by a layout model with its own collision checks — no view, table or note overlaps another and everything stays inside the sheet — re-run by the validator on a recorded layout report.
Fail-closed releaseA release is refused unless every error-level check passes; each package carries a SHA-256 manifest of every file.
Automated suite111 tests across unit, rule-engine, live-CAD integration and end-to-end, all passing; the live-CAD integration tests confirm that the flat-pattern bend angles equal the computed face angles.

Timings are measured on the development workstation with Inventor 2026.3, warm, three reps:

Measured time per package (benchmark.md)
StepG1G3G4
Full generation — models, assembly, 5 drawings, 4 DXF, 5 PDF, CSVs5.29 s4.15 s4.78 s
Validation, including the independent DXF read-back0.47 s0.47 s0.48 s
Fail-closed release — package, manifest and zip0.09 s0.07 s0.09 s

Result

  • 64 engine rules across eight families; a second implementation in Python agreeing with the C# engine on all seven reference configurations.
  • 111 automated tests passing — 15 core, 84 product and rule-engine, 9 live-CAD integration and 3 end-to-end — plus the independent cross-check.
  • Flat patterns read back by ezdxf within the 2.5% validation gate — about 1.2% on the published nominal hopper, and exactly for plain panels; the live-CAD integration tests confirm the flat bend angles equal the computed face angles.
  • A complete package — models, assembly, five drawings, four DXF, five PDF, the CSVs, a validation report and a SHA-256 manifest — produced in about five seconds warm; validation about half a second; the fail-closed release about a tenth of a second.
  • Every sheet placed by a deterministic layout with its own collision checks, so a public drawing reads as controlled documentation rather than dropped views; the offset-outlet case reads correctly on both the plan view and the flat pattern.

What is not claimed: that any part has been fabricated from these files, or that the drawings are approved for production. They are demonstration documentation; the shop verifies before anything is cut, and the disclaimer says so.

Responsibility

Self-owned demonstration: the rule engine, the add-in and the drawing-layout system were designed, built and verified by Ruthen Systems as its own software, from first-principles inputs; the CAD templates are Autodesk's stock metric templates. The design rules are demonstration rules; in a client engagement they are replaced by the client's own rules, each with a named owner and validated against the client's past jobs. Nothing here is a certification, approval or sign-off; design adequacy remains subject to review or approval by a licensed engineer. No client, employer or third-party material is involved.

Technology

C# / .NET 8 · Autodesk Inventor 2026 COM API · WPF · xUnit · Python (ezdxf, numpy) for the independent check

Download

Have a job worth automating?

Send one example — a drawing, a spreadsheet, or a plain description of what you keep redoing. You will get a direct answer on whether it is worth automating, including when the answer is no.