乐筑天下

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

[编程交流] LISP移动选定对象

[复制链接]

2

主题

11

帖子

9

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-6 08:11:27 | 显示全部楼层 |阅读模式
大家好,
 
我有一个新的挑战:是否有一个Lisp可以将选定的对象移动到现有的指定层?
 
我希望能够在屏幕上选择对象,输入一个短命令,然后它们自动转到某个层(我们称之为“第1层”)。
 
在网上到处找了,我找不到任何类似的东西,我也不知道足够的AutoLISP,我自己也写不出来。。。
 
提前谢谢!
 
回复

使用道具 举报

5

主题

1074

帖子

1088

银币

初来乍到

Rank: 1

铜币
9
发表于 2022-7-6 08:21:27 | 显示全部楼层
在程序中有一些不使用lisp的方法,你可以使用COPYTOLAYER。如果您确定要使用lisp,那么您可以在本页底部的“类似线程”部分找到答案。
回复

使用道具 举报

2

主题

11

帖子

9

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-6 08:27:30 | 显示全部楼层
嗨,Dadgad,
 
谢谢你的建议。
 
COPYTOLAYER不起作用,因为我不想复制对象,我想将它们移动到指定的层。
至于下面的线程,我刚刚又看了一眼,什么也找不到。
 
肯定有Lisp程序的地方。
回复

使用道具 举报

5

主题

1074

帖子

1088

银币

初来乍到

Rank: 1

铜币
9
发表于 2022-7-6 08:29:13 | 显示全部楼层
 
更改命令或属性。也可以编写脚本或动作录制宏。
你查过李的网站了吗?我打赌他一定有办法做到这一点。
回复

使用道具 举报

6

主题

36

帖子

30

银币

初来乍到

Rank: 1

铜币
30
发表于 2022-7-6 08:35:14 | 显示全部楼层
也许是LAYMCH?
回复

使用道具 举报

5

主题

1074

帖子

1088

银币

初来乍到

Rank: 1

铜币
9
发表于 2022-7-6 08:41:49 | 显示全部楼层
这就是那张票,从来没用过那张,打得好!我会在“快捷特性”选项板中执行此操作,该选项板始终处于打开状态。
回复

使用道具 举报

2

主题

11

帖子

9

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-6 08:44:17 | 显示全部楼层
谢谢大家的意见。LAYMCH确实有效,但我觉得它太慢了。我的道具。调色板总是关闭的,所以我可以最大限度地利用工作空间,而且它需要很长时间才能打开。
 
好消息是,我在另一个网站上发现了一个Lisp:
 
http://www.theswamp.org/index.php?topic=33195.0
 
代码如下:-
 
  1. ; Changes selected objects to Layer PL1
  2. (defun c:setpl1 ()
  3. (command "_.chprop"
  4.    (ssget ) "" "LA" "PL1" "")
  5.         )

 
 
感谢memerson的支持。谢谢大家的帮助。
 
回复

使用道具 举报

5

主题

1074

帖子

1088

银币

初来乍到

Rank: 1

铜币
9
发表于 2022-7-6 08:54:08 | 显示全部楼层
很高兴你把它整理好了,我讨厌属性调色板,我觉得这简直是一场噩梦。我喜欢QUICK PROPERTIES调色板,它是可自定义的,可以像你想要的那样小,可以随时获取你需要的所有信息,无需等待。
回复

使用道具 举报

VVA

1

主题

308

帖子

308

银币

初来乍到

Rank: 1

铜币
8
发表于 2022-7-6 08:58:59 | 显示全部楼层
不使用命令的版本(运行速度更快)。如果不存在具有该名称的层,则会创建该层
  1. ; Changes selected objects to Layer PL1
  2. (defun c:setpl1 ()
  3. (tolayer
  4.    (ssget "_:L") ;;selection
  5.    "PL1"         ;;Layer
  6.    )
  7. (princ)
  8. )
  9. (defun tolayer ( ss lay / i e )
  10. ;;; ss - pickset
  11. ;;; lay -layer name
  12. (repeat (setq i (sslength ss))
  13.    (entmod
  14.      (subst
  15.        (cons 8 lay)
  16.        (assoc 8 (entget (setq e (ssname ss (setq i (1- i))))))
  17.        (entget e)
  18.        )
  19.      )
  20.    )
  21. )
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 09:04:07 | 显示全部楼层
为什么不选择你的对象,选择图层下拉菜单,然后选择图层;对象将移动到您选择的层:
 
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-9 09:05 , Processed in 0.434088 second(s), 72 queries .

© 2020-2025 乐筑天下

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