I want to manipulate a rectangle so you can rescale, move and rotate it.
I also need this rectangle in my background code because i have to calculate intersections between them.

So i found the RectangleGeometry class:

public RectangleGeometry(Rect rect, double radiusX, double radiusY, Transform transform);

The Rect object includes methods like intersections, union,... so this is exactly what i need.

But it does not work with rotation: when i use the RotateTransform object to rotate the object it does not apply to the rect so when i calculate intersections I do not get the right solution...

I can make a RectangleGeometry and a separate Rect in my underlying code and apply every transformation to both objects .... but is this the only solution?