乐筑天下

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

[编程交流] 从图纸空间移动对象

[复制链接]

18

主题

1529

帖子

973

银币

中流砥柱

Rank: 25

铜币
649
发表于 2022-7-5 16:52:12 | 显示全部楼层
只需使用CopyObjects和ScaleEntity方法。
回复

使用道具 举报

106

主题

1万

帖子

101

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1299
发表于 2022-7-5 16:57:28 | 显示全部楼层
我开始像Roy_043一样思考,只是使用复制粘贴和重新缩放。在最后一个布局旁边粘贴一个间隙。
 
马拉托维奇可能也有钱创建一个新的dwg,只需插入到主dwg。
 
我不使用advance steel,但如果一个项目没有一个包含多个布局的单个文件,这似乎很奇怪。你也检查过了吗。
回复

使用道具 举报

2

主题

261

帖子

20

银币

初来乍到

Rank: 1

铜币
8
发表于 2022-7-5 17:01:10 | 显示全部楼层
我可以在VBA上这样做。或者做一个。exe程序
在不打开文件的情况下处理。
但我需要知道一切。
例如,什么比例?
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

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

铜币
358
发表于 2022-7-5 17:05:03 | 显示全部楼层
你好
 
试试这个程序,让我知道你做得怎么样。
 
  1. (defun c:test (/ doc scl sel int pnt ent lst mvs)
  2. ;;------------------------------------;;
  3. ;;        Tharwat - Date: 26.07.2017        ;;
  4. ;; Move objects from Paper Space to        ;;
  5. ;; Model Space and scale them as per        ;;
  6. ;; the scale factor specified from        ;;
  7. ;; the user.                                ;;
  8. ;;------------------------------------;;
  9. (if (and (or (/= (getvar 'ctab) "Model")
  10.               (alert "Command is not allowed in Model Space <!>")
  11.           )
  12.           (setq scl (getdist "\nSpecify the scale factor :"))
  13.           (princ "\nSelect objects to move to Model space then to scale :")
  14.           (setq doc (vla-get-activedocument (vlax-get-acad-object))
  15.                 int -1
  16.                 pnt (vlax-3d-point '(0. 0. 0.))
  17.                 sel (ssget "_:L" '((0 . "~VIEWPORT")))
  18.           )
  19.      )
  20.    (progn
  21.      (while (setq ent (ssname sel (setq int (1+ int))))
  22.        (setq lst (cons (vlax-ename->vla-object ent) lst))
  23.      )
  24.      (if (apply 'and
  25.                 (setq mvs (vlax-invoke
  26.                             doc
  27.                             'copyobjects
  28.                             lst
  29.                             (vla-get-modelspace doc)
  30.                           )
  31.                 )
  32.          )
  33.        (progn
  34.          (mapcar '(lambda (obj) (vla-scaleentity obj pnt scl)) mvs)
  35.          (mapcar 'vla-delete lst)
  36.        )
  37.      )
  38.    )
  39. )
  40. (princ)
  41. ) (vl-load-com)
回复

使用道具 举报

46

主题

161

帖子

104

银币

后起之秀

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

铜币
242
发表于 2022-7-5 17:07:37 | 显示全部楼层
 
效果很好,这正是我需要的。
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

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

铜币
358
发表于 2022-7-5 17:10:24 | 显示全部楼层
 
很高兴听到这个。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-13 20:03 , Processed in 0.599395 second(s), 73 queries .

© 2020-2025 乐筑天下

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