好的
我有线路和组件。该组件本身是一个 JPanel。我在里面画形状。并将形状添加到容器中。该形状可以是任何多边形。并在容器中绘制一条曲线(可以是 Line2D、CubicCurve2D 或 QuadCurve2D)。
现在我需要在容器上绘制一个箭头形状,以便在移动线条时该箭头将跨越该形状。
可以有许多曲线通过不同的控制点连接到形状的中心。形状可以是任意正多边形。
至少我需要圆角矩形和图像下方曲线的交点。
编辑:我想确定曲线和任意正多边形的交点。给定多边形的宽度、高度、中心点以及直线的起点、终点和控制点。
<小时/>
编辑:我无法发布问题,因此我将编辑这个问题。如何缩放 JComponent 和 Graphics 对象?如果应该使用 AffineTransform 来完成,那么我应该如何转换 JComponent 上的事件点?
最佳答案
您可以使用BasicStroke
和getStrokedShape()
。设置厚度=例如5 并获取Polygon
和Line
的描边形状。然后根据添加的形状创建 2 个 Area
类并获取交集 Shape
。
关于java - Line2D 和 JComponent 交点和仿射变换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13701243/