序
最近一直在学习tekla二次开发,网上找了许多资料,没有系统讲解tekla open api文档的内容,买了一些课程加上自己的摸索有了一些成果,准备写一个学习tekla open api的系列文档,记录自己的学习历程。
我们以C#为基础进行tekla open api 21.1的学习:
打开tekla open api 文档,共有23个命名空间,其中较为常用的有9个,涉及到模型,图纸和插件三个方面
Tekla.Structures Namespace |
Tekla.Structures.Model |
Tekla.Structures.Model.UI |
Tekla.Structures.Model.Operations |
Tekla.Structures.Solid |
Tekla.Structures.Geometry3d |
Tekla.Structures.Drawing |
Tekla.Structures.Drawing.UI |
Tekla.Structures.Plugins |
tekla的命名空间下包括:类-class,接口-interface,委托-delegates,枚举-enum,我们用到的主要是类和枚举,接口与委托不在本系列学习中探讨。
tekla中类的构成
下面以Tekla.Structures.Model中的Assembly class为例介绍tekla中类的构成:
查看继承关系可跳转到相关的基类详情页。
Syntax
[SerializableAttribute] public sealed class Assembly : ModelObject |
Constructors
public Assembly() |
Methods
public bool Add(ArrayList Assemblables) |
Properties
注意:点击蓝色字体会跳转到指定的内容详情页,如Name属性
示例代码如下:
using Tekla.Structures.Model;
using Tekla.Structures.Geometry3d;
using System;
public class Example
{
public void Example1()
{
Beam beam1 = new Beam(new Point(0,0,0), new Point(1000,0,0));
Beam beam2 = new Beam(new Point(0,0,0), new Point(0,0,1000));
beam1.Profile.ProfileString = "HN300*150*6.5*9";
beam1.Material.MaterialString = "Q345B";
beam2.Profile.ProfileString = "HN300*150*6.5*9";
beam2.Material.MaterialString = "Q345B";
beam1.Insert();
beam2.Insert();
Assembly assembly = beam1.GetAssembly();
assembly.Add(beam2);
if(!assembly.Modify())
Console.WriteLine("Assembly Modify Failed!");
}
}
本次学习就到这里了,下次从 Tekla.Structures Namespace学起。各位小伙伴有什么问题欢迎发私信或者在评论区交流,也可发邮箱交流,761832159@qq.com。