은 (픽셀!) 글로벌 화면 위치를 얻으려면 내가 topLeft.y
에 대한 땐 내가 갖는 이중 값 것으로 나타났습니다 DisplayObject::localToGlobal
포인트를 픽셀 좌표로 변환하려면 어떻게해야합니까?
var o: DisplayObject = ...;
var topLeft: Point = o.localToGlobal(new Point(0, 0));
같은 일부
DisplayObject
의 나는 약간의 기대에도 불구하고 전화 드렸습니다 정수 값. 몇 가지 스케일링이나 좌표계가 고려해야합니까?
좋아, 그렇다면 * I 픽셀 값의 서브 화소 값을 변환 * 않음 - scaleX가/scaleY를 것만으로 승산하고 '부분적'고려 (다음 정수 값으로 올림 덮여 픽셀은 완전히 덮여)? 내가 직접해야만하는 것은 의심 스럽다 ... 나를 위해 이것을 행할 변형 행렬이 있어야한다는 느낌을 떨칠 수 없다. –
디스플레이 목록에서 객체를 사용할 때'x' /'y' /'width' /'height'를 정수로 변환하지 않아도됩니다. 플래시 플레이어는 서브 픽셀 (트윕?)을 잘 처리합니다. int가 필요하면 반올림을 제어해야한다면 int (가장 빠름)로 캐스팅하거나 '수학'함수 (round/floor/ceil)를 사용하십시오. –
문제는 이러한 좌표가 다른 프로세스 (소켓을 통해 데이터를받는)가 사용한다는 것입니다. 즉, 다른 프로세스가 전역 좌표를 픽셀로받을 것으로 예상합니다. 그래서 불행히도 나는 이것을 스스로해야만한다. : -/ –