什么是 API(应用程序编程接口)
API 是一组规则和协议,允许不同的软件应用程序相互通信。它定义了请求和响应的结构方式,使开发人员无需了解内部工作原理即可使用预定义的函数或服务。
IDEA StatiCa Connection 中的 REST API - 是一个 本地托管的 Web 服务,遵循 REST 原则,使系统能够使用标准 HTTP 方法对资源执行操作,通常以 JSON 格式表示。
资源与 GITHUB
现有预定义示例的来源已链接至我们的 GitHub:
如何开始使用
本教程将结合 Python 编程语言进行介绍。您可以在此处下载最新版本。您可以使用多种集成开发环境(IDE)作为高效编码、调试和测试的工具。以下是一些选项:
如何运行 API
API 启动程序位于存储最新版本 IDEA StatiCa 的文件夹中。直接运行可执行文件即可。

运行"IdeaStatiCa.ConnectionRestApi.exe"后,命令提示符(CMD)将弹出,您可以看到本地主机地址,并打开 Swagger 应用程序,该应用程序可让您查看用于控制 API 的代码结构。按 Ctrl + 鼠标左键打开 Swagger。

在线模式下的 Swagger 为您提供有关 Connection 节点设计 API 选项的指南。

如何打开 Python 并安装 API 包
本教程使用 PyCharm 进行演示,所有步骤均有详细说明,其他工具的操作方式相同。打开 Python 并创建新项目。

安装包" ideastatica_connection_api"。打开终端并输入"pip install ideastatica_connection_api"。执行此命令后,API 库将被安装。
"pip install ideastatica_connection_api" - 适用于最新版本的 IDEA StatiCa。如果您使用的是旧版本,则需要精确指定版本号以调用相应的 API 库。
(例如:"pip install ideastatica_connection_api==25.1.1.923")

上述步骤为必要操作,请务必按照顺序执行。否则,API 将无法正常工作。
在桌面应用程序中打开项目
目标是通过 Python 接口控制仿真和输出,并直接在控制台中读取结果。
打开拼接节点,对 LE1 运行计算并获取结果。您可以看到所有规范校核均通过。然后可以继续进行 Python 操作。

Python 脚本
导入所需包,以启用计算功能并与本地主机 URL 建立连接。
源代码:
## Link with baseUrl
import ideastatica_connection_api.connection_api_service_attacher as connection_api_service_attacher

通过变量"baseUrl"配置日志记录,该变量将调用您的本地主机。第二步,配置 IDEA StatiCa Connection 文件的绝对路径。
源代码:
## Configure logging
baseUrl = "http://localhost:5000"
## Absolute path into folder with your python script and connection module
project_file_path = r"C:\Users\LukasJuricek\Desktop\API_IDEA\Splice.ideaCon"
print(project_file_path)

将客户端与已运行的服务配对(1)。使用 try/except 块——若 try 块引发错误,则执行 except 块。第一阶段需要打开项目(2),并查找每个 IDEA StatiCa 项目唯一的项目 ID(3)。运行脚本后,可以读取打印的路径和唯一 ID(4)。
源代码:
with connection_api_service_attacher.ConnectionApiServiceAttacher(baseUrl).create_api_client() as api_client:
try:
## Open the project
openProject = api_client.project.open_project_from_filepath(project_file_path)
## Unique project ID that provide the control over the model
projectId = api_client.project.active_project_id
print(projectId)

提取"connection_ID"以标识待计算的节点(1)。使用变量"calculation_run"运行仿真,该变量需要括号中列出的两个必要参数(2)。仿真完成后,您将看到节点 ID 以及分析通过的信息(3)。
源代码:
## Opening project that will be calculated
connection = openProject.connections[0]
print(connection)
connection_ID = [connection.id]
## Assigning connection ID
calculation_run = api_client.calculation.calculate(
projectId,
connection_ID
)
print('Finished')

最后,您将了解如何打印结果(1),以及如何遍历所有承载比校核(2),这些校核通常显示在桌面端(3)。
源代码:
## Postprocessing - extract the unity check of connection
Results = calculation_run[0].result_summary
## Loop over all unity checks like plates, bolts, welds
for results in Results:
print(results.unity_check_message)
except Exception as e:
print("Operation failed : %s\n" % e)

总结
您已掌握用于节点设计的 API 使用经验。您已了解需要安装哪些工具、如何连接 REST API 服务,以及如何使用 Python 代码获取结果。
