搭建CATIA Automation API 二次开发环境十分简单,甚至都算不上搭建,因为只需要成功安装CATIA就好了!!!【泥垢了】
Round 1:安装并激活CATIA
CATIA的安装包及安装教程可算是铺天盖地了,因此不再赘述了,请自行百度吧。
Round 2:创建项目并引入类库
开发环境
- Windows 10 专业版 64位
- CATIA V5R20 SP1
Visual Studio Community 2017
Step 1: 创建项目,此处演示创建了一个控制台程序CATIATest
Step 2: 引入相关类库,引用所有以 CATIA V5 * 开头的COM组件(由于每个类库的功用不详,姑且全选吧)
Step 3: 等待加载完毕…..
Step 4: 听会歌,继续等待加载完毕…
Step 5: 恭喜你,大功告成
Round 3:开始测试
Step 1: 启动 CATIA,启动 CATIA, 启动 CATIA (重要事情说三遍)
Step 2: 引入命名空间,并连接CATIA
*/ 需要引入的命名空间 /*
using INFITF;
using MECMOD;
using PARTITF;
using ProductStructureTypeLib;
using SPATypeLib;
using NavigatorTypeLib;
namespace CATIATest
{
class Program
{
static void Main(string[] args)
{
/* 创建与CATIA的连接 */
Application Catia =(Application)System.Runtime.InteropServices.Marshal.GetActiveObject("Catia.Application");
/* 这次让我们创建一个圆柱体(高度500mm,圆半径100mm)*/
/* 向当前产品添加名为Cylinder的新零件 */
Product product = (catia.ActiveDocument as ProductDocument).Product.Products.AddNewComponent("Part", "Cylinder");
PartDocument document = (PartDocument)catia.Documents.Item("Cylinder.CATPart");
Part part = ((PartDocument)catia.Documents.Item("Cylinder.CATPart")).Part;
/* 进入草稿模式 */
Sketch sketch = (part.Bodies.GetItem("零件几何体") as Body).Sketches.Add(
(Reference)part.OriginElements.PlaneXY);
sketch.SetAbsoluteAxisData(new object[] { 0, 0, 0, 1, 0, 0, 0, 1, 0 });
part.InWorkObject = sketch;
Factory2D factory = sketch.OpenEdition();
/* 设置坐标轴 */
Axis2D axis = (Axis2D)sketch.GeometricElements.GetItem("绝对轴");
(axis.GetItem("横向") as Line2D).ReportName = 1;
(axis.GetItem("纵向") as Line2D).ReportName = 2;
/* 画个圆 */
Circle2D circle = factory.CreateClosedCircle(0, 0, 100);
circle.CenterPoint = (Point2D)axis.GetItem("原点");
circle.ReportName = 3;
sketch.CloseEdition();
part.Update();
/* 设置圆柱体高度 */
(part.ShapeFactory as ShapeFactory).AddNewPad(sketch, 500);
part.Update();
}
}
}
最终效果如下:
开发环境到此结束,无需纠结每句测试代码的含义,这些均可以在 V5Automation.chm 文件中找到说明,只要能正确执行就可以了。