I have two points (A, B) and the length of d. How can I find point C?
Game Development Stack Exchange is a question and answer site for professional and independent game developers. It only takes a minute to sign up.Sign up to join this community
Compute a vector
B, and normalize it.
V = (B - A) / |B - A|
Since the vector is normalized, it will have a length of one, and it will indicate the direction of
B relative to
A. If you then scale the vector by
d you will have the displacement from
V' = d * V
which you can simply add to
A to yield
C = V' + A
In case your d is a ratio instead of a length, e.g 0.5 puts it on equal distance from A and B, you can do the following and avoid a normalization:
C = A * (1 - ratio) + B * ratio