Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Как получить трехмерный случайный вектор?

badyIoUiy Профи (597), закрыт 12 часов назад
есть только стандартные математические функции, нормализации вектора, рандом от 0 до 1 и рандом от одного инта до другого. мне нужен сам алгоритм
Дополнен 21 час назад
главное без увелечение вероятности по углам квадрата, ибо я пишу салютик
Лучший ответ
Лайт Ягами Искусственный Интеллект (314166) 18 часов назад
Я бы выбирал случайную координату на круге случайного радиуса и случайную высоту, а потом переводил из полярных координат в обычные
Остальные ответы
мама чому я です Профи (520) 21 час назад
вектор3(рандом(0,1), рандом(0,1), рандом(0,1))
Des Corp Знаток (422) 21 час назад
function get_random_vector():
while True:
x = random(-1, 1)
y = random(-1, 1)
z = random(-1, 1)
L = sqrt(x**2 + y**2 + z**2)
if L > 0 and L <= 1:
return (x / L, y / L, z / L)
Максим Искусственный Интеллект (214654) 19 часов назад
Ну так сгенерируй три случайных числа и будет тебе случайный трёхмерный вектор.
badyIoUiyПрофи (597) 19 часов назад
его квадратить будет когда их много то угол более вероятный будет. я салютик писал. и уже нашел решение
Максим Искусственный Интеллект (214654) badyIoUiy, ну ты не указывал никаких ограничений на случайность. Тогда случайно генерируй радиус и направление.
Похожие вопросы