找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1034|回复: 7

[已解决] 求助图元表排序问题,如何实现双向排序[已解决]

[复制链接]

已领礼包: 201个

财富等级: 日进斗金

发表于 2021-1-18 17:56:14 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

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

×
本帖最后由 a117034423 于 2021-1-22 07:45 编辑

求助图元表排序问题,如何实现双向排序-1.jpg
  1. (defun Sortenlst (objLst)
  2.   (mapcar
  3.     '(lambda (i) (nth i objLst))
  4.     (vl-sort-i
  5.       (mapcar '(lambda (obj)
  6.                  (apply 'mapcar (cons 'min (vl-remove nil (mapcar  '(lambda (x) (if (= (car x) 10) (cdr x))) (entget obj)))))) objLst)
  7.       '(lambda (a b)
  8.         (if (equal (car a) (car b) 1e-3) ; Equal x.
  9.           (if (equal (cadr a) (cadr b) 1e-3) ;equal y
  10.           (< (car a) (car b))
  11.           (< (cadr a) (cadr b)))
  12.           (< (car a) (car b))
  13. )

  14.       )
  15.     )
  16.   )
  17. )

代码借用了Lisphk的排序函数,如何实现XY的双向排序,X相等按Y排,Y相等按X排,整体顺序按X排
想不明白判定条件了
1.png
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 19个

财富等级: 恭喜发财

发表于 2021-1-18 18:47:38 | 显示全部楼层
去看下 开源函数库论坛的
xd::pickset:tablesort
xd::list:groupbyindex

在去看下插件论坛的那个 排版 插件

如果你静下来,仔细去看函数库论坛的每个函数,理解他们,绝对帮助很大
然后去看 插件论坛 的插件源码

点评

好的,我也是一直再找,没有熟用关键字  详情 回复 发表于 2021-1-19 07:44
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 20个

财富等级: 恭喜发财

发表于 2021-1-18 21:40:26 | 显示全部楼层


论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 20个

财富等级: 恭喜发财

发表于 2021-1-18 21:49:24 | 显示全部楼层



                               
登录/注册后可看大图


                               
登录/注册后可看大图




                               
登录/注册后可看大图



                               
登录/注册后可看大图



                               
登录/注册后可看大图



                               
登录/注册后可看大图



                               
登录/注册后可看大图




                               
登录/注册后可看大图

点评

谢了 老大 ,感谢您的支持回复  详情 回复 发表于 2021-1-19 07:46
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 201个

财富等级: 日进斗金

 楼主| 发表于 2021-1-19 07:44:25 | 显示全部楼层
Lisphk 发表于 2021-1-18 18:47
去看下 开源函数库论坛的
xd::pickset:tablesort
xd::list:groupbyindex

好的,我也是一直再找,没有熟用关键字
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 201个

财富等级: 日进斗金

 楼主| 发表于 2021-1-19 07:46:11 | 显示全部楼层

谢了 老大 ,感谢您的支持回复
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 19个

财富等级: 恭喜发财

发表于 2021-1-19 11:00:46 | 显示全部楼层
算法思想就是
1、从选择集生成包围框
2、包围框左侧 和下侧 直线做基准,两个方向的实体从自身基准点(中点)到 直线距离组成关联表
3、按照关联表排序

点评

谢谢了 老大xd::pickset:tablesort 的排序 和我想要的排序情况不太一样 我看说明生成的是按行或按列 我是想在选择集里,如果X相等就按行 Y相等就按列 不相等就按X 有个双重判断 让程序自行判断 我还是没想好用什  详情 回复 发表于 2021-1-19 11:22
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 201个

财富等级: 日进斗金

 楼主| 发表于 2021-1-19 11:22:52 | 显示全部楼层
Lisphk 发表于 2021-1-19 11:00
算法思想就是
1、从选择集生成包围框
2、包围框左侧 和下侧 直线做基准,两个方向的实体从自身基准点(中 ...

谢谢了 老大xd::pickset:tablesort 的排序 和我想要的排序情况不太一样
我看说明生成的是按行或按列
我是想在选择集里,如果X相等就按行 Y相等就按列 不相等就按X
有个双重判断 让程序自行判断 我还是没想好用什么条件判断
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-11-15 08:25 , Processed in 0.431065 second(s), 46 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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