181 lines
4.1 KiB
OpenSCAD
181 lines
4.1 KiB
OpenSCAD
include <../../lib/ub.scad>;
|
|
|
|
/*[Hidden]*/
|
|
designVersion="1.0";
|
|
designer="Andey Belvedersky";
|
|
|
|
useVersion=24.260;
|
|
assert(Version>=useVersion,str("lib version ",Version," detected, install ",useVersion," ub.scad library‼ ⇒http://v.gd/ubaer"));
|
|
|
|
license="CC0";
|
|
/*[Basics]*/
|
|
nozzle=.6;
|
|
bed=false;
|
|
pPos=[10,10];
|
|
info=true;
|
|
name=undef;
|
|
|
|
|
|
// translate([10,0,-15]){
|
|
// %cylinder(h = 20, r1 = 22, r2 = 20, $fn = 100);
|
|
// }
|
|
|
|
// intersection() {
|
|
// cylinder(h = 120, r1 = 10, r2 = 10, $fn = 100);
|
|
// translate([0,0,0]){
|
|
// Coil(10, grad=4635,rot=2,points=Kreis(6,rand=0),help=true);
|
|
// }
|
|
// }
|
|
|
|
Buchtung(help=true, l = 15, fn= 100, fn2=20);
|
|
//
|
|
translate([15,0,0]){
|
|
Buchtung(help=true, l = 15, r=[2.5, 0, 0, 0], rmin=[2.0, 2.0, 2.0, 2.0], deltaPhi=-360, phase=360, fn= 100, fn2=20);
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// // Parameters for the snake-like candle
|
|
// snake_length = 50; // Length of the candle
|
|
// snake_radius = 20; // Base radius of the candle
|
|
// twist_amount = 20; // Amount of twist in the snake shape
|
|
// height_variation = 6; // Variation in height to create a snake-like effect
|
|
|
|
// //
|
|
|
|
|
|
|
|
// WaveEx(
|
|
// grad=0,
|
|
// h=snake_length,
|
|
// r=snake_radius,
|
|
// ry=twist_amount,
|
|
// f=3,
|
|
// fy=height_variation, // 😃
|
|
// a=0,
|
|
// ay=1.3, //
|
|
// fv=1.4,
|
|
// fvy=4,
|
|
// tf=5,
|
|
// trx=0,
|
|
// try=0,
|
|
// tfy=3.2,
|
|
// tfv=6,
|
|
// tfvy=10,
|
|
// ta=1.5,
|
|
// tay=1.7,
|
|
// fn=150,
|
|
// fn2=150,
|
|
// rot=0,
|
|
// scale=1,
|
|
// scaley=1,
|
|
// close=false,
|
|
// p=4,
|
|
// name=undef,
|
|
// help=1
|
|
// );
|
|
|
|
|
|
|
|
// hull() {
|
|
|
|
|
|
// hull() {
|
|
|
|
|
|
|
|
// hull() {
|
|
// sphere(d=20);
|
|
|
|
// translate([0,0,50]){
|
|
// minkowski() {
|
|
// sphere(r = 20, d=20, $fn=5);
|
|
// cylinder(r=2,h=1, center=true);
|
|
// }
|
|
// }
|
|
// }
|
|
|
|
// translate([10,10,25]){
|
|
|
|
// rotate([10,80,40])
|
|
// minkowski() {
|
|
// sphere(d=20, $fn=5);
|
|
// cylinder(r=2,h=1, center=true);
|
|
// }
|
|
// }
|
|
// }
|
|
|
|
// translate([-10,-10,25]){
|
|
// rotate([10,30,40])
|
|
|
|
// minkowski() {
|
|
|
|
// OctaH(help=true, d=20);
|
|
// cylinder(r=2,h=1, $fn=50);
|
|
|
|
// }
|
|
// }
|
|
// }
|
|
|
|
// Spirale(help=1, grad=10, radius=0, exp=1, fn=2)Linse( messpunkt=false);
|
|
// Rundrum(fn=40, grad=40, r=3, twist=1, x=25, y=10, r=195)Linse(help=1, dia=12, r=6.5, messpunkt=false);
|
|
// Spirale(help=1, grad=200, radius=0, exp=1, fn=170);
|
|
|
|
|
|
// // Parameters for the snake scales
|
|
// scale_length = 10; // Base length of each scale
|
|
// scale_width = 6; // Base width of each scale
|
|
// scale_height = 2; // Base height of each scale
|
|
// scale_spacing = 0.2; // Base spacing between scales
|
|
// scale_rows = 3; // Number of rows of scales
|
|
// scale_columns = 6; // Number of columns of scales
|
|
|
|
// // Function to create a single scale with limited randomness
|
|
// module scale() {
|
|
// // Randomize scale dimensions and rotation with less variation
|
|
// l = scale_length + rands(-1, 1, 1)[0]; // Limited random length variation
|
|
// w = scale_width + rands(-0.5, 0.5, 1)[0]; // Limited random width variation
|
|
// h = scale_height + rands(-0.2, 0.2, 1)[0]; // Limited random height variation
|
|
// rot = rands(-10, 10, -10)[0]; // Limited random rotation
|
|
|
|
// color("darkgreen") {
|
|
// // Create a scale shape using a rounded rectangle
|
|
// linear_extrude(height=h) {
|
|
// rotate(rot) {
|
|
// Linse(help=1, dia=12, r=6.5, messpunkt=false);
|
|
// }
|
|
// }
|
|
// }
|
|
// }
|
|
|
|
// // Function to create a row of scales with limited randomness
|
|
// module scale_row(y_offset) {
|
|
// for (i = [0:scale_columns - 1]) {
|
|
// // Randomize the position of each scale with limited variation
|
|
// x_offset = i * (scale_length - scale_width + scale_spacing) + rands(-0.5, 0.5, 1)[0];
|
|
// translate([x_offset, y_offset, 0]) {
|
|
// scale();
|
|
// }
|
|
// }
|
|
// }
|
|
|
|
// // Function to create the snake scale pattern with limited randomness
|
|
// module snake_scale_pattern() {
|
|
// for (j = [0:scale_rows - 1]) {
|
|
// // Randomize the vertical position of each row with limited variation
|
|
// y_offset = j * (scale_width + scale_spacing);
|
|
// translate([0, y_offset, 0]) {
|
|
// scale_row(j * (scale_width + scale_spacing));
|
|
// }
|
|
// }
|
|
// }
|
|
|
|
// // Create the snake scale pattern
|
|
// snake_scale_pattern();
|
|
render(); |