明经CAD社区

 找回密码
 注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

楼主: 王咣生

简约而不简单

  [复制链接]
发表于 2004-4-1 01:26 | 显示全部楼层
再来个vl的[code="lisp] ;(str2lst str) 将输入的数据转换为字符串列表.v1b-----------------梁雄啸.2004.3 ;测试:   (str2lst   "Hello 2World 12 5456.1568")   -> ("Hello" "2World" "12" "5456.1568") ;版权所有,盗用必究!如在程序中引用,请保留文字信息行. (defun str2lst (str /)    (read(vl-list->string    (apply 'append(mapcar '(lambda (x)(if (= 32 x) (list 34 32 34) (list x)))(append (list 40 34)(vl-string->list str)(list 34 41))))    )       ) )[/code]
 楼主| 发表于 2004-4-1 11:47 | 显示全部楼层

按 X, Y, Z 排序坐标表(AutoLISP, VisualLISP解决方案):

按 X, Y, Z 排序坐标表(AutoLISP, VisualLISP解决方案):

1) 用AutoLISP实现的代码:

2) 用VisualLISP(vl-sort函数)实现的代码:

本帖子中包含更多资源

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

x
 楼主| 发表于 2004-4-1 11:56 | 显示全部楼层

回复

无痕, 专家, 谢谢支持!
发表于 2004-4-1 23:44 | 显示全部楼层
转贴一个秋枫的点表按照xyz排序的程序[code="lisp] Sort_and_Write_pList :见附件 (defun Sort_and_Write_pList (fname plist / fp pt)    ;; sort plist first    (setq plist (vl-sort plist                  '(lambda (p1 p2)          (cond ((< (car p1) (car p2)) T)        ((and (= (car p1) (car p2))                    (< (cadr p1) (cadr p2))          )          T        )        ((and (= (car p1) (car p2))                    (= (cadr p1) (cadr p2))                    (< (caddr p1) (caddr p2))          )          T        )        (T nil)          )      )              )    )[/code]
发表于 2004-4-1 23:47 | 显示全部楼层
再来一个,更简洁的通用程序,有人顶么?有人顶再贴:)
 楼主| 发表于 2004-4-5 09:24 | 显示全部楼层

别这样吗

别这样吗,贴出来吧!
发表于 2004-4-5 21:11 | 显示全部楼层
我不喜欢唱独角戏,让我换个思路再想想,争取用别的方法再写一个出来
 楼主| 发表于 2004-4-8 13:22 | 显示全部楼层

我们期待

我们期待着...
发表于 2004-5-3 13:53 | 显示全部楼层
本帖最后由 作者 于 2004-5-3 14:14:57 编辑

vl-remove   的纯lsp写法[code="lisp] ;| (x:removeat at lst ) = 表剔除元素;-------------无痕.2004.1 ;提示;  等同于: (vl-remove   element-to-remove   list)   (x:removeat "a" '(58 3 (a . 8) "a" 4.5)) -> (58 3 (A . 8) 4.5) |; (defun x:removeat (at lst) ;at=atom    (apply 'append (subst nil (list at) (mapcar 'list lst))) )[/code]xex   炸开嵌套块.[code="lisp]   ;xex = 炸开嵌套块.-----by 无痕.2004.4 (defun c:xex ()    (princ "\n炸开嵌套块.--------------by 无痕.2004.4")    (setvar "qaflags" 1)    (setq ss (ssget '((0 . "INSERT"))))    (while (setq ss (ssget "P" '((0 . "INSERT"))))        (command ".explode" ss "")    )(princ) ) [/code]
发表于 2004-5-13 00:26 | 显示全部楼层
无痕兄真了不起!佩服ing!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2018-12-15 22:41 , Processed in 0.160666 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.3

© 2001-2013 Comsenz Inc.

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