<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (11.0.4) on Fri Sep 20 12:10:30 CEST 2019 -->
<title>SampleDimension.Builder (Apache SIS 1.0 API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2019-09-20">
<meta name="keywords" content="org.apache.sis.coverage.SampleDimension.Builder class">
<meta name="keywords" content="setName()">
<meta name="keywords" content="setBackground()">
<meta name="keywords" content="addQualitative()">
<meta name="keywords" content="addQuantitative()">
<meta name="keywords" content="categories()">
<meta name="keywords" content="build()">
<meta name="keywords" content="clear()">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../sis.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../jquery/jquery-ui.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../../jquery/jquery-3.3.1.js"></script>
<script type="text/javascript" src="../../../../jquery/jquery-migrate-3.0.1.js"></script>
<script type="text/javascript" src="../../../../jquery/jquery-ui.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="SampleDimension.Builder (Apache SIS 1.0 API)";
        }
    }
    catch(err) {
    }
//-->
var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
var pathtoroot = "../../../../";
var useModuleDirectories = false;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/SampleDimension.Builder.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.apache.sis.coverage</a></div>
<h2 title="Class SampleDimension.Builder" class="title">Class SampleDimension.Builder</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></li>
<li>
<ul class="inheritance">
<li>Builder</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>Enclosing class:</dt>
<dd><a href="SampleDimension.html" title="class in org.apache.sis.coverage">SampleDimension</a></dd>
</dl>
<hr>
<pre>public static class <span class="typeNameLabel">SampleDimension.Builder</span>
extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></pre>
<div class="block">A mutable builder for creating an immutable <a href="SampleDimension.html" title="class in org.apache.sis.coverage"><code>Sample­Dimension</code></a>.
 The following properties can be set:

 <ul>
   <li>An optional name for the <code>Sample­Dimension</code>.</li>
   <li>A single optional category for the background value.</li>
   <li>An arbitrary amount of <cite>qualitative</cite> categories.</li>
   <li>An arbitrary amount of <cite>quantitative</cite> categories.</li>
 </ul>

 A <cite>qualitative category</cite> is a range of sample values associated to a label (not numbers).
 For example 0 = cloud, 1 = sea, 2 = land, <i>etc</i>.
 A <cite>quantitative category</cite> is a range of sample values associated to numbers with units of measurement.
 For example 10 = 1.0°C, 11 = 1.1°C, 12 = 1.2°C, <i>etc</i>.
 Those three kinds of category are created by the following methods:

 <ul>
   <li><a href="#setBackground(java.lang.CharSequence,java.lang.Number)"><code>set­Background(Char­Sequence, Number)</code></a></li>
   <li><a href="#addQualitative(java.lang.CharSequence,org.apache.sis.measure.NumberRange)"><code>add­Qualitative(Char­Sequence, Number­Range)</code></a></li>
   <li><a href="#addQuantitative(java.lang.CharSequence,org.apache.sis.measure.NumberRange,org.opengis.referencing.operation.MathTransform1D,javax.measure.Unit)"><code>add­Quantitative(Char­Sequence, Number­Range, Math­Transform1D, Unit)</code></a></li>
 </ul>

 All other <code>add­Qualitative(…)</code> and <code>add­Quantitative(…)</code> methods are convenience methods delegating
 to above-cited methods. Qualitative and quantitative categories can be mixed in the same <a href="SampleDimension.html" title="class in org.apache.sis.coverage"><code>Sample­Dimension</code></a>,
 provided that their ranges do not overlap.
 After properties have been set, the sample dimension is created by invoking <a href="#build()"><code>build()</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.0</dd>

<p><font size="-1">Defined in the <code>sis-feature</code> module</font></p>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Constructor</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E()">Builder</a></span>()</code></th>
<td class="colLast">
<div class="block">Creates an initially empty builder for a sample dimension.</div>
</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- ========== METHOD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code><a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addQualitative(java.lang.CharSequence,boolean)">addQualitative</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;name,
              boolean&nbsp;sample)</code></th>
<td class="colLast">
<div class="block">Adds a qualitative category for samples of the given boolean value.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code><a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addQualitative(java.lang.CharSequence,byte)">addQualitative</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;name,
              byte&nbsp;sample)</code></th>
