Java 将矩阵推到窗口中心 我想在以窗口为中心的处理中绘制图形。我希望能够改变窗口的大小,无论发生什么情况,图形都保持居中,因此我打算通过将矩阵本身居中来实现这一点

Java 将矩阵推到窗口中心 我想在以窗口为中心的处理中绘制图形。我希望能够改变窗口的大小,无论发生什么情况,图形都保持居中,因此我打算通过将矩阵本身居中来实现这一点,java,processing,Java,Processing,我该怎么做呢?通常我会根据窗口本身的大小将矩阵转换为窗口的中心,但是如果我更改了大小,那么它将不起作用 建议?在这里,我得到了一个旧代码,可以这样做 import processing.opengl.*; int newCanvasWidth = MIN_WINDOW_WIDTH; // made global to use in draw int newCanvasHeight = MIN_WINDOW_HEIGHT; java.awt.Insets insets; //"An

我该怎么做呢?通常我会根据窗口本身的大小将矩阵转换为窗口的中心,但是如果我更改了大小,那么它将不起作用


建议?

在这里,我得到了一个旧代码,可以这样做

import processing.opengl.*;

int newCanvasWidth  = MIN_WINDOW_WIDTH;  // made global to  use in draw
int newCanvasHeight = MIN_WINDOW_HEIGHT;


java.awt.Insets insets;  //"An Insets object is a representation of the borders of a container"
                         //from http://docs.oracle.com/javase/1.4.2/docs/api/java/awt/Insets.html

void setup()
{
  size(200, 200);   // always first line
  frame.pack();     //frame.pack() no need for setResizable... plus insets
  insets = frame.getInsets();
  frame.setResizable(true);

      /// for debuging, system depende`nt, at least screen is...
  print("MIN_WINDOW_WIDTH = " + MIN_WINDOW_WIDTH);
  print("   MIN_WINDOW_HEIGHT = " + MIN_WINDOW_HEIGHT);
  print("   screenWidth = " + displayWidth);
  println("    screenHeight = " + displayHeight);
}


void draw()
{
  background(255);
  ellipse(width/2, height/2, width/2, height/2);
}

使用更改窗口大小时应更新的宽度和高度。。。