正在学习基于ABAQUS-PYTHON的GUI开发,出于练手的想法,编写了一个简单的插件。

实现功能:

  • 基于nodes、 rods的table,完成桁架结构的几何建模。

GUI界面:

RSG Builder 设计:

kernel python 代码:

# -*- coding: mbcs -*-
# Do not delete the following import lines
# version 1.0
from abaqus import *
from symbolicConstants import *
from abaqusConstants import *
import __main__ def BeamBuilder(BeamBuilderEnable,ModelName,PartName,MergeType,Meshable,Points,Rods):
# create a model
mdb.Model(name=ModelName,modelType=STANDARD_EXPLICIT)
mymodel=mdb.models[ModelName]
# create a blank part
p=BlankPart(mymodel,PartName) meshable=SymbolicConstant(name=Meshable.upper())
mergetype=SymbolicConstant(name=MergeType.upper()) nodes=Points
beams=Rods
print('point numbers='+str(len(nodes)))
print('rods numbers='+str(len(beams))) nodesDict={}
for i in range(len(nodes)):
node_index=nodes[i]
nodesDict[node_index[0]]=node_index[1:4]
lines=[]
for i in range(len(beams)):
line_index=beams[i]
line=(nodesDict[line_index[1]],nodesDict[line_index[2]])
lines.append(line) p.WirePolyLine(points=tuple(lines), mergeType=mergetype, meshable=meshable) # create a balnk part object
def BlankPart(Model,PartName):
# return sketch
s = Model.ConstrainedSketch(name='__profile__', sheetSize=200.0)
# view setting
s.setPrimaryObject(option=STANDALONE)
s.ArcByStartEndTangent(point1=(-36.25, 13.75), point2=(-17.5, 7.5), vector=(1.0, 0.0))
# create a part according to the sketch
p = Model.Part(name=PartName, dimensionality=THREE_D, type=DEFORMABLE_BODY)
p = Model.parts[PartName]
p.BaseWire(sketch=s)
s.unsetPrimaryObject()
del Model.sketches['__profile__']
temp=p.features.keys()
del p.features[temp[0]]
return p

