Transformaciones

Sobre los objetos dibujados se pueden aplicar diversas transformaciones como moverlos, cambiar su tamaño, girarlos, inclinarlos y también reflejarlos. Inkscape dispone de diferentes métodos para realizar estas transformaciones. Estos métodos incluyen el empleo de: el ratón, el teclado, los botones de la barra de Controles de Herramientas, el cuadro de diálogo Transformar, los comandos Pegar tamaño, y el cuadro de diálogo Editor XML. Vamos a explicar cada técnica por separado. Todos los métodos comienzan seleccionando el objeto o grupo de objetos que se quiere transformar. La Herramienta Selector debe estar activada para realizar transformaciones con el ratón o el teclado. Para activar esta herramienta, hay que hacer clic sobre el icono icon de la Caja de Herramientas, o bien usar el atajo de teclado (F1).

Antes de continuar, es necesario comentar algunos puntos importantes:

Primero, en algunas operaciones se manejan píxeles SVG, mientras que en otras se usan Píxeles de pantalla. Los primeros son las unidades utilizadas en el archivo SVG. Este escala interna está fijada (por defecto) en 90 ppp. Las otras unidades se refieren a un píxel de la pantalla, por lo que esta escala cambia con el nivel del zoom aplicado.

Segundo, las posiciones y dimensiones a menudo están referidas a la caja de contorno. A partir de la versión 0.46, se puede escoger entre dos definiciones para la caja de contorno dentro de la sección Herramientas del cuadro de diálogo Preferencias de Inkscape (Archivo icon Preferencias de Inkscape... (Mayús.+Ctrl+P)). La Caja de contorno visual incluye la anchura del borde si este es visible. Por ejemplo, un cuadrado de 100 píxeles de lado (entre los nodos de las esquinas) tendrá una anchura de 102 píxeles si la anchura del borde es de 2 píxeles. La Caja de contorno visual incluye también a los Marcadores, y asume que los estilos de la Unión y de la Punta del Borde son Redondos. Con la opción Caja de contorno geométrica solo se consideran los nodos para determinar las dimensiones de la caja de contorno.

Cajas de Contorno.
Las líneas discontinuas indican los límites de las cajas de contorno correspondientes al mismo trazo con Marcadores. Izquierda: Caja de contorno visual. Derecha: Caja de contorno geométrica.

Tercero, como ya se ha indicado en la introducción de este capítulo, las transformaciones no cambian la definición subyacente de los objetos de forma regular o de objetos agrupados (con la excepción de las transformaciones simples de objetos Rectángulo cuando en el parámetro Guardar transformación está seleccionada la opción Optimizado).

Cuarto, cuando la Herramienta Selector se está utilizando, existen varias opciones que se pueden activar y desactivar en los Controles de Herramienta. Las siguientes opciones están activadas cuando su icono aparece resaltado.

Quinto, las rotaciones e inclinaciones se realizan alrededor de un punto que es el Centro de rotación. Este punto está indicado por medio de un tirador en forma de signo + que se puede arrastrar, y que es visible cuando se utiliza la Herramienta Selector en su modo de rotación o inclinación. Información más detallada al respecto se puede encontrar en las siguientes secciones.

Transformaciones con el Ratón

Traslaciones

El ratón se puede utilizar en combinación con las teclas Mayús., Ctrl, y Alt:

  • Arrastre con el Botón Izquierdo del Ratón: Se selecciona un objeto (si no estuviera ya seleccionado) y se mueve el mismo. O bien se mueven el objeto u objetos seleccionados si el arrastre comienza en cualquier objeto que ya estuviera previamente seleccionado.

  • Alt+Arrastre con el Botón Izquierdo del Ratón: Se mueven el objeto u objetos seleccionados sin importar donde comience el arrastre. No se queda seleccionado el objeto que esté situado en el punto donde comience el arrastre.

  • Ctrl+Arrastre con el Botón Izquierdo del Ratón: Se mueven el objeto u objetos seleccionados solo en dirección vertical u horizontal.

  • Mayús.+Arrastre con el Botón Izquierdo del Ratón: Se desactivan temporalmente los ajustes tanto a las Rejillas como a las Líneas Guía.

