Remocao Avl

Qual a logica pro codigo da rotacao que ele testa logo apos inserir um elemento na Avl, levando em consideraçao q ele pega a diferenca dos valores e nao da altura das sub-arvores? Nos meus testes, funciona perfeitamente com qualquer valor.

Ninguém?