That's great! Gust restarted with my playground project again. Intil now I have GeoTK involved to define a couple of hardcoded local CRSs (mainly DHDN <-> WGS84). So I hope this may be realized based on SIS, soon.
Since I heavily used Java8 already, I like to use 0.6-jdk8-SNAPSHOT, too. Unfortunately I got a tiny mismatch with my current geotoolkit version: org.apache.sis.internal.util. getIdentifier() got an additional Boolean parameter :-( Do I need a special geotoolkit version to get this combination run? (Let me know, if I should turn over to the geotoolkit mailing list with this problem instead) Dieter -----Ursprüngliche Nachricht----- Von: Martin Desruisseaux [mailto:[email protected]] Gesendet: Mittwoch, 18. März 2015 00:27 An: Apache SIS Betreff: Starting the port the "core" of map projection engine Hello all The framework for handling parameters is about complete. The reason why we need such framework can be seen partially by looking at the parameters of the Mercator projection for example: http://svn.apache.org/repos/asf/sis/trunk/core/sis-referencing/src/main/java/org/apache/sis/internal/referencing/provider/Mercator1SP.java (scroll down to the static initializer) We have different names defined by different authorities (EPSG, OGC, GeoTIFF, Proj.4, NetCDF, ESRI and MapInfo) for the same parameters, we have some deprecated names which are replaced by new ones but still in use (e.g. "Mercator (1SP)" renamed as "Mercator (variant A)"), numerical codes to be needed later for finding information in the database, and other issues not show in this "Mercator1SP.java" example. I'm now starting to port the code which will perform the actual map projection calculations. One particularity of the implementing to come is that we separate map projections in three steps: * A linear normalize transform * The non-linear kernel * A linear denormalize transform So all linear terms of the map projections will be extracted in the normalize/denormalize transforms, leaving only the non-linear core in the middle. We can see this separation in the "NonLinearParameters" class committed today. This separation makes easier to compute derivatives (a distinct SIS feature) and to combine transforms more efficiently. For example it is very common to have a conversion from "radians to degrees" followed by "degrees to radians". Isolating the linear parts of map projections make easier to detect that those conversions cancel each others. A discussion can be found there (please let me know if you have any idea about how to make it clearer): https://builds.apache.org/job/sis-dev/javadoc/org/apache/sis/referencing/operation/projection/package-summary.html Martin
