乐筑天下

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

[编程交流] Lisp创建图层时出错

[复制链接]

27

主题

113

帖子

90

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
132
发表于 2022-7-5 16:20:15 | 显示全部楼层 |阅读模式
你好
 
我想制作一个“创建层”lisp,这样我就可以通过命令切换层。
 
我不希望出现任何错误,它们不会显示在非常基本的版本中。
 
  1. (Defun C:HulplijnA ()
  2. (command "-Layer" "make" "X-XX-AL-HULPLIJN-G" "color" "yellow" "" "")
  3. (Command "-Layer" "set" "X-XX-AL-HULPLIJN-G" "")
  4. (princ)
  5. )

 
由于上面的代码在几个级别上是错误的,所以我想用if语句创建一个检查。
 
  1. (Defun C:hulplijn ()
  2. (if (tblsearch "LAYER" "X-XX-AL-HULPLIJN-G") ; Bestaat deze laag?
  3. ((Command "-Layer" "set" "X-XX-AL-HULPLIJN-G" "")(princ)) ; Zo ja dan doen we dit
  4. ((command "-Layer" "make" "X-XX-AL-HULPLIJN-G" "color" "yellow" "" "")) ; Zo nee dan doen we dit
  5. )
  6. (princ)
  7. )

 
所以,上面的代码在两种情况下都给了我一个“命令:;错误:无函数定义:nil”错误。
 
我做错了什么来制造那个错误?
回复

使用道具 举报

BKT

1

主题

124

帖子

123

银币

初来乍到

Rank: 1

铜币
7
发表于 2022-7-5 16:42:40 | 显示全部楼层
您需要去掉额外的括号和(princ):
 
  1. (Defun C:hulplijn ()
  2. (if (tblsearch "LAYER" "X-XX-AL-HULPLIJN-G") ; Bestaat deze laag?
  3.    [color=red]([/color](Command "-Layer" "set" "X-XX-AL-HULPLIJN-G" "")[color=red](princ))[/color] ; Zo ja dan doen we dit
  4.    [color=red]([/color](command "-Layer" "make" "X-XX-AL-HULPLIJN-G" "color" "yellow" "" "")[color=red])[/color] ; Zo nee dan doen we dit
  5. )
  6. (princ)
  7. )
回复

使用道具 举报

76

主题

312

帖子

254

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
390
发表于 2022-7-5 17:14:56 | 显示全部楼层
如果您只使用“make”层,它会将其设置为活动(如果它已经存在)。在这种情况下,“if”语句过于致命。
回复

使用道具 举报

27

主题

113

帖子

90

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
132
发表于 2022-7-5 17:24:31 | 显示全部楼层
 
谢谢,现在很有魅力。
 
 
 
也许吧,但做正确的事情看起来“更干净”,尽管有一个行为“统治所有人”。但我会添加一个警告,说明该层不存在,明确说明没有使用正确的模板(在这种情况下,一个模板不能缺少另一个模板)
如果我想改变图层的任何属性,比如颜色,那么命令(制作图层)会将其重置为命令中的首选项。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-8-20 21:20 , Processed in 0.588296 second(s), 61 queries .

© 2020-2025 乐筑天下

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