actualizar estructura de carpetas con proceso de copincha
This commit is contained in:
6
03--construir/mobiliario/Nueva carpeta/Untitled.scad
Normal file
6
03--construir/mobiliario/Nueva carpeta/Untitled.scad
Normal file
@@ -0,0 +1,6 @@
|
||||
//modulos
|
||||
|
||||
use <"./component--joint--tee.scad">;
|
||||
|
||||
|
||||
joint_tee();
|
||||
@@ -0,0 +1,5 @@
|
||||
module joint_tee(size=60)
|
||||
{
|
||||
cube(size,center=true);
|
||||
};
|
||||
joint_tee();
|
||||
@@ -0,0 +1,6 @@
|
||||
module pipe(diam=30, hight=500)
|
||||
{
|
||||
cylinder(d=diam,h=hight,center=true);
|
||||
};
|
||||
|
||||
pipe();
|
||||
30
03--construir/mobiliario/Nueva carpeta/draw--arc.scad
Normal file
30
03--construir/mobiliario/Nueva carpeta/draw--arc.scad
Normal file
@@ -0,0 +1,30 @@
|
||||
radius = 20;
|
||||
angles = [0, 90];
|
||||
width = 5;
|
||||
fn = 24;
|
||||
|
||||
module sector(radius, angles, fn = 24) {
|
||||
r = radius / cos(180 / fn);
|
||||
step = -360 / fn;
|
||||
|
||||
points = concat([[0, 0]],
|
||||
[for(a = [angles[0] : step : angles[1] - 360])
|
||||
[r * cos(a), r * sin(a)]
|
||||
],
|
||||
[[r * cos(angles[1]), r * sin(angles[1])]]
|
||||
);
|
||||
|
||||
difference() {
|
||||
circle(radius, $fn = fn);
|
||||
polygon(points);
|
||||
}
|
||||
}
|
||||
|
||||
module arc(radius, angles, width = 1, fn = 24) {
|
||||
difference() {
|
||||
sector(radius + width, angles, fn);
|
||||
sector(radius, angles, fn);
|
||||
}
|
||||
}
|
||||
|
||||
linear_extrude(1) arc(radius, angles, width);
|
||||
228
03--construir/mobiliario/Nueva carpeta/table.scad
Normal file
228
03--construir/mobiliario/Nueva carpeta/table.scad
Normal file
@@ -0,0 +1,228 @@
|
||||
//modules
|
||||
|
||||
use <./component--joint--tee.scad>;
|
||||
use <./component--pipe.scad>;
|
||||
|
||||
{ //parameters
|
||||
|
||||
{
|
||||
caster_hight=135;
|
||||
caster_widht=50;
|
||||
joint_tee_size=60;
|
||||
pipe_diameter=26.67;
|
||||
}
|
||||
|
||||
{
|
||||
table_widht=600;
|
||||
table_length=1800;
|
||||
table_hight=700;
|
||||
}
|
||||
|
||||
{
|
||||
base_bottom_center=caster_hight+joint_tee_size/2;
|
||||
base_top_center=table_hight-joint_tee_size/2;
|
||||
}
|
||||
|
||||
{
|
||||
base_widht=table_widht-2*(0)/2;
|
||||
base_length=table_length-2*(0)/2;
|
||||
}
|
||||
|
||||
{
|
||||
assembly_offset=5;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
{ //operations
|
||||
|
||||
|
||||
{ //positioning
|
||||
|
||||
point_node=(
|
||||
[
|
||||
[base_widht/2,base_length/2,base_bottom_center]
|
||||
]
|
||||
);
|
||||
|
||||
|
||||
point_pipe_horizontal=(
|
||||
[
|
||||
[base_widht/4,base_length/2,base_bottom_center],
|
||||
[base_widht/4,base_length/2,base_top_center],
|
||||
|
||||
]
|
||||
);
|
||||
|
||||
|
||||
point_central_node=(
|
||||
[
|
||||
[0,base_length/2,base_bottom_center],
|
||||
[0,base_length/2,base_top_center],
|
||||
]
|
||||
);
|
||||
|
||||
|
||||
point_pipe=(
|
||||
[
|
||||
[base_widht/2,base_length/2,caster_hight+(base_top_center-caster_hight)/2],
|
||||
]
|
||||
);
|
||||
|
||||
|
||||
point_caster=(
|
||||
[
|
||||
[base_widht/2,base_length/2,caster_hight/2],
|
||||
]
|
||||
);
|
||||
|
||||
|
||||
|
||||
point_crossbar=(
|
||||
[
|
||||
[0,0,base_bottom_center],
|
||||
[0,0,base_top_center],
|
||||
]
|
||||
);
|
||||
|
||||
|
||||
point_node_top=(
|
||||
[
|
||||
[base_widht/2,base_length/2,base_top_center],
|
||||
]
|
||||
);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
{ //modules
|
||||
|
||||
color("yellow")
|
||||
crossbars();
|
||||
laterals();
|
||||
|
||||
module laterals()
|
||||
{
|
||||
lateral_mid();
|
||||
lateral_mid_mirror();
|
||||
}
|
||||
|
||||
module lateral_mid()
|
||||
{
|
||||
lateral_quarter();
|
||||
lateral_quarter_mirror();
|
||||
node_pos_central();
|
||||
}
|
||||
|
||||
module lateral_quarter()
|
||||
{
|
||||
color("blue")
|
||||
caster();
|
||||
|
||||
color("red")
|
||||
for (pos=point_node)
|
||||
translate(pos)
|
||||
node_bottom();
|
||||
|
||||
color("orange")
|
||||
pipe_vertical();
|
||||
|
||||
color("orange")
|
||||
pipe_horizontal_pos();
|
||||
|
||||
|
||||
color("green")
|
||||
node_top();
|
||||
}
|
||||
|
||||
|
||||
module node_bottom()
|
||||
{
|
||||
joint_tee(size=joint_tee_size);
|
||||
};
|
||||
|
||||
module pipe_vertical()
|
||||
{
|
||||
for (pos=point_pipe)
|
||||
translate(pos)
|
||||
pipe(diam=pipe_diameter,hight=base_top_center-caster_hight-joint_tee_size+2*assembly_offset);
|
||||
};
|
||||
|
||||
module pipe_horizontal_pos ()
|
||||
{
|
||||
for (pos=point_pipe_horizontal)
|
||||
translate(pos)
|
||||
pipe_horizontal();
|
||||
};
|
||||
|
||||
module pipe_horizontal()
|
||||
{
|
||||
rotate([0,90,0])
|
||||
pipe(diam=pipe_diameter,hight=base_widht/2-joint_tee_size+2*assembly_offset);
|
||||
};
|
||||
|
||||
module caster()
|
||||
{
|
||||
for (pos=point_caster)
|
||||
translate(pos)
|
||||
rotate([0,90,0])
|
||||
cylinder(h=caster_widht,r=caster_hight/2,center=true);
|
||||
};
|
||||
|
||||
module node_top()
|
||||
{
|
||||
for (pos=point_node_top)
|
||||
translate(pos)
|
||||
cube(size=joint_tee_size,center=true);
|
||||
};
|
||||
|
||||
module lateral_quarter_mirror()
|
||||
{
|
||||
mirror([1,0,0])
|
||||
lateral_quarter();
|
||||
};
|
||||
|
||||
module lateral_mid_mirror()
|
||||
{
|
||||
mirror([1,0,0])
|
||||
lateral_mid();
|
||||
}
|
||||
|
||||
module node_pos_central()
|
||||
{
|
||||
color("red")
|
||||
for (pos=point_central_node)
|
||||
translate(pos)
|
||||
joint_tee(size=joint_tee_size);
|
||||
}
|
||||
|
||||
|
||||
module lateral_mid_mirror()
|
||||
{
|
||||
mirror([0,1,0])
|
||||
lateral_mid();
|
||||
};
|
||||
|
||||
|
||||
|
||||
module crossbars()
|
||||
{
|
||||
color("red")
|
||||
for (pos=point_crossbar)
|
||||
translate(pos)
|
||||
crossbar();
|
||||
}
|
||||
|
||||
module crossbar()
|
||||
{
|
||||
rotate([90,0,0])
|
||||
pipe(diam=pipe_diameter,hight=base_length-joint_tee_size+2*assembly_offset);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user