Winkel Tripel projection and SVG rendering problems
---------------------------------------------------
Key: GEOT-3534
URL: http://jira.codehaus.org/browse/GEOT-3534
Project: GeoTools
Issue Type: Bug
Components: core referencing, core render
Affects Versions: 2.7.0
Reporter: Alexander Karnstedt
Priority: Minor
Attachments: export.svg, TestWinkelTripelSvg.java
Rendering a SVG with Winkel Tripel projection causes various error messages,
because the projection is not invertible. There is also a problem with
calculating generalization distances, thus produces faulty SVG polygons.
A workaround to cope with the faulty SVG is to set generalization distance to 0:
renderer.setGeneralizationDistance(0d);
Stack Trace:
-----------------------
SCHWERWIEGEND: Error transforming bbox
java.lang.Exception: Error transforming bbox
at
org.geotools.renderer.lite.StreamingRenderer.queryLayer(StreamingRenderer.java:989)
at
org.geotools.renderer.lite.StreamingRenderer.processStylers(StreamingRenderer.java:1918)
at
org.geotools.renderer.lite.StreamingRenderer.paint(StreamingRenderer.java:766)
at
org.geotools.renderer.lite.StreamingRenderer.paint(StreamingRenderer.java:574)
at
sandbox.wikipedia.svgmapexport.GeoUtils.renderMapToSVG(GeoUtils.java:226)
at
sandbox.wikipedia.svgmapexport.WorldSvgMap.export(WorldSvgMap.java:99)
at sandbox.wikipedia.svgmapexport.WorldSvgMap.main(WorldSvgMap.java:108)
Caused by: org.opengis.referencing.operation.OperationNotFoundException: No
transformation available from system "ProjectedCRS[WGS84 / Winkel3]" to
"GeographicCRS[WGS 84]".
at
org.geotools.referencing.operation.DefaultCoordinateOperationFactory.createOperationStep(DefaultCoordinateOperationFactory.java:1004)
at
org.geotools.referencing.operation.DefaultCoordinateOperationFactory.createOperation(DefaultCoordinateOperationFactory.java:267)
at
org.geotools.referencing.operation.BufferedCoordinateOperationFactory.createOperation(BufferedCoordinateOperationFactory.java:254)
at
org.geotools.geometry.jts.ReferencedEnvelope.transform(ReferencedEnvelope.java:629)
at
org.geotools.renderer.lite.StreamingRenderer.queryLayer(StreamingRenderer.java:971)
... 6 more
Caused by: org.opengis.referencing.operation.NoninvertibleTransformException:
Transform is not invertible.
at
org.geotools.referencing.operation.projection.MapProjection.inverse(MapProjection.java:1153)
at
org.geotools.referencing.operation.projection.MapProjection.inverse(MapProjection.java:85)
at
org.geotools.referencing.operation.DefaultCoordinateOperationFactory.createOperationStep(DefaultCoordinateOperationFactory.java:1002)
... 10 more
19.04.2011 19:10:44 org.geotools.renderer.lite.StreamingRenderer queryLayer
WARNUNG: Got a tranform exception while trying to de-project the current
envelope, bboxs intersect therefore using envelope)
org.opengis.referencing.operation.OperationNotFoundException: No transformation
available from system "ProjectedCRS[WGS84 / Winkel3]" to "GeographicCRS[WGS
84]".
at
org.geotools.referencing.operation.DefaultCoordinateOperationFactory.createOperationStep(DefaultCoordinateOperationFactory.java:1004)
at
org.geotools.referencing.operation.DefaultCoordinateOperationFactory.createOperation(DefaultCoordinateOperationFactory.java:267)
at
org.geotools.referencing.operation.BufferedCoordinateOperationFactory.createOperation(BufferedCoordinateOperationFactory.java:254)
at
org.geotools.geometry.jts.ReferencedEnvelope.transform(ReferencedEnvelope.java:629)
at
org.geotools.renderer.lite.StreamingRenderer.queryLayer(StreamingRenderer.java:971)
at
org.geotools.renderer.lite.StreamingRenderer.processStylers(StreamingRenderer.java:1918)
at
org.geotools.renderer.lite.StreamingRenderer.paint(StreamingRenderer.java:766)
at
org.geotools.renderer.lite.StreamingRenderer.paint(StreamingRenderer.java:574)
at
sandbox.wikipedia.svgmapexport.GeoUtils.renderMapToSVG(GeoUtils.java:226)
at
sandbox.wikipedia.svgmapexport.WorldSvgMap.export(WorldSvgMap.java:99)
at sandbox.wikipedia.svgmapexport.WorldSvgMap.main(WorldSvgMap.java:108)
Caused by: org.opengis.referencing.operation.NoninvertibleTransformException:
Transform is not invertible.
at
org.geotools.referencing.operation.projection.MapProjection.inverse(MapProjection.java:1153)
at
org.geotools.referencing.operation.projection.MapProjection.inverse(MapProjection.java:85)
at
org.geotools.referencing.operation.DefaultCoordinateOperationFactory.createOperationStep(DefaultCoordinateOperationFactory.java:1002)
... 10 more
19.04.2011 19:10:44 org.geotools.renderer.lite.StreamingRenderer queryLayer
INFO: Error computing the generalization distance
org.opengis.referencing.operation.NoninvertibleTransformException: Transform is
not invertible.
at
org.geotools.referencing.operation.projection.MapProjection.inverse(MapProjection.java:1153)
at
org.geotools.referencing.operation.projection.MapProjection.inverse(MapProjection.java:85)
at
org.geotools.referencing.operation.transform.ConcatenatedTransform.inverse(ConcatenatedTransform.java:522)
at
org.geotools.referencing.operation.transform.ConcatenatedTransformDirect2D.inverse(ConcatenatedTransformDirect2D.java:119)
at
org.geotools.referencing.operation.transform.ConcatenatedTransformDirect2D.inverse(ConcatenatedTransformDirect2D.java:38)
at
org.geotools.renderer.lite.StreamingRenderer.queryLayer(StreamingRenderer.java:1045)
at
org.geotools.renderer.lite.StreamingRenderer.processStylers(StreamingRenderer.java:1918)
at
org.geotools.renderer.lite.StreamingRenderer.paint(StreamingRenderer.java:766)
at
org.geotools.renderer.lite.StreamingRenderer.paint(StreamingRenderer.java:574)
at
sandbox.wikipedia.svgmapexport.GeoUtils.renderMapToSVG(GeoUtils.java:226)
at
sandbox.wikipedia.svgmapexport.WorldSvgMap.export(WorldSvgMap.java:99)
at sandbox.wikipedia.svgmapexport.WorldSvgMap.main(WorldSvgMap.java:108)
--
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
------------------------------------------------------------------------------
Benefiting from Server Virtualization: Beyond Initial Workload
Consolidation -- Increasing the use of server virtualization is a top
priority.Virtualization can reduce costs, simplify management, and improve
application availability and disaster protection. Learn more about boosting
the value of server virtualization. http://p.sf.net/sfu/vmware-sfdev2dev
_______________________________________________
Geotools-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geotools-devel