2

I am trying to load several layers from: http://idesc.cali.gov.co:8081/geoserver/wfs?

In the window "Add WFS layer" appears EPSG:6249, but after adding appears a second window, "CRS selector", where I cannot find this ID.

enter image description here

If I click on "Cancel" I always get this error for all layers:

Download of features for layer idesc:mc_comunas failed or partially failed: Server generated an exception in GetFeature response: org.opengis.referencing.NoSuchAuthorityCodeException: No se ha especificado ninguna autoridad para el código "". El formato esperado es normalmente "AUTORITÉ:NOMBRE". No se ha especificado ninguna autoridad para el código

How to import this CRS?

1

You are correct EPSG:6249 is not one of the supported coordinate reference systems for QGIS.

The QGIS documentation gives information on how to create a custom coordinate reference system through Settings > Custom CRS.

Note, you will need to use PROJ.4 format, you will have to create it yourself, if you cannot find it elsewhere. Use the EPSG registry report to help you with the parameters.

http://www.epsg-registry.org/report.htm?type=selection&entity=urn:ogc:def:crs:EPSG::6249&reportDetail=short&style=urn:uuid:report-style:default-with-code&style_name=OGPDefault%20With%20Code&title=Bogota-MAGNA

0

contacted IDESC and found prog.4format file for an equivalent CRS: SR-ORG:7393

0

From C:\OSGeo4W64\share\proj\epsg: Unable to translate coordinate system EPSG:6249 into PROJ.4 format..

The projection EPSG:6249 uses a parameter called Projection plane origin height with a value of 1000 meters. This method is not implemented in PROJ.4/GDAL, and the CRS is therefore not included in PROJ.4 based software like QGIS.

At spatialreference.org, there is a workaround definition SR-ORG:7393 with this projection string:

+proj=tmerc +lat_0=3.441883333 +lon_0=-76.5205625 +k=1 +x_0=1061900.18 +y_0=872364.63 +a=6379137 +b=6357748.961329674 +units=m +no_defs

It substitutes the projection plane origin height of 1000m by an ellipsoid with a 1000m larger, but with the same flattening as GRS80.

You can define a custom CRS with it, but unfortuantely the WFS server only allows the EPSG code 6249 to be requested.

The only way I found to get the WFS working is to modify the SR database of QGIS in C:\Program Files\QGIS 2.18\apps\qgis\resources.

I created a SQL file named Cali.sql with this content:

BEGIN;
INSERT INTO "tbl_srs" ("srs_id", "description", "projection_acronym", "ellipsoid_acronym", "parameters", "srid", "auth_name", "auth_id", "is_geo", "deprecated", "noupdate") VALUES (29456, 'MAGNA-SIRGAS / Cali urban grid', 'tmerc', '', '+proj=tmerc +lat_0=3.441883333 +lon_0=-76.5205625 +k=1 +x_0=1061900.18 +y_0=872364.63 +a=6379137 +b=6357748.961329674 +units=m +no_defs', 6249, 'EPSG', '6249', 0, 0, 0);
COMMIT;

There were 29455 records in my tbl_srs, so the new one goes into 29456. Then I used the spatialite_gui with

Files -> Connecting an existig SQlite DB

to connect to C:\Program Files\QGIS 2.18\apps\qgis\resources\srs.db and

Files -> Advanced -> Execute SQL script

to add the Cali.sql.

After that, the WFS loads without errors, fitting to an OpenStreetmap background:

enter image description here

You have to run this agaian after every QGIS update, and it will not work on external GDAL commands like gdalwarp, and maybe GRASS too.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.