Changeset 1965


Ignore:
Timestamp:
12/22/06 08:32:26 (13 years ago)
Author:
melissa
Message:

Fixed ordering for Image5D (hopefully). We can't call swapDimensions, since
it won't actually reorder the planes.

File:
1 edited

Legend:

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

    r1964 r1965  
    188188    try { 
    189189      // -- Step 4a: do some preparatory work -- 
     190 
     191      if (stackFormat.equals(VIEW_IMAGE_5D)) mergeChannels = false; 
    190192 
    191193      FileStitcher fs = null; 
     
    431433        r.setSeries(id, i); 
    432434 
    433         if (stackFormat.equals(VIEW_IMAGE_5D)) { 
    434           // Image5D needs planes in CZT order 
    435           r.swapDimensions(id, "XYCZT"); 
    436         } 
    437                  
    438435        String name = store.getImageName(new Integer(i)); 
    439436        String imageName = fileName; 
     
    870867        int sizeC = r.getSizeC(id); 
    871868        if (imp.getStackSize() == r.getSizeZ(id) * r.getSizeT(id)) sizeC = 1; 
    872          
     869     
     870        // need to re-order the stack so that the order is XYCZT  
     871 
     872        ImageStack is = new ImageStack(r.getSizeX(id), r.getSizeY(id)); 
     873        ImageStack old = imp.getStack(); 
     874        if (r.getDimensionOrder(id).equals("XYCZT")) is = old; 
     875        else { 
     876          for (int t=0; t<r.getSizeT(id); t++) { 
     877            for (int z=0; z<r.getSizeZ(id); z++) { 
     878              for (int c=0; c<sizeC; c++) { 
     879                int ndx = r.getIndex(id, z, c, t) + 1; 
     880                is.addSlice(old.getSliceLabel(ndx), old.getProcessor(ndx)); 
     881              } 
     882            } 
     883          } 
     884        } 
     885 
    873886        ReflectedUniverse ru = null; 
    874887        ru = new ReflectedUniverse(); 
    875888        ru.exec("import i5d.Image5D"); 
    876889        ru.setVar("title", imp.getTitle()); 
    877         ru.setVar("stack", imp.getStack()); 
     890        ru.setVar("stack", is); 
    878891        ru.setVar("sizeC", sizeC); 
    879892        ru.setVar("sizeZ", r.getSizeZ(id)); 
Note: See TracChangeset for help on using the changeset viewer.