如何从Navisworks .NWD文件中获得信息,使用IronPython的NET (主要是orden中每个项目的名称,以确认所有部件都已建模)。
我没有使用C#的经验,但有使用python的经验,所以我想使用IronPython。
我知道NavisPythonShell的事,但经过几次尝试,它对我没有用。一旦插件运行,Navisworks就崩溃了。
总之,我在使用IronPython时取得了一些进展。Navisworks打开、加载一个文件并关闭,但是使用Autodesk.Navisworks.Api.Application.ActiveDocument,它只获得了NoneType "object“。
import sys, clr
navis_path = r'C:\Program Files\Autodesk\Navisworks Manage 2017'
nw_model = r'C:\Users\myName\Client\navis\nodel.nwd'
sys.path.append(navis_path)
clr.AddReference('Autodesk.Navisworks.Api')
clr.AddReference('Autodesk.Navisworks.Automation')
clr.AddReference('Autodesk.Navisworks.Controls')
from Autodesk.Navisworks.Api import *
from Autodesk.Navisworks.Api.Automation import *
from Autodesk.Navisworks.Api.Controls import *
nw = NavisworksApplication()
nw.Visible = True
nw.OpenFile(nw_model)
doc = Application.ActiveDocument等于"NoneType“的doc类型
发布于 2019-09-29 13:24:03
Autodesk.Navisworks.Api.Application可以在插件中访问。
仅使用Automation,您可以做的是打开文件、追加文件、合并文件等。为了更好地访问活动文档、操作模型,您需要编写插件,并通过NavisworksApplication.ExecuteAddInPlugin调用自动化插件。
如果您只是想做一些批处理工作,那么.NET DocumentControl也是一种选择。SDK\api\NET\examples\Controls\PublishFile中有一个示例,它可以像插件一样发布文件,还可以通过Autodesk.Navisworks.Api.Application.ActiveDocument访问活动文档。
https://stackoverflow.com/questions/55669142
复制相似问题