只需一步,快速开始
各位大侠,刚学lisp,想做个命令,其中要像CAD画圆这样,命令后是"提示指定点,[或者三点(3P)...]"这样的选项。
因为这个等待输入里,一个类型是getpoint,另外一个是getkworld,"IF"试了N次,都不知道怎么做出来,CAD里面有好多这样的选项,寻大家帮忙。
谢谢!
见3楼
使用道具 举报
没人回答?
大概是这样:
(setq ws(strcase(getstring "\n画圆C\画弧A\画直线L:")))(cond ((= ws "C") ;准备画圆 ) ((= ws "A") ;准备画弧 ) ((= ws "L") ;准备画直线 ) (t (alert "输入错误,请重新输入关键字.") ));供参考
谢谢回复
我想做的是选项里一个是指定点,或者是选关键字.如下面AutoCAD的命令提示
命令: _arc指定圆弧的起点或[圆心(C)]:
此时要么在CAD屏幕上点一个点,即getpoint函数;要么在命令行里选关键字C,进入指定圆心的步骤,即getkworld函数.
这个过程怎么实现呢?
(initget "3P eXit")(setq a (getpoint "指定点或 [三点(3P)/退出(X)] <退出>: "))(cond ((vl-consp a) (alert "用户拾取了点") ) ((= a "3P") (alert "用户输入了 3P ") ) ((or (= a "eXit") (not a)) (alert "用户输入了 eXit 或点执行了 ENTER ") ))
多谢5楼答复,试了下,可以用
看样子还得继续学习啊,以为用条件语句就好做了呢.
谢谢!
本版积分规则 发表回复 回帖后跳转到最后一页
小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 ) ©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途
GMT+8, 2024-6-21 13:40 , Processed in 0.166757 second(s), 26 queries , Gzip On.
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.