RangeMeaning rm = property(properties, RANGE_MEANING_KEY, RangeMeaning.class);
if (minimum == null && maximum == null && rm == null) {
double min = Double.NEGATIVE_INFINITY;
double max = Double.POSITIVE_INFINITY;
if (Units.isAngular(unit)) {
final UnitConverter fromDegrees = NonSI.DEGREE_ANGLE.getConverterTo(unit.asType(Angle.class));
final AxisDirection dir = AxisDirections.absolute(direction);
if (dir.equals(AxisDirection.NORTH)) {
min = fromDegrees.convert(Latitude.MIN_VALUE);
max = fromDegrees.convert(Latitude.MAX_VALUE);
rm = RangeMeaning.EXACT;
} else if (dir.equals(AxisDirection.EAST)) {
min = fromDegrees.convert(Longitude.MIN_VALUE);
max = fromDegrees.convert(Longitude.MAX_VALUE);
rm = RangeMeaning.WRAPAROUND; // 180°E wraps to 180°W
}
if (min > max) {
final double t = min;
min = max;