Package java.awt.image

Examples of java.awt.image.LookupTable


public class constructor implements Testlet
{
  public void test(TestHarness harness)
  {
    LookupTable t = new MyLookupTable(1, 2);
    harness.check(t.getOffset(), 1);
    harness.check(t.getNumComponents(), 2);
   
    // try negative offset
    boolean pass = false;
    try
    {
View Full Code Here


    /**
     * Converts the filter's LookupTable into an array of corresponding SVG
     * table strings
     */
    private String[] convertLookupTables(LookupOp lookupOp){
        LookupTable lookupTable = lookupOp.getTable();
        int nComponents = lookupTable.getNumComponents();

        if((nComponents != 1) && (nComponents != 3) && (nComponents != 4))
            throw new SVGGraphics2DRuntimeException(ERR_ILLEGAL_BUFFERED_IMAGE_LOOKUP_OP);

        StringBuffer lookupTableBuf[] = new StringBuffer[nComponents];
        for(int i=0; i<nComponents; i++)
            lookupTableBuf[i] = new StringBuffer();

        if(!(lookupTable instanceof ByteLookupTable)){
            int src[] = new int[nComponents];
            int dest[] = new int[nComponents];
            int offset = lookupTable.getOffset();

            // Offsets are used for constrained sources. Therefore,
            // the lookup values should never be used under offset.
            // There is no SVG equivalent for this behavior.
            // These values are mapped to identity.
            for(int i=0; i<offset; i++){
                // Fill in string buffers
                for(int j=0; j<nComponents; j++){
                    // lookupTableBuf[j].append(Integer.toString(i));
                    lookupTableBuf[j].append(doubleString(i/255.));
                    lookupTableBuf[j].append(SPACE);
                }
            }

            for(int i=offset; i<=255; i++){
                // Fill in source array
                for(int j=0; j<nComponents; j++) src[j] = i;

                // Get destination values
                lookupTable.lookupPixel(src, dest);

                // Fill in string buffers
                for(int j=0; j<nComponents; j++){
                    lookupTableBuf[j].append(doubleString(dest[j]/255.));
                    // lookupTableBuf[j].append(Integer.toString(dest[j]));
                    lookupTableBuf[j].append(SPACE);
                }
            }
        }
        else{
            byte src[] = new byte[nComponents];
            byte dest[] = new byte[nComponents];

            int offset = lookupTable.getOffset();

            // Offsets are used for constrained sources. Therefore,
            // the lookup values should never be used under offset.
            // There is no SVG equivalent for this behavior.
            // These values are mapped to identity.
View Full Code Here

    /**
     * Converts the filter's LookupTable into an array of corresponding SVG
     * table strings
     */
    private String[] convertLookupTables(LookupOp lookupOp){
        LookupTable lookupTable = lookupOp.getTable();
        int nComponents = lookupTable.getNumComponents();

        if((nComponents != 1) && (nComponents != 3) && (nComponents != 4))
            throw new SVGGraphics2DRuntimeException(ERR_ILLEGAL_BUFFERED_IMAGE_LOOKUP_OP);

        StringBuffer[] lookupTableBuf = new StringBuffer[nComponents];
        for(int i=0; i<nComponents; i++)
            lookupTableBuf[i] = new StringBuffer();

        if(!(lookupTable instanceof ByteLookupTable)){
            int[] src = new int[nComponents];
            int[] dest= new int[nComponents];
            int offset = lookupTable.getOffset();

            // Offsets are used for constrained sources. Therefore,
            // the lookup values should never be used under offset.
            // There is no SVG equivalent for this behavior.
            // These values are mapped to identity.
            for(int i=0; i<offset; i++){
                // Fill in string buffers
                for(int j=0; j<nComponents; j++){
                    // lookupTableBuf[j].append(Integer.toString(i));
                    lookupTableBuf[j].append(doubleString(i/255.0)).append(SPACE);
                }
            }

            for(int i=offset; i<=255; i++){
                // Fill in source array
                Arrays.fill( src, i );

                // Get destination values
                lookupTable.lookupPixel(src, dest);

                // Fill in string buffers
                for(int j=0; j<nComponents; j++){
                    lookupTableBuf[j].append(doubleString( dest[j]/255.0) ).append(SPACE);
                }
            }
        }
        else{
            byte[] src = new byte[nComponents];
            byte[] dest = new byte[nComponents];

            int offset = lookupTable.getOffset();

            // Offsets are used for constrained sources. Therefore,
            // the lookup values should never be used under offset.
            // There is no SVG equivalent for this behavior.
            // These values are mapped to identity.
View Full Code Here

        byte[] lookup = new byte[256];
        for(int i=0; i<256; i++)
            lookup[i] = (byte)(255 - i);

        LookupTable table = new ByteLookupTable(0, lookup);
        java.awt.image.LookupOp inverter = new java.awt.image.LookupOp(table, null);

        // Simply paint the image without and with the lookup filter
        g.setPaint(Color.black);
        g.drawString("Normal / Inverted", 10, 20);
View Full Code Here

    /**
     * Converts the filter's LookupTable into an array of corresponding SVG
     * table strings
     */
    private String[] convertLookupTables(LookupOp lookupOp){
        LookupTable lookupTable = lookupOp.getTable();
        int nComponents = lookupTable.getNumComponents();

        if((nComponents != 1) && (nComponents != 3) && (nComponents != 4))
            throw new SVGGraphics2DRuntimeException(ERR_ILLEGAL_BUFFERED_IMAGE_LOOKUP_OP);

        StringBuffer lookupTableBuf[] = new StringBuffer[nComponents];
        for(int i=0; i<nComponents; i++)
            lookupTableBuf[i] = new StringBuffer();

        if(!(lookupTable instanceof ByteLookupTable)){
            int src[] = new int[nComponents];
            int dest[] = new int[nComponents];
            int offset = lookupTable.getOffset();

            // Offsets are used for constrained sources. Therefore,
            // the lookup values should never be used under offset.
            // There is no SVG equivalent for this behavior.
            // These values are mapped to identity.
            for(int i=0; i<offset; i++){
                // Fill in string buffers
                for(int j=0; j<nComponents; j++){
                    // lookupTableBuf[j].append(Integer.toString(i));
                    lookupTableBuf[j].append(doubleString(i/255.));
                    lookupTableBuf[j].append(SPACE);
                }
            }

            for(int i=offset; i<=255; i++){
                // Fill in source array
                for(int j=0; j<nComponents; j++) src[j] = i;

                // Get destination values
                lookupTable.lookupPixel(src, dest);

                // Fill in string buffers
                for(int j=0; j<nComponents; j++){
                    lookupTableBuf[j].append(doubleString(dest[j]/255.));
                    // lookupTableBuf[j].append(Integer.toString(dest[j]));
                    lookupTableBuf[j].append(SPACE);
                }
            }
        }
        else{
            byte src[] = new byte[nComponents];
            byte dest[] = new byte[nComponents];

            int offset = lookupTable.getOffset();

            // Offsets are used for constrained sources. Therefore,
            // the lookup values should never be used under offset.
            // There is no SVG equivalent for this behavior.
            // These values are mapped to identity.
View Full Code Here

      brightenRed = new short[3][];
      brightenRed[0] = brighten;
      brightenRed[1] = lessen;
      brightenRed[2] = lessen;
    }
    LookupTable table = new ShortLookupTable(0, brightenRed);
    LookupOp brightenRedOp = new LookupOp(table, null);

    g2d.drawImage(im, brightenRedOp, x, y);
  // end of drawRedderImage() using LookupOp
View Full Code Here

/**************************** LookupOp support ******************************/

    public static boolean isLookupOpValid(LookupOp lop,
                                          BufferedImage srcImg)
    {
        LookupTable table = lop.getTable();
        int numComps = table.getNumComponents();
        ColorModel srcCM = srcImg.getColorModel();

        if (srcCM instanceof IndexColorModel) {
            throw new
                IllegalArgumentException("LookupOp cannot be "+
View Full Code Here

        // assert rq.lock.isHeldByCurrentThread();
        boolean nonPremult =
            srcImg.getColorModel().hasAlpha() &&
            srcImg.isAlphaPremultiplied();

        LookupTable table = lop.getTable();
        int numBands = table.getNumComponents();
        int offset = table.getOffset();
        int bandLength;
        int bytesPerElem;
        boolean shortData;

        if (table instanceof ShortLookupTable) {
View Full Code Here

        WritableRaster retRaster = null;
        switch (getNativeOpIndex(op.getClass())) {

          case LOOKUP_OP:
            // REMIND: Fix this!
            LookupTable table = ((LookupOp)op).getTable();
            if (table.getOffset() != 0) {
                // Right now the native code doesn't support offsets
                return null;
            }
            if (table instanceof ByteLookupTable) {
                ByteLookupTable bt = (ByteLookupTable) table;
View Full Code Here

        BufferedImage retBI = null;
        switch (getNativeOpIndex(op.getClass())) {

          case LOOKUP_OP:
            // REMIND: Fix this!
            LookupTable table = ((LookupOp)op).getTable();
            if (table.getOffset() != 0) {
                // Right now the native code doesn't support offsets
                return null;
            }
            if (table instanceof ByteLookupTable) {
                ByteLookupTable bt = (ByteLookupTable) table;
View Full Code Here

TOP

Related Classes of java.awt.image.LookupTable

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.