You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
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.
The text was updated successfully, but these errors were encountered:
This issue has been marked "inactive" because it has been 365 days since the last comment. If this issue is still present in recent Matplotlib releases, or the feature request is still wanted, please leave a comment and this label will be removed. If there are no updates in another 30 days, this issue will be automatically closed, but you are free to re-open or create a new issue if needed. We value issue reports, and this procedure is meant to help us resurface and prioritize issues that have not been addressed yet, not make them disappear. Thanks for your help!
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.
The text was updated successfully, but these errors were encountered: