概述
视点(view point)是一个重要的管理对象,它记录了观察的位置、摄像机角度、批注等诸多信息。可以利用NW的原生功能,将视点导出成XML文件,也可以将外部XML文件导入NW生成视点。
视点实例化
获取当前视点
视点主要通过Document
对象的CurrentViewpoint
属性获得。
Document document = Application.ActiveDocument;
Viewpoint viewpoint = document.CurrentViewpoint.CreateCopy();
CurrentViewpoint
属性返回的是一个CurrentViewpoint
类,该类下有多个方法和属性,可以得到Viewpoint
对象。
直接实例化
当然视点也可以通过常规的方式直接实例化,如Viewpoint viewpoint = new Viewpoint()
属性和方法
视点常用的属性和方法很多,可以获取设置视点的方位、灯光、摄像机等等。
摄像机
string camera = viewPoint.GetCamera(); // 获取视点的摄像机属性,返回值是一个JSON格式的字符串
viewPoint.SetCamera(camera); // 设置视点的摄像机属性。参数是JSON格式的字符串
保存视点
保存视点并非用的是Viewpoint
的方法,而是有一个专门的类DocumentSavedViewpoints
。我发现保存视点的所有方法都是,将视点保存在PDMS内部,没有找到输出视点,生成XML的方法。
保存当前视点
SaveViewpoint svp = new SaveViewpoint(document.CurrentViewpoint.ToViewpoint());
document.SavedViewpoints.AddCopy(svp);