<td class="colLast">
<div class="block">Adds a qualitative category for samples of the given tiny (8 bits) integer value.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code><a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addQualitative(java.lang.CharSequence,double)">addQualitative</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;name,
              double&nbsp;sample)</code></th>
<td class="colLast">
<div class="block">Adds a qualitative category for samples of the given double precision floating-point value.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code><a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addQualitative(java.lang.CharSequence,float)">addQualitative</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;name,
              float&nbsp;sample)</code></th>
<td class="colLast">
<div class="block">Adds a qualitative category for samples of the given floating-point value.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code><a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addQualitative(java.lang.CharSequence,int)">addQualitative</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;name,
              int&nbsp;sample)</code></th>
<td class="colLast">
<div class="block">Adds a qualitative category for samples of the given integer value.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addQualitative(java.lang.CharSequence,short)">addQualitative</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;name,
              short&nbsp;sample)</code></th>
<td class="colLast">
<div class="block">Adds a qualitative category for samples of the given short (16 bits) integer value.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code><a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addQualitative(java.lang.CharSequence,java.lang.Number,java.lang.Number)">addQualitative</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;name,
              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink">Number</a>&nbsp;minimum,
              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink">Number</a>&nbsp;maximum)</code></th>
<td class="colLast">
<div class="block">Adds a qualitative category for samples in the given range of values.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code><a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addQualitative(java.lang.CharSequence,org.apache.sis.measure.NumberRange)">addQualitative</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;name,
              <a href="../measure/NumberRange.html" title="class in org.apache.sis.measure">NumberRange</a>&lt;?&gt;&nbsp;samples)</code></th>
<td class="colLast">
<div class="block">Adds a qualitative category for all samples in the specified range of values.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code><a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addQuantitative(java.lang.CharSequence,double,double,javax.measure.Unit)">addQuantitative</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;name,
               double&nbsp;minimum,
               double&nbsp;maximum,
               <a href="http://unitsofmeasurement.github.io/unit-api/site/apidocs/javax/measure/Unit.html?is-external=true" title="class or interface in javax.measure" class="externalLink">Unit</a>&lt;?&gt;&nbsp;units)</code></th>
<td class="colLast">
<div class="block">Adds a quantitative category for values ranging from <code>minimum</code> to <code>maximum</code> inclusive
 in the given units of measurement.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code><a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addQuantitative(java.lang.CharSequence,float,float,javax.measure.Unit)">addQuantitative</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;name,
               float&nbsp;minimum,
               float&nbsp;maximum,
               <a href="http://unitsofmeasurement.github.io/unit-api/site/apidocs/javax/measure/Unit.html?is-external=true" title="class or interface in javax.measure" class="externalLink">Unit</a>&lt;?&gt;&nbsp;units)</code></th>
<td class="colLast">
<div class="block">Adds a quantitative category for values ranging from <code>minimum</code> to <code>maximum</code> inclusive
 in the given units of measurement.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code><a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addQuantitative(java.lang.CharSequence,int,int,double,double,javax.measure.Unit)">addQuantitative</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;name,
               int&nbsp;lower,
               int&nbsp;upper,
               double&nbsp;scale,
               double&nbsp;offset,
               <a href="http://unitsofmeasurement.github.io/unit-api/site/apidocs/javax/measure/Unit.html?is-external=true" title="class or interface in javax.measure" class="externalLink">Unit</a>&lt;?&gt;&nbsp;units)</code></th>
<td class="colLast">
<div class="block">Adds a quantitative category for sample values ranging from <code>lower</code> inclusive to <code>upper</code> exclusive.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code><a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addQuantitative(java.lang.CharSequence,org.apache.sis.measure.NumberRange,org.apache.sis.measure.NumberRange)">addQuantitative</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;name,
               <a href="../measure/NumberRange.html" title="class in org.apache.sis.measure">NumberRange</a>&lt;?&gt;&nbsp;samples,
               <a href="../measure/NumberRange.html" title="class in org.apache.sis.measure">NumberRange</a>&lt;?&gt;&nbsp;converted)</code></th>
