Buscar en este blog

lunes, 5 de septiembre de 2011

Splines (7ª parte)

Existen muy pocos objetos de dibujo en AutoCAD que cuentan con comandos de edición propios y específicos, y las curvas splines son uno de ellos. El comando EDITSPLINE (SPLINEDIT) reúne todas las operaciones de edición que se requieren para modificar las características geométricas de este tipo de curvas, permitiendo alterar la definición de la curva en su conjunto o de forma individual cada uno de sus puntos de ajuste y los vértices de su polígono de control. Como es natural, esta cantidad de operaciones exige un comando con muchas opciones y subopciones, algunas de las cuales no son fáciles de entender.

Con esta entrega iniciamos el estudio detallado del comando EDITSPLINE (SPLINEDIT) centrándonos en las opciones que afectan a la curva de forma global. Aunque probablemente son las opciones más sencillas, esconden algunas particularidades interesantes que conviene conocer para aprovechar todo su potencial.


El comando EDITSPLINE

Las operaciones de edición más frecuentes sobre curvas splines pueden llevarse a cabo mediante los pinzamientos, tal y como vimos en la entrega anterior de esta serie, y en algunos casos también con el concurso de la paleta de propiedades. No obstante, cuando se requiere un ajuste más preciso es necesario recurrir al comando EDITSPLINE (SPLINEDIT), que ofrece un control total sobre todos los parámetros que determinan la forma de la curva.

Además de escribir su nombre completo en la línea de comando o en la entrada de solicitud dinámica, el comando EDITSPLINE (SPLINEDIT) se puede iniciar utilizando cualquiera de los siguientes métodos:
  1. Expandiendo el grupo Modificar y haciendo clic en el icono Editar spline en la ficha Inicio de la cinta de opciones.
  2. Haciendo clic en el icono Editar spline de la barra de herramientas Modificar II.
  3. Si la barra de menús está visible, seleccionando la opción Spline en el submenú Objeto del menú desplegable Modificar.
  4. Escribiendo la abreviatura SPE en la línea de comando o en la entrada de solicitud dinámica.
Aparentemente es un comando complicado debido a la gran cantidad de opciones y subopciones que ofrece, pero si hacemos un esquema previo de sus posibilidades, veremos que la complejidad es bastante menor de la que un principio puede parecer. Así, el comando EDITSPLINE (SPLINEDIT) permite:
  • Cerrar una curva abierta o abrir una curva cerrada.
  • Unir la curva con cualquier otra para dar lugar a una sola spline.
  • Desplazar, añadir o suprimir un punto de ajuste.
  • Modificar las direcciones de las tangentes en los extremos.
  • Modificar la tolerancia de los puntos de ajuste.
  • Desplazar, añadir, suprimir o modificar el peso de un vértice de control.
  • Elevar el orden de la curva.
  • Convertir la spline en una polilínea.
  • Invertir la dirección de trazado.
Cuando se inicia el comando, AutoCAD solicita la designación de una spline. A esta primera solicitud se puede responder designando un verdadera curva spline o una aproximación obtenida a través del comando EDITPOL (PEDIT). En este segundo caso, la curva aproximada se convierte automáticamente en una verdadera spline, aún en el caso de finalizar o cancelar el comando inmediatamente después de designar la polilínea.

Una vez seleccionada la curva, según que el método empleado para dibujarla haya sido Ajustar o VC, aparecen los pinzamientos de sus puntos de apoyo o el polígono de control con los pinzamientos de sus vértices, respectivamente, y se muestra el mensaje principal de solicitud con todas las opciones disponibles:

Comando: EDITSPLINE
Designe spline:
Indique una opción [Cerrar/Unir/Ajustar datos/Editar vértices/
coNvertir en polilínea/Invertir/desHacer/Salir] <Salir>:

Si el objeto designado es una curva cerrada, la opción Cerrar (Close) se sustituye por aBrir (Open). En este sentido, debe tenerse en cuenta que AutoCAD considera la curva como cerrada cuando, además de tener sus extremos coincidentes, también son idénticas las direcciones de las tangentes en el cierre, es decir, cuando la curva es periódica. Las opciones Cerrar (Close) y aBrir (Open) efectúan sus respectivas operaciones en función de los vértices del polígono de control e ignoran las direcciones de las tangentes que se hubieran podido establecer en los extremos.

La opción Unir (Join), que sólo está disponible si la curva seleccionada es abierta, permite añadir a la spline una sucesión de curvas consecutivas, siempre que sus extremos coincidan con total exactitud sin que existan huecos o solapes entre ellos. Las curvas seleccionadas pueden ser líneas, polilíneas, arcos circulares y arcos elípticos. El orden de la curva obtenida es igual al mayor de los órdenes de las curvas parciales.

