Cursos / Jogos Digitais / Matemática Aplicada a jogos / Aula

arrow_back Aula 05 - Transformações

3. Escala

As transformações de escala modificam as dimensões dos objetos, isto é, fazem objetos crescerem ou diminuírem em determinadas direções.

Podemos transformar um objeto inteiro, proporcionalmente, por um fator de $k$, dilatando esse objeto com relação à origem. O resultado disso seria um objeto idêntico ao original com tamanho diferente. Essa é a chamada escala uniforme, que preserva ângulos e proporções. Os comprimentos aumentam ou diminuem por um fator de $k$ e as áreas aumentam ou diminuem por um fator de $k^2$.

Se, por outro lado, queremos esticar ou achatar um objeto, devemos aplicar uma escala com fatores diferentes em direções diferentes, o que resulta em uma escala não uniforme. Uma escala não uniforme não preserva ângulos, e a variação de comprimentos e áreas depende da direção em que a escala foi aplicada.

O resultado da transformação depende intrinsecamente do fator de escala, que consideraremos ser sempre um número positivo. Se $k\gt1$, os objetos transformados serão maiores que os originais na direção em que for aplicada a transformação. Se $k<1$, os objetos transformados serão menores que os originais na direção em que for aplicada a transformação.

A maneira mais simples de efetuar uma transformação de escala é ao longo dos eixos coordenados. Uma escala de parâmetro $k$ ao longo do eixo $x$ transforma o vetor $(1, 0)$ da base em um vetor de mesma direção e sentido com norma igual a $k$. Sabemos que

$||k\vec{u}|| = |k| ||\vec{u}||.$

O vetor resultante da escala por um fator $k$ do vetor $(1, 0)$ é, então, o vetor $k (1, 0) = (k, 0)$.

Então, a matriz

$\left[ \begin{array}{cc} k & 0 \\ 0 & 1 \end{array} \right]$

realiza uma transformação de escala ao longo do eixo $x$ por um fator de $k$.

A Figura 8 abaixo mostra a imagem de um personagem sobre o plano cartesiano. Acrescentamos uma caixa em volta do personagem para melhor identificarmos a mudança nas suas dimensões.

Personagem com dimensões originais.

Ao realizar a transformação de escala ao longo do eixo com $k=2$, dada pela matriz

$\left[ \begin{array}{cc} k & 0 \\ 0 & 1 \end{array} \right],$

obtemos a imagem da Figura 9 abaixo.

Transformação de escala na direção do eixo $x$

Note que nada se altera na direção do eixo $y$, fato já esperado uma vez que a segunda coluna da matriz é igual ao segundo vetor da base canônica.

Para realizar uma transformação de escala na direção do eixo $y$ o procedimento é análogo. A matriz dessa transformação será

$\left[ \begin{array}{cc} 1 & 0 \\ 0 & k \end{array} \right],$

para algum $k>0$.

Fazendo $k=2$ e aplicando a transformação na imagem da Figura 8, obtemos o resultado exposto na Figura 10.

Transformação de escala na direção do eixo $y$

Essas duas transformações que abordamos até agora são não uniformes, uma vez que mantém a escala em uma direção e a altera na outra.

Uma transformação uniforme de escala é dada pela matriz

$\left[ \begin{array}{cc} k & 0 \\ 0 & k \end{array} \right],$

para algum $k>0$.

Podemos ver na Figura 11 o resultado da transformação uniforme, para $k=2$, aplicada na imagem da Figura 8.

Transformação uniforme com $k=2$

É possível, também, escalar nas direções dos eixos com fatores diferentes com matrizes do tipo

$\left[ \begin{array}{cc} k_x & 0 \\ 0 & k_y \end{array} \right],$

para $k_x>0$ e $k_y>0$.

Sempre que $k_x $ e $k_y$ forem iguais, teremos uma transformação uniforme.

A Figura 12 mostra o resultado da transformação de escala da Figura 8 realizada pela matriz

$\left[ \begin{array}{cc} k_x & 0 \\ 0 & k_y \end{array} \right],$

onde $k_x = 3$ e $k_y=2$.

Transformação de escala não uniforme com $k_x = 3$ e $k_y = 2$

A transformação de escala muitas vezes é utilizada para dar a impressão de proximidade, aumentando um objeto, ou distanciamento, o diminuindo, dentre muitas outras aplicações.

Uma mudança de escala é capaz de deformar objetos, achatando-os ou esticando-os. Basta que a escala seja não uniforme. Essa transformação, então, não é de corpo rígido como a rotação.

Atividade

Encontre a matriz da transformação que dobra a altura e triplica a largura de objetos planos. Em seguida, aplique essa transformação no polígono cujos vértices têm as coordenadas $(1, 0), (2, 0), (2.5, 1), (1.5, 2)$ e $(0.5, 1)$, em seguida encontre os vértices do novo polígono escalado.

Versão 5.3 - Todos os Direitos reservados