/** * Adds a slider (scroll bar) to the dialog box. * Floating point values are used if (maxValue-minValue)<=5.0 * and either defaultValue or minValue are non-integer. * @param label the label * @param minValue the minimum value of the slider * @param maxValue the maximum value of the slider * @param defaultValue the initial value of the slider */ public void addSlider(String label, double minValue, double maxValue, double defaultValue) { if (defaultValue<minValue) defaultValue=minValue; if (defaultValue>maxValue) defaultValue=maxValue; int digits = 0; double scale = 1.0; if ((maxValue-minValue)<=5.0 && (minValue!=(int)minValue||maxValue!=(int)maxValue||defaultValue!=(int)defaultValue)) { scale = 50.0; minValue *= scale; maxValue *= scale; defaultValue *= scale; digits = 2; } addSlider( label, minValue, maxValue, defaultValue, scale, digits); }
@Override public void addQuery( final GenericDialog gd ) { gd.addMessage( "" ); gd.addSlider( "Percent_of_GPU_Memory_to_use", 1, 100, defaultUseGPUMem ); }
/** This vesion of addSlider() adds a 'stepSize' argument.<br> * Example: http://wsr.imagej.net/macros/SliderDemo.txt */ public void addSlider(String label, double minValue, double maxValue, double defaultValue, double stepSize) { if ( stepSize <= 0 ) stepSize = 1; int digits = digits(stepSize); double scale = 1.0 / Math.abs( stepSize ); if ( scale <= 0 ) scale = 1; if ( defaultValue < minValue ) defaultValue = minValue; if ( defaultValue > maxValue ) defaultValue = maxValue; minValue *= scale; maxValue *= scale; defaultValue *= scale; addSlider(label, minValue, maxValue, defaultValue, scale, digits); }
/** This vesion of addSlider() adds a 'stepSize' argument.<br> * Example: http://wsr.imagej.net/macros/SliderDemo.txt */ public void addSlider(String label, double minValue, double maxValue, double defaultValue, double stepSize) { if ( stepSize <= 0 ) stepSize = 1; int digits = digits(stepSize); double scale = 1.0 / Math.abs( stepSize ); if ( scale <= 0 ) scale = 1; if ( defaultValue < minValue ) defaultValue = minValue; if ( defaultValue > maxValue ) defaultValue = maxValue; minValue *= scale; maxValue *= scale; defaultValue *= scale; addSlider(label, minValue, maxValue, defaultValue, scale, digits); }
@Override public void addQuery( final GenericDialog gd ) { if ( presetModel == null ) { gd.addChoice( "Transformation model", TransformationModelGUI.modelChoice, TransformationModelGUI.modelChoice[ defaultModel ] ); gd.addCheckbox( "Regularize_model", defaultRegularize ); } gd.addSlider( "Redundancy for descriptor matching", 0, 10, FRGLDMParameters.redundancy ); gd.addSlider( "Significance required for a descriptor match", 1.0, 10.0, FRGLDMParameters.ratioOfDistance ); gd.addMessage( "" ); gd.addMessage( "Parameters for robust model-based outlier removal (RANSAC)", new Font( Font.SANS_SERIF, Font.BOLD, 12 ) ); gd.addMessage( "" ); gd.addSlider( "Allowed_error_for_RANSAC (px)", 0.5, 100.0, RANSACParameters.max_epsilon ); gd.addSlider( "Inlier_factor (minimal amount of inliers)", 1, 20, min_inlier_factor ); gd.addChoice( "RANSAC_iterations", RANSACParameters.ransacChoices, RANSACParameters.ransacChoices[ defaultRANSACIterationChoice ] ); }
@Override public void addQuery( final GenericDialog gd ) { if ( presetModel == null ) { gd.addChoice( "Transformation model", TransformationModelGUI.modelChoice, TransformationModelGUI.modelChoice[ defaultModel ] ); gd.addCheckbox( "Regularize_model", defaultRegularize ); } gd.addSlider( "Number_of_neighbors for the descriptors", 1, 10, RGLDMParameters.numNeighbors ); gd.addSlider( "Redundancy for descriptor matching", 0, 10, RGLDMParameters.redundancy ); gd.addSlider( "Significance required for a descriptor match", 1.0, 10.0, RGLDMParameters.ratioOfDistance ); gd.addMessage( "" ); gd.addMessage( "Parameters for robust model-based outlier removal (RANSAC)", new Font( Font.SANS_SERIF, Font.BOLD, 12 ) ); gd.addMessage( "" ); gd.addSlider( "Allowed_error_for_RANSAC (px)", 0.5, 100.0, RANSACParameters.max_epsilon ); gd.addChoice( "RANSAC_iterations", RANSACParameters.ransacChoices, RANSACParameters.ransacChoices[ defaultRANSACIterationChoice ] ); }
@Override public void addQuery( final GenericDialog gd ) { if ( presetModel == null ) { gd.addChoice( "Transformation model", TransformationModelGUI.modelChoice, TransformationModelGUI.modelChoice[ defaultModel ] ); gd.addCheckbox( "Regularize_model", defaultRegularize ); } gd.addSlider( "Redundancy for descriptor matching", 0, 10, GeometricHashingParameters.redundancy ); gd.addSlider( "Significance required for a descriptor match", 1.0, 20.0, GeometricHashingParameters.ratioOfDistance ); gd.addMessage( "" ); gd.addMessage( "Parameters for robust model-based outlier removal (RANSAC)", new Font( Font.SANS_SERIF, Font.BOLD, 12 ) ); gd.addMessage( "" ); gd.addSlider( "Allowed_error_for_RANSAC (px)", 0.5, 100.0, RANSACParameters.max_epsilon ); gd.addChoice( "Number_of_RANSAC_iterations", RANSACParameters.ransacChoices, RANSACParameters.ransacChoices[ defaultRANSACIterationChoice ] ); }
@Override public void addQuery( final GenericDialog gd ) { if ( presetModel == null ) { gd.addChoice( "Transformation model", TransformationModelGUI.modelChoice, TransformationModelGUI.modelChoice[ defaultModel ] ); gd.addCheckbox( "Regularize_model", defaultRegularize ); } gd.addSlider( "Maximal_distance for correspondence (px)", 0.25, 40.0, IterativeClosestPointParameters.maxDistance ); gd.addNumericField( "Maximal_number of iterations", IterativeClosestPointParameters.maxIterations, 0 ); }
/** Displays a color selection dialog and returns the color selected by the user. */ public Color getColor() { GenericDialog gd = frame!=null?new GenericDialog(title, frame):new GenericDialog(title); gd.addSlider("Red:", 0, 255, red); gd.addSlider("Green:", 0, 255, green); gd.addSlider("Blue:", 0, 255, blue); panel = new ColorPanel(initialColor); gd.addPanel(panel, GridBagConstraints.CENTER, new Insets(10, 0, 0, 0)); colors = gd.getNumericFields(); for (int i=0; i<colors.size(); i++) ((TextField)colors.elementAt(i)).addTextListener(this); sliders = gd.getSliders(); for (int i=0; i<sliders.size(); i++) ((Scrollbar)sliders.elementAt(i)).addAdjustmentListener(this); gd.showDialog(); if (gd.wasCanceled()) return null; int red = (int)gd.getNextNumber(); int green = (int)gd.getNextNumber(); int blue = (int)gd.getNextNumber(); return new Color(red, green, blue); }
synchronized private final int adjustResampling() { if (resample > 0) return resample; final GenericDialog gd = new GenericDialog("Resample"); final int default_resample = estimateResamplingFactor(); gd.addSlider("Resample: ", 1, Math.max(default_resample, 100), -1 != resample ? resample : default_resample); gd.showDialog(); if (gd.wasCanceled()) { resample = -1 != resample ? resample : default_resample; // current or default value return resample; } resample = ((java.awt.Scrollbar)gd.getSliders().get(0)).getValue(); return resample; }
/** Displays a color selection dialog and returns the color selected by the user. */ public Color getColor() { GenericDialog gd = frame!=null?new GenericDialog(title, frame):new GenericDialog(title); gd.addSlider("Red:", 0, 255, red); gd.addSlider("Green:", 0, 255, green); gd.addSlider("Blue:", 0, 255, blue); panel = new ColorPanel(initialColor); gd.addPanel(panel, GridBagConstraints.CENTER, new Insets(10, 0, 0, 0)); colors = gd.getNumericFields(); for (int i=0; i<colors.size(); i++) ((TextField)colors.elementAt(i)).addTextListener(this); sliders = gd.getSliders(); for (int i=0; i<sliders.size(); i++) ((Scrollbar)sliders.elementAt(i)).addAdjustmentListener(this); gd.showDialog(); if (gd.wasCanceled()) return null; int red = (int)gd.getNextNumber(); int green = (int)gd.getNextNumber(); int blue = (int)gd.getNextNumber(); return new Color(red, green, blue); }
void getGammaValue (double defaultValue) { gd = new GenericDialog("Gamma"); gd.addSlider("Value:", 0.0, 5.0, defaultValue, 0.02); gd.addPreviewCheckbox(pfr); gd.addDialogListener(this); gd.showDialog(); }
void getGammaValue (double defaultValue) { gd = new GenericDialog("Gamma"); gd.addSlider("Value:", 0.0, 5.0, defaultValue, 0.02); gd.addPreviewCheckbox(pfr); gd.addDialogListener(this); gd.showDialog(); }
public boolean setup() { GenericDialog gd = new GenericDialog("Paint parameters"); gd.addSlider("Default_alpha", 0, 100, default_alpha * 100); final String[] modes = {"Allow overlap", "Exclude others", "Erode others"}; gd.addChoice("Paint mode", modes, modes[paint_mode]); gd.showDialog(); if (gd.wasCanceled()) return false; this.default_alpha = (float) gd.getNextNumber(); if (this.default_alpha > 1) this.default_alpha = 1f; else if (this.default_alpha < 0) this.default_alpha = 0.4f; // back to default's default value this.paint_mode = gd.getNextChoiceIndex(); // trigger update of GUI radio buttons on all displays: Display.toolChanged(ProjectToolbar.BRUSH); return true; }
public void run(ImageProcessor ip) { Roi roi = image.getRoi(); if (roi == null || roi.getType() != roi.RECTANGLE) { IJ.error("Need a rectangular selection!"); return; } Rectangle rect = roi.getBounds(); int min = Math.min(rect.width, rect.height); GenericDialog gd = new GenericDialog("Make rectangle rounded"); gd.addSlider("radius", 0, min / 2, Math.min(5, min / 2)); gd.showDialog(); if (gd.wasCanceled()) return; int radius = (int)gd.getNextNumber(); gp = new GeneralPath(); start(rect.x + radius, rect.y); quarterCircle(radius, -90); straight(0, rect.height - 2 * radius); quarterCircle(radius, -180); straight(rect.width - 2 * radius, 0); quarterCircle(radius, -270); straight(0, 2 * radius - rect.height); quarterCircle(radius, 0); gp.closePath(); image.setRoi(new ShapeRoi(gp)); }
private void showDialog() { Roi roi = imp.getRoi(); drawRoi(); GenericDialog gd = new GenericDialog("Circular ROI"); gd.addSlider("Radius:", 0, imp.getWidth()/2, radius); gd.addDialogListener(this); gd.showDialog(); if (gd.wasCanceled()) { if (roi==null) imp.deleteRoi(); else // restore initial ROI when cancelled imp.setRoi(roi); } }
private void showDialog() { Roi roi = imp.getRoi(); drawRoi(); GenericDialog gd = new GenericDialog("Circular ROI"); gd.addSlider("Radius:", 0, imp.getWidth()/2, radius); gd.addDialogListener(this); gd.showDialog(); if (gd.wasCanceled()) { if (roi==null) imp.deleteRoi(); else // restore initial ROI when cancelled imp.setRoi(roi); } }
public void showDialog() { Color color = Toolbar.getForegroundColor(); String colorName = Colors.colorToString2(color); String name = isPencil?"Pencil":"Brush"; gd = new NonBlockingGenericDialog(name+" Options"); gd.addSlider(name+" width:", 1, 50, width); //gd.addSlider("Transparency (%):", 0, 100, transparency); gd.addChoice("Color:", Colors.getColors(colorName), colorName); gd.addCheckbox("Paint on overlay", paintOnOverlay); gd.addDialogListener(this); gd.addHelp(getHelp()); Point loc = Prefs.getLocation(LOC_KEY); if (loc!=null) { gd.centerDialog(false); gd.setLocation (loc); } gd.showDialog(); Prefs.saveLocation(LOC_KEY, gd.getLocation()); gd = null; }
public void showDialog() { Color color = Toolbar.getForegroundColor(); String colorName = Colors.colorToString2(color); String name = isPencil?"Pencil":"Brush"; gd = new NonBlockingGenericDialog(name+" Options"); gd.addSlider(name+" width:", 1, 50, width); //gd.addSlider("Transparency (%):", 0, 100, transparency); gd.addChoice("Color:", Colors.getColors(colorName), colorName); gd.addCheckbox("Paint on overlay", paintOnOverlay); gd.addDialogListener(this); gd.addHelp(getHelp()); Point loc = Prefs.getLocation(LOC_KEY); if (loc!=null) { gd.centerDialog(false); gd.setLocation (loc); } gd.showDialog(); Prefs.saveLocation(LOC_KEY, gd.getLocation()); gd = null; }