<td class="colLast">
<div class="block">Constructs a quantitative category mapping samples to real values in the specified range.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code><a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addQuantitative(java.lang.CharSequence,org.apache.sis.measure.NumberRange,org.opengis.referencing.operation.MathTransform1D,javax.measure.Unit)">addQuantitative</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;name,
               <a href="../measure/NumberRange.html" title="class in org.apache.sis.measure">NumberRange</a>&lt;?&gt;&nbsp;samples,
               <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransform1D.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransform1D</a>&nbsp;toUnits,
               <a href="http://unitsofmeasurement.github.io/unit-api/site/apidocs/javax/measure/Unit.html?is-external=true" title="class or interface in javax.measure" class="externalLink">Unit</a>&lt;?&gt;&nbsp;units)</code></th>
<td class="colLast">
<div class="block">Constructs a quantitative category for all samples in the specified range of values.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code><a href="SampleDimension.html" title="class in org.apache.sis.coverage">SampleDimension</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#build()">build</a></span>()</code></th>
<td class="colLast">
<div class="block">Creates a new sample with the properties defined to this builder.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="Category.html" title="class in org.apache.sis.coverage">Category</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#categories()">categories</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the list of categories added so far.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#clear()">clear</a></span>()</code></th>
<td class="colLast">
<div class="block">Reset this builder to the same state than after construction.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code><a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setBackground(java.lang.CharSequence,java.lang.Number)">setBackground</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;name,
             <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink">Number</a>&nbsp;sample)</code></th>
<td class="colLast">
<div class="block">Adds a qualitative category and marks that category as the background value.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code><a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setName(int)">setName</a></span>&#8203;(int&nbsp;band)</code></th>
<td class="colLast">
<div class="block">Sets an identification of the sample dimension as a band number.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code><a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setName(java.lang.CharSequence)">setName</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;name)</code></th>
<td class="colLast">
<div class="block">Sets an identification of the sample dimension as a character sequence.</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code><a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setName(org.opengis.util.GenericName)">setName</a></span>&#8203;(<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/GenericName.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">GenericName</a>&nbsp;name)</code></th>
<td class="colLast">
<div class="block">Sets an identification of the sample dimension.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang" class="externalLink">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang" class="externalLink">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang" class="externalLink">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang" class="externalLink">get­Class</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang" class="externalLink">hash­Code</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang" class="externalLink">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang" class="externalLink">notify­All</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang" class="externalLink">to­String</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait(long,int)" title="class or interface in java.lang" class="externalLink">wait</a></code></li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a id="&lt;init&gt;()">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>Builder</h4>
<pre>public&nbsp;Builder()</pre>
<div class="block">Creates an initially empty builder for a sample dimension.
 Callers shall invoke at least one <code>add­Foo(…)</code> method before <a href="#build()"><code>build()</code></a>.</div>
</li>
</ul>
</li>
</ul>
</section>
<!-- ============ METHOD DETAIL ========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a id="setName(org.opengis.util.GenericName)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setName</h4>
<pre class="methodSignature">public&nbsp;<a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a>&nbsp;setName&#8203;(<a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/GenericName.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink">GenericName</a>&nbsp;name)</pre>
<div class="block">Sets an identification of the sample dimension.
 This is the value to be returned by <a href="SampleDimension.html#getName()"><code>Sample­Dimension​.get­Name()</code></a>.
 If this method is invoked more than once, then the last specified name prevails
 (previous sample dimension names are discarded).</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - identification of the sample dimension.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>this</code>, for method call chaining.</dd>
</dl>
</li>
</ul>
<a id="setName(java.lang.CharSequence)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setName</h4>
<pre class="methodSignature">public&nbsp;<a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a>&nbsp;setName&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;name)</pre>
<div class="block">Sets an identification of the sample dimension as a character sequence.
 This is a convenience method for creating a <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/GenericName.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink"><code>Generic­Name</code></a> from the given characters.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - identification of the sample dimension.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>this</code>, for method call chaining.</dd>
</dl>
</li>
</ul>
<a id="setName(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setName</h4>
<pre class="methodSignature">public&nbsp;<a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a>&nbsp;setName&#8203;(int&nbsp;band)</pre>
<div class="block">Sets an identification of the sample dimension as a band number.
 This method should be used only when no more descriptive name is available.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>band</code> - sequence identifier of the sample dimension to create.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>this</code>, for method call chaining.</dd>
</dl>
</li>
</ul>
<a id="setBackground(java.lang.CharSequence,java.lang.Number)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setBackground</h4>
<pre class="methodSignature">public&nbsp;<a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a>&nbsp;setBackground&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;name,
                                             <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink">Number</a>&nbsp;sample)</pre>
