乐筑天下

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

[综合讨论] 帮助块插入宏wi

[复制链接]

2

主题

4

帖子

2

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-6 23:44:21 | 显示全部楼层 |阅读模式
长期潜伏者,第一次海报。
 
我最近一直在断断续续地研究这个宏,但我似乎做不好。我在DIESEL解释器调用变量的方式上遇到了一些困难,并且一直在尝试使用嵌套使代码工作。
  1. ^C^C^C_setvar;userr1;$m=$(if,$(=,$(getvar,cvport),1),1/96,1);
  2. _setvar;userr2;$(if,$(=,$(getvar,cvport),1),0.125,$(*,0.125,$(getvar,dimscale)));
  3. -INSERT;2x2_r_n;"$m=$(getvar,userr1)";;\\
  4. -attedit;;;;;L;A;0;H;""$m=$(getvar,userr2)"";;

第一行取消,然后将变量userr1在图纸空间中设置为1/96,在模型空间中设置为1。
第二行将变量userr2在图纸空间中设置为0.125,在绘图空间中设置为dimscale*0.125。
第三行插入我的块(一个2'x2'凹进的普通功率灯,用描述符属性按比例绘制),然后将其缩放到userr1定义的值。
最后一行编辑插入块的属性,使其角度为0,高度由变量userr2定义。
 
我从中了解到,DIESEL并没有按照我想要的方式进行评估。。。
 
我嵌套了最后的变量调用(userr1一次;userr2两次),目的是在评估之前将新值传递给它们,但它工作不太正常,我有点沮丧。
 
目前,当我使用宏时,如果我没有在使用之间更改cvport或dimscale,它在第二次调用时会正常工作。我认为这告诉我,尽管我尝试嵌套,但在块插入和属性编辑之前,条件语句仍然没有正确更新变量。
 
我非常感谢在使其正常运行和更好地理解DIESEL评估逻辑方面提供的任何帮助(我在这里找到了很好的材料){http://www.crlf.de/Dokumente/Diesel/Diesel1.html},但我的理解显然还有差距)。
回复

使用道具 举报

2

主题

4

帖子

2

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-7 00:19:56 | 显示全部楼层
嗯,我自己想出来的。工作代码如下:
 
  1. ^C^C^C_setvar;userr1;$m=$(if,$(=,$(getvar,cvport),1),1/96,1);
  2. _setvar;userr2;$(if,$(=,$(getvar,cvport),1),0.125,$(*,0.125,$(getvar,dimscale)));
  3. -INSERT;2x2_r_n;"$m=$(getvar,userr1)";;\\
  4. -attedit;;;;;L;A;0;H;"$m=$(getvar,userr2)";;
回复

使用道具 举报

YZ

27

主题

232

帖子

205

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
135
发表于 2022-7-7 00:25:01 | 显示全部楼层
干得好,克里斯!多棒的宏。我花了很长时间才发现这两个版本之间有什么不同!
 
我向你致敬,因为你解决了这个问题。我从未能够在一个宏中定义和返回用户变量。在我看来,在宏完成之前,它不会删除记录,从而使getvar无效。我甚至尝试了setvar,然后为getvar调用了一个脚本,但没有用。
 
但不知怎么的,你似乎工作得很好。我要再检查一遍。还感谢Diesel链接。
回复

使用道具 举报

2

主题

4

帖子

2

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-7 00:48:03 | 显示全部楼层
我很高兴我的解决方案对其他人有帮助。解决这个问题令人恼火。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-9 21:47 , Processed in 0.482471 second(s), 60 queries .

© 2020-2025 乐筑天下

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