明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 5672|回复: 24

[资源] 屏幕改字--grread动态版

  [复制链接]
发表于 2021-8-29 15:47:27 | 显示全部楼层 |阅读模式
本帖最后由 MUSIC-DIE 于 2021-9-1 11:46 编辑

;|*********************************************************************************************;
软件原作者: yjr111     修改: MUSIC-DIE                                                        ;
软件还使用了大量的论坛内函数,H版、tryhi、黄大师、梁雄啸老师、阿甘兄弟等
软件用途: 屏幕改字功能      
原版:http://bbs.mjtd.com/forum.php?mod=viewthread&tid=93754

注意:   
1、源代码由于使用了fas才具有的部分功能,因此不可以直接运行   会报错,需要在打包为fas之后,
        执行tryhi大师的修改参数数量函数                                                                                                        ;
2、由于阿甘兄弟的grread函数仅支持2010版以上,因此动态版插件仅支持2010版以上。   
     动态函数:http://bbs.mjtd.com/thread-183968-1-1.html
3、由于C#的点监视器和getstring 函数冲突,主要表现为:使用getstring函数期间,点监视器会失效。
        但是打包成fas文件之后,添加启动组启动又有效。这个“bug”和阿甘兄弟商量了好久也没能解决。
        因此发出两个版本的fas文件,其中需要自启动的完美运行,另外一个需要点选两次以替换字符串。

4、不完美,源码不能直接执行,就不放源码了,核心改进点是增加了一个判断文字角度来确认文字的x、y坐标是否在所选范围内,来更正选择集。。。,有想要改进的大佬,留邮箱发吧。
5、命令名: 第一个双击版:WMPMGZ                       第二个动态版:GZ(仅在cad2016测试通过,其他版本没试过)   
  1. (mapcar
  2.                                         '(lambda(ent)
  3.                                                  (cond
  4.                                                          ((or (and (> angle-old -45) (< angle-old 45))                        ;X坐标在范围内
  5.                                                                  (and (> angle-old 135) (< angle-old 225))
  6.                                                                  (and (> angle-old -225) (< angle-old -135))
  7.                                                          )
  8.                                                                  (if (and (not (ssmemb ENT sss))                        ;不在选择集中
  9.                                                                                  (>= (max (CAR point) (CAR pt-cursor)) (CAR (GETDXF ENT 10)) (MIN (CAR point) (CAR pt-cursor)))
  10.                                                                          )
  11.                                                                          (ssadd ENT SSS)
  12.                                                                  )
  13.                                                          )
  14.                                                          ((or (and (>= angle-old 45) (<= angle-old 135))                        ;Y坐标在范围内
  15.                                                                  (and (>= angle-old -135) (<= angle-old -45))
  16.                                                          )
  17.                                                                  (if (and (not (ssmemb ENT sss))                        ;不在选择集中
  18.                                                                                  (>= (max (CADR point) (CADR pt-cursor)) (CADR (GETDXF ENT 10)) (MIN (CADR point) (CADR pt-cursor)))
  19.                                                                          )
  20.                                                                          (ssadd ENT SSS)
  21.                                                                  )
  22.                                                          )
  23.                                                  )
  24.                                          )
  25.                                         lst1
  26.                                 )
复制代码


修改内容:
1、动态拖动需要JIG函数支持,高版主函数只支持到cad2014,因此在print1985(阿甘)兄弟发布动态grread
        函数之后,更新为使用阿甘兄弟的函数
2、解决选中文字之后,点一下确认选中的文字,经修改后可以动态选择,不必点选确认
3、解决选择空格文字时,会选不中因为空格为无大小文字,ssget函数对无大小文字选不中
4、解决对于逗号等矮字符文字,如果不特意把框选范围倾斜,会出现选不中
5、解决鼠标左右滑动时,初次点选处的文字一会被选中,一会不被选中的问题
6、解决了按esc或者其他出错之后,屏幕会闪一下回到原来的视口状态问题
7、增加了选中文字的放大处理。