<div class="block">Adds a qualitative category and marks that category as the background value.
 This is the value to be returned by <a href="SampleDimension.html#getBackground()"><code>Sample­Dimension​.get­Background()</code></a>.
 If this method is invoked more than once, then the last specified value prevails
 (previous values become ordinary qualitative categories).</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the category name as a <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink"><code>String</code></a> or <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/InternationalString.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink"><code>International­String</code></a> object,
                 or <code>null</code> for a default "fill value" name.</dd>
<dd><code>sample</code> - the background value.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>this</code>, for method call chaining.</dd>
</dl>
</li>
</ul>
<a id="addQualitative(java.lang.CharSequence,boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addQualitative</h4>
<pre class="methodSignature">public&nbsp;<a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a>&nbsp;addQualitative&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;name,
                                              boolean&nbsp;sample)</pre>
<div class="block">Adds a qualitative category for samples of the given boolean value.
 The <code>true</code> value is represented by 1 and the <code>false</code> value is represented by 0.

 <div class="note"><b>Implementation note:</b>
 this convenience method delegates to <a href="#addQualitative(java.lang.CharSequence,org.apache.sis.measure.NumberRange)"><code>add­Qualitative(Char­Sequence, Number­Range)</code></a>.</div></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the category name as a <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink"><code>String</code></a> or <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/InternationalString.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink"><code>International­String</code></a> object,
                 or <code>null</code> for a default "no data" name.</dd>
<dd><code>sample</code> - the sample value as a boolean.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>this</code>, for method call chaining.</dd>
</dl>
</li>
</ul>
<a id="addQualitative(java.lang.CharSequence,byte)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addQualitative</h4>
<pre class="methodSignature">public&nbsp;<a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a>&nbsp;addQualitative&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;name,
                                              byte&nbsp;sample)</pre>
<div class="block">Adds a qualitative category for samples of the given tiny (8 bits) integer value.
 The argument is treated as a signed integer (<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Byte.html?is-external=true#MIN_VALUE" title="class or interface in java.lang" class="externalLink">-128</a> to <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Byte.html?is-external=true#MAX_VALUE" title="class or interface in java.lang" class="externalLink">127</a>).

 <div class="note"><b>Implementation note:</b>
 this convenience method delegates to <a href="#addQualitative(java.lang.CharSequence,org.apache.sis.measure.NumberRange)"><code>add­Qualitative(Char­Sequence, Number­Range)</code></a>.</div></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the category name as a <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink"><code>String</code></a> or <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/InternationalString.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink"><code>International­String</code></a> object,
                 or <code>null</code> for a default "no data" name.</dd>
<dd><code>sample</code> - the sample value as an integer.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>this</code>, for method call chaining.</dd>
</dl>
</li>
</ul>
<a id="addQualitative(java.lang.CharSequence,short)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addQualitative</h4>
<pre class="methodSignature">public&nbsp;<a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a>&nbsp;addQualitative&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;name,
                                              short&nbsp;sample)</pre>
<div class="block">Adds a qualitative category for samples of the given short (16 bits) integer value.
 The argument is treated as a signed integer (<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Short.html?is-external=true#MIN_VALUE" title="class or interface in java.lang" class="externalLink">-32768</a> to <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Short.html?is-external=true#MAX_VALUE" title="class or interface in java.lang" class="externalLink">32767</a>).

 <div class="note"><b>Implementation note:</b>
 this convenience method delegates to <a href="#addQualitative(java.lang.CharSequence,org.apache.sis.measure.NumberRange)"><code>add­Qualitative(Char­Sequence, Number­Range)</code></a>.</div></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the category name as a <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink"><code>String</code></a> or <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/InternationalString.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink"><code>International­String</code></a> object,
                 or <code>null</code> for a default "no data" name.</dd>
<dd><code>sample</code> - the sample value as an integer.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>this</code>, for method call chaining.</dd>
</dl>
</li>
</ul>
<a id="addQualitative(java.lang.CharSequence,int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addQualitative</h4>
<pre class="methodSignature">public&nbsp;<a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a>&nbsp;addQualitative&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;name,
                                              int&nbsp;sample)</pre>
