cdm/src/main/java/ucar/unidata/geoloc/projection/proj4/MapMath.java
public static double dmsToRad(double d, double m, double s) {
		if (d >= 0)
			return (d + m/60 + s/3600) * Math.PI / 180.0;
		return (d - m/60 - s/3600) * Math.PI / 180.0;
	}
public static double dmsToRad(double d, double m, double s) {
		if (d >= 0)
			return (d + m/60 + s/3600) * Math.PI / 180.0;
		return (d - m/60 - s/3600) * Math.PI / 180.0;
	}
public static double dmsToRad ( double d , double m , double s ) { if ( d >= 0 ) return ( d + m / 60 + s / 3600 ) * Math . PI / 180.0 ; return ( d - m / 60 - s / 3600 ) * Math . PI / 180.0 ; }
For negative angles, d should be negative, m & s positive.
For negative angles d should be negative m & s positive .