Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Движение по синусоиде [D7, XP]


Pup ©   (2009-12-19 17:24:00) 

Здравствуйте! Очень хотелось бы узнать, как заставить треугольник (ну или просто точку) двигаться по синусоиде?


app   (2009-12-19 20:46:00) [1]


> Pup ©   (19.12.09 19:21) [8]
> "Аррр" это типа звук я такой издаю когда довольна 8)

А я когда недоволен


Омлет   (2009-12-19 20:03:00) [2]

Как всё интересно в этом мире.


Pup   (2009-12-19 19:21:00) [3]

"Аррр" это типа звук я такой издаю когда довольна 8)


Anatoly Podgoretsky   (2009-12-19 19:00:00) [4]

А кто то за тангенс посчитал?


:)   (2009-12-19 18:55:00) [5]

> Омлет ©   (19.12.09 18:39) [5]

app говорил отнюдь не о тангенсе, а о том, что движение по синусоиде ничем не отличается от движения по косинусоиде


Омлет   (2009-12-19 18:39:00) [6]

> Аррр спасибо =)

Почему-то именно Анатолию спасибо, хотя он сказал про тангенс.


Pup   (2009-12-19 18:29:00) [7]

Аррр спасибо =)


Омлет   (2009-12-19 18:04:00) [8]

> (Height div 9) - это просто длина "волны".

Вру. Это амплитуда.


Омлет   (2009-12-19 18:00:00) [9]

Простой код, который при нажатии на Button1 рисует синусоиду прямо на форме.
Как преобразовать для движения, надеюсь, разберешься. (Height div 9) - это просто длина "волны".

procedure TForm1.Button1Click(Sender: TObject);
var
 X, Y: Integer;
begin
 Canvas.MoveTo(0, 0);
 for X := 0 to Width do
 begin
   Y := Round(Sin(X*Pi/180)*(Height div 9)) + Height div 2;
   Canvas.LineTo(X, Y);
 end;
end;


Anatoly Podgoretsky   (2009-12-19 17:33:00) [10]

> Pup  (19.12.2009 17:24:00)  [0]

Sin(x)/Cos(X)


Наверх

Титульная страница Поиск, карта сайта Написать письмо