乐筑天下

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

[编程交流] 在视口中循环

[复制链接]

2

主题

14

帖子

12

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-6 12:56:34 | 显示全部楼层 |阅读模式
我有一个有趣的项目。。。(这是VB.NET)。。。
 
我需要在图形中每个布局选项卡上的每个视口中移动,并在每个视口中进行最大化显示。
 
我知道这将需要几个循环,但我总是在所有的视口中移动。
 
以下是一些代码。。。
****************************************
对于我身上的每一项。lbSelectAnAutoCADLayout。选定项
 
objAcad。ActiveDocument。ActiveLayout=objAcad。ActiveDocument。布局。项目(Item)
原始空间=objAcad。ActiveDocument。活动空间
 
objAcad。ActiveDocument。SendCommand(“pspace”和vbCr)
objAcad。ActiveDocument。SendCommand(“最大化显示”)对象。ActiveDocument。SendCommand(“mspace”和vbCr)
objAcad。ActiveDocument。SendCommand(“最大化显示”)
objAcad。ActiveDocument。活动空间=原始空间
 
下一个
****************************************
 
最后,我需要找到并激活布局上的特定视口(基于视口宽度)。但现在,只需在图形中每个选项卡上的每个视口中移动就足够了。
 
提前感谢您的专家帮助!
 
加油!
回复

使用道具 举报

VVA

1

主题

308

帖子

308

银币

初来乍到

Rank: 1

铜币
8
发表于 2022-7-6 13:47:43 | 显示全部楼层
lisp中的函数
  1. (defun vpactivate ( width  / ss avp)
  2. ;;; width [real] - viewport width for activate
  3. ;;; Usage
  4. ;;; (VPACTIVATE 199)
  5. ;;; Activate VIEWPORT with width 199
  6. ;;; Return number (for CVPORT command) VIEWPORT in layout or nil
  7. (vl-load-com)
  8. (if (setq SS (ssget "_X" (list '(0 . "VIEWPORT") '(-4 . "/=") '(68 . 1)(cons 410 (getvar "ctab")))))
  9.   (progn
  10.     (foreach vp (vl-remove-if (function listp)
  11.          (mapcar (function cadr) (ssnamex ss)))
  12.       (if (equal (cdr(assoc 40 ;_Width code. Height code - 41
  13.                             (entget vp)
  14.                             )
  15.                      )
  16.                  width
  17.                  1e-6
  18.                  )
  19.         (progn
  20.           (setq avp (cdr(assoc 68 (entget vp))))
  21.           (command "_MSPACE" "_CVPORT" avp "_PSPACE")
  22.          
  23.           )
  24.           )
  25.       )
  26.     )
  27.   )
  28. avp
  29. )

加载此函数并使用
  1. objAcad.ActiveDocument.SendCommand("(VPACTIVATE 199)" & vbCr)

199-宽度特定视口
回复

使用道具 举报

2

主题

14

帖子

12

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-6 13:57:04 | 显示全部楼层
谢谢VVA!!做得好!
 
(我想我可以用这个作为临时解决方案。)
 
我仍然需要一个VB的点网络解决方案。。。
 
(再次感谢VVA…您的LISP解决方案干净优雅…并且有效!)
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-5 03:02 , Processed in 1.033555 second(s), 58 queries .

© 2020-2025 乐筑天下

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