![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
flait |
![]()
Сообщение
#1
|
Новичок ![]() Группа: Продвинутые Сообщений: 4 Регистрация: 15.10.2007 Город: Москва Вы: студент ![]() |
если кто знает, помогите или знает где найти:
Изобразить кривую R = a*cos(φ) + L. Построение выполнить для a>L. Обеспечить вращение изображения в плоскости экрана вокруг центра по часовой стрелке с одновременным перемещением по средней вертикали сверху вниз. По достижении нижнего края экрана, появляются аналогичные изображения в левом и правом нижних углах и перемещаются вверх до исчезновения с экрана. Просто я реально не знаю как это сделать |
flait |
![]()
Сообщение
#2
|
Новичок ![]() Группа: Продвинутые Сообщений: 4 Регистрация: 15.10.2007 Город: Москва Вы: студент ![]() |
Ребяты, помогите пожалуйста, очень нада
|
creer |
![]()
Сообщение
#3
|
Студент ![]() ![]() Группа: Продвинутые Сообщений: 121 Регистрация: 28.10.2007 Город: Екатеринбург Учебное заведение: УГТУ-УПИ Вы: студент ![]() |
Вот основа:
Код Program Project1; Uses Graph; procedure InitGr; var gd, gm: SmallInt; begin gd:=0; gm:=0; InitGraph(gd, gm, ''); end; function f(a,phi,L:real):real; begin Result:=a*cos(phi)+L; end; procedure Draw(x,y:integer;ang:real); //Угол в градусах const countpixels = 360; expand = 100; var a,phi,L:real; i:integer; begin //x=r*cos(phi); //y=r*sin(phi); a:=2; L:=1; SetColor(15); phi:=0; MoveTo(round(f(a,phi,L)*cos(phi+2*pi/360*ang)*expand)+x,round(f(a,phi,L)*sin(phi+2*pi/360*ang)*expand+y)); for i:=1 to countpixels do begin phi:=2*pi/countpixels*i; LineTo(round(f(a,phi,L)*cos(phi+2*pi/360*ang)*expand)+x,round(f(a,phi,L)*sin(phi+2*pi/360*ang)*expand+y)); end; end; begin InitGr; Draw(100,200,50); CloseGraph; end. Draw(100,200,50); - рисует кривую с началом координат в точке (100;200) и поворотом на 50 градусов по часовой стрелке. |
Julia |
![]()
Сообщение
#4
|
Ассистент ![]() ![]() ![]() ![]() Группа: Julia Сообщений: 593 Регистрация: 23.2.2007 Город: Улан-Удэ Учебное заведение: БГУ Вы: преподаватель ![]() |
2creer: мы всегда рады новым помощникам, но не всегда стоит полностью выкладывать готовое решение.
|
creer |
![]()
Сообщение
#5
|
Студент ![]() ![]() Группа: Продвинутые Сообщений: 121 Регистрация: 28.10.2007 Город: Екатеринбург Учебное заведение: УГТУ-УПИ Вы: студент ![]() |
Julia, если я правильно понял задание, решение далеко не полное, необходимо еще обеспечить перемещение (с учетом двойной прорисовки данной фигуры при частичном выходе за края графической области) и вращение фигуры по экрану в динамике. Для этого придется слегка изменить процедуру рисования и добавить реакцию на клавиши или сдвигать фигуру по таймеру.
Если бы проект "Решебник.Ру" занимался решением задач по информатике, я бы не стал приводить этот код. |
flait |
![]()
Сообщение
#6
|
Новичок ![]() Группа: Продвинутые Сообщений: 4 Регистрация: 15.10.2007 Город: Москва Вы: студент ![]() |
Ребяты, а вы это в дельфях писали???
|
creer |
![]()
Сообщение
#7
|
Студент ![]() ![]() Группа: Продвинутые Сообщений: 121 Регистрация: 28.10.2007 Город: Екатеринбург Учебное заведение: УГТУ-УПИ Вы: студент ![]() |
Нет, это обычный паскаль.
|
flait |
![]()
Сообщение
#8
|
Новичок ![]() Группа: Продвинутые Сообщений: 4 Регистрация: 15.10.2007 Город: Москва Вы: студент ![]() |
SmallInt - пишет как неизвестный индитификатор
|
creer |
![]()
Сообщение
#9
|
Студент ![]() ![]() Группа: Продвинутые Сообщений: 121 Регистрация: 28.10.2007 Город: Екатеринбург Учебное заведение: УГТУ-УПИ Вы: студент ![]() |
Замени на "integer". Fpc не откомпилировал с integer'ом.
Посмотри как работать с графикой в Паскале, думаю пригодится :-). |
RisingForceOnline |
![]()
Сообщение
#10
|
Школьник ![]() Группа: Продвинутые Сообщений: 14 Регистрация: 5.11.2007 Город: Moscow Учебное заведение: liceum####of MGTU n/m N.E.Baumana Вы: школьник ![]() |
Sirs!, what it is necessary to make that GRAPH to start? Then i write "var graph;"pascal say to me "file not found: GRAPH.TPU"
I have this file in folder "units".What happened?Help me,please=)) not "var", sorry I Write "units GRAPH;",)xD |
creer |
![]()
Сообщение
#11
|
Студент ![]() ![]() Группа: Продвинутые Сообщений: 121 Регистрация: 28.10.2007 Город: Екатеринбург Учебное заведение: УГТУ-УПИ Вы: студент ![]() |
You must write "uses graph;" :-)
In Borland Pascal help wrote "To compile a program that uses the Graph unit, you don't need any external files. (Of course, you'll need your program's source code, the compiler, and access to the standard units in TURBO.TPL)." May be, you need "turbo.tpl" file. |
RisingForceOnline |
![]()
Сообщение
#12
|
Школьник ![]() Группа: Продвинутые Сообщений: 14 Регистрация: 5.11.2007 Город: Moscow Учебное заведение: liceum####of MGTU n/m N.E.Baumana Вы: школьник ![]() |
ладно,давай по-русски))
я и пишу uses GRAPH; эт я там опечатался,переиграл сегодня в рф))) Мне паскаль пишет, что не найден GRAPH.TPU!,но он есть у мну в папке юнитс, и че он работает??? и откуда взять этот турбо? |
creer |
![]()
Сообщение
#13
|
Студент ![]() ![]() Группа: Продвинутые Сообщений: 121 Регистрация: 28.10.2007 Город: Екатеринбург Учебное заведение: УГТУ-УПИ Вы: студент ![]() |
Я и на русском умею :-)
turbo.tpl у меня лежит в \BP\BIN :-) |
![]() ![]() |
![]() |
Текстовая версия | Сейчас: 25.5.2025, 19:31 |
Зеркало сайта Решебник.Ру - reshebnik.org.ru