[ https://issues.apache.org/jira/browse/SIS212?page=com.atlassian.jira.plugin.system.issuetabpanels:commenttabpanel&focusedCommentId=15906376#comment15906376
]
Martin Desruisseaux commented on SIS212:

Hello Milinda, and welcome!
For participating to a GSoC, each projects have their own way but for SIS I suggest the following:
* Take inspiration from a SIS task of your choice (SIS212, SIS351, SIS350 or other). You
can also make your own proposal if you wish.
* Start drafting your proposal in the format of your choice (it may be GoogleDoc, GitHub readme
file, ASCII doc, an OpenOffice document, etc.). I suggest to organize the proposal as described
here: http://write.flossmanuals.net/gsocstudentguide/writingaproposal/
* Share the link to your proposal, get feedback from potential mentor, modify your proposal,
_etc._ Many iterations may be necessary. You can ask questions on the SIS developer mailing
list.
* Once ready, submit the proposal to Google.
Before to start the project, it is important that the mentor can see from the proposal that
the student has a good idea of the technical steps required for doing this task. I also recommend
to submit more than one proposal since we do not know in advance which projects will be accepted.
Each student can submit up to 5 proposals to different projects.
> Coordinate operation methods to implement
> 
>
> Key: SIS212
> URL: https://issues.apache.org/jira/browse/SIS212
> Project: Spatial Information Systems
> Issue Type: Task
> Components: Referencing
> Affects Versions: 0.6, 0.7, 0.8
> Reporter: Martin Desruisseaux
> Assignee: Martin Desruisseaux
> Labels: gsoc2016, gsoc2017, java, mentor
> Fix For: 0.6, 0.7, 0.8
>
>
> This is an umbrella task for some coordinate operation methods not yet supported in Apache
SIS. Coordinate operations include _map projections_ (e.g. Transverse Mercator, Lambert Conic
Conformal, _etc._), _datum shifts_ (e.g. transformations from NAD27 to NAD83 in United States),
transformation of vertical coordinates, _etc_. We can of course not list all possible formulas
that we do not support, but this JIRA task lists at least some of the operations listed in
the EPSG guidance notes.
> The main material for this work is the EPSG guidance notes, which can be downloaded freely
from the following site:
> {panel}
> IOGP Publication 37372 – Geomatics Guidance Note number 7, part 2
> Coordinate Conversions and Transformations including Formulas
> http://www.epsg.org/GuidanceNotes
> {panel}
> Google summer of code students interested in this work would need to be reasonably comfortable
with the Java language (but not necessarily with the JDK library at large, since this work
uses relatively few JDK classes outside {{Math}}), and in mathematic. In particular, this
work requires a good understanding of _affine transforms_: their representation as a matrix,
and how to map a term in a formula to a coefficient in the affine transform matrix.
> Apache SIS has one advanced feature which is not easily found in popular geospatial software
or text books: the capability to compute the _derivative_ (or more precisely, the _Jacobian_)
of a transformation at a given point. Implementation of this feature requires the capability
to find the analytic derivative of a nonlinear formula and to simplify it.
> Implementations of those formulas take place in one of the {{org.apache.sis.referencing.operation}}
subpackages ({{projection}} or {{transform}}). Implementations of JUnit test happen partially
in Apache SIS, and partially in the ["conformance module" of the GeoAPI projecthttp://www.geoapi.org/geoapiconformance/index.html],
if possible through the Geospatial Integrity of Geoscience Software (GIGS) tests.

This message was sent by Atlassian JIRA
(v6.3.15#6346)
