python开发通达信dll_PKPM, 二次开发

本文介绍了如何使用Python在Rhino+Grasshopper环境中调用PKPM的PDB-IO接口进行二次开发,通过C#电池和dllimport调用C++动态链接库,实现读取PKPM建模计算的中间数据库文件(PDB)中的数据,从而进行结构模型的可视化和分析。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

引子——

距离上次的盈建科二次开发文章不知不觉已经过去了一年有余,小编不得不说一句“这时间过的也太快了吧!”在身边一切恍然将要步入正常节奏的时候,已经接近年底了。时间这东西,还真是擅长从指缝中溜走啊。

当然,在这段时间里小编我也没闲着,工作之余也抓了不少鱼,感慨的话就少说,直接进入正题吧。

前段时间听说另一款我们常用的结构设计软件PKPM也开放SQLite数据库了,准确的来说是9月2日发布的数据接口,文件后缀.JWD。当然,文件后缀名字叫什么无所谓,只要他是SQLite数据库就能直接按数据库标准来操作,既然如此,那我们就来拿起键盘鼠标,一起探索这PKPM的SQLite接口又是怎么样一番天地吧!

随便打开一个PKPM工程,SATWE或者PMSAP都行,左上角直接

e8e3d5142be353ba2c65844334251694.png

等待程序模型导出完毕之后,打开我们熟悉的SQLiteSpy或者DB Browser for SQLite,直接打开新生成的.jwd文件,然后我们就可以看到其中的数据表内容(小编这里使用的是SQLiteSpy,如果大家对这个软件的使用方法和一些数据库的基础应用有疑惑,欢迎温习公众号的这两篇文章“盈建科,二次开发”、“DB Browser for SQlite-盈建科的另类解法”)。

72137b6ddbc5b9cf0425a7fb8bb6b96e.png

原来,PKPM的jwd数据库中格式与盈建科的ydb数据表格式的含义都可以很容易对应起来!这下方便了,之前ydb那一套直接搬过来就可以使用,仅需把数据库SELECT…FROM…命令中的表头的tbl前缀改成pkpm即可成功读取pkpm的数据库形成三维模型了!让我们来试试看。

祭出我们熟悉的Rhino+Grasshopper经典组合,直接上C#电池,添加System.Data.SQLite引用,把原来读取ydb中节点的代码仔细修改(其实仅需改图中红框一处,然后Data Source填成对应的.jwd文件)之后,果然结果喜人,直接读取成功

00cba0089fed62b5fc43832c18faf406.png
368ee3953d04b960e2a8ba7dbb7e6ce8.png
63e9776472c73b056275849c61c1046f.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值