class Camera { Config conf; Camera() { conf = new Config(); } void change(float gridWidth, float gridHeight, float ratio) { float cameraX = ratio * gridWidth / 2 + gridWidth * sin(radians((mouseX - (this.conf.winWidth / 2)) / 4)); float cameraY = ratio * gridHeight / 2 + gridHeight * sin(radians((mouseY - (this.conf.winHeight / 2)) / 4)); float cameraZ = 40 + this.conf.winWidth * 0.6 * cos(radians((mouseX - (this.conf.winWidth / 2)) / 4)); camera(cameraX, cameraY, cameraZ, ratio * gridWidth / 2, ratio * gridHeight / 2, 0.0, 0.0, 1.0, 0.0); } }