Estou fazendo um pequeno editor de cenas em 3D (que só permite modificar as posições dos objetos).
Cada objeto é desenhado com um eixo X / Y / Z 3d:
Como funciona: o usuário escolhe um eixo (X, Y ou Z) clicando com o botão esquerdo do mouse e, enquanto mantém pressionado o botão esquerdo, move o mouse (para mover o objeto na direção do eixo). escolher já está ok, mas eu gostaria de saber que how much
o objeto deve ser traduzido para o eixo selecionado, dependendo do movimento do mouse em 2D.
Por exemplo, nesta figura, selecionar o eixo X e mover o mouse para a esquerda e para a direita deve proporcionar um deslocamento maior do que movê-lo para cima (quase zero para este)
Deve ser muito simples, mas não consigo descobrir.
A entrada deve ser: deslocamento do mouse desde o primeiro clique esquerdo (vetor 2D), vetor de eixo selecionado (vetor 3d), matriz de exibição de modelo / projeção.
Saída: quantidade (flutuante ou dupla)