自学资料 - read.pudn.comread.pudn.com/downloads519/sourcecode/windows... ·...

19
Tekla ® Open API 自学资料 Tekla Structures 15.0 March 2009 Copyright © 2009 Tekla Corporation

Upload: others

Post on 10-May-2020

9 views

Category:

Documents


0 download

TRANSCRIPT

Tekla® Open API 自学资料

Tekla Structures 15.0

March 2009

Copyright © 2009 Tekla Corporation

目录

前言 ........................................................................................................................................ 1

1 Tekla Structures 15.0 开放接口的自学资料 ..................................................... 3

1.1 在Visual Studio中创建一个新项目 ................................................................................... 4

2 建模开放接口的练习 ................................................................................................ 6

2.1 创建基础 ....................................................................................................................................说明 ............................................................................................................................................

2.2 在基础上部创建柱并连接柱和基础 ................................................................................10 说明 ........................................................................................................................................10

2.3 给基础配筋 ...........................................................................................................................12 说明 ........................................................................................................................................12

3 图纸API的练习 ...................................................................................................... 14 3.1 简单的编辑已经打开的图纸 ...........................................................................................15 说明 ........................................................................................................................................153.2 浏览图纸清单并打开图纸 .................................................................................................17 说明 ........................................................................................................................................17

前言 这份材料是针对在Tekla Open API领域有一些经验的开发人员的,包含一些有

着指导性的练习,但是在Tekla Open API中还有许多不同于这些的知识和需要学习

的地方。 这个文档在新版本发布之间同样也会被更新,更新后的版本你可以在Tekla

Extranet中Open API章节找到。

1 Tekla Structures 15.0开放

接口的自学资料

自学资料包括了一些练习用来学习Tekla Open API的基本概念。这些练习

包括了一些模型的练习已经一些图纸部分的练习。

这些资料是包含在API参考手册中启动包的一部分,参考手册是为这些

组成准备得:

Tekla. Structures.Analysis Tekla. Structure s.Datatype Tekla. Structures.Dialog Tekla. Structures.Drawing Tekla. Structures.Model Tekla. Structures.Plugins

他们可以在 这里下载

这些参考手册在使用API完善新软件的时候是非常有用的资源。包含

许多个如何使用不同的对象和方法的好例子。这些参考手册贯穿了这

些练习。

下面的章节包括了学习API的自我学习的例子。在1.1章节,有一个实例讲

述如何在Microsoft Visual Studio 2005中新建一个新项目并且如何实施API。建模实例在章节2中,图纸实例是在章节3中。

TEKLA OPEN API SELF LEARNING MATERIAL 3 Self learning material for Tekla Open API of Tekla Structures 15.0

1.1 在Visual Studio中创建一个新项目

你将学习到你需要如何去做来在你的项目中式API。

前提:

你需要打开Tekla Structures并且开着一个模型,最好的是一个空模型,

这样你才能更好的测试你的应用程序。

1. 创建一个新的.NET应用程序项目。

第一步要做的就是打开Microsoft Visual Studio并且创建一个新的项目 (从文件菜单中打开新建 -> 项目)。

像上图所示的填入详细信息然后点击确认来创建一个空的windows应用。

2. 在API集合里增加参考。

一旦你创建了项目,你需要增加参考到Tekla.Structures.Model.dll 和Tekla.Structures.dll 组合。一旦你增加了参考你就可以使用所有对象的

API支持。增加这些参考你可以在解决方案资源管理器中右击参考并从弹

出菜单中选择增加参考,或者你可以从项目菜单中选择增加参考。。。

4 TEKLA OPEN API SELF LEARNING MATERIAL Self learning material for Tekla Open API of Tekla Structures 15.0

在增加参考的窗口中点击 浏览。。。 来找到Tekla.Structures.Model.dll 和Tekla.Structures.dll文件。你可以在你的版本下面\nt\bin\plugins\路径

