Take the 2-minute tour ×

After doing rotating and translating using CompositeTransform. The coordinates for the shapes remain the same in both messagebox.

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

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


How do i find out the coordinates of the polygon on the canvas or after transformation?

Thanks for your help.

share|improve this question

3 Answers 3

Read this...

Get element position after transform

share|improve this answer

You'll have to apply the transforms by yourself to find out the coordinates after transformation.

share|improve this answer

You simply get the position of the UIElement relative to 0,0 (assuming you want the standard positions). The translation position is only relative to itself and won't bring back the new position of the polygon itself. Therefore, this should do it:

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

You can then use position.X and position.Y to get the X and Y positions respectively.

share|improve this answer

Your Answer


