오늘은 간단한 캔버스 작업을 시도하면서 많은 시간을 보냈지만 (나는 꽤 오랫동안 연주하지 못했지만) 선은 올바른 위치로 그리지 않았습니다. 자바 스크립트 및/또는 Canvas라는 것이 내 수학이 아니라 엉망인 것으로 밝혀졌습니다. 2 차원 캔버스 상황을 감안할 때, 다음왜 moveTo (0, 0); lineTo (X, X); 45도 선 그리시겠습니까?
context.moveTo(0, 0);
context.lineTo(50, 50);
context.stroke();
가 ... 예상대로 30 ° 정도가 아니라 45 ° 것으로 보인다 선을 그립니다. Here's a jsFiddle.
캔버스/컨텍스트가 정사각형이 아닌 픽셀을 사용하는 경우에만 이것이 의미가 있습니다. 실제로 그런 경우입니까? 누구의 밝은 아이디어가 될 수 있겠습니까? 캔버스에 사각형 픽셀을 사용하도록하여 수학을보다 쉽게 만들 수있는 방법이 있습니까?
'45도 각도로 그리지 않음'으로 '직각을 그리지 않음'으로 변경하십시오. 이등변은 또한 그것이 당신이 생각한다고 생각하는 것을 의미하지는 않습니다. 왜 그것이 분명히 [나쁘게 행동하는] (http://jsfiddle.net/t6HaC/10/)인지 모르겠지만, 미안합니다. –
충분합니다. 지오메트리 클래스가 생겨서 꽤 오랜 시간이 걸렸습니다. –