Answers:
根据定义,质心是点层而不是多边形。因此,您需要创建一个新层,在QGIS 1.8及更高版本中,这很容易。
然后,您可以进行空间连接以将质心列添加到多边形,然后再次删除点图层。
确实,制作新的shapefile是您最简单的选择之一。但是,您不需要复制和粘贴坐标。做这个:
或者,您将必须将数据导入PostGIS,然后使用ST_Centroid函数遍历多边形并将结果存储在新字段中。所涉及的工作大致相同,但是第二种选择意味着您没有单独的质心点文件。
迈克答案的更强大解决方案:
long = toreal(regexp_substr(geom_to_wkt(centroid($geometry)), '(-?\\d+\\.?\\d*) -?\\d+\\.?\\d*'))
lat = toreal(regexp_substr(geom_to_wkt(centroid($geometry)), '-?\\d+\\.?\\d* (-?\\d+\\.?\\d*)'))
lon = ToReal(regexp_substr(geomToWKT(centroid($ geometry)),'([\ s]'))lat = ToReal(regexp_substr(geomToWKT(centroid($ geometry)),'\ s [)]'))