中找到这些文 。你可以在增加参考对话框中找到并且选择它们然后点

击确认。 假如你需要创建一个Tekla Structures的插件,那么你需要增加

Tekla.Structures.Plugin.dll;对于图纸,你需要增加Tekla. Structures.drawing.dll。

从现在开始你就可以在你的项目中使用API的函数和方法了。

3. 在API的开头增加指令。

查看Form1.cs的代码(右击form并且选择查看代码)并且在代码的

开始处增加如下的指令:

using Tekla. Structures .Model; using TSG3D = Tekla.Structures.Geometry3d;

现在你就可以开始用API来开发你的应用程序了。

TEKLA OPEN API SELF LEARNING MATERIAL 5 Self learning material for Tekla Open API of Tekla Structures 15.0

2 建模API的练习

这个练习的目的是让你熟悉API。这个练习被分成几个小的练习,通过它可

以建立一个应用程序从而创建一个小建筑物并且生成图纸。

每个练习之后,你将会看到在Tekla Structures中的结果图片并且你还会

得到例子的代码,这些代码都可以在下一个练习的开始使用。假如你自

己的代码与练习不同而不发继续的话你可以使用这个例子代码库。

下面是建模练习的标题:

(章节 1.1) 在Visual Studio中创建新的项目

(章节2.1) 创建填充基础

(章节 2.2) 在填充基础上面创建柱

(章节 2.3) 在填充基础里添加钢筋

6 TEKLA OPEN API SELF LEARNING MATERIAL Exercises for the Modeling API

2.1 创建填充基础 你将学习如何通过API在Tekla Structures中创建基本对象。

前提:

你需要打开了Tekla Structures并且开着一个空的模型,使用这个模型那样

轴线间隔就和例子中的一样。

Exercise-model.zip

请注意阅读这一页的提示。

创建生成填充基础的应用程序

增加一个“创建填充基础”的按键到应用程序结构上,并且增加一个填

充基础创建的点击事件。

Create pad footings on each grid intersections on grid lines A, E, 1 and 6. So create 18 pad footings in total.在A、E、1、6轴线的每个交叉点处增加一个

填充基础,所以总共创建了18个填充基础。

提示:

可以用创建梁的命令来创建填充基础。

你需要生成一个在指定坐标的地方创建填充基础的方法。

然后你可以使用一个for循环来创建填充基础的位置。

从 章节 1.1 读取和学习如何在Microsoft Visual Studio中创建一个新的

项目。

到Tekla Structures 的连接时通过创建一个模型例子来打开的,在连接之

后你最好检查是否死通过调用Model.GetConnectionStatus()来连接的。假

如返回 true,你就可以使用API了。

TEKLA OPEN API SELF LEARNING MATERIAL 7 Exercises for the Modeling API

说明:

一个关于如何写代码的简易说明:

1. 创建一个新的模型对象来表明你已经在Tekla Structures中打开了

一个Tekla Structures模型。

2. 检查你是否有一个Tekla Structures模型用来连接。

3. 创建一个可以在2个输入坐标值的地方创建和插入一个填充基础

的方法。

填充基础应该有如下的参数设置:

Name = "FOOTING"

Profile. ProfileString = "1500* 1500"

Material .MaterialString = "K30-2"

Class = "8"

StartPoint

EndPoint (change Z coordinate 500.0 mm lower than in startpoint) Position. Rotation = Position. RotationEnum. FRONT

Position.Plane = Position.PlaneEnum.MIDDLE

Position.Depth = Position.DepthEnum.MIDDLE

请注意,这些值必须本地化并且截面和材质必须在环境中能找到。

4. 创建2个X和Y坐标位置的循环语句用步骤3来创建填充基础。

5. CommitChanges() makes sure确保所有已经完成的改变在Tekla Structures中都已经更新并且所有的模型视图也自动更新。假如

没有调用这个命令,那么你不得不在Tekla Structures中手动刷新

这些视图才能看到这些更改。

