乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 35|回复: 6

[编程交流] 如果/然后接受多个pos

[复制链接]

31

主题

170

帖子

139

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
155
发表于 2022-7-6 11:41:09 | 显示全部楼层 |阅读模式
在lisp中创建if/then senario时,如何将表达式视为多个值的true。
 
例如,我需要询问用户他们想要更改什么视口,顶部、前部或右侧。。。但我希望它接受“Top”或“T”表示Top。
 
这行得通吗
 
  1. (setq vpn (if (= vp (or "Top" "T") (2))

 
“T”或“Top”会将vpn设置为2吗?
 
还有,我有办法自己测试吗?
回复

使用道具 举报

4

主题

940

帖子

961

银币

初来乍到

Rank: 1

铜币
12
发表于 2022-7-6 11:54:28 | 显示全部楼层
用T和Top试试这个(还有F、Front、R、Right)
  1. (initget 1 "Top Front Right")
  2. (setq ans (getkword "Top, Front or Right"))
  3. (cond
  4. ((= ans "Top") (setq vpn 2))
  5. ((= ans "Front") (setq vpn 3))
  6. ((= ans "Right") (setq vpn 4))
  7. )
回复

使用道具 举报

4

主题

327

帖子

324

银币

初来乍到

Rank: 1

铜币
19
发表于 2022-7-6 12:05:32 | 显示全部楼层
看看这两个函数
(initget“Abc Def \u Ghi Jkl”)(getkword“\n输入选项(Abc/Def):”)输入A返回Ghi,输入\u J返回Jkl。
回复

使用道具 举报

31

主题

170

帖子

139

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
155
发表于 2022-7-6 12:18:19 | 显示全部楼层
在这种情况下,我使用initget/getkword函数,但现在我会做一个if/then,这样可以允许多个正确的输入,例如:
 
如果x=(顶部或底部),则执行函数,否则退出程序
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 12:22:03 | 显示全部楼层
 
您可以使用or函数,也可以使用member函数
回复

使用道具 举报

31

主题

170

帖子

139

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
155
发表于 2022-7-6 12:38:22 | 显示全部楼层
哈哈,我现在这听起来很有趣,但我需要使用Visual Lisp的帮助。。。
 
我搜索了“or”函数,在概念选项卡下显示:
 
“$(或,val1[,val2,…,val9])”
 
我有几个问题。
 
“$”是什么意思?
为什么“[]”符号中有“.val1,…,val9”?
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 12:45:45 | 显示全部楼层
$
 
[var1,var2]
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-3-6 02:23 , Processed in 0.427848 second(s), 66 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表