找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 799|回复: 7

[求助] [求助]:求一修改小数点位数的程序

[复制链接]
发表于 2005-8-24 10:04:34 | 显示全部楼层 |阅读模式

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

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

×
偶有一软件生成的数字俱为小数点后3位小数,偶想改为两位,不知道哪位高手有这方面的程序,最好在改的时候还能四舍五入!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2005-8-24 11:53:00 | 显示全部楼层
这是我以前写的一个程序,也是三位转两位的,希望对你有用

(defun c:txtpsi ()
  (setvar "cmdecho" 0)
  (setq defent (entget (car (entsel "\nPlease select a text object:")) ))
  (setq lay_name (cdr (assoc 8 defent)) )
  (setq me (cdr (assoc 0 defent)) )
  (setq ssl (ssget "X" (list (cons 0 me ) (cons 8 lay_name))))
  (setq count 0)

   (while (< count (sslength ssl))
          (setq edc (entget (ssname ssl count)))
          (setq oldtxt (assoc 1 edc)
                tstr (cdr oldtxt))
          (setq tstr (rtos (atof tstr) 2 2 ) )
          (setq edc (subst (cons 1 tstr) (assoc 1 edc) edc))
          (entmod edc)
          (setq count (1+ count))
  );while
(princ "OK")
(princ)
)
运行时,选定一个文本来指定图层就行了
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

发表于 2005-8-24 17:07:26 | 显示全部楼层
最初由 hisum 发布
[B]这是我以前写的一个程序,也是三位转两位的,希望对你有用

(defun c:txtpsi ()
  (setvar "cmdecho" 0)
  (setq defent (entget (car (entsel "\nPlease select a text object:")) ))
  (setq lay_name (cdr (... [/B]

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

使用道具 举报

发表于 2005-8-24 17:58:41 | 显示全部楼层
谢谢提醒,当时我的图形里,数字是在同一个图层内,所以没有考虑到文本不是数字的情况
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

已领礼包: 69个

财富等级: 招财进宝

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

使用道具 举报

发表于 2005-8-24 19:57:35 | 显示全部楼层
  1. [FONT=courier new](load "xyp_lib")
  2. ;|加载通用函数(可在签名栏直接下载)
  3. 如果已经下载xyp_lib并放到搜索路径下可以不再下载!
  4. 利用以下任何一种方式即可加载和运行通用函数内的所有子程序:
  5. 1.在acad.lsp中增加(load"xyp_lib")
  6. 2.在每个程序内增加(load"xyp_lib")
  7. 3.在command下,输入(load"xyp_lib")
  8. 4.在菜单.mnl中增加(load"xyp_lib")
  9. 5.将xyp_lib.vlx文件直接拽到cad屏幕
  10. [COLOR=red] ★通用函数下载地址:[/COLOR]
  11. [url]http://www.xdcad.net/forum/attachment.php?s=&postid=1606661[/url]
  12. [url]http://www.mjtd.com/bbs/dispbbs.asp?boardID=3&ID=37554&page=1[/url]|;

  13. ;;;批量修改小数点位数
  14. (defun c:test ()
  15.   (CMDLA0)
  16.   ;(setvar "DIMZIN" 0)
  17.   (setq        num (UINT 5 "" "\n小数点位数" num)
  18.         ss  (ssget '((0 . "TEXT")))
  19.         i   -1
  20.   )
  21.   (while (setq s1 (ssname ss (setq i (1+ i))))
  22.     (setq tx (dxf 1 (entget s1)))
  23.     (if        (= (vl-string-left-trim "0123456789." tx) "")
  24.       (progn
  25.         (setq tx1 (rtos (atof tx) 2 num))
  26.         (sub_upd s1 1 tx1)
  27.       )
  28.     )
  29.   )
  30.   (CMDLA1)
  31. )[/FONT]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-28 13:07 , Processed in 0.301455 second(s), 46 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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