创建带文字的线型
本帖最后由 自贡黄明儒 于 2014-10-22 16:15 编辑edata贴出了一个创建带文字的线型,没想到还可以这样用。edata真牛!
这个程序应该很有用处,当一张图被多个专业修改后,密集的线条看得人眼花缭乱。用了这个程序,可能让线带文字,看起来方便多了。
我略改了一下,以便自己使用起来更方便
;;实际证明04版出错,05~08正常,09 12版本可能写法不一样,因为文字显示不了来。;;[功能] 调用VBS的公用执行函数
(defun wscriptPublic (str)
(or *wscript*
(setq *wscript* (vlax-create-object "ScriptControl"))
)
(vlax-put *wscript* 'language "vbs")
(vlax-invoke-method *wscript* 'ExecuteStatement str)
(vlax-invoke-method *wscript* 'eval "ret")
) 一般来讲,AutoCAD提供的线型已经够用了,但为了某些特殊用途,创建自己的线型也是件容易的事情。
在Windows xp里打开“我的电脑”,进入C盘,操作菜单“工具”→“文件夹选项”,将“查看”选项页里的“隐藏文件和文件夹”选成“显示所有文件和文件夹”,点击“确定”,关闭“文件夹选项”窗口。如果是Windows 7,即双击“计算机”,进入C盘,点击左上角的“组织”→“文件夹和搜索选项”,将“查看”选项页里的“隐藏文件和文件夹”选成“显示隐藏的文件、文件夹和驱动器”。
在C:\Documents and Settings\你的用户名\Application Data\Autodesk\AutoCAD 版本号\R17.1\chs\Support路径里右击acadiso.lin文件,在弹出的快捷菜单里点击“打开方式”,选用“记事本”将它打开。如果是Windows 7,路径是C:\用户\你的用户名\AppData\Roaming\Autodesk\AutoCAD 版本号\R17.1\chs\Support。
可以看到acadiso.lin其实就是一个纯文本文件,里面保存着各种线型的定义。
每一线型定义占两行,第一行以“*”开头的是线型的名称和说明,线型名称和说明之间用英文逗号隔开,说明允许省略。
第二行是正式的定义,以“A”和一个英文逗号开头,后面用正数表示划线的长度,负数表示间隔的距离,0表示画一个点,各部分之间用英文逗号隔开,要注意的是必须用划线或点开头,不能用间隔开头。
在acadiso.lin文件最后增加两行,第一行输入“*我的点划线”,第二行输入“A,24,-3,0.5,-3”,意思是先画一段长24图形单位的直线,间隔3个图形单位,画一小段0.5个图形单位的短线,再间隔3个图形单位。
将改写后的acadiso.lin文件保存并关闭。运行AutoCAD,操作菜单“格式”→“线型”,点击“加载”,找到并点选“我的点划线”,点击“确定”将它加载进来,就可以使用这个自己创建的线型了。
还可以创建嵌入文字的线型,比方要创建一个嵌入“200”字样的直线,只要在第二行输入“A,50,-10,["200",STANDARD,S=3.5,R=0.0,X=-3,Y=-1.75],-10”即可。
方括号里就是嵌入的文字格式。
其中英文引号里的内容就是要嵌入的文字。
“STANDARD”是文字样式名,如果省略此项,就会自动用当前的文字样式。
“S=”是文字高度,如果文字样式里的文字高度不为0,即嵌入的文字高度为文字样式里的文字高度与此项的乘积。
“R=”是文字旋转的角度,也可以用“A=”,但用R和A旋转的效果不同,用R是相对于直线线的旋转,用A是相对于模型空间原点的旋转,读者可以试一试,以理解它们的不同。
“X=”是文字在直线X轴方向的偏移,定义行最后的“-10”表示的是间隔,这个间隔不是从文字的末尾开始的,而是从文字的基点开始的,文字的基点在文字的左下角,如果不定义“X=”,后一笔画可能会与文字重叠。读者要多试几次,以确定最佳的效果。
“Y=”是文字在直线Y轴方向的偏移。
每次修改定义以后,保存退出,在AutoCAD里要重新操作菜单“格式”→“线型”,点击“加载”,找到并点选定义的线型名称,点击“确定”将它重新加载一次,修改才能生效。
也可以不采用在acadiso.lin文件里添加新的线型的方法,而是用记事本新建一个文件,在里面输入自己的线型定义,保存成便于记忆的文件名以后再将扩展名改成“.lin”,在AutoCAD里加载线型的时候找到这个文件进行加载即可。 看看我以前修改的:
smartstar 发表于 2014-9-25 17:06 static/image/common/back.gif
看看我以前修改的:
即使知道原理,能写出完善也需要时间,时间也是金钱。感谢分享。 老黄的好多程序期待开源……………… 浮世小半生 发表于 2014-9-25 14:32 static/image/common/back.gif
一般来讲,AutoCAD提供的线型已经够用了,但为了某些特殊用途,创建自己的线型也是件容易的事情。
在 ...
这个不错!!!!! 这个程序真心不错,不过我们专业好像用不到 文字线型
或把现有的一些线型中的文字
略加修改后
再调试一下参数即可
之前没想过用程序的
因与线型比例有关系吧 smartstar 发表于 2014-9-25 17:06
看看我以前修改的:
这个我之前看过,同edata发布的那个是同一作者,你只是汉化了几个文字,收三帀不合适吧 有点小贵!希望便宜点哦!都是3个币哇!有特价的没有! 不知道是不是用entmake 实现的!