¡Esta es una revisión vieja del documento!
Tabla de Contenidos
Primitivas Básicas 3D
Cubo
Crea un cubo del que se pueden definir sus dimensiones en los ejes X, Y, Z; y si está o no centrado en el origen (si no lo está “hace esquina” en el origen). Si se indica un único eje, se toma esa medida en los 3 ejes.
cube(size = [x,y,z], center = true/false); cube(size = [1, 1, 1], center = false); // Por defecto cube(size = [m], center = true/false); cube(x, true/false); cube([x, y, z], true/false);
Esfera
Crea una esfera, de la cual es necesario definir al menos el radio 'r' o el diámetro 'd'. Si se desea definir el diámetro, es neesario que se indique de forma explícita. Se pueden usar las variables especiales $fa, $fs, $fn para definir la resolución poligonal de la esfera.
sphere($fn = 0, $fa = 12, $fs = 2, r = 1); // Por defecto sphere(r = 10); sphere(10); sphere(d = 20); sphere(d = 20, $fn=80);
Cilindro
Crea un cilindro, del cual podemos variar por separado el radio de ambos extremos, formando distintos tipos de cono. Si center=true, quedará centrado en el eje Z, entre +h/2 y -h/2, si no, quedará sobre la parte positiva de este eje. Podemos evitar definir los nombres de los parámetros si están colocados en orden, pero si especificamos alguno, hay que hacerlo con todos. Es posible especificar diámetros 'd1' o 'd2', en vez de radios 'r1' o 'r2'. Es posible usar las variables especiales $fa, $fs y $fn para definir la resolución polifonal de las superficies esféricas. Se recomienda usar $fn: número de polígonos en 360 grados.
cylinder(h = height, r1 = BottomRadius, r2 = TopRadius, center = true/false); cylinder($fn = 0, $fa = 12, $fs = 2, h = 1, r1 = 1, r2 = 1, center = false); // Por defecto cylinder (h=20, d1=10, d2=15, center=false, $fn=30);
Poliedro
Crea figuras regulares o irregulares. Se definen en primer lugar las coordenadas de los vértices, que toman como índice el número de orden en que son declarados partiendo de 0. Después se declaran las “caras” del poliedro indicando los índices de los vértices que forman cada cara, de forma que se nombren en sentido antihorario de la cara. Por último se declara la variable entera “convexity”, cuyo valor habitual es 10, y que sólo sirve para ver bien la figura en la previsualización, no tiene ningún efecto en el renderizado.
polyhedron( points = [ [X0, Y0, Z0], [X1, Y1, Z1], ... ], faces = [ [P0, P1, P2, P3, ...], ... ], convexity = N); polyhedron(points = undef, faces = undef, convexity = 1); // Por defecto