Cambio de tamaño, Rotación e Inclinación

Cuando se selecciona un objeto o varios, aparecen ocho flechas de doble punta en los bordes de un rectángulo que rodea a la selección. Al realizar un Arrastre con el Botón Izquierdo del Ratón desde cualquiera de esos tiradores, se cambiará de tamaño la selección. Con las flechas situadas en las esquinas se cambiará el tamaño tanto en la dirección vertical (y) como en la horizontal (x). Con las flechas de los lados solo se cambiará de tamaño en una dirección.

Flechas de cambio de tamaño.
Flechas de cambio de tamaño (izquierda). Flechas de rotación en las esquinas y flechas de inclinación en los lados (derecha). El signo + en el centro del cuadrado a la derecha es el tirador del Centro de rotación.

Al hacer un segundo clic sobre un objeto ya seleccionado, o bien usando el atajo de teclado Mayús.+S, cambia la dirección de las flechas con doble punta. En este otro modo, un Arrastre con el Botón Izquierdo del Ratón desde una flecha de las esquinas producirá una rotación de la selección. Si el arrastre lo hacemos desde una de las flechas laterales, realizaremos una inclinación de la selección. Para recuperar las flechas en el modo de cambio de tamaño hay que hacer otro clic sobre la selección.

Centro de Rotación.  Las rotaciones se realizan alrededor del llamado Centro de rotación que está indicado por un tirador representado por el signo +. El tirador (y por lo tanto, el centro de rotación) se puede mover arrastrándolo. Si se arrastra manteniendo pulsada la tecla Ctrl el movimiento estará limitado a las direcciones horizontal o vertical. El tirador se ajustará al borde de la caja de contorno o al eje central de la caja de contorno de la selección. El tirador también se ajustará a la Rejilla o a las Líneas Guía si está activado el ajuste de nodos a esos elementos. Los movimientos del tirador del Centro de rotación se pueden deshacer mediante la combinación de teclas (Ctrl+Z). Manteniendo pulsada la tecla Mayús. mientras se hace clic sobre el tirador del Centro de rotación, el tirador se vuelve a situar en el centro de la caja de contorno. El Centro de rotación no cambia cuando un objeto se mueve, se cambia su tamaño, se duplica, se clona o se convierte en trazos. Tampoco cambia entre diferentes sesiones de edición.

Cuando se seleccionan varios objetos, el Centro de rotación de la selección será el centro de rotación del primer objeto seleccionado si su centro ha sido desplazado de su posición predeterminada. En otro caso, el centro de rotación de la selección será el centro de la caja de contorno de todos los objetos seleccionados.

Las teclas Mayús., Ctrl y Alt se pueden utilizar en combinación con el Arrastre con el Botón Izquierdo del Ratón para realizar cambios de tamaño, rotaciones o inclinaciones.

Cambio de Tamaño
  • Ctrl: Se mantiene constante la proporción entre la anchura y la altura del objeto.

  • Mayús.: Se cambia el tamaño del objeto de manera simétrica alrededor del centro de la selección.

  • Alt: El aumento del tamaño del objeto está restringido a un factor entero (2, 3, 4, ...). La reducción del tamaño del objeto está restringido a una fracción simple (1/2, 1/3, 1/4, ...). También están permitidos valores negativos (es decir, reflejar el objeto respecto al borde de la caja de contorno).

Rotación e Inclinación
  • Ctrl: La rotación o inclinación está restringida a un múltiplo del Ángulo de ajuste rotacional. Se permite estirar el objeto en la dirección ortogonal a la inclinación un múltiplo de veces la anchura o la altura de la caja de contorno.

  • Mayús.: En las rotaciones se mantiene fija la esquina opuesta, y en las inclinaciones se mantiene fijo el lado opuesto. (Esto es lo contrario de lo que ocurre en los cambios de tamaño.)

