乐筑天下

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

编辑在图纸空间布局内的视口中使用Command()

[复制链接]

6

主题

17

帖子

1

银币

初来乍到

Rank: 1

铜币
41
发表于 2019-4-15 17:57:26 | 显示全部楼层 |阅读模式
我们的目标基本上相当于在视口中单击并执行Zoom => Extents来捕获模型空间中的所有内容,但使用的是C#命令。问题是,只执行editor.command()会执行布局中的命令,而不是视口。有没有一种方法可以模拟在执行之前先“点击”到视图中?

本帖以下内容被隐藏保护;需要你回复后,才能看到!

游客,如果您要查看本帖隐藏内容请回复
回复

使用道具 举报

170

主题

1424

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2119
发表于 2019-4-15 18:30:15 | 显示全部楼层
在LISP中,等效的是:
-将sysvar tilemode设置为0(如果尚未)
-将文档的mspace属性设置为true(如果尚未)
-将sysvar cvport设置为目标视口的id(如果尚未)
不需要命令调用。应该很容易在C#中复制。干杯。
回复

使用道具 举报

6

主题

17

帖子

1

银币

初来乍到

Rank: 1

铜币
41
发表于 2019-4-15 19:51:19 | 显示全部楼层
acadApp.SetSystemVariable(“Tilemode”, 0);  0 和 1 切换
ed。SwitchToModelSpace 使 vp 处于活动状态
。SwitchToPaperSpace();  使纸空间处于活动状态
回复

使用道具 举报

57

主题

559

帖子

13

银币

中流砥柱

Rank: 25

铜币
786
发表于 2019-4-16 14:18:15 | 显示全部楼层

因此,如果您有多个副总裁,您如何知道哪个副总裁将成为活动副总裁,以及如何在中指定?网?
回复

使用道具 举报

170

主题

1424

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2119
发表于 2019-4-16 15:50:32 | 显示全部楼层
看看这是否有助于https://help.autodesk.com/view/OARX/2019/ENU/?guid=GUID-5FA86EF3-DEFD-4256-BB1C-56DAC32BD868 。
acLayoutMgr.CurrentLayout = acLayout.LayoutName;。

回复

使用道具 举报

6

主题

17

帖子

1

银币

初来乍到

Rank: 1

铜币
41
发表于 2019-4-16 18:47:34 | 显示全部楼层
这里有一个小代码。第一个视口总是纸质空间视口。
您可以按大小或比例等循环浏览视口以选择特定的
  1. LayoutManager lm = LayoutManager.Current;
  2.                 Layout layout = tr.GetObject(lm.GetLayoutId(lm.CurrentLayout), OpenMode.ForRead) as Layout;
  3.                 ObjectIdCollection vpIds = layout.GetViewports();
  4.                 if (vpIds.Count < 2)
  5.                 {
  6.                     MessageBox.Show("There are no viewports in this layout, exiting:");
  7.                     return;
  8.                 }
  9.                 if (db.PaperSpaceVportId == ed.CurrentViewportObjectId)// in paperspace viewport
  10.                 {
  11.                     if (vpIds.Count == 2)
  12.                     {
  13.                         vp = tr.GetObject(vpIds[1], OpenMode.ForWrite) as Viewport;
  14.                         vp.Locked = false;
  15.                         ed.SwitchToModelSpace();
  16.                     }
  17.                     else

回复

使用道具 举报

170

主题

1424

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2119
发表于 2019-4-17 14:52:58 | 显示全部楼层
我明白了,现在我明白了。谢谢。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-2-4 09:02 , Processed in 0.158457 second(s), 66 queries .

© 2020-2025 乐筑天下

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