在CAD中怎样用autolisp完成过滤器功能的编程,请高手发指点

在CAD中怎样用autolisp完成过滤器功能的编程,请高手发指点,第1张

(defun c:wzxg() ;(/ ztys len old new ed i)

(setq ss (ssget "x" '((-4 "<xor") (0 "TEXT") (0 "MTEXT") (-4 "xor>"))))

(setq len (sslength ss) i 0)

(while (< i len)

(setq ed (entget (ssname ss i)))

(setq old (assoc 41 ed) new '(41 08))

(setq ed (subst new old ed))

(entmod ed)

(setq i (1+ i))

)

;第一个功能,将宽度比例不等于08的文字 改成08

(setq ss (ssget "x" '((-4 "<and") (0 "TEXT") (40 5) (-4 "and>"))))

(setq len (sslength ss) i 0)

(while (< i len)

(setq ed (entget (ssname ss i)))

(setq old (assoc 40 ed) new '(40 4))

(setq ed (subst new old ed))

(entmod ed)

(setq i (1+ i))

)

;;第二个功能,将字高为5的文字改成字高4

(setq ss nil)

(princ)

)

这是我自己编的一个批量改文字宽度比例和高度的一个小程序,你可以参考着编一些其他的小程序

AutoLISP语言是在普通的LISP语言基础上,又扩充了许多适用于CAD应用的功能而形成的一种程序设计语言。它是一种解释性求值语言,速度较慢,难以保密,可用任何文字编辑软件编辑,用纯文本的格式保存。

AutoLISP语言中的一切成分都是以函数形式给出的,它没有语句概念或其他语法结构。执行AutoLISP程序就是执行一些函数,再调用其它函数。

(setq pt1 (getpoint "\n请选择圆心插入点"))。

(command "CIRCLE" pt1 100);命令这个插入点绘制圆,半径为100。

扩展资料:

LISP语言(LISP,List Processing的缩写)是一种早期开发的、具有重大意义的表处理语言。它适用于符号处理、自动推理、硬件描述和超大规模集成电路设计等。

特点是,使用表结构来表达非数值计算问题,实现技术简单。LISP语言已成为最有影响,使用十分广泛的人工智能语言。

在LISP语言中,数据和函数都是采用符号表达式定义的,这种符号表达式称为S一表达式,它是原予和表的总称。原子分为符号原子和数原子。

符号原子是指有限个大写字母和数字组成的字符串,其中第一个符号必须是字母。原子NIL和T分别表示逻辑假(或空表)和逻辑真。数原子是指一串数字,通过符号表示其正负。

LISP语言不仅在专家系统和CAD领域有广泛的应用,在符号代数、定理证明、机器人规划等领域也有广泛的应用。

影响LISP语言使用的主要原因有:一是LISP是非可视化语言;二是LISP在通用计算机上的运行效率较低;三是LISP的数值计算能力较差;四是人们对函数型语言的编程风格不习惯。

参考资料来源:百度百科-lisp语言

推荐:安装一个天正结构,里面有个”多文编辑命令“,应该能满足你要求。

建议思路:

1、只想选择文字,采用类似”(setq ss1 (ssget '((0 "TEXT,MTEXT")))“选择集过滤即可。

2、挨个提取上面选择集ss1中的元素,将文字内容,文字坐标,提出出来,做表。

如:将第一个元素的文字内容,X坐标,Y坐标分别存入变量str,sx,sy中

(setq str (entget (ssname ss1 1))

sx (car (cdr (assoc 10 str)))

sy (cadr(cdr (assoc 10 str)))

str (cdr (assoc 1 str))

)

3、编写排序部分,注意提供上面表中数据可用的接口。

4、将给中数据按坐标对文字内容排序,并输出。

1在标准工具栏空白处右击,选择ACAD》特性 调出特性栏。

1工具》快速选择》设置图层等于你要改的那个图层,比方说图层等于中心线

2现在全选了要修改的图层,在特性中第二栏(三个栏分别为颜色,线型,线宽),选择ByLayer

则线型全部改成了图层管理器中所设置线型。 那么就完成了线型的统一! gaga

以上就是关于在CAD中怎样用autolisp完成过滤器功能的编程,请高手发指点全部的内容,包括:在CAD中怎样用autolisp完成过滤器功能的编程,请高手发指点、Auto cad中的LISP语言是什么有怎样的用途、求助一个cad autolisp的问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9737477.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-01
下一篇2023-05-01

发表评论

登录后才能评论

评论列表(0条)

    保存