我试图找到一个基于中心点绘制椭圆的解决方案,而不是根据 Ellipse2D.Double 的构造函数中指定的左上角。如图所示,椭圆应该具有相同的中心点和比例,这可能吗?
在此先感谢您的帮助。
我试图找到一个基于中心点绘制椭圆的解决方案,而不是根据 Ellipse2D.Double 的构造函数中指定的左上角。如图所示,椭圆应该具有相同的中心点和比例,这可能吗?
在此先感谢您的帮助。
如果(x,y)
是您要使用的中心并且您只能指定左上角,则使用以下内容:
private Ellipse2D getEllipseFromCenter(double x, double y, double width, double height)
{
double newX = x - width / 2.0;
double newY = y - height / 2.0;
Ellipse2D ellipse = new Ellipse2D.Double(newX, newY, width, height);
return ellipse;
}
如果使用中心点以及宽度和高度调用,这会将您的中心点“转换”到左上角并创建一个Ellipse2D
您想要的位置。