Короче пишу 3d движок.Вот версия с кометами...В чём проблема а проблема в даже не в 3D а в 2D что меня воще выводит. короче если линия сильно выходит за одну сторону экрана телефон автоматом выведит её с другой стороны...Чтобы это устранить я придумал вот это
if ((x>camera.h) or (x<0) or (x1>camera.h) or (x1<0)) and(x-x1<>0) then
begin
xf:=x;
yf:=y;
x1f:=x1;
y1f:=y1;
a:=(yf-y1f)/(xf-x1f);
b:=y1f-x1f*a;
if x<0 then begin y:=trunc(b); x:=0; end else
if x>camera.h then begin y:=trunc(camera.h*a+b); x:=camera.h; end;
if x1>camera.h then begin y1:=trunc(camera.h*a+b); x1:=camera.h; end else
if x1<0 then begin y1:=trunc(b);x1:=0; end;
end;
if ((y>camera.w) or (y<0) or (y1>camera.w) or (y1<0)) and (y-y1<>0) then
begin
xf:=y;
yf:=x;
x1f:=y1;
y1f:=x1;
a:=(yf-y1f)/(xf-x1f);
b:=y1f-x1f*a;
if y<0 then begin x:=trunc(b); y:=0; end else
if y>camera.w then begin x:=trunc(camera.w*a+b); y:=camera.w; end;
if y1>camera.w then begin x1:=trunc(camera.w*a+b); y1:=camera.w; end else
if y1<0 then begin x1:=trunc(b);y1:=0; end;
end;
но это не работает я уже заколебался а закрывать проэт не хочу... короче задача проста есть две 2D точки образующии отрезок надо чтобы эти отрезки отсекались краями экрана и получались новые 2D точки. короче помогите кому не сложно.заодно движок потестите,после того как эту проблему устраню оптимизирую его он сейчас нормально конечно работает но может раза 2-3 быстрее.
Зарание спасибо.