[MetaCRS] Proj4js updates
Michael Adair
madair at dmsolutions.ca
Mon Sep 10 10:24:44 PDT 2012
Sorry for crossposting but I suspect there are a lot of Proj4js devs on
the OL list that aren't on the MetaCRS list and I'd like to get their
feedback on this as well.
In any case, as part of getting Proj4js to compile using the Closure
library in advanced mode, there is some cleanup that I would like to do
at the same time. I am proposing the following changes:
1. remove the dynamic loading of defs: this implies that to use Proj4js
you would need to have the 'defs' already loaded in your app before
trying to create the Proj4js.Proj objects. Most app frameworks like
jQuery support AJAX calls that can be used to load defs dynamically if
required otherwise, I think apps typically know what coordinate systems
will be used a priori so they can include the required defs statically.
2. if the library is no longer asynchronous, I suggest we can remove the
callbacks passed to the constructor
3. the projection code gets included at compile time, so you can pick
some or all of the projection code in a build config file. (eg. if you
only need LCC, just include the LCC code in the build). If you don't
know which projection class you need, you can always build with the full
code base.
I've got much of this working now (but not checked in yet) and there is
some internal changes to the code structure but the external interface
remains unchanged, ie. you still call Proj4js.transform() and the
Proj4js.Proj constructors are the same except for removing the optional
callbacks argument.
Comments welcome,
Mike
More information about the MetaCRS
mailing list