Java 如何始终居中对齐

Java 如何始终居中对齐,java,triggers,height,width,processing,Java,Triggers,Height,Width,Processing,我在学习处理,我在尝试坐标,我在对齐显示窗口的中心时遇到困难,作为参考,我附上了视频 在详细说明或示例中,有两个圆开始在X和Y轴上滑动, 因此,当动画被触发时,它们将在屏幕上移动,并精确地在显示窗口的中心交叉,而不管宽度和高度的比率如何,如500x500或500x700或700x500 我有什么想法吗 我尝试使用translate(宽度、高度)值 以及对pi值的一些限制 矩形(高度/2,宽度/22000,70,0); 矩形(高度/2,宽度/2,70,2000,0) 椭圆(x,宽度/2,直径,直径

我在学习处理,我在尝试坐标,我在对齐显示窗口的中心时遇到困难,作为参考,我附上了视频

在详细说明或示例中,有两个圆开始在X和Y轴上滑动, 因此,当动画被触发时,它们将在屏幕上移动,并精确地在显示窗口的中心交叉,而不管宽度和高度的比率如何,如500x500或500x700或700x500

我有什么想法吗

我尝试使用translate(宽度、高度)值 以及对pi值的一些限制

矩形(高度/2,宽度/22000,70,0); 矩形(高度/2,宽度/2,70,2000,0)


椭圆(x,宽度/2,直径,直径)

您可以使用Java
Toolkit
类获得显示大小:

Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
double height = screenSize.getHeight();
double width = screenSize.getWidth();

您可以使用Java
Toolkit
类获得显示大小:

Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
double height = screenSize.getHeight();
double width = screenSize.getWidth();

我很抱歉回答得太晚

如果你的问题是圆圈需要同时在中间,你可以使用这个函数。 它取最小值(0)、最大值(宽度或高度)和百分比(x/100),并给出适当的值

比如,;LERP(0, 100,0.5)将输出50,因为它是在中间(50%=0.5)的0和100。 例如,使用x存储圆移动方式的百分比:

ellipse(lerp(0, width, x/100), height/2, dia, dia); //please note that you always set the x-coordinate first.
ellipse(width/2, lerp(0, height, x/100), dia, dia);

if(x < 100)
{
  x++;
}
椭圆(lerp(0,宽度,x/100),高度/2,直径,直径)//请注意,始终先设置x坐标。
椭圆(宽度/2,lerp(0,高度,x/100),直径,直径);
如果(x<100)
{
x++;
}
但是,由于if状态仅包含一条语句,因此不需要花括号:

if(x < 100)
  x++;
if(x<100)
x++;

很抱歉我没有及时答复

如果你的问题是圆圈需要同时在中间,你可以使用这个函数。 它取最小值(0)、最大值(宽度或高度)和百分比(x/100),并给出适当的值

比如,;LERP(0, 100,0.5)将输出50,因为它是在中间(50%=0.5)的0和100。 例如,使用x存储圆移动方式的百分比:

ellipse(lerp(0, width, x/100), height/2, dia, dia); //please note that you always set the x-coordinate first.
ellipse(width/2, lerp(0, height, x/100), dia, dia);

if(x < 100)
{
  x++;
}
椭圆(lerp(0,宽度,x/100),高度/2,直径,直径)//请注意,始终先设置x坐标。
椭圆(宽度/2,lerp(0,高度,x/100),直径,直径);
如果(x<100)
{
x++;
}
但是,由于if状态仅包含一条语句,因此不需要花括号:

if(x < 100)
  x++;
if(x<100)
x++;