Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Ordem entre rotate e translate

Ao longo do enunciado do exercício sugere-se por meio das figuras que a rotação deve ser feita antes da translação, o que é inclusive ratificado ao final da resolução onde isso é dito de maneira explícita. Porém, contrariamente a ordem implementada foi "transform: translate(6.5754em, -2.4749em) rotate(45deg);", que, ao final das contas, provou-se ser a forma correta de se fazer. Por que exatamente essa contradição e por que a forma correta é esta última? Já que, pra mim, o mais lógico realmente seria rotacionar antes de transladar, como recomendou o enunciado. Grato!

1 resposta
solução!

Olá Edson,

Acho que o que gera a confusão aqui é a propriedade transform. Nessa propriedade, as operações são realizadas da direita para esquerda.

Uma forma de intuir isso vem do fato que essas operações são implementadas como multiplicação de matrizes de rotação e translação para cada ponto da imagem. De forma simplificada, as operações seriam aplicadas na seguinte sequência:

1. [matriz translação] * [matriz rotação] * [coordenada]
2. [matriz translação] * [coordenada rotacionada]
3. [coordenada rotacionada e transladada]