各表的相加算法
我这里有一组坐标数据 我想要每个坐标的X值相加然后求出平均数Y值相加求出平均数 最后得出新的一个坐标下面是坐标数据((539098.0 2.59127e+006) (539085.0 2.59126e+006) (539079.0 2.59128e+006) (539072.0 2.59128e+006) (539083.0 2.59125e+006) (539084.0 2.59124e+006) (539098.0 2.59125e+006))
X=(x1+x2....Xn)/n
Y=(Y1+Y2...YN))/N
(XY)
最后的(X Y)是我想要的
本帖最后由 lisperado 于 2018-10-30 13:23 编辑
(setq lst
'((539098.0 2.59127e+006) (539085.0 2.59126e+006) (539079.0 2.59128e+006) (539072.0 2.59128e+006) (539083.0 2.59125e+006) (539084.0 2.59124e+006) (539098.0 2.59125e+006))
)
;举例1
(mapcar '(lambda (f) (/ (apply '+ (mapcar f lst)) (length lst))) '(car cadr))
;(539086.0 2.59126e+006)
;举例2
(mapcar '(lambda (x) (/(apply '+ x)(length lst))) (apply 'mapcar (cons 'list lst)))
;(539086.0 2.59126e+006)
lisperado 发表于 2018-10-30 13:21
谢谢我想用这个方法求 几何图形的中心你认为可行吗 852456 发表于 2018-10-30 13:49
谢谢我想用这个方法求 几何图形的中心你认为可行吗
此方法不能对不规矩形态几何有孤,曲线图形或固体(solid)中心/重心有别...
以前见过别人帖子,先转换成面域Region再以vla-get-centroid获取中心点。
但好像有bug,不能离基点'(0. 0. 0.)太远 852456 发表于 2018-10-30 13:49
谢谢我想用这个方法求 几何图形的中心你认为可行吗
不可行,这样算出来的并不是几何图形的中心。只有少数正规的多边形能满足这个公式的要求。 evayleung 发表于 2018-10-30 20:20
不可行,这样算出来的并不是几何图形的中心。只有少数正规的多边形能满足这个公式的要求。
你好 能给我个求几何中心的 子程序吗我在论坛里找过一个求几何中心的 不过那个要图形都闭合的 本帖最后由 llsheng_73 于 2018-11-1 16:47 编辑
(setq l'((539098.0 2.59127e+006) (539085.0 2.59126e+006) (539079.0 2.59128e+006) (539072.0 2.59128e+006) (539083.0 2.59125e+006) (539084.0 2.59124e+006) (539098.0 2.59125e+006)))
(setq i(length l)i(list i i))
(mapcar'/(apply'mapcar(cons'+ l))i) 计算任意图形的"中心"比较复杂,可以看看高飞鸟的多边形最大内切圆 llsheng_73 发表于 2018-11-1 21:25
计算任意图形的"中心"比较复杂,可以看看高飞鸟的多边形最大内切圆
好的 谢谢
页:
[1]