乐筑天下

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

[编程交流] 任何Sty的LAYMCUR等效值

[复制链接]

49

主题

1246

帖子

1210

银币

后起之秀

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

铜币
254
发表于 2022-7-6 00:55:09 | 显示全部楼层 |阅读模式
大家好!我很好奇。。。。LAYMCUR命令是我非常常用的命令。实际上,我在我的PGP文件中设置了WW命令,用于快速访问。在做了一些研究之后,据我所知,LAYMCUR是其类型的唯一命令,并且仅适用于层。是否有一个LISP例程在其周围浮动,它会自动读取对象的类型,并将对象类型的样式设置为当前?
 
例如,如果选择一个尺寸并运行命令,它会将拾取的尺寸的样式设置为当前尺寸样式。多重引线样式、表格样式、尺寸样式、文本样式等。。。。整整九码。
 
再说一次,好奇就是一切。谢谢
 
-坦纳
回复

使用道具 举报

0

主题

99

帖子

99

银币

初来乍到

Rank: 1

铜币
0
发表于 2022-7-6 01:03:54 | 显示全部楼层
添加所有要包含的实体,并获取该实体的当前样式。
 
  1. (defun C:test ()
  2. (setq e (car (entsel))
  3.      v (cdr (assoc 0 (entget e)))
  4.      e (vlax-ename->vla-object e))
  5.      
  6. (cond
  7.   ((= v "DIMENSION")
  8.     (vla-put-stylename e (getvar 'dimstyle))
  9.   )
  10.   ((= v "MULTILEADER")
  11.     (vla-put-stylename e (getvar 'cmleaderstyle))
  12.   )
  13.   ((or (= v "MTEXT") (= v "TEXT"))
  14.     (vla-put-stylename e (getvar 'textstyle))
  15.   )
  16.   ((= v "ACAD_TABLE")
  17.   (vla-put-stylename e (getvar 'ctablestyle))
  18.   )
  19.   (t (princ "Do the rest 6 yards..."))
  20. )
  21. (princ)
  22. )
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 01:09:41 | 显示全部楼层
尝试以下Tannar:
  1. (defun c:stymcur ( / ent lst obj sty typ )
  2.    (setq lst
  3.       '(
  4.            ("TEXT,MTEXT"  . textstyle)
  5.            ("MULTILEADER" . cmleaderstyle)
  6.            ("ACAD_TABLE"  . ctablestyle)
  7.        )
  8.    )
  9.    
  10.    (while
  11.        (progn (setvar 'errno 0) (setq ent (car (entsel)))
  12.            (cond
  13.                (   (= 7 (getvar 'errno))
  14.                    (princ "\nMissed, try again.")
  15.                )
  16.                (   (null ent)
  17.                    nil
  18.                )
  19.                (   (not (vlax-property-available-p (setq obj (vlax-ename->vla-object ent)) 'stylename))
  20.                    (princ "\nObject does not have a style.")
  21.                )
  22.                (   (progn
  23.                        (setq typ (cdr (assoc 0 (entget ent)))
  24.                              sty (vla-get-stylename obj)
  25.                        )
  26.                        (vl-some '(lambda ( x ) (if (wcmatch typ (car x)) (setvar (cdr x) sty))) lst)
  27.                    )
  28.                    nil
  29.                )
  30.                (   (wcmatch typ "*DIMENSION") ;; they have to be awkward...
  31.                    (command "_.-dimstyle" "_R" sty)
  32.                )
  33.                (   (princ "\nThis program is not compatible with that object."))
  34.            )
  35.        )
  36.    )
  37.    (princ)
  38. )
  39. (vl-load-com) (princ)
回复

使用道具 举报

49

主题

1246

帖子

1210

银币

后起之秀

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

铜币
254
发表于 2022-7-6 01:16:41 | 显示全部楼层
完美,李。。。绝对完美。将这一个添加到我已经强大的定制李Mac阿森纳。再次感谢!!
 
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 01:23:56 | 显示全部楼层
 
太好了,谢谢你,坦纳!
回复

使用道具 举报

49

主题

1246

帖子

1210

银币

后起之秀

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

铜币
254
发表于 2022-7-6 01:34:57 | 显示全部楼层
并不是说我在你的程序和网站上有任何“这么说”,但这个漂亮的程序将非常适合添加到你网站上的程序列表中。我知道很多人会从中获得价值。仅仅是大声思考就够了。
 
回复

使用道具 举报

10

主题

895

帖子

887

银币

初来乍到

Rank: 1

铜币
49
发表于 2022-7-6 01:37:31 | 显示全部楼层
Tannar-有一个内置的ADDSELECTED命令,以类似的方式工作,它将启动该命令并为该实例设置样式和图层。它不会将图层或样式设置为选中的图层或样式,而是返回到命令启动时的位置。
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 01:47:16 | 显示全部楼层
 
非常感谢Tannar的建议-除非我决定进一步开发,否则我不会在各种论坛上发布许多小的“一次性”程序-例如,如果我要在我的网站上发布此程序,我可能会考虑将其开发为所有对象属性(层、颜色、线型等)的通用应用程序,而不仅仅是样式。
 
但就这个应用程序而言,我认为大多数人都会使用ADDSELECTED命令(可从右键单击菜单获得)——我相信这是2011年引入的。
 
尽管如此,我还是很感激你的建议!
 

 
编辑:rkent用ADDSELECTED建议打败了我!
回复

使用道具 举报

49

主题

1246

帖子

1210

银币

后起之秀

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

铜币
254
发表于 2022-7-6 01:48:39 | 显示全部楼层
rkent和Lee-感谢您的回复。Add Selected是我使用的东西,但永久切换是我想要的,我现在肯定有了。
 
@李,你的回答很有道理,关于增加你的下载部分。
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 01:58:20 | 显示全部楼层
 
..........
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-10 21:03 , Processed in 0.933724 second(s), 72 queries .

© 2020-2025 乐筑天下

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