Transformaciones con el Teclado

Mediante el teclado podemos mover, cambiar de tamaño, rotar o reflejar una selección (pero no es posible realizar inclinaciones). Para algunas combinaciones de teclas, la magnitud de las transformaciones está determinada por ciertos parámetros (por ejemplo, el Factor de desplazamiento) que se pueden fijar en la sección Pasos del cuadro de diálogo Preferencias de Inkscape (Archivo icon Preferencias de Inkscape... (Mayús.+Ctrl+P)).

Traslaciones

  • Flecha: El objeto u objetos seleccionados se mueven una unidad del Factor de desplazamiento (por defecto 2 píxeles SVG).

  • Mayús.+Flecha: El objeto u objetos seleccionados se mueven diez veces la unidad del Factor de desplazamiento.

  • Alt+Flecha: El objeto u objetos seleccionados se mueven un Píxel de pantalla.

  • Alt+Mayús.+Flecha: El objeto u objetos seleccionados se mueven diez Píxel de pantalla.

Cambio de Tamaño

Los cambios de tamaño se realizan centrados entorno al punto central de la caja de contorno.

  • ., >: Los objetos seleccionados aumentan de tamaño un Paso de Escala (por defecto, 2 píxeles SVG).

  • ,, <: Los objetos seleccionados disminuyen de tamaño un Paso de Escala (por defecto, 2 píxeles SVG).

  • Ctrl+., o bien Ctrl+>: El tamaño de los objetos seleccionados aumenta hasta un 200%.

  • Ctrl+,, o bien Ctrl+<: El tamaño de los objetos seleccionados disminuye hasta un 50%.

  • Alt+., Alt+>: El tamaño de los objetos seleccionados aumenta un Píxel de pantalla. Factor de escala = 1 píxel de pantalla/distancia desde el centro de la caja de contorno hasta el borde más lejano.

  • Alt+,, Alt+<: El tamaño de los objetos seleccionados disminuye un Píxel de pantalla.

Rotación

Las rotaciones se realizan alrededor del Centro de rotación.

  • [: Los objetos seleccionados giran en sentido horario un Ángulo de ajuste rotacional (por defecto, 15 grados).

  • ]: Los objetos seleccionados giran en sentido antihorario un Ángulo de ajuste rotacional (por defecto, 15 grados).

  • Ctrl+[: Los objetos seleccionados giran 90 grados en sentido horario.

  • Ctrl+]: Los objetos seleccionados giran 90 grados en sentido antihorario.

  • Alt+[: Los objetos seleccionados giran un Píxel de pantalla en sentido horario (ángulo de giro = arctan[1 Píxel de pantalla dividido entre la distancia desde el centro hasta la esquina de la caja de contorno]).

  • Alt+]: Los objetos seleccionados giran un Píxel de pantalla en sentido antihorario.

Reflexión

Las reflexiones de objetos se realizan respecto al punto central de la caja de contorno si la selección está en el modo de cambio de tamaño. Si se encuentra en el modo de rotación/inclinación, la reflexión se produce respecto a la línea horizontal o vertical que pasa por el Centro de rotación. Las siguientes teclas funcionan siempre sin importar la herramienta que se encuentre activa en ese momento.

  • H: Reflexión horizontal.

  • V: Reflexión vertical.

Transformaciones con la Barra de Controles de Herramientas

La barra de Controles de Herramienta contiene diversos botones para transformar un objeto cuando la Herramienta Selector está activada. Un objeto se puede trasladar utilizando las casillas X e Y. El tamaño de un objeto también se puede cambiar usando las casillas de anchura (W) y de altura (H). Las medidas que se introduzcan en esas casillas estarán expresadas en la unidad de longitud que se haya elegido en el menú desplegable situado justo a la derecha de las casillas. Se puede conseguir que la proporción entre la anchura y la altura de un objeto permanezca fija haciendo clic sobre el icono del candado, de esta forma al cambiar una dimensión del objeto, automáticamente cambia la otra. En esta barra también hay botones para realizar rotaciones y reflexiones de objetos.

