Class DefaultParameterDescriptorGroup

All Implemented Interfaces:
Serializable, Formattable, Deprecable, Lenient­Comparable, General­Parameter­Descriptor, Parameter­Descriptor­Group, Identified­Object

public class DefaultParameterDescriptorGroup extends AbstractParameterDescriptor implements ParameterDescriptorGroup
The definition of a group of related parameters used by an operation method. Default­Parameter­Descriptor­Group instances are immutable and thus thread-safe.

Instantiation

Parameter descriptors are usually predefined by the SIS library and available through the following methods: If nevertheless a Parameter­Descriptor­Group needs to be instantiated directly, then the Parameter­Builder class may make the task easier.

Example

The following example declares the parameters for a Mercator (variant A) projection method valid from 80°S to 84°N on all the longitude range (±180°).
class Mercator {
    static final ParameterDescriptorGroup PARAMETERS;
    static {
        ParameterBuilder builder = new ParameterBuilder();
        builder.setCodeSpace(Citations.EPSG, "EPSG").setRequired(true);
        ParameterDescriptor<?>[] parameters = {
            builder.addName("Latitude of natural origin")    .createBounded( -80,  +84, 0, Units.DEGREE),
            builder.addName("Longitude of natural origin")   .createBounded(-180, +180, 0, Units.DEGREE),
            builder.addName("Scale factor at natural origin").createStrictlyPositive(1, Units.UNITY),
            builder.addName("False easting")                 .create(0, Units.METRE),
            builder.addName("False northing")                .create(0, Units.METRE)
        };
        builder.addIdentifier("9804")                    // Primary key in EPSG database.
               .addName("Mercator (variant A)")          // EPSG name since October 2010.
               .addName("Mercator (1SP)")                // EPSG name prior October 2010.
               .addName(Citations.OGC, "Mercator_1SP");  // Name found in some OGC specifications.
        PARAMETERS = builder.createGroup(parameters);
    }
}
Since:
0.4
See Also: