com.sun.jna.examples

Class RasterRangesUtils

public class RasterRangesUtils extends Object

Methods that are useful to decompose a raster into a set of rectangles. An occupied pixel has two possible meanings, depending on the raster :

Author: Olivier Chafik

Nested Class Summary
static interfaceRasterRangesUtils.RangesOutput
Abstraction of a sink for ranges.
Method Summary
static booleanoutputOccupiedRanges(Raster raster, RasterRangesUtils.RangesOutput out)
Outputs ranges of occupied pixels.
static booleanoutputOccupiedRanges(int[] pixels, int w, int h, int occupationMask, RasterRangesUtils.RangesOutput out)
Output the occupied values of an integer-pixels image as ranges of contiguous values.
static booleanoutputOccupiedRangesOfBinaryPixels(byte[] binaryBits, int w, int h, RasterRangesUtils.RangesOutput out)
Output the non-null values of a binary image as ranges of contiguous values.

Method Detail

outputOccupiedRanges

public static boolean outputOccupiedRanges(Raster raster, RasterRangesUtils.RangesOutput out)
Outputs ranges of occupied pixels. In a raster that has an alpha layer, a pixel is occupied if its alpha value is not null. In a raster without alpha layer, a pixel is occupied if it is not completely black.

Parameters: raster image to be segmented in non black or non-transparent ranges out destination of the non null ranges

Returns: true if the output succeeded, false otherwise

outputOccupiedRanges

public static boolean outputOccupiedRanges(int[] pixels, int w, int h, int occupationMask, RasterRangesUtils.RangesOutput out)
Output the occupied values of an integer-pixels image as ranges of contiguous values. A pixel is considered occupied if the bitwise AND of its integer value with the provided occupationMask is not null.

Parameters: pixels integer values of the pixels of an image w width of the image (in pixels) h height of the image occupationMask mask used to select which bits are used in a pixel to check its occupied status. 0xff000000 would only take the alpha layer into account, for instance. out where to output all the contiguous ranges of non occupied pixels

Returns: true if the output succeeded, false otherwise

outputOccupiedRangesOfBinaryPixels

public static boolean outputOccupiedRangesOfBinaryPixels(byte[] binaryBits, int w, int h, RasterRangesUtils.RangesOutput out)
Output the non-null values of a binary image as ranges of contiguous values.

Parameters: binaryBits byte-packed binary bits of an image w width of the image (in pixels) h height of the image out

Returns: true if the output succeeded, false otherwise

Copyright © 2007-2009 Timothy Wall. All Rights Reserved.