#java #math #geometry
#java #математика #геометрия
Вопрос:
Для решения задачи мы должны изобразить n равноудаленных точек по окружности. Я не знал, как это сделать, поэтому я искал и нашел решение, но я не знаю, почему оно работает. Вот уравнения, которые я использовал для каждой точки.
StdDraw.point(Math.cos((i * 2 * Math.PI) / n) 1, Math.sin((i * 2 * Math.PI) / n) 1);
Это было помещено в цикл for , поэтому «i» — это числовая точка, а «n» — это количество точек, которые необходимо отобразить на графике. Я добавил 1 в конце, чтобы перевести его так, чтобы оно помещалось внутри холста.
Кто-нибудь знает, почему это работает?
Комментарии:
1. По математике. Поиск определения синуса / косинуса на единичной окружности.
2. Посмотрите раздел под названием «Тригонометрические функции на единичном круге» на странице Wiki для единичного круга . Там есть красивый анимированный GIF, показывающий угол в радианах, соответствующий точке на окружности, с помощью Sin() и Cos() .
i
Иn
используются для получения процента от 2 * PI, который затем передается в Sin() и Cos() .3. вы можете думать об этом как о корне уравнения
z^n = 1
, где z — комплексное число. Смотрите mathonline. wikidot.com/nth-roots-of-complex-numbers4. Нарисуйте эскиз и посмотрите на него.
Ответ №1:
Выходные кривые синуса и косинуса моделируют все точки вдоль окружности круга, и они делают это, получая все возможные углы, которые существуют внутри круга, т.е. 2 пи, если вы используете радианы. Теперь, если вы подаете 2 pi * (i / n) в синус и косинус, что дает каждой соответствующей функции n углов между 0 и 2 * pi, и каждый вывод, который каждый выдает, тогда равноудален, потому что вы подали в равноудаленных углах, поэтому вы получите равноудаленные точки, которые попадают на концыте углы, которые вы ввели.
Посмотрите на gif синуса и косинуса по окружности, тогда график синуса и косинуса и многое другое будет иметь смысл.