0

我是为 rhino 3d 编写插件的新手。我在这里浏览了文档和示例代码: http ://wiki.mcneel.com/developer/dotnetplugins

但无法弄清楚如何从插件打开 .3dm 文件。

有人能帮我吗?

谢谢!!

4

2 回答 2

3

这在一定程度上取决于您正在尝试做什么以及您正在运行哪个版本的 Rhino。

如果您正在运行 Rhino 4 并使用 Rhino_DotNet SDK,那么您需要让您的命令类派生自 MRhinoScriptCommand 并调用 RhinoApp().RunScript(@"-_Open C:\path_to_model.3dm")

如果您正在运行 Rhino 5 并使用 RhinoCommon SDK(推荐),那么您应该按照 Brian 上面建议的方式调用 RunScript。您还需要使用 ScriptRunner 的 Rhino.Commands.Style 属性标记您的命令类

前任。

using Rhino.Commands;

[CommandStyle(ScriptRunner)]
class MyCommand : Rhino.Commands.Command
{
  public override string EnglishName { get { return "MyCommand"; } }

  protected override Result RunCommand(RhinoDoc doc, RunMode mode)
  {
    RhinoApp.RunScript(@"-_Open C:\model.3dm");
  }
}

这将打开 3dm 文件并使其成为活动文档。

另一方面,如果您只想将 3dm 文件读入内存并检查其内容,我建议您使用 RhinoCommon 中的 Rhino.FileIO.File3dm 类。您可以使用该类上的静态读取函数。

于 2013-03-30T02:41:18.717 回答
1

您可以使用以下方法从插件内部编写 Open 命令脚本:

Rhino.RhinoApp.RunScript() 为打开命令编写脚本。例如:

Rhino.RhinoApp.RunScript(@"-_Open C:\model.3dm");

于 2013-03-24T04:32:00.063 回答