Details
-
Type:
Bug
-
Status:
Open
-
Priority:
Minor
-
Resolution: Unresolved
-
Affects Version/s: 2.7.0
-
Fix Version/s: None
-
Component/s: referencing, render
-
Labels:None
Description
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)