public ProjectiveDevice(String name) { Settings s = new Settings(); s.name = name; setSettings(s); } public ProjectiveDevice(String name, File file) throws Exception {
public ProjectiveDevice(Settings settings) throws Exception { setSettings(settings); if (settings instanceof CalibratedSettings) { readParameters(((CalibratedSettings)settings).parametersFile); } }
/** * Create a Geometric Calibrator for a given resolution. * * @param width * @param height * @param name * @return */ public static GeometricCalibratorP createGeometricCalibrator(int width, int height, String name) { ProjectiveDevice d = new ProjectiveDevice(name); d.imageWidth = width; d.imageHeight = height; d.setSettings(new ProjectiveDevice.CalibrationSettings()); return new GeometricCalibratorP(d); }
@Override public void setSettings(ProjectiveDevice.Settings settings) { super.setSettings(settings); if (settings instanceof ProjectiveDevice.CalibrationSettings) { this.settings = new CalibrationSettings((ProjectiveDevice.CalibrationSettings)settings); } else if (settings instanceof ProjectiveDevice.CalibratedSettings) { this.settings = new CalibratedSettings((ProjectiveDevice.CalibratedSettings)settings); } else { this.settings = new SettingsImplementation((ProjectiveDevice.Settings)settings); } if (this.settings.getName() == null || this.settings.getName().length() == 0) { this.settings.setName("Camera " + String.format("%2d", this.settings.getDeviceNumber())); } }
@Override public void setSettings(ProjectiveDevice.Settings settings) { super.setSettings(settings); if (settings instanceof ProjectiveDevice.CalibrationSettings) { this.settings = new CalibrationSettings((ProjectiveDevice.CalibrationSettings)settings); } else if (settings instanceof ProjectiveDevice.CalibratedSettings) { this.settings = new CalibratedSettings((ProjectiveDevice.CalibratedSettings)settings); } else { this.settings = new SettingsImplementation((ProjectiveDevice.Settings)settings); } if (this.settings.getName() == null || this.settings.getName().length() == 0) { this.settings.setName("Projector " + String.format("%2d", this.settings.getScreenNumber())); } }