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.
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()