Transformaciones con el Cuadro de Diálogo Transformar

Los objetos también se pueden mover, cambiar de tamaño, rotar e inclinar utilizando el cuadro de diálogo Transformar (Objeto icon Transformar... (Mayús.+Ctrl+M)). Este cuadro de diálogo contiene una ficha diferente para realizar cada una de estas transformaciones. Además dispone de una ficha titulada Matriz con la que se puede aplicar una Matriz de Transformación a los objetos seleccionados.

En el cuadro de diálogo Transformar hay una opción para aplicar la transformación escogida a toda la selección como un grupo, o bien aplicarla individualmente a cada uno de los objetos de la selección. (Esta opción no tiene efecto dentro de la ficha Matriz). Este cuadro de diálogo también dispone de un botón Limpiar para reiniciar los valores de la transformación a sus valores predeterminados.

Transformación global o individual.
Dos cuadrados (izquierda) transformados mediante una rotación como un grupo (centro) o individualmente (derecha).

Ficha Mover

Mediante la ficha Mover podemos realizar traslaciones de un objeto.

Ficha Mover.
Ficha Mover.

Si la casilla Movimiento relativo está marcada, la traslación que se aplique al objeto será en relación a la posición actual del objeto. Si esa casilla no está marcada, la esquina inferior izquierda de la caja de contorno de los objetos se moverá hasta las coordenadas introducidas.

Nuevo en la versión 0.47:

En versiones anteriores a la 0.47, la opción Aplicar a cada objeto por separado no hacía nada cuando se movían objetos. A partir de la versión 0.47, cuando esta opción está activada, si se aplica un desplazamiento positivo los objetos se moverán de forma que aparecerán más separados; y se aplica un desplazamiento negativo los objetos aparecerán más juntos. Por ejemplo, al desplazar objetos horizontalmente, el objeto situado más a la izquierda se mueve la medida especificada, el siguiente objeto a la derecha se mueve dos veces esa medida, el siguiente objeto se mueve tres veces la medida, y así sucesivamente. El algoritmo utiliza los bordes izquierdos de las cajas de contorno para el movimiento horizontal, y los bordes inferiores de las cajas de contorno para el movimiento vertical. Aunque el borde izquierdo de dos objetos tenga la misma posición, los objetos se moverán con desplazamientos diferentes.

Transformar: Mover.
Ejemplos de la aplicación un desplazamiento horizontal positivo de la mitad de la anchura de un cuadrado con la opción Aplicar a cada objeto por separado activada y desactivada. Arriba: Situación inicial de los cuadrados. En medio: Desplazamiento con la opción desactivada. Abajo: Desplazamiento con la opción activada.

Ficha Escalar

Mediante la ficha Escalar se pueden realizar cambios en el tamaño de un objeto.

Ficha Escalar.
Ficha Escalar.

Los cambios en el tamaño de un objeto se realizan respecto al centro de su caja de contorno. Con la opción Escalar proporcionalmente activada, se obliga a que la altura y la anchura del objeto cambien en el mismo porcentaje. Tenga en cuenta que aplicar un factor de escala del 100% equivale no modificar el tamaño del objeto.

Ficha Rotar

Utilizando la ficha Rotar podemos aplicar rotaciones a un objeto.

Ficha Rotar.
Ficha Rotar.

Las rotaciones de un objeto se realizan respecto al Centro de rotación. El sentido de rotación positivo corresponde al sentido antihorario.

Ficha Inclinar

Mediante la ficha Inclinar se puede inclinar un objeto.

Ficha Inclinar.
Ficha Inclinar.

