![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Добрый вечер! Люди помогите! нужно в chart построить график функции заданной так: x=-3*const*r-10*r*r*r , y=1.5*const*r*r-9*r*r*r*r где const это переменная, которая задается пользователем.
Последний раз редактировалось fess_d, 08.06.2010 в 22:17. |
#2
|
|||
|
|||
![]() Э-э-э... это 3D график получается. По моему, его нельзя в TChart построить.
|
#3
|
|||
|
|||
![]() Кордината x счиается по формуле и y по формуле, а как выразить у через х я не знаю
Последний раз редактировалось fess_d, 09.06.2010 в 05:05. |
#4
|
||||
|
||||
![]() Вчера токо писал прогу для суммирования графиков, вот откорректировал чучуть, вроде то что надо:
Код:
var Bmp: TBitmap; procedure TForm1.FormActivate(Sender: TObject); begin Bmp:= TBitmap.Create; Bmp.PixelFormat:= pf24bit; Bmp.Canvas.Brush.Color:= clBlack; Bmp.Width:= Image1.Width; Bmp.Height:= Image1.Height; end; procedure TForm1.Button1Click(Sender: TObject); Var Costanta: Extended; X,Y: Integer; i: Extended; begin Bmp.Canvas.Rectangle(-1,-1,Image1.Width+1,Image1.Height+1); Costanta:= StrToFloat(Edit1.Text); Bmp.Canvas.Pen.Color:= clWhite; Bmp.Canvas.MoveTo(Image1.Width div 2,0); Bmp.Canvas.LineTo(Image1.Width div 2,Image1.Height); Bmp.Canvas.MoveTo(0,Image1.Height div 2); Bmp.Canvas.LineTo(Image1.Width,Image1.Height div 2); i:= -1*(Image1.Width div 2); While i < (Image1.Width div 2) Do begin X:= Round(-3*Costanta*i-10*i*i*i); Y:= Round(1.5*Costanta*i*i-9*i*i*i*i); i:= i + 0.001; Bmp.Canvas.Pixels[(Image1.Width div 2)-X,(Image1.Height div 2)-Y]:= clRed; end; Image1.Canvas.Draw(0,0, Bmp); end; procedure TForm1.FormDestroy(Sender: TObject); begin Bmp.Free; end; Последний раз редактировалось AND_REY, 09.06.2010 в 08:26. |
#5
|
|||
|
|||
![]() Спасибо большое! Только при i>=0 должна быть парабола, а при i<0 петля направленная вниз
|
#6
|
|||
|
|||
![]() А нет что то я попутал, ветви просто должны быть вверх направлены и все. А как нарисовать систему координат и не округлять х и у?
Последний раз редактировалось fess_d, 09.06.2010 в 11:16. |
#7
|
||||
|
||||
![]() При Const = 100 ветви вверх а при Const = -10 ветви вниз + они пересикаются. Координаты надо округлять для рисования графика т.к точечный рисунок состоит из целых точек
![]() Можеш поиграть с масштабом, может просто не та часть рисуеться. |
#8
|
|||
|
|||
![]() А как оси с разметкой задать?
|