找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 4463|回复: 45

[求助]:文字修改大师的作者coolzhb请进~

[复制链接]
发表于 2004-11-24 19:58:07 | 显示全部楼层 |阅读模式

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

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

×
今天下了您作的文字修改大师,用了后觉得非常好。
我这2天也在做一个类似的小程序,由于刚接触AUTOCAD的2次开发,有太多的地方不懂。而单位要求这个星期做好,时间比较紧,特冒昧发这个帖子给你,十分期待您的解答。
程序的要求就是批量修改图中的高程点和高程注记,把高程点的Z坐标属性值以及高程注记的文本值都减去一个常数,如0.5。详细内容在我发的这个帖子里。http://www.xdcad.net/forum/showthread.php?s=&threadid=298189
我下午用了文字修改大师,您能告诉我批量选择文本、修改文本的算法吗?有代码更好 ;),还有点的Z坐标属性值是怎么提取,怎么修改的呢?
我上边帖子里说的算法我觉得不太简洁?您有没有好的建议?也期待各位高手献计献策,本人感激不尽。
注: 斑竹大人请别删我这个帖子,我实在太急了,不得以出次下策,原谅一次。问题解决我删掉这些,重新发个关于这个问题的帖子,谢谢啦!

                               
登录/注册后可看大图
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2004-11-24 20:22:22 | 显示全部楼层
说实话,我大概知道你要干什么,但你最好将dwg图贴出来,大家才能帮你,我最近很长时间没弄程序了,你的要求估计文字修改大师还不能完全达到你的要求,得需要让版主等给你写一个小lisp了!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-11-24 20:34:14 | 显示全部楼层 |阅读模式

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

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

×
好的  我明天早上把图传过来  
试了好多方法也没能把我刚才用画图工具画的示意图弄上来
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2004-11-24 20:43:21 | 显示全部楼层
酷周你天天拿望远镜在看吗?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-11-24 20:52:47 | 显示全部楼层
最初由 whcdy 发布
[B]酷周你天天拿望远镜在看吗? [/B]


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

使用道具 举报

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

使用道具 举报

 楼主| 发表于 2004-11-25 08:59:14 | 显示全部楼层
