乐筑天下

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

[编程交流] 新手需要LISP帮助

[复制链接]

1

主题

9

帖子

8

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-5 20:38:51 | 显示全部楼层
你读了我最后的帖子吗?我想你肯定穿了我以前的衣服
回复

使用道具 举报

10

主题

8258

帖子

8335

银币

初来乍到

Rank: 1

铜币
31
发表于 2022-7-5 20:41:28 | 显示全部楼层
对不起,我没有忽视你。不得不在别处解决另一个问题。
 
完整发布lisp例程(或继续称之为“脚本”),以便我们都能看到它。谢谢
 
回复

使用道具 举报

10

主题

8258

帖子

8335

银币

初来乍到

Rank: 1

铜币
31
发表于 2022-7-5 20:45:36 | 显示全部楼层
 
这就是吉米·伯格马克如何处理获取层列表的任务。
 
http://www.jtbworld.com/lisp/layer-list.htm
回复

使用道具 举报

5

主题

956

帖子

963

银币

初来乍到

Rank: 1

铜币
35
发表于 2022-7-5 20:46:34 | 显示全部楼层
 
您好,欢迎来到cadtutor
日志文件如何?文本文件??
那么你的任务就是从命令行复制?
 
我的理解是这很烦人,因为你需要按[Enter]直到它完成?
如果这一切结束,你下一步要做什么?
 
 
编辑:
建议,这只是一个粗略的代码,跳过步骤[Enter](如果列表太长,则使用哪个普通层命令)
  1. (defun c:test (/ doc)
  2. ;hanhphuc 13.03.2015
  3. ;layer list in command line
  4. (setq doc (vlax-get-acad-object))
  5. (prompt "\nName State Color Linetype Lineweight ")
  6. (vlax-for obj
  7. (foreach x '(activedocument layers) (setq doc (vlax-get doc x)))
  8.   (terpri)
  9. (princ
  10. (apply 'strcat
  11. (mapcar ''((x)(setq x (strcat (if (numberp x)(vl-princ-to-string x)x) " ")))
  12. (mapcar ''((lay)(vlax-get obj lay)) '([color="red"]name layeron freeze lock plottable color linetype lineweight[/color]))))) [color="green"];<-- column sequence[/color]
  13. )
  14. (textpage)
  15. (princ)
  16. )
  17. (vl-load-com)
回复

使用道具 举报

1

主题

9

帖子

8

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-5 20:49:39 | 显示全部楼层
如果我理解正确
 
此代码段可能适用于:
 
  1. (COMMAND "LOGFILEPATH" "C:\\Script\\Log")
  2. (COMMAND "LOGFILEON")
  3. (COMMAND "-XREF" "PATHTYPE" "*" "R")
  4. (COMMAND "-SCALELISTEDIT" "?" "EXIT" )
  5. (COMMAND "-purge" "Regapps" "*" "N")
  6. (COMMAND "-purge" "ALL" "*" "N")
  7. ;(COMMAND "-layer" "T" "0" "")
  8. ;(COMMAND "-layer" "S" "0" "")
  9. (COMMAND "-layer" "?" "*" "")
  10. (COMMAND "AUDIT" "N")
  11. (COMMAND "VISRETAIN" "")
  12. (COMMAND "PSLTSCALE" "")
  13. (COMMAND "LTSCALE" "")
  14. (COMMAND "MSLTSCALE" "")
  15. (COMMAND "XDWGFADECTL" "0")
  16. (COMMAND "BASE" "0,0,0")

 
或:
 
  1. (while (> (getvar "CMDACTIVE") 0)
  2.       (command ""))

 
取决于所需的输入。
 
-大卫
回复

使用道具 举报

10

主题

8258

帖子

8335

银币

初来乍到

Rank: 1

铜币
31
发表于 2022-7-5 20:55:07 | 显示全部楼层
 
嗨,谢谢!我两个都试过了,但都没用。如果只是把它们贴在上面,是吗?
 
当做
回复

使用道具 举报

1

主题

9

帖子

8

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-5 20:57:00 | 显示全部楼层
要在用户不必按enter键的情况下完成命令:
 
  1. (while (> (getvar "CMDACTIVE") 0)
  2.       (command "_Yes"))

 
默认值(1-10)以及随后可能出现的任何属性输入均被接受。
回复

使用道具 举报

26

主题

1495

帖子

20

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
118
发表于 2022-7-5 21:00:41 | 显示全部楼层
回复

使用道具 举报

1

主题

9

帖子

8

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-5 21:01:56 | 显示全部楼层
 
Hi and thanks! I tried both of them, but it didn't work. If it just was to paste them right in that is?
 
Regards
回复

使用道具 举报

26

主题

1495

帖子

20

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
118
发表于 2022-7-5 21:05:29 | 显示全部楼层
To complete a command without the user having to press the enter key :
 
  1. (command "_.INSERT" "M_Block" '(0 0 0))(while (> (getvar "CMDACTIVE") 0)      (command ""))
 
The default values ( 1 1 0 ) are accepted, as well as any attribute inputs that may follow.
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-11 09:06 , Processed in 0.430743 second(s), 70 queries .

© 2020-2025 乐筑天下

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