选择集容差排序8式;上一贴是往返型,这一贴是折返型
本帖最后由 韩飞翔 于 2024-11-5 10:52 编辑测试代码如下:
(defun c:tt(/ fuzz lay mode xyp-mklaco yyy)
(defun xyp-mkLaCo (la co)
(if (= (tblsearch "layer" la) nil)
(if (= (type co) 'INT)
(command "-layer" "m" la "c" co "" "")
(command "-layer" "m" la "c" "t" co "" "")
)
(command "-layer" "t" la "")
)
(setvar 'clayer la)
(setvar 'cecolor "BYLAYER")
(setvar 'celtype "ByLayer")
(setvar 'celweight -1)
(princ)
)
(defun yyy(lst / i s1)
(setq i -1)
(repeat (length lst)
(setq
i (1+ i)
s1 (nth i lst)
)
(command "text" "j" "mc" (fx-9pt s1 5) 500 0 (rtos i 2 0))
)
)
(setq lay (getvar "CLAYER"))
(xyp-mkLaCo "临时文字" 1)
(setq fuzz 200 mode (getint "\n排序方式"))
(yyy (fx-sortss2 (ssget) mode fuzz))
(setvar "CLAYER" lay)
(princ)
) 有币的贡献个币,没币的下载这个;:lol
;;说明:飞翔中心容差排序8式
;;参数:ss:(ssget)
;;参数:mode:排序方式(前四个竖直分组,水平容差排序,后四个水平分组;竖直容差排序)
;1先下上后左右 2先下上后右左 3先上下后左右 4先上下后右左
;5先左右后下上 6先右左后下上 7先左右后下上 8先右左后上下
;;参数:fuzz:容差距离
;;返回:(fx-sortss2 (ssget) mode fuzz)
你有种再说一遍 发表于 2024-11-5 15:08
这个排序在C#也就一句List.OrderBy.
如果觉得麻烦还可以SortedSet,我之前不知道hashcode等于浮点数精度下 ...
惊老,神一样的人物,奈何不会c#;每次看惊佬发表的东西,都感觉像天书;但依然阻碍不了惊佬在我心中的地位;若有一天涉足.net了,一定好好向惊佬大神请教。 这个排序在C#也就一句List<X>.OrderBy.
如果觉得麻烦还可以SortedSet<X>,我之前不知道hashcode等于浮点数精度下降...
但是Lisp就要写很多代码了... 韩飞翔 发表于 2024-11-5 15:17
惊老,神一样的人物,奈何不会c#;每次看惊佬发表的东西,都感觉像天书;但依然阻碍不了惊佬在我心中的地位 ...
早日来玩,会感觉之前学过的都崩塌了 你有种再说一遍 发表于 2024-11-5 15:52
早日来玩,会感觉之前学过的都崩塌了
不错!很好:lol 韩飞翔 发表于 2024-11-5 10:56
有币的贡献个币,没币的下载这个;
感谢韩大师的分享 里面有没有分堆? 感谢韩大师的分享
页:
[1]
2