我没有使用lwjgl的经验。
但是,对我来说,这似乎是一个数学问题。因此,如果您知道“轨迹”的距离和角度,您可以将极坐标(距离、角度)转换为笛卡尔坐标(x、y)。
转换很简单:
x = distance * cos(angle)
和
y = distance * sin(angle)
. 然后,您只需添加起始坐标的 x 和 y。
我建议使用处理示例来了解 lwjgl 中的解决方案。
作为处理的开始,您可以使用以下代码段:
//start coordinates
float startx;
float starty;
//radius
float r;
//angle
float theta;
void setup() {
size(640, 360);
background(0);
// Initialize all values
startx = width/2;
starty = height/2;
r = random(startx);
theta = -0.5;
}
void draw() {
// Translate the origin point to the center of the screen
translate(startx, starty);
// Convert polar to cartesian
float x = r * cos(theta);
float y = r * sin(theta);
// Draw the ellipse at the cartesian coordinate
ellipseMode(CENTER);
fill(200);
ellipse(x, y, 12, 12);
color c = #FFCC00;
stroke(c);
line(0,0,x,y);
}