protected List<HeightInfo> availableSpace(ModelInfo info) { List<HeightInfo> list = new LinkedList<>(); BufferedImage mask = info.getMask(); if (mask == null) { info.parseMask(); if (mask == null) { return list; } } int width = mask.getWidth(); int height = mask.getHeight(); double xr = Mediator.getMapWidth() / width; double zr = Mediator.getMapHeight() / height; for (int i = 0; i < width; i++) { for (int j = 0; j < height; j++) { double y = PreviewPanel.getColor(mask, i, j); if (y >= 128) { double x = (width / 2 - i) * xr; double z = (height / 2 - j) * zr; list.add(new HeightInfo(x, y, z)); } } } return list; }