Changeset 3334


Ignore:
Timestamp:
10/31/07 11:55:57 (12 years ago)
Author:
melissa
Message:

More reliable pixel size parsing.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/loci/formats/in/LIFReader.java

    r3276 r3334  
    5353 
    5454  /** Offsets to memory blocks, paired with their corresponding description. */ 
    55   protected Vector offsets; 
     55  private Vector offsets; 
    5656 
    5757  /** Bits per pixel. */ 
     
    9494    in.read(buf); 
    9595    return buf; 
     96  } 
     97 
     98  // -- IFormatHandler API methods -- 
     99 
     100  /* @see loci.formats.IFormatHandler#close() */ 
     101  public void close() throws IOException { 
     102    super.close(); 
     103    bitsPerPixel = extraDimensions = null; 
     104    bpp = 0; 
     105    offsets = xcal = ycal = zcal = null; 
     106    containerNames = containerCounts = null; 
    96107  } 
    97108 
     
    290301          } 
    291302        } 
     303        /* 
    292304        else if (token.indexOf("dblVoxel") != -1) { 
    293305          int index = token.indexOf("Variant") + 7; 
     
    299311          else if (token.indexOf("Z") != -1) zcal.add(new Float(cal)); 
    300312        } 
     313        */ 
    301314      } 
    302315      else if (token.startsWith("Element Name")) { 
     
    346359              int id = Integer.parseInt((String) 
    347360                tmp.get("DimensionDescription DimID")); 
     361              float size = Float.parseFloat((String) tmp.get("Length")); 
     362              if (size < 0) size *= -1; 
    348363 
    349364              switch (id) { 
    350365                case 1: 
    351366                  widths.add(new Integer(w)); 
     367                  xcal.add(new Float((size * 1000000) / w)); 
    352368                  break; 
    353369                case 2: 
    354370                  heights.add(new Integer(w)); 
     371                  ycal.add(new Float((size * 1000000) / w)); 
    355372                  break; 
    356373                case 3: 
    357374                  zs.add(new Integer(w)); 
     375                  zcal.add(new Float((size * 1000000) / w)); 
    358376                  break; 
    359377                case 4: 
Note: See TracChangeset for help on using the changeset viewer.