mccad 发表于 2010-12-3 23:18:32

LISP版块整顿公告

LISP版块是明经论坛最热门的版块,也是国内最好的LISP版块。
为了让LISP版块回归版块开设的宗旨,现对版块的发帖提出以下要求:
1.工具类的帖子,除了那些能够帮助开发人员的开发辅助工具外,一律不得在本版发帖,请移步到工具插件版块发帖。
2.源码类的帖子,如果你是本着相互学习交流,可以发,但如果只是做为一个工具提供给大家使用,请发到工具插件版块,另外,本站也有源码共享版块,你可以将你的源码及转帖的源码发到那里去。对于一半源码一半编译的程序,或关键源码被封装的程序(除了能够提供详细思路的),本版块不再欢迎。
3.资源类的帖子,一般不限制发帖,但版主会隔一段时间,将旧的资源类帖子转到相应的版块,如是资源,则转到开发资料版块去。
4.本版块不欢迎只是为了吸引眼球的与其它版块重复的帖子,也不欢迎只是为了在别人面前眩耀而没有实质内容的帖子。
5.本版块允许有粉丝,并不允许拉帮结派,不允许故意恶心。
6.总之,本版是技术讨论为主,而非大杂烩。
7.不允许钻牛角尖,各版主有权对版规做解释而对违规的会员进行处理。

461045462 发表于 2010-12-3 23:29:49

祝明经越办越好!

qcw911 发表于 2010-12-4 09:11:21

终于开始整顿了,有些帖子都看不过去了

AMTONNY 发表于 2010-12-4 20:57:46

终于看到整理了

linshiyin2 发表于 2010-12-4 21:00:57

顶起

1548845899 发表于 2010-12-5 18:03:02

mccad 发表于 2010-12-5 19:57:12

1548845899 发表于 2010-12-5 18:03 static/image/common/back.gif
建议明总提供网友举报不符合LISP版块贴的平台,符合后酌情加分,让有心无心关注网友都能起监督效应。

每个帖了的右下角的“举报”字样,就是拿来用的。

hhh454 发表于 2010-12-6 09:01:52

明经给了我学习 lisp的热情,里面的源码也很多,直接的工具更多,老师也很多,支持明经,祝明经越办越好

hhh454 发表于 2010-12-6 11:14:00

我也提一个小建议,首先我是一个菜鸟,学习lisp也是工作之余的兴趣,在学习的途中,遇到很多问题,在明经得到很多的启发,可是学习的例子还是很少,我想能不能请明总能够组织一些专业人士,给予初学者一些直接的回复,可以定时回复,出点子,我直接说一个例子:

代码实现的功能:连接 line arc pline 为pline (能够加入spline就更好了)
重要的参数:command(我觉得这个命令其实可以解决很多的功能)
cad原有命令:pedit(下面是执行的效果,有两种)
第一种:
命令: pe PEDIT 选择多段线或 [多条(M)]: m
选择对象: 指定对角点: 找到 4 个
选择对象:
输入选项
[闭合(C)/打开(O)/合并(J)/宽度(W)/拟合(F)/样条曲线(S)/非曲线化(D)/线型生成(L)/放
弃(U)]: j
合并类型 = 延伸
输入模糊距离或 [合并类型(J)] <0.0000>:
多段线已增加 3 条线段
输入选项
[闭合(C)/打开(O)/合并(J)/宽度(W)/拟合(F)/样条曲线(S)/非曲线化(D)/线型生成(L)/放
弃(U)]:

第二种:
命令: pe PEDIT 选择多段线或 [多条(M)]: m
选择对象: 指定对角点: 找到 4 个
选择对象:
是否将直线和圆弧转换为多段线?[是(Y)/否(N)]? <Y> y(这里就是两者不同的地方)
输入选项
[闭合(C)/打开(O)/合并(J)/宽度(W)/拟合(F)/样条曲线(S)/非曲线化(D)/线型生成(L)/放
弃(U)]: j
合并类型 = 延伸
输入模糊距离或 [合并类型(J)] <0.0000>:
多段线已增加 3 条线段
输入选项
[闭合(C)/打开(O)/合并(J)/宽度(W)/拟合(F)/样条曲线(S)/非曲线化(D)/线型生成(L)/放
弃(U)]:
lisp执行代码:
对应第一种:
(defun c:pp()
   (prompt "\n 多项选择同时连线----钮广春整理--★QQ-626860125★")
   (setq ngc01 (ssget))
   (command "_pedit" "m" ngc01 "" "j" "0.1" ""))

对应第二种:
(defun c:ppp()
   (prompt "\n 多项选择同时连线----钮广春整理--★QQ-626860125★")
   (setq ngc01 (ssget))
   (command "_pedit" "m" ngc01 "" "y" "j" "0.1" ""))

我自己的解决:通过看cad的帮助文件,我明白了,通过修改系统参数PEDITACCEPT就可以实现上面的选择,参数为1时对应
                        “第一种lisp”,参数为0时对应“第二种lisp”。
自己解决的代码:(我不管是不是直线、圆弧我都进行转化)
(defun c:ppp()
   (prompt "\n 多项选择同时连线----钮广春整理--★QQ-626860125★")
   (command "peditaccept" 1)   ;加入这个系统变量的代码
   (setq ngc01 (ssget))
   (command "_pedit" "m" ngc01 "" "j" "0.1" ""))
提出问题:通过两种代码,我已经能够理解,但是我想和二为一,如何编写代码自己判断执行“第一种lisp”或者“第二种lisp”
               需然我自己的方法也可行,但是我就想学习怎么让代码自动判断,通过这个例子我可以用到其他地方。
想得到的帮助:直接的代码,根据选择的图元,代码自己判断进行“第一种lisp”或者“第二种lisp”的执行,不要太长的代码,
                        简明,最好能给对应的解释,解释可以很直白。


飞诗(fsxm) 发表于 2010-12-6 12:01:32

fsxm.mjtd.com程序包中现成的源码:
;;做多义线
(defun fs_mak_pline (ss / la ss2)
(setvar "cmdecho" 0)
(setq la (entlast))
(command ".pedit" "m" ss)
(while (> (getvar "cmdactive") 0) (command ""))
(setq ss2 (fsxm-newselection la))
(command ".pedit" "m" ss ss2 "" "j" 1e-4)
(while (> (getvar "cmdactive") 0) (command ""))
(princ)
)
(defun c:mak_pline (/ ss)
(princ "\n选择要连成多线段的线,弧,多线段:")
(setq ss (ssget '((0 . "line,arc,lwpolyline"))))
(if ss
    (fs_mak_pline ss)
)
)
页: [1] 2 3
查看完整版本: LISP版块整顿公告