Авторизация

Логин: Пароль:
Регистрация Забыли свой пароль?

Рисование изолиний

Страницы: 1
Рисование изолиний
Добрый вечер!
Уважаемые эксперты, не подскажете, как на Паскале реализовать алгоритм рисования изолиний (линий уровня) и траектории спуска в точку экстремума для квадратичной функции двух переменных? Вернее, траекторию спуска я себе представляю, как нарисовать, а вот с линиями уровня проблема.
c:\linux\bin
c:\linux\etc\X11\xorg.conf
d:\home\user
Страшный сон линуксоида.
А картинку прикрепи чего тебе нужно нарисовать.
Вобщем в итоге получатся замкнутые кривые линии) А вот как это нарисовать, Можно пройтись двойным вложенным циклом по всем координатам х у с каким-то шагом сетки, и если функция в этих координатах равна какому-то значению, ставить точку. А вот как их соединять потом...
Изменено: rozpants - 21.10.2010 08:35:04
Вот че у меня получаеться.
uses graph;
const zoom = 100;
var x,y,w : Real;
grDriver : Integer;
grMode : Integer;
I,J : Integer;
Color : Byte;
function f(x,y : real):real;
begin
f:=4*x*x+4*x*y+6*y*y-17*x;
end;
begin
w := 1/zoom;
grDriver := Detect;
InitGraph(grDriver,grMode,'c:\tp\bg i\');
For I := 0 To GetMaxX Do
Begin
For J := 0 To GetMaxY Do
Begin
X := (GetMaxX/2-I)/zoom;
Y := (GetMaxY/2-J)/zoom;
Color := Round(f(x,y));
If ((X > -w) And (X < w))
Or ((Y > -w) And (Y < w))
Then Color := 0;
PutPixel(I, J, Color);
End;
End;
readln;
CloseGraph;
end.
c:\linux\bin
c:\linux\etc\X11\xorg.conf
d:\home\user
Страшный сон линуксоида.
Страницы: 1
Читают тему (гостей: 1, пользователей: 0, из них скрытых: 0)