new Category[] { new Category(
Vocabulary.formatInternational(VocabularyKeys.NODATA),
new Color(0, 0, 0, 0), 0) }, null);
// Wrap the dimension
GridSampleDimension wrappedDim = new WrappedSampleDimension(sampleDim, coverageDim);
// Ensure nodata are correct
double[] noData = wrappedDim.getNoDataValues();
assertEquals(2, noData.length);
assertEquals(noData1, noData[0], DELTA);
assertEquals(noData2, noData[1], DELTA);
// Extract categories
List<Category> categories = wrappedDim.getCategories();
// Ensure NoData Category is present
Category category = categories.get(0);
assertTrue(category.getName().equals(Category.NODATA.getName()));
// Check that it does not contain sampleToGeophisics and that the Range contains only NaN
assertNull(category.getSampleToGeophysics());
assertEquals(category.geophysics(true).getRange().getMinimum(), Double.NaN, DELTA);
assertEquals(category.geophysics(true).getRange().getMaximum(), Double.NaN, DELTA);
// Quantitative nodata category
sampleDim = new GridSampleDimension("original", new Category[] { new Category(
Vocabulary.formatInternational(VocabularyKeys.NODATA), new Color[] { new Color(0,
0, 0, 0) }, NumberRange.create(-9999, -9999), NumberRange.create(-9999,
-9999)) }, null);
// Wrap the dimension
wrappedDim = new WrappedSampleDimension(sampleDim, coverageDim);
// Ensure nodata are correct
noData = wrappedDim.getNoDataValues();
assertEquals(2, noData.length);
assertEquals(noData1, noData[0], DELTA);
assertEquals(noData2, noData[1], DELTA);
// Extract categories
categories = wrappedDim.getCategories();
// Ensure NoData Category is present
category = categories.get(0);
assertTrue(category.getName().equals(Category.NODATA.getName()));