Package skyview.survey

# Class Subset

java.lang.Object
skyview.survey.Image
skyview.survey.Subset

All Implemented Interfaces:
  `Serializable`, `Component`

public class Subset extends Image
A image that is a subset of an existing image. Generally this class is expected to be used when we break down a larger image into subimages for sampling purposes. Any action that modifies the image should use the setData or setDataArray methods. Modifying the array returned by getDataArray will not modify the underlying image. E.g., the BoxSmoother should not be run on the subset images but on the parent.

See Also:
  - Serialized Form

## Field Summary

### Fields inherited from class skyview.survey.Image

`data`

## Constructor Summary

Constructors
Constructor
Description
`Subset(Image parent, int x, int y, int nx, int ny)`
Create a two-d subset of a (presumed) 2-d parent.
`Subset(Image parent, int x, int y, int z, int nx, int ny, int nz)`
Create a subset of a parent image.

## Method Summary

Modifier and Type
Method
Description
`void`
`clearData()`
Clear the data array
`double`
`getData(long npix)`
Get a pixels data associated with the image.
`double[]`
`getDataArray()`
Get the data as an array.
`String`
`getDescription()`
Get a description of the object
`void`
`setData(long npix, double newData)`
Set the data associated with the image.
`void`
`setDataArray(double[] newData)`
Set the data array
`static int[][]`
`split(Image parent, int[] index, int nx, int ny)`
Split an index array into subarrays for each subset.
`static Image[]`
`split(Image parent, int nx, int ny)`
Split an image into subsets.

### Methods inherited from class skyview.survey.Image

`getBaseImage, getCenter, getCorners, getDepth, getHeight, getName, getTransformer, getWCS, getWidth, initialize, isTiled, setAccumulate, setName, valid, validate`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### Subset

public Subset(Image parent, int x, int y, int nx, int ny) throws TransformationException
Create a two-d subset of a (presumed) 2-d parent.

Throws:
  `TransformationException`

### Subset

public Subset(Image parent, int x, int y, int z, int nx, int ny, int nz) throws TransformationException
Create a subset of a parent image.

Throws:
  `TransformationException`

## Method Details

### getDescription

public String getDescription()
Get a description of the object

Specified by:
  `getDescription` in interface `Component`
Overrides:
  `getDescription` in class `Image`

### getData

public double getData(long npix)
Get a pixels data associated with the image.

Overrides:
  `getData` in class `Image`

### getDataArray

public double[] getDataArray()
Get the data as an array. Note that for an image this array can be used to modify the image, but that will not be true for the array returned here.

Overrides:
  `getDataArray` in class `Image`

### setData

public void setData(long npix, double newData)
Set the data associated with the image.

Overrides:
  `setData` in class `Image`

### clearData

public void clearData()
Clear the data array

Overrides:
  `clearData` in class `Image`

### setDataArray

public void setDataArray(double[] newData)
Set the data array

Overrides:
  `setDataArray` in class `Image`

### split

public static Image[] split(Image parent, int nx, int ny) throws TransformationException
Split an image into subsets. If the image is too small, just return it/

Throws:
  `TransformationException`

### split

public static int[][] split(Image parent, int[] index, int nx, int ny)
Split an index array into subarrays for each subset. If the image is too small, just return it/