/** * Returns every possible refresh rate for the given resolution. */ private static String[] getFrequencies(String resolution, DisplayMode[] modes) { ArrayList<String> freqs = new ArrayList<String>(4); for (int i = 0; i < modes.length; i++) { String res = modes[i].getWidth() + " x " + modes[i].getHeight(); String freq; if (modes[i].getRefreshRate() == DisplayMode.REFRESH_RATE_UNKNOWN) { freq = "???"; } else { freq = modes[i].getRefreshRate() + " Hz"; } if (res.equals(resolution) && !freqs.contains(freq)) { freqs.add(freq); } } String[] res = new String[freqs.size()]; freqs.toArray(res); return res; }
public static DisplayMode getDesktopDisplayMode () { GraphicsEnvironment genv = GraphicsEnvironment.getLocalGraphicsEnvironment(); GraphicsDevice device = genv.getDefaultScreenDevice(); java.awt.DisplayMode mode = device.getDisplayMode(); return new LwjglApplicationConfigurationDisplayMode(mode.getWidth(), mode.getHeight(), mode.getRefreshRate(), mode.getBitDepth()); }
/** * Chooses the closest frequency to 60 Hz. * * @param resolution * @param modes * @return */ private static String getBestFrequency(String resolution, DisplayMode[] modes) { int closest = Integer.MAX_VALUE; int desired = 60; for (int i = 0; i < modes.length; i++) { String res = modes[i].getWidth() + " x " + modes[i].getHeight(); int freq = modes[i].getRefreshRate(); if (freq != DisplayMode.REFRESH_RATE_UNKNOWN && res.equals(resolution)) { if (Math.abs(freq - desired) < Math.abs(closest - desired)) { closest = modes[i].getRefreshRate(); } } } if (closest != Integer.MAX_VALUE) { return closest + " Hz"; } else { return null; } }
public static DisplayMode getDesktopDisplayMode () { GraphicsEnvironment genv = GraphicsEnvironment.getLocalGraphicsEnvironment(); GraphicsDevice device = genv.getDefaultScreenDevice(); java.awt.DisplayMode mode = device.getDisplayMode(); return new LwjglApplicationConfigurationDisplayMode(mode.getWidth(), mode.getHeight(), mode.getRefreshRate(), mode.getBitDepth()); }
public static DisplayMode[] getDisplayModes () { GraphicsEnvironment genv = GraphicsEnvironment.getLocalGraphicsEnvironment(); GraphicsDevice device = genv.getDefaultScreenDevice(); java.awt.DisplayMode desktopMode = device.getDisplayMode(); java.awt.DisplayMode[] displayModes = device.getDisplayModes(); ArrayList<DisplayMode> modes = new ArrayList<DisplayMode>(); int idx = 0; for (java.awt.DisplayMode mode : displayModes) { boolean duplicate = false; for (int i = 0; i < modes.size(); i++) { if (modes.get(i).width == mode.getWidth() && modes.get(i).height == mode.getHeight() && modes.get(i).bitsPerPixel == mode.getBitDepth()) { duplicate = true; break; } } if (duplicate) continue; if (mode.getBitDepth() != desktopMode.getBitDepth()) continue; modes.add(new LwjglApplicationConfigurationDisplayMode(mode.getWidth(), mode.getHeight(), mode.getRefreshRate(), mode .getBitDepth())); } return modes.toArray(new DisplayMode[modes.size()]); } }
public static DisplayMode[] getDisplayModes () { GraphicsEnvironment genv = GraphicsEnvironment.getLocalGraphicsEnvironment(); GraphicsDevice device = genv.getDefaultScreenDevice(); java.awt.DisplayMode desktopMode = device.getDisplayMode(); java.awt.DisplayMode[] displayModes = device.getDisplayModes(); ArrayList<DisplayMode> modes = new ArrayList<DisplayMode>(); int idx = 0; for (java.awt.DisplayMode mode : displayModes) { boolean duplicate = false; for (int i = 0; i < modes.size(); i++) { if (modes.get(i).width == mode.getWidth() && modes.get(i).height == mode.getHeight() && modes.get(i).bitsPerPixel == mode.getBitDepth()) { duplicate = true; break; } } if (duplicate) continue; if (mode.getBitDepth() != desktopMode.getBitDepth()) continue; modes.add(new LwjglApplicationConfigurationDisplayMode(mode.getWidth(), mode.getHeight(), mode.getRefreshRate(), mode .getBitDepth())); } return modes.toArray(new DisplayMode[modes.size()]); } }
/** * @see java.util.Comparator#compare(java.lang.Object, java.lang.Object) */ public int compare(DisplayMode a, DisplayMode b) { // Width if (a.getWidth() != b.getWidth()) { return (a.getWidth() > b.getWidth()) ? 1 : -1; } // Height if (a.getHeight() != b.getHeight()) { return (a.getHeight() > b.getHeight()) ? 1 : -1; } // Bit depth if (a.getBitDepth() != b.getBitDepth()) { return (a.getBitDepth() > b.getBitDepth()) ? 1 : -1; } // Refresh rate if (a.getRefreshRate() != b.getRefreshRate()) { return (a.getRefreshRate() > b.getRefreshRate()) ? 1 : -1; } // All fields are equal return 0; } }
&& currentDisplayMode.getHeight() == settings.getHeight()) { if (currentDisplayMode.getBitDepth() == settings.getBitsPerPixel()) { if (currentDisplayMode.getRefreshRate() == settings.getFrequency()) { matchingDisplayMode = currentDisplayMode; } else if (currentDisplayMode.getRefreshRate() == DisplayMode.REFRESH_RATE_UNKNOWN) { refreshRateUnknownDisplayMode = currentDisplayMode; if (currentDisplayMode.getRefreshRate() == settings.getFrequency()) { multiBitsDepthSupportedDisplayMode = currentDisplayMode; } else if (currentDisplayMode.getRefreshRate() == DisplayMode.REFRESH_RATE_UNKNOWN) { multiBitsDepthSupportedAndRefreshRateUnknownDisplayMode = currentDisplayMode; gd.getDisplayMode().getHeight(), gd.getDisplayMode().getBitDepth(), gd.getDisplayMode().getRefreshRate()});
int max = 0; for(java.awt.DisplayMode dm : VRdev.getDisplayModes()) { int check = dm.getHeight() + dm.getWidth() + dm.getRefreshRate() + dm.getBitDepth(); if( check > max ) { max = check; settings.setHeight(useDM.getHeight()); settings.setBitsPerPixel(useDM.getBitDepth()); settings.setFrequency(useDM.getRefreshRate()); settings.setSwapBuffers(true); settings.setVSync(true); // allow vsync on this display settings.setFrequency(defDev.getDisplayMode().getRefreshRate()); settings.setDepthBits(24); settings.setVSync(true);
int max = 0; for(java.awt.DisplayMode dm : VRdev.getDisplayModes()) { int check = dm.getHeight() + dm.getWidth() + dm.getRefreshRate() + dm.getBitDepth(); if( check > max ) { max = check; settings.setHeight(useDM.getHeight()); settings.setBitsPerPixel(useDM.getBitDepth()); settings.setFrequency(useDM.getRefreshRate()); settings.setSwapBuffers(true); settings.setVSync(true); // allow vsync on this display if (macOs) { settings.setFrequency(defDev.getDisplayMode().getRefreshRate()); settings.setDepthBits(24); settings.setVSync(true);
public void addRefreshRate(DisplayMode dm) { if (dm.getRefreshRate() != DisplayMode.REFRESH_RATE_UNKNOWN && !refreshRate.contains(dm.getRefreshRate())) { refreshRate.add(dm.getRefreshRate()); } }
GraphicsEnvironment ge = GraphicsEnvironment .getLocalGraphicsEnvironment(); GraphicsDevice[] gs = ge.getScreenDevices(); for (int i = 0; i < gs.length; i++) { DisplayMode dm = gs[i].getDisplayMode(); // Get refresh rate in Hz int refreshRate = dm.getRefreshRate(); if (refreshRate == DisplayMode.REFRESH_RATE_UNKNOWN) { // Unknown rate } else { System.out.println(refreshRate); } }
GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment(); GraphicsDevice gd = ge.getDefaultScreenDevice(); for (DisplayMode dm : gd.getDisplayModes()) { System.out.println(dm.getWidth() + "x" + dm.getHeight() + "@" + dm.getRefreshRate()); }
/** * Returns a string representation of the supplied display mode. */ public static String toString (DisplayMode mode) { return "[width=" + mode.getWidth() + ", height=" + mode.getHeight() + ", depth=" + mode.getBitDepth() + ", refresh=" + mode.getRefreshRate() + "]"; } }
/** * Returns a string representation of the supplied display mode. */ public static String toString (DisplayMode mode) { return "[width=" + mode.getWidth() + ", height=" + mode.getHeight() + ", depth=" + mode.getBitDepth() + ", refresh=" + mode.getRefreshRate() + "]"; } }
private void showCurrentMode() // print the display mode details for the graphics device { DisplayMode dm = gd.getDisplayMode(); logger.info("Current Display Mode: (" + dm.getWidth() + "," + dm.getHeight() + "," + dm.getBitDepth() + "," + dm.getRefreshRate() + ") "); }
public static DisplayMode getDesktopDisplayMode () { GraphicsEnvironment genv = GraphicsEnvironment.getLocalGraphicsEnvironment(); GraphicsDevice device = genv.getDefaultScreenDevice(); java.awt.DisplayMode mode = device.getDisplayMode(); return new LwjglApplicationConfigurationDisplayMode(mode.getWidth(), mode.getHeight(), mode.getRefreshRate(), mode.getBitDepth()); }
@Nonnull public Resolution getResolution() { if (resolution == null || getWidth() != resolution.getWidth() || getHeight() != resolution.getHeight()) { this.resolution = new Resolution(getWidth(), getHeight(), toolkit.getScreenResolution(), mainDevice.getDisplayMode().getRefreshRate()); } return resolution; }
@Nonnull public Resolution getResolution() { if (resolution == null || getWidth() != resolution.getWidth() || getHeight() != resolution.getHeight()) { this.resolution = new Resolution(getWidth(), getHeight(), toolkit.getScreenResolution(), mainDevice.getDisplayMode().getRefreshRate()); } return resolution; }
public void setScreenNumber(int screenNumber) { DisplayMode d = CanvasFrame.getDisplayMode(screenNumber); String oldDescription = getDescription(); firePropertyChange("screenNumber", this.screenNumber, this.screenNumber = screenNumber); firePropertyChange("description", oldDescription, getDescription()); firePropertyChange("imageWidth", this.imageWidth, this.imageWidth = d == null ? 0 : d.getWidth()); firePropertyChange("imageHeight", this.imageHeight, this.imageHeight = d == null ? 0 : d.getHeight()); firePropertyChange("bitDepth", this.bitDepth, this.bitDepth = d == null ? 0 : d.getBitDepth()); firePropertyChange("refreshRate", this.refreshRate, this.refreshRate = d == null ? 0 : d.getRefreshRate()); firePropertyChange("responseGamma", this.responseGamma, this.responseGamma = CanvasFrame.getGamma(screenNumber)); }