AVEVA CSG 几何图形输出接口

Posted jevon1982

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AVEVA CSG 几何图形输出接口相关的知识,希望对你有一定的参考价值。

一、 概述

AVEVA 12.1支持CSG接口用于输出几何模型数据。

二、 示例代码

 1 DbElement ce = CurrentElement.Element;
 2 Aveva.Pdms.CSG.Implementation.CSGTreeBuilderImpl.Init();
 3 Aveva.Pdms.CSG.Implementation.CSGTreeBuilderOptionsImpl op = (Aveva.Pdms.CSG.Implementation.CSGTreeBuilderOptionsImpl)Aveva.Pdms.CSG.Implementation.CSGTreeBuilderImpl.Instance.CreateCSGTreeBuilderOptions();
 4 op.CenterLine = false;
 5 op.Holes = false;
 6 op.Level = 6;
 7 op.SolidOnly = true;
 8 op.Tube = true;
 9 CSGTree[] tree = Aveva.Pdms.CSG.Implementation.CSGTreeBuilderImpl.Instance.GetGeometry(ce, op);
10 for (int a = 0; a < tree.Length; a++)
11 {
12     for (int b = 0; b < tree[a].Items.Length; b++)
13     {
14         string Command;
15         Aveva.Pdms.Utilities.CommandLine.Command cmd;
16         switch (tree[a].Items[b].Type)
17         {
18             case CSGType.CSG_BOX:
19                 CSGBox box = tree[a].Items[b] as CSGBox;
20                 double x = box.XLength;
21                 double y = box.YLength;
22                 double z = box.ZLength;
23                 System.Console.WriteLine("CSGBox x:{0} y:{1} z:{2}", x, y, z);
24                 break;
25             case CSGType.CSG_CYLI:
26                 CSGCylinder cylinder = tree[a].Items[b] as CSGCylinder;
27                 double radius = cylinder.Radius;
28                 double height = cylinder.Height;
29                 System.Console.WriteLine("CSGCylinder radius:{0} height:{1}", radius, height);  
30                 break;
31                 .............................................. 
32                     .............................................. 
33                 ..............................................  
34             default:
35                 break;
36         }
37 
38     }
39 }

三、总结

通过CSG接口我们可以直接从PDMS中有选择性的抽取PDMS三维模型数据到其他软件。通过编程的方式操作更加灵活,而无需使用rvm格式文件。

特别适合需要做数字化移交时的模型输出开发。

 

以上是关于AVEVA CSG 几何图形输出接口的主要内容,如果未能解决你的问题,请参考以下文章

RvmTranslator-STEP模型简化

湖南省第十届大学生计算机程序设计竞赛(HNCPC2014)CSG - 1123 : 点到圆弧的距离(计算几何)

湖南省第十届大学生计算机程序设计竞赛(HNCPC2014)CSG - 1123 : 点到圆弧的距离(计算几何)

光栅化插值方法

FPGA学习之路7VGA接口原理与FPGA实现

IfcCsgSolid