FreeCAD PartDesign Tutorial — Body Container, Sketcher, and Exporting STEP, DXF & STL

FreeCAD’s PartDesign workbench is the closest equivalent to SolidWorks’ Part environment. It uses a feature-based, parametric modeling approach built on OpenCASCADE Technology (OCCT) — the same geometry kernel that powers CATIA and Salome. If you’re coming from SolidWorks, Inventor, or any history-based modeler, you’ll recognize the concepts but encounter a few structural differences that aren’t obvious from the UI. This guide covers what actually matters for getting productive: the Body container model, how the Sketcher’s constraint system differs from what you’re used to, the core PartDesign features and their underlying OCCT operations, the topological naming problem that plagued earlier versions (and the fix in FreeCAD 1.0), and how to export finished geometry to STEP, DXF, and STL using FreeCAD’s import/export pipeline. ...

30 July 2026 · 12 min · CadShift

SOLIDWORKS API DXF Export: Why VBA and Manual Export Differ (and How to Fix It)

A forum thread from 2026-08-06 captures the problem precisely: a user has a manual workflow — roll back to a feature state, show the body, align the view normal to the target face, then do File > Save As DXF. It works. They then try to replicate it in VBA using IPartDoc.ExportToDWG2, pass the same file path, and get either a failed export (False return, no error) or a DXF that contains nothing. No accepted answer exists because the root cause isn’t obvious from the API documentation. ...

29 July 2026 · 12 min · CadShift

What the SOLIDWORKS Macro Recorder Silently Drops — and What to Write Instead

The SOLIDWORKS macro recorder is a reasonable starting point for simple geometry operations. Record a sketch, a cut-extrude, a fillet — replay it — it works. But the moment you do anything beyond basic feature creation, the recorder either drops the operation entirely, captures it in a form that cannot be replayed on a different model, or generates so much view-manipulation noise that the useful API calls are buried. The official documentation says “not all commands can be recorded.” That sentence is technically accurate and practically useless. This post covers the specific operations that the recorder silently omits, why each one fails, and the API call you need to write instead. ...

28 July 2026 · 8 min · CadShift

Automate SOLIDWORKS Pack and Go with API Macros — Run, Rename, and Open the New Drawing

Pack and Go through the UI is fine for a one-off operation. When you’re doing it repeatedly — versioning a drawing before a revision cycle, archiving a job package, moving a drawing to a different project folder with all its references intact — you want a macro that runs Pack and Go, tells you where the new file landed, closes the original, and opens the copy. The SOLIDWORKS API supports all of this via the IPackAndGo interface, but the documentation examples stop at SavePackAndGo and leave the “then open the copy” part as an exercise for the reader. ...

27 July 2026 · 8 min · CadShift

SOLIDWORKS PDM: Save Converted PDFs Outside the Vault (Working 2026 Method)

The forum question comes up regularly: how do I get the PDM Convert Task to save PDFs outside the vault? The answers in search results reference SOLIDWORKS PDM 2016-2019 behavior. The mechanism has not fundamentally changed, but two things shifted enough to break older walkthroughs: the Advanced Scripting variable names differ by version, and the Task Host security model tightened in PDM 2021. This post covers the working approach for both PDM Standard and Professional. ...

26 July 2026 · 8 min · CadShift

SOLIDWORKS to DWG Export: Assigning AutoCAD Layers by Material via API Macro

Fabrication shops that receive DWG files from SolidWorks drawings often expect specific AutoCAD layers — BRASS, STAINLESS_STEEL, ALUMINUM — matching the actual part materials. The native Save As layer mapping table in Document Properties → DXF/DWG Export → Map SolidWorks to DXF/DWG maps entity types to layers, not component materials. There is no UI checkbox that says “use material name as layer.” This post shows the API approach: read each component’s material from the drawing views, create named layers in the drawing document, assign components to those layers, then export to DWG. It covers the key API calls, a complete working VBA macro, and the three edge cases that will silently fail on a naive implementation. ...

25 July 2026 · 9 min · CadShift

Linking SolidWorks Drawing Properties to Model Properties Without PDM — The $PRPSHEET Syntax

A Reddit thread on r/SolidWorks recently asked how to get the title block Description field to pull from the part’s custom properties automatically. The answers ranged from “use a macro” to “you need PDM” to “manually copy it every time.” No one mentioned $PRPSHEET. This syntax has been in SolidWorks for well over a decade. It links a drawing annotation directly to a named custom property on the model, without any macro, without PDM, without add-ins. When the part’s Description property changes, the drawing title block updates on open. If you’re manually typing part numbers, descriptions, and materials into title blocks, or using a macro to copy properties from model to drawing, this is the feature you’re missing. ...

24 July 2026 · 8 min · CadShift

SolidWorks DXF Layer Mapping for Laser Cutting — The Feature 14 Engineers Didn't Know Existed

A Reddit thread about exporting countersunk flat patterns to DXF recently generated 14 replies. Every single one suggested a model edit: suppress the countersink, delete the chamfer feature, open the flat pattern in a drawing and manually remove the circles before exporting. Not one mentioned that SolidWorks has had a built-in DXF layer mapping feature for years that routes countersink geometry to a separate reference layer at export time — no model changes required. ...

23 July 2026 · 8 min · CadShift

SolidWorks Batch STEP and DXF Export — System Options vs Macro Loop

You have an assembly with 40 sheet metal parts and 15 structural components. You need STEP files for each part for your supplier, and DXF flat patterns for your laser subcontractor. SolidWorks has no built-in “batch export as individual STEP/DXF files” command. You have two approaches: the system options SaveAs at the assembly level, or a macro that loops over components with OpenDoc6 and SaveAs. They produce different outputs and serve different use cases. ...

22 July 2026 · 10 min · CadShift

SolidWorks Display States and Drawing Views — Why Show/Hide in the Drawing Doesn't Work

You reference a display state in a drawing view. A component in that display state is hidden. You right-click the view, go to Properties > Hide/Show Components, and try to show the component. Nothing happens. You try Show Component from the FeatureManager. Still nothing. The drawing view ignores you. This is by design, and it got stricter in SolidWorks 2026. The Visibility Hierarchy SolidWorks has two separate mechanisms for hiding and showing components in a drawing view. Engineers frequently run into problems because they assume these mechanisms are equivalent, or that one overrides the other in a predictable direction. They are not equivalent. ...

21 July 2026 · 9 min · CadShift