La spline resultante de la unión presenta un comportamiento particular en lo referente a su edición con pinzamientos, aún en el caso de ser cúbica. Al seleccionar la curva, después de la unión, siempre muestra su polígono de control y, si se utiliza el pinzamiento triangular para mostrar los puntos de ajuste, se produce un incomprensible cambio de forma que da lugar a una curva muy diferente de la inicial. El vídeo siguiente muestra la unión de una spline cúbica con un arco circular, poniendo en evidencia el citado cambio de forma que, en nuestra opinión, obedece a un error en la funcionalidad del pinzamiento triangular.
La opción coNvertir en polilínea (convert to Polyline) crea una polilínea con las mismas propiedades generales (capa, color, tipo de línea, etc.) que la spline inicial. El grado de aproximación de la polilínea resultante a la forma de la curva de partida depende del valor de precisión que se especifique como respuesta a la solicitud que se formula después de elegir esta opción:

Comando: EDITSPLINE
Designe spline:
Indique una opción [Cerrar/Unir/Ajustar datos/Editar vértices/
coNvertir en polilínea/Invertir/desHacer/Salir] <Salir>: coNvertir
Especifique una precisión <10>:

La respuesta a la solicitud de precisión puede ser cualquier número entero comprendido entre 0 y 99 (ambos inclusive). Por lo general, el valor propuesto por defecto, que es 10, proporciona excelentes resultados en la mayor parte de los casos. Como es lógico, cuanto mayor sea el valor de precisión, mayor será el número de vértices de la polilínea, pudiéndose llegar a obtener polilíneas con centenares de vértices para determinadas curvas y valores de precisión muy altos, haciendo que resulten prácticamente inmanejables, lo que aconseja una cierta prudencia a la hora de elegir el valor de precisión.

La spline inicial se puede conservar o suprimir según el valor que tenga la variable de sistema DELOBJ en el momento de efectuar la conversión. Si el valor de esta variable es 0, la spline inicial se conserva. Cualquier otro valor, positivo o negativo, determina la supresión de la curva. En todos los casos, el comando EDITSPLINE (SPLINEDIT) finaliza inmediatamente después de la conversión.

Si la spline original no es plana, el resultado de la conversión es una polilínea 3D compuesta necesariamente por segmentos rectos. Sin embargo, cuando la curva es plana, el valor de la variable de sistema PLINECONVERTMODE permite definir la geometría de la polilínea resultante. El valor 0 da lugar a una polilínea formada por segmentos rectos, mientras que el valor 1 determina que la polilínea esté compuesta por segmentos de arco.

En general, las polilíneas formadas por segmentos de arco permiten conseguir muy buenos grados de aproximación con valores de precisión relativamente bajos, como se puede apreciar en el siguiente vídeo.
La opción Invertir (Reverse), como su propio nombre indica, invierte la secuencia de puntos establecida durante el trazado de la curva, con lo que el primer punto pasa a ser el último y viceversa. Recuerde que una de las propiedades que estudiamos sobre las splines es que si se invierte el orden de los vértices, cambia la parametrización de la curva, pero geométricamente sigue siendo la misma. La única consecuencia es un cambio de signo en las componentes de los vectores unitarios que definen las direcciones de las tangentes en los extremos, en caso de haberse establecido.

La posibilidad de invertir la dirección de la curva resulta especialmente útil cuando deben aplicarse sobre ella los comandos DIVIDE o GRADUA (MEASURE) con la opción Bloque (Block). Ambos comandos insertan el bloque en los puntos de división con un ángulo de rotación igual a 0 en el sentido de avance de la curva, por lo que la inversión de la dirección viene a ser equivalente a insertar el bloque con un ángulo de rotación de 180 grados, tal y como muestra el siguiente vídeo. 
La opción desHacer (Undo) anula los efectos de la última operación realizada dentro del comando. Como es habitual, esta opción puede repetirse sucesivamente para ir anulando una por una todas las operaciones desde el inicio del comando.

Finalmente, la opción Salir (eXit), que siempre es la opción propuesta por defecto, permite terminar el comando y validar todas las operaciones de edición efectuadas sobre la curva.

En la próxima entrega completaremos el estudio del comando EDITSPLINE (SPLINEDIT) analizando las dos opciones que hemos dejado pendientes, Ajustar datos (Fit data) y Editar vértices (Edit vertex), cada una de las cuales cuenta con su propio conjunto de subopciones.


Ir a 6ª parte ...

0 comentarios: