Java 如何计算点(x,y)周围的矩形

Java 如何计算点(x,y)周围的矩形,java,geometry,Java,Geometry,我需要根据单个坐标制作一个矩形 如何围绕给定点(x,y)生成矩形?要唯一定义矩形,需要更多信息 单凭一点是做不到的 通常的方法是通过指定两个对角顶点的坐标来定义一个顶点。通过澄清您的要求 换句话说,你可以把x,y作为左上角;然后加上deltaX和deltaY。或者可以定义x,y在矩形的中间。 意思:这将变得非常容易-当你知道你想做什么 严肃地说:这就是你必须做的。这是你的项目/任务,因此你必须定义适用的规则 给出你的评论:那么你有x,y;你想在它周围放一个带dx,dy的矩形。这就意味着: x1

我需要根据单个坐标制作一个矩形


如何围绕给定点(x,y)生成矩形?

要唯一定义矩形,需要更多信息

单凭一点是做不到的


通常的方法是通过指定两个对角顶点的坐标来定义一个顶点。

通过澄清您的要求

换句话说,你可以把x,y作为左上角;然后加上deltaX和deltaY。或者可以定义x,y在矩形的中间。

意思:这将变得非常容易-当你知道你想做什么

严肃地说:这就是你必须做的。这是你的项目/任务,因此你必须定义适用的规则

给出你的评论:那么你有x,y;你想在它周围放一个带dx,dy的矩形。这就意味着:

x1 = x - dx/2;
x2 = x2 + dx;
(表示x1是矩形的左端,x2是矩形的右端)


Y也是一样。

好吧,假设你的矩形有高度h和宽度b。在屏幕上绘制矩形的最简单方法是创建JFrame:

JFrame window = new JFrame();
window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
window.setBounds(x, y, b, h);
window.getContentPane().add(new CanvasObj());
window.setVisible(true);

请注意,x,y应该是屏幕左上角的坐标,如
setBounds()
和大多数其他java图形操作所需。

我不确定“围绕点”是什么意思。你需要更多的信息来定义一个矩形:高度和宽度,它所在的平面,它与x轴的夹角,等等。有无限多个矩形可以满足你不明确的要求。我们假设你从(0,0)到(x,y)开始吗??否则,可能性是无穷的。我的意思是围绕点创建一个矩形,使点成为矩形的中心。@sweep查看我更新的答案。