明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1442|回复: 3

[基础] 求调试程序,提取之列表中的元素

[复制链接]
发表于 2013-4-3 22:07:18 | 显示全部楼层 |阅读模式
本帖最后由 richine001 于 2013-4-4 12:30 编辑

   







小弟编了个小程序,在矩形只能一个角点,然后根据其与角点的与制定角点的距离大小,进行排序,最后生成的坐标不提取
求大侠们给予帮忙!!!!

提取
newlst子列表的每个子列表,并将子列表中的第二个子列表提取出来求帮助
newlst
'((0.0 (-530436.0 -419526.0)) (800.0 (-531236.0 -419526.0)) (800.0 (-530436.0 -418726.0)) (1131.37 (-531236.0 -418726.0)))
(setq A (nth0
newlst))
  (setq st1 (cadr A) )
以上语句为啥个不能实现??????、


(defun c:tt( )
  (vl-load-com)
  (setvar "osmode" 1)
  (setq ENT (entsel "选择箍筋:"))
  (setq mt1 (getpoint "输入特定点:"))
  (setq enst (car ENT))
  (setq d1 0.0  d2 0.0 d3 0.0 d4 0.0 )
  (vla-getboundingbox(vlax-ename->vla-object enst) 'minp 'maxp)
  (setq tt1(vlax-safearray->list minp)
        tt3(vlax-safearray->list maxp)
        t1 (list (car tt1) (cadr tt1))
        t2 (list (car tt1) (cadr tt3 ))
        t3 (list (car tt3) (cadr tt3))
    t4 (list (car tt3) (cadr tt1))
    mt (list (car mt1) (cadr mt1))
  )
  (setq  d1(distance t1 mt))
  (setq  d2(distance t2 mt))
  (setq  d3(distance t3 mt))
  (setq  d4(distance t4 mt))
  (setq dt1 (list d1 t1))
  (setq dt2 (list d2 t2))
  (setq dt3 (list d3 t3))
  (setq dt4 (list d4 t4))
  (setq lst (list dt1 dt2 dt3 dt4))
  (setq newlst (vl-sort lst
        '(lambda (a b) (< (car a) (car b))))
        lst (mapcar 'car ('car lst))
  )
  (setq aaa 0)
  (setq A (nth 0 newlst))
)






该贴已经同步到 richine001的微博

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
"觉得好,就打赏"
还没有人打赏,支持一下
 楼主| 发表于 2013-4-4 21:42:53 | 显示全部楼层
求帮忙哈求帮忙哈求帮忙哈求帮忙哈求帮忙哈求帮忙哈
发表于 2013-4-5 09:47:29 | 显示全部楼层
不知行不行。
  1. (defun c:tt( )
  2.   (vl-load-com)
  3.   (setvar "osmode" 1)
  4.   (setq ENT (entsel "选择箍筋:"))
  5.   (setq mt1 (getpoint "输入特定点:"))
  6.   (setq enst (car ENT))
  7.   (setq d1 0.0  d2 0.0 d3 0.0 d4 0.0 )
  8.   (vla-getboundingbox(vlax-ename->vla-object enst) 'minp 'maxp)
  9.   (setq tt1(vlax-safearray->list minp)
  10.         tt3(vlax-safearray->list maxp)
  11.         t1 (list (car tt1) (cadr tt1))
  12.         t2 (list (car tt1) (cadr tt3))
  13.         t3 (list (car tt3) (cadr tt3))
  14.         t4 (list (car tt3) (cadr tt1))
  15.         mt (list (car mt1) (cadr mt1))
  16.   )
  17.   (setq d1 (distance t1 mt));;计算各坐标点与制定点的距离
  18.   (setq d2 (distance t2 mt));;计算各坐标点与制定点的距离
  19.   (setq d3 (distance t3 mt));;计算各坐标点与制定点的距离
  20.   (setq d4 (distance t4 mt));;计算各坐标点与制定点的距离
  21.   (setq dt1 (cons d1 t1))
  22.   (setq dt2 (cons d2 t2))
  23.   (setq dt3 (cons d3 t3))
  24.   (setq dt4 (cons d4 t4))
  25. ;;;  (setq dt1 (cons d1 (list (car tt1)(cadr tt1))))
  26. ;;;  (setq dt2 (list d2 (car tt1)(cadr tt3)))
  27. ;;;  (setq dt3 (list d3 (car tt3)(cadr tt3)))
  28. ;;;  (setq dt4 (list d4 (car tt3)(cadr tt1)))
  29.   (setq lst (list dt1 dt2 dt3 dt4))
  30.   (setq lst (vl-sort lst '(lambda (a b) (< (car a) (car b))))
  31.         lst (mapcar 'cadr lst)
  32.   )
  33.   (setq A (car LST))
  34.   (setq st1 (list (car A) (cadr A)))
  35. )
 楼主| 发表于 2013-4-5 12:12:15 | 显示全部楼层
还是不行哈

点评

咋不行?  发表于 2013-4-5 21:26
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-5-31 01:11 , Processed in 0.175495 second(s), 28 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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