Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2009.02.08;
Скачать: [xml.tar.bz2];

Вниз

простая задачка на геометрию   Найти похожие ветки 

 
nonamez11 ©   (2008-12-22 16:16) [0]

блин тупорылый вопрос но не знаю чо делать(((
надо чтоб по форме летал кружок,и летал по окружности(
я накидал код а он работает не правильно,двигается по окружности но с большими перерывами не плавно((
не знаю в чем проблема.
может кто подскажет?очень надо

procedure TForm7.Timer1Timer(Sender: TObject);

begin
radius:=80;
a:=a+1;
if a>=360 then a:=0;
begin
if (x>0)and(y>=0) then
  begin
   x:=x+round(radius*cos(RadtoDeg(a)));
  y:=y+round(radius*sin(Radtodeg(a)));
  edit1.Text:=inttostr(x)+" "+inttostr(y)+" "+inttostr(a);
  edit2.Text:=floattostr(cos(a));
  end
 else
  begin
   x:=round(ClientWidth/2);
   y:=round(ClientHeight/2);
  end;
 x1:=x+25;
 y1:=y+25;

 Canvas.BrushCopy(MyRect, Bitm, MyRect, clBlack);
 Canvas.Ellipse(x-25,y-25,x1,y1);
 
 MyRect := Rect(x-25,y-25,x1,y1); //

end;
end;


 
Сергей М. ©   (2008-12-22 16:30) [1]


> cos(RadtoDeg(a))


> Sin(Radtodeg(a))


Эти триг.функции требуют параметром угол в радианах, а ты им в градусах пытаешься подсунуть, к тому же в то время как в переменной A у тебя хранится угол в градусах


 
Правильный$Вася   (2008-12-22 16:31) [2]

Application.ProcessMessages


 
nonamez11 ©   (2008-12-22 16:31) [3]

да если изменить не моможет,эт я чо то с калькулятором сравнивал


 
Сергей М. ©   (2008-12-22 16:32) [4]


> Application.ProcessMessages
>


Ни к селу ни к городу оно тут - циклов-то в таймерном обработчике нет


 
Сергей М. ©   (2008-12-22 16:34) [5]


> я чо то с калькулятором сравнивал


Я не знаю,  "чо" ты с "калькулятором сравнивал", но лажа с преобразованием налицо


 
nonamez11 ©   (2008-12-22 16:36) [6]

ну если убрать Radtodeg проблема остается скажем так


 
Сергей М. ©   (2008-12-22 16:38) [7]

Ну если убрать, тогда и число 360 тут ни к селу ни к городу


 
nonamez11 ©   (2008-12-22 16:44) [8]

и что же делать?


 
Сергей М. ©   (2008-12-22 16:49) [9]

Ну очевидно же - если в А у тебя угол в градусах, то его следует преобразовать в радианы для вычисления синуса с косинусом)


 
nonamez11 ©   (2008-12-22 16:58) [10]

Точна!)я был недалек от разгадки)))спасибо)))



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2009.02.08;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.007 c
15-1228389664
ANB
2008-12-04 14:21
2009.02.08
Кризис добрался до меня


2-1230111093
slava
2008-12-24 12:31
2009.02.08
TWebBrowser + HTML в ресурсах + img на диске


15-1228978208
stas
2008-12-11 09:50
2009.02.08
Системы распознавания голоса


15-1228950052
DDR2
2008-12-11 02:00
2009.02.08
Не работает память...


15-1229164615
koha!
2008-12-13 13:36
2009.02.08
Обновил MSGLoger.exe





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский