屏幕改字--grread动态版
本帖最后由 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测试通过,其他版本没试过)
(mapcar
'(lambda(ent)
(cond
((or (and (> angle-old -45) (< angle-old 45)) ;X坐标在范围内
(and (> angle-old 135) (< angle-old 225))
(and (> angle-old -225) (< angle-old -135))
)
(if (and (not (ssmemb ENT sss)) ;不在选择集中
(>= (max (CAR point) (CAR pt-cursor)) (CAR (GETDXF ENT 10)) (MIN (CAR point) (CAR pt-cursor)))
)
(ssadd ENT SSS)
)
)
((or (and (>= angle-old 45) (<= angle-old 135)) ;Y坐标在范围内
(and (>= angle-old -135) (<= angle-old -45))
)
(if (and (not (ssmemb ENT sss)) ;不在选择集中
(>= (max (CADR point) (CADR pt-cursor)) (CADR (GETDXF ENT 10)) (MIN (CADR point) (CADR pt-cursor)))
)
(ssadd ENT SSS)
)
)
)
)
lst1
)
修改内容:
1、动态拖动需要JIG函数支持,高版主函数只支持到cad2014,因此在print1985(阿甘)兄弟发布动态grread
函数之后,更新为使用阿甘兄弟的函数
2、解决选中文字之后,点一下确认选中的文字,经修改后可以动态选择,不必点选确认
3、解决选择空格文字时,会选不中因为空格为无大小文字,ssget函数对无大小文字选不中
4、解决对于逗号等矮字符文字,如果不特意把框选范围倾斜,会出现选不中
5、解决鼠标左右滑动时,初次点选处的文字一会被选中,一会不被选中的问题
6、解决了按esc或者其他出错之后,屏幕会闪一下回到原来的视口状态问题
7、增加了选中文字的放大处理。
本帖最后由 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函数的提示,不小心删掉原来的动态选择动态输入了。。。
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
命令:
命令: 提供一下我自己写的屏幕改字思路:定义一个text的子函数:TEXT原位打散,通过起点和终点,按文字角度计算出范围,选择出刚刚打散的文字集,其他的属性文字,块中文字,尺寸文字等,直接原位复制一个text文字出来,直接利用上面的text子函数 本帖最后由 傀儡koka 于 2021-8-29 17:35 编辑
这个厉害
邮箱2912100924@qq.com 谢谢
多谢分享
xpzzj@126.com 不支持属性块中的文字修改 命令: no function definition: gl:pointmonitor报了错误啊 动态输入版 bai2000 发表于 2021-8-29 20:46
不支持属性块中的文字修改
是的 不好支持所有块中文字修改,可以在块编辑状态修改
本帖最后由 MUSIC-DIE 于 2021-8-30 09:14 编辑
edsion24 发表于 2021-8-30 08:41
命令: no function definition: gl:pointmonitor报了错误啊 动态输入版
看一下条件,需要阿甘的动态函数支持 , 需要 自启动加载 524917100 发表于 2021-8-30 08:47
提供一下我自己写的屏幕改字思路:定义一个text的子函数:TEXT原位打散,通过起点和终点,按文字角度计算出 ...
发一个出来,看看哪个好用,造福大家啊 和飞图的功能类似