Changeset 1851


Ignore:
Timestamp:
11/27/06 10:48:24 (13 years ago)
Author:
melissa
Message:

Fixed channel merging bug in importer.

File:
1 edited

Legend:

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

    r1850 r1851  
    420420              ip = new ColorProcessor(w, h); 
    421421              byte[][] pix = new byte[c][w*h]; 
    422               if (r.isInterleaved(id)) { 
    423                 for (int k=0; k<bytes.length; k+=c) { 
    424                   for (int l=0; l<c; l++) { 
    425                     pix[l][k / 3] = bytes[k + l]; 
    426                   } 
    427                 } 
    428               } 
    429               else { 
    430                 for (int k=0; k<c; k++) { 
    431                   System.arraycopy(bytes, 0, pix[k], 0, pix[k].length); 
    432                   System.arraycopy(bytes, pix[k].length, pix[k], 0,  
    433                     pix[k].length); 
    434                   System.arraycopy(bytes, 2*pix[k].length, pix[k], 0,  
    435                     pix[k].length); 
    436                 } 
     422              for (int k=0; k<c; k++) { 
     423                System.arraycopy(bytes, k*pix[k].length, pix[k], 0,  
     424                  pix[k].length); 
    437425              } 
    438426              ((ColorProcessor) ip).setRGB(pix[0], pix[1],  
     
    456444              if (stackO == null) stackO = new ImageStack(w, h); 
    457445              short[][] pix = new short[c][w*h]; 
    458               if (r.isInterleaved(id)) { 
    459                 for (int k=0; k<s.length; k+=c) { 
    460                   for (int l=0; l<c; l++) { 
    461                     pix[l][k / 3] = s[k + l]; 
    462                   } 
    463                 } 
    464               } 
    465               else { 
    466                 for (int k=0; k<c; k++) { 
    467                   System.arraycopy(s, k*pix[k].length, pix[k], 0,  
    468                     pix[k].length); 
    469                 } 
     446              for (int k=0; k<c; k++) { 
     447                System.arraycopy(s, k*pix[k].length, pix[k], 0,  
     448                  pix[k].length); 
    470449              } 
    471450              byte[][] bytes = new byte[c][w*h]; 
     
    496475              if (stackO == null) stackO = new ImageStack(w, h); 
    497476              int[][] pix = new int[c][w*h]; 
    498               if (r.isInterleaved(id)) { 
    499                 for (int k=0; k<s.length; k+=c) { 
    500                   for (int l=0; l<c; l++) { 
    501                     pix[l][k / 3] = s[k + l]; 
    502                   } 
    503                 } 
    504               } 
    505               else { 
    506                 for (int k=0; k<c; k++) { 
    507                   System.arraycopy(s, k*pix[k].length, pix[k], 0,  
    508                     pix[k].length); 
    509                 } 
     477              for (int k=0; k<c; k++) { 
     478                System.arraycopy(s, k*pix[k].length, pix[k], 0,  
     479                  pix[k].length); 
    510480              } 
    511481              byte[][] bytes = new byte[c][w*h]; 
     
    587557              if (stackO == null) stackO = new ImageStack(w, h); 
    588558              double[][] pix = new double[c][w*h]; 
    589               if (r.isInterleaved(id)) { 
    590                 for (int k=0; k<d.length; k+=c) { 
    591                   for (int l=0; l<c; l++) { 
    592                     pix[l][k / 3] = d[k + l]; 
    593                   } 
    594                 } 
    595               } 
    596               else { 
    597                 for (int k=0; k<c; k++) { 
    598                   System.arraycopy(d, k*pix[k].length, pix[k], 0,  
    599                     pix[k].length); 
    600                 } 
     559              for (int k=0; k<c; k++) { 
     560                System.arraycopy(d, k*pix[k].length, pix[k], 0,  
     561                  pix[k].length); 
    601562              } 
    602563              byte[][] bytes = new byte[c][w*h]; 
     
    613574          } 
    614575        } 
    615           /* 
    616           if (ip == null) { 
    617             ip = new ColorProcessor(w, h, 
    618               ImageTools.make24Bits(pixels, w, h, r.isInterleaved(id))); 
    619             if (stackO == null) stackO = new ImageStack(w, h); 
    620             stackO.addSlice(imageName + ":" + (j + 1), ip); 
    621           } 
    622           */ 
    623576 
    624577        IJ.showStatus("Creating image"); 
Note: See TracChangeset for help on using the changeset viewer.