How does DB2 documentation have it?
https://www.ibm.com/support/knowledgecenter/SSEPEK_11.0.0/pdf/dasz_03_spatlbook.pdf Looks like the have alter_cs and alter_crs so you can configure. Can you check the definition in your database David? Note “EPSG:4326” is ambiguous on axis order intended (different databases and protocols have different assumptions). You can use a longer form If you need wish to have the exact order from EPSG, or provide a hint of you wish to force XY order (required for some protocols). See docs for details https://docs.geotools.org/latest/userguide/library/referencing/order.html On Tue, Apr 28, 2020 at 7:37 AM Ian Turton <ijtur...@gmail.com> wrote: > It sounds like the data is not actually in EPSG:4326 LAT/LON order then, > thus the renderer is getting confused by the fact that the CRS claims to be > a NORTH_EAST projection when the data isn't. In general avoid using > EPSG:4326 unless you are very sure that is what you have and you are sure > about the axis order (usually, to the extent of checking the axis order > while writing the coordinates into the geometries). You never know what the > user may have set the hints to until you get there. > > Ian > > On Tue, 28 Apr 2020 at 14:35, David Adler <dwa12...@gmail.com> wrote: > >> A DB2 sample program that displays a map based on spatial data in a DB2 >> table used to work but no longer works when I tried it recently. It just >> fails to display anything. >> >> It seems to be related to the AXIS ordering in the CRS which is different >> depending on whether one uses CRS.decode("EPSG:4326) or CRS.parseWKT(wkt) >> where wkt is the string representation of EPSG 4326. I fixed the problem by >> changing the DB2 code to use CRS.parseWKT instead of CRS.decode with "org" >> and "orgid". Shouldn't it work both ways? >> >> The following is my analysis of the problem: >> >> Using CRS.decode("EPSG:4326") >> results in >> GEOGCS["WGS 84", >> DATUM["World Geodetic System 1984", >> SPHEROID["WGS 84", 6378137.0, 298.257223563, >> AUTHORITY["EPSG","7030"]], >> AUTHORITY["EPSG","6326"]], >> PRIMEM["Greenwich", 0.0, AUTHORITY["EPSG","8901"]], >> UNIT["degree", 0.017453292519943295], >> AXIS["Geodetic latitude", NORTH], >> AXIS["Geodetic longitude", EAST], >> AUTHORITY["EPSG","4326"]] >> >> In StreamingRenderer.paint >> CRS.getAxisOrder(mapCRS) returns CRS.AxisOrder.NORTH_EAST >> which executes the following code which flips the AffineTransform in >> WorldToScreen which completely messes up the subsequent transformation >> from world to screen coordinates, causing them to be outside the >> clip area. >> if (CRS.getAxisOrder(mapCRS) == CRS.AxisOrder.NORTH_EAST) { >> try { >> // sanitize, having flipped axis causes slowdowns, the >> rendering >> // subsystem has to go from data to rendering to screen >> flipping axis order >> // twice when advanced projection handling is enabled >> Integer code = CRS.lookupEpsgCode(mapCRS, false); >> if (code != null) { >> String srs = "EPSG:" + code; >> CoordinateReferenceSystem earthNorthCRS = >> CRS.decode(srs, true); >> mapArea = >> new ReferencedEnvelope( >> mapArea.getMinY(), >> mapArea.getMaxY(), >> mapArea.getMinX(), >> mapArea.getMaxX(), >> earthNorthCRS); >> } >> >> // flip world to screen too >> worldToScreen = >> new AffineTransform( >> worldToScreen.getShearX(), >> worldToScreen.getScaleX(), >> worldToScreen.getScaleY(), >> worldToScreen.getShearY(), >> worldToScreen.getTranslateX(), >> worldToScreen.getTranslateY()); >> } catch (Exception e) { >> LOGGER.log( >> Level.FINER, >> "Failed to turn the requested bbox in east/north >> order, map rendering " >> + "should work anyways, but pay a >> performance price"); >> } >> >> Creating the CRS from WKT, everything works fine. >> CRS from CRS.decodeWKT(wkt) >> GEOGCS["GCS_WGS_1984", >> DATUM["D_WGS_1984", >> SPHEROID["WGS_1984", 6378137.0, 298.257223563]], >> PRIMEM["Greenwich", 0.0], >> UNIT["degree", 0.017453292519943295], >> AXIS["Longitude", EAST], >> AXIS["Latitude", NORTH]] >> >> _______________________________________________ >> GeoTools-GT2-Users mailing list >> GeoTools-GT2-Users@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/geotools-gt2-users >> > > > -- > Ian Turton > _______________________________________________ > GeoTools-GT2-Users mailing list > GeoTools-GT2-Users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/geotools-gt2-users > -- -- Jody Garnett
_______________________________________________ GeoTools-GT2-Users mailing list GeoTools-GT2-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/geotools-gt2-users