gpt4 book ai didi

java - 如何在 0 到 360 度之间均匀随机旋转 Vector2?

转载 作者:行者123 更新时间:2023-11-30 09:46:08 24 4
gpt4 key购买 nike

我有一个Vector2:

Vector2 v = new Vector2(1,0);

我怎样才能随机旋转这个 vector (大约(0,0)),并在 [0,360) 度范围内均匀分布?

最佳答案

逆时针随机旋转 vector v:

Vector2 v = new Vector2( 1,0 );

Random rnd = new Random();
double rotationAngle = 2.0 * Math.PI * rnd.nextDouble();

Vector2 vRotated = new Vector2(
(v.x)*Math.cos(rotationAngle) + (v.y)*Math.sin(rotationAngle),
(v.y)*Math.cos(rotationAngle) - (v.x)*Math.sin(rotationAngle)
);

变换数学来自here

关于java - 如何在 0 到 360 度之间均匀随机旋转 Vector2?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7274005/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com