You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sis.apache.org by de...@apache.org on 2018/05/29 14:37:15 UTC

svn commit: r1832452 - in /sis/ip-review: PixelTranslation.xhtml rev/10867/PixelTranslation.xhtml rev/11186/PixelTranslation.xhtml rev/20970/PixelTranslation.xhtml rev/24925/PixelTranslation.xhtml

Author: desruisseaux
Date: Tue May 29 14:37:15 2018
New Revision: 1832452

URL: http://svn.apache.org/viewvc?rev=1832452&view=rev
Log:
Add IP review for PixelTranslation.

Added:
    sis/ip-review/PixelTranslation.xhtml
    sis/ip-review/rev/10867/PixelTranslation.xhtml
    sis/ip-review/rev/11186/PixelTranslation.xhtml
    sis/ip-review/rev/20970/PixelTranslation.xhtml
    sis/ip-review/rev/24925/PixelTranslation.xhtml

Added: sis/ip-review/PixelTranslation.xhtml
URL: http://svn.apache.org/viewvc/sis/ip-review/PixelTranslation.xhtml?rev=1832452&view=auto
==============================================================================
--- sis/ip-review/PixelTranslation.xhtml (added)
+++ sis/ip-review/PixelTranslation.xhtml Tue May 29 14:37:15 2018
@@ -0,0 +1,94 @@
+<!DOCTYPE html>
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta charset="UTF-8"/>
+    <title>PixelTranslation history</title>
+    <style type="text/css" media="all">
+      @import url("./reports.css");
+    </style>
+  </head>
+  <body>
+    <div>
+      <h1>PixelTranslation 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/metadata/iso/spatial/PixelTranslation.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">30313</td><td>2008-05-16</td><td>desruisseaux</td><td>Changed my mind about Utilities.shallowEquals(Object,Object) and renamed it as equals, since a few tests show that the compiler always select the best overloaded flavor working on primitive types (except if an argument is a boolean and the other a different primitive type). Updated a few references. Fixed a few javadoc warnings by explicit declaration of parameter and return values.</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">29826</td><td>2008-04-07</td><td>desruisseaux</td><td>More support for PixelOrientation in GridGeometry construction and queries. A side effect of this work is the refactoring of GridGeometry2D translation method into a separated PixelTranslation class.</td></tr>
+<tr><td class="rev">29806</td><td>2008-04-04</td><td>desruisseaux</td><td>Added the capability to use a custom DimensionFilter on GridGeometry2D construction.</td></tr>
+<tr><td class="rev">29782</td><td>2008-04-03</td><td>desruisseaux</td><td>Formatting.</td></tr>
+<tr><td class="rev">29746</td><td>2008-03-31</td><td>desruisseaux</td><td>Removed the getGridSize2D() method in order to keep the API simplier - this somewhat trivial method doesn't seem to worth its weight.</td></tr>
+<tr><td class="rev">29744</td><td>2008-03-31</td><td>desruisseaux</td><td>Added a GridGeometry2D.getSize2D() convenience method.</td></tr>
+<tr><td class="rev">29001</td><td>2008-01-30</td><td>desruisseaux</td><td>A few bug fixes, especially in Resampler2D including a workaround for a JAI 1.1.3 bug. For other files, replaced Hints.OVERVIEW_POLICY values from String to OverviewPolicy enum.</td></tr>
+<tr><td class="rev">28937</td><td>2008-01-25</td><td>desruisseaux</td><td>Reverted the whole trunk to revision 28921.</td></tr>
+<tr><td class="rev">28926</td><td>2008-01-24</td><td>acuster</td><td>Revert geotools trunk to reversion 29822, hopefully.</td></tr>
+<tr><td class="rev">28923</td><td>2008-01-24</td><td>acuster</td><td>Merge from gtbranches</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">28846</td><td>2008-01-20</td><td>desruisseaux</td><td>Covariant return type for inverse() method in MathTransform1D and MathTransform2D. Also javadoc fixes and Java 5 type safety. Changed ViewType to an enum and initial implementation of GridCoverageViews (not yet connected to GridCoverage2D).</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">28527</td><td>2007-12-28</td><td>desruisseaux</td><td>GridCoverage2D.evaluate(DirectPosition) now reprojects on the fly if the DirectPosition CRS is different than the GridCoverage CRS.</td></tr>
+<tr><td class="rev">28500</td><td>2007-12-24</td><td>desruisseaux</td><td>Added a new GridGeometry implementation (ImageGeometry) has a lightweight placeholder for 'gridRange' as a Rectangle and 'gridToCRS' as an AffineTransform. Used by TileBuilder.</td></tr>
+<tr><td class="rev">28384</td><td>2007-12-15</td><td>desruisseaux</td><td>Try to make Resample operation a little bit more tolerant to the reduction of CRS dimension.</td></tr>
+<tr><td class="rev">28374</td><td>2007-12-14</td><td>desruisseaux</td><td>Use some java 5 features. Added javadoc. Removed AbstractCoverage.dispose() deprecated method (replaced by dispose(boolean)). Cleaning.</td></tr>
+<tr><td class="rev">28267</td><td>2007-12-06</td><td>desruisseaux</td><td>GeoTools trunk now build against GeoAPI 2.2-SNAPSHOT.</td></tr>
+<tr><td class="rev">28252</td><td>2007-12-04</td><td>desruisseaux</td><td>More MosaicImageReader work. As a side effect, moved Utilities.getShort[Class]Name in a separated utilities class named 'Classes'. Also added a couple of @Override annotations.</td></tr>
+<tr><td class="rev">27995</td><td>2007-11-22</td><td>desruisseaux</td><td>More generics type, and moved two methods from ReferencingFactoryContainer to GeoAPI MathTransformFactory interface. Note that the build fails in the arcsde module for a reason that seems unrelated to this work.</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">27094</td><td>2007-09-20</td><td>desruisseaux</td><td>Merged changes from 2.4 branch.</td></tr>
+<tr><td class="rev">24925</td><td>2007-03-27</td><td class="unav">jgarnett</td><td><a href="rev/24925/PixelTranslation.xhtml">change to org.opengis.geometry</a></td></tr>
+<tr><td class="rev">22826</td><td>2006-11-20</td><td>desruisseaux</td><td>Minor bug fixes. Removed deprecated methods in GeneralGridGeometry. Added a 'toBackingFactoryCode' method in AuthorityFactoryAdapter.</td></tr>
+<tr><td class="rev">22817</td><td>2006-11-17</td><td>desruisseaux</td><td>Fixed SVN properties for all Java files.</td></tr>
+<tr><td class="rev">22715</td><td>2006-11-14</td><td>desruisseaux</td><td>Added GridToEnvelopeMapper implementation as a proposed replacement for GeneralGridGeometry.getTransform static method.</td></tr>
+<tr><td class="rev">22710</td><td>2006-11-12</td><td>desruisseaux</td><td>Review of coverage branch merge: In 'CategoryList', check for the 'no data' category name only if the geophysics value is some NaN value. Moved XAffineTransform to a public place and added methods for testing axis swapping, as a proposed replacement for 'GeneralGridGeometry.swapXY(CoordinateSystem)' (replacement not yet done; waiting for the okay from the mailing list). In GeneralGridGeometry, added methods for returning a math transform relative to some pixel corner instead of pixel center, as a proposed replacement for the 'getTransform(...)' public static methods (I would like to remove those static methods in order to keep the API a little bit more orthogonal).</td></tr>
+<tr><td class="rev">22452</td><td>2006-10-28</td><td>desruisseaux</td><td>Moved some methods from CRSUtilities to CRS (GEOT-547).</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">20970</td><td>2006-08-11</td><td class="unav">jgarnett</td><td><a href="rev/20970/PixelTranslation.xhtml">IP review.txt updated, along with headers</a></td></tr>
+<tr><td class="rev">20167</td><td>2006-06-23</td><td>desruisseaux</td><td>GEOT-873: partial merge of ImageUtilities to trunk. Not yet finished, since I'm refactoring the new code in the process.</td></tr>
+<tr><td class="rev">19755</td><td>2006-05-31</td><td>desruisseaux</td><td>Added FORCE_LONGITUDE_FIRST_AXIS_ORDER hint (GEOT-858). This work implied a large amount of work, hunting for infinite recursive method calls in many places.</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">16572</td><td>2005-11-02</td><td>desruisseaux</td><td>Moved coverage implementation to its own module (GEOT-745)</td></tr>
+<tr><td class="rev">16536</td><td>2005-10-28</td><td>desruisseaux</td><td>Added a 'Default CRS' hint for GridCoverageFactory (post GEOT-701 cleaning) + javadoc fixes.</td></tr>
+<tr><td class="rev">16526</td><td>2005-10-27</td><td>desruisseaux</td><td>More responsabilities moved from GridCoverage2D to GridGeometry2D (GEOT-701). This refactoring had a significant impact on Resample2D; the rest of the code should stay neutral.</td></tr>
+<tr><td class="rev">15803</td><td>2005-09-22</td><td>desruisseaux</td><td>Bux fix in automatic axis swapping during GridCoverage(..., Envelope, ...) construction.</td></tr>
+<tr><td class="rev">15736</td><td>2005-09-19</td><td>desruisseaux</td><td>Added convenience methods or constructors</td></tr>
+<tr><td class="rev">15556</td><td>2005-08-30</td><td>desruisseaux</td><td>Bug fix in 'createTransformedShape' / Clarification in the way a GridCoverage2D convenience constructor handle axis</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">13925</td><td>2005-05-30</td><td>desruisseaux</td><td>Added @since javadoc tag</td></tr>
+<tr><td class="rev">13129</td><td>2005-04-15</td><td>desruisseaux</td><td>Name change: removed 'GT' suffix in org.geotools.coverage implementations. Some on them were replaced by 'General' prefix for consistency with 'GeneralEnvelope' and 'GeneralDirectPosition'. In this context 'General' means "Can work with an arbitrary number of dimension". Other name changes in org.geotools.referencing and org.geotools.metadata are pending the choice between 'Default' prefix and 'Impl' suffix</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">11960</td><td>2005-03-10</td><td>desruisseaux</td><td>First draft of GridCoverage 'resampler' operation port</td></tr>
+<tr><td class="rev">11775</td><td>2005-03-04</td><td>desruisseaux</td><td>Partial port of the Interpolation method</td></tr>
+<tr><td class="rev">11760</td><td>2005-03-03</td><td>desruisseaux</td><td>Ported JAI operators from 'legacy' to 'main'</td></tr>
+<tr><td class="rev">11738</td><td>2005-03-02</td><td>desruisseaux</td><td>First working version of GridCoverage2D</td></tr>
+<tr><td class="rev">11722</td><td>2005-03-01</td><td>desruisseaux</td><td>Partial port of GridCoverage2D</td></tr>
+<tr><td class="rev">11654</td><td>2005-02-25</td><td>desruisseaux</td><td>GridGeometry work, which includes a first working version of DimensionFilter</td></tr>
+<tr><td class="rev">11572</td><td>2005-02-23</td><td>desruisseaux</td><td>Initial port of sub-transform, required for some grid coverages</td></tr>
+<tr><td class="rev">11549</td><td>2005-02-22</td><td>desruisseaux</td><td>Initial cleaning for restarting GridCoverage work</td></tr>
+<tr><td class="rev">11186</td><td>2005-02-08</td><td class="unav">rgould</td><td><a href="rev/11186/PixelTranslation.xhtml">Attempts to get GridCoverage to work. Made GridGeometry implement the GeoAPI GridGeometry interface. Added GridGeometry support to GridCoverageImpl. Added GridCoverage into GridCoverageRenderer.</a></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">10944</td><td>2005-02-01</td><td>desruisseaux</td><td>Bug fix in ProjectedCRS: axis swapping and units conversion were not correctly handled</td></tr>
+<tr><td class="rev">10867</td><td>2005-01-31</td><td class="unav">dzwiers</td><td><a href="rev/10867/PixelTranslation.xhtml">dep fix</a></td></tr>
+<tr><td class="rev">10796</td><td>2005-01-28</td><td class="unav">dzwiers</td><td><a href="rev/10867/PixelTranslation.xhtml">imports cleaned</a></td></tr>
+<tr><td class="rev">6536</td><td>2004-06-25</td><td>desruisseaux</td><td>Added SingleCRS class / Renamed ObliqueCartesianCS as AffineCS / Moved Position as super-interface for DirectPosition and Point</td></tr>
+<tr><td class="rev">6362</td><td>2004-06-08</td><td>desruisseaux</td><td>Initial work for an OperationProvider</td></tr>
+<tr><td class="rev">6333</td><td>2004-06-06</td><td>desruisseaux</td><td>Continuing CRS implementation</td></tr>
+<tr><td class="rev">6301</td><td>2004-06-03</td><td>desruisseaux</td><td>Refactored basic transform in their own package</td></tr>
+<tr><td class="rev">6295</td><td>2004-06-02</td><td>desruisseaux</td><td>Partial port of GridRange and GridGeometry implementations</td></tr>
+</table>
+    </div>
+  </body>
+</html>

