明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
楼主: ljcgq

图元怎么按照从左到右的位置关系排序?

  [复制链接]
发表于 2004-2-5 14:36:00 | 显示全部楼层
好! 正是我想要的. 謝龍版. . 我在后面加上幾句就好了, 如下: (defun C:Test (/ SS N LEN_LIST a b )
(setq SS (ssget "x")
N 0
)
(repeat (sslength SS)
(setq
LEN_LIST (cons (list (setq ENT (ssname SS N))
(vlax-curve-getdistatparam
(setq ENT (vlax-ename->vla-object ENT))
(vlax-curve-getendparam ENT)
)
)
LEN_LIST
)
)
(setq N (1+ N))
)
(setq LEN_LIST (vl-sort LEN_LIST
(function (lambda (P1 P2) (< (cadr P1) (cadr P2))))
))
(setq n 0)
(repeat (sslength SS); 更新實體.
(setq a (car (nth n LEN_LIST )))
(setq b (entget a))
(entmake b)
(entdel a)
(setq n (1+ n)))
(PRINC "\n完成排序.")
)
发表于 2004-2-7 03:45:00 | 显示全部楼层
后面也可以写成 (foreach n len_list (entmake (entget(car n)))(entdel (car n))) 不过为了以后选择方便,简易这样: 。。。 (setq n 0 nss (ssadd))
(foreach n len_list (entmake (entget(car n))) (ssadd (entlast) nss)(entdel (car n)))
(PRINC "\n完成排序.")
发表于 2004-2-7 11:10:00 | 显示全部楼层
原程序能用,可经改进后用不了了执行"TT"直接就显示完成排序了,????
发表于 2004-2-7 14:48:00 | 显示全部楼层
可实际上已经重新排序了。你想要什么效果?
发表于 2004-2-7 15:18:00 | 显示全部楼层
如何实现按间隙最近进行排序?
发表于 2004-2-7 16:55:00 | 显示全部楼层
老大,我想问问 (setq n 0 nss (ssadd))
(foreach n len_list (entmake (entget(car n))) (ssadd (entlast) nss)(entdel (car n)))
(PRINC "\n完成排序.") 加在什么地方把什么代替, 见谅,我还不会LISP
发表于 2004-2-8 00:43:00 | 显示全部楼层
替换 (setq n 0)
(repeat (sslength SS); 更新實體.
(setq a (car (nth n LEN_LIST )))
(setq b (entget a))
(entmake b)
(entdel a)
(setq n (1+ n)))
(PRINC "\n完成排序.")
)
发表于 2004-2-8 09:14:00 | 显示全部楼层
还是跟以前一样啊,输入命令还没选线呢就完成了,只有第一个程序能看到排序 命令:
命令: paixu
完成排序."\n完成排序."
命令:
命令: paixu
完成排序."\n完成排序."
命令:
命令: paixu
完成排序."\n完成排序."
命令:
发表于 2004-2-8 10:07:00 | 显示全部楼层
第二个程序用了(setq SS (ssget "x")是对全图所有实体排序


你可改为 (setq ss (ssget)) 选取部分实体排序
发表于 2004-2-8 10:44:00 | 显示全部楼层
就显示如下内容,什么也没有啊,排到哪去了 命令:
命令: _appload 已成功加载 paixu.lsp。
命令:
命令:
命令: paixu
选择对象: 找到 1 个
选择对象: 找到 1 个,总计 2 个
选择对象: 找到 1 个,总计 3 个
选择对象: 找到 1 个,总计 4 个
选择对象: 找到 1 个,总计 5 个
选择对象:
完成排序."\n完成排序."
命令:
标注已解除关联。
标注已解除关联。
标注已解除关联。
命令:
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-27 14:30 , Processed in 0.194901 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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