2011-05-13 186 views
3

使用CompositeTransform進行旋轉和平移之後。兩個消息框中的形狀座標保持不變。查找多邊形座標WP7

Messagebox.Show(Convert.ToString(T1Shape.Points[i].X)) ; 

initialAngle = transform.Rotation; 
initialScale = transform.ScaleX; 
transform.TranslateY = -150; 
transform.TranslateX = 200; 

Messagebox.Show(Convert.ToString(T1Shape.Points[i].X)) ; 

如何找出畫布上或轉換後的多邊形座標?

感謝您的幫助。

回答

0

您必須自己應用轉換才能找出轉換後的座標。

0

您只需獲得的UIElement相對於0,0位置(假設你想要的標準位置)。翻譯位置僅相對於其自身,並不會恢復多邊形本身的新位置。因此,這應該這樣做:

var gtransform = myPolygon.TransformToVisual(Application.Current.RootVisual as UIElement); 
Point position = gtransform.Transform(new Point(0, 0)); 

然後可以使用position.Xposition.Y分別得到X和Y位置。