Obiscad
[[|thumb|200px|]]
Contenido
Introducción
Biblioteca de Módulos y objetos en Openscad para facilitar el diseño.
Componentes
Bcube.scad: Cubos biselados
Más información |
---|
Vector.scad: Vectores
Introducción
Librería para la visualización de vectores y sistemas de referencia. Incluye también el operador orientate() para orientar cualquier pieza según la dirección dada por un vector. Esta librería es especialmente útil para el diseño de robots y estudio de sus cinemáticas, así como para facilitar el diseño de piezas complejas mediante la visualización de vectores auxiliares o sistemas de referencia.
API
- vector(v, l, l_arrow): Dibujar el vector v. l_arrow es la longitud de la flecha. Hay dos modos de dibujo:
- Modo 1: Cuando el parámetro l es 0, v especifica el vector cartesiado. Se dibuja un vector que va desde el origen y que tiene su punta en las coordenadas indicadas por v
- Modo 2: Cuando l es distinto de 0, se dibuja un vector en la misma dirección que v, con una longitud de l
- Ejemplos de uso:
vector([10,20,30]); //-- Dibujar vector cartesiano vector([10,20,30],l=50); //-- Dibujar un vector en la misma dirección que el anterior, pero de longitud 50
- frame(l,l_arrow): Dibujar un sistema de referencia con 3 vectores de longitud l. El parámetro l_arrow indica la longitud de las flechas.
- Ejemplo:
frame(l=10);
- orientate(v,roll): Operador para orientar cualquier objeto según la dirección dada por v, y rotado un ángulo roll alrededor del eje definido por v
- Ejemplo:
orientate([1,1,1]) cube([10,10,10])
Dibujar un cubo de 10 de arista y orientarlo en la dirección dada por el vector [1,1,1]
Attach.scad: uniendo piezas
Introducción
El operador attach permite conectar dos piezas en las que se han definido conectores. Hace que el código sea más legible y fácil de entender.
Ejemplo
Partimos de la pieza principal, que en este ejemplo usaremos un cubo. Queremos unir al cubo otras dos piezas, una en la parte superior y otra en la izquierda. Primero definimos los conectores: son los elementos donde se conectarán las piezas.
Un conector consta de 3 componentes: El punto de anclaje, el eje de unión y el ángulo de giro. Para nuestro ejemplo definiremos los dos conectores c1 y c2 así:
//-- punto eje ángulo c1 = [ [0,0,10], [0,0,1], 20 ]; c2 = [ [-10,0,0], [-1,0,0],-30 ];
Para hacerlo más fácil, podemos invocar al comando connect() para verlos gráficamente junto con nuestra pieza:
connector(c1); connector(c2);
El resultado se muestra en la figura 1. A continuación hacemos lo mismo para otra pieza. En esta solo definimos el conector a:
a = [ [0, 2,2], [0,0,1], 0 ];
Para "depurar" podemos ver tanto el conector como el sistema de referencia de la piza (Figura 2).
Por último, ya podemos unir las piezas secundarias al cuerpo usando attach:
attach(c1,a) mi_pieza(); attach(c2,a) mi_pieza();
¡Y ya está! El código queda muy limpio y fácil de entender. Si ahora cambiamos los ángulo de los connectores (tercera componente) ocurre lo que se muestra en las figuras 5 y 6.
API
- connector(c) : Representar en pantalla el conector c. Se muestras sus tres componentes: una esfera para indicar el punto de anclaje, un vector para el eje de la unión y una marca en la cabeza del vector para el ángulo de giro.
Repositorio
- Acceso al repositorio: https://github.com/Obijuan/obiscad
Autor
- Juan González Gómez (Obijuan)
Licencia
![]() |
Enlaces
Noticias
- 7/Sep/2012: Comenzada esta página