Вот хочу написать физический движок.Как можно проверить столкновение с линией
program PhysicsEngine;
var
xPos,yPos,xPosBall,yPosBall,xMove,yMove,keyAction,tecla:integer;
Bsize,Psize:integer;
procedure init;
begin
xposball:=100;
yposball:=100;
yMove := 3;
xPos:=160;
psize:=32;
bsize:=15;
end;
begin
init;
repeat
tecla:=getkeypressed;
keyaction:= keyToAction(tecla);
if keyAction = GA_LEFT then xPos := xPos - 2;
if keyAction = GA_RIGHT then xPos := xPos + 2;
setColor(255, 255, 255);
fillRect(0, 0, getWidth, getHeight);
setColor(0, 0, 0);
drawEllipse(xPosball, yPosball,bsize,bsize);
drawEllipse(xPosball+20, yPosball,bsize,bsize);
xPosball := xPosball + xMove;
yPosball := yPosball + yMove;
delay(30);
setColor(0, 0, 0);
drawline(xpos,getHeight-10,xpos-100,getHeight-10);
repaint;
until tecla=KE_STAR;
end.