58 lines
No EOL
1.5 KiB
Text
58 lines
No EOL
1.5 KiB
Text
scale=40;
|
|
|
|
durchmesserled=30.5;
|
|
durchmesserledscale=durchmesserled/0.8;
|
|
|
|
r_facets = rands(5,10,1)[0];
|
|
facets=r_facets;
|
|
|
|
r_height = rands(1,2,1)[0];
|
|
// r_height = rands(2,4,1)[0];
|
|
|
|
height=r_height;
|
|
r_plane = rands(0,10,1)[0];
|
|
plane=r_plane;
|
|
r_top = rands(1,2,0)[0];
|
|
top=1;
|
|
r_cut = rands(0,16,1)[0];
|
|
cut=r_cut;
|
|
half=scale/1.5;
|
|
$fn=facets;
|
|
|
|
// Rock Generator
|
|
translate([0,0,-10]){
|
|
difference(){
|
|
// Base model
|
|
union(){
|
|
translate([0,0,0])
|
|
cylinder(h=scale*height-cut,d1=scale,d2=half*3);
|
|
translate([0,0,0+scale*height-cut])
|
|
cylinder(h=(half*3)/top,d1=half*3,d2=plane);
|
|
}
|
|
// Model which should be removed from the base model
|
|
scale([0.95,0.95,0.95]){
|
|
// scale([0.8,0.8,0.95]){
|
|
union(){
|
|
$fn=0;
|
|
translate([0,0,-1])
|
|
cylinder(h=scale*height-cut,d1=durchmesserledscale,d2=half*3);
|
|
translate([0,0,-1+scale*height-cut])
|
|
cylinder(h=(half*3)/top,d1=half*3,d2=plane);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
// Socket
|
|
translate([100,0,-5]){
|
|
difference(){
|
|
cylinder(h=10,d1=scale*1.1,d2=scale*1, center= true);
|
|
union(){
|
|
$fn=0;
|
|
translate([0,0,0])
|
|
cylinder(h=scale*height-cut,d1=durchmesserled,d2=half*3);
|
|
translate([0,0,0+scale*height-cut])
|
|
cylinder(h=(half*3)/top,d1=half*3,d2=plane);
|
|
}
|
|
}
|
|
} |