Added: sis/ip-review/rev/10867/PixelTranslation.xhtml
URL: http://svn.apache.org/viewvc/sis/ip-review/rev/10867/PixelTranslation.xhtml?rev=1832452&view=auto
==============================================================================
--- sis/ip-review/rev/10867/PixelTranslation.xhtml (added)
+++ sis/ip-review/rev/10867/PixelTranslation.xhtml Tue May 29 14:37:15 2018
@@ -0,0 +1,224 @@
+<!DOCTYPE html>
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta charset="UTF-8"/>
+    <title>PixelTranslation changes for revisions 10795:10867</title>
+    <style type="text/css" media="all">
+      @import url("../../reports.css");
+    </style>
+  </head>
+  <body>
+    <div>
+      <h1>PixelTranslation changes for revisions 10795:10867</h1>
+
+      <p>See <a href="GridGeometry.xhtml">GridGeometry</a> (shared history).</p>
+
+<p><b>Command line:</b></p>
+<blockquote><code>svn diff --extensions "--unified --ignore-space-change --ignore-all-space --ignore-eol-style" -r10795:10867 http://svn.osgeo.org/geotools/trunk/modules/library/referencing/src/main/java/org/geotools/metadata/iso/spatial/PixelTranslation.java</code></blockquote>
+<table class="changes">
+<tr><th>Revision 10795</th><th>Revision 10867</th></tr>
+<tr><td><pre>/*
+ * Geotools 2 - OpenSource mapping toolkit
+ * (C) 2003, Geotools Project Management Committee (PMC)
+<span class="del"> * (C) 2001, Institut de Recherche pour le Développement</span>
+ *
+ *    This library is free software; you can redistribute it and/or
+ *    modify it under the terms of the GNU Lesser General Public</pre></td>
+<td><pre>/*
+ * Geotools 2 - OpenSource mapping toolkit
+ * (C) 2003, Geotools Project Management Committee (PMC)
+<span class="add"> * (C) 2001, Institut de Recherche pour le D�veloppement</span>
+ *
+ *    This library is free software; you can redistribute it and/or
+ *    modify it under the terms of the GNU Lesser General Public</pre></td></tr>
+<tr><td><pre>package org.geotools.coverage.grid;
+
+// J2SE dependencies
+<span class="del">import java.io.Serializable;</span>
+import java.awt.Rectangle;
+import java.awt.geom.Point2D;
+import java.awt.geom.Rectangle2D;
+<span class="del">import java.awt.geom.AffineTransform;</span>
+<span class="del">import java.awt.image.RenderedImage;  // For Javadoc</span>
+<span class="del">import java.awt.image.BufferedImage;  // For Javadoc</span>
+
+<span class="del">// JAI dependencies</span>
+<span class="del">import javax.media.jai.IntegerSequence;</span>
+<span class="del"></span>
+<span class="del">// OpenGIS dependencies</span>
+import org.opengis.coverage.grid.GridRange;
+<span class="del">import org.opengis.coverage.CannotEvaluateException;</span>
+<span class="del">import org.opengis.referencing.FactoryException;</span>
+<span class="del">import org.opengis.referencing.operation.Matrix;</span>
+import org.opengis.referencing.operation.MathTransform;
+import org.opengis.referencing.operation.MathTransform2D;
+import org.opengis.referencing.operation.TransformException;
+<span class="del">import org.opengis.referencing.operation.MathTransformFactory;</span>
+<span class="del">import org.opengis.referencing.operation.NoninvertibleTransformException;</span>
+import org.opengis.spatialschema.geometry.MismatchedDimensionException;
+<span class="del">import org.opengis.spatialschema.geometry.Envelope;</span>
+
+<span class="del">// Geotools dependencies</span>
+<span class="del">import org.geotools.geometry.GeneralEnvelope;</span>
+<span class="del">import org.geotools.geometry.DirectPosition2D;</span>
+<span class="del">import org.geotools.referencing.FactoryFinder;</span>
+<span class="del">import org.geotools.referencing.operation.GeneralMatrix;</span>
+<span class="del">import org.geotools.referencing.operation.transform.ProjectiveTransform;</span>
+
+<span class="del">// Resources</span>
+<span class="del">import org.geotools.resources.Utilities;</span>
+<span class="del">import org.geotools.resources.CRSUtilities;</span>
+<span class="del">import org.geotools.resources.gcs.Resources;</span>
+<span class="del">import org.geotools.resources.gcs.ResourceKeys;</span>
+<span class="del">import org.geotools.resources.image.JAIUtilities;</span>
+<span class="del"></span>
+<span class="del"></span>
+/**
+ * Describes the valid range of grid coordinates and the math
+ * transform to transform grid coordinates to real world coordinates.</pre></td>
+<td><pre>package org.geotools.coverage.grid;
+
+// J2SE dependencies
+import java.awt.Rectangle;
+<span class="add">import java.awt.geom.AffineTransform;</span>
+import java.awt.geom.Point2D;
+import java.awt.geom.Rectangle2D;
+<span class="add">import java.awt.image.BufferedImage;</span>
+<span class="add">import java.awt.image.RenderedImage;</span>
+<span class="add">import java.io.Serializable;</span>
+
+<span class="add">import org.geotools.geometry.DirectPosition2D;</span>
+<span class="add">import org.geotools.geometry.GeneralEnvelope;</span>
+<span class="add">import org.geotools.referencing.operation.GeneralMatrix;</span>
+<span class="add">import org.geotools.referencing.operation.transform.ProjectiveTransform;</span>
+<span class="add">import org.geotools.resources.CRSUtilities;</span>
+<span class="add">import org.geotools.resources.Utilities;</span>
+<span class="add">import org.geotools.resources.gcs.ResourceKeys;</span>
+<span class="add">import org.geotools.resources.gcs.Resources;</span>
+<span class="add">import org.opengis.coverage.CannotEvaluateException;</span>
+import org.opengis.coverage.grid.GridRange;
+<span class="add">import org.opengis.gc.GC_GridGeometry;</span>
+import org.opengis.referencing.operation.MathTransform;
+import org.opengis.referencing.operation.MathTransform2D;
+<span class="add">import org.opengis.referencing.operation.Matrix;</span>
+<span class="add">import org.opengis.referencing.operation.NoninvertibleTransformException;</span>
+import org.opengis.referencing.operation.TransformException;
+<span class="add">import org.opengis.spatialschema.geometry.Envelope;</span>
+import org.opengis.spatialschema.geometry.MismatchedDimensionException;
+
+
+/**
+ * Describes the valid range of grid coordinates and the math
+ * transform to transform grid coordinates to real world coordinates.</pre></td></tr>
+<tr><td><pre>this.gridFromCoordinateSystem2D = inverse(gridToCoordinateSystem2D);
+if (gridRange!=null &amp;&amp; gridToCoordinateSystem!=null) {
+    final int dimRange  = gridRange.getDimension();
+<span class="del">    final int dimSource = gridToCoordinateSystem.getDimSource();</span>
+<span class="del">    final int dimTarget = gridToCoordinateSystem.getDimTarget();</span>
+    if (dimRange != dimSource) {
+        throw new MismatchedDimensionException(format(dimRange, dimSource));
+    }</pre></td>
+<td><pre>this.gridFromCoordinateSystem2D = inverse(gridToCoordinateSystem2D);
+if (gridRange!=null &amp;&amp; gridToCoordinateSystem!=null) {
+    final int dimRange  = gridRange.getDimension();
+<span class="add">    final int dimSource = gridToCoordinateSystem.getSourceDimensions();</span>
+<span class="add">    final int dimTarget = gridToCoordinateSystem.getTargetDimensions();</span>
+    if (dimRange != dimSource) {
+        throw new MismatchedDimensionException(format(dimRange, dimSource));
+    }</pre></td></tr>
+<tr><td><pre> */
+public int getDimension() {
+    if (gridToCoordinateSystem != null) {
+<span class="del">        return gridToCoordinateSystem.getDimSource();</span>
+    }
+    return getGridRange().getDimension();
+}</pre></td>
+<td><pre> */
+public int getDimension() {
+    if (gridToCoordinateSystem != null) {
+<span class="add">        return gridToCoordinateSystem.getSourceDimensions();</span>
+    }
+    return getGridRange().getDimension();
+}</pre></td></tr>
+<tr><td><pre>public GridRange getGridRange() throws InvalidGridGeometryException {
+    if (gridRange != null) {
+        return gridRange;
+<span class="del">    } else {</span>
+        throw new InvalidGridGeometryException(Resources.format(
+                  ResourceKeys.ERROR_UNSPECIFIED_IMAGE_SIZE));
+    }
+<span class="del">}</span>
+
+/**
+ * Returns the math transform which allows  for the transformations from grid coordinates to</pre></td>
+<td><pre>public GridRange getGridRange() throws InvalidGridGeometryException {
+    if (gridRange != null) {
+        return gridRange;
+<span class="add">    }</span>
+        throw new InvalidGridGeometryException(Resources.format(
+                  ResourceKeys.ERROR_UNSPECIFIED_IMAGE_SIZE));
+    }
+
+/**
+ * Returns the math transform which allows  for the transformations from grid coordinates to</pre></td></tr>
+<tr><td><pre>public MathTransform getGridToCoordinateSystem() throws InvalidGridGeometryException {
+    if (gridToCoordinateSystem != null) {
+        return gridToCoordinateSystem;
+<span class="del">    } else {</span>
+        throw new InvalidGridGeometryException();
+    }
+<span class="del">}</span>
+
+/**
+ * Returns a math transform for the first two dimensions, if such a transform exists.</pre></td>
+<td><pre>public MathTransform getGridToCoordinateSystem() throws InvalidGridGeometryException {
+    if (gridToCoordinateSystem != null) {
+        return gridToCoordinateSystem;
+<span class="add">    }</span>
+        throw new InvalidGridGeometryException();
+    }
+
+/**
+ * Returns a math transform for the first two dimensions, if such a transform exists.</pre></td></tr>
+<tr><td><pre>        if (transform==null || transform instanceof MathTransform2D) {
+            return (MathTransform2D) transform;
+        }
+<span class="del">        final MathTransformFactory factory = FactoryFinder.getMathTransformFactory();</span>
+<span class="del">        final IntegerSequence  inputDimensions = JAIUtilities.createSequence(0, 1);</span>
+<span class="del">        final IntegerSequence outputDimensions = new IntegerSequence();</span>
+<span class="del">// TODO</span>
+//        try {
+<span class="del">//            transform = factory.createSubTransform(transform, inputDimensions, outputDimensions);</span>
+//        } catch (FactoryException exception) {
+//            // A MathTransform2D is not mandatory. Just tell that we have none.
+//            return null;</pre></td>
+<td><pre>        if (transform==null || transform instanceof MathTransform2D) {
+            return (MathTransform2D) transform;
+        }
+<span class="add">//        final MathTransformFactory factory = FactoryFinder.getMathTransformFactory();</span>
+<span class="add">//        final IntegerSequence  inputDimensions = JAIUtilities.createSequence(0, 1);</span>
+<span class="add">//        final IntegerSequence outputDimensions = new IntegerSequence();</span>
+<span class="add">//// TODO</span>
+//        try {
+<span class="add">//            transform = factory.(transform, inputDimensions, outputDimensions);</span>
+//        } catch (FactoryException exception) {
+//            // A MathTransform2D is not mandatory. Just tell that we have none.
+//            return null;</pre></td></tr>
+<tr><td><pre>}
+
+/**
+<span class="del"> * Returns a string représentation of this grid range.</span>
+ * The returned string is implementation dependent. It
+ * is usually provided for debugging purposes.
+ */</pre></td>
+<td><pre>}
+
+/**
+<span class="add"> * Returns a string repr�sentation of this grid range.</span>
+ * The returned string is implementation dependent. It
+ * is usually provided for debugging purposes.
+ */</pre></td></tr>
+</table>
+    </div>
+  </body>
+</html>

