CAD Integration for CPQ — Drawings & BOMs Without Engineering
Ignitionary drives your CAD tools — AutoCAD, SolidWorks, Inventor, and Fusion 360 — from configuration rules. When a valid product is configured, the same parametric rules that priced it generate production drawings, 3D models, and a complete bill of materials automatically. Sales quotes engineer-to-order products in minutes instead of waiting days for a drawing.
Built for VP Engineering and design leads whose team is the bottleneck between a quote request and a drawing.
What does CAD integration do for your engineering team?
It takes routine, rules-driven drafting off engineering's plate — so your engineers work on genuinely new designs instead of redrawing the same product at slightly different dimensions for every quote.
Drawings without an engineer in the loop
An approved configuration generates production-ready drawings automatically, so a standard configured order never has to wait in the engineering queue for someone to redraw it by hand.
Rules drive the parametric model
The same engineering rules that validate a configuration set the CAD model's dimensions and features, so every generated model is buildable by construction — no downstream check for impossible geometry.
Drawing, BOM, and quote agree
The drawing, the bill of materials, and the price all come from one configuration, so the shop floor builds exactly what was quoted — eliminating the reconciliation errors of separately maintained documents.
Live 3D from the real model
Customers and reps see a real-time 3D preview generated from the actual parametric model — not a marketing render — so what they approve is what engineering releases.
Engineer-to-order manufacturers commonly move quote-to-drawing from days down to minutes and reclaim the majority of engineering hours spent on repetitive drafting — freeing that capacity for the custom work only your engineers can do.
Supported CAD Platforms
Direct integration with industry-leading CAD software
AutoCAD
AutoCAD, AutoCAD LT, AutoCAD Plant 3D
- • .NET API integration
- • Dynamic block parameters
- • Layer management
- • DWG file generation
SolidWorks
SolidWorks, SolidWorks PDM, Simulation
- • SolidWorks API
- • Feature-based modeling
- • Configuration tables
- • Assembly automation
Fusion 360
Autodesk Fusion 360, Inventor
- • Forge API integration
- • Cloud-based workflows
- • Parametric features
- • Manufacturing CAM
Enterprise CAD
CATIA, NX, Creo, Rhino
- • Custom API development
- • STEP/IGES import/export
- • PLM integration
- • Enterprise workflows
CAD API Endpoints
Key integration points for CAD connectivity
Model Generation
Drawing & Documentation
Validation & Analysis
Authentication Requirements
- CAD software licensing and API access
- Application-specific authentication tokens
- File system permissions for model storage
- Network access for cloud-based CAD systems
Implementation Examples
Sample code for common CAD integration scenarios
SolidWorks Parametric Model Update
// Update SolidWorks model parameters from configuration async function updateSolidWorksModel(modelPath, parameters) { const swApp = new SldWorks.Application(); const swModel = swApp.OpenDoc6(modelPath, swDocumentTypes_e.swDocPART); // Update global variables/equations const eqMgr = swModel.GetEquationMgr(); for (const [param, value] of Object.entries(parameters)) { const equation = `"${param}" = ${value}`; const index = eqMgr.FindByName(param); if (index >= 0) { eqMgr.Equation(index, equation); } else { eqMgr.Add2(equation, true); } } // Rebuild model with new parameters swModel.ForceRebuild3(true); // Generate drawing if needed const drawingTemplate = 'C:\\ProgramData\\SolidWorks\\templates\\Drawing.drwdot'; const swDrawing = swApp.NewDocument(drawingTemplate); // Insert drawing views const swDrawingDoc = swDrawing; swDrawingDoc.CreateDrawViewFromModelView3(modelPath, '*Front', 0.1, 0.1, 0); return { modelPath: modelPath, drawingPath: modelPath.replace('.sldprt', '.slddrw'), updated: true }; }
AutoCAD Dynamic Block Automation
// Automate AutoCAD dynamic blocks with configuration data using Autodesk.AutoCAD.ApplicationServices; using Autodesk.AutoCAD.DatabaseServices; using Autodesk.AutoCAD.Geometry; public void UpdateDynamicBlock( string blockName, Dictionary<string, object> parameters ) { var doc = Application.DocumentManager.MdiActiveDocument; var db = doc.Database; using (var trans = db.TransactionManager.StartTransaction()) { var bt = (BlockTable)trans.GetObject( db.BlockTableId, OpenMode.ForRead); if (!bt.Has(blockName)) return; var btr = (BlockTableRecord)trans.GetObject( bt[blockName], OpenMode.ForRead); // Find all block references foreach (ObjectId objId in btr) { var obj = trans.GetObject(objId, OpenMode.ForWrite); if (obj is BlockReference blockRef && blockRef.IsDynamicBlock) { // Update dynamic properties foreach (var param in parameters) { var dynProps = blockRef.DynamicBlockReferencePropertyCollection; foreach (DynamicBlockReferenceProperty prop in dynProps) { if (prop.PropertyName == param.Key) { prop.Value = param.Value; break; } } } } } trans.Commit(); } }
Fusion 360 Cloud API Integration
// Use Autodesk Forge APIs to update Fusion 360 models async function updateFusion360Model(projectId, modelId, parameters) { // Get access token const authResponse = await fetch('https://developer.api.autodesk.com/authentication/v1/authenticate', { method: 'POST', headers: { 'Content-Type': 'application/x-www-form-urlencoded' }, body: `client_id=${CLIENT_ID}&client_secret=${CLIENT_SECRET}&grant_type=client_credentials&scope=data:read data:write` }); const { access_token } = await authResponse.json(); // Create design automation workitem const workItem = { activityId: 'YourActivity+prod', arguments: { inputModel: { url: `https://developer.api.autodesk.com/oss/v2/buckets/${BUCKET}/objects/${modelId}`, headers: { 'Authorization': `Bearer ${access_token}` } }, inputParams: { url: 'data:application/json,' + JSON.stringify(parameters) }, outputModel: { url: `https://developer.api.autodesk.com/oss/v2/buckets/${OUTPUT_BUCKET}/objects/updated_${modelId}`, verb: 'put', headers: { 'Authorization': `Bearer ${access_token}` } } } }; // Submit workitem const workItemResponse = await fetch( 'https://developer.api.autodesk.com/da/us-east/v3/workitems', { method: 'POST', headers: { 'Authorization': `Bearer ${access_token}`, 'Content-Type': 'application/json' }, body: JSON.stringify(workItem) }); return await workItemResponse.json(); }
CAD Integration Workflows
End-to-end automation scenarios
Configuration Complete
User finalizes product configuration → Extract dimensional parameters and constraints
Model Generation
Update parametric CAD model → Regenerate geometry with new dimensions
Validation & Analysis
Check design rules and interference → Calculate mass properties and materials
Documentation Generation
Auto-generate drawings, BOMs → Export files for manufacturing and procurement
CAD integration questions
Which CAD systems can Ignitionary drive?
AutoCAD and Inventor via the Autodesk APIs, SolidWorks via its API and design tables, and Fusion 360 via its cloud API. Ignitionary maps configuration parameters to the parametric model's driving dimensions and suppression states, then triggers a rebuild to produce drawings, STEP/native models, and a bill of materials.
Do drawings really generate without an engineer?
For any configuration that fits your pre-built parametric templates, yes — the drawing, model, and BOM are produced automatically the moment the quote is approved. Genuinely novel requests that fall outside the templated rules still route to engineering, so engineers spend their time only on the work that actually needs design judgment.
How does the BOM stay in sync with the drawing?
Both are generated from the same configuration in one pass, so the bill of materials always matches the released drawing and the quoted price. There is no separately maintained BOM to drift out of date, which removes a common source of production errors.
Ready to Connect Your CAD System?
Automate your design-to-manufacturing workflow with parametric CAD integration