注册 登录
明经CAD社区 返回首页

yxp的个人空间 http://www.mjtd.com/?77098 [收藏] [复制] [分享] [RSS]

日志

除去坐标相同的点

已有 1336 次阅读2005-11-20 22:26 |系统分类:开发

;;除去坐标相同的点,传入参数 cxb 为xy坐标表
(defun C-check(cxb / n xxx)
   (setq n 0 m 0 xxx '())
   (setq cxb (vl_sort cxb
             (function (lambda (e1 e2)
                         (< (car e1) (car e2)) ) ) ))
  (while (< n (length cxb))

    (setq cx1 (nth n cxb)
          xxx (cons (nth n cxb) xxx)
            n (1+ n)
          cx2 (nth n cxb)

    )(while (= (car cx1)(car cx2))
        (setq n (+ 1 n) m (1+ m)
              cx2 (nth n cxb))
             
  ))(if (> m 0)
  (princ (strcat " 共有坐标的点 " (itoa m) " 个")))
  (reverse xxx)

)

(defun vl_sort (lst fun / k nlst lst2)
  (foreach n lst
    (setq   k T
         lst2 (apply 'append (mapcar '(lambda (x)
            (if (and K ((eval fun) n x)) (progn (setq k nil) (list n x)) (list x))
          ) nlst))
   nlst (if K (append lst2 (list n)) lst2)
    )
  )
)


路过

雷人

握手

鲜花

鸡蛋

发表评论 评论 (1 个评论)

回复 hhc 2006-7-7 10:54
(C-check '((1 1 2) (3 3 5) (1 1 3))) 返回'((1 1 2) (3 3 5))  好象不正确哦

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

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

GMT+8, 2024-5-2 23:52 , Processed in 0.443768 second(s), 16 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部