首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在.NET中打开任何Solidworks 2015三维模型格式

在.NET中打开任何Solidworks 2015三维模型格式
EN

Stack Overflow用户
提问于 2015-03-30 08:41:12
回答 3查看 5.1K关注 0票数 3

我们在2015年SolidWorks设计了我们的产品模型。在.NET (C#)桌面应用程序中,我需要加载该模型(已经使用OpenGL实现的3D显示),并能够理解其部件(它们的尺寸和相对位置)。

是否有任何使用Solidworks 2015出口格式的方法?

有两个相关的问题

“打开cad模型/绘图的.NET库”(2012年)

“将AutoCAD/Solidworks绘图/对象导入winforms?”(2010)

我的谷歌搜索:

"X3D.NET“(.NET的X3D库)-看上去死了

“鲨鱼”-死了(没有下载)

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-05-03 20:01:23

找到了一种通过他们的本机3 3DXML格式的方法。你需要在达索系统登记来获得他们的"DS护照“。这是免费的-你甚至不需要一个坚实的工程许可证,但注册过程(接收最终确认)可能需要几个小时。

成功注册后,下载一组XSD文件(其下载链接目前为)。

使用Visual工具xsd.exe /c 3DXML.xsd生成C# (反)序列化类,用于加载3DXML结构文件NameSetTree.3dxml (绑定到3 3DXML文件/i.e. zip /中物理文件的部件名称)、它们在3d空间中的相对位置和旋转以及在程序集中的重复。

输入xsd.exe /c 3DXMLMesh.xsd以生成C#类,用于读取每个部分的3d表示(TessPart_*.3DRep)。

解压缩3DXML文件,实现对包含的NameSetTree.3dxml和所有*.3DRep部件的读取。

票数 4
EN

Stack Overflow用户

发布于 2015-04-16 20:24:39

如果您拥有SolidWorks的许可证,您可以使用api以编程方式打开模型并询问特性和几何学。这里有一个简单的例子,获取草图和功能的尺寸。

代码语言:javascript
复制
SldWorks swApp = new SldWorks();
int nOpenErrors = 0, nOpenWarnings = 0;
string sConfig = string.Empty;
IModelDoc2 doc = swApp.OpenDoc6(sModelName,  (int)swDocumentTypes_e.swDocPART, (int)swOpenDocOptions_e.swOpenDocOptions_Silent, sConfig, ref nOpenErrors, ref nOpenWarnings);

 // extract the features and dimensions
 Feature feat = doc.FirstFeature();
 while(feat != null)
 {
     string sFeatName = feat.Name;
     IDisplayDimension dispDim = feat.GetFirstDisplayDimension();
     if (dispDim != null)
     {
          Dimension dim = dispDim.GetDimension();
          if(dim != null)
          {
            // dim.FullName;
            // dim.GetSystemValue2(sConfig);
          }
          feat = feat.GetNextFeature();
      }
  }

  swApp.ExitApp();
票数 1
EN

Stack Overflow用户

发布于 2015-03-30 09:17:51

有些商业库可以读取本地Solidworks文件并提供您想要的信息,但我想这并不是您想要的。

有些导出格式,如STL,是非常简单的格式,您可以很容易地找到读者库。STL是一种三角形网格格式,因此很容易得到几何尺寸和位置。但是,这些简单的格式没有任何元信息,比如部件/程序集关系。你可以通过观察几何学来识别的是不相连的物体。这可能与您指定的Solidworks中的“部件”相同,但并不总是如此。一个部分最终可能是几个实体,几个部分可能最终成为一个身体,如果他们接触和Solidworks出口商选择合并他们(也许它永远不会,你将不得不尝试)。

我想列表中的大多数格式都会有这样的问题,即没有任何部分信息。可能有一些更复杂的格式包含这些信息(比如本机文件格式本身),但是您将很难找到一个(非商业性的)库来读取它。

是否可以选择编写Solidworks插件/脚本,它可以将每个部分导出为单独的STL (或其他简单格式)?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29341746

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档