本帖子中包含更多资源

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

x

评分

参与人数 3明经币 +3 收起 理由
陨落 + 1 厉害
aihuyujian + 1
tigcat + 1 一觉醒来,看到大作,很给力!

查看全部评分

"觉得好,就打赏"
还没有人打赏,支持一下
 楼主| 发表于 2021-9-1 10:15:36 | 显示全部楼层
本帖最后由 MUSIC-DIE 于 2021-9-1 11:34 编辑
edsion24 发表于 2021-9-1 08:29
一切造作了,但是还是执行不起来动态输入板
命令: (LOAD "C:/lsp/阿甘GRREAD程序/屏幕改字-动态选择-动 ...

留下联系方式  我联系你     
1、 自启动,是在   工具-->加载应用程序-->启动组     这个地方把程序加进去                                       
       1.1  自启动,也可以在C:\Program Files\Autodesk\AutoCAD 2016\Support\acad2016.LSP  中添加启动:
              例如: (load "C:\\Users\\Desktop\\GZ.fas")       ;记得反斜杠或者双斜杠
2、记得加载阿甘的grread函数
3、更新了未加载grread函数的提示,不小心删掉原来的动态选择动态输入了。。。




发表于 2021-9-1 08:29:18 | 显示全部楼层
MUSIC-DIE 发表于 2021-8-31 10:35
说明更新了,看一下   WMPMGZ 是双击版的      GZ 是动态版的

一切造作了,但是还是执行不起来动态输入板
命令: (LOAD "C:/lsp/阿甘GRREAD程序/屏幕改字-动态选择-动态输入.fas")
软件原作者: yjr111     修改: MUSIC-DIE
软件还使用了大量的明经论坛内函数,H版、tryhi、黄大师、阿甘兄弟、梁雄啸老师等
软件用途: 屏幕改字功能
C:WMPMGZ
命令: WMPMGZ WMPMGZ--202109010824--Administrator
命令:
命令:
发表于 2021-8-30 08:47:40 | 显示全部楼层
提供一下我自己写的屏幕改字思路:定义一个text的子函数:TEXT原位打散,通过起点和终点,按文字角度计算出范围,选择出刚刚打散的文字集,其他的属性文字,块中文字,尺寸文字等,直接原位复制一个text文字出来,直接利用上面的text子函数
发表于 2021-8-29 17:31:49 | 显示全部楼层
本帖最后由 傀儡koka 于 2021-8-29 17:35 编辑

这个厉害
   邮箱2912100924@qq.com 谢谢
发表于 2021-8-29 17:42:16 | 显示全部楼层
多谢分享
xpzzj@126.com
发表于 2021-8-29 20:46:53 | 显示全部楼层
不支持属性块中的文字修改
发表于 2021-8-30 08:41:06 | 显示全部楼层
命令: no function definition: gl:pointmonitor报了错误啊 动态输入版
 楼主| 发表于 2021-8-30 09:12:00 | 显示全部楼层
bai2000 发表于 2021-8-29 20:46
不支持属性块中的文字修改

是的    不好支持所有块中文字修改,可以在块编辑状态修改
 楼主| 发表于 2021-8-30 09:12:49 | 显示全部楼层
本帖最后由 MUSIC-DIE 于 2021-8-30 09:14 编辑
edsion24 发表于 2021-8-30 08:41
命令: no function definition: gl:pointmonitor报了错误啊 动态输入版

看一下条件,需要阿甘的动态函数支持      , 需要 自启动加载
 楼主| 发表于 2021-8-30 09:14:03 | 显示全部楼层
524917100 发表于 2021-8-30 08:47
提供一下我自己写的屏幕改字思路:定义一个text的子函数:TEXT原位打散,通过起点和终点,按文字角度计算出 ...

发一个出来,看看哪个好用,造福大家啊
发表于 2021-8-30 09:36:34 | 显示全部楼层
和飞图的功能类似
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-21 01:23 , Processed in 0.228800 second(s), 29 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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