You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在AutoLISP中对嵌套坐标列表的X、Y元素分别求和?

求解LISP坐标列表的X、Y坐标总和

首先把你的坐标列表定义为变量:

(setq coords '((587243.0 4.04705e+006) (587242.0 4.04704e+006) (587228.0 4.04704e+006)  (587226.0 4.04704e+006) (587227.0 4.04705e+006) (587243.0 4.04705e+006)))

接下来分别计算X、Y坐标的总和并存入变量:

  • 计算X坐标总和:
(setq sum-x (apply #'+ (mapcar #'first coords)))
  • 计算Y坐标总和:
(setq sum-y (apply #'+ (mapcar #'second coords)))

简单解释

  • mapcar #'first coords 遍历坐标列表,提取每个点的第一个元素(X坐标),生成纯X坐标的列表
  • apply #'+ ... 把求和函数+作用在这个坐标列表上,得到所有X坐标的总和
  • second 用于提取每个点的第二个元素(Y坐标),逻辑和X坐标求和完全一致

如果要查看结果,直接打印变量即可:

(print sum-x)
(print sum-y)

内容的提问来源于stack exchange,提问作者Neperin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 09:12:13