明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
楼主: 晓雨

请帮帮忙,谢谢

  [复制链接]
 楼主| 发表于 2004-3-12 18:21:00 | 显示全部楼层
这里面是不是先把text 的内容也就是number类型的数据提取出来,再+1,再赋上去,更改数据的,那个entmod,是什么意思?
发表于 2004-3-12 19:22:00 | 显示全部楼层
查看帮助文件
 楼主| 发表于 2004-3-13 18:09:00 | 显示全部楼层
(entmod elist) AutoLISP 之所以能够更新数据库, 主要是依据 entget 返回的格式, 从 elist 中的 -1 群组来提供图元名, 以AutoLISP 的 subst 函数来修改图元表内的定义图元的资料 (subst 是非常有用的修改函数), 最后由 entmod 函数来更新数据库内的图元。
发表于 2004-3-13 18:27:00 | 显示全部楼层
让你看帮助文件,没让你贴上来,大家自己都有帮助文件
发表于 2004-3-15 12:29:00 | 显示全部楼层
;;使用tt 2)
(defun TT (N / SS I ENTS TXT)
(setq SS (ssget '((0 . "text")))) ;選取全圖TEXT物件
(setq I 0) ;初始值i
(repeat (sslength SS) ;以SS選集內物件數循環
(setq ENTS (entget (ssname SS I))) ;提取內碼
(setq TXT (cdr (assoc 1 ENTS))) ;提取文字
(setq TXT (rtos (+ (read TXT) N))) ;計算數值
(setq ENTS (subst (cons 1 TXT) (assoc 1 ENTS) ENTS)) ;更換碼
(entmod ENTS) ; 更新物件
(setq I (1+ I)) ;i值加1
)
(princ)
)
 楼主| 发表于 2004-3-15 21:01:00 | 显示全部楼层
(if (> (car pt) (car pt5))
(setq pt1(list (+ (car pt) 4) (cadr pt))
pttxt(list (+ (car pt) 2) (+ (cadr pt) 1.8))
) (command"line" pt pt1 "")
(command"text" "mc" pttxt 2.5 0 txt)
(repeat (- n 1)
(setq pt2(polar pt1 (/ (* pi 7) 4) 1.4))
(command"line" pt1 pt2 "")
(setq pt3(polar pt2 (/ pi 4) 1.4))
(setq pt4(list (+ (car pt3) 4) (cadr pt3)))
(command"line" pt2 pt3 pt4 "")
(setq pttxt(list (+ (car pt3) 2) (+ (cadr pt) 1.8)))
(setq txt (rtos (+ (atoi txt) 1) 2 0))
(print txt)
(command "text" "MC" pttxt 2.5 0 txt)
(setq pt1 pt4)
)

) 为什么它老说”错误”参数太多
发表于 2004-3-15 21:11:00 | 显示全部楼层
记得已经跟你说过一次了,IF后面只能最多有三个参数,一个条件,两个表达式,可你看看,你有几个表达式了。。。 而且就在本帖的28楼,你这样学习,进步就太慢了。。。
 楼主| 发表于 2004-3-15 21:20:00 | 显示全部楼层
if (< (car pt)         (car pt5) )


我不是一个条件吗?难道我的眼花了,我还没成老太太呢
发表于 2004-3-15 21:31:00 | 显示全部楼层
拜托看东西看仔细点。。。。。。再看看28楼的, 看看下面我给你分析的。。。 红色的是if的条件,蓝色的是if的第一个表达式,黄色是第二个,粉色是第三个,绿色的是第四个。。。因为这些表达式都包含在if的括号里,所以都是if的参数,而我说过,if只能最多有三个参数,可你有,数数看,5个了。。。 (if (> (car pt) (car pt5))
(setq pt1(list (+ (car pt) 4) (cadr pt))
pttxt(list (+ (car pt) 2) (+ (cadr pt) 1.8))
)
(command"line" pt pt1 "")
(command"text" "mc" pttxt 2.5 0 txt)
(repeat (- n 1)
(setq pt2(polar pt1 (/ (* pi 7) 4) 1.4))
(command"line" pt1 pt2 "")
(setq pt3(polar pt2 (/ pi 4) 1.4))
(setq pt4(list (+ (car pt3) 4) (cadr pt3)))
(command"line" pt2 pt3 pt4 "")
(setq pttxt(list (+ (car pt3) 2) (+ (cadr pt) 1.8)))
(setq txt (rtos (+ (atoi txt) 1) 2 0))
(print txt)
(command "text" "MC" pttxt 2.5 0 txt)
(setq pt1 pt4)
)

)
发表于 2004-3-15 21:41:00 | 显示全部楼层
(if (> (car pt) (car pt5)) progn (
;要表达的式子,多于3个,就这样
)
) 对吧?我也开始学这个东西,满好玩的~~加油~!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-2-22 16:35 , Processed in 0.172441 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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