Resumen
Quizás sea de mala educación crear un derivado de tu propia cosa cuando es solo una actualización de código en lugar de una 'cosa' real, pero...
Esta cosa incorpora un par de cambios más en las funciones de Bezier. Primero, agrega una versión de 3 elementos de la función PointOnBezCubic(). Así que, ahora hay 2D y 3D. La versión 3D se puede usar para valores de x, y, z, o para valores de r, g, b, como se demuestra en las imágenes.
Hablando de imágenes, he añadido un ejemplo de cómo usar el color con la curva de Bézier para dar a tus imágenes esa maravillosa belleza de color gradual. Espero hacer cosas muy malas con esto.
Un poco más de factorización y comentarios del código debería hacer que sea bastante fácil de entender.
Pero, ¡toda esa bondad se agregó para que pudiera crear BezierStrips! Simplemente piénsalo. Le das a la función dos conjuntos de puntos de control (4 puntos cada uno), y generará una tira extruida que está 'entre' las dos curvas. La Curva1 está en la 'parte superior' y la Curva2 está en la 'parte inferior', pero en realidad no importa cuál sea su orientación.
Esto es realmente genial para crear cosas como asas para tazas, o pies elásticos de aspecto divertido, o rampas verticales para parques de skate.
Solo más bondad de Bezier.
Una de las imágenes muestra una cosa en forma de campana. Eso es solo una tira de Bezier girada alrededor del eje z un número apropiado de veces. Sin duda, se puede usar para hacer otras formas muy interesantes.
¡Y quién sabía que OpenScad era capaz de renderizar cosas tan bonitas!
ACTUALIZACIÓN: Si te interesan más palabras sobre este diseño, puedes echar un vistazo aquí:http://williamaadams.wordpress.com/2011/05/12/mr-bezier-goes-to-openscad/
Instrucciones
1) Agarra un papel cuadriculado y traza algunos puntos de control para un par de curvas.
2) Introduzca esos puntos de control en los módulos BezCubicFillet() o BezCubicRibbon() para generar su pieza de Bez'ness.
¡3) Regocíjense!
¡¿No sería genial si la impresora pudiera realmente respetar la selección de color que haces en tus dibujos!?