谢谢自由的鱼! 程序在哪?能告诉我地址吗?我对这不是很熟,以前没来过这个版面.
谢谢大家
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-11-25 11:53:57 | 显示全部楼层
用搜索来搜“高程””标注“等关键字也许能找到你想要的东东。
你们单位的领导也太那个了点吧。本来写这种程序纯属业余行为。
目的只是与已方便,与人方便,估计被逼着写程序的设计人员很痛苦。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-11-25 12:43:18 | 显示全部楼层
我搜索到了2个对我有些用处的帖子,但是加载程序执行时出现了些问题,提示找不到DCL文件。这个DCL文件我生成了,它应该放在什么地方?我是把它和可执行文件放一个文件夹的,不在CAD文件下。
还有一个问题,我下了段代码,编译时出错,提示  (xdrx_begin)未定义。  (xdrx_begin)、(xdrx_ucson)和(xdrx_sysvar_push "osmode")是什么东东??
vba我还稍微懂些,这LISP可真是有点惨。。。


  1.   [FONT=courier new]
  2. 检查 .80.80 这样的数字,用来处理矢量化后图形中文字识别的问题
  3. ;;用前还要检查是否有一个高程识别成两个数字的情况
  4. (defun c:chk_dot (/ ss n e str)
  5.   (xdrx_begin)
  6.   (xdrx_ucson)
  7.   (xdrx_sysvar_push "osmode")
  8.   (setq ss (ssget "x" '((0 . "text") (1 . ".*"))))
  9.   (setq n 0)
  10.   (if ss
  11.     (progn
  12.       (xdrx_setsstodb ss 0)
  13.       (while (setq e (xdrx_getentdata 0))
  14.         (setq str (xdrx_getentdxf 1))
  15.         (if (= (substr str 1 1) ".")
  16.           (progn
  17.             (if        (numberp (read (substr str 2)))
  18.               (progn
  19.                 (xdrx_modent 1 (xdrx_string_trimleft str "."))
  20.                 (setq n (1+ n))
  21.               )
  22.             )
  23.           )
  24.         )
  25.       )
  26.       (if (not (zerop n))
  27.         (princ (strcat "\n共更新 " (itoa n) " 个文字"))
  28.       )
  29.     )
  30.     (princ "\n检查完毕,没有错误!")
  31.   )
  32.   (xdrx_sysvar_pop)
  33.   (xdrx_ucsoff)
  34.   (xdrx_end)
  35.   (princ)
  36. )
  37. ;;对数字增加一个常数(正负均可),使用前请先用上面的检查程序
  38. ;;检查数字,否则对 .80.80 这样的数字将出错.
  39. (defun c:XDTB_taddn (/ ent n num ss num e oldstr newstr)
  40.   (xdrx_begin)
  41.   (xdrx_ucson)
  42.   (xdrx_sysvar_push "osmode")
  43.   (setq ent (xdrx_entsel "\n选择典型文字: " '((0 . "text"))))
  44.   (princ "\n选择范围[All - 全选]....")
  45.   (if ent
  46.     (progn
  47.       (setq
  48.         ss (ssget (list '(0 . "text") (assoc 8 (entget (car ent)))))
  49.       )
  50.       (setq n 0)
  51.       (if ss
  52.         (progn
  53.           (setq num (getreal "\n增加数值: "))
  54.           (xdrx_setsstodb ss 0)
  55.           (while (setq e (xdrx_getentdata 0))
  56.             (setq oldstr (xdrx_getentdxf 1))
  57.             (if        (numberp (read oldstr))
  58.               (progn
  59.                 (setq newstr (rtos (+ (read oldstr) num) 2 3))
  60.                 (xdrx_modent 1 newstr)
  61.                 (setq n (1+ n))
  62.               )
  63.             )
  64.           )
  65.           (if (not (zerop n))
  66.             (princ (strcat "\n共更新 " (itoa n) " 个数字!"))
  67.           )
  68.         )
  69.       )
  70.       (princ "\n没有选择文字!")
  71.     )
  72.   )
  73.   (xdrx_sysvar_pop)
  74.   (xdrx_ucsoff)
  75.   (xdrx_end)
  76.   (princ)
  77. ) [/font]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-11-25 22:00:24 | 显示全部楼层
你把你的图发上来吧,我给你写一个,先应付领导嘛,给领导逼de 滋味我太清楚了,呵呵
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-11-26 08:49:10 | 显示全部楼层
太感谢您了 自由的鱼 :)
图昨天已经传上了,就是那 “数据.rar”,里边就是图了,叫“数据.dwg”
图是2000格式的,本来每幅图上大约500个点,我截取了几十个点放到了“数据.dwg”中

辛苦啊 领导要求我下星期一之前搞定,我以前做过MICROSTATION的开发,CAD很少接触,换工作后也没怎么看这方面的资料,现在必须得看了。
还有,上面代码里(xdrx_begin)、(xdrx_ucson)和(xdrx_sysvar_push "osmode")是什么东东??
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-11-26 20:17:11 | 显示全部楼层
最初由 zxf309 发布
[B]太感谢您了 自由的鱼 :)
图昨天已经传上了,就是那 “数据.rar”,里边就是图了,叫“数据.dwg”
图是2000格式的,本来每幅图上大约500个点,我截取了几十个点放到了“数据.dwg”中

辛苦啊 领导要求我下星期... [/B]


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

使用道具 举报

发表于 2004-11-27 14:34:22 | 显示全部楼层
zxf309,你传上来的图怎么把文本删除了?我给你做个两个程序,一个改块内的Z值,一个用来恢复高程点文本,对缩编很有用!用后有什么问题再告诉我!我能帮的到的一定帮!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-11-27 20:48:10 | 显示全部楼层
我实在不知说什么好了 十分感谢您真诚无私的帮助
也谢谢coolzhb以及其他的朋友们

上传图里的文本是从文件中拷贝出来的,只有一部分,做个示范。
这些数据是真实的,要求保密,不敢贴全部的 :)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-11-27 22:15:52 | 显示全部楼层
呵呵,看来你们单位对保密措施做的很到位,都是干测绘的,能够理解!不过我觉得奇怪,为什么你们的高程点是块呢?一般不都是POINT吗?你用的是CASS吧?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-20 07:41 , Processed in 0.466707 second(s), 63 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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