#+LINK_HOME: index.html
#+INCLUDE: header.org
GraphViz
, antes te admiraba! #
Mi primer approuch para graficar suele ser GraphViz
1,
pero esta vez se complicó un poco, de por si, siempre se resiste a
seguir órdenes estrictas y solo acepta sugerencias que no siempre las
toma en cuenta...
3D es la que vá! #
Entonces decidí usar OpenSCAD
2 el cual ya había
utilizado con anterioridad para graficar el isotipo de
gcoop
3 y el de FACTTIC
4, y teniendo en
cuenta la geometría del logo de Ansible Tools
5, no
debería ser muy complejo...
Inicialmente fue fácil, dibujar la porción que se repite, elementos
básicos, comencé con un \cylinder
{=latex}\ de radio 1
, y
luego fue cuestión de agregar los otros 3 \cylinders
{=latex}\
moviendo (translate
) y rotando (rotate
) a la
posición correcta.
module circles() {
$fn=32;
translate([d1,0,0]) cylinder(r=r3, h);
translate([d2,0,0]) cylinder(r=r3, h);
rotate([0,0,a1]) translate([d1,0,0]) cylinder(r=r3, h);
rotate([0,0,a1]) translate([d2,0,0]) cylinder(r=r3, h);
}
Ahora bien, para agregar las líneas que unían los círculos, en principio fueron simples las exteriores, porque su origen y destino eran el centro de cada circulo dibujados con cylinders, pero las diagonales, no tenía el dato preciso (estoy oxidado con trigonometría), entonces fui probando ángulos por aproximación, queda pendiente mayor precisión.
module lines() {
$fn=32;
translate([d1,0,r3/2]) rotate([0,90,45]) cylinder(r=r3/2,(d2-d1)*1.2);
translate([d2,0,r3/2]) rotate([0,90,145]) cylinder(r=r3/2,(d2-d1)*1.2);
translate([d1,0,r3/2]) rotate([0,90,0]) cylinder(r=r3/2,d2-d1);
translate([d1,0,r3/2]) rotate([270,0,5]) cylinder(r=r3/2,l1);
translate([d2,0,r3/2]) rotate([270,0,6]) cylinder(r=r3/2,l2);
}
Y con estas 2 funciones (circles
y lines
) ya
tenía el modulo
que se repetía.
module modulo()
{
union() {
lines();
circles();
}
}
Capturando la secuencia construí un gif
del paso a paso del
modulo:
Bastó contar, cuántas veces se repetía, eran 32
veces,
dividiendo los 360
grados, el ángulo de rotación daba
11.25
grados.
module border() {
for ( i = [1 : 32] ) {
rotate([0,0,i*a1]) modulo();
}
}
AAAA... #
Ahora solo faltaban el círculo central con la A
de
Ansible
, y si bien OpenSCAD
permite importar
un svg
y extruirlo, no recordaba como hacerlo y mucho
tiempo no tenía, entonces como no podía resolver la tarea, la delegué en
herzet
6 que sabe bastante de Blender
7,
solo tuve que exportar el modelo y a otra cosa mariposa...
En cuestión de minutos hertzet
ya estaba solucionado mis
bugs en Blender
y un screenshot bastó para
despreocuparme...
Un par de horas mas tarde, obtuve una secuencia de imágenes con la
animación para convertir en video! Comparto un gif
También podes leer #
ChangeLog #
2023-05-21 22:47
agregar tag en Dibujar logo Ansible Tools en 3D usando OpenSCAD y Blender2023-05-21 16:28
agregar Dibujar logo Ansible Tools en 3D usando OpenSCAD y Blender