乐筑天下

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

[编程交流] 正在查找LISP以更改s

[复制链接]

3

主题

8

帖子

5

银币

初来乍到

Rank: 1

铜币
15
发表于 2022-7-6 08:37:55 | 显示全部楼层 |阅读模式
我一直在搜索一个lisp,它会提示您选择对象,并将所有选定对象的颜色从“按层”更改为当前的任何颜色。有没有人见过这样的东西?
回复

使用道具 举报

54

主题

3755

帖子

3583

银币

后起之秀

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

铜币
438
发表于 2022-7-6 08:45:08 | 显示全部楼层
  1. (defun c:test (/ ss i d)
  2. (if (setq ss (ssget "_:L"))
  3.    (repeat (setq i (sslength ss))
  4.      (entmod (append (setq d (entget (ssname ss (setq i (1- i)))))
  5.                      (list (assoc 62 (tblsearch "LAYER" (cdr (assoc 8 d)))))
  6.              )
  7.      )
  8.    )
  9. )
  10. (princ)
  11. )
回复

使用道具 举报

3

主题

8

帖子

5

银币

初来乍到

Rank: 1

铜币
15
发表于 2022-7-6 08:53:17 | 显示全部楼层
非常感谢!这正是我想要的
回复

使用道具 举报

54

主题

3755

帖子

3583

银币

后起之秀

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

铜币
438
发表于 2022-7-6 08:55:08 | 显示全部楼层
不客气。
回复

使用道具 举报

VVA

1

主题

308

帖子

308

银币

初来乍到

Rank: 1

铜币
8
发表于 2022-7-6 09:01:25 | 显示全部楼层
我的5美分
COLORFL-来自层的颜色
PFL-图层特性(颜色线型线宽)
回复

使用道具 举报

44

主题

3166

帖子

2803

银币

中流砥柱

Rank: 25

铜币
557
发表于 2022-7-6 09:05:37 | 显示全部楼层
 
VVA,在使用VL*函数时,您可以考虑使用VLAX-FOR,并迭代选择集(速度要快得多)眨眼:
 
小示例(基于您的代码-希望您不介意):
 
  1. (defun c:CBL () (c:ColorByLayer))
  2. (defun c:ColorByLayer  (/ *error*)
  3. (princ "\rCOLORBYLAYER ")
  4. (vl-load-com)
  5. (defun *error*  (msg)
  6.    (cond ((not msg) (if acDoc (vla-endundomark acDoc)))           ; Normal exit
  7.          ((member msg '("Function cancelled" "quit / exit abort")))    ; <esc> or (quit)
  8.          ((princ (strcat "\n** Error: " msg " ** "))))                 ; Fatal error, display it
  9.    (princ))
  10. ((lambda (acDoc / ss oLayer oLayers oLayersList)
  11.     (if (setq ss (ssget "_:L"))
  12.       (progn
  13.         (vla-startundomark acDoc)
  14.         (vlax-for x (setq ss (vla-get-activeselectionset acDoc))
  15.           (if (= :vlax-true
  16.                  (vla-get-lock
  17.                    (setq oLayer (vla-item (cond (oLayers)
  18.                                                 ((setq oLayers
  19.                                                         (vla-get-layers acDoc))))
  20.                                           (vla-get-layer x)))))
  21.             (progn
  22.               (setq oLayersList (cons oLayer oLayersList))
  23.               (vla-put-lock oLayer :vlax-false)))
  24.           (vl-catch-all-apply
  25.             'vla-put-color
  26.             (list x (vla-get-color oLayer))))
  27.         (vla-delete ss)
  28.         (foreach oLayer  oLayersList
  29.           (vla-put-lock oLayer :vlax-true))
  30.         (*error* nil))
  31.       (*error* "Nothing selected")))
  32.    (vla-get-activedocument (vlax-get-acad-object))))
回复

使用道具 举报

54

主题

3755

帖子

3583

银币

后起之秀

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

铜币
438
发表于 2022-7-6 09:14:17 | 显示全部楼层
这是很多代码。
回复

使用道具 举报

10

主题

8258

帖子

8335

银币

初来乍到

Rank: 1

铜币
31
发表于 2022-7-6 09:21:30 | 显示全部楼层
将对象的颜色从“按层”更改为“任意”颜色难道不只是鼓励不良的CAD实践吗?我们中有多少人收到来自外部来源的图纸,发现物体的颜色与它所在图层的颜色不一致?至少可以说令人沮丧。
回复

使用道具 举报

54

主题

3755

帖子

3583

银币

后起之秀

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

铜币
438
发表于 2022-7-6 09:21:49 | 显示全部楼层
回复

使用道具 举报

44

主题

3166

帖子

2803

银币

中流砥柱

Rank: 25

铜币
557
发表于 2022-7-6 09:29:06 | 显示全部楼层
 
它是。。。我只是想为VVA提供一个“工作”VLAX,例如使用他自己的代码。
 
此外,如果你认为这不好,不要费心学习(高级)。NET示例:通过Kinect将语音识别添加到AutoCAD(续)
 
... 相比之下,更简单的东西(即获取、设置系统变量等)要短得多,而且仍然比LISP*更多的代码!LoL较差的ActiveX COM API。
 
[缩进]

[/缩进]
是的*踢翻泥土*
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-7 09:14 , Processed in 0.423509 second(s), 72 queries .

© 2020-2025 乐筑天下

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