Сергей Борщ 124 28 мая, 2012 Опубликовано 28 мая, 2012 · Жалоба в строке: reportBuffer.dx = d = DIVIDE_BY_64(cosinus); происходит сразу 2 присваивания: переменным "reportBuffer.dx" и "d" присваивается значение DIVIDE_BY_64(cosinus). И в какой последовательности они присваиваются, знает только компилятор :), Неправильно. Порядок занесения значений очень даже четко определен. В этом выражении используются два выражения "оператор присваивания" и результат первого (d = DIVIDE_BY_64(cosinus)) является аргументом второго (reportBuffer.dx =). Причем то, что в результате этих выражений в d и reportBuffer.dx оказываются новые значения - всего лишь побочный эффект выражения "оператор присваивания". странно для чего присваивать 7 и сдвигать на 6 бит,если можно было сразу присвоить результирующее значениеПотому что тут используется арифметика с фиксированной точкой, значения имеют 6 битов после запятой. И в данном случае в переменную заносится число 7.0, что сразу видно из такой записи исходника. Если бы там было, как вы предлагаете, написано число 448 - то много народу сломало бы голову, пытаясь ответить на ваш вопрос "что за магическое число 448 тут стоит"? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ветерок 0 28 мая, 2012 Опубликовано 28 мая, 2012 (изменено) · Жалоба ну я то уже проанализировал и выдал ,как я это вижу. функция линейна-это я так вижу. Но на самом деле окружность рисуется! Буду рад если вы мне откроете глаза конечно-безмерно. вот как я это вижу: http://youtu.be/WH7LYUTf7m0 Изменено 28 мая, 2012 пользователем ветерок Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Сергей Борщ 124 28 мая, 2012 Опубликовано 28 мая, 2012 · Жалоба функция линейна-это я так вижу. Но на самом деле окружность рисуется! Дико извиняюсь, что нет времени посмотреть исходник. Но это, случаем, не реализация алгоритма Брезенхема для рисования окружностей? И вот с разъяснением: http://www.codenet.ru/progr/video/alg/alg4.php Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ветерок 0 28 мая, 2012 Опубликовано 28 мая, 2012 (изменено) · Жалоба Сергей Борщ что-то в этом есть.. Но у меня-то отсутствуют "ключевые пиксели" или их невидно из-за относительности координат перемещения курсора. записал видео с трассировкой маршрута ) http://youtu.be/u4gOIj9_7WI никак не могу сообразить как так получается... Изменено 28 мая, 2012 пользователем ветерок Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ReAl 0 28 мая, 2012 Опубликовано 28 мая, 2012 · Жалоба Но это, случаем, не реализация алгоритма Брезенхема для рисования окружностей?«Та не»™ CORDIC поворт вектора. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ветерок 0 28 мая, 2012 Опубликовано 28 мая, 2012 · Жалоба объясните на пальцах, в википедии нервы кончились. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ReAl 0 28 мая, 2012 Опубликовано 28 мая, 2012 · Жалоба Извините, конечно, но я сейчас Сергею отвечал. Первое сообщение этой темы видел минут через пять после его написания, задолго до первого ответа. Но сам Вам не отвечал, конверт уже заклеен был. ________________ Привет, Пятачок! Как живёшь? С приветом, Пух. p.s. Хотел послать тебе три рубля, но уже заклеил конверт. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Lebets_VI 0 28 мая, 2012 Опубликовано 28 мая, 2012 (изменено) · Жалоба объясните на пальцах, в википедии нервы кончились. 1. Квадрата (ромба) там нет. (есть вычисленные значение, но здесь приводить не буду т.к. полный цикл 365 строк, могу скинуть в личку) 2. Это скорее всего и есть алгоритм Брезенхейма, только адаптированный для окружности. 3. А самое главное, в HID report-е передаются не координаты, а смещения относительно предыдущего положения. По сути - Брезенхем :), только предыдущие координаты отрезка, драйвер HID уже знает :) Вот по этому и получается окружность. ЗЫ Хотя ReAl прав, на CORDIC больше похоже. Изменено 28 мая, 2012 пользователем Lebets_VI Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ветерок 0 28 мая, 2012 Опубликовано 28 мая, 2012 · Жалоба всем объявляю благодарность за отзывчивость я примерно понял,хочу отметить что это очень изящное решение. Не смотря на всё это свинство )) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться