RFR: 4197755: Arc2D.getBounds() returns an unnecessarily large bounding box [v4]

Phil Race prr at openjdk.org
Mon Feb 9 21:34:35 UTC 2026


On Mon, 9 Feb 2026 19:27:05 GMT, Jeremy Wood <jwood at openjdk.org> wrote:

>> 4197755 is marked as a duplicate of [JDK-8176501](https://bugs.openjdk.org/browse/JDK-8176501) , but I think that is a mistake. The complaint in that ticket still reproduces, and it is resolved in this PR.
>> 
>> The complaint is: Arc2D.getBounds() is too large. If an Arc2D represents a small slice of an ellipse, then Arc2D.getBounds() always returns the size of the total ellipse. Arc2D.getBounds2D(), by contrast, has been "high-precision" for decades.
>> 
>> This PR makes Arc2D.getBounds() resemble the same implementation already used in Area, CubicCurve2D, Line2D, Path2D, and QuadCurve2D:
>> 
>>     public Rectangle getBounds() {
>>         return getBounds2D().getBounds();
>>     }
>> 
>> 
>> This modifies (simplifies) the javadoc for Arc2D.getBounds2D(). If we generally like this PR I assume we'll need a CSR to approve the javadoc change.
>
> Jeremy Wood has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains eight additional commits since the last revision:
> 
>  - 4197755: use directed inherit with getBounds()
>    
>    This is in response to darcy's comments:
>    https://bugs.openjdk.org/browse/JDK-8374859
>  - Merge branch 'master' into JDK-4197755
>  - 4197755: use directed inherit with getBounds()
>    
>    This is in response to darcy's comment:
>    https://bugs.openjdk.org/browse/JDK-8374859
>  - 4197755: Updating copyright year
>  - 4197755: update copyright year
>  - 4197755: shorten javadoc
>  - 4197755: make Arc2D.getBounds() similar to getBounds2D()
>  - 4197755: add failing unit test

Marked as reviewed by prr (Reviewer).

-------------

PR Review: https://git.openjdk.org/jdk/pull/26715#pullrequestreview-3774368011


More information about the client-libs-dev mailing list