找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 694|回复: 6

[求助]:PKPM钢筋符号转化为%%130、%%131Lisp程序

[复制链接]
发表于 2003-5-20 20:24:42 | 显示全部楼层 |阅读模式

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

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

×
小弟在论坛上看到了这样一则贴子,现在找不到了,可以我没有爱心币。
现在提供几个好站:
http://www.qiufeng.net   好多下载
http://www.366.com      下载多多
能否烦请哪位大侠给小弟发一份 PKPM钢筋符号转化为 %%130、%%131的Lisp程序,万分感谢
civil_liyan@sina.com
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2003-5-20 23:28:49 | 显示全部楼层
ok了:

  1. (defun c:pkpmtoa ( / gs n m oldg oldgj gjt gjta gjja gjjb )
  2.   (setq gs (ssget '((0 . "TEXT"))))
  3.   (setq n 0)
  4.   (setq m (sslength gs))
  5.   (while (/= n m)
  6.     (setq oldg (entget (ssname gs n)))
  7.     (setq gjt (dxf 1 oldg))
  8.     (setq gjje (cons 1 gjt))
  9.     (if        (or (= (setq gjjb (substr gjt 1 1)) "\202")
  10.             (= (setq gjjb (substr gjt 1 1)) "\203")
  11.         )
  12.       (progn
  13.         (if (= gjjb "\202")
  14.           (progn
  15.             (setq gjja (substr gjt 2))
  16.             (setq gjta (strcat "%%130" gjja))
  17.           )
  18.           (progn
  19.             (setq gjja (substr gjt 2))
  20.             (setq gjta (strcat "%%131" gjja))
  21.           )
  22.         )
  23.         (setq oldg (subst (cons 1 gjta) gjje oldg))
  24.         (entmod oldg)
  25.       )
  26.     )
  27.     (if        (or (= (setq gjjb (substr gjt 2 1)) "\202")
  28.             (= (setq gjjb (substr gjt 2 1)) "\203")
  29.         )
  30.       (progn
  31.         (if (= gjjb "\202")
  32.           (progn
  33.             (setq gjjc (substr gjt 1 1))
  34.             (setq gjja (substr gjt 3))
  35.             (setq gjta (strcat gjjc "%%130" gjja))
  36.           )
  37.           (progn
  38.             (setq gjjc (substr gjt 1 1))
  39.             (setq gjja (substr gjt 3))
  40.             (setq gjta (strcat gjjc "%%131" gjja))
  41.           )
  42.         )
  43.         (setq oldg (subst (cons 1 gjta) gjje oldg))
  44.         (entmod oldg)
  45.       )
  46.     )
  47.     (if        (or (= (setq gjjb (substr gjt 3 1)) "\202")
  48.             (= (setq gjjb (substr gjt 3 1)) "\203")
  49.         )
  50.       (progn
  51.         (if (= gjjb "\202")
  52.           (progn
  53.             (setq gjjc (substr gjt 1 2))
  54.             (setq gjja (substr gjt 4))
  55.             (setq gjta (strcat gjjc "%%130" gjja))
  56.           )
  57.           (progn
  58.             (setq gjjc (substr gjt 1 2))
  59.             (setq gjja (substr gjt 4))
  60.             (setq gjta (strcat gjjc "%%131" gjja))
  61.           )
  62.         )
  63.         (setq oldg (subst (cons 1 gjta) gjje oldg))
  64.         (entmod oldg)
  65.       )
  66.     )
  67.     (setq n (1+ n))
  68.   )
  69. )


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

使用道具 举报

 楼主| 发表于 2003-5-21 00:10:02 | 显示全部楼层
☆当代活雷锋☆你好!文件下载了,可是运行时出现以下提示

; error: no function definition: DXF    未能成功。
但另一位好心人给我发了一份
作者是 甘燕良 的好用。
在此对二位表示感谢!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-5-21 00:41:36 | 显示全部楼层
呵呵,疏忽了,现在贴上:
(defun dxf (code elist)
  (cdr (assoc code elist))
)

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

使用道具 举报

 楼主| 发表于 2003-5-21 01:02:06 | 显示全部楼层
我将上二行代码加到了程序开始,运行正常。
谢谢雷锋同志!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-5-21 05:21:43 | 显示全部楼层
程序的原理是判断字符串的头三个是否为钢筋符号,至于第四个字符是否为钢筋符号我觉得没有必要,至少我还没有见过有配一百跟钢筋以上的。两为数的钢筋到时有的。
我自己觉得这个程序好像太烦琐了,主要是为了满足功能要求仓促间编成的,没有细细推敲。不知可否再简化一点。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-6-1 11:50:41 | 显示全部楼层
斑竹能不能将修改后能用的程序再贴一下?小弟对编程一窍不通啊
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-9 09:00 , Processed in 0.281607 second(s), 42 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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