/** * Constructs a new map projection from the supplied parameters. * * @param parameters The parameter values in standard units. * @throws ParameterNotFoundException if a mandatory parameter is missing. */ protected WinkelTripel( ProjectionMode mode, final ParameterDescriptorGroup descriptors, final ParameterValueGroup parameters) throws ParameterNotFoundException { super(parameters, descriptors.descriptors()); this.descriptors = descriptors; invertible = false; // Compute constants if (mode == ProjectionMode.Winkel) { final Collection<GeneralParameterDescriptor> expected = getParameterDescriptors().descriptors(); final double phi1 = doubleValue(expected, WinkelProvider.STANDARD_PARALLEL_1, parameters); cosphi1 = cos(phi1); } else { cosphi1 = 0; } this.mode = mode; }