How to extend a line starting from (x0,y0) and passing thru (x1,y1) upto (xn,yn)?


I have one center point (x0,y0) and some more points scattered on canvas (x1,y1), (x2,y2)...
I want to show a motion of a sprite in a straight line starting from (x0,y0) thru (x1,y1) till it reaches beyond the boundary of canvas.

In fact, the sprite might be present anywhere on canvas (x1,y1/x2,y2...) and from a central reference point (x0,y0) i want to show its motion in straight line till it reaches beyond the canvas boundary.

Many line drawing (pixel-by-pixel) algorithms give coordinates from x0,y0 to x1,y1 and not beyond that, however, i want to extend that line to (xn,yn) which could be anything depending upon (x0,y0) and (x1,y1)

Any ideas?
Who is Participating?
ozoConnect With a Mentor Commented:
x = X0 + (X1-X0)*t
y = Y0 + (Y1-Y0)*t
vijaywadnereAuthor Commented:
Though I somehow calculated the value for "t" that suits my requirements by hit-n-trial - and the value i get is t>1 & t<2 (1.09/1.1/1.2..) what exactly this value should be?
What this "t" denotes??

The formula works like charm for any pixel in any quadrant.
vijaywadnereAuthor Commented:
Even though the "t" remained mystery for me, I accept this solution since I managed to get my work done with the help of the given formula.

A little explanation would have claimed a higher grade.
Sory, I didn't see your question,
t goes from 0 to 1 between the points, and then beyond 1 to extend the line
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.