# Finding 3D position between two 3D nodes

## Recommended Posts

This is a pretty basic math question but I'm having trouble with it. Say I have two 3D nodes, n1 and n2, represented by 3D position vectors. How can I find a new position n3 that's between n1 and n2, specified as some distance m from n1?

In 2D space I think this would be

Θ = tan(n2.y - n1.y / n2.x - n1.x)
n3 = [m cos Θ, m sin Θ]

In 3D space I believe we need two of the euler angles but I'm not sure which ones or what to do with them.

(If it makes a difference I'm working with iOS SceneKit.)

Thanks!

##### Share on other sites
n3 = n1+(n2-n1)*m;  (where m is between 0-1)

alternativly if you have a set distance that isn't in 0-1 range.

dis = n2-n1;

alpha = dis/m;

n3 = n1+dis*alpha;

##### Share on other sites

n3 = n1 + specified_distance * (n2 - n1) / length(n2 - n1)

##### Share on other sites

Alvaro, your formula works great. Thanks!

## Create an account

Register a new account

1. 1
2. 2
Rutin
19
3. 3
JoeJ
16
4. 4
5. 5

• 30
• 22
• 13
• 13
• 17
• ### Forum Statistics

• Total Topics
631700
• Total Posts
3001800
×