|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
13.11.2011, 22:16 | #1 |
Новичок
Джуниор
Регистрация: 13.11.2011
Сообщений: 1
|
Графика в С++
Здравствуйте)Помогите,пожалуйста переписать прогу с Builder С++ в Turbo C++ и внести небольшие изменения:нужно оцифровать оси координат,график должен занимать почти всю полезную площадь экрана.и диапазон параметра x должен вводиться пользователем.заранее спасибо)
void__fastoall TForml::FormPaint(TObject *Sender) { Grafik(); } void __fastcall TForml::FormResize(TObject *Sender) { TRect ret = Rect(0,0,Ciientwidth,CiientHeight); Canvas->FillRect(ret); } #include "math.h" float f(float х) { return 2*sin(x)*exp(x/5); } void TForml::Grafik() { float xl, x2; float yl, y2; float у; float dx; int 1, Ь; int w, h; float mx, my; int xO, уО; 1-10; b = Forml->ClientHeight-20; h = Forml->ClientHeight-40; w = Forml->Wldth - 20; xl = 0; х2 = 25; x = xl; yl = f(х); у2 = f(x); do { у = f(х); if ( у < yl) yl = у; if ( у > у2) у2 = у; х += dx; } while (x <= х2); my = (float)h/abs(y2-yl); mx = w/abs(x2-xl); хО = 1+abs(xl*mx); уО = b-abs(yl*my); Canvas->MoveTo(xO,b);Canvas->LineTo(xO,b-h); Canvas->MoveTo(l,yO);Canvas->LineTo(1+w,yO); Canvas->TextOutA(xO+5,b-h,FloatToStrF(y2,ffGeneral,6,3)); Canvas->TextOutA(xO+5,b,FloatToStrF(yl,ffG eneral, 6,3)); do { У = f (x); Canvas->Pixels[xO+x*mx][yO-y*my] = clRed; x += dx; } while (x <= x2); } |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
3d графика | 555shiro | WPF, UWP, WinRT, XAML | 1 | 17.03.2011 22:44 |
графика | загадочная | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 23.07.2010 11:21 |
Графика в С# | onded | Общие вопросы .NET | 2 | 10.12.2009 13:56 |
графика | MariyaVo | Помощь студентам | 3 | 06.04.2009 19:37 |
Графика в си | Scate | Помощь студентам | 6 | 25.11.2008 23:31 |