|
Вопрос # 2 494/ вопрос открыт / |
|
Здравствуйте уважаемые эксперты! Пытался сделать нечто похожее на индикатор радиолокационной станции (радара), там луч движется по кругу 0 - 360 градусов, алгоритм примерно такой как в вопросе 2 487. Трудность заключается в том, что при при относительно небольшом радиусе и высокой скорости вращения на крайних точках окружности движение не равномерное (ускоряется) так как рисуется линия от центра к точке на окружности и координата по вертикали (y) является функцией координаты по горизонтали y=f(x). Подскажите как сделать так чтобы луч двигался равномерно, то есть положение линии было функцией от угла между линией и началом отсчета. Я к сожалению не смог найти в справочной литературе подобный метод. Заранее благодарен. НикС.
 |
Вопрос задал: НикС (статус: Посетитель)
Вопрос отправлен: 8 марта 2009, 15:46
Состояние вопроса: открыт, ответов: 0.
|
Мини-форум вопроса
Всего сообщений: 4; последнее сообщение — 8 марта 2009, 18:10; участников в обсуждении: 3.
|
min@y™ (статус: Доктор наук), 8 марта 2009, 16:05 [#1]:
Функция от угла - это ж синус или косинус. Не понимаю проблемы.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
|
Dron (статус: Студент), 8 марта 2009, 16:05 [#2]:
А выводите радар с помощью какого компонента?
С уважением.
|
|
Dron (статус: Студент), 8 марта 2009, 16:07 [#3]:
Действительно, если угол равномерно меняется от 0 до 360, то луч длиной A будет иметь координаты:
x = x0 + A*Cos(угол);
y = y0 + A*Sin(угол);
(x0; y0) - центр.
С уважением.
|
|
Вадим К (статус: Академик), 8 марта 2009, 18:10 [#4]:
А как меняете угол, не в таймере случайно? Если так и таймер выставлен на значение меньше 52, то неравномерность гарантирована. Ведь значение таймера, это не время, через которое он "тикнет", а время через которое он попробует тикнуть. То есть, тикнуть он может и гораздо позже.
А во вторых, видимая неравномерность может быть оптическим обманом. Ведь как не улучшать "равномерность", движение всё равно будет дискретным.
Галочка "подтверждения прочтения" - вселенское зло.
|
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|