Se puede inclinar un objeto en las direcciones vertical y horizontal por separado. Las inclinaciones se realizan respecto al centro de la caja de contorno del objeto. La magnitud de la inclinación se puede especificar como una distancia, un porcentaje o un ángulo. En todos los casos, la inclinación se realiza respecto al tamaño de la caja de contorno del objeto.

Ejemplos de inclinación horizontal de una caja de contorno de 100 píxeles de ancho por 50 píxeles de alto con el Centro de rotación situado en el centro de la caja de contorno:

  • Distancia de 20 píxeles: El borde superior de la caja se desplaza 10 px (la mitad de los 20 px) hacia la derecha, y el borde inferior se desplaza 10 px hacia la izquierda.

  • Porcentaje del 20%: El borde superior se desplaza 5 px (la mitad del 20% de la altura de la caja) hacia la derecha, y el borde inferior se desplaza 5 px hacia la izquierda.

  • Ángulo de 30°: El borde superior se desplaza 14.4 px (tan(30°) × 50 px × 0.5) hacia la izquierda (los ángulos positivos están definidos en el sentido antihorario), y el borde inferior se desplaza 14.4 px hacia la derecha.

Nota: Si la inclinación se aplica a un objeto que no es un rectángulo, el centro de la nueva caja de contorno del objeto no coincidirá necesariamente con el centro de la caja de contorno original.

Ficha Matriz

Con la ficha Matriz podemos aplicar una transformación genérica a un objeto.

Ficha de la matriz de transformación.
Ficha Matriz.

La transformación se describe mediante una Matriz de Transformación 3 × 3 de la cual, solamente se muestran las dos filas superiores que podemos modificar para definir la transformación. Con la submatriz 2 × 2 superior izquierda (A, B, C, y D) se define el cambio de tamaño, la rotación y la inclinación del objeto, mientras que con la columna derecha (E y F) se define la traslación.

Esta ficha incluye la opción Editar la matriz actual. Si esta opción no se encuentra activada, la matriz introducida en la ficha post-multiplicará a la matriz de transformación previamente existente. Si esta opción está activada, la matriz introducida en la ficha sustituirá a la matriz de transformación previamente existente.

Hay dos puntos importantes que es conveniente señalar: Primero, la matriz de transformación se aplica con respecto al punto (0,0) en las coordenadas de pantalla si la opción Editar la matriz actual no está activada. Si activamos esta opción, la transformación se aplica con respecto al Sistema de Coordenadas del Usuario, el cual, si el objeto no está incluido dentro de un Grupo, es equivalente al sistema de coordenadas SVG (Initial View Port) donde el origen está situado en la esquina superior izquierda de la página. Para más detalles sobre este punto, consultar las especificaciones del estándar SVG al respecto.

Segundo, si la propiedad Guardar transformación que se encuentra dentro de la sección Transformaciones del cuadro de diálogo Preferencias de Inkscape está definida con la opción Optimizado, Inkscape modificará internamente la matriz y otros parámetros del objeto para que los valores internos de los términos E y F sean cero. Esto significa que, por ejemplo, para una inclinación horizontal de un rectángulo, el valor del parámetro interno de su altura puede cambiar. Sin embargo, la representación del objeto tendrá el aspecto correcto.

Transformaciones con los Comandos Pegar Tamaño

Los comandos que contiene el submenú Edición Pegar tamaño se pueden utilizar para cambiar el tamaño de una selección, o para que los objetos dentro de una selección se ajusten a la anchura y/o a la altura de otra selección que se encuentre almacenada en el portapapeles. Para aplicar estos comandos, primero hay que copiar (o cortar) una determinada selección con las dimensiones deseadas para almacenarla dentro del portapapeles. Después hay que seleccionar el objeto u objetos que nos interese transformar y utilizar uno los siguientes comandos:

