OperationNotFoundException when sourceCRS is a ProjectedCRS + VerticalCRS
-------------------------------------------------------------------------

                 Key: GEOT-1783
                 URL: http://jira.codehaus.org/browse/GEOT-1783
             Project: GeoTools
          Issue Type: Bug
          Components: core referencing
    Affects Versions: 2.5-M0
            Reporter: Martin Desruisseaux
            Assignee: Martin Desruisseaux


{{DefaultCoordinateOperationFactory.createOperation}} works as expected with 3D 
or 4D source CRS in the following cases:

* No datum shift.
* Datum shift required but no vertical axis (only a temporal one).
* Datum shift required but the 3D CRS is a {{GeographicCRS}} with height above 
the ellipsoid.

But it doesn't work anymore in the following cases:

* Datum shift required and the vertical axis is height above the geoid. This is 
the subject of "referencing 3D" and will not be discussed further in this issue.
* Datum shift required, the vertical axis is height above the ellipsoid and the 
horizontal CRS is a {{ProjectedCRS}}.

The last failure is unexpected. I suspect (but didn't tested) that it would 
occur with any derived CRS, not just {{ProjectedCRS}}. Steps to reproduce:

{code:java}
@Test
public void testProjected4D() throws Exception {
    CoordinateReferenceSystem targetCRS = CRS.decode("EPSG:3395");
    CoordinateReferenceSystem sourceCRS = CRS.decode("EPSG:27572");
    sourceCRS = new DefaultCompoundCRS("3D", sourceCRS, 
DefaultVerticalCRS.ELLIPSOIDAL_HEIGHT);
    sourceCRS = new DefaultCompoundCRS("4D", sourceCRS, 
DefaultTemporalCRS.JULIAN);
    CRS.findMathTransform(sourceCRS, targetCRS);
}
{code}

Results:

{code:none}
org.opengis.referencing.operation.OperationNotFoundException: Aucune 
transformation du système "CompoundCRS[4D]" vers "GeographicCRS[WGS 84]" n'est 
disponible.
        at 
org.geotools.referencing.operation.DefaultCoordinateOperationFactory.createOperationStep(DefaultCoordinateOperationFactory.java:1360)
        at 
org.geotools.referencing.operation.DefaultCoordinateOperationFactory.createOperationStep(DefaultCoordinateOperationFactory.java:1200)
        at 
org.geotools.referencing.operation.DefaultCoordinateOperationFactory.createOperation(DefaultCoordinateOperationFactory.java:358)
        at 
org.geotools.referencing.operation.DefaultCoordinateOperationFactory.createOperationStep(DefaultCoordinateOperationFactory.java:1210)
        at 
org.geotools.referencing.operation.DefaultCoordinateOperationFactory.createOperation(DefaultCoordinateOperationFactory.java:358)
        at 
org.geotools.referencing.operation.DefaultCoordinateOperationFactory.createOperation(DefaultCoordinateOperationFactory.java:319)
        at 
org.geotools.referencing.operation.BufferedCoordinateOperationFactory.createOperation(BufferedCoordinateOperationFactory.java:253)
        at org.geotools.referencing.CRS.findMathTransform(CRS.java:947)
        at org.geotools.referencing.CRS.findMathTransform(CRS.java:915)
{code}


-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

       

-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel

Reply via email to