sis-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From desruisse...@apache.org
Subject svn commit: r1673222 [1/5] - in /sis/ip-review: ./ rev/09215/ rev/10796/ rev/11372/ rev/20874/
Date Mon, 13 Apr 2015 15:20:45 GMT
Author: desruisseaux
Date: Mon Apr 13 15:20:44 2015
New Revision: 1673222

URL: http://svn.apache.org/r1673222
Log:
Added IP review for LambertConformal projection.

Added:
    sis/ip-review/LambertConformal.xhtml   (with props)
    sis/ip-review/LambertConformal1SP.xhtml   (with props)
    sis/ip-review/LambertConformal2SP.xhtml   (with props)
    sis/ip-review/LambertConformalBelgium.xhtml   (with props)
    sis/ip-review/LambertConformalESRI.xhtml   (with props)
    sis/ip-review/rev/09215/
    sis/ip-review/rev/09215/HEADER.html   (with props)
    sis/ip-review/rev/09215/LambertConformal.xhtml   (with props)
    sis/ip-review/rev/09215/LambertConformal1SP.xhtml   (with props)
    sis/ip-review/rev/09215/LambertConformal2SP.xhtml   (with props)
    sis/ip-review/rev/09215/LambertConformalBelgium.xhtml   (with props)
    sis/ip-review/rev/09215/LambertConformalESRI.xhtml   (with props)
    sis/ip-review/rev/10796/LambertConformal.xhtml   (with props)
    sis/ip-review/rev/10796/LambertConformal1SP.xhtml   (with props)
    sis/ip-review/rev/10796/LambertConformal2SP.xhtml   (with props)
    sis/ip-review/rev/10796/LambertConformalBelgium.xhtml   (with props)
    sis/ip-review/rev/10796/LambertConformalESRI.xhtml   (with props)
    sis/ip-review/rev/11372/
    sis/ip-review/rev/11372/HEADER.html   (with props)
    sis/ip-review/rev/11372/LambertConformal.xhtml   (with props)
    sis/ip-review/rev/11372/LambertConformal1SP.xhtml   (with props)
    sis/ip-review/rev/11372/LambertConformal2SP.xhtml   (with props)
    sis/ip-review/rev/11372/LambertConformalBelgium.xhtml   (with props)
    sis/ip-review/rev/11372/LambertConformalESRI.xhtml   (with props)
    sis/ip-review/rev/20874/LambertConformal.xhtml   (with props)
    sis/ip-review/rev/20874/LambertConformal2SP.xhtml   (with props)
    sis/ip-review/rev/20874/LambertConformalBelgium.xhtml   (with props)
    sis/ip-review/rev/20874/LambertConformalESRI.xhtml   (with props)

