明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1876|回复: 2

关于X Y Z 排序的那个算法,求高人加注释..

[复制链接]
发表于 2011-12-10 21:36:48 | 显示全部楼层 |阅读模式
;;;-------------------------------------------
;;;给表sszwd:((x y)(x y)(x y)......)根据X Y 给定的表达式进行排序-
;;;oflist :(0 > <)其中第一元素表示以X(0)优先还是以Y(1)优先
;;;第二位为X的排序关系第三位为Y的排序关系
(defun NetBee_px (xyzlist oflist / one x y e1 e2 one two oneof twoof)
  (setq one (car oflist))
  (if (= one 0)
    (setq one        car
          two        CADR
          oneof        (cadr oflist)
          twoof        (caddr oflist)
    ) ;_ 结束setq
    (setq one        cadr
          two        CAR
          oneof        (caddr oflist)
          twoof        (cadr oflist)

    ) ;_ 结束setq
  ) ;_ 结束if
  (vl-sort xyzlist
           (function (lambda (e1 e2)
                       (cond ((oneof (one e1)
                                     (one e2)
                              ) ;_ 结束oneof
                             )

                             ((= (one e1)
                                 (one e2)
                              ) ;_ 结束=

                              (twoof (two e1)
                                     (two e2)
                              ) ;_ 结束twoof
                             )
                       ) ;_ 结束cond
                     ) ;_ 结束lambda
           ) ;_ 结束function
  ) ;_ 结束vl-sort

) ;_ 结束defun

上面是在论坛下载到的,看了好几遍没看懂。



不知道里面怎么排序的
我把xyzlist 赋值了一个表   oflist 赋值(0 > <)  也没算出来..   
发表于 2012-9-19 10:53:34 | 显示全部楼层
希望高手来解答,,
发表于 2012-9-23 14:17:29 | 显示全部楼层
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2025-8-28 00:21 , Processed in 0.163327 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表