| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > Помогите построить график функции |
| Автор: Fifa 12.12.2004, 14:11 |
| Люди добрые, помогите ,пожалуйста, программистке с маленьким мозгом написать прогу, которая бы рисовала график функции 3*x(SQR)+3*x+5. Заранее премного благодарна! |
| Автор: Fedor 12.12.2004, 14:28 | ||||
блондинка?
Может быть, имелось в виду 3*SQR(x)+3*x+5 Строишь по точкам с каким-то конкретным шагом. Что именно непонятно? |
| Автор: Ddddddelphi 12.12.2004, 16:34 |
| Fifa, загляни http://imi.sitc.ru/~pm02/2/21.htm |
| Автор: Pakshin A. S. 12.12.2004, 22:40 |
| А где программистка с маленьким мозгом хочет нарисовать график? |
| Автор: Vladimir13 13.12.2004, 02:20 |
| на Image по линиям рисуешь. А лучше найди в Архангельском. |
| Автор: sergejzr 13.12.2004, 02:31 |
| Бери шаг в пиксель, начинай с нуля. Ну, если совсем "с маленьким мозгом", то тогда возьми картинку с низу и перетащи на форму! Но дело конечно не в величине мозга, а в количестве извилин.. |
| Автор: Ddddddelphi 13.12.2004, 14:09 | ||
|
| Автор: Bes 14.12.2004, 11:00 |
| Простите, а что, компонент TChart нынче не в моде?.... :-) Рисуй что хочешь, как хочешь да еще и наворотов там встроенных море типа масштабирования и пр... |
| Автор: _hunter 14.12.2004, 12:19 |
| а он а моде никогда и небыл ибо это недостойно истинного программиста юзать левые компоненты на пустяковых задачах |
| Автор: Bes 14.12.2004, 14:46 |
| :-) Левые?.... Каждый раз изобретать велосипед?.... Нечем заняться?.... P.S. Кстати, если рисовать прямо на канве, то график будет затираться при наезжании на другие окна, свертывании и пр. т.е. его надо будет перерисовывать... но конечно можно не мучаться с TChart-ом, а запоминать все параметры графика и функции и выполнять процедуру отрисовки при каждом событии On..... флрмы. Это проще и интереснее. :-) |
| Автор: SoWa 14.12.2004, 14:58 |
| Ага, TChart- рульная вешь! Скоро на www.faraonsowa8.narod.ru выложу прогу для построенияграфиков любой функции... родолжение следует |
| Автор: _hunter 15.12.2004, 11:20 |
| скажем так... в детстве, когда велосипеды изобретать нужно ( для практики ), все ( наверное ) писали построители графиков ( я -- еще на паскале ) и позже переводили в классы. почему бы их не юзать? а преимуществ у TChart' a -- ноль ( даже тормознутее ) а прилепить к классу пару/тройку обработчиков -- не проблема |
| Автор: Bes 15.12.2004, 12:00 |
| 2hunter: Согласен, я тоже когда еще в BP писал - тоже делал построители графиков, но когда я увидел TChart - навсегда заыл об этом. Не знаю, уважаемый, о чем вы говорите, может у вас там свой Chart, но я не понимаю что значит преимуществ 0 и тормознутее... ? Я его пользую давно, строю графики далеко не х=у*у разных типов и пр. и никаких проблем. |
| Автор: Ddddddelphi 15.12.2004, 14:45 |
| [/b]Bes[b], а ты не мог бы скинуть исходник, любой проги, подучиться чтобы |
| Автор: Bes 15.12.2004, 14:57 |
| 2Ddddddelphi: Это проверка на вшивость что ли? :-) В чарте или на канве или в TB турбо паскаля давно накомпе не имею - так что если надо в нем топридется подождать... ну и есть плохая привычка не хранить исходники так что писать буду заново. Как писать? |
| Автор: Ddddddelphi 15.12.2004, 19:03 | ||
да не, Bes, чего ты собрался там писать? |
| Автор: Bes 16.12.2004, 13:47 |
| Не... ну надо, нет? без проблем. :-) смотрите сами как гриться.... |
| Автор: Ddddddelphi 16.12.2004, 14:30 |
| Bes, да не люблю я утруждать людей по вопросам, с которыми я в задачах ещё не сталкивался, а если тебе без проблем, то хотелось бы взглянуть на такой график функции который вырисовывается во всех четвертях. |
| Автор: Bes 16.12.2004, 14:54 |
| Мля, график-то я сделал, а как его в сообщение запихнуть. :-( |
| Автор: Ddddddelphi 17.12.2004, 20:22 |
| и что график прям вырисовывается во всем четвертях...и почему не помещается код чего там фантастического можно было написать... |
| Автор: Bes 20.12.2004, 07:26 |
| А... да нет, я думал тебе надо сам график - я и не знал как отскриненую картинку в форум вставить дак я ее тебе на почту выслал а код простой щас накидаю. Var x,y,p:real; begin Series1.AddArrow(-1,0,0,1,'',clred); Series1.AddArrow(0,1,1,0,'',clred); Series1.AddArrow(1,0,0,-1,'',clred); Series1.AddArrow(0,-1,-1,0,'',clred); Series2.X0:=-0.1; Series2.Y0:=0.1; Series2.X1:=0.1; Series2.Y1:=-0.1; p:=0; Repeat p:=p+pi/100; x:=cos(p)/5; y:=sin(p)/5; Series3.AddXY(x,y,'',clBlack); Until p>=2*pi; Вот, всяко разно во всех четвертях и как вы предлагали точками и линиями и еще одним способом. P.S. Картинка несколько отличается от приведенного примера, т.к. я вая сейчас заново - не сохранял первый пример. :-) |