问题标签 [autodesk-navisworks]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2953 浏览

c# - NavisWorks API 问题

以前有没有人处理过 Autodesk NavisWorks Manage API?我在使用这个 API 时遇到了一些问题,我在 4 个 NAvisWorks 论坛上发帖,仍然没有人回答。我还向 AutoDesk 非洲办事处发送了一封电子邮件,但他们没有回复。好吧,这是我的问题:

  1. 我希望能够从 NavisWorks 文件(.nwd 或 .nwf)中读取并获取所需的数据,例如文件中每个模型的尺寸、它们的位置、顶点等。

  2. 能够更改数据(例如,长度为 4 和 5 的矩形到长度为 6 和 2 的矩形)

  3. 能够将更改写回文件,当然还可以在查看器中立即显示更改。

我查看了几乎所有 API 文档,但似乎看不到实现所需内容的可能性(也许我不确定)。任何帮助将不胜感激。提前致谢。

PS我正在使用C#

0 投票
1 回答
579 浏览

c# - Encoding fails when marshalling string via COM Interop in C# (double UTF8 encoding?)

I'm writing a plugin for Autodesk Navisworks, trying to pass a C# unicode string to a property on a COM object. However, the string is encoded incorrectly somewhere in the process.

"中文" comes out as "??" in the user interface, whereas strings limited to ASCII work just fine (e.g. "abcd"). Furthermore, setting the Value-property (a VARIANT) on the same object works just fine, but not the Name.

Further exploration leads me to try encoding the string "ä" as utf-8:

and somehow "encoding" this into a (unicode) string:

Surprisingly this seemed to work.

This led me to try the following:

However, when I use this trying to encode "中文abcd" I only get the first character "中" in the GUI. Yet, with "äabcd" I get more than one character again...

What is happening here? How can I get around the problem? Is it a marshalling problem (e.g. incorrectly specified encoding in the COM Interop)? Or perhaps some weird code inside the application? If it's a marshalling problem, can I modify it for this property only?

0 投票
1 回答
671 浏览

c# - 在 C# 项目中使用 C++ API

是否可以在 C# 项目中使用 C++ API(一系列头文件和 CPP 文件)?

也许可以将这些文件编译成.obj.lib文件并将它们包含在 Visual C# 项目中?类似的事情已经完成Crypto++

如果可能的话,这样做有什么缺点吗?

上下文和导入信息:

  • C++ API 称为 NWCreate,由 Autodesk Navisworks 开发
  • 我正在使用 Microsoft Visual Studio C# 2010
  • 我们在 C# 中拥有一个庞大的现有代码库,其中我们将在 navisworks 插件中执行的大部分操作已经用 C# 编码(来自我们制作的其他 Autodesk 项目)。因此,必须在 C++ 中重写所有这些操作在很大程度上是在重新发明轮子。
0 投票
2 回答
2242 浏览

ios - 如何将 Navisworks(*.nwd) 文件渲染到 IOS

我想将 Navisworks 3D 导航模型导出到我的 iPhone 设备,是否有任何 API 可用于实现此目的。我想创建自己的应用程序来将模型读入 IOS - 类似于 IOS 的 Navisworks Freedom 查看器。

我在互联网上搜索了很多,但找不到任何有用的。

0 投票
0 回答
297 浏览

c# - WPF xaml 无法从我的 DLL 加载我的控件

我现在正在做 Autodesk Navisworks 的二次开发。xaml 看起来像这样:

似乎视觉工作室成功地识别了这一行:

xmlns:nc="clr-命名空间:SCA.EmergencySystem.NavisInterface.NavisControl;assembly=SCA.EmergencySystem.NavisInterface.NavisControl"

所以我认为命名空间和程序集都可以

但是,XAML 未能找到已在加载到 WPF 项目的 NavisControl.DLL 中定义的控件的名称。NavisViewControl那是我开发的System.Windows.Forms.ControlAutodesk.Navisworks.Api.Controls也是我开发的。nc:NavisViewControl不被识别。

NavisViewControl 的代码很简单:

0 投票
0 回答
2077 浏览

autodesk - 用于导出几何和计算面和顶点的 Navisworks COM API

我正在尝试导出 Navis 中选定对象的顶点、面和颜色。经过一番研究,我发现我们可以使用 Navisworks 提供的 COM API 来做到这一点。我使用 getprimitives 来找到三角形。看起来如下。

