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

Jeremy Wood jwood at openjdk.org
Mon Feb 9 21:34:25 UTC 2026


> 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

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/26715/files
  - new: https://git.openjdk.org/jdk/pull/26715/files/d06c5669..bc980c06

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=26715&range=03
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=26715&range=02-03

  Stats: 854869 lines in 10580 files changed: 550180 ins; 189903 del; 114786 mod
  Patch: https://git.openjdk.org/jdk/pull/26715.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/26715/head:pull/26715

PR: https://git.openjdk.org/jdk/pull/26715


More information about the client-libs-dev mailing list