Added: sis/ip-review/rev/11186/PixelTranslation.xhtml
URL: http://svn.apache.org/viewvc/sis/ip-review/rev/11186/PixelTranslation.xhtml?rev=1832452&view=auto
==============================================================================
--- sis/ip-review/rev/11186/PixelTranslation.xhtml (added)
+++ sis/ip-review/rev/11186/PixelTranslation.xhtml Tue May 29 14:37:15 2018
@@ -0,0 +1,37 @@
+<!DOCTYPE html>
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta charset="UTF-8"/>
+    <title>PixelTranslation changes for revisions 11185:11186</title>
+    <style type="text/css" media="all">
+      @import url("../../reports.css");
+    </style>
+  </head>
+  <body>
+    <div>
+      <h1>PixelTranslation changes for revisions 11185:11186</h1>
+
+      <p>See <a href="GridGeometry.xhtml">GridGeometry</a> (shared history).</p>
+
+<p><b>Command line:</b></p>
+<blockquote><code>svn diff --extensions "--unified --ignore-space-change --ignore-all-space --ignore-eol-style" -r11185:11186 http://svn.osgeo.org/geotools/trunk/modules/library/referencing/src/main/java/org/geotools/metadata/iso/spatial/PixelTranslation.java</code></blockquote>
+<table class="changes">
+<tr><th>Revision 11185</th><th>Revision 11186</th></tr>
+<tr><td><pre> * @version $Id$
+ * @author Martin Desruisseaux
+ */
+<span class="del">public class GridGeometry implements Serializable {</span>
+    /**
+     * Serial number for interoperability with different versions.
+     */</pre></td>
+<td><pre> * @version $Id$
+ * @author Martin Desruisseaux
+ */
+<span class="add">public class GridGeometry implements org.opengis.coverage.grid.GridGeometry, Serializable {</span>
+    /**
+     * Serial number for interoperability with different versions.
+     */</pre></td></tr>
+</table>
+    </div>
+  </body>
+</html>

Added: sis/ip-review/rev/20970/PixelTranslation.xhtml
URL: http://svn.apache.org/viewvc/sis/ip-review/rev/20970/PixelTranslation.xhtml?rev=1832452&view=auto
==============================================================================
--- sis/ip-review/rev/20970/PixelTranslation.xhtml (added)
+++ sis/ip-review/rev/20970/PixelTranslation.xhtml Tue May 29 14:37:15 2018
@@ -0,0 +1,50 @@
+<!DOCTYPE html>
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta charset="UTF-8"/>
+    <title>PixelTranslation changes for revisions 20969:20970</title>
+    <style type="text/css" media="all">
+      @import url("../../reports.css");
+    </style>
+  </head>
+  <body>
+    <div>
+      <h1>PixelTranslation changes for revisions 20969:20970</h1>
+
+      <p>Change irrelevant to Apache SIS.</p>
+
+<p><b>Command line:</b></p>
+<blockquote><code>svn diff --extensions "--unified --ignore-space-change --ignore-all-space --ignore-eol-style" -r20969:20970 http://svn.osgeo.org/geotools/trunk/modules/library/referencing/src/main/java/org/geotools/metadata/iso/spatial/PixelTranslation.java</code></blockquote>
+<table class="changes">
+<tr><th>Revision 20969</th><th>Revision 20970</th></tr>
+<tr><td><pre>/*
+<span class="del"> * Geotools 2 - OpenSource mapping toolkit</span>
+<span class="del"> * (C) 2003, Geotools Project Management Committee (PMC)</span>
+ * (C) 2001, Institut de Recherche pour le Développement
+ *
+ *    This library is free software; you can redistribute it and/or</pre></td>
+<td><pre>/*
+<span class="add"> *    GeoTools - OpenSource mapping toolkit</span>
+<span class="add"> *    http://geotools.org</span>
+<span class="add"> *    (C) 2003-2006, Geotools Project Managment Committee (PMC)</span>
+ * (C) 2001, Institut de Recherche pour le Développement
+ *
+ *    This library is free software; you can redistribute it and/or</pre></td></tr>
+<tr><td><pre> *    but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ *    Lesser General Public License for more details.
+<span class="del"> *</span>
+<span class="del"> *    You should have received a copy of the GNU Lesser General Public</span>
+<span class="del"> *    License along with this library; if not, write to the Free Software</span>
+<span class="del"> *    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</span>
+ */
+package org.geotools.coverage.grid;</pre></td>
+<td><pre> *    but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ *    Lesser General Public License for more details.
+ */
+package org.geotools.coverage.grid;</pre></td></tr>
+</table>
+    </div>
+  </body>
+</html>

Added: sis/ip-review/rev/24925/PixelTranslation.xhtml
URL: http://svn.apache.org/viewvc/sis/ip-review/rev/24925/PixelTranslation.xhtml?rev=1832452&view=auto
==============================================================================
--- sis/ip-review/rev/24925/PixelTranslation.xhtml (added)
+++ sis/ip-review/rev/24925/PixelTranslation.xhtml Tue May 29 14:37:15 2018
@@ -0,0 +1,39 @@
+<!DOCTYPE html>
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta charset="UTF-8"/>
+    <title>PixelTranslation changes for revisions 24924:24925</title>
+    <style type="text/css" media="all">
+      @import url("../../reports.css");
+    </style>
+  </head>
+  <body>
+    <div>
+      <h1>PixelTranslation changes for revisions 24924:24925</h1>
+<p>This commit propagates the package names change which was done in GeoAPI.
+There is no way such change could be done differently,
+since not renaming the packages cause a compilation error.</p>
+<p><b>Command line:</b></p>
+<blockquote><code>svn diff --extensions "--unified --ignore-space-change --ignore-all-space --ignore-eol-style" -r24924:24925 http://svn.osgeo.org/geotools/trunk/modules/library/referencing/src/main/java/org/geotools/metadata/iso/spatial/PixelTranslation.java</code></blockquote>
+<table class="changes">
+<tr><th>Revision 24924</th><th>Revision 24925</th></tr>
+<tr><td><pre>import org.opengis.referencing.operation.NoninvertibleTransformException;
+import org.opengis.referencing.operation.TransformException;
+import org.opengis.referencing.crs.CoordinateReferenceSystem;
+<span class="del">import org.opengis.spatialschema.geometry.Envelope;</span>
+<span class="del">import org.opengis.spatialschema.geometry.MismatchedDimensionException;</span>
+
+// Geotools dependencies
+import org.geotools.geometry.Envelope2D;</pre></td>
+<td><pre>import org.opengis.referencing.operation.NoninvertibleTransformException;
+import org.opengis.referencing.operation.TransformException;
+import org.opengis.referencing.crs.CoordinateReferenceSystem;
+<span class="add">import org.opengis.geometry.Envelope;</span>
+<span class="add">import org.opengis.geometry.MismatchedDimensionException;</span>
+
+// Geotools dependencies
+import org.geotools.geometry.Envelope2D;</pre></td></tr>
+</table>
+    </div>
+  </body>
+</html>