I have imported point coordinates from a database, but I need to manually adjust a lot of the locations. Is there a way for QGIS to automatically update the point locations in the attribute table after you move your points?
2 Answers
Using Field Calculator $x and $y operators, you can over-write the old coordinates in attribute table. Just run it once - after you have moved all points to the desired locations.
Field Calculator v.2.x: http://docs.qgis.org/2.0/en/docs/user_manual/working_with_vector/field_calculator.html
Field Calculator v2.4+: http://nathanw.net/2014/05/23/qgis-field-calc-bar/
Patrick, if you have brought the point data in from a non-spatially-enabled source, you will need to save to a new, spatially-enabled format (and load that into QGIS) before you start your editing.
After that, you'll want to use either the Move Feature(s) or Node Tool.
Once in edit mode for your point layer, make your adjustments with either of those tools, then either click the Save Edits button, or exit edit mode (which will prompt you to save edits). While editing the points, an in-memory attribute table is updated, then on save, written back to the data source.
Many edits are undo-able, but not all. Choosing to not save your in-memory edits will leave your data source unchanged.
-
Thanks, I didn't see where the internally derived coordinates were being saved at first. Underdark's solution below is actually spot on for updating my attribute table.– PatrickJul 19, 2012 at 17:02
-
+1 for note about saving to a new format. I was spinning my wheels trying to figure out why the tool was disabled for my GPX layer; save to shape and it's all good. (but -1 because as useful as this answer is, it doesn't answer the question asked: modify location based on attribute value) Oct 3, 2014 at 16:17