如何围绕另一个点旋转一个点

我正在写一个游戏。 我需要知道如何将点b绕点b旋转给定的度数。 我在java中写这个,它将成为我的class级的一部分,Point。

double x1 = point.x - center.x; double y1 = point.y - center.y; double x2 = x1 * Math.cos(angle) - y1 * Math.sin(angle)); double y2 = x1 * Math.sin(angle) + y1 * Math.cos(angle)); point.x = x2 + center.x; point.y = y2 + center.y; 

该方法使用旋转矩阵。 “点”是你的观点,“中心”是你的观点b。