General construction considerations ----------------------------------- Use real-world units Consider where slice boundaries will be Box and fuselage geometries can be used to visualize placement of components Define sets to limit which geometries get analyzed and exported etc If you create cylinders for visualization like I did in the video, they MUST be excluded from VSPAERO analysis or the program will crash Preparing for export from OpenVSP --------------------------------- Increase tesselation resolution on wing, fuselage etc geoms that will become the STL model Convert airfoils to CST parametrization if necessary to have the "Equal arc length" checkbox This cannot be undone! Either make a backup or don't save after making this change if you want to go back to the original airfoil definition parameters! Uncheck "Equal arc length parameterization" to cluster more points around leading edge Do "Analysis" -> "Planar slice" normal = Y-axis, num slices = (end location / slice thickness) + 1 Export shown set to stl In Blender ---------- File -> Import -> STL (may need to enable add-on in Edit -> Preferences dialog) Press S to scale if necessary, hold ctrl to scale in steps Press tab to switch between editing objects and meshes Select all non-slice parts and move away (press L with mouse over a vertex to select entire mesh) Press G to start moving, then X and hold ctrl to move in steps along X axis Press P to separate by selection In object edit mode, press space and use menu to add cylinder Press S to scale if necessary, hold ctrl to scale in steps Press R then X and hold ctrl to rotate in steps about the X axis Press S then Y to scale the cylinder only along the Y axis Move spar into position Add spars as necessary, Shift+D to duplicate To make holes in the slices, select the slice object, add boolean modifer (spanner icon) difference with 'cylinder' object click Apply Move spars out of the way, check holes were made In mesh edit mode select all and press P to separate by loose parts In object edit mode, do Alt+C for "curve from mesh" In text editor, paste python script Change output file and parameters as necessary Right click and run script Adjust positions of numerical labels, run again Exporting script setup ---------------------- Command needed on Linux to install dxfwrite library (requires Blender restart?) python3 -m pip install dxfwrite More info on dxfwrite library including API docs if you want to improve the script https://pypi.org/project/dxfwrite/ https://dxfwrite.readthedocs.io/en/latest/ Parameters for the export script -------------------------------- reverseOrder = False Set to true to order from wingtips first scale = 10 Eg. if the Blender units are cm and the QCAD file uses mm, scale would be 10 spacing1 = 200 The initial vertical distance between slices spacing2 = 100 The subsequent vertical distance between slices numSpacing1Slices = 3 How many slices to separate by spacing1 before switching to spacing2 startY = 0 The initial vertical position for the first slice addLabels = True Whether to add a numerical label to each slice labelsX = 517 The horizontal position for labels (QCAD units) labelsY = -47 The initial vertical position for labels (QCAD units) Height of the label font fontHeight = 8