I'm not aware of libraries that do that for you (but you can create your own, see end of the answer), but creating a relieve hole pattern is not that difficult or tedious using iterator functions (e.g. the for loop
). Note that it may not be a good idea to make enclosed holes inside your object, see the bottom section "Internal cavities in models" at the bottom of the answer.
Small OpenSCAD test script:
tol=0.2;
difference(){
cube([100,100,10]);
for (x=[10:20:90]){
for (y=[10:20:90]){
translate([x,y,-tol/2]){
cylinder(r=9,h=10+tol,$fn=180);
}
}
}
}

This can be used for both parts of your question, but in case the pattern needs to be inside an object you need to lower the value of h
in the subtracting cylinder and raise/translate it (you could use the center=true
in the cylinder
function as a parameter and raise the center to the middle of your object translate([x,y,objectThickness/2])
). You could make a module
of the recurring pattern yourself to create your library.
note: Replace cylinder
with cube
or any other geometrical solid or (2D) pattern (use linear_extrude
) to subtract from your part.
Internal cavities in models
Note that it is not always wise to create your own spacing/grid structure enclosed in the model. Please read the accepted answer of this question. This answer explains that slicer applications work best with true solids!