乐筑天下

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

[编程交流] 使用选择创建dxf文件

[复制链接]

18

主题

32

帖子

14

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
90
发表于 2022-7-6 14:38:11 | 显示全部楼层 |阅读模式
您好,我喜欢在VBA中生成自己的WBLOCK命令。我需要选择实体(线,圆,线,块),并把它放在2个新的dxf文件,将由其他程序使用。
 
此图纸。Wblock命令仅生成DWG和ThisDrawing。导出可以生成DXF,但包含所有源DWG。
 
我尝试从源DWG中进行选择,将其复制到临时文件以制作此图形。与该文件一起导出。但是当我试着这样做时,副本会被放入我的源文件中。。。。。为什么?
 
如果你有其他想法,不要说。
自制wblock。txt文件
回复

使用道具 举报

10

主题

973

帖子

909

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
118
发表于 2022-7-6 15:13:13 | 显示全部楼层
如果没有指定其他BlockTable,CopyObjects方法将复制对象。在下面的示例中,新文件DOC1的模型空间被设置为复制对象的目标。
 
 
  1. Sub danblock()
  2. Dim ss As AcadSelectionSet
  3. Dim fType(0) As Integer
  4. Dim fData(0) As Variant
  5. Dim ent As AcadEntity
  6.    
  7.   With ThisDrawing.SelectionSets
  8.      While .Count > 0
  9.         .Item(0).Delete
  10.      Wend
  11.      Set ss = .Add("setbom")
  12.   End With
  13. fType(0) = 0
  14. fData(0) = "LINE,CIRCLE,INSERT,LWPOLYLINE"
  15. ss.SelectOnScreen fType, fData
  16. If ss.Count = 0 Then Exit Sub
  17. Dim DOC1 As AcadDocument
  18. Dim CurrDoc As AcadDocument
  19.   Set CurrDoc = ThisDrawing.Application.ActiveDocument
  20.   Set DOC1 = Documents.Add
  21.   Dim exportFile As String
  22.   exportFile = "C:\DXFExprt" 'Modify as needed
  23.   
  24. Dim objCollection() As Object
  25. Dim intCount As Integer
  26. Dim i As Integer
  27.   intCount = ss.Count - 1
  28.   ReDim objCollection(intCount)
  29.   For i = 0 To intCount
  30.      Set objCollection(i) = ss.Item(i)
  31.   Next
  32.   CurrDoc.CopyObjects objCollection, DOC1.ModelSpace
  33.   DOC1.Export exportFile, "DXF", DOC1.SelectionSets.Add("Temp")
  34. End Sub
回复

使用道具 举报

18

主题

32

帖子

14

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
90
发表于 2022-7-6 15:44:58 | 显示全部楼层
谢谢你的帮助。我的功能运行得很好。在制作DXF之前,我试图找到缩放选择的方法。我必须用我选择的相同比例制作一个dxf,另一个以毫米为单位,因此,我需要将我的选择比例放大25.4倍
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-5 00:00 , Processed in 0.404894 second(s), 58 queries .

© 2020-2025 乐筑天下

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