Найти координаты многоугольника WP7 - PullRequest
3 голосов
/ 13 мая 2011

После выполнения поворота и перевода с помощью CompositeTransform.Координаты для фигур остаются одинаковыми в обоих сообщениях.

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)) ;

Как узнать координаты многоугольника на холсте или после преобразования?

Спасибо за помощь.

Ответы [ 3 ]

1 голос
/ 13 мая 2011
0 голосов
/ 13 мая 2011

Вы просто получаете позицию UIElement относительно 0,0 (при условии, что вы хотите стандартные позиции).Позиция перевода только относительно себя и не вернет новую позицию самого многоугольника.Следовательно, это должно быть сделано:

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

Затем вы можете использовать position.X и position.Y, чтобы получить позиции X и Y соответственно.

0 голосов
/ 13 мая 2011

Вы должны будете применить преобразования самостоятельно, чтобы узнать координаты после преобразования.

...