开发实例_[OpenSEES]实例34_基于OPENSEES的桥梁游戏开发

本文档介绍了如何使用OpenSEES开发一个桥梁分析游戏,结合图形界面进行刚构桥建模、施加荷载,并通过动画展示结构变形。游戏旨在帮助学习者理解结构布置和受力变形,适用于STEM教学。内容包括结点和单元生成、固定支座设定、荷载应用、OPENSEES命令流创建及动画效果实现。
摘要由CSDN通过智能技术生成

[OpenSEES]实例34_基于OPENSEES的桥梁游戏开发

点击【阅读原文】可以直接下载程序与相关PDF[下载实例PDF]:点击下载此文件:实例35_基于OPENSEES的桥梁游戏开发[下载实例文件]:点击下载实例文件 1)问题描述:本实例是一个基于图形界面的小游戏的开发,计算核心是采用OpenSEES,主要介绍通过delphi或lazarus开发一个图形界面,可以快速进行刚构桥的建模,施加行车荷载(参考前面实例中影响线的计算方法),最后通过动画的形式显示结构的整个过程的变形。这个小游戏可以用于练习结构布置,学习结构概念,了解不同结构受力变形的特征,结构形式的效率等等 。这有利于应用于STEM 教学。本实例会展示部分快速建模的源代码,并展示最后用于桥梁分析的opensees命令流。2dbfe2bb514f1ec65aca74c767bc83c7.png

(1)采用遍历的方法生成结构模型的全部结点。以下是关键代码,USED代表结点是被使用。PX,PY代表结点的坐标,整个屏幕的网格共有32X20个结点,只有被使用的结点才会被重新编号且生成于OPENSEES的代码当中。初始结点是NODE,存在很多空结点 ,重新编号后是KNODE,全部是被使用结点,两组编号要对应起来。 (2)通过鼠标建立桥梁的杆系模型,所以杆件采用两个结点连接。以下是增加单元的代码,在屏幕上的定好起点AX,AY与终点BX,BY,就可以确定一个构件的左右结点的编号,通过坐标反向计算结点的编号(因为编号顺序与坐标位置是相关的),确定了单元的左右结点以后,就可以增加一个新的单元。程序生成两类构件,自已绘制的蓝色构件及红色的桥面构件。有单元的结点,指定为结点被使用,在重生成被使用结点时进行重新编号,单元的编号中I,J为原始编号,KI,KJ为结点重新编号后的编号。 (3)桥梁的左右两端的节点均为固定支座,也就是自由度全部锁死。总共有左右两端的支座,共计8个结点,如图所示。5ea2e44f054672978cac7017d7c7d9f8.png(4)桥面节点(荷载相关作用点)注意:需要一个找桥面点的一个过程,从左到右,确定部分构件是桥面单元,桥面的单元上的结点将会被施加荷载。bd09ebbb710a91a98f97dadea32de776.png(5)程序自动指定桥梁的位置活动荷载(模拟桥面上的车从左到右行走的过程)每一步的荷载位置及大小的变化如下图所示,整个过程以此类推。原理如下图所示。(6)生成全部的opensees命令流,保存文件名为CO.txt整个OPENSEES生成的代码如下所示:b4059ba1ecfd4e910fc2badb532621b5.png(7)程序调用opensees程序运行命令流文件,运算完程序后即可得到全部的输出文件以下命令流代表输出全部的结点的变形值(8)桥梁程序读取输出的文本文件,主要是每个结点的位移,即可得到整过车运动过程中的结构的整体变形。以下代码代表读取每个结点的变形,并把每个结点在每一个荷载子步的值存起来,用于绘制动画效果,其中结点的位移会在MX,MY的数组内。 (9)对全部结点进行求最大值,得到全部节点中,最大的结构变形位置。整个小程序的制作过程就完成了。每隔一定时间绘制整个屏幕,即为动画效果,采用了编程中的Timer计时器控件功能。07768ea84b775a3b1f4fd83e623fcb5a.pnga4608df7461cdca9f88ef93daef26511.png=============end================

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值