Con los tres primeros comandos se cambia el tamaño de una selección de manera global para que coincida con el del objeto almacenado en el portapapeles, mientras que con los tres últimos comandos se cambia individualmente el tamaño de cada objeto para que coincida con el del objeto almacenado en el portapapeles. Las dimensiones están determinadas por las cajas de contorno. Con el botón del candado del cambio de tamaño proporcional ( icon / icon ) que está situado en la barra de Controles de Herramienta de la Herramienta Selector se puede controlar en algunos casos la manera en que se transforman la anchura y altura de los objetos.

  • Edición Pegar tamaño Pegar tamaño: La selección cambia de tamaño de manera que su caja de contorno coincide con el de la selección que esté almacenada en el portapapeles. El cambio de tamaño se realiza centrado en el punto medio de la caja de contorno de la selección.

  • Edición Pegar tamaño Pegar ancho: La selección cambia de tamaño de manera que la anchura de su caja de contorno coincide con la anchura de la selección que esté almacenada en el portapapeles. La altura de la selección no se modifica si el candado del cambio de tamaño proporcional está desactivado; en caso contrario, la altura de la selección cambia en la misma proporción que la anchura.

  • Edición Pegar tamaño Pegar altura: La selección cambia de tamaño de manera que la altura de su caja de contorno coincide con la altura de la selección que esté almacenada en el portapapeles. La anchura de la selección no se modifica si el candado del cambio de tamaño proporcional está desactivado; en caso contrario, la anchura de la selección cambia en la misma proporción que la altura.

  • Edición Pegar tamaño Pegar los tamaños por separado: Cada uno de los objetos de la selección cambia su tamaño de manera que su caja de contorno coincide con el de la selección que esté almacenada en el portapapeles. El cambio de tamaño de cada objeto se realiza centrado en el punto medio de la caja de contorno de cada uno de ellos.

  • Edición Pegar tamaño Pegar ancho por separado: Cada uno de los objetos de la selección cambia su tamaño de manera que la anchura de su caja de contorno coincide con la anchura de la selección que esté almacenada en el portapapeles. Las alturas de cada uno de los objetos no se modifica si el candado del cambio de tamaño proporcional está desactivado; en caso contrario, las alturas de cada objeto cambian en la misma proporción que las anchuras correspondientes.

  • Edición Pegar tamaño Pegar altura por separado: Cada uno de los objetos de la selección cambia su tamaño de manera que la altura de su caja de contorno coincide con la altura de la selección que esté almacenada en el portapapeles. Las anchuras de cada uno de los objetos no se modifica si el candado del cambio de tamaño proporcional está desactivado; en caso contrario, las anchuras de cada objeto cambian en la misma proporción que las alturas correspondientes.

Transformaciones con el Editor XML

El control completo de una transformación se puede conseguir mediante el cuadro de diálogo del Editor XML (Edición icon Editor XML... (Mayús.+Ctrl+X)). Al seleccionar un objeto en la ventana del documento, en el cuadro de diálogo del Editor XML aparecerán los atributos del objeto. Cualquier transformación que se haya aplicado a un objeto estará descrita dentro del atributo transform. Una transformación puede aparecer descrita como uno de estos tipos: translate, scale, rotate, skewX, skewY o matrix. En la mayoría de los casos, la transformación aparecerá como del tipo matrix. Un atributo matrix contiene la Matriz de Transformación en el orden (A, B, C, D, E, F) donde los elementos (ACE) forman la primera fila de la matriz.

Un punto que hay que resaltar es que la matriz describe la transformación de un objeto respecto al Sistema de Coordenadas del Usuario, el cual, si el objeto no está incluido dentro de un Grupo, es equivalente al sistema de coordenadas SVG (Initial View Port) donde el origen está situado en la esquina superior izquierda de la página (al contrario que en el sistema de coordenadas de la pantalla cuyo origen está situado en la esquina inferior izquierda de la página). Para más detalles, consultar las especificaciones del estándar SVG al respecto.