帮助

从 参考手册: 查看如下的标题

Beam Class

这些做完之后,你所需要做的就是确保你开着一个Tekla Structures模型并

且从Visual Studio的Debug菜单中选择Start,这样带有“创建填充基础”

按钮的窗口将出现,点击按钮那么在模型中轴线的交叉点处将会创建填

充基础。

8 TEKLA OPEN API SELF LEARNING MATERIAL Exercises for the Modeling API

结果将是如下这样的

这个练习的示例

TEKLA OPEN API SELF LEARNING MATERIAL 9 Exercises for the Modeling API

2.2 在填充基础上面创建柱子并连接柱及填充基础 你将学习如何在模型中创建节点。

前提:

你必须开着一个Tekla Structures空的模型,你还需要有第一个练习的代码,

你可以点击下面的链接得到,也可以用你在练习2.1之后自己的代码。

上个练习的示例

在填充基础上面创建柱子并用加劲肋底板(1014)连接柱及填

充基础 修改上一次的练习来增加2段程序,一个是在填充基础上面增加柱还有一

个是在柱和基础之间增加加劲肋底板(1014)。你需要回到插入填充基

础和柱并且加上将在它们之间创建连接的程序。

说明

1. 创建一个可以在填充基础上创建柱(梁级别)的程序

2. 使用用加劲肋底板(1014)节点来连接柱和基础,柱作为主零件。

将这些值赋给柱子(记得使用本地化的数值):

Name = "Column";

Profile.ProfileString = "HEA400";

Material .MaterialString = "S235JR";

Class = "2";

EndPoint.Z = 5000.0;

Position.Rotation = Position.RotationEnum. FRONT;

Position.Plane = Position.PlaneEnum.MIDDLE;

Position.Depth = Position.DepthEnum.MIDDLE;

Use this attribute for stiffened base plate to enable anchor rods:

SetAttribute ("cut", 1)

LoadAttributesFromFile ("standard")

UpVector = new Vector(0, 0, 1000)

10 TEKLA OPEN API SELF LEARNING MATERIAL Exercises for the Modeling API

关于“切割”属性的一个说明;在Tekla Structures中的选项菜单中,

它被在一个inp文件中定义成一个特殊的连接。同样注意的是由于

历史原因,选项菜单返回的值是如下的:第一个值(通常是0)意

味着空值,第2个值(通常为1)意味值为0,第3个值(通常为2)意味着值为1.这就是为什么你需要设置它的属性为1,意味着地脚

锚栓使用第2个值。

结果将是如下这样的:

这个练习的示例

TEKLA OPEN API SELF LEARNING MATERIAL 11 Exercises for the Modeling API

2.3 在基础中创建钢筋

你将学习如何从模型中选择对象并且使用一个

前提条件 :

你最好已经打开了Tekla Structures并且开着一个模型,最好是一个空模

型。

你还是需要练习2.2中的源代码

上个练习的示例

说明

1. 为每一个基础创建钢筋.为用户在对话框中创建一个区域来给

出基础的尺寸。

2. 在对话框中增加一个新按钮,用下面的程序来创建钢筋。

3. 从模型中选择所有对象(ModelObjectEnumerator).

4. 循环。

5. 如果对象是基础,使用基础的起始点为定位创建钢筋组。

6. 从对话框中获取到基础的尺寸。

7. 创建围绕基础的环形钢筋

(记得使用本地的型钢库):

Polygon, use pad footing's corner points as polygon points, remember to give starting point also as last point (see point 6.)

StartPoint and EndPoint, use pad footings position and height.

Class = 3

Name = "FootingRebar"

Father, use pad footing.

Grade = "A500HW"

Size = "12"

Radiusvalues .Add(40 .0)

SpacingType = SPACING_TYPE_TARGET_SPACE

Spacings .Add(100 .0)

ExcludeType = EXCLUDE_TYPE_BOTH

StartNumber = 0

Prefix = "Group"

