ftsg.net
当前位置:首页 >> lisp AssoC >>

lisp AssoC

加循环 (setq el (car (entsel))) (foreach n (entget el) (if (= 10 (car n)) (setq ptlist (cons (cdr n) ptlist)) ) )

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

(setq ss '());建立一个表(setq ss (cons (list JL p1) ss));把(距离及交点组成表)加入表(setq ss (vl-sort ss (function (lambda (x y)(< (car x) (car y))))));;排序距离从小到大排序。体会排序方法,距离最短的会在前面。

(setq #k1 (entget &k1));&k1为对象,取得属性列表 (setq %k1 (cdr (assoc 70 #k1));%k1为是否封闭值1为封闭,0为不封闭 (setq %k2 (cdr (assoc 62 #k1));如果值为nil,就表示颜色为 ByLayer颜色,如果有数值就表示别的颜色。 如果要检查数值的...

当表达式以七个原始操作符中的五个开头时,它的自变量总是要求值的.[2] 我们称这样 的操作符为函数. 接((lambda (...) e) ...)则称为函数调用.它的值计算如下.每一个表达式先求值,然后e再求值.在e的求值过程中,每个出现在e中的的值是相应的在...

可以用反应器实现,前提是画线和输入文字必须用定义的函数一次性操作完成.LISP代码如下: (VL-Load-Com) (defun c:Line_Txt(/ Pt Pt1 Pt2 EntLine HandTxt VlaObj Tmp) (setq Pt1 (getpoint "\n指定第一点:")) (setq Pt2 (getpoint "\n指定下一...

文字内容代码为1 (defun c:b1() (setq gj_list_32 (entget (car (entsel))) gj_text_old_32 (assoc 1 gj_list_32) gj_text_new_32 (cons 1 "%%1308@200(2)") ;用于8间距200,一级钢 gj_list_32 (subst gj_text_new_32 gj_text_old_32 gj_list_32...

;求spline,polyline,lwpolyline,arc面积 (defun c:ss () (setq 总面积 0) (setq 总亩数 0) (setq 面积 0) (setq 总周长 0) (setq 周长 0) (setq k 0) (setq a nil) (setq a (ssget)) (setq Len (sslength a)) (repeat Len (setq name (ssname a ...

;返回直线段的中点 ;用法: (ptmid 直线段图元) (defun ptmid(Xent) (setq dxf (entget Xent) p10 (cdr (assco 10 dxf)) p11 (cdr (assoc 11 dxf)) mid (mapcar '* '(0.5 0.5 0.5) (mapcar '+ p10 p11)) ) )

(defun c:sd() (setq oldcm (getvar "cmdecho") oldos (getvar "osmode") ) (setvar "cmdecho" 0) (setvar "osmode" 33) (command "_undo" "be") (if (setq p1 (getpoint "\n指定第一点p1:")) (if (setq p2 (getpoint p1 "\n指定第二点p2:")) (p...

网站首页 | 网站地图
All rights reserved Powered by www.ftsg.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com