java - 根据 2 个点和半径绘制圆弧

标签 java graphics2d

我正在尝试在面板内绘制 Arc2D 对象。但我不知道如何计算它。 我给出的是起始 Point2D 和结束 Point2D 以及半径。 问题是当半径改变时,startAngle 和 AngleExtent 参数每次都不同。 另一个问题是,由于半径发生变化,包含圆弧的“ future ”圆的中心每次都位于不同的点,这是另一个根据输入而变化的参数,所以我无法使用(或者不知道如何)使用 setCenter() 方法。

感谢任何帮助!

最佳答案

两个点和一个半径定义两条弧(二维)。您可以通过计算以两点为中心、半径为 r 的两个圆的交集 (java.awt.geom.Area.intersects) 来找到它们的中心点。圆弧圆的中心点将是该区域周长上位于两个初始点中间的点。

关于java - 根据 2 个点和半径绘制圆弧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11387493/

相关文章:

java - JAR 在 Lucee 上找不到 BouncyCaSTLeProvider

Java Graphics2d : Verify if point is contained in region

java - 在 Java 中栅格化三角形

java - 绘图时使用 JPanel 坐标

java - 在 BufferedImage 上渲染字符串时出现问题

java - 如何使用 Batik svggen 将 SVG 图像嵌入到另一个 SVG 图像中?

java - ScheduledExecutorService 有点奇怪

java - 使用 spring @Caching 时缓存层的顺序是什么?

java - 使用 Lists.partition 或 Iterable.partition 将集合拆分为子集

java - ftp4j:client.login 返回无法识别的 SSL 消息,明文连接?