<div class="block">Adds a qualitative category for samples of the given integer value.
 The argument is treated as a signed integer (<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true#MIN_VALUE" title="class or interface in java.lang" class="externalLink">-2147483648</a> to <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true#MAX_VALUE" title="class or interface in java.lang" class="externalLink">2147483647</a>).

 <div class="note"><b>Implementation note:</b>
 this convenience method delegates to <a href="#addQualitative(java.lang.CharSequence,org.apache.sis.measure.NumberRange)"><code>add­Qualitative(Char­Sequence, Number­Range)</code></a>.</div></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the category name as a <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink"><code>String</code></a> or <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/InternationalString.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink"><code>International­String</code></a> object,
                 or <code>null</code> for a default "no data" name.</dd>
<dd><code>sample</code> - the sample value as an integer.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>this</code>, for method call chaining.</dd>
</dl>
</li>
</ul>
<a id="addQualitative(java.lang.CharSequence,float)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addQualitative</h4>
<pre class="methodSignature">public&nbsp;<a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a>&nbsp;addQualitative&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;name,
                                              float&nbsp;sample)</pre>
<div class="block">Adds a qualitative category for samples of the given floating-point value.

 <div class="note"><b>Implementation note:</b>
 this convenience method delegates to <a href="#addQualitative(java.lang.CharSequence,org.apache.sis.measure.NumberRange)"><code>add­Qualitative(Char­Sequence, Number­Range)</code></a>.</div></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the category name as a <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink"><code>String</code></a> or <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/InternationalString.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink"><code>International­String</code></a> object,
                 or <code>null</code> for a default "no data" name.</dd>
<dd><code>sample</code> - the sample value as a real number.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>this</code>, for method call chaining.</dd>
</dl>
</li>
</ul>
<a id="addQualitative(java.lang.CharSequence,double)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addQualitative</h4>
<pre class="methodSignature">public&nbsp;<a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a>&nbsp;addQualitative&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;name,
                                              double&nbsp;sample)</pre>
<div class="block">Adds a qualitative category for samples of the given double precision floating-point value.

 <div class="note"><b>Implementation note:</b>
 this convenience method delegates to <a href="#addQualitative(java.lang.CharSequence,org.apache.sis.measure.NumberRange)"><code>add­Qualitative(Char­Sequence, Number­Range)</code></a>.</div></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the category name as a <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink"><code>String</code></a> or <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/InternationalString.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink"><code>International­String</code></a> object,
                 or <code>null</code> for a default "no data" name.</dd>
<dd><code>sample</code> - the sample value as a real number.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>this</code>, for method call chaining.</dd>
</dl>
</li>
</ul>
<a id="addQualitative(java.lang.CharSequence,java.lang.Number,java.lang.Number)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addQualitative</h4>
<pre class="methodSignature">public&nbsp;<a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a>&nbsp;addQualitative&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;name,
                                              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink">Number</a>&nbsp;minimum,
                                              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink">Number</a>&nbsp;maximum)</pre>
<div class="block">Adds a qualitative category for samples in the given range of values.

 <div class="note"><b>Implementation note:</b>
 this convenience method delegates to <a href="#addQualitative(java.lang.CharSequence,org.apache.sis.measure.NumberRange)"><code>add­Qualitative(Char­Sequence, Number­Range)</code></a>.</div></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the category name as a <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink"><code>String</code></a> or <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/InternationalString.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink"><code>International­String</code></a> object,
                  or <code>null</code> for a default "no data" name.</dd>
<dd><code>minimum</code> - the minimum sample value, inclusive.</dd>
<dd><code>maximum</code> - the maximum sample value, inclusive.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>this</code>, for method call chaining.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang" class="externalLink">Illegal­Argument­Exception</a></code> - if the range is empty.</dd>
</dl>
</li>
</ul>
<a id="addQualitative(java.lang.CharSequence,org.apache.sis.measure.NumberRange)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addQualitative</h4>
<pre class="methodSignature">public&nbsp;<a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a>&nbsp;addQualitative&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;name,
                                              <a href="../measure/NumberRange.html" title="class in org.apache.sis.measure">NumberRange</a>&lt;?&gt;&nbsp;samples)</pre>
<div class="block">Adds a qualitative category for all samples in the specified range of values.
 This is the most generic method for adding a qualitative category.
 All other <code>add­Qualitative(name, …)</code> methods are convenience methods delegating their work to this method.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the category name as a <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink"><code>String</code></a> or <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/InternationalString.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink"><code>International­String</code></a> object,
                  or <code>null</code> for a default "no data" name.</dd>
