The weighted average position of a point cloud can sometimes be more useful than the ordinary average position, especially if there are outliers in the data. The maths behind it is relatively simple:
w ... weight sum(d) ... sum of distances between the weighted point and all other points p(w) ... weighted average position w = 1 / sum(d) p(w) = (p1*w1 + p2*w2 + ... + pn*wn) / (w1 + w2 + ... + wn)
You’ll only need a function that calculates all distances like in QGIS – fTools – Distance Matrix.
If you know any GIS implementing this function, please post them.