Quick Usage
[Top]
Download the ZIP file and extract to a location. Copy the Example JSON file below and save it as test.json using a simple text editor. To keep the things simple, save it at the same location as the executable.
Example JSON file
The following file generates all six sides for MyPart, placing one hole and one rectangle cutout on the Top side. The top size of the box is 5×5 cm and the components are placed at (x = 1, y = 1) and (x = 3, y = 3) respectively. The visible sizes of the components are the same as drill sizes and their texts are just placed above since they are zero degrees rotated, with a font size of 8 pixels.
{
"Generic": {
"width": 5.0,
"length": 5.0
},
"MyPart_Top": {
"myRoundComponent#1": {
"location_x": 1,
"location_y": 1,
"drill_diameter": 1,
"call_name": "Hello",
"visible_diameter": 0,
"visible_length" : 1,
"visible_width" : 1,
"rotation": 0
},
"myRectangleComponent#1": {
"location_x": 3,
"location_y": 3,
"drill_width": 2,
"drill_length": 1,
"call_name": "MIDILLI",
"visible_width" : 1,
"visible_length" : 2,
"rotation": 0
}
},
"MyPart_Bottom": {
},
"MyPart_Back": {
},
"MyPart_Front": {
},
"MyPart_Left": {
},
"MyPart_Right": {
}
}
Depending on the command-line options, the other sides of the part will be created using different sizing. Read Coordinate system and effect of sizing parameters for more on different results of the arguments.
Note: JSON syntax is very strict. Ensure that the last line before each '}' does not end with a comma, while all other lines should. Use an online validation tool to confirm correctness.
Command line
Assuming that the JSON file is stored at the same location as the executable file, open a command window (Command Prompt, or PowerShell), then execute the following command:
.\SVGGenerator.exe --json-file .\test.json --output-directory . --material-thickness 3 --box-height-3d 30 --vectorize=false
You will be provided with an output showing the current settings as following:
~~~~~ Settings ~~~~~
Box height in 3D: 30 mm
Outer sizing enabled: No
Text enabled: Yes (Default font size: 8 px)
Components enabled: Yes
Side outline enabled: Yes
Recess for components enabled: No
Line per mm for recess areas: 1
Material thickness: 3 mm
Screw size top: 0 mm
Screw size bottom: 0 mm
Screw head diameter: 0 mm
Screw extra margin: 0 mm
Separate all output files: No
Vectorize enabled: No
Keep original files: No
Simulation enabled: No
Inkscape path: C:\\Progra~1\\Inkscape\\bin\\inkscape.com
Each setting on the console output can be customized with command line arguments.
After completion, 6 files starting with MyPart_ and ending with .svg will be visible under test directory. Opening MyPart_Top.svg should display the following:

If you would like to directly vectorize the output, you can remove --vectorize=false
option. As stated above, this will require the Inkscape to be installed.
For more customization, read the Detailed usage section.