<dd><code>samples</code> - the minimum and maximum sample values in the category.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>this</code>, for method call chaining.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang" class="externalLink">Illegal­Argument­Exception</a></code> - if the given range is empty.</dd>
</dl>
</li>
</ul>
<a id="addQuantitative(java.lang.CharSequence,org.apache.sis.measure.NumberRange,org.apache.sis.measure.NumberRange)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addQuantitative</h4>
<pre class="methodSignature">public&nbsp;<a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a>&nbsp;addQuantitative&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;name,
                                               <a href="../measure/NumberRange.html" title="class in org.apache.sis.measure">NumberRange</a>&lt;?&gt;&nbsp;samples,
                                               <a href="../measure/NumberRange.html" title="class in org.apache.sis.measure">NumberRange</a>&lt;?&gt;&nbsp;converted)</pre>
<div class="block">Constructs a quantitative category mapping samples to real values in the specified range.
 Sample values in the <code>samples</code> range will be mapped to real values in the <code>converted</code> range
 through a linear equation of the form:

 <blockquote><var>measure</var> = <var>sample</var> × <var>scale</var> + <var>offset</var></blockquote>

 where <var>scale</var> and <var>offset</var> coefficients are computed from the ranges supplied in arguments.
 The units of measurement will be taken from the <code>converted</code> range if it is an instance of <a href="../measure/MeasurementRange.html" title="class in org.apache.sis.measure"><code>Measurement­Range</code></a>.

 <p><b>Warning:</b> this method is provided for convenience when the scale and offset factors are not explicitly specified.
 If those factor are available, then the other <code>add­Quantitative(name, samples, …)</code> methods are more reliable.</p>

 <div class="note"><b>Implementation note:</b>
 this convenience method delegates to <a href="#addQuantitative(java.lang.CharSequence,org.apache.sis.measure.NumberRange,org.opengis.referencing.operation.MathTransform1D,javax.measure.Unit)"><code>add­Quantitative(Char­Sequence, Number­Range, Math­Transform1D, Unit)</code></a>.</div></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the category name as a <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink"><code>String</code></a> or <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/InternationalString.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink"><code>International­String</code></a> object.</dd>
<dd><code>samples</code> - the minimum and maximum sample values in the category. Element class is usually
                     <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang" class="externalLink"><code>Integer</code></a>, but <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Float.html?is-external=true" title="class or interface in java.lang" class="externalLink"><code>Float</code></a> and <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang" class="externalLink"><code>Double</code></a> values are accepted as well.</dd>
<dd><code>converted</code> - the range of real values for this category, as an instance of <a href="../measure/MeasurementRange.html" title="class in org.apache.sis.measure"><code>Measurement­Range</code></a>
                     if those values are associated to an unit of measurement.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>this</code>, for method call chaining.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/ClassCastException.html?is-external=true" title="class or interface in java.lang" class="externalLink">Class­Cast­Exception</a></code> - if the range element class is not a <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink"><code>Number</code></a> subclass.</dd>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang" class="externalLink">Illegal­Argument­Exception</a></code> - if the range is invalid.</dd>
</dl>
</li>
</ul>
<a id="addQuantitative(java.lang.CharSequence,float,float,javax.measure.Unit)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addQuantitative</h4>
<pre class="methodSignature">public&nbsp;<a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a>&nbsp;addQuantitative&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;name,
                                               float&nbsp;minimum,
                                               float&nbsp;maximum,
                                               <a href="http://unitsofmeasurement.github.io/unit-api/site/apidocs/javax/measure/Unit.html?is-external=true" title="class or interface in javax.measure" class="externalLink">Unit</a>&lt;?&gt;&nbsp;units)</pre>
<div class="block">Adds a quantitative category for values ranging from <code>minimum</code> to <code>maximum</code> inclusive
 in the given units of measurement. The transfer function is set to identity.

 <div class="note"><b>Implementation note:</b>
 this convenience method delegates to <a href="#addQuantitative(java.lang.CharSequence,org.apache.sis.measure.NumberRange,org.opengis.referencing.operation.MathTransform1D,javax.measure.Unit)"><code>add­Quantitative(Char­Sequence, Number­Range, Math­Transform1D, Unit)</code></a>.</div></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the category name as a <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink"><code>String</code></a> or <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/InternationalString.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink"><code>International­String</code></a> object.</dd>
