以下是處理草圖。座標之間的距離 - 角度> 180(Processing/Java)
死點座標爲0,0。
這意味着最左邊的x座標爲-250,最右邊的x座標爲250。
我想在屏幕中心移動鼠標,並在半徑上出現相對座標(即座標45,0處的鼠標應將標記點標記爲90,0)。
下面的代碼工作,但只適用於屏幕的右側,簡而言之,角度高達180.什麼是缺少這個工作在右側?
void draw(){
background(0);
fill(255);
stroke(255);
strokeWeight(5);
translate(width/2,height/2);
// mark center
point(0,0);
strokeWeight(12);
// mark mouse position (follow with point)
float x = mouseX - width/2;
float y = mouseY - height/2;
point(x,y);
// trace point on radius of circle same radius as width
float radius = width/2;
float sinAng = y/radius;
float cosAng = x/radius;
float m = sinAng/cosAng;
float angle = atan(m);
float boundaryX = cos(angle)*width/2;
float boundaryY = sin(angle)*height/2;
stroke(255,0,0);
point(boundaryX,boundaryY);
}
請澄清_「鼠標在座標45,0應標記點在90,0」_和您的意思是「不起作用」在畫布的左側。 –