【自编RSG插件】梁结构生成插件QGToolBox的更多相关文章

  1. DTCMS插件的制作实例电子资源管理(一)插件目录结构

    总目录 插件目录结构(一) Admin后台页面编写(二) 前台模板页编写(三) URL重写(四)     本实例旨在以一个实际的项目中的例子来介绍如何在dtcms中制作插件,本系列文章非入门教程,部分 ...

  2. vim插件的安装方式 -- vim注释插件和doxygen函数注释生成插件-ctrlp插件-tabular等号对齐 插件

    使用unzip的时候 指定 -d选项, 是说明解压到的 目标地址. 这个参数还是比较方便的, 比直接unzip到当前目录, 然后在去拷贝到目标目录, 然后再删除当前目录中的解压文件夹, 方便多了. 使 ...

  3. discuz目录结构和插件创建

    discuz目录结构 api 外部接口功能实现 archiver 静态文档,静态化所用 config 配置 data 生成的数据 install 安装目录 source 源代码核心目录 |--modu ...

  4. 通过数据库中的表,使用 MyEclipse2017的反向生成工具-->hibernate反转引擎引擎(MyEclipse2017自带的插件) 来反转生成实体类和对应的映射文件

    通过数据库中的表,使用 MyEclipse2017的反向生成工具-->hibernate反转引擎引擎(MyEclipse2017自带的插件) 来反转生成实体类和对应的映射文件   文章目录 Ja ...

  5. 【转载】maven插件mybatis-generator自动生成 (1)

    http://blog.csdn.net/itlqi/article/details/49534447 1.新建一个maven项目在pom.xml添加如下: <plugins> <p ...

  6. Javascript的一种代码结构方式——插件式

    上几周一直在做公司的webos的前端代码的重构,之中对javascript的代码进行了重构(之前的代码耦合严重.拓展.修改起来比较困难),这里总结一下当中使用的一种代码结构——插件式(听起来怎么像独孤 ...

  7. 轻量级验证码生成插件webutil-licenseImage

    轻量级验证码生成插件webutil-licenseImage源码与实例应用   webutil-licenseImage 插件内置4种验证码样式,支持用户扩展.自定义样式实现简单验证码. 源码脱管地址 ...

  8. 用mybatis生成插件自动生成配置文件

    1.在当前的maven项目的pom.xml中添加插件 <build> <plugins> <plugin> <groupId>org.mybatis.g ...

  9. 基于canvas的二维码邀请函生成插件

    去年是最忙碌的一年,实在没时间写博客了,看着互联网行业中一个又一个人的倒下,奉劝大家,健康要放在首位,保重身体.好了,言归正传,这是17年的第一篇博文,话说这天又是产品同学跑过来问我说:hi,lenn ...

  10. 一个基于原生JavaScript开发的、轻量的验证码生成插件

    Vcode.js 一个基于原生JavaScript开发的.轻量的验证码生成插件 V: 1.0.0 DEMO:https://jofunliang.github.io/Vcode.js/example. ...

随机推荐

  1. Mapstruct使用时报Unknown property xxx in result type xxx. Did you mean null

    0.背景 使用mapstruct时出现: Unknown property "xxx" in result type xxx. Did you mean "null&qu ...

  2. IDE提交Git出现husky>pre-commit错误

    若使用IDE提交Git出现以下错误: 则是ES6在提交校验过程中出现了问题,强制提交方式为: 命令行: git commit --no-verify IDEA: 在提交时取消勾选Run Git hoo ...

  3. Qt/C++中英输入法/嵌入式输入法/小数字面板/简繁切换/特殊字符/支持Qt456

    一.前言 在嵌入式板子上由于没有系统层面的输入法支持,所以都绕不开一个问题,那就是在需要输入的UI软件中,必须提供一个输入法来进行输入,大概从Qt5.7开始官方提供了输入法的源码,作为插件的形式加入到 ...

  4. [转]快速搭建简单的LBS程序——地图服务

    很多时候,我们的程序需要提供需要搭建基于位置的服务(LBS),本文这里简单的介绍一下其涉及的一些基本知识. 墨卡托投影 地图本身是一个三维图像,但在电脑上展示时,往往需要将其转换为二维的平面图形,需要 ...

  5. [炼丹术]YOLOR目标检测训练模型学习总结

    YOLOR目标检测训练模型学习总结 性能测试 python test.py --data data/cocoaml --img 320 --batch 8 --conf 0.001 --iou 0.6 ...

  6. 展锐SE8451E 开启硬件流控

    Dear Customer:  如电话沟通,若将uart0配置成3M波特率,需进行如下更改:  1.时钟源更改为96M/sprdroid10_trunk_19c_rls1/bsp/kernel/ker ...

  7. Qwen2ForSequenceClassification文本分类实战和经验分享

    本文主要使用Qwen2ForSequenceClassification实现文本分类任务. 文章首发于我的知乎:https://zhuanlan.zhihu.com/p/17468021019 一.实 ...

  8. w3cschool-Hive 教程

    https://www.w3cschool.cn/hive_manual/ 一.简述 HiveQL是一种声明式语言,用户提交查询,而Hive会将其转换成MapReduce job,如下图.一般来说大部 ...

  9. TCA 复习

    HTML中预览PDF 手机端无法识别embed <embed src="***.pdf" id="review" style="width:11 ...

  10. 并发编程 - 线程同步(四)之原子操作Interlocked详解一

    上一章我们了解了原子操作Interlocked类的设计原理及简单介绍,今天我们将对Interlocked的使用进行详细讲解. 在此之前我们先学习一个概念--原子操作. 01.Read方法 该方法用于原 ...