如何接收摄像机目标o
我使用Autodesk在C#上创建应用程序。AutoCAD。与AutoCad交互。我尝试接收摄像机方向:var _app = (AcadApplication)Marshal.GetActiveObject("AutoCAD.Application");
var viewport = _app.ActiveDocument.ActiveViewport;
var dir = viewport.Direction;
但在模型旋转之后,我总是收到相同的方向值。如果我使用以下代码:
var _app = (AcadApplication)Marshal.GetActiveObject("AutoCAD.Application");
var viewport = _app.ActiveDocument.ActiveViewport;
var dir = viewport.Direction;
并激活布局上的视口-旋转模型后,我收到正确方向的差异。
如何在模型视口上接收正确的相机方向?
我在AutoCAD ActiveX(通过Interop使用的API)文档中发现了这一点:
除非视口处于活动状态,否则无法执行编辑或视图更改。要激活视口,请在文档对象上使用ActiveViewport属性。
更改完成后,必须将视口重置为活动视口,以显示更改。要重置活动视口,只需使用更新的视口对象再次调用ActiveViewport属性。 谢谢你,肖特,
但我不想更新视口,我想接收方向的实际值。每次,我都会创建视口的新实例。但在AutoCad中对视口方向进行手动更改后,我总是会收到相同的方向值。如果我重新启动AutoCad-我会收到方向的更新值。
还有什么想法吗?
有人能检查以下代码吗
var _app = (AcadApplication)Marshal.GetActiveObject("AutoCAD.Application");
var viewport = _app.ActiveDocument.ActiveViewport;
var dir = viewport.Direction;
也许我的AutoCAD有问题。
页:
[1]