OnPlaneOffsets .Add(25 .0)

12 TEKLA OPEN API SELF LEARNING MATERIAL Exercises for the Modeling API

FromPlaneOffset = 40

结果如下图所示:

这个练习的示例

TEKLA OPEN API SELF LEARNING MATERIAL 13 Exercises for the Modeling API

3 图纸API的练习

下面是图纸练习的标题:

(章节1.1) 在 Visual Studio中创建一个新的项目。

(章节3.1) 简单的编辑一张打开的图纸。

(章节3.2) 打开图纸列表并且打开一张图纸

14 TEKLA OPEN API SELF LEARNING MATERIAL Exercises for the Drawing API

3.1 简单的编辑一张打开的图纸 你将会学习到如何简单的编辑一张已经在Tekla Structures中打开的图纸。

在这个练习里你将在图纸中增加线条以及文本。

前提 :

你需要打开Tekla Structures,并且开着一个模型以及开着一张布置图。

你可以使用上一个练习的源代码或者使用下面的一个。

这里有一个压缩模型的链接,在练习3并且创建了图纸之后,使用“编

辑前的整体布置图”这个名字来打开图纸。

上个练习的示例 练习3之后的模型-增加了一些图纸

增加一个文本以及一个按钮到对话框。用户可以通过点击这个按钮来在空

白区域输入文本。这个文本将被插入到图纸中,并且它将被创建在图纸中

每个视图的下方的中心区域,并且其周围还会有一个矩形框。从

DrawingHandler中得到图纸并且在视图上做循环,找到适合文本的位置并

且插入它,得到一个外包文本的外框并且基于它画出一个矩形。

说明

1. 增加参考到Tekla. Structures.Drawing.dll.

2. 创建一个可以链接到Tekla Structures的DrawingHandler的例子。

3. 为要被插入的文本增加一个文本区域到对话框中。

4. 增加一个按钮到对话框来插入这个文本到图纸并且在文本周围

画一个矩形框。

5. 文本必须插入到图纸中每个视图的正下方位置。

6. 在文本被插入进去后得到外包文本的范围框。

7. 基于这个范围框画出一个包围文本的矩形边框。

TEKLA OPEN API SELF LEARNING MATERIAL 15 Exercises for the Drawing API

结果将如下所示: (文本"练习 4" 在这里使用了)

这个练习的示例

16 TEKLA OPEN API SELF LEARNING MATERIAL Exercises for the Drawing API

3.2 打开图纸列表并且打开一张图纸 你将学习如何打开图纸列表并且在图纸中做循环,你还将学习如何打开

一张图纸。

前提 :

并且开着一个模型,这个模型需要已经创建了一些图纸。这里是练习3.1的模型。

你可以使用如下的上一个练习之后的源代码或者你可以作为一个新的项

目创建这个练习。 上个练习的示例 练习3之后的模型-增加了一些图纸

在对话框中增加一个“ListView”来列出可用的图纸,同样增加一个按钮

来打开选择的图纸。在“ListView”区域有一些图纸可见的数学。用户只

能选择一种图纸,使用打开按钮,图纸就可以在Tekla Structures中打开了,

并且你还可以检查练习3.1对于在API中打开的图纸是否同样工作。

说明

1. 增加参考到Tekla. Structures.Drawing.dll.

2. 在对话框中增加ListView 区域来列出可使用的图纸。

3. 在对话框中增加一个按钮,来打开选择的图纸。

4. 使用DrawingHandler中的DrawingEnumerator来循环可用的图纸。

5. 使用ListViewItem里的标签来保存图纸。

6. 当打开选择的图纸的时候(即点击了按钮), 作为激活图纸的标签,

打开图纸。

TEKLA OPEN API SELF LEARNING MATERIAL 17 Exercises for the Drawing API

结果如下图:

这个练习的示例

18 TEKLA OPEN API SELF LEARNING MATERIAL Exercises for the Drawing API