2

This question may seem as it was asked before, but I think I just don't use the right terminology. Here's my problem. I'm an archaeology student trying to make an internal map of a prehistoric dwelling in which I use non-earth coordinates to show the localisation of artifacts inside the dwelling. I don't use any GPS coordinates, cause all the coordinates from my excel database are from an arbitrary x0-y0 which is a absolute point on the base drawing of the map (Is that what we call a non-earth system?).

So, I have no problem scanning the plan of the dwelling, making a png with it and using it as a raster. I put my coordinates points (8 of them) on the raster layer with the georeferencing plugin and it work. But, the problem is that I want to add vector layers of, for example, the turf ridge of the dwelling, or the rock pavement, or the different fire-pits. These vector layers are DXF that I draw on Illustrator. I'm able to send those on my qgis project, but they don't have embedded coordinate points so they appear on my base map at a totally wrong scale. My initial plan was to georeference these as you do with a raster in qgis, but I don't see how. Is there a way to resize and manually adjust those over my raster to correct the scale? My plan is to be able to work with the vector/shapefile layers and keep the scan raster invisible.

8
  • Are your dxf files actually in shapefile format when you import them into QGIS? You likely just need to change the coordinate system to what system the layers were created in.
    – MaryBeth
    Commented Jan 5, 2016 at 16:10
  • Possible duplicate of How to georeference a dxf? Commented Jan 5, 2016 at 16:14
  • Take a look in underdark answer: gis.stackexchange.com/questions/22691/how-to-georeference-a-dxf Commented Jan 5, 2016 at 16:15
  • I import in DXF and transform in shapefile in Qgis. but the resulting layer is way too small, about the size of a pixel of the raster layer. I don't know either how to use the affine plugin, what does x1,y1, x+ and y+ mean? and how can i know the values I need to put there? for those to fit with my raster coordinates
    – Simon
    Commented Jan 5, 2016 at 16:28
  • Ill try the vector bendor plugin and get you back.
    – Simon
    Commented Jan 5, 2016 at 16:30

2 Answers 2

2

If you want to georeference a shapefile or a dxf file, you need GCP points (as when you georeference a raster)

1) You can use 0GR with the command ogr2ogr -gcp x_nongeoref y_nongeoref x_georef y_georef

example:

ogr2ogr -gcp 5 -135 0 0 \
>         -gcp 283 -135 1000 0 \
>         -gcp 5 278 0 1000 \
>         -gcp 283 278 1000 1000 \
>         -f "ESRI shapefile" out.shp in.shp

2) The vectorGeoref plugin: A visual tool to georeferencing vector layers
3) the VectorBender plugin, an experimental Python wrapper of the ogr2ogr command (as "rubber sheeting")

1

Since QGIS 3.26 this can now be achieved with the georeferencer, same tool that is used of raster georeferencing:

"QGIS now supports georeferencing vector layers in the georeferencer tool. This allows vector layers without spatial referencing to be interactively georeferenced, or layers with referencing to be re-referenced, in a similar manner to raster data. Georeferencing occurs in a task, so QGIS should remain responsive, even with large datasets."

https://www.qgis.org/en/site/forusers/visualchangelog326/index.html#feature-georeferencing-vector-layers-in-georeferencer

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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