<dd><code>minimum</code> - the minimum value (inclusive) in the given units.</dd>
<dd><code>maximum</code> - the maximum value (inclusive) in the given units.</dd>
<dd><code>units</code> - the units of measurement.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>this</code>, for method call chaining.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang" class="externalLink">Illegal­Argument­Exception</a></code> - if a value is NaN or if <code>minimum</code> is greater than <code>maximum</code>.</dd>
</dl>
</li>
</ul>
<a id="addQuantitative(java.lang.CharSequence,double,double,javax.measure.Unit)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addQuantitative</h4>
<pre class="methodSignature">public&nbsp;<a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a>&nbsp;addQuantitative&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;name,
                                               double&nbsp;minimum,
                                               double&nbsp;maximum,
                                               <a href="http://unitsofmeasurement.github.io/unit-api/site/apidocs/javax/measure/Unit.html?is-external=true" title="class or interface in javax.measure" class="externalLink">Unit</a>&lt;?&gt;&nbsp;units)</pre>
<div class="block">Adds a quantitative category for values ranging from <code>minimum</code> to <code>maximum</code> inclusive
 in the given units of measurement. The transfer function is set to identity.

 <div class="note"><b>Implementation note:</b>
 this convenience method delegates to <a href="#addQuantitative(java.lang.CharSequence,org.apache.sis.measure.NumberRange,org.opengis.referencing.operation.MathTransform1D,javax.measure.Unit)"><code>add­Quantitative(Char­Sequence, Number­Range, Math­Transform1D, Unit)</code></a>.</div></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the category name as a <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink"><code>String</code></a> or <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/InternationalString.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink"><code>International­String</code></a> object.</dd>
<dd><code>minimum</code> - the minimum value (inclusive) in the given units.</dd>
<dd><code>maximum</code> - the maximum value (inclusive) in the given units.</dd>
<dd><code>units</code> - the units of measurement.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>this</code>, for method call chaining.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang" class="externalLink">Illegal­Argument­Exception</a></code> - if a value is NaN or if <code>minimum</code> is greater than <code>maximum</code>.</dd>
</dl>
</li>
</ul>
<a id="addQuantitative(java.lang.CharSequence,int,int,double,double,javax.measure.Unit)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addQuantitative</h4>
<pre class="methodSignature">public&nbsp;<a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a>&nbsp;addQuantitative&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;name,
                                               int&nbsp;lower,
                                               int&nbsp;upper,
                                               double&nbsp;scale,
                                               double&nbsp;offset,
                                               <a href="http://unitsofmeasurement.github.io/unit-api/site/apidocs/javax/measure/Unit.html?is-external=true" title="class or interface in javax.measure" class="externalLink">Unit</a>&lt;?&gt;&nbsp;units)</pre>
<div class="block">Adds a quantitative category for sample values ranging from <code>lower</code> inclusive to <code>upper</code> exclusive.
 Sample values are converted into real values using the following linear equation:

 <blockquote><var>measure</var> = <var>sample</var> × <var>scale</var> + <var>offset</var></blockquote>

 Results of above conversion are measurements in the units specified by the <code>units</code> argument.

 <div class="note"><b>Implementation note:</b>
 this convenience method delegates to <a href="#addQuantitative(java.lang.CharSequence,org.apache.sis.measure.NumberRange,org.opengis.referencing.operation.MathTransform1D,javax.measure.Unit)"><code>add­Quantitative(Char­Sequence, Number­Range, Math­Transform1D, Unit)</code></a>.</div></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the category name as a <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink"><code>String</code></a> or <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/InternationalString.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink"><code>International­String</code></a> object.</dd>
<dd><code>lower</code> - the lower sample value, inclusive.</dd>
<dd><code>upper</code> - the upper sample value, exclusive.</dd>
<dd><code>scale</code> - the scale value which is multiplied to sample values for the category. Must be different than zero.</dd>
<dd><code>offset</code> - the offset value to add to sample values for this category.</dd>
<dd><code>units</code> - the units of measurement of values after conversion by the scale factor and offset.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>this</code>, for method call chaining.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang" class="externalLink">Illegal­Argument­Exception</a></code> - if <code>lower</code> is not smaller than <code>upper</code>,
         or if <code>scale</code> or <code>offset</code> are not real numbers, or if <code>scale</code> is zero.</dd>
