Glen Smith 发表于 2022-7-5 23:42:07

插入块和属性

我正试图破解(来自李和其他人在这里发布的一些代码)一个LISP,它将从列表中插入一块门。门块需要将门编号指定给属性。在列表中,我已经有了街区名称和门号。我已经设法让LISP插入块并开始填充属性,但我不知道如何让它停止添加属性并移动到下一个块。
 
帮助文件引用了一个sequend标志,这应该是我所需要的,但我不确定如何对其进行编码。
 
问题代码突出显示:
发生的事情是插入第一个块,将“GLEN”作为第一个属性,然后用后续命令调用填充其余属性。attribute2是“-insert”,属性3是下一个块名,依此类推。
 
谢谢你能提供的任何帮助。
 
格伦

BlackBox 发表于 2022-7-5 23:52:55

我只浏览了一下代码。
 
也就是说,这条线的目的是什么:
 

(foreach entityinslst
         (progn)
         (if entity
         (command "-insert" entity ipt xScale yScale rot "GLEN")
         )
         (setq ipt (list (car ipt) (- (cadr ipt) 12) (caddr ipt)))
         )

 
 
该行:
 

(command "-insert" entity ipt xScale yScale rot "GLEN")

 
 
... 插入块,并指定“GLEN”作为第一个属性值*如果我理解正确,插入的块有多个属性,因此得到的属性值不正确。再说一次,如果那句话是真的,那么我想这行代码就是你应该开始的地方。
 
如果要在添加“GLEN”后终止属性条目,请尝试在“GLEN”后添加一个“”,如下所示:
 

(command "._-insert" entity ipt xScale yScale rot "GLEN" "")

 
 
如果您确实想为其他属性“填充”其他值,则应将其添加到“GLEN”之后的行中。有道理?

Glen Smith 发表于 2022-7-6 00:07:31

RenderMan,谢谢你的关注。
 
(progn)是一些被删除的代码的工件,现在也不见了。
 
我插入的块有许多属性,属性的数量不同,我希望有一种方法可以只填充第一个块,然后转到下一个块。
 
我尝试将“”添加到insert语句的末尾,这将保留属性的默认值,但不会终止命令。
 
在lisp帮助中查找insert可从DXF参考部分生成:
我认为这意味着有一种方法可以停止输入属性并进入下一步,我只是不知道Sequend实体是什么。我试着把sequend放在你建议的双引号的地方。这将导致终止属性条目和插入,从而不会插入块。
 
谢谢您的关注。
格伦

BlackBox 发表于 2022-7-6 00:11:50

今天晚些时候,我将使用我们的一个标题栏(有许多属性)进行另一次查看。
 
我先要完成一些提交文件,还要参加一些培训,然后我希望能帮上忙。

David Bethel 发表于 2022-7-6 00:16:47

我想我明白了
 
5
 
这将用默认值填充所有属性-大卫

Glen Smith 发表于 2022-7-6 00:28:30

快乐快乐快乐。
 
代码现在可以工作了!!非常感谢,我会重新发布工作代码后做一些家务。
 
格伦

oompa_l 发表于 2022-7-6 00:33:48

 
你能重新发布吗?我正试图做一些类似的设备清单。。。谢谢

Luís Augusto 发表于 2022-7-6 00:47:53

 
你好,格伦,我对你的日常生活很感兴趣,可以把它放到论坛上吗?
谢谢
路易斯·奥古斯托。
页: [1]
查看完整版本: 插入块和属性