Changeset 3196


Ignore:
Timestamp:
09/27/07 11:29:18 (12 years ago)
Author:
melissa
Message:

Added option to turn off autoscaling.

Location:
trunk/loci/plugins
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/loci/plugins/CustomImage.java

    r3015 r3196  
    3535  protected String order; 
    3636  protected int z, t, channels; 
    37  
    38         public CustomImage(ImagePlus imp, String order, int z, int t, int channels) { 
     37  boolean autoscale; 
     38 
     39        public CustomImage(ImagePlus imp, String order, int z, int t, int channels, 
     40    boolean autoscale) 
     41  { 
    3942    this.z = z; 
    4043    this.t = t; 
    4144    this.channels = channels; 
    4245    this.order = order; 
     46    this.autoscale = autoscale; 
    4347    ImageStack stack2; 
    4448                boolean isRGB = imp.getBitDepth() == 24; 
     
    117121                if (slice > nChannels) slice = nChannels; 
    118122 
    119                 if (slice - 1 != currentChannel) { 
     123                if (slice - 1 != currentChannel && autoscale) { 
    120124                        currentChannel = slice - 1; 
    121125                        getProcessor().setMinAndMax(cip[currentChannel].getMin(), 
     
    136140 
    137141                ImageProcessor iip = getProcessor(); 
    138                 cip[currentChannel].setMinAndMax(iip.getMin(), iip.getMax()); 
     142                if (autoscale) cip[currentChannel].setMinAndMax(iip.getMin(), iip.getMax()); 
    139143                if (singleChannel) { 
    140144                        PixelGrabber pg = new PixelGrabber(cip[currentChannel].createImage(), 
  • trunk/loci/plugins/Importer.java

    r3177 r3196  
    3030import ij.measure.Calibration; 
    3131import ij.process.*; 
    32 import java.awt.Dimension; 
    33 import java.awt.Frame; 
    34 import java.awt.event.*; 
    3532import java.awt.image.*; 
    3633import java.io.*; 
     
    131128    boolean concatenate = options.isConcatenate(); 
    132129    boolean specifyRanges = options.isSpecifyRanges(); 
     130    boolean autoscale = options.isAutoscale(); 
    133131 
    134132    boolean viewNone = options.isViewNone(); 
     
    713711    boolean mergeChannels = options.isMergeChannels(); 
    714712    boolean concatenate = options.isConcatenate(); 
    715  
    716     Util.adjustColorRange(imp); 
     713    if (options.isAutoscale()) Util.adjustColorRange(imp); 
    717714 
    718715    // convert to RGB if needed 
     
    722719      !r.isIndexed()) 
    723720    { 
    724       makeRGB(imp, r, r.getSizeC()); 
     721      makeRGB(imp, r, r.getSizeC(), options.isAutoscale()); 
    725722    } 
    726723    else if (mergeChannels && r.getSizeC() > 1 && r.getSizeC() < 4 && 
     
    743740        catch (ReflectException exc) { 
    744741          imp = new CustomImage(imp, stackOrder, r.getSizeZ(), 
    745             r.getSizeT(), r.getSizeC()); 
     742            r.getSizeT(), r.getSizeC(), options.isAutoscale()); 
    746743        } 
    747744      } 
    748745      else { 
    749746        imp = new CustomImage(imp, stackOrder, r.getSizeZ(), 
    750           r.getSizeT(), r.getSizeC()); 
     747          r.getSizeT(), r.getSizeC(), options.isAutoscale()); 
    751748      } 
    752749    } 
     
    766763      { 
    767764        String option = options.getMergeOption(); 
    768         if (option.indexOf("2 channels") != -1) makeRGB(imp, r, 2); 
    769         else if (option.indexOf("3 channels") != -1) makeRGB(imp, r, 3); 
     765        if (option.indexOf("2 channels") != -1) { 
     766          makeRGB(imp, r, 2, options.isAutoscale()); 
     767        } 
     768        else if (option.indexOf("3 channels") != -1) { 
     769          makeRGB(imp, r, 3, options.isAutoscale()); 
     770        } 
    770771      } 
    771772    } 
     
    832833  } 
    833834 
    834   private void makeRGB(ImagePlus imp, IFormatReader r, int c) { 
     835  private void makeRGB(ImagePlus imp, IFormatReader r, int c, boolean scale) { 
    835836    ImageStack s = imp.getStack(); 
    836837    ImageStack newStack = new ImageStack(s.getWidth(), s.getHeight()); 
     
    840841    } 
    841842    imp.setStack(imp.getTitle(), newStack); 
    842     Util.adjustColorRange(imp); 
     843    if (scale) Util.adjustColorRange(imp); 
    843844 
    844845    s = imp.getStack(); 
  • trunk/loci/plugins/ImporterOptions.java

    r3177 r3196  
    101101  public static final String PREF_THUMBNAIL = "bioformats.forceThumbnails"; 
    102102  public static final String PREF_MERGE_OPTION = "bioformats.mergeOption"; 
     103  public static final String PREF_AUTOSCALE = "bioformats.autoscale"; 
    103104 
    104105  // labels for user dialog; when trimmed these double as argument & macro keys 
     
    114115    "Concatenate compatible series"; 
    115116  public static final String LABEL_RANGE = "Specify range for each series"; 
     117  public static final String LABEL_AUTOSCALE = "Autoscale images"; 
    116118 
    117119  public static final String LABEL_LOCATION = "Location: "; 
     
    130132  private Checkbox concatenateBox; 
    131133  private Checkbox rangeBox; 
     134  private Checkbox autoscaleBox; 
    132135  private Choice mergeChoice; 
    133136 
     
    143146  private boolean concatenate; 
    144147  private boolean specifyRanges; 
     148  private boolean autoscale; 
    145149  private boolean forceThumbnails; 
    146150  private String mergeOption; 
     
    166170  public boolean isSpecifyRanges() { return specifyRanges; } 
    167171  public boolean isForceThumbnails() { return forceThumbnails; } 
     172  public boolean isAutoscale() { return autoscale; } 
    168173  public String getMergeOption() { return mergeOption; } 
    169174 
     
    198203  public void setSpecifyRanges(boolean b) { specifyRanges = b; } 
    199204  public void setForceThumbnails(boolean b) { forceThumbnails = b; } 
     205  public void setAutoscale(boolean b) { autoscale = b; } 
    200206 
    201207  /** Loads default option values from IJ_Prefs.txt. */ 
     
    211217    specifyRanges = Prefs.get(PREF_RANGE, false); 
    212218    forceThumbnails = Prefs.get(PREF_THUMBNAIL, false); 
     219    autoscale = Prefs.get(PREF_AUTOSCALE, true); 
    213220    mergeOption = Prefs.get(PREF_MERGE_OPTION, MERGE_DEFAULT); 
    214221  } 
     
    226233    Prefs.set(PREF_RANGE, specifyRanges); 
    227234    Prefs.set(PREF_MERGE_OPTION, mergeOption); 
     235    Prefs.set(PREF_AUTOSCALE, autoscale); 
    228236  } 
    229237 
     
    262270      stackFormat = Macro.getValue(arg, LABEL_STACK, stackFormat); 
    263271      mergeOption = Macro.getValue(arg, LABEL_MERGE_OPTION, mergeOption); 
     272      autoscale = getMacroValue(arg, LABEL_AUTOSCALE, autoscale); 
    264273 
    265274      location = Macro.getValue(arg, LABEL_LOCATION, location); 
     
    423432    gd.addCheckbox(LABEL_CONCATENATE, concatenate); 
    424433    gd.addCheckbox(LABEL_RANGE, specifyRanges); 
     434    gd.addCheckbox(LABEL_AUTOSCALE, autoscale); 
    425435 
    426436    // extract GUI components from dialog and add listeners 
     
    442452      concatenateBox = (Checkbox) boxes.get(5); 
    443453      rangeBox = (Checkbox) boxes.get(6); 
     454      autoscaleBox = (Checkbox) boxes.get(7); 
    444455      for (int i=0; i<boxes.size(); i++) { 
    445456        ((Checkbox) boxes.get(i)).addItemListener(this); 
     
    459470    concatenate = gd.getNextBoolean(); 
    460471    specifyRanges = gd.getNextBoolean(); 
     472    autoscale = gd.getNextBoolean(); 
    461473 
    462474    return STATUS_OK; 
Note: See TracChangeset for help on using the changeset viewer.