永发信息网

lisp 字符表 排序

答案:3  悬赏:0  手机版
解决时间 2021-01-24 22:52
  • 提问者网友:自食苦果
  • 2021-01-24 03:30
我有这样一个列表((变径 320 200 200 200 nil nil 1) (直管 200 200 200 200 nil nil 1)(弯头 400 250 400 250 nil nil 1) (三通 400 250 250 200 400 320 1) (直管 400 320 400 320 nil nil 1) (变径 400 320 320 200 nil nil 1)),我想按每个表项的前3项进行排列。我用(setq line_l_tmp
(vl-sort line_l_tmp
(function (lambda (e1 e2)
(> (ascii (nth 0 e1)) (ascii (nth 0 e2)))
(< (nth 1 e1) (nth 1 e2))
(< (nth 2 e1) (nth 2 e2))
)
)
)
)
这样只是按第2 和第3项进行排列,第一项 文字项还是乱的,请教高手。
最佳答案
  • 五星知识达人网友:鸠书
  • 2021-01-24 03:39
我想你第一项是文字,文字应该用字符串表示。如果没有字符串,默认为符号,排序估计是不是会产生问题。
全部回答
  • 1楼网友:风格不统一
  • 2021-01-24 04:41
AutoLisp不是通用的lisp不知道是否支持sort函数,common lisp里可以用sort 函数排序。
  • 2楼网友:迷人又混蛋
  • 2021-01-24 04:02
使用vl-sort函数 再看看别人怎么说的。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