# looking for Point interpolater

• 08-20-2010, 04:27 AM
gib65
looking for Point interpolater
Hello,

I'm wondering if there's a method or class or algorithm of some kind in the Java APIs that will take in two Point objects and interpolate them.

More specifically, I'd like something that will help me produce a line between the points, but I need this line to be made up of Points itself - that is, an array or vector (or something like that) of Points, one per pixel.

If there's something in the Java APIs that can do just that, that would be perfect, but even something that help (like an interpolater) would do the trick. By an 'interpolater' I mean something that takes in two points and a weight and gives back an interpolated Point according to the weight passed into it. The weight would be an int (or double) indicating how close to the one point (and how far away from the other Point) the resulting point is to be. For example, say I passed in .8 for my weight (or 80 if its an int - to be interpreted as 80%), then it would give me the Point that's 80% the way from the first Point to the second Point.

Is there anything like this in the Java APIs or even anything that will help me accomplish what I want to do? Is there any online algorithm outside the Java Platform site that shows how to do this?
• 08-20-2010, 05:54 AM
Fubarable
I know of no API method that does this, but you can certainly write it yourself using the basics geometry.
• 08-20-2010, 10:46 AM
JosAH
Given point (x1, y1) and point (x2, y2) all points on the line segment between those two points can be described as (x1, y1)+p*(x2-x1, y2-y1). So for p= 0.8 you have your answer.

kind regards,

Jos
• 08-20-2010, 01:33 PM
Norm
Quote:

array or vector (or something like that) of Points, one per pixel.
Do you want just the Points for pixels the line actually goes thru? Since pixel positions are whole numbers, the line could go between some pixels.
• 08-20-2010, 02:00 PM
JosAH
Quote:

Originally Posted by Norm
Do you want just the Points for pixels the line actually goes thru? Since pixel positions are whole numbers, the line could go between some pixels.

That doesn't matter; the Bresenham line drawing algorithm hits those pixels that are nearest to the ideal line so my method (see previous reply) gives the top left corner of a pixel on a Bresenham line after truncating to ints.

kind regards,

Jos
• 08-20-2010, 04:22 PM
gib65
Thanks everyone,

If the formula is as simple as that, I will write my own method.