Added: sis/ip-review/LambertConformal.xhtml
URL: http://svn.apache.org/viewvc/sis/ip-review/LambertConformal.xhtml?rev=1673222&view=auto
==============================================================================
--- sis/ip-review/LambertConformal.xhtml (added)
+++ sis/ip-review/LambertConformal.xhtml Mon Apr 13 15:20:44 2015
@@ -0,0 +1,71 @@
+<!DOCTYPE html>
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta charset="UTF-8"/>
+    <title>LambertConformal history</title>
+    <style type="text/css" media="all">
+      @import url("./reports.css");
+    </style>
+  </head>
+  <body>
+    <div>
+      <h1>LambertConformal history</h1>
+  <p>Click on the commit message for inspecting the <code>diff</code> and how the code has been rewritten.</p>
+<p><b>Command line:</b></p>
+<blockquote><code>svn log -r31996:1 http://svn.osgeo.org/geotools/trunk/modules/library/referencing/src/main/java/org/geotools/referencing/operation/projection/LambertConformal.java</code></blockquote>
+<table>
+  <tr>
+    <th>Rev.</th>
+    <th>Date</th>
+    <th>Author</th>
+    <th class="last">Message</th>
+  </tr>
+<tr><td class="rev">30641</td><td>2008-06-12</td><td>acuster</td><td>Copyright headers: lib/referencing, this time with feeling (and the el in Toolkit)</td></tr>
+<tr><td class="rev">30639</td><td>2008-06-12</td><td>acuster</td><td>Copyright headers: cleanup library/referencing</td></tr>
+<tr><td class="rev">30521</td><td>2008-06-05</td><td>acuster</td><td>Copyright: Update referencing headers</td></tr>
+<tr><td class="rev">30258</td><td>2008-05-08</td><td>acuster</td><td>Reshuffle the top level repo: drop uDig, move up trunk, tags, and branches.</td></tr>
+<tr><td class="rev">30257</td><td>2008-05-08</td><td>acuster</td><td>Move trunk/gt/ directory contents up to trunk/ and drop gt</td></tr>
+<tr><td class="rev">29955</td><td>2008-04-17</td><td>desruisseaux</td><td>Added a paranoiac check for CRS.transform(CoordinateOperation, ...) working on envelopes crossing axis extremums. Fixed a NoSuchElementException in MosaicImageReader when the requested region has no tiles. Fixed a NullPointerException in MosaicImageWriter when the allowed memory is smaller than the area of the smallest tile.</td></tr>
+<tr><td class="rev">29723</td><td>2008-03-27</td><td>desruisseaux</td><td>Added serialVersionIUD in MapProjection with values computed from the 2.4.1 release for cross-version compatibility. NewZealandMapGrid now creates Complex object in method body on the assumption that modern compilers can allocate on stack. Provides a way to reinitialize the warnings for every MapProjections in a JVM. Formatting.</td></tr>
+<tr><td class="rev">29711</td><td>2008-03-25</td><td>desruisseaux</td><td>In MapProjection, provide more information in the logged warning (especially the projection name) in order to compensate for the loss of stack trace. In subclasses, replaced "Math." occurences by a static import for readability (there is a lot of sin(x), cos(x), sqrt(x) etc. calls in those classes). Also replaced sqrt(x*x + y*y) by hypot(x,y) and (exp(x)-exp(-x))/2 by sinh(x) which are new functions in Java 5 (hopefully more accurate and/or faster). Applied some Java 5 language syntax (generic types and @Override annotation).</td></tr>
+<tr><td class="rev">28922</td><td>2008-01-24</td><td>acuster</td><td>Bump the (at)since version to 2.5 since WKTParser was cut from 2.4</td></tr>
+<tr><td class="rev">28540</td><td>2007-12-29</td><td>acuster</td><td>Hide buttons which are not yet used</td></tr>
+<tr><td class="rev">27575</td><td>2007-10-22</td><td>desruisseaux</td><td>Converted Java source files from ISO-LATIN-1 encoding to UTF-8 (GEOT-1516).</td></tr>
+<tr><td class="rev">25485</td><td>2007-05-11</td><td>desruisseaux</td><td>Added special cases for 'x' and 'y' axis names.</td></tr>
+<tr><td class="rev">22474</td><td>2006-10-31</td><td>desruisseaux</td><td>Added a test script for Lambert Azimuthal Equal Area (actually Rueben's work). Bug fixes and minor cleaning in the projection package.</td></tr>
+<tr><td class="rev">22327</td><td>2006-10-23</td><td>desruisseaux</td><td>GEOT-982: regroup 'module', 'plugin', 'ext' and 'unsupported' in a common directory.</td></tr>
+<tr><td class="rev">22315</td><td>2006-10-22</td><td>desruisseaux</td><td>Reorganisation of directory tree structure (GEOT-982) phase 1: moved 'src' to 'src/main/java'.</td></tr>
+<tr><td class="rev">22295</td><td>2006-10-20</td><td>desruisseaux</td><td>Added Lambert Azimuthal Equal Area projection. Various minor cleaning in other projection related code.</td></tr>
+<tr><td class="rev">20874</td><td>2006-08-07</td><td class="unav">jgarnett</td><td><a href="rev/20874/LambertConformal.xhtml">ip review</a></td></tr>
+<tr><td class="rev">20539</td><td>2006-07-14</td><td>desruisseaux</td><td>Relicensed the Proj.4 derived work under LGPL as permitted by Frank Warmerdam on geotools-devel mailing list on June 21, 2006.</td></tr>
+<tr><td class="rev">17672</td><td>2006-01-19</td><td>desruisseaux</td><td>Added @source tag.</td></tr>
+<tr><td class="rev">17660</td><td>2006-01-18</td><td>desruisseaux</td><td>Fixed SVN attributes, including the addition of URL attribute.</td></tr>
+<tr><td class="rev">17241</td><td>2005-12-09</td><td>desruisseaux</td><td>Initial round of MapProjection constructors simplification (GEOT-786)</td></tr>
+<tr><td class="rev">16983</td><td>2005-11-25</td><td>desruisseaux</td><td>Replaced references to static fields and methods of CitationImpl.* by Citations.*</td></tr>
+<tr><td class="rev">16205</td><td>2005-10-11</td><td>desruisseaux</td><td>Cleaned javadoc warning. More work done on Maven 2 configuration (GEOT-691)</td></tr>
+<tr><td class="rev">15350</td><td>2005-08-16</td><td>desruisseaux</td><td>Merged the 'split-main' branch to trunk (GEOT-662)</td></tr>
+<tr><td class="rev">15256</td><td>2005-08-09</td><td>desruisseaux</td><td>Extraction of referencing module from main</td></tr>
+<tr><td class="rev">15255</td><td>2005-08-09</td><td>desruisseaux</td><td>Prepare branch for splitting main</td></tr>
+<tr><td class="rev">14834</td><td>2005-07-20</td><td>desruisseaux</td><td>Reorganized I18N resources</td></tr>
+<tr><td class="rev">14581</td><td>2005-06-22</td><td>desruisseaux</td><td>Implemented South-Orientated transverse mercator / more GEOT-589 work</td></tr>
+<tr><td class="rev">13925</td><td>2005-05-30</td><td>desruisseaux</td><td>Added @since javadoc tag</td></tr>
+<tr><td class="rev">13922</td><td>2005-05-29</td><td>desruisseaux</td><td>Renaming of remainding GeoAPI implementations. Renaming is now finished.</td></tr>
+<tr><td class="rev">13853</td><td>2005-05-26</td><td>desruisseaux</td><td>Bug fix: arrays must be NamedIndentifier[], because it implements two interfaces</td></tr>
+<tr><td class="rev">13836</td><td>2005-05-26</td><td>desruisseaux</td><td>Added 'Default' suffix to some CRS implementations: partial work</td></tr>
+<tr><td class="rev">13773</td><td>2005-05-24</td><td>desruisseaux</td><td>Removed old metadata implementations (they are now renamed with 'Impl' suffix) / Use OGC citation instead of OPEN_GIS</td></tr>
+<tr><td class="rev">13752</td><td>2005-05-23</td><td>desruisseaux</td><td>Added the 'Impl' suffix to direct implementations of all metadata interfaces; deprecated the old implementations (not yet deleted).</td></tr>
+<tr><td class="rev">12020</td><td>2005-03-11</td><td>desruisseaux</td><td>First working version of Resampler2D port (side effect: GEOT-390 fix)</td></tr>
+<tr><td class="rev">11372</td><td>2005-02-14</td><td class="unav">rschulz</td><td><a href="rev/11372/LambertConformal.xhtml">javadoc updates</a></td></tr>
+<tr><td class="rev">11101</td><td>2005-02-04</td><td>desruisseaux</td><td>Renamed MapProjection.Provider as AbstractProvider</td></tr>
+<tr><td class="rev">11074</td><td>2005-02-03</td><td>desruisseaux</td><td>Revisited CRSFactory.createProjectedCRS(...) API</td></tr>
+<tr><td class="rev">11001</td><td>2005-02-02</td><td>desruisseaux</td><td>Fixed wrong encoding in main/src</td></tr>
+<tr><td class="rev">10796</td><td>2005-01-28</td><td class="unav">dzwiers</td><td><a href="rev/10796/LambertConformal.xhtml">imports cleaned</a></td></tr>
+<tr><td class="rev">9504</td><td>2004-12-05</td><td class="unav">rschulz</td><td><a href="rev/10796/LambertConformal.xhtml">added a 2SP provider with ESRI parameters</a></td></tr>
+<tr><td class="rev">9357</td><td>2004-11-30</td><td class="unav">rschulz</td><td><a href="rev/10796/LambertConformal.xhtml">made standard_parallel_2 an optional parameter</a></td></tr>
+<tr><td class="rev">9266</td><td>2004-11-23</td><td>desruisseaux</td><td>Last WKT tuning; parsing and formatting should now be functional</td></tr>
+<tr><td class="rev">9220</td><td>2004-11-21</td><td>desruisseaux</td><td>WKT bug fixes</td></tr>
+<tr><td class="rev">9215</td><td>2004-11-20</td><td class="unav">rschulz</td><td><a href="rev/09215/LambertConformal.xhtml">ported to geoapi referencing api</a></td></tr>
+</table>
+    </div>
+  </body>
+</html>

Propchange: sis/ip-review/LambertConformal.xhtml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: sis/ip-review/LambertConformal.xhtml
------------------------------------------------------------------------------
    svn:mime-type = text/html

Added: sis/ip-review/LambertConformal1SP.xhtml
URL: http://svn.apache.org/viewvc/sis/ip-review/LambertConformal1SP.xhtml?rev=1673222&view=auto
==============================================================================
--- sis/ip-review/LambertConformal1SP.xhtml (added)
+++ sis/ip-review/LambertConformal1SP.xhtml Mon Apr 13 15:20:44 2015
@@ -0,0 +1,67 @@
+<!DOCTYPE html>
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta charset="UTF-8"/>
+    <title>LambertConformal1SP history</title>
+    <style type="text/css" media="all">
+      @import url("./reports.css");
+    </style>
+  </head>
+  <body>
+    <div>
+      <h1>LambertConformal1SP history</h1>
+  <p>Click on the commit message for inspecting the <code>diff</code> and how the code has been rewritten.</p>
+<p><b>Command line:</b></p>
+<blockquote><code>svn log -r31996:1 http://svn.osgeo.org/geotools/trunk/modules/library/referencing/src/main/java/org/geotools/referencing/operation/projection/LambertConformal1SP.java</code></blockquote>
+<table>
+  <tr>
+    <th>Rev.</th>
+    <th>Date</th>
+    <th>Author</th>
+    <th class="last">Message</th>
+  </tr>
+<tr><td class="rev">30641</td><td>2008-06-12</td><td>acuster</td><td>Copyright headers: lib/referencing, this time with feeling (and the el in Toolkit)</td></tr>
+<tr><td class="rev">30639</td><td>2008-06-12</td><td>acuster</td><td>Copyright headers: cleanup library/referencing</td></tr>
+<tr><td class="rev">30521</td><td>2008-06-05</td><td>acuster</td><td>Copyright: Update referencing headers</td></tr>
+<tr><td class="rev">30258</td><td>2008-05-08</td><td>acuster</td><td>Reshuffle the top level repo: drop uDig, move up trunk, tags, and branches.</td></tr>
+<tr><td class="rev">30257</td><td>2008-05-08</td><td>acuster</td><td>Move trunk/gt/ directory contents up to trunk/ and drop gt</td></tr>
+<tr><td class="rev">29723</td><td>2008-03-27</td><td>desruisseaux</td><td>Added serialVersionIUD in MapProjection with values computed from the 2.4.1 release for cross-version compatibility. NewZealandMapGrid now creates Complex object in method body on the assumption that modern compilers can allocate on stack. Provides a way to reinitialize the warnings for every MapProjections in a JVM. Formatting.</td></tr>
+<tr><td class="rev">29711</td><td>2008-03-25</td><td>desruisseaux</td><td>In MapProjection, provide more information in the logged warning (especially the projection name) in order to compensate for the loss of stack trace. In subclasses, replaced "Math." occurences by a static import for readability (there is a lot of sin(x), cos(x), sqrt(x) etc. calls in those classes). Also replaced sqrt(x*x + y*y) by hypot(x,y) and (exp(x)-exp(-x))/2 by sinh(x) which are new functions in Java 5 (hopefully more accurate and/or faster). Applied some Java 5 language syntax (generic types and @Override annotation).</td></tr>
+<tr><td class="rev">28922</td><td>2008-01-24</td><td>acuster</td><td>Bump the (at)since version to 2.5 since WKTParser was cut from 2.4</td></tr>
+<tr><td class="rev">28540</td><td>2007-12-29</td><td>acuster</td><td>Hide buttons which are not yet used</td></tr>
+<tr><td class="rev">24384</td><td>2007-02-14</td><td>desruisseaux</td><td>GEOT-1160: First working implementation of AbstractAuthorityFactory.find(IdentifiedObject). This includes a package-privated AuthorityFactoryProxy class, together with many fix in the code base in order to get CRS.equalsIgnoreCase to work in the ProjectedCRS case.</td></tr>
+<tr><td class="rev">24333</td><td>2007-02-10</td><td>desruisseaux</td><td>GEOT-786: Rearrange projection constructors and providers, especially in orthographic and stereographic projection.</td></tr>
+<tr><td class="rev">22327</td><td>2006-10-23</td><td>desruisseaux</td><td>GEOT-982: regroup 'module', 'plugin', 'ext' and 'unsupported' in a common directory.</td></tr>
+<tr><td class="rev">22315</td><td>2006-10-22</td><td>desruisseaux</td><td>Reorganisation of directory tree structure (GEOT-982) phase 1: moved 'src' to 'src/main/java'.</td></tr>
+<tr><td class="rev">20539</td><td>2006-07-14</td><td>desruisseaux</td><td>Relicensed the Proj.4 derived work under LGPL as permitted by Frank Warmerdam on geotools-devel mailing list on June 21, 2006.</td></tr>
+<tr><td class="rev">17672</td><td>2006-01-19</td><td>desruisseaux</td><td>Added @source tag.</td></tr>
+<tr><td class="rev">17660</td><td>2006-01-18</td><td>desruisseaux</td><td>Fixed SVN attributes, including the addition of URL attribute.</td></tr>
+<tr><td class="rev">17241</td><td>2005-12-09</td><td>desruisseaux</td><td>Initial round of MapProjection constructors simplification (GEOT-786)</td></tr>
+<tr><td class="rev">16983</td><td>2005-11-25</td><td>desruisseaux</td><td>Replaced references to static fields and methods of CitationImpl.* by Citations.*</td></tr>
+<tr><td class="rev">16205</td><td>2005-10-11</td><td>desruisseaux</td><td>Cleaned javadoc warning. More work done on Maven 2 configuration (GEOT-691)</td></tr>
+<tr><td class="rev">15350</td><td>2005-08-16</td><td>desruisseaux</td><td>Merged the 'split-main' branch to trunk (GEOT-662)</td></tr>
+<tr><td class="rev">15256</td><td>2005-08-09</td><td>desruisseaux</td><td>Extraction of referencing module from main</td></tr>
+<tr><td class="rev">15255</td><td>2005-08-09</td><td>desruisseaux</td><td>Prepare branch for splitting main</td></tr>
+<tr><td class="rev">14834</td><td>2005-07-20</td><td>desruisseaux</td><td>Reorganized I18N resources</td></tr>
+<tr><td class="rev">14581</td><td>2005-06-22</td><td>desruisseaux</td><td>Implemented South-Orientated transverse mercator / more GEOT-589 work</td></tr>
+<tr><td class="rev">13925</td><td>2005-05-30</td><td>desruisseaux</td><td>Added @since javadoc tag</td></tr>
+<tr><td class="rev">13922</td><td>2005-05-29</td><td>desruisseaux</td><td>Renaming of remainding GeoAPI implementations. Renaming is now finished.</td></tr>
+<tr><td class="rev">13853</td><td>2005-05-26</td><td>desruisseaux</td><td>Bug fix: arrays must be NamedIndentifier[], because it implements two interfaces</td></tr>
+<tr><td class="rev">13836</td><td>2005-05-26</td><td>desruisseaux</td><td>Added 'Default' suffix to some CRS implementations: partial work</td></tr>
+<tr><td class="rev">13773</td><td>2005-05-24</td><td>desruisseaux</td><td>Removed old metadata implementations (they are now renamed with 'Impl' suffix) / Use OGC citation instead of OPEN_GIS</td></tr>
+<tr><td class="rev">13752</td><td>2005-05-23</td><td>desruisseaux</td><td>Added the 'Impl' suffix to direct implementations of all metadata interfaces; deprecated the old implementations (not yet deleted).</td></tr>
+<tr><td class="rev">12020</td><td>2005-03-11</td><td>desruisseaux</td><td>First working version of Resampler2D port (side effect: GEOT-390 fix)</td></tr>
+<tr><td class="rev">11372</td><td>2005-02-14</td><td class="unav">rschulz</td><td><a href="rev/11372/LambertConformal1SP.xhtml">javadoc updates</a></td></tr>
+<tr><td class="rev">11101</td><td>2005-02-04</td><td>desruisseaux</td><td>Renamed MapProjection.Provider as AbstractProvider</td></tr>
+<tr><td class="rev">11074</td><td>2005-02-03</td><td>desruisseaux</td><td>Revisited CRSFactory.createProjectedCRS(...) API</td></tr>
+<tr><td class="rev">11001</td><td>2005-02-02</td><td>desruisseaux</td><td>Fixed wrong encoding in main/src</td></tr>
+<tr><td class="rev">10796</td><td>2005-01-28</td><td class="unav">dzwiers</td><td><a href="rev/10796/LambertConformal1SP.xhtml">imports cleaned</a></td></tr>
+<tr><td class="rev">9504</td><td>2004-12-05</td><td class="unav">rschulz</td><td><a href="rev/10796/LambertConformal1SP.xhtml">added a 2SP provider with ESRI parameters</a></td></tr>
+<tr><td class="rev">9357</td><td>2004-11-30</td><td class="unav">rschulz</td><td><a href="rev/10796/LambertConformal1SP.xhtml">made standard_parallel_2 an optional parameter</a></td></tr>
+<tr><td class="rev">9266</td><td>2004-11-23</td><td>desruisseaux</td><td>Last WKT tuning; parsing and formatting should now be functional</td></tr>
+<tr><td class="rev">9220</td><td>2004-11-21</td><td>desruisseaux</td><td>WKT bug fixes</td></tr>
+<tr><td class="rev">9215</td><td>2004-11-20</td><td class="unav">rschulz</td><td><a href="rev/09215/LambertConformal1SP.xhtml">ported to geoapi referencing api</a></td></tr>
+</table>
+    </div>
+  </body>
+</html>

Propchange: sis/ip-review/LambertConformal1SP.xhtml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: sis/ip-review/LambertConformal1SP.xhtml
------------------------------------------------------------------------------
    svn:mime-type = text/html

Added: sis/ip-review/LambertConformal2SP.xhtml
URL: http://svn.apache.org/viewvc/sis/ip-review/LambertConformal2SP.xhtml?rev=1673222&view=auto
==============================================================================
--- sis/ip-review/LambertConformal2SP.xhtml (added)
+++ sis/ip-review/LambertConformal2SP.xhtml Mon Apr 13 15:20:44 2015
@@ -0,0 +1,68 @@
+<!DOCTYPE html>
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta charset="UTF-8"/>
+    <title>LambertConformal2SP history</title>
+    <style type="text/css" media="all">
+      @import url("./reports.css");
+    </style>
+  </head>
+  <body>
+    <div>
+      <h1>LambertConformal2SP history</h1>
+  <p>Click on the commit message for inspecting the <code>diff</code> and how the code has been rewritten.</p>
+<p><b>Command line:</b></p>
+<blockquote><code>svn log -r31996:1 http://svn.osgeo.org/geotools/trunk/modules/library/referencing/src/main/java/org/geotools/referencing/operation/projection/LambertConformal2SP.java</code></blockquote>
+<table>
+  <tr>
+    <th>Rev.</th>
+    <th>Date</th>
+    <th>Author</th>
+    <th class="last">Message</th>
+  </tr>
+<tr><td class="rev">30641</td><td>2008-06-12</td><td>acuster</td><td>Copyright headers: lib/referencing, this time with feeling (and the el in Toolkit)</td></tr>
+<tr><td class="rev">30639</td><td>2008-06-12</td><td>acuster</td><td>Copyright headers: cleanup library/referencing</td></tr>
+<tr><td class="rev">30521</td><td>2008-06-05</td><td>acuster</td><td>Copyright: Update referencing headers</td></tr>
+<tr><td class="rev">30258</td><td>2008-05-08</td><td>acuster</td><td>Reshuffle the top level repo: drop uDig, move up trunk, tags, and branches.</td></tr>
+<tr><td class="rev">30257</td><td>2008-05-08</td><td>acuster</td><td>Move trunk/gt/ directory contents up to trunk/ and drop gt</td></tr>
+<tr><td class="rev">29723</td><td>2008-03-27</td><td>desruisseaux</td><td>Added serialVersionIUD in MapProjection with values computed from the 2.4.1 release for cross-version compatibility. NewZealandMapGrid now creates Complex object in method body on the assumption that modern compilers can allocate on stack. Provides a way to reinitialize the warnings for every MapProjections in a JVM. Formatting.</td></tr>
+<tr><td class="rev">29711</td><td>2008-03-25</td><td>desruisseaux</td><td>In MapProjection, provide more information in the logged warning (especially the projection name) in order to compensate for the loss of stack trace. In subclasses, replaced "Math." occurences by a static import for readability (there is a lot of sin(x), cos(x), sqrt(x) etc. calls in those classes). Also replaced sqrt(x*x + y*y) by hypot(x,y) and (exp(x)-exp(-x))/2 by sinh(x) which are new functions in Java 5 (hopefully more accurate and/or faster). Applied some Java 5 language syntax (generic types and @Override annotation).</td></tr>
+<tr><td class="rev">28922</td><td>2008-01-24</td><td>acuster</td><td>Bump the (at)since version to 2.5 since WKTParser was cut from 2.4</td></tr>
+<tr><td class="rev">28540</td><td>2007-12-29</td><td>acuster</td><td>Hide buttons which are not yet used</td></tr>
+<tr><td class="rev">24384</td><td>2007-02-14</td><td>desruisseaux</td><td>GEOT-1160: First working implementation of AbstractAuthorityFactory.find(IdentifiedObject). This includes a package-privated AuthorityFactoryProxy class, together with many fix in the code base in order to get CRS.equalsIgnoreCase to work in the ProjectedCRS case.</td></tr>
+<tr><td class="rev">24333</td><td>2007-02-10</td><td>desruisseaux</td><td>GEOT-786: Rearrange projection constructors and providers, especially in orthographic and stereographic projection.</td></tr>
+<tr><td class="rev">22327</td><td>2006-10-23</td><td>desruisseaux</td><td>GEOT-982: regroup 'module', 'plugin', 'ext' and 'unsupported' in a common directory.</td></tr>
+<tr><td class="rev">22315</td><td>2006-10-22</td><td>desruisseaux</td><td>Reorganisation of directory tree structure (GEOT-982) phase 1: moved 'src' to 'src/main/java'.</td></tr>
+<tr><td class="rev">20874</td><td>2006-08-07</td><td class="unav">jgarnett</td><td><a href="rev/20874/LambertConformal2SP.xhtml">ip review</a></td></tr>
+<tr><td class="rev">20539</td><td>2006-07-14</td><td>desruisseaux</td><td>Relicensed the Proj.4 derived work under LGPL as permitted by Frank Warmerdam on geotools-devel mailing list on June 21, 2006.</td></tr>
+<tr><td class="rev">17672</td><td>2006-01-19</td><td>desruisseaux</td><td>Added @source tag.</td></tr>
+<tr><td class="rev">17660</td><td>2006-01-18</td><td>desruisseaux</td><td>Fixed SVN attributes, including the addition of URL attribute.</td></tr>
+<tr><td class="rev">17241</td><td>2005-12-09</td><td>desruisseaux</td><td>Initial round of MapProjection constructors simplification (GEOT-786)</td></tr>
+<tr><td class="rev">16983</td><td>2005-11-25</td><td>desruisseaux</td><td>Replaced references to static fields and methods of CitationImpl.* by Citations.*</td></tr>
+<tr><td class="rev">16205</td><td>2005-10-11</td><td>desruisseaux</td><td>Cleaned javadoc warning. More work done on Maven 2 configuration (GEOT-691)</td></tr>
+<tr><td class="rev">15350</td><td>2005-08-16</td><td>desruisseaux</td><td>Merged the 'split-main' branch to trunk (GEOT-662)</td></tr>
+<tr><td class="rev">15256</td><td>2005-08-09</td><td>desruisseaux</td><td>Extraction of referencing module from main</td></tr>
+<tr><td class="rev">15255</td><td>2005-08-09</td><td>desruisseaux</td><td>Prepare branch for splitting main</td></tr>
+<tr><td class="rev">14834</td><td>2005-07-20</td><td>desruisseaux</td><td>Reorganized I18N resources</td></tr>
+<tr><td class="rev">14581</td><td>2005-06-22</td><td>desruisseaux</td><td>Implemented South-Orientated transverse mercator / more GEOT-589 work</td></tr>
+<tr><td class="rev">13925</td><td>2005-05-30</td><td>desruisseaux</td><td>Added @since javadoc tag</td></tr>
+<tr><td class="rev">13922</td><td>2005-05-29</td><td>desruisseaux</td><td>Renaming of remainding GeoAPI implementations. Renaming is now finished.</td></tr>
+<tr><td class="rev">13853</td><td>2005-05-26</td><td>desruisseaux</td><td>Bug fix: arrays must be NamedIndentifier[], because it implements two interfaces</td></tr>
+<tr><td class="rev">13836</td><td>2005-05-26</td><td>desruisseaux</td><td>Added 'Default' suffix to some CRS implementations: partial work</td></tr>
+<tr><td class="rev">13773</td><td>2005-05-24</td><td>desruisseaux</td><td>Removed old metadata implementations (they are now renamed with 'Impl' suffix) / Use OGC citation instead of OPEN_GIS</td></tr>
+<tr><td class="rev">13752</td><td>2005-05-23</td><td>desruisseaux</td><td>Added the 'Impl' suffix to direct implementations of all metadata interfaces; deprecated the old implementations (not yet deleted).</td></tr>
+<tr><td class="rev">12020</td><td>2005-03-11</td><td>desruisseaux</td><td>First working version of Resampler2D port (side effect: GEOT-390 fix)</td></tr>
+<tr><td class="rev">11372</td><td>2005-02-14</td><td class="unav">rschulz</td><td><a href="rev/11372/LambertConformal2SP.xhtml">javadoc updates</a></td></tr>
+<tr><td class="rev">11101</td><td>2005-02-04</td><td>desruisseaux</td><td>Renamed MapProjection.Provider as AbstractProvider</td></tr>
+<tr><td class="rev">11074</td><td>2005-02-03</td><td>desruisseaux</td><td>Revisited CRSFactory.createProjectedCRS(...) API</td></tr>
+<tr><td class="rev">11001</td><td>2005-02-02</td><td>desruisseaux</td><td>Fixed wrong encoding in main/src</td></tr>
+<tr><td class="rev">10796</td><td>2005-01-28</td><td class="unav">dzwiers</td><td><a href="rev/10796/LambertConformal2SP.xhtml">imports cleaned</a></td></tr>
+<tr><td class="rev">9504</td><td>2004-12-05</td><td class="unav">rschulz</td><td><a href="rev/10796/LambertConformal2SP.xhtml">added a 2SP provider with ESRI parameters</a></td></tr>
+<tr><td class="rev">9357</td><td>2004-11-30</td><td class="unav">rschulz</td><td><a href="rev/10796/LambertConformal2SP.xhtml">made standard_parallel_2 an optional parameter</a></td></tr>
+<tr><td class="rev">9266</td><td>2004-11-23</td><td>desruisseaux</td><td>Last WKT tuning; parsing and formatting should now be functional</td></tr>
+<tr><td class="rev">9220</td><td>2004-11-21</td><td>desruisseaux</td><td>WKT bug fixes</td></tr>
+<tr><td class="rev">9215</td><td>2004-11-20</td><td class="unav">rschulz</td><td><a href="rev/09215/LambertConformal2SP.xhtml">ported to geoapi referencing api</a></td></tr>
+</table>
+    </div>
+  </body>
+</html>

Propchange: sis/ip-review/LambertConformal2SP.xhtml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: sis/ip-review/LambertConformal2SP.xhtml
------------------------------------------------------------------------------
    svn:mime-type = text/html

Added: sis/ip-review/LambertConformalBelgium.xhtml
URL: http://svn.apache.org/viewvc/sis/ip-review/LambertConformalBelgium.xhtml?rev=1673222&view=auto
==============================================================================
--- sis/ip-review/LambertConformalBelgium.xhtml (added)
+++ sis/ip-review/LambertConformalBelgium.xhtml Mon Apr 13 15:20:44 2015
@@ -0,0 +1,68 @@
+<!DOCTYPE html>
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta charset="UTF-8"/>
+    <title>LambertConformalBelgium history</title>
+    <style type="text/css" media="all">
+      @import url("./reports.css");
+    </style>
+  </head>
+  <body>
+    <div>
+      <h1>LambertConformalBelgium history</h1>
+  <p>Click on the commit message for inspecting the <code>diff</code> and how the code has been rewritten.</p>
+<p><b>Command line:</b></p>
+<blockquote><code>svn log -r31996:1 http://svn.osgeo.org/geotools/trunk/modules/library/referencing/src/main/java/org/geotools/referencing/operation/projection/LambertConformalBelgium.java</code></blockquote>
+<table>
+  <tr>
+    <th>Rev.</th>
+    <th>Date</th>
+    <th>Author</th>
+    <th class="last">Message</th>
+  </tr>
+<tr><td class="rev">30641</td><td>2008-06-12</td><td>acuster</td><td>Copyright headers: lib/referencing, this time with feeling (and the el in Toolkit)</td></tr>
+<tr><td class="rev">30639</td><td>2008-06-12</td><td>acuster</td><td>Copyright headers: cleanup library/referencing</td></tr>
+<tr><td class="rev">30521</td><td>2008-06-05</td><td>acuster</td><td>Copyright: Update referencing headers</td></tr>
+<tr><td class="rev">30258</td><td>2008-05-08</td><td>acuster</td><td>Reshuffle the top level repo: drop uDig, move up trunk, tags, and branches.</td></tr>
+<tr><td class="rev">30257</td><td>2008-05-08</td><td>acuster</td><td>Move trunk/gt/ directory contents up to trunk/ and drop gt</td></tr>
+<tr><td class="rev">29723</td><td>2008-03-27</td><td>desruisseaux</td><td>Added serialVersionIUD in MapProjection with values computed from the 2.4.1 release for cross-version compatibility. NewZealandMapGrid now creates Complex object in method body on the assumption that modern compilers can allocate on stack. Provides a way to reinitialize the warnings for every MapProjections in a JVM. Formatting.</td></tr>
+<tr><td class="rev">29711</td><td>2008-03-25</td><td>desruisseaux</td><td>In MapProjection, provide more information in the logged warning (especially the projection name) in order to compensate for the loss of stack trace. In subclasses, replaced "Math." occurences by a static import for readability (there is a lot of sin(x), cos(x), sqrt(x) etc. calls in those classes). Also replaced sqrt(x*x + y*y) by hypot(x,y) and (exp(x)-exp(-x))/2 by sinh(x) which are new functions in Java 5 (hopefully more accurate and/or faster). Applied some Java 5 language syntax (generic types and @Override annotation).</td></tr>
+<tr><td class="rev">28922</td><td>2008-01-24</td><td>acuster</td><td>Bump the (at)since version to 2.5 since WKTParser was cut from 2.4</td></tr>
+<tr><td class="rev">28540</td><td>2007-12-29</td><td>acuster</td><td>Hide buttons which are not yet used</td></tr>
+<tr><td class="rev">24384</td><td>2007-02-14</td><td>desruisseaux</td><td>GEOT-1160: First working implementation of AbstractAuthorityFactory.find(IdentifiedObject). This includes a package-privated AuthorityFactoryProxy class, together with many fix in the code base in order to get CRS.equalsIgnoreCase to work in the ProjectedCRS case.</td></tr>
+<tr><td class="rev">24333</td><td>2007-02-10</td><td>desruisseaux</td><td>GEOT-786: Rearrange projection constructors and providers, especially in orthographic and stereographic projection.</td></tr>
+<tr><td class="rev">22327</td><td>2006-10-23</td><td>desruisseaux</td><td>GEOT-982: regroup 'module', 'plugin', 'ext' and 'unsupported' in a common directory.</td></tr>
+<tr><td class="rev">22315</td><td>2006-10-22</td><td>desruisseaux</td><td>Reorganisation of directory tree structure (GEOT-982) phase 1: moved 'src' to 'src/main/java'.</td></tr>
+<tr><td class="rev">20874</td><td>2006-08-07</td><td class="unav">jgarnett</td><td><a href="rev/20874/LambertConformalBelgium.xhtml">ip review</a></td></tr>
+<tr><td class="rev">20539</td><td>2006-07-14</td><td>desruisseaux</td><td>Relicensed the Proj.4 derived work under LGPL as permitted by Frank Warmerdam on geotools-devel mailing list on June 21, 2006.</td></tr>
+<tr><td class="rev">17672</td><td>2006-01-19</td><td>desruisseaux</td><td>Added @source tag.</td></tr>
+<tr><td class="rev">17660</td><td>2006-01-18</td><td>desruisseaux</td><td>Fixed SVN attributes, including the addition of URL attribute.</td></tr>
+<tr><td class="rev">17241</td><td>2005-12-09</td><td>desruisseaux</td><td>Initial round of MapProjection constructors simplification (GEOT-786)</td></tr>
+<tr><td class="rev">16983</td><td>2005-11-25</td><td>desruisseaux</td><td>Replaced references to static fields and methods of CitationImpl.* by Citations.*</td></tr>
+<tr><td class="rev">16205</td><td>2005-10-11</td><td>desruisseaux</td><td>Cleaned javadoc warning. More work done on Maven 2 configuration (GEOT-691)</td></tr>
+<tr><td class="rev">15350</td><td>2005-08-16</td><td>desruisseaux</td><td>Merged the 'split-main' branch to trunk (GEOT-662)</td></tr>
+<tr><td class="rev">15256</td><td>2005-08-09</td><td>desruisseaux</td><td>Extraction of referencing module from main</td></tr>
+<tr><td class="rev">15255</td><td>2005-08-09</td><td>desruisseaux</td><td>Prepare branch for splitting main</td></tr>
+<tr><td class="rev">14834</td><td>2005-07-20</td><td>desruisseaux</td><td>Reorganized I18N resources</td></tr>
+<tr><td class="rev">14581</td><td>2005-06-22</td><td>desruisseaux</td><td>Implemented South-Orientated transverse mercator / more GEOT-589 work</td></tr>
+<tr><td class="rev">13925</td><td>2005-05-30</td><td>desruisseaux</td><td>Added @since javadoc tag</td></tr>
+<tr><td class="rev">13922</td><td>2005-05-29</td><td>desruisseaux</td><td>Renaming of remainding GeoAPI implementations. Renaming is now finished.</td></tr>
+<tr><td class="rev">13853</td><td>2005-05-26</td><td>desruisseaux</td><td>Bug fix: arrays must be NamedIndentifier[], because it implements two interfaces</td></tr>
+<tr><td class="rev">13836</td><td>2005-05-26</td><td>desruisseaux</td><td>Added 'Default' suffix to some CRS implementations: partial work</td></tr>
+<tr><td class="rev">13773</td><td>2005-05-24</td><td>desruisseaux</td><td>Removed old metadata implementations (they are now renamed with 'Impl' suffix) / Use OGC citation instead of OPEN_GIS</td></tr>
+<tr><td class="rev">13752</td><td>2005-05-23</td><td>desruisseaux</td><td>Added the 'Impl' suffix to direct implementations of all metadata interfaces; deprecated the old implementations (not yet deleted).</td></tr>
+<tr><td class="rev">12020</td><td>2005-03-11</td><td>desruisseaux</td><td>First working version of Resampler2D port (side effect: GEOT-390 fix)</td></tr>
+<tr><td class="rev">11372</td><td>2005-02-14</td><td class="unav">rschulz</td><td><a href="rev/11372/LambertConformalBelgium.xhtml">javadoc updates</a></td></tr>
+<tr><td class="rev">11101</td><td>2005-02-04</td><td>desruisseaux</td><td>Renamed MapProjection.Provider as AbstractProvider</td></tr>
+<tr><td class="rev">11074</td><td>2005-02-03</td><td>desruisseaux</td><td>Revisited CRSFactory.createProjectedCRS(...) API</td></tr>
+<tr><td class="rev">11001</td><td>2005-02-02</td><td>desruisseaux</td><td>Fixed wrong encoding in main/src</td></tr>
+<tr><td class="rev">10796</td><td>2005-01-28</td><td class="unav">dzwiers</td><td><a href="rev/10796/LambertConformalBelgium.xhtml">imports cleaned</a></td></tr>
+<tr><td class="rev">9504</td><td>2004-12-05</td><td class="unav">rschulz</td><td><a href="rev/10796/LambertConformalBelgium.xhtml">added a 2SP provider with ESRI parameters</a></td></tr>
+<tr><td class="rev">9357</td><td>2004-11-30</td><td class="unav">rschulz</td><td><a href="rev/10796/LambertConformalBelgium.xhtml">made standard_parallel_2 an optional parameter</a></td></tr>
+<tr><td class="rev">9266</td><td>2004-11-23</td><td>desruisseaux</td><td>Last WKT tuning; parsing and formatting should now be functional</td></tr>
+<tr><td class="rev">9220</td><td>2004-11-21</td><td>desruisseaux</td><td>WKT bug fixes</td></tr>
+<tr><td class="rev">9215</td><td>2004-11-20</td><td class="unav">rschulz</td><td><a href="rev/09215/LambertConformalBelgium.xhtml">ported to geoapi referencing api</a></td></tr>
+</table>
+    </div>
+  </body>
+</html>

Propchange: sis/ip-review/LambertConformalBelgium.xhtml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: sis/ip-review/LambertConformalBelgium.xhtml
------------------------------------------------------------------------------
    svn:mime-type = text/html

Added: sis/ip-review/LambertConformalESRI.xhtml
URL: http://svn.apache.org/viewvc/sis/ip-review/LambertConformalESRI.xhtml?rev=1673222&view=auto
==============================================================================
--- sis/ip-review/LambertConformalESRI.xhtml (added)
+++ sis/ip-review/LambertConformalESRI.xhtml Mon Apr 13 15:20:44 2015
@@ -0,0 +1,68 @@
+<!DOCTYPE html>
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta charset="UTF-8"/>
+    <title>LambertConformalESRI history</title>
+    <style type="text/css" media="all">
+      @import url("./reports.css");
+    </style>
+  </head>
+  <body>
+    <div>
+      <h1>LambertConformalESRI history</h1>
+  <p>Click on the commit message for inspecting the <code>diff</code> and how the code has been rewritten.</p>
+<p><b>Command line:</b></p>
+<blockquote><code>svn log -r31996:1 http://svn.osgeo.org/geotools/trunk/modules/library/referencing/src/main/java/org/geotools/referencing/operation/projection/LambertConformalESRI.java</code></blockquote>
+<table>
+  <tr>
+    <th>Rev.</th>
+    <th>Date</th>
+    <th>Author</th>
+    <th class="last">Message</th>
+  </tr>
+<tr><td class="rev">30641</td><td>2008-06-12</td><td>acuster</td><td>Copyright headers: lib/referencing, this time with feeling (and the el in Toolkit)</td></tr>
+<tr><td class="rev">30639</td><td>2008-06-12</td><td>acuster</td><td>Copyright headers: cleanup library/referencing</td></tr>
+<tr><td class="rev">30521</td><td>2008-06-05</td><td>acuster</td><td>Copyright: Update referencing headers</td></tr>
+<tr><td class="rev">30258</td><td>2008-05-08</td><td>acuster</td><td>Reshuffle the top level repo: drop uDig, move up trunk, tags, and branches.</td></tr>
+<tr><td class="rev">30257</td><td>2008-05-08</td><td>acuster</td><td>Move trunk/gt/ directory contents up to trunk/ and drop gt</td></tr>
+<tr><td class="rev">29723</td><td>2008-03-27</td><td>desruisseaux</td><td>Added serialVersionIUD in MapProjection with values computed from the 2.4.1 release for cross-version compatibility. NewZealandMapGrid now creates Complex object in method body on the assumption that modern compilers can allocate on stack. Provides a way to reinitialize the warnings for every MapProjections in a JVM. Formatting.</td></tr>
+<tr><td class="rev">29711</td><td>2008-03-25</td><td>desruisseaux</td><td>In MapProjection, provide more information in the logged warning (especially the projection name) in order to compensate for the loss of stack trace. In subclasses, replaced "Math." occurences by a static import for readability (there is a lot of sin(x), cos(x), sqrt(x) etc. calls in those classes). Also replaced sqrt(x*x + y*y) by hypot(x,y) and (exp(x)-exp(-x))/2 by sinh(x) which are new functions in Java 5 (hopefully more accurate and/or faster). Applied some Java 5 language syntax (generic types and @Override annotation).</td></tr>
+<tr><td class="rev">28922</td><td>2008-01-24</td><td>acuster</td><td>Bump the (at)since version to 2.5 since WKTParser was cut from 2.4</td></tr>
+<tr><td class="rev">28540</td><td>2007-12-29</td><td>acuster</td><td>Hide buttons which are not yet used</td></tr>
+<tr><td class="rev">24384</td><td>2007-02-14</td><td>desruisseaux</td><td>GEOT-1160: First working implementation of AbstractAuthorityFactory.find(IdentifiedObject). This includes a package-privated AuthorityFactoryProxy class, together with many fix in the code base in order to get CRS.equalsIgnoreCase to work in the ProjectedCRS case.</td></tr>
+<tr><td class="rev">24333</td><td>2007-02-10</td><td>desruisseaux</td><td>GEOT-786: Rearrange projection constructors and providers, especially in orthographic and stereographic projection.</td></tr>
+<tr><td class="rev">22327</td><td>2006-10-23</td><td>desruisseaux</td><td>GEOT-982: regroup 'module', 'plugin', 'ext' and 'unsupported' in a common directory.</td></tr>
+<tr><td class="rev">22315</td><td>2006-10-22</td><td>desruisseaux</td><td>Reorganisation of directory tree structure (GEOT-982) phase 1: moved 'src' to 'src/main/java'.</td></tr>
+<tr><td class="rev">20874</td><td>2006-08-07</td><td class="unav">jgarnett</td><td><a href="rev/20874/LambertConformalESRI.xhtml">ip review</a></td></tr>
+<tr><td class="rev">20539</td><td>2006-07-14</td><td>desruisseaux</td><td>Relicensed the Proj.4 derived work under LGPL as permitted by Frank Warmerdam on geotools-devel mailing list on June 21, 2006.</td></tr>
+<tr><td class="rev">17672</td><td>2006-01-19</td><td>desruisseaux</td><td>Added @source tag.</td></tr>
+<tr><td class="rev">17660</td><td>2006-01-18</td><td>desruisseaux</td><td>Fixed SVN attributes, including the addition of URL attribute.</td></tr>
+<tr><td class="rev">17241</td><td>2005-12-09</td><td>desruisseaux</td><td>Initial round of MapProjection constructors simplification (GEOT-786)</td></tr>
+<tr><td class="rev">16983</td><td>2005-11-25</td><td>desruisseaux</td><td>Replaced references to static fields and methods of CitationImpl.* by Citations.*</td></tr>
+<tr><td class="rev">16205</td><td>2005-10-11</td><td>desruisseaux</td><td>Cleaned javadoc warning. More work done on Maven 2 configuration (GEOT-691)</td></tr>
+<tr><td class="rev">15350</td><td>2005-08-16</td><td>desruisseaux</td><td>Merged the 'split-main' branch to trunk (GEOT-662)</td></tr>
+<tr><td class="rev">15256</td><td>2005-08-09</td><td>desruisseaux</td><td>Extraction of referencing module from main</td></tr>
+<tr><td class="rev">15255</td><td>2005-08-09</td><td>desruisseaux</td><td>Prepare branch for splitting main</td></tr>
+<tr><td class="rev">14834</td><td>2005-07-20</td><td>desruisseaux</td><td>Reorganized I18N resources</td></tr>
+<tr><td class="rev">14581</td><td>2005-06-22</td><td>desruisseaux</td><td>Implemented South-Orientated transverse mercator / more GEOT-589 work</td></tr>
+<tr><td class="rev">13925</td><td>2005-05-30</td><td>desruisseaux</td><td>Added @since javadoc tag</td></tr>
+<tr><td class="rev">13922</td><td>2005-05-29</td><td>desruisseaux</td><td>Renaming of remainding GeoAPI implementations. Renaming is now finished.</td></tr>
+<tr><td class="rev">13853</td><td>2005-05-26</td><td>desruisseaux</td><td>Bug fix: arrays must be NamedIndentifier[], because it implements two interfaces</td></tr>
+<tr><td class="rev">13836</td><td>2005-05-26</td><td>desruisseaux</td><td>Added 'Default' suffix to some CRS implementations: partial work</td></tr>
+<tr><td class="rev">13773</td><td>2005-05-24</td><td>desruisseaux</td><td>Removed old metadata implementations (they are now renamed with 'Impl' suffix) / Use OGC citation instead of OPEN_GIS</td></tr>
+<tr><td class="rev">13752</td><td>2005-05-23</td><td>desruisseaux</td><td>Added the 'Impl' suffix to direct implementations of all metadata interfaces; deprecated the old implementations (not yet deleted).</td></tr>
+<tr><td class="rev">12020</td><td>2005-03-11</td><td>desruisseaux</td><td>First working version of Resampler2D port (side effect: GEOT-390 fix)</td></tr>
+<tr><td class="rev">11372</td><td>2005-02-14</td><td class="unav">rschulz</td><td><a href="rev/11372/LambertConformalESRI.xhtml">javadoc updates</a></td></tr>
+<tr><td class="rev">11101</td><td>2005-02-04</td><td>desruisseaux</td><td>Renamed MapProjection.Provider as AbstractProvider</td></tr>
+<tr><td class="rev">11074</td><td>2005-02-03</td><td>desruisseaux</td><td>Revisited CRSFactory.createProjectedCRS(...) API</td></tr>
+<tr><td class="rev">11001</td><td>2005-02-02</td><td>desruisseaux</td><td>Fixed wrong encoding in main/src</td></tr>
+<tr><td class="rev">10796</td><td>2005-01-28</td><td class="unav">dzwiers</td><td><a href="rev/10796/LambertConformalESRI.xhtml">imports cleaned</a></td></tr>
+<tr><td class="rev">9504</td><td>2004-12-05</td><td class="unav">rschulz</td><td><a href="rev/10796/LambertConformalESRI.xhtml">added a 2SP provider with ESRI parameters</a></td></tr>
+<tr><td class="rev">9357</td><td>2004-11-30</td><td class="unav">rschulz</td><td><a href="rev/10796/LambertConformalESRI.xhtml">made standard_parallel_2 an optional parameter</a></td></tr>
+<tr><td class="rev">9266</td><td>2004-11-23</td><td>desruisseaux</td><td>Last WKT tuning; parsing and formatting should now be functional</td></tr>
+<tr><td class="rev">9220</td><td>2004-11-21</td><td>desruisseaux</td><td>WKT bug fixes</td></tr>
+<tr><td class="rev">9215</td><td>2004-11-20</td><td class="unav">rschulz</td><td><a href="rev/09215/LambertConformalESRI.xhtml">ported to geoapi referencing api</a></td></tr>
+</table>
+    </div>
+  </body>
+</html>

Propchange: sis/ip-review/LambertConformalESRI.xhtml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: sis/ip-review/LambertConformalESRI.xhtml
------------------------------------------------------------------------------
    svn:mime-type = text/html

Added: sis/ip-review/rev/09215/HEADER.html
URL: http://svn.apache.org/viewvc/sis/ip-review/rev/09215/HEADER.html?rev=1673222&view=auto
==============================================================================
--- sis/ip-review/rev/09215/HEADER.html (added)
+++ sis/ip-review/rev/09215/HEADER.html Mon Apr 13 15:20:44 2015
@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta charset="UTF-8"/>
+    <title>Revision 9215</title>
+  </head>
+  <body>
+    <div>
+      <h1>Revision 9215</h1>
+<table>
+  <tr><td><b>Author:</b></td><td>rschulz</td></tr>
+  <tr><td><b>Date:</b></td><td>2004-11-20</td></tr>
+  <tr><td><b>Message:</b></td><td>ported to geoapi referencing api</td></tr>
+</table>
+    </div>
+  </body>
+</html>

Propchange: sis/ip-review/rev/09215/HEADER.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: sis/ip-review/rev/09215/HEADER.html
------------------------------------------------------------------------------
    svn:mime-type = text/html

Added: sis/ip-review/rev/09215/LambertConformal.xhtml
URL: http://svn.apache.org/viewvc/sis/ip-review/rev/09215/LambertConformal.xhtml?rev=1673222&view=auto
==============================================================================
--- sis/ip-review/rev/09215/LambertConformal.xhtml (added)
+++ sis/ip-review/rev/09215/LambertConformal.xhtml Mon Apr 13 15:20:44 2015
@@ -0,0 +1,524 @@
+<!DOCTYPE html>
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta charset="UTF-8"/>
+    <title>LambertConformal changes for revisions 9214:9215</title>
+    <style type="text/css" media="all">
+      @import url("../../reports.css");
+    </style>
+  </head>
+  <body>
+    <div>
+      <h1>LambertConformal changes for revisions 9214:9215</h1>
+<p>
+  This commit appears as a new addition because the committer forgot to use the <code>svn copy</code> command, but
+  that class exited at least 5 years before this commit. The commit message said <cite>"ported to geoapi referencing api"</cite>.
+  Ports to GeoAPI referencing API were forced by changes in the <code>org.opengis.*</code> interfaces.
+  Reverting such changes cause compilation failures, which are fixed by redoing the same changes.
+</p><p>
+  Furthermore this class become quite different in Apache SIS because of the separation between linear and non-linear terms
+  (all linear terms moved to normalization / denormalization affine transforms).
+</p>
+<p><b>Command line:</b></p>
+<blockquote><code>svn diff --extensions "--unified --ignore-space-change --ignore-all-space --ignore-eol-style" -r9214:9215 http://svn.osgeo.org/geotools/trunk/modules/library/referencing/src/main/java/org/geotools/referencing/operation/projection/LambertConformal.java</code></blockquote>
+<table class="changes">
+<tr><th>Revision 9214</th><th>Revision 9215</th></tr>
+<tr><td><pre></pre></td>
+<td><pre><span class="add">/*</span>
+<span class="add"> * Geotools - OpenSource mapping toolkit</span>
+<span class="add"> * (C) 2003, 2004 Geotools Project Managment Committee (PMC)</span>
+<span class="add"> * (C) 2001, Institut de Recherche pour le Développement</span>
+<span class="add"> * (C) 1999, Fisheries and Oceans Canada</span>
+<span class="add"> *</span>
+<span class="add"> *    This library is free software; you can redistribute it and/or</span>
+<span class="add"> *    modify it under the terms of the GNU Lesser General Public</span>
+<span class="add"> *    License as published by the Free Software Foundation; either</span>
+<span class="add"> *    version 2.1 of the License, or (at your option) any later version.</span>
+<span class="add"> *</span>
+<span class="add"> *    This library is distributed in the hope that it will be useful,</span>
+<span class="add"> *    but WITHOUT ANY WARRANTY; without even the implied warranty of</span>
+<span class="add"> *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU</span>
+<span class="add"> *    Lesser General Public License for more details.</span>
+<span class="add"> *</span>
+<span class="add"> *    You should have received a copy of the GNU Lesser General Public</span>
+<span class="add"> *    License along with this library; if not, write to the Free Software</span>
+<span class="add"> *    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
+<span class="add"> *</span>
+<span class="add"> *</span>
+<span class="add"> *    This package contains formulas from the PROJ package of USGS.</span>
+<span class="add"> *    USGS's work is fully acknowledged here.</span>
+<span class="add"> */</span>
+<span class="add">package org.geotools.referencing.operation.projection;</span>
+<span class="add"></span>
+<span class="add">// J2SE dependencies and extensions</span>
+<span class="add">import java.util.Collection;</span>
+<span class="add">import java.awt.geom.Point2D;</span>
+<span class="add">import javax.units.NonSI;</span>
+<span class="add"></span>
+<span class="add">// OpenGIS dependencies</span>
+<span class="add">import org.opengis.parameter.ParameterDescriptor;</span>
+<span class="add">import org.opengis.parameter.ParameterValueGroup;</span>
+<span class="add">import org.opengis.parameter.ParameterDescriptorGroup;</span>
+<span class="add">import org.opengis.parameter.ParameterNotFoundException;</span>
+<span class="add">import org.opengis.referencing.operation.MathTransform;</span>
+<span class="add"></span>
+<span class="add">// Geotools dependencies</span>
+<span class="add">import org.geotools.measure.Latitude;</span>
+<span class="add">import org.geotools.referencing.Identifier;</span>
+<span class="add">import org.geotools.metadata.citation.Citation;</span>
+<span class="add">import org.geotools.resources.cts.ResourceKeys;</span>
+<span class="add">import org.geotools.resources.cts.Resources;</span>
+<span class="add"></span>
+<span class="add">/**</span>
+<span class="add"> * Lambert Conical Conformal Projection.  Areas and shapes are deformed</span>
+<span class="add"> * as one moves away from standard parallels.  The angles are true in</span>
+<span class="add"> * a limited area.  This projection is used for the charts of North America.</span>
+<span class="add"> * It uses a default central latitude of 40°N.</span>
+<span class="add"> * &lt;br&gt;&lt;br&gt;</span>
+<span class="add"> *</span>
+<span class="add"> * This implementation provides transforms for three cases of the lambert conic</span>
+<span class="add"> * conformal projection:</span>
+<span class="add"> * &lt;ul&gt;</span>
+<span class="add"> *   &lt;li&gt;&lt;code&gt;Lambert_Conformal_Conic_1SP&lt;/code&gt; (EPSG code 9801)&lt;/li&gt;</span>
+<span class="add"> *   &lt;li&gt;&lt;code&gt;Lambert_Conformal_Conic_2SP&lt;/code&gt; (EPSG code 9802)&lt;/li&gt;</span>
+<span class="add"> *   &lt;li&gt;&lt;code&gt;Lambert_Conic_Conformal_2SP_Belgium&lt;/code&gt; (EPSG code 9803)&lt;/li&gt;</span>
+<span class="add"> * &lt;/ul&gt;</span>
+<span class="add"> *</span>
+<span class="add"> * For the 1SP case the latitude of origin is used as the standard parallel (SP).</span>
+<span class="add"> * To use a 1SP with a latitude of origin different from the SP, use the 2SP</span>
+<span class="add"> * and set both the SP1 and SP2 to the single SP.</span>
+<span class="add"> * &lt;br&gt;&lt;br&gt;</span>
+<span class="add"> *</span>
+<span class="add"> * &lt;strong&gt;References:&lt;/strong&gt;&lt;ul&gt;</span>
+<span class="add"> *   &lt;li&gt;John P. Snyder (Map Projections - A Working Manual,&lt;br&gt;</span>
+<span class="add"> *       U.S. Geological Survey Professional Paper 1395, 1987)&lt;/li&gt;</span>
+<span class="add"> *   &lt;li&gt;"Coordinate Conversions and Transformations including Formulas",&lt;br&gt;</span>
+<span class="add"> *       EPSG Guidence Note Number 7, Version 19.&lt;/li&gt;</span>
+<span class="add"> * &lt;/ul&gt;</span>
+<span class="add"> *</span>
+<span class="add"> * @see &lt;A HREF="http://mathworld.wolfram.com/LambertConformalConicProjection.html"&gt;Lambert conformal conic projection on MathWorld&lt;/A&gt;</span>
+<span class="add"> * @see &lt;A HREF="http://www.remotesensing.org/geotiff/proj_list/lambert_conic_conformal_1sp.html"&gt;lambert_conic_conformal_1sp&lt;/A&gt;</span>
+<span class="add"> * @see &lt;A HREF="http://www.remotesensing.org/geotiff/proj_list/lambert_conic_conformal_2sp.html"&gt;lambert_conic_conformal_2sp&lt;/A&gt;</span>
+<span class="add"> * @see &lt;A HREF="http://www.remotesensing.org/geotiff/proj_list/lambert_conic_conformal_2sp_belgium.html"&gt;lambert_conic_conformal_2sp_belgium&lt;/A&gt;</span>
+<span class="add"> *</span>
+<span class="add"> * @version $Id$</span>
+<span class="add"> * @author André Gosselin</span>
+<span class="add"> * @author Martin Desruisseaux</span>
+<span class="add"> * @author Rueben Schulz</span>
+<span class="add"> */</span>
+<span class="add">public class LambertConformal extends MapProjection{</span>
+<span class="add">    /**</span>
+<span class="add">     * Constant for the belgium 2SP case. This is 29.2985 seconds, given</span>
+<span class="add">     * here in radians.</span>
+<span class="add">     */</span>
+<span class="add">    private static final double BELGE_A = 0.00014204313635987700;</span>
+<span class="add"></span>
+<span class="add">    /**</span>
+<span class="add">     * Standards parallels in radians, for {@link #getParameterValues} implementation.</span>
+<span class="add">     */</span>
+<span class="add">    protected final double phi1, phi2;</span>
+<span class="add"></span>
+<span class="add">    /**</span>
+<span class="add">     * Internal variables for computation.</span>
+<span class="add">     */</span>
+<span class="add">    private final double n,F,rho0;</span>
+<span class="add"></span>
+<span class="add">    /**</span>
+<span class="add">     * &lt;code&gt;true&lt;/code&gt; for 2SP, or &lt;code&gt;false&lt;/code&gt; for 1SP projection.</span>
+<span class="add">     */</span>
+<span class="add">    private final boolean sp2;</span>
+<span class="add"></span>
+<span class="add">    /**</span>
+<span class="add">     * &lt;code&gt;true&lt;/code&gt; for Belgium 2SP.</span>
+<span class="add">     */</span>
+<span class="add">    private final boolean belgium;</span>
+<span class="add"></span>
+<span class="add"></span>
+<span class="add">    /**</span>
+<span class="add">     * The {@link MathTransformProvider} for a {@link LambertConformal} 1SP projection.</span>
+<span class="add">     *</span>
+<span class="add">     * @see MathTransformFactory</span>
+<span class="add">     *</span>
+<span class="add">     * @version $Id$</span>
+<span class="add">     * @author Martin Desruisseaux</span>
+<span class="add">     * @author Rueben Schulz</span>
+<span class="add">     */</span>
+<span class="add">    public static final class Provider1SP extends Provider {</span>
+<span class="add">        /**</span>
+<span class="add">         * The parameters group.</span>
+<span class="add">         */</span>
+<span class="add">        static final ParameterDescriptorGroup PARAMETERS = createDescriptorGroup(new Identifier[] {</span>
+<span class="add">                new Identifier(Citation.OPEN_GIS, "Lambert_Conformal_Conic_1SP"),</span>
+<span class="add">                new Identifier(Citation.EPSG,     "Lambert Conic Conformal (1SP)"),</span>
+<span class="add">                new Identifier(Citation.EPSG,     "9801"),</span>
+<span class="add">                new Identifier(Citation.GEOTIFF,  "CT_LambertConfConic_1SP"),</span>
+<span class="add">                new Identifier(Citation.GEOTOOLS, Resources.formatInternational(</span>
+<span class="add">                                                  ResourceKeys.LAMBERT_CONFORMAL_PROJECTION))</span>
+<span class="add">            }, new ParameterDescriptor[] {</span>
+<span class="add">                SEMI_MAJOR,          SEMI_MINOR,</span>
+<span class="add">                CENTRAL_MERIDIAN,    LATITUDE_OF_ORIGIN,</span>
+<span class="add">                SCALE_FACTOR,</span>
+<span class="add">                FALSE_EASTING,       FALSE_NORTHING</span>
+<span class="add">            });</span>
+<span class="add"></span>
+<span class="add">        /**</span>
+<span class="add">         * Construct a new provider.</span>
+<span class="add">         */</span>
+<span class="add">        public Provider1SP() {</span>
+<span class="add">            super(PARAMETERS);</span>
+<span class="add">        }</span>
+<span class="add"></span>
+<span class="add">        /**</span>
+<span class="add">         * Creates a transform from the specified group of parameter values.</span>
+<span class="add">         *</span>
+<span class="add">         * @param  parameters The group of parameter values.</span>
+<span class="add">         * @return The created math transform.</span>
+<span class="add">         * @throws ParameterNotFoundException if a required parameter was not found.</span>
+<span class="add">         */</span>
+<span class="add">        protected MathTransform createMathTransform(final ParameterValueGroup parameters)</span>
+<span class="add">                throws ParameterNotFoundException</span>
+<span class="add">        {</span>
+<span class="add">            final Collection descriptors = PARAMETERS.descriptors();</span>
+<span class="add">            return new LambertConformal(parameters, descriptors, false, false);</span>
+<span class="add">        }</span>
+<span class="add"></span>
+<span class="add">    }</span>
+<span class="add"></span>
+<span class="add">    /**</span>
+<span class="add">     * The {@link MathTransformProvider} for a {@link LambertConformal} 2SP projection.</span>
+<span class="add">     *</span>
+<span class="add">     * @see MathTransformFactory</span>
+<span class="add">     *</span>
+<span class="add">     * @version $Id$</span>
+<span class="add">     * @author Martin Desruisseaux</span>
+<span class="add">     * @author Rueben Schulz</span>
+<span class="add">     */</span>
+<span class="add">    public static class Provider2SP extends Provider {</span>
+<span class="add">        /**</span>
+<span class="add">         * The operation parameter descriptor for the {@link #phi1 standard parallel 1}</span>
+<span class="add">         * parameter value. Valid values range is from -90 to 90°. Default value is 0.</span>
+<span class="add">         */</span>
+<span class="add">        public static final ParameterDescriptor STANDARD_PARALLEL_1 = createDescriptor(</span>
+<span class="add">                new Identifier[] {</span>
+<span class="add">                    new Identifier(Citation.OPEN_GIS, "standard_parallel_1"),</span>
+<span class="add">                    new Identifier(Citation.EPSG,     "Latitude of 1st standard parallel"),</span>
+<span class="add">                    new Identifier(Citation.GEOTIFF,  "StdParallel1")</span>
+<span class="add">                },</span>
+<span class="add">                0, -90, 90, NonSI.DEGREE_ANGLE);</span>
+<span class="add"></span>
+<span class="add">        /**</span>
+<span class="add">         * The operation parameter descriptor for the {@link #phi2 standard parallel 2}</span>
+<span class="add">         * parameter value. Valid values range is from -90 to 90°. Default value is 0.</span>
+<span class="add">         */</span>
+<span class="add">        public static final ParameterDescriptor STANDARD_PARALLEL_2 = createDescriptor(</span>
+<span class="add">                new Identifier[] {</span>
+<span class="add">                    new Identifier(Citation.OPEN_GIS, "standard_parallel_2"),</span>
+<span class="add">                    new Identifier(Citation.EPSG,     "Latitude of 2nd standard parallel"),</span>
+<span class="add">                    new Identifier(Citation.GEOTIFF,  "StdParallel2")</span>
+<span class="add">                },</span>
+<span class="add">                0, -90, 90, NonSI.DEGREE_ANGLE);</span>
+<span class="add"></span>
+<span class="add">        /**</span>
+<span class="add">         * The parameters group.</span>
+<span class="add">         * @task REVISIT: ESRI also included the scale factor as a parameter</span>
+<span class="add">         */</span>
+<span class="add">        static final ParameterDescriptorGroup PARAMETERS = createDescriptorGroup(new Identifier[] {</span>
+<span class="add">                new Identifier(Citation.OPEN_GIS, "Lambert_Conformal_Conic_2SP"),</span>
+<span class="add">                new Identifier(Citation.EPSG,     "Lambert Conic Conformal (2SP)"),</span>
+<span class="add">                new Identifier(Citation.EPSG,     "9802"),</span>
+<span class="add">                new Identifier(Citation.GEOTIFF,  "CT_LambertConfConic_2SP"),</span>
+<span class="add">                new Identifier(Citation.GEOTIFF,  "CT_LambertConfConic"),</span>
+<span class="add">                new Identifier(Citation.ESRI,     "Lambert_Conformal_Conic"),</span>
+<span class="add">                new Identifier(Citation.GEOTOOLS, Resources.formatInternational(</span>
+<span class="add">                                                  ResourceKeys.LAMBERT_CONFORMAL_PROJECTION))</span>
+<span class="add">            }, new ParameterDescriptor[] {</span>
+<span class="add">                SEMI_MAJOR,          SEMI_MINOR,</span>
+<span class="add">                CENTRAL_MERIDIAN,    LATITUDE_OF_ORIGIN,</span>
+<span class="add">                STANDARD_PARALLEL_1, STANDARD_PARALLEL_2,</span>
+<span class="add">                FALSE_EASTING,       FALSE_NORTHING</span>
+<span class="add">            });</span>
+<span class="add"></span>
+<span class="add">        /**</span>
+<span class="add">         * Construct a new provider.</span>
+<span class="add">         */</span>
+<span class="add">        public Provider2SP() {</span>
+<span class="add">            super(PARAMETERS);</span>
+<span class="add">        }</span>
+<span class="add"></span>
+<span class="add">        /**</span>
+<span class="add">         * Construct a new provider.</span>
+<span class="add">         */</span>
+<span class="add">        protected Provider2SP(final ParameterDescriptorGroup params) {</span>
+<span class="add">            super(params);</span>
+<span class="add">        }</span>
+<span class="add"></span>
+<span class="add">        /**</span>
+<span class="add">         * Creates a transform from the specified group of parameter values.</span>
+<span class="add">         *</span>
+<span class="add">         * @param  parameters The group of parameter values.</span>
+<span class="add">         * @return The created math transform.</span>
+<span class="add">         * @throws ParameterNotFoundException if a required parameter was not found.</span>
+<span class="add">         */</span>
+<span class="add">        protected MathTransform createMathTransform(final ParameterValueGroup parameters)</span>
+<span class="add">                throws ParameterNotFoundException</span>
+<span class="add">        {</span>
+<span class="add">            final Collection descriptors = PARAMETERS.descriptors();</span>
+<span class="add">            return new LambertConformal(parameters, descriptors, true, false);</span>
+<span class="add">        }</span>
+<span class="add">     }</span>
+<span class="add"></span>
+<span class="add">    /**</span>
+<span class="add">     * The {@link MathTransformProvider} for a {@link LambertConformal} 2SP</span>
+<span class="add">     * Belgium projection.</span>
+<span class="add">     *</span>
+<span class="add">     * @see MathTransformFactory</span>
+<span class="add">     *</span>
+<span class="add">     * @version $Id$</span>
+<span class="add">     * @author Rueben Schulz</span>
+<span class="add">     */</span>
+<span class="add">     public static final class Provider2SP_Belgium extends Provider2SP {</span>
+<span class="add"></span>
+<span class="add">         /**</span>
+<span class="add">         * The parameters group.</span>
+<span class="add">         */</span>
+<span class="add">        static final ParameterDescriptorGroup PARAMETERS = createDescriptorGroup(new Identifier[] {</span>
+<span class="add">                new Identifier(Citation.OPEN_GIS, "Lambert_Conformal_Conic_2SP_Belgium"),</span>
+<span class="add">                new Identifier(Citation.EPSG,     "Lambert Conic Conformal (2SP Belgium)"),</span>
+<span class="add">                new Identifier(Citation.EPSG,     "9803"),</span>
+<span class="add">                new Identifier(Citation.GEOTOOLS, Resources.formatInternational(</span>
+<span class="add">                                                  ResourceKeys.LAMBERT_CONFORMAL_PROJECTION))</span>
+<span class="add">            }, new ParameterDescriptor[] {</span>
+<span class="add">                SEMI_MAJOR,          SEMI_MINOR,</span>
+<span class="add">                CENTRAL_MERIDIAN,    LATITUDE_OF_ORIGIN,</span>
+<span class="add">                STANDARD_PARALLEL_1, STANDARD_PARALLEL_2,</span>
+<span class="add">                FALSE_EASTING,       FALSE_NORTHING</span>
+<span class="add">            });</span>
+<span class="add"></span>
+<span class="add">        /**</span>
+<span class="add">         * Construct a new provider.</span>
+<span class="add">         */</span>
+<span class="add">        public Provider2SP_Belgium() {</span>
+<span class="add">            super(PARAMETERS);</span>
+<span class="add">        }</span>
+<span class="add"></span>
+<span class="add">        /**</span>
+<span class="add">         * Creates a transform from the specified group of parameter values.</span>
+<span class="add">         *</span>
+<span class="add">         * @param  parameters The group of parameter values.</span>
+<span class="add">         * @return The created math transform.</span>
+<span class="add">         * @throws ParameterNotFoundException if a required parameter was not found.</span>
+<span class="add">         */</span>
+<span class="add">        protected MathTransform createMathTransform(final ParameterValueGroup parameters)</span>
+<span class="add">                throws ParameterNotFoundException</span>
+<span class="add">        {</span>
+<span class="add">            final Collection descriptors = PARAMETERS.descriptors();</span>
+<span class="add">            return new LambertConformal(parameters, descriptors, true, true);</span>
+<span class="add">        }</span>
+<span class="add">     }</span>
+<span class="add"></span>
+<span class="add"></span>
+<span class="add">    /**</span>
+<span class="add">     * Construct a new map projection from the supplied parameters.</span>
+<span class="add">     *</span>
+<span class="add">     * @param  parameters The parameter values in standard units.</span>
+<span class="add">     * @param  The expected parameter descriptors.</span>
+<span class="add">     * @param  sp2 &lt;code&gt;true&lt;/code&gt; for 2SP, or &lt;code&gt;false&lt;/code&gt; for 1SP.</span>
+<span class="add">     * @param  belgium &lt;code&gt;true&lt;/code&gt; for the Belgium 2SP case.</span>
+<span class="add">     * @throws ParameterNotFoundException if a mandatory parameter is missing.</span>
+<span class="add">     *</span>
+<span class="add">     * @task REVISIT: set phi2 = phi1 if no SP2 value is given by user (an 1sp projection)</span>
+<span class="add">     */</span>
+<span class="add">    public LambertConformal(final ParameterValueGroup parameters, final Collection expected,</span>
+<span class="add">                            final boolean sp2, final boolean belgium)</span>
+<span class="add">    {</span>
+<span class="add">        //Fetch parameters</span>
+<span class="add">        super(parameters, expected);</span>
+<span class="add">        this.sp2         = sp2;</span>
+<span class="add">        this.belgium     = belgium;</span>
+<span class="add">        if (sp2) {</span>
+<span class="add">            phi1 = doubleValue(expected, Provider2SP.STANDARD_PARALLEL_1, parameters);</span>
+<span class="add">            phi2 = doubleValue(expected, Provider2SP.STANDARD_PARALLEL_2, parameters);</span>
+<span class="add">        } else {</span>
+<span class="add">            if (belgium) {</span>
+<span class="add">                throw new IllegalArgumentException();</span>
+<span class="add">            }</span>
+<span class="add">            // EPSG says the 1SP case uses the latitude of origin as the SP</span>
+<span class="add">            phi1 = phi2 = latitudeOfOrigin;</span>
+<span class="add">        }</span>
+<span class="add">        // Compute constants</span>
+<span class="add">        if (Math.abs(phi1 + phi2) &lt; EPS) {</span>
+<span class="add">            throw new IllegalArgumentException(Resources.format(</span>
+<span class="add">                    ResourceKeys.ERROR_ANTIPODE_LATITUDES_$2,</span>
+<span class="add">                    new Latitude(Math.toDegrees(phi1)),</span>
+<span class="add">                    new Latitude(Math.toDegrees(phi2))));</span>
+<span class="add">        }</span>
+<span class="add">        final double  cosphi1 = Math.cos(phi1);</span>
+<span class="add">        final double  sinphi1 = Math.sin(phi1);</span>
+<span class="add">        final boolean  secant = Math.abs(phi1-phi2) &gt; EPS; // Should be 'true' for 2SP case.</span>
+<span class="add">        if (isSpherical) {</span>
+<span class="add">            if (secant) {</span>
+<span class="add">                n = Math.log(cosphi1 / Math.cos(phi2)) /</span>
+<span class="add">                    Math.log(Math.tan((Math.PI/4) + 0.5*phi2) /</span>
+<span class="add">                             Math.tan((Math.PI/4) + 0.5*phi1));</span>
+<span class="add">            } else {</span>
+<span class="add">                n = sinphi1;</span>
+<span class="add">            }</span>
+<span class="add">            F = cosphi1 * Math.pow(Math.tan((Math.PI/4) + 0.5*phi1), n) / n;</span>
+<span class="add">            if (Math.abs(Math.abs(latitudeOfOrigin) - (Math.PI/2)) &gt;= EPS) {</span>
+<span class="add">                rho0 = F * Math.pow(Math.tan((Math.PI/4) + 0.5*latitudeOfOrigin), -n);</span>
+<span class="add">            } else {</span>
+<span class="add">                rho0 = 0.0;</span>
+<span class="add">            }</span>
+<span class="add">        } else {</span>
+<span class="add">            final double m1 = msfn(sinphi1, cosphi1);</span>
+<span class="add">            final double t1 = tsfn(phi1, sinphi1);</span>
+<span class="add">            if (secant) {</span>
+<span class="add">                final double sinphi2 = Math.sin(phi2);</span>
+<span class="add">                final double m2 = msfn(sinphi2, Math.cos(phi2));</span>
+<span class="add">                final double t2 = tsfn(phi2, sinphi2);</span>
+<span class="add">                n = Math.log(m1/m2) / Math.log(t1/t2);</span>
+<span class="add">            } else {</span>
+<span class="add">                n = sinphi1;</span>
+<span class="add">            }</span>
+<span class="add">            F = m1 * Math.pow(t1, -n) / n;</span>
+<span class="add">            if (Math.abs(Math.abs(latitudeOfOrigin) - (Math.PI/2)) &gt;= EPS) {</span>
+<span class="add">                rho0 = F * Math.pow(tsfn(latitudeOfOrigin, Math.sin(latitudeOfOrigin)), n);</span>
+<span class="add">            } else {</span>
+<span class="add">                rho0 = 0.0;</span>
+<span class="add">            }</span>
+<span class="add">        }</span>
+<span class="add">    }</span>
+<span class="add"></span>
+<span class="add">    /**</span>
+<span class="add">     * {@inheritDoc}</span>
+<span class="add">     */</span>
+<span class="add">    protected ParameterDescriptorGroup getParameterDescriptors() {</span>
+<span class="add">        return (belgium) ?</span>
+<span class="add">                    Provider2SP_Belgium.PARAMETERS :</span>
+<span class="add">                    ((sp2) ? Provider2SP.PARAMETERS : Provider1SP.PARAMETERS);</span>
+<span class="add">    }</span>
+<span class="add"></span>
+<span class="add">    /**</span>
+<span class="add">     * {@inheritDoc}</span>
+<span class="add">     */</span>
+<span class="add">    public ParameterValueGroup getParameterValues() {</span>
+<span class="add">        final ParameterValueGroup values = super.getParameterValues();</span>
+<span class="add">        if (sp2) {</span>
+<span class="add">            final Collection expected = getParameterDescriptors().descriptors();</span>
+<span class="add">            set(expected, Provider2SP.STANDARD_PARALLEL_1, values, phi1);</span>
+<span class="add">            set(expected, Provider2SP.STANDARD_PARALLEL_2, values, phi2);</span>
+<span class="add">        }</span>
+<span class="add">        return values;</span>
+<span class="add">    }</span>
+<span class="add"></span>
+<span class="add">    /**</span>
+<span class="add">     * Transforms the specified (&lt;var&gt;x&lt;/var&gt;,&lt;var&gt;y&lt;/var&gt;) coordinate (units in radians)</span>
+<span class="add">     * and stores the result in &lt;code&gt;ptDst&lt;/code&gt; (linear distance on a unit sphere).</span>
+<span class="add">     */</span>
+<span class="add">    protected Point2D transformNormalized(double x, double y, Point2D ptDst)</span>
+<span class="add">            throws ProjectionException</span>
+<span class="add">    {</span>
+<span class="add">        double rho;</span>
+<span class="add">        //Snyder p. 108</span>
+<span class="add">        if (Math.abs(Math.abs(y) - (Math.PI/2)) &lt; EPS) {</span>
+<span class="add">            if (y*n &lt;= 0) {</span>
+<span class="add">                throw new ProjectionException(Resources.format(</span>
+<span class="add">                        ResourceKeys.ERROR_POLE_PROJECTION_$1,</span>
+<span class="add">                        new Latitude(Math.toDegrees(y))));</span>
+<span class="add">            } else {</span>
+<span class="add">                rho = 0;</span>
+<span class="add">            }</span>
+<span class="add">        } else if (isSpherical) {</span>
+<span class="add">            rho = F * Math.pow(Math.tan((Math.PI/4) + 0.5*y), -n);</span>
+<span class="add">        } else {</span>
+<span class="add">            rho = F * Math.pow(tsfn(y, Math.sin(y)), n);</span>
+<span class="add">        }</span>
+<span class="add"></span>
+<span class="add">        x *= n;</span>
+<span class="add">        if (belgium) {</span>
+<span class="add">            x -= BELGE_A;</span>
+<span class="add">        }</span>
+<span class="add">        y = rho0 - rho * Math.cos(x);</span>
+<span class="add">        x =        rho * Math.sin(x);</span>
+<span class="add"></span>
+<span class="add">        if (ptDst != null) {</span>
+<span class="add">            ptDst.setLocation(x,y);</span>
+<span class="add">            return ptDst;</span>
+<span class="add">        }</span>
+<span class="add">        return new Point2D.Double(x,y);</span>
+<span class="add">    }</span>
+<span class="add"></span>
+<span class="add">    /**</span>
+<span class="add">     * Transforms the specified (&lt;var&gt;x&lt;/var&gt;,&lt;var&gt;y&lt;/var&gt;) coordinate</span>
+<span class="add">     * and stores the result in &lt;code&gt;ptDst&lt;/code&gt;.</span>
+<span class="add">     */</span>
+<span class="add">    protected Point2D inverseTransformNormalized(double x, double y, Point2D ptDst)</span>
+<span class="add">            throws ProjectionException</span>
+<span class="add">    {</span>
+<span class="add">        double theta;</span>
+<span class="add">        y = rho0 - y;</span>
+<span class="add">        double rho = Math.sqrt(x*x + y*y);  // Zero when the latitude is 90 degrees.</span>
+<span class="add">        if (rho &gt; EPS) {</span>
+<span class="add">            if (n &lt; 0) {</span>
+<span class="add">                rho = -rho;</span>
+<span class="add">                x = -x;</span>
+<span class="add">                y = -y;</span>
+<span class="add">            }</span>
+<span class="add">            theta = Math.atan2(x, y);</span>
+<span class="add">            if (belgium) {</span>
+<span class="add">                theta += BELGE_A;</span>
+<span class="add">            }</span>
+<span class="add">            x = theta/n;</span>
+<span class="add">            if (isSpherical) {</span>
+<span class="add">                y = 2.0 * Math.atan(Math.pow(F/rho, 1.0/n)) - (Math.PI/2);</span>
+<span class="add">            } else {</span>
+<span class="add">                y = cphi2(Math.pow(rho/F, 1.0/n));</span>
+<span class="add">            }</span>
+<span class="add">        } else {</span>
+<span class="add">            x = 0.0;</span>
+<span class="add">            y = n &lt; 0 ? -(Math.PI/2) : (Math.PI/2);</span>
+<span class="add">        }</span>
+<span class="add">        if (ptDst != null) {</span>
+<span class="add">            ptDst.setLocation(x,y);</span>
+<span class="add">            return ptDst;</span>
+<span class="add">        }</span>
+<span class="add">        return new Point2D.Double(x,y);</span>
+<span class="add">    }</span>
+<span class="add"></span>
+<span class="add">    /**</span>
+<span class="add">     * Returns a hash value for this projection.</span>
+<span class="add">     */</span>
+<span class="add">    public int hashCode() {</span>
+<span class="add">        /*</span>
+<span class="add">         * This code should be computed fast. Consequently, we do not use all fields</span>
+<span class="add">         * in this object.  Two &lt;code&gt;LambertConformal&lt;/code&gt; objects with different</span>
+<span class="add">         * {@link #phi1} and {@link #phi2} should compute a F value different enough.</span>
+<span class="add">         */</span>
+<span class="add">        final long code = Double.doubleToLongBits(F);</span>
+<span class="add">        return ((int)code ^ (int)(code &gt;&gt;&gt; 32)) + 37*super.hashCode();</span>
+<span class="add">    }</span>
+<span class="add"></span>
+<span class="add">    /**</span>
+<span class="add">     * Compares the specified object with this map projection for equality.</span>
+<span class="add">     */</span>
+<span class="add">    public boolean equals(final Object object) {</span>
+<span class="add">        if (object == this) {</span>
+<span class="add">            // Slight optimization</span>
+<span class="add">            return true;</span>
+<span class="add">        }</span>
+<span class="add">        if (super.equals(object)) {</span>
+<span class="add">            final LambertConformal that = (LambertConformal) object;</span>
+<span class="add">            return (this.sp2 == that.sp2) &amp;&amp; (this.belgium == that.belgium) &amp;&amp;</span>
+<span class="add">                   equals(this.n,      that.n)    &amp;&amp;</span>
+<span class="add">                   equals(this.F,      that.F)    &amp;&amp;</span>
+<span class="add">                   equals(this.rho0,   that.rho0) &amp;&amp;</span>
+<span class="add">                   equals(this.phi1,   that.phi1) &amp;&amp;</span>
+<span class="add">                   equals(this.phi2,   that.phi2);</span>
+<span class="add">        }</span>
+<span class="add">        return false;</span>
+<span class="add">    }</span>
+<span class="add">}</span></pre></td></tr>
+</table>
+    </div>
+  </body>
+</html>

Propchange: sis/ip-review/rev/09215/LambertConformal.xhtml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: sis/ip-review/rev/09215/LambertConformal.xhtml
------------------------------------------------------------------------------
    svn:mime-type = text/html



Mime
View raw message