public void setProjection(final ProjectionType type, final DistanceUnit unit, final String formula1, final String formula2) {
        this.projectionType = type == null ? ProjectionType.NO_PROJECTION : type;
        this.projectionDistanceUnit = unit == null ? DistanceUnit.getDefaultUnit(false) : unit;
        this.projectionFormula1 = formula1;
        this.projectionFormula2 = formula2;
    }
similar to getGpxId, but includes geocode to be unique across different caches
main/src/main/java/cgeo/geocaching/models/Waypoint.java