J'essaie d'essayer de trouver un nouvel emplacement (x, y, z) entre deux emplacements déjà existants (x, y, z).trouver l'emplacement entre deux autres emplacements
par exemple. disons que la distance entre locA et locB est 2500. locNew devrait toujours être l'emplacement avec la distance 300 et devrait être sur la ligne de locA et de locB.
Je n'ai aucun problème à trouver le point milieu entre locA et locB, mais je continue de me taper la tête en essayant de trouver locNew pour cette situation spécifique.
J'ai essayé, mais il retourne un point qui ne figure pas sur la ligne de Loca à locB:
locA = {x = 400, y = 400, z = 400}
locB = {x = 1200, y = 1200, z = 1200}
--this is wrong somehow
locNew_x = (locB.x+locA.x)-(locB.x-300)
locNew_y = (locB.y+locA.y)-(locB.y-300)
locNew_z = (locB.z+locA.z)-(locB.z-300)
locNew = {x = locNew_x, y = locNew_y, z = locNew_z}
--draws a line between two objects
DrawLine(locA, locNew)
langue de codage n'est pas important, étant donné que le calcul devrait ressembler à « presque » la même chose dans la plupart des langues , gardez à l'esprit que je suis à la recherche d'une solution sous une forme non mathématique.
Mise à jour: Les solutions standard fonctionnent si x, y, z sont identiques, mais pas si elles sont différentes comme dans l'exemple ci-dessous.
locA = {x = 1475, y = 95, z = 838}
locB = {x = 2226, y = 110, z = 1190}
double possible de [? Trouver les coordonnées d'un point entre deux points] (http://stackoverflow.com/questions/2886092/finding-coordinates-of-a-point-between- deux points) –