2009-10-18 4 views

답변

2

Flex 4에서 꽤 쉽습니다. :). 그것들은 UIComponent에 transformAround 메쏘드를 가지고있어서, 임의의 피벗 주위에서 컴포넌트의 위치/스케일/회전을 변환 할 수 있습니다. 당신은 그 최적화/사용자 정의 할 수


override public function set x(value:Number):void { var pivot:Vector3D = new Vector3D(this.width/2, this.height/2, 0); var translation:Vector3D = new Vector3D(value, this.y, this.z); transformAround(pivot, null /* scale vector */, null /* rotation vector */, translation); } 

, 그러나 그것은 JIST :)입니다 : 그래서 당신은이 작업을 수행 할 수 있습니다.

Flex 3를 사용하고 있다면 어떻게했는지 살펴볼 것입니다. Matrix/Matrix3D와 같은 많은 하드 코어입니다.

+0

예, flex3을 사용하지만 오랫동안 사용하지 않아서 옵션이 좋았습니다. –

0

글쎄, 당신은 제어, X 및 Y 소요되며, 중심점을 다시 제공하는 번역기 기능을 쓸 수 있습니다 :

Xc = (Control.x + (Control.width/2)) 
Yc = (Control.y + (Control.height/2)) 
return new Point(Xc,Yc) 

그런 다음 당신이 그렇지 않으면 사용하는 것이 위치 언제를 설정하기 위해 번역기를 사용 x와 y.

+0

그래,이 가능성이 있지만 사용자 지정 구성 요소를 만드는 방법을 찾고 있는데 UIComponent의 위치 프로세스에 어떻게 맞는지 알지 못합니다 (명확한 질문을 작성해야합니다). –

관련 문제