I Absolutely want to have folks add more example shapes! The shapes pallet is defined by the contents of this repo: https://github.com/CommonWealthRobotics/CaDoodle-ShapesPalet-Content and cloned into ~/Documents/CaDoodle-workspace/gitcache/github.com/CommonWealthRobotics/CaDoodle-ShapesPalet-Content/
If you wanted to experiment, you can modify the existing .json files, or create your own to make a new menu item. Just close CaDoodle and open it up again to see your changes.
The lines in the json
"Cube":{
"git":"https://github.com/madhephaestus/CaDoodle-Example-Objects.git",
"file":"cube.groovy",
"order":"2"
},
Is the URL to the git location of the file, and the file ke is the location of that file within the repository. The file can be any type supported for import. The order term is where the button should be in the grid of buttons.
In the case of files you would like the uer to edit, just add the key:
"copyFile":true
This will make a copy of the source file into the users directory and provide an editor button in the UI for the user to edit the file. If you make a blender file you wan the user to sculpt on, then you would use that flag.
If you would like to add your example shapes to the whole community, make a pull request with your updated https://github.com/CommonWealthRobotics/CaDoodle-ShapesPalet-Content
Once I merge your PR, that object will be available to the whole community as an example object.
Supported file types are:
Doodle files (CaDoodle native file format)
BowlerStudio scripted cad (Groovy)
FreeCAD files
Blender Files
Inkscape SVG's (where all objects are paths) for extrusion
Inkscape SCG's as sweep inputs (rings, threads, spirals)
OpenSCAD files (you need to wrap it in a groovy file to expose the parametrics)
STL files
OBJ Files