明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2091|回复: 1

看看下面的程序到底有什么毛病

[复制链接]
发表于 2007-8-11 09:41:00 | 显示全部楼层 |阅读模式
看看下面的程序到底有什么毛病,计算是正确的,就是运行的时候会发生错误
当文字的基准点位中间(只要不是左)就不能正常运行~

(DEFUN C:ttq ( / count ent gop next pt_base pt_new temp1 temp2 temp3 total yesno)
(setvar "OSMODE" 0)
(SETQ ENT (ENTSEL "\n 选择参照单行文本"))
(IF (= ENT NIL)
(PRINC "\n 没有选中物体")
(PROGN
(SETQ ENT (ENTGET (CAR ENT)))
(IF (/= (CDR (ASSOC 0 ENT)) "TEXT")
(PRINC "\n 选中的物体不是单行文本")
(PROGN
(INITGET 128 "X Y")
(SETQ YESNO (GETKWORD "\n 参照字的X轴(X) / 参照字的Y轴(Y)X) "))
(IF (OR (= YESNO "X") (= YESNO NIL))
(SETQ PT_BASE (CADR (ASSOC 10 ENT)))
(SETQ PT_BASE (CAR (CDDR (ASSOC 10 ENT))))
)
(PRINC "\n 选择对齐的文本")
(SETQ GOP (ssget "")
COUNT 0
TOTAL 0
)
(REPEAT (SSLENGTH GOP)
(SETQ NEXT (ENTGET (SSNAME GOP COUNT)))
(IF (= (CDR (ASSOC 0 NEXT)) "TEXT")
(PROGN (SETQ TEMP1 (CAR (CDR (ASSOC 10 NEXT)))
TEMP2 (CADR (CDR (ASSOC 10 NEXT)))
TEMP3 (CAR (CDDR (CDR (ASSOC 10 NEXT))))
)
(IF (OR (= YESNO "X") (= YESNO NIL))
(SETQ PT_NEW (LIST PT_BASE TEMP2 TEMP3))
(SETQ PT_NEW (LIST TEMP1 PT_BASE TEMP3))
)
(SETQ
NEXT (SUBST (CONS 10 PT_NEW) (ASSOC 10 NEXT) NEXT)
)
(ENTMOD NEXT)
;(PRINC NEXT)
(SETQ TOTAL (1+ TOTAL))
)
)
(SETQ COUNT (1+ COUNT))
)
(PRINC "\n 共 ")
(PRINC TOTAL)
(PRINC "字体改变")
)
)
)
)
(PRINC)
)
发表于 2007-8-14 09:14:00 | 显示全部楼层
位于中间时,不用用10的组码,可能要用11的组码来表示文字的位置
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-4-21 12:23 , Processed in 0.175644 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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