乐筑天下

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

外部参照,可以更改覆盖属性吗?

[复制链接]

86

主题

744

帖子

6

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1092
发表于 2008-10-16 18:30:54 | 显示全部楼层 |阅读模式
我需要一种快速的方法来查找图形中的所有外部参照,然后将它们更改为所有覆盖。我还没有找到这种控制可能在哪里。有人能给我指出正确的方向吗?还有,如何让VBA生成外部参照名称的集合
谢谢,亚历克斯
回复

使用道具 举报

86

主题

744

帖子

6

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1092
发表于 2008-10-16 18:47:53 | 显示全部楼层
使用lisp或VBA,可能需要拆离并重新附着外部参照。对于C#或VB.NET之类的.NET语言不太确定。可能没有必要。
回复

使用道具 举报

86

主题

744

帖子

6

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1092
发表于 2008-10-16 18:59:37 | 显示全部楼层
你可以't更改附件类型,您必须分离并重新连接。
回复

使用道具 举报

86

主题

744

帖子

6

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1092
发表于 2008-10-16 19:04:07 | 显示全部楼层
带着我的一切'我最近一直在读,我想在VBA中做它。我需要收集文件名、文件路径和插入点吗。(我们以1:1的比例进行所有外部参照,并进行旋转。)然后使用文件名分离所有外部参照。然后使用文件名、路径和插入点再次附加为覆盖。这就是基本想法吗?
回复

使用道具 举报

86

主题

744

帖子

6

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1092
发表于 2008-10-16 19:20:35 | 显示全部楼层
执行过滤选择集,然后对集上的每个循环执行 获取外部参照和插入点的路径/名称,分离,然后附着新的
你能从这里走吗?还是需要帮助?
回复

使用道具 举报

86

主题

744

帖子

6

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1092
发表于 2008-10-16 19:21:37 | 显示全部楼层
实际上,几年前我在VBA中写了一些东西来实现这一点,但可能是don 35;039;我再也没有了 本人'我会查一下的。
回复

使用道具 举报

86

主题

744

帖子

6

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1092
发表于 2008-10-16 19:57:57 | 显示全部楼层
我不能'我没有找到它,所以我很快又做了一次 这比它可能要不那么优雅,因为我做了一些快速抄袭和修补其他东西 它也仅适用于模型空间外部参照 如果它点击了pspace外部参照,它会将其分离并在mspace中重新附着 本人'以前有人说过我不应该't张贴任何代码,除非它'因为I 35; 039;如果这些人真的需要自己付出努力,我会浪费他们的时间,但这并没有经过测试 它应该有效 如果没有't、 只需稍加调整即可
  1. Public Sub Layover()
  2. Dim objSelSets As AcadSelectionSets
  3. Dim objSelSet As AcadSelectionSet
  4. Dim objOverlay As AcadExternalReference
  5. Dim intType(0) As Integer
  6. Dim varData(0) As Variant
  7. Dim strPath As String
  8. Dim strName As String
  9. Dim dblInsPnt(0 To 2) As Double
  10. Dim objXref As AcadExternalReference
  11. Dim objEnt As AcadEntity
  12. Dim objBlk As AcadBlock
  13. Dim objBlks As AcadBlocks
  14. Set objBlks = ThisDrawing.Blocks
  15. Set objSelSets = ThisDrawing.SelectionSets
  16. For Each objSelSet In objSelSets
  17.    If objSelSet.Name = "GetXrefs" Then
  18.      objSelSets.Item("GetXrefs").Delete
  19.      Exit For
  20.    End If
  21. Next
  22. Set objSelSet = objSelSets.Add("GetXrefs")
  23. intType(0) = 0
  24. varData(0) = "INSERT"
  25. objSelSet.Select 5, filtertype:=intType, filterdata:=varData
  26.    For Each objEnt In objSelSet
  27.      Set objBlk = objBlks(objEnt.Name)
  28.      If objBlk.IsXRef Then
  29.        Set objXref = objEnt
  30.        strName = obxref.Name
  31.        strPath = objXref.Path
  32.        dblInsPt = objXref.InsertionPoint
  33.        objBlk.Detach
  34.        Set objOverlay = ModelSpace.AttachExternalReference(strPath, strName, dblInsPnt, 1, 1, 1, 1, True)
  35.      End If
  36.    Next objEnt
  37. End Sub

回复

使用道具 举报

86

主题

744

帖子

6

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1092
发表于 2008-10-16 19:59:16 | 显示全部楼层
哦,没有错误控制,使用风险自负或随意忽略,废话,废话。
回复

使用道具 举报

86

主题

744

帖子

6

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1092
发表于 2008-10-16 22:02:01 | 显示全部楼层
很好的代码乳房
现在你能把它改成完全不同的样子吗 我不知道'我没有时间确切地告诉你我需要什么,所以请确保它有效&nbsp
提前谢谢&nbsp
PS 本人'我只是想通过请你做我的工作来帮助别人学习
回复

使用道具 举报

86

主题

744

帖子

6

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1092
发表于 2008-10-17 07:36:35 | 显示全部楼层
有人需要小睡一下。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-7-4 00:48 , Processed in 0.308395 second(s), 73 queries .

© 2020-2025 乐筑天下

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