这里的问题是我无法找到面,我确实使用三角形方法获得了顶点。如果有人知道如何找到物体的面孔和颜色,请告诉我。

0 投票
0 回答
131 浏览

c# - wpf 表单不重绘

我用 wpf 为 Autodesk navisworks 制作了插件。它有一个应该在鼠标按下事件后填写的表格。

第一次初始化 wpf 表单后,它不会重绘。但是,选项卡控件、选项卡项和网格视图在调试模式下会发生变化。我不明白为什么它不重绘。

同时使用 GetProperty 方法以编程方式添加按钮刷新 wpf 表单。

0 投票
2 回答
524 浏览

c# - 尽管引用了程序集,但无法加载程序集

我正在考虑将新的Google Apps 脚本执行 API合并到我已经在使用的现有 C# 插件中。我正在遵循作为控制台应用程序提供的.NET 快速入门指南(我已经开始工作没有问题)。

当将代码从中移植到我的插件中时,它也会在运行时在第一个实例中失败:

到目前为止,我将代码精简到无法给出的那一行:

“无法加载文件或程序集 'Google.Apis.Auth, Version=1.9.2.27817, Culture=neutral, PublicKeyToken=4b01fa6e34db77ab' 或其依赖项之一。系统找不到指定的文件。”

该文件已正确引用(已通过 nuget 安装)。

C# 不是我的正常领域,也许我在控制台应用程序中工作的微妙之处遗漏了一些东西。

是什么赋予了?

0 投票
1 回答
1230 浏览

c# - System.IO.FileNotFoundException 未处理 - Autodesk Navisworks API

我指的是Navisworks 2016 API Training Labs中的 Nw_Single_Doc_With_View (用 C# .NET 编写) 。

我添加了 Autodesk 引用 DLL,并在“复制本地”属性中将它们都设置为 false。Autodesk API 参考手册已指定在 DLL 中将“复制本地”属性设置为 false。

在此处输入图像描述

当我尝试运行该项目时,我收到一条错误消息:

System.IO.FileNotFoundException 未处理消息:mscorlib.dll 中发生“System.IO.FileNotFoundException”类型的未处理异常附加信息:无法加载文件或程序集“Autodesk.Navisworks.Controls,版本=14.0.1298.75,文化=中性,PublicKeyToken=d85e58fa5af9b484' 或其依赖项之一。该系统找不到指定的文件。

当我尝试查看“Viewer.cs”[Design] 页面时,我收到一条错误消息,如下所示:

严重性代码描述项目文件行抑制状态消息找不到类型“Autodesk.Navisworks.Api.Controls.DocumentControl”。请确保引用了包含此类型的程序集。如果此类型是您的开发项目的一部分,请确保已使用当前平台或任何 CPU 的设置成功构建项目。0
消息找不到类型“Autodesk.Navisworks.Api.Controls.ViewControl”。请确保引用了包含此类型的程序集。如果此类型是您的开发项目的一部分,请确保已使用当前平台或任何 CPU 的设置成功构建项目。0
消息变量“viewControl”要么未声明,要么从未赋值。C:\Users\Joe\Autodesk\Navisworks_2016_API_Training_Labs\Indivudual labs\Nw_Single_Doc_With_View\Viewer.Designer.cs 150

我附上了几个屏幕截图和示例项目供您参考。

a) 示例项目:Navisworks_2016_API_Training_Labs.zip

b) Navisworks 的 DLL 位置:我如何添加 Navisworks DLL

c) .NET 框架在此处输入图像描述

d) Autodesk API 手册:Autodesk API 参考手册

为了您的信息,我的电脑是 Windows 7 64 位。

你能告诉我为什么会出现这个错误,我该如何解决?谢谢

P/S:我已经在 Autodesk Navisworks 论坛上发布了我的问题,到目前为止还没有回复。

0 投票
1 回答
6613 浏览

autodesk - Revit:在哪里可以找到 Navisworks 导出加载项

谁能告诉我在哪里可以找到 Revit -> Navisworks 导出或如何打开它。它是可以下载和安装的吗?

阅读这篇博文链接

它讨论了 Autodesk-Viewer 如何仅在将房间转换为 Navisworks 文件时才能将房间视为对象。似乎有一个允许导出 Navisworks 文件的 Revit 插件。我似乎找不到如何将该插件添加到 Revit 以便它显示在插件功能区中。

我正在使用 Autodesk Revit Architecture 2015