Description
TransformedBbox inherits the contains() method from Bbox, which only checks separately that x is between xmin and xmax, and that y is between ymin and ymax. This means that a TransformedBbox with 45° rotation will incorrectly believe to contain() points that are "in the non-covered corners" (xref #12052).
It's not clear whether we actually need TransformedBbox.contains to work for non-axis-aligned Bboxes (perhaps Patches are better structures for that), but the current behavior seems to be just a good way to shoot oneself in the foot. Either we should fix the implementation of contains() (I think(?) we can just apply the inverse-transform to the point and check whether it is in the original, untransformed Bbox), or at least TransformedBbox.contains should raise some exception when called and the Bbox is not axis-aligned.