乐筑天下

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

[编程交流] 如何设置所有嵌套实体

[复制链接]

1

主题

8

帖子

18

银币

初来乍到

Rank: 1

铜币
11
发表于 2022-7-6 18:19:53 | 显示全部楼层
 
例如,查看尺寸线的特性。
属性中提到的所有颜色都必须按层更改为颜色。你能在VBA中为所有可能的维度做到这一点吗?
 
 
将所有颜色设置为color bylayer后,我想使用adjustxref,它将所有嵌套颜色设置为颜色252。(lisp仅在所有嵌套颜色都设置为“按层颜色”时有效)
 
lisp中提到的颜色252仅用于打印外部参照作为背景。
 
我相信你现在可以进一步帮助我。
 
谢谢Serge
回复

使用道具 举报

0

主题

89

帖子

147

银币

限制会员

铜币
-9
发表于 2022-7-6 18:24:28 | 显示全部楼层
嗨,谢尔盖,
不客气
是的,我知道如何制作Lisp文件并运行它,我只是不确定是否真的需要这样做,以便帮助你?
 
我提供的另一个代码是否正常工作?
 
 
我懂了。
我想知道为什么执行Lisp例程的人没有解决这个问题?
 
你知道如何运行VBA项目/宏,然后直接运行Lisp例程吗?如果没有,我可以帮你。
我需要VBA项目(.dvb)名称、模块名称和您决定的宏名称。
此外,Lisp例程名称和命令,我认为是adjustxref。
 
 
那么,您是说要在当前图形的“ByLayer”上显示所有尺寸?源图形(外部参照)上还是仅在当前图形中也有尺寸?
 
 
考虑到这一点,我们可以创建一个名为xref(或其他)的层,将所有外部参照实体放置在该层上,并使该层的颜色为252。
如果你这样做了,你可能会完全抛弃Lisp例程;
那么,我们甚至不需要解决整个Bylayer问题。
 
另一种撇毛猫的方法:
我不确定你是否在使用ctb或stb,但你可以创建一个用于灰度打印的笔式文件。
用户在打印时选择该笔样式,然后所有层都指向252处打印。
 
如果你这样做,那么也许根本不需要自动化
 
除非我在这一切中遗漏了一些关键的东西?
 
毫升
回复

使用道具 举报

0

主题

89

帖子

147

银币

限制会员

铜币
-9
发表于 2022-7-6 18:27:34 | 显示全部楼层
嘿Serge,
试试看。
这将把当前图形中的所有尺寸、图元的颜色放入“Bylayer”。这就是你需要的吗?
 
毫升
 
  1. Sub DimEntsToByLayer()
  2. Dim Ent As AcadEntity
  3. Dim Sset As AcadSelectionSet
  4. On Error Resume Next
  5. ThisDrawing.SelectionSets.Item("dims").Delete
  6. Set Sset = ThisDrawing.SelectionSets.Add("dims")
  7. Sset.Select acSelectionSetAll
  8. For Each Ent In Sset
  9. If TypeOf Ent Is AcadDimension Then
  10.   Ent.color = acByLayer
  11. End If
  12. Next Ent
  13. Sset.Delete
  14. End Sub
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-4 16:41 , Processed in 0.759050 second(s), 56 queries .

© 2020-2025 乐筑天下

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