7.2.137 transform

(transform objetoID centerID frameID [rotate|translate|translate-scaled|scale] x y z [bbox-center|origin] [dt [smooth]])

Aplica um movimento (rotação, translação, ajuste proporcional) ao objeto objetoID; isto é, constrói e concatena uma matriz de transformação com transformações de objetoID. Os 3 IDs envolvidos são o objeto que se move, o centro do movimento, e o quadro em relação ao qual o movimento vai ser aplicado. O centro é facilmente entendido para rotações: se centerID for o mesmo que objetoID então o objeto irá girar em torno de seu próprio eixo; de outra forma o objeto em movimento irá orbitar o centro do objeto. Existe a palavra chave especial bbox-center que pode ser usada para centerID. Como resultado o movimento irá ser relativamente ao centro da caixa associada de objetoID. Normalmente frameID, em cujo sistema de coordenadas os movimentos (de mouse) são interpretados, é focus, a câmera atual. Translações podem ser ajustadas proporcionalmente às distâncias entre o alvo e o centro. Suporte ao espaço esférico e ao espaço hiperbólico bem como ao espaço eucidiano é embutido no geomview: use o comando space para mudar de um espaço para outro. Como tipo rotate x, y, e z são números no formato de ponto flutuante especificando ângulos em RADIANOS. Para tipos translate e translate-scaled x, y, e z são números no formato de ponto flutuante specificando distâncias no sistema de coordenadas do objeto de centro.

O campo opcional dt permite uma forma simples de animação; se estiver presente, o objeto move-se por aquela quantidade durante aproximadamente dt segundos, parando em seguinda. Se presente e seguido pela palavra chave smooth, o movimento é animado com uma função 3t^2-2t^3, iniciando e parando de modo uniforme. Se omitido, o movimento é aplicado imediatamente.