</dl>
</li>
</ul>
<a id="addQuantitative(java.lang.CharSequence,org.apache.sis.measure.NumberRange,org.opengis.referencing.operation.MathTransform1D,javax.measure.Unit)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addQuantitative</h4>
<pre class="methodSignature">public&nbsp;<a href="SampleDimension.Builder.html" title="class in org.apache.sis.coverage">SampleDimension.Builder</a>&nbsp;addQuantitative&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang" class="externalLink">CharSequence</a>&nbsp;name,
                                               <a href="../measure/NumberRange.html" title="class in org.apache.sis.measure">NumberRange</a>&lt;?&gt;&nbsp;samples,
                                               <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/operation/MathTransform1D.html?is-external=true" title="class or interface in org.opengis.referencing.operation" class="externalLink">MathTransform1D</a>&nbsp;toUnits,
                                               <a href="http://unitsofmeasurement.github.io/unit-api/site/apidocs/javax/measure/Unit.html?is-external=true" title="class or interface in javax.measure" class="externalLink">Unit</a>&lt;?&gt;&nbsp;units)</pre>
<div class="block">Constructs a quantitative category for all samples in the specified range of values.
 Sample values (usually integers) will be converted into real values
 (usually floating-point numbers) through the <code>to­Units</code> transform.
 Results of that conversion are measurements in the units specified by the <code>units</code> argument.

 <p>This is the most generic method for adding a quantitative category.
 All other <code>add­Quantitative(name, …)</code> methods are convenience methods delegating their work to this method.</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the category name as a <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink"><code>String</code></a> or <a href="http://www.geoapi.org/3.0/javadoc/org/opengis/util/InternationalString.html?is-external=true" title="class or interface in org.opengis.util" class="externalLink"><code>International­String</code></a> object.</dd>
<dd><code>samples</code> - the minimum and maximum sample values in the category. Element class is usually
                  <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang" class="externalLink"><code>Integer</code></a>, but <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Float.html?is-external=true" title="class or interface in java.lang" class="externalLink"><code>Float</code></a> and <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang" class="externalLink"><code>Double</code></a> types are accepted as well.</dd>
<dd><code>to­Units</code> - the transfer function from sample values to real values in the specified units.</dd>
<dd><code>units</code> - the units of measurement of values after conversion by the transfer function.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>this</code>, for method call chaining.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/ClassCastException.html?is-external=true" title="class or interface in java.lang" class="externalLink">Class­Cast­Exception</a></code> - if the range element class is not a <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink"><code>Number</code></a> subclass.</dd>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang" class="externalLink">Illegal­Argument­Exception</a></code> - if the range is invalid.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../referencing/operation/transform/TransferFunction.html" title="class in org.apache.sis.referencing.operation.transform"><code>Transfer­Function</code></a></dd>
</dl>
</li>
</ul>
<a id="categories()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>categories</h4>
<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="Category.html" title="class in org.apache.sis.coverage">Category</a>&gt;&nbsp;categories()</pre>
<div class="block">Returns the list of categories added so far. The returned list does not support the
 <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true#add(E)" title="class or interface in java.util" class="externalLink"><code>add</code></a> operation, but supports the <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true#remove(int)" title="class or interface in java.util" class="externalLink"><code>remove</code></a> operation.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the current category list, read-only except for the <code>remove</code> operation.</dd>
</dl>
</li>
</ul>
<a id="build()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>build</h4>
<pre class="methodSignature">public&nbsp;<a href="SampleDimension.html" title="class in org.apache.sis.coverage">SampleDimension</a>&nbsp;build()</pre>
<div class="block">Creates a new sample with the properties defined to this builder.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the sample dimension.</dd>
</dl>
</li>
</ul>
<a id="clear()">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>clear</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;clear()</pre>
<div class="block">Reset this builder to the same state than after construction.
 The sample dimension name, background values and all categories are discarded.
 This method can be invoked when the same builder is reused for creating more than one sample dimension.</div>
</li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
</div>
</main>
<!-- ========= END OF CLASS DATA ========= -->
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/SampleDimension.Builder.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small>Copyright &#169; 2010&#x2013;2019 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</footer>
</body>
</html>
