gpt4 book ai didi

libgdx - libgdx 中与中心点相关的两点之间的角度

转载 作者:行者123 更新时间:2023-12-02 08:26:11 26 4
gpt4 key购买 nike

我想要获取点 1 和点 2 之间相对于中心点的角度。如何使用 Vector2 执行此操作?

Vector2 center = new Vector2((float)Gdx.graphics.getWidth /2, (float)Gdx.graphics.getHeight /2);
Vector2 point1 = new Vector2(center.x, center.y + 200.0f);
Vector2 point2 = new Vector2(center.x + 200.0f, center.y);

应该是 90°,但是我如何得到它?

最佳答案

Vector2 center = new Vector2(500, 500);
Vector2 point1 = new Vector2(center.x, center.y + 200.0f);
Vector2 point2 = new Vector2(center.x + 200.0f, center.y);

point1.sub(center).nor();
point2.sub(center).nor();

float angle = (MathUtils.atan2(point1.y, point1.x) - MathUtils.atan2(point2.y, point2.x));
angle *= MathUtils.radiansToDegrees;
System.out.println(angle); // 90.0

角度计算可以在互联网上的任何地方查找。例如here .

它与我们在计算之前执行的一个附加步骤一起使用。我们需要将中心视为 (0, 0) 原点,通过从点中减去它,然后对它们进行归一化。

关于libgdx - libgdx 中与中心点相关的两点之间的角度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32438944/

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