找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1558|回复: 22

[编程申请]:谁帮帮忙?

[复制链接]
发表于 2003-8-18 08:32:38 | 显示全部楼层 |阅读模式

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

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

×
在CAD 中,编写一道LISP程序
可实现对图面中数字的相减。
我经常要统计工程量。

各位老大,请帮帮忙。谢谢。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2003-8-18 09:40:49 | 显示全部楼层
下面的代码已测试通过:

  1. (defun c:xj()
  2.         (setq minuend(getreal "\n被减数="))
  3.         (setq ss(ssget "x" (list(cons 0 "TEXT"))))
  4.         (setq n(if ss (sslength ss) 0))
  5.         (while(> n 0)
  6.                   (setq n(1- n))
  7.                 (setq si(ssname ss n)
  8.                                 st(cdr(assoc 1 (entget si)))
  9.                                 subtrahend(atof st)
  10.                 )
  11.                 (setq minuend(- minuend subtrahend))
  12.         )
  13.         (princ "\ndifference=")(princ minuend)
  14.         (princ)
  15. )

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

使用道具 举报

发表于 2003-8-18 10:21:10 | 显示全部楼层
用文字修改大师吧,很好用的
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2003-8-19 09:59:23 | 显示全部楼层
先谢谢那位大哥

只是我的要求是:例如图面中有两个数譬如18.2 ,20.3
然后我输入命令
直接用鼠标选取那两个数,并把结果直接写在图中。

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

使用道具 举报

发表于 2003-8-19 11:07:50 | 显示全部楼层
最初由 chenhang1203 发布
[B]用文字修改大师吧,很好用的 [/B]


是的,文字修改大师可以实现数字的加减乘除运算。
http://www.xdcad.net/forum/showthread.php?threadid=76108
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-8-20 16:21:02 | 显示全部楼层
我看了看,按照楼主的意思,好象文字大师做不到啊,二楼的程序也不对,哪个高手看看?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-8-20 16:29:17 | 显示全部楼层
最初由 chenhang1203 发布
[B]我看了看,按照楼主的意思,好象文字大师做不到啊,二楼的程序也不对,哪个高手看看? [/B]


文字修改大师可以做到呀,不能做到的就是直接写在图中,我原来的版本就是这样的,但这样不好控制字的层,大小,位置等,所以你拷贝一个文字放在旁边,做结果文字不就得了。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-8-20 16:35:31 | 显示全部楼层
最初由 coolzhb 发布
[B]

文字修改大师可以做到呀,不能做到的就是直接写在图中,我原来的... [/B]

楼主需要的是用鼠标点取被减数和减数,然后输出差值,文字大师需要复制被减数,然后选择这个复制的被减数,然后用键盘输入减数,得到结果,有点麻烦的。。。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 6530个

财富等级: 富甲天下

发表于 2003-8-20 19:07:02 | 显示全部楼层
最初由 chenhang1203 发布
[B]
楼主需要的是用鼠标点取被减数和减数,然后输出差值,文字大师需要复制被减数,然后选... [/B]


看看ce.lsp

  1. <table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="700" id="AutoNumber1" height="498">
  2.   <tr>
  3.     <td width="100%" height="489">
  4.       <iframe name="I1" width="100%" height="100%" src="http://www.xdcad.net/forum/showthread.php?threadid=27605">
  5. 浏览器不支持嵌入式框架或配置为不显示嵌入式框架
  6.       </iframe>
  7.     </td>
  8.   </tr>
  9. </table>
复制代码
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

发表于 2003-8-21 09:14:12 | 显示全部楼层
试试k sh2003  先生的cad计算器吧,个人觉得满合适的
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-8-21 11:14:40 | 显示全部楼层
楼上推荐的还不错,不过有时操作失误就死了,要小心的选数字。。。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-8-21 11:32:20 | 显示全部楼层
最初由 chenhang1203 发布
[B]
楼主需要的是用鼠标点取被减数和减数,然后输出差值,文字大师需要复制被减数,然后选... [/B]


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

使用道具 举报

 楼主| 发表于 2003-8-21 11:41:14 | 显示全部楼层
coolzhb兄的工具好用,但不太适合我说的要求
zhqchn 兄的LSP我也试过,加法做得完美,因为它可以实现多个数相加并标注;
而减法的运算,只能实现多个数同时减去同一个减数并标注
也就是只能是一次甲减去乙,倘若能实现一次甲减去乙再减去丙或更多
那我的问题就基本解决了。

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

使用道具 举报

发表于 2003-10-14 17:26:51 | 显示全部楼层
(defun c:jx(/ txt1 nmtxt1 list1 real1 txt2 nmtxt2 list2 real2
               txt3 nmtxt3 list3 real3)
    (setq txt1 (entsel "\n选择第一文字:"))
    (while (or (null txt1) (if txt1 (/= (cdr (assoc 0 (entget (car txt1)))) "TEXT")))
           (setq txt1
                   (entsel "\n没有选中, 重选:")
           )
    )
    (setq nmtxt1 (car txt1))
    (setq list1 (entget nmtxt1))
    (redraw nmtxt1 3)
    (setq real1 (atof (cdr (assoc 1 list1))))

    (setq txt2 (entsel "\n选择第二文字:"))
    (while (or (null txt2) (if txt2 (/= (cdr (assoc 0 (entget (car txt2)))) "TEXT")))
           (setq txt2
                   (entsel "\n没有选中, 重选:")
           )
    )
    (setq nmtxt2 (car txt2))
    (setq list2 (entget nmtxt2))
    (redraw nmtxt2 3)
    (setq real2 (atof (cdr (assoc 1 list2))))
   
    (setq real3 (- real1 real2))

    (setq txt3 (entsel "\n选择第三文字:"))
    (while (or (null txt3) (if txt3 (/= (cdr (assoc 0 (entget (car txt3)))) "TEXT")))
           (setq txt3
                   (entsel "\n没有选中, 重选:")
           )
    )
    (setq nmtxt3 (car txt3))
    (setq list3 (entget nmtxt3))
    (redraw nmtxt3 3)

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-20 17:55 , Processed in 0.214140 second(s), 61 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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