Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I'd like to use Proj(4j) to convert between UTM and Lat/Long coordinates.

I used to use JScience for UTM <-> LatLong conversions like this:

UTM.latLongToUtm(latlong, ReferenceEllipsoid.WGS84);
UTM.utmToLatLong(coordinate, ReferenceEllipsoid.WGS84);

But I would like to accomplish this using Proj4j. So I'm currently having set up two CoordinateReferenceSystems:

CRS_FACTORY.createFromParameters("EPSG:4326", "+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs");
CRS_FACTORY.createFromParameters("?", "+proj=utm +? +zone=?);

Where I don't know how to fill up the ? gaps.

Why do I have to specify a zone-parameter? Is there a way to accomplish the same above in JScience using proj4j?

share|improve this question

If you're using WGS84, for a northern hemisphere zone, concatenate 326 + zone number. For a southern hemisphere zone, concatenate 327 + zone number. The 326 comes from 4326, the code for a 2D WGS84.

So for zone 30N, 32630.

There are a few other drop-first-integer-and-concatenate-zone-number, but none as complete as WGS84. Others, like NAD83, the first zones added follow the same convention but later ones do not.

I should have made this a comment on simplexio's answer--vote for that answer!

share|improve this answer
Thanks a lot, I'd like to upvote both of you, but unfortunately I don't have enough reputation. – implicit_knowledge Sep 13 '12 at 12:39

Newer used JScience, but in PostGIS/FME/Proj4 enviroment it works something like this...

See UTM zones and

You select UTM zone depending which area you want to be moust accurate. For an example if you you zone 35 with data from Asia you will have lot of distortion.

first ? can be EPSG code second ? no idea third is zone

share|improve this answer
Thank you very much. But that means you basically can't because JScience is using some formulas found in ( Defense Mapping Agency Technical Manual 8358.2.) which "automatically" determine the UTM zones. (… JScience UTM) ??? – implicit_knowledge Sep 11 '12 at 13:10
Here's a way to compute the zones from latitude/longitude (…), but I still need to assign a EPSG code. How can I get the code for a specific zone (is there a pattern), or is there a general EPSG code I can use with the -zone attribute? – implicit_knowledge Sep 11 '12 at 13:54
i have seen proj4 string without epsg parts. Have you tried use just "+proj=utm +zone=xx" ? – simplexio Sep 12 '12 at 6:23

Search for "Named Projections" in this web page:

Basically, you should use the strings defined in Proj4js lib folder:

Proj4js comes with a lib/defs folder that contains predefined projections, which can be included in your javascript. If your desired projection is not there, go to, search for your projection and choose to display the proj4js definition string. This can be pasted into your application.

Hope it helps.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.