Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.03.2009, 17:57   #1
2009
Пользователь
 
Регистрация: 01.03.2009
Сообщений: 31
По умолчанию график(Delphi)

Помогите построить график функции y=sin(x) на отрезке от –П/2 по П/2.
2009 вне форума Ответить с цитированием
Старый 19.03.2009, 18:58   #2
2009
Пользователь
 
Регистрация: 01.03.2009
Сообщений: 31
По умолчанию

Уже разобрался! Кому интересно вот код:

Код:
procedure grafik;
var 
x,y,x1,y1,x2,y2:real;
dx,Pi,mx,my:real;
l,b,w,h,x0,y0:integer;
function f(x:real):real;
begin
f:=sin(x);
end;
begin
l:=10;
b:=form1.clientheight-20;
h:=form1.clientheight-40;
w:=form1.clientwidth-40;
Pi:=3.14;
x1:=-Pi/2;
x2:=Pi/2;
dx:=0.01;
y1:=f(x1);
y2:=f(x2);
x:=x1;
repeat
y:=f(x);
if y<y1 then y1:=y;
if y>y2 then y2:=y;
x:=x+dx;
until (x>=x2);
my:=h/abs(y2-y1);
mx:=w/abs(x2-x1);
x0:=round(abs(x1)*mx);
y0:=b-abs(round(y1*my));
with form1.canvas do begin
moveto(x0,b);lineto(x0,b-h);
moveto(l,y0);lineto(x0+w,y0);
textout(l+5,b-h,floattostrf(y2,ffgeneral,6,3));
 textout(l+5,b,floattostrf(y1,ffgeneral,6,3));
x:=x1;
repeat
y:=f(x);
form1.canvas.pixels[x0+round(x*mx),y0-
round(y*my)]:=ck;
x:=x+dx;
until(x>=x2);
end;
end;
2009 вне форума Ответить с цитированием
Старый 20.03.2009, 15:27   #3
Sozialist
 
Регистрация: 19.03.2009
Сообщений: 6
По умолчанию

Хреново по части того, что много ненужного, таким методом не построишь график того же синуса от -pi до pi. Нужно просто выбрать шагаргумента, прибавлять к текущему и использовать функции moveto и lineto. Пишется в 4 строчки
Sozialist вне форума Ответить с цитированием
Старый 20.03.2009, 15:37   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Я бы использовал TChart. Он специально для такогопредназначен.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Delphi ->Excel->График по таблице->Delphi Avalonix БД в Delphi 2 30.10.2008 14:04
3D график в Delphi AVer Мультимедиа в Delphi 9 17.10.2008 07:04
График zzzzz Общие вопросы Delphi 1 16.10.2008 10:46
График Droid Общие вопросы Delphi 6 25.05.2008 23:40
График xsexrexga Общие вопросы Delphi 1 27.01.2007 21:26