abaqus二次开发python程序集

1、设置字体背景色等

# _*_ coding:UTF-8 _*_

from abaqusConstants import*
def fontsize(session=None):
    #设置字体
    session.viewports['Viewport: 1'].viewportAnnotationOptions.setValues(
    triadFont='-*-verdana-medium-r-normal-*-*-'+str(360)+'-*-*-p-*-*-*', 
    legendFont='-*-verdana-medium-r-normal-*-*-'+str(360)+'-*-*-p-*-*-*', 
    titleFont='-*-verdana-medium-r-normal-*-*-'+str(360)+'-*-*-p-*-*-*', 
    stateFont='-*-verdana-medium-r-normal-*-*-'+str(360)+'-*-*-p-*-*-*')

def anno(session=None):
    #设置注释
    session.viewports['Viewport: 1'].viewportAnnotationOptions.setValues(
    legendBox=OFF, legendMinMax=OFF, legendDecimalPlaces=0, 
    legendNumberFormat=FIXED, title=OFF, state=OFF)

def bw(session=None):
    #设置背景颜色为白色
    session.graphicsOptions.setValues(backgroundBottomColor='#FFFFFF',backgroundColor='#FFFFFF')

def bb(session=None):
    #设置背景颜色为默认
    session.graphicsOptions.setValues(backgroundColor='#1B2D46', backgroundBottomColor='#A3B1C6')

def noedge(session=None):
    #设置模型无边显示
    session.viewports['Viewport: 1'].odbDisplay.commonOptions.setValues(
    visibleEdges=NONE)

def edge(session=None):
    #设置模型有边显示
    session.viewports['Viewport: 1'].odbDisplay.commonOptions.setValues(
    visibleEdges=ALL)

2、读取模态频率并写入 csv 文件

import csv
import numpy as np

def getfrequecy(session=None,iODB=0,iSTEP=0):
    #getModalFrequency
    #iODB=0
    #iSTEP=0
    odb=session.odbs[session.odbs.keys()[iODB]]
    step=odb.steps[odb.steps.keys()[iSTEP]]
    NUM_FRAMES=len(step.frames)


    fi=np.zeros(NUM_FRAMES)
    with open('C:/Temp/fi.csv', 'w',) as file:
        writer = csv.writer(file,lineterminator='\n') #####
        for i in range(NUM_FRAMES):
            fi[i]=step.frames[i].frequency
            writer.writerow((i, "{:.2f}".format(fi[i])))


    with open('C:/Temp/fi.csv') as file:
        reader=csv.reader(file)
        data=[line for line in reader]
        print(len(data),data[0])

3、在两个窗口快速对比各价模态

def getframe(session=None,frame=1):
    #odbFile1='C:/Users/LOCAL_~1/Temp/16a4-pu-forCond-nfreq1715749308.791.odb'
    #odbFile2='C:/Users/LOCAL_~1/Temp/16a4-pu-forCond-ban-nfreq1715750283.948.odb'
    #o1=session.odbs[odbFile1]
    #o2=session.odbs[odbFile2]
    #session.viewports['Viewport: 2'].setValues(displayedObject=o1)
    #session.viewports['Viewport: 2'].setValues(displayedObject=o2)
    session.viewports['Viewport: 1'].odbDisplay.setFrame(step='Step-1', frame=frame)
    session.viewports['Viewport: 2'].odbDisplay.setFrame(step='Step-1', frame=frame)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值