need interpolation algorithm... not cosine

BlitzMax Forums/BlitzMax Programming/need interpolation algorithm... not cosine

Ok, that reminds me of this post a bit http://www.blitzbasic.com/Community/posts.php?topic=80236#901908
So I came up with this. x increases in a linear fasion, and y is calculated based on x. It also elliminates the need for sin() and cos(), however, I had to add a Sqr(), but only for the ends.
SuperStrict
Graphics 800,600

Type TPoint
	Field x:Float
	Field y:Float
End Type

Local Point1:TPoint = New TPoint
Point1.x = 50
Point1.y = 300

Local Point2:TPoint = New TPoint
Point2.x = 650
Point2.y = 300

Local MaxY:Float = 200
Local Maxy2:Float = Maxy^2
Cls
Local x:Float, y:Float
Local Dist:Float

For x = 0 To 600 Step 10
	If x < MaxY 'left edge
		Dist = Maxy-x
		y = Sqr(Maxy2-Dist*Dist)
	Else If x > (Point2.x-Point1.x)-Maxy 'right edge
		Local Dist:Float = (x-((Point2.x-Point1.x)-Maxy))
		y = Sqr(Maxy2-Dist*Dist)
	Else
		y = Maxy
	End If
	DrawOval x+Point1.x-5,y+300-5,10,10
Next
Flip
WaitKey()