NURBS
La palabra "de moda", NURBS, es un acrónimo de "Non Uniform
Rational Beta Splines". En Metagraf-2 se ha implementado por dos
razones: en primer lugar porque en el conocimiento del autor, no existe
actualmente otra macro para dibujar este tipo de curvas con MetaPost o
Metafont. A partir de este momento, la macro existe y funciona
correctamente. Por otro lado y utilizando curvas de Bezier, las
ventajas de disponer de una utilidad para generarlas en su
versión racional, son grandes.
Se ha dicho antes que las curvas de Bezier estándar no son capaces de representar una cónica con exactitud --aunque a tramos, la
precisión puede ser suficiente--. Racionalizando las curvas de
Bezier, convirtiéndolas de alguna manera en "nurbs", esta
limitación desaparece.
Racionalizar una curva de Bezier o un Beta-spline, tiene una
explicación matemática, pero resulta sencillo entenderlo
sin hacer uso de formulaciones más o menos complejas.
Sencillamente, si racionalizamos una curva de Bezier podemos ponderar
sus puntos de control, de modo que uno de estos puntos con un "peso"
mayor que los demás, provocará una "a modo" de
atracción sobre la curva que se desviará hacia el punto.
La versión incluída en Metagraf-2 es extremadamente
simple y, por el momento, puede servir para entender el funcionamiento
de estas curvas. En la próxima versión, tendrá
unas características mucho más funcionales.
Para generar una curva de Bezier racional, hay que activar "ctrl" y pulsar el botón correspondiente. Se
dibuja la curva de 4 puntos en la forma convencional y a
continuación se dan los pesos correspondientes a los puntos de
control. Seleccionando la curva nuevamente con los pesos escritos, la
forma cambia a la de la curva racional correspondiente. Si no se dan
pesos, por defecto se toma la unidad para cada punto, es decir, se
dibuja una curva de Bezier convencional.
Para dar pesos a los puntos de control se utilizan las cuatro casillas
que aparecen a la derecha del título "data" en el panel de
control. Los dos primeros puntos se corresponden con las casillas de
arriba, y los dos segundos con las de abajo.
Un ejemplo servirá para aclarar conceptos: Si deseamos dibujar
un semicírculo con una sola curva de Bezier racional, primero
debemos saber qué pesos dar a los puntos de control y
dónde situar éstos. Por tanto, es preciso tener unos
conocimientos mínimos del funcionamiento de estas curvas. En el
caso del semicírculo, los pesos a dar tendrán el valor 3
para el primero y cuarto punto y el valor 1 para el segundo y tercero.
El polígono de control de la curva deberá ser un
cuadrado. Dibujando la curva como se ha dicho, se obtiene un
semicírculo perfecto. El proceso puede verse en las figuras que
se muestran a continuación:
Una vez generada la curva, si pulsamos el botón "data" se borran todos los valores de sus casillas.En esa situación, si se vuelve a seleccionar no pierde la nueva forma adquirida. Estos objetos se pueden escalar, girar, clonar, colorear...etc. en la forma habitual. No se pueden rellenar. Tampoco es posible dibujarlos con más de cuatro puntos, de modo que si pulsamos una quinta vez el objeto se deselecciona, y si seguimos pulsando generamos un nuevo objeto nurbs, lo que puede ser útil para encadenar objetos de este tipo.(Sin olvidar que la primera pulsaci&ooacute;n del nuevo objeto debe consistir en pulsar y arrastrar.)
Página
anterior |
|
Madrid, Abril de 2004 |