2011-10-11 2 views
1

하지만 난에서 다른 값을 얻고있다 :액션 스크립트 비트 맵를 transform.matrix 그릴과 rectangle.bounds 내가 객체에서 부분적인 비트 맵을 얻기 위해 노력하고

object.transform.matrix.tx and object.transform.matrix.ty 

V/s의

object.getBounds(object.parent).x and object.getBounds(object.parent).y 

bitmapdata.draw(object, <matrix>); 

이 마트의 A, B, C, D, 구성 요소를 추가하려면 : 나는이의 BitmapData을 그리는 동안 사용해야하는 것을 확실하지 않다 x는 1,0,0,1 (또는 identity)입니다. 그래서 누군가가 시나리오가 matrix.tx와 matrix.ty가 bounds 좌표와 다른 점을 설명 할 수 있습니까?

답변

1

object.transform.matrix.tx은 다른 변형이 적용되지 않은 경우 object.x과 같습니다 (y과 동일). 네거티브 좌표에 무언가를 그릴 경우 의 xy 속성은 변경되지 않습니다.

object.x = 300; 
object.y = 300; 
object.graphics.beginFill(0); 
object.graphics.drawCircle(0,0,100); 

이 예에서 그려진 원의 경계 RECT-100,-100에서 시작 것이지만, 객체의 중심은 부모의 좌표 공간에서 300,300에 아직도있다. 이제 getBounds은 개체의 영역을 나타냅니다. 영역의 좌표는 부모 공간으로 변환되고 200,200이됩니다.


부모의 좌표 공간에서 행렬 변환과 경계가 다른 경우는 언제입니까?
거의 항상 객체의 바운드 (자체 좌표 공간에서)는 0,0에서 시작하는 경우에만 동일합니다.


여기에는 부분적으로 example of getBounds in the documentation이 포함됩니다. 어떤 것을 사용해야 하는지를 말할 수는 없지만, 그것은 당신이 물체를 그릴 필요가있는 곳에 달려 있지만, 원하는 위치를 언급하지 않았습니다.

+0

재미 있습니다. 내 경우에는 객체의 x와 y 속성은 getBounds와 같지만 tranform.matrix와는 다르며 언급 한대로 다른 변형은 없었습니다. 또한 개체가 textField 그래서 어떻게 거기에 부정적인 좌표가있을 수 있습니다 이해가 안 돼요. – Ankit