当前位置:首页>python>Hyperview Python二次开发自动读取结果云图contour

Hyperview Python二次开发自动读取结果云图contour

  • 2026-09-02 20:11:08
Hyperview Python二次开发自动读取结果云图contour
Hyperview基于tcl 语言实现自动读取云图方法如下:
Hyperview二次开发之自动读取位移云图(Contour)
Hyperview二次开发之自动读取应力应变等结果云图(Contour)
Hyperview基于Python 语言实现自动读取云图方法如下:
# 定义位移云图函数,datacomponent可选值为 "Mag" "X" "Y" "Z" # usetracking 是否使用局部坐标系, "False" 不使用局部坐标系 ,"True"使用局部坐标系def counter_displacement (datacomponent,usetracking = "False"):    import hw    import hw.hv as hv    ses = hw.Session()    page = ses.get(hw.Page)    win = ses.get(hw.Window)# 获取云图object    res = ses.get(hv.Result)# 设置云图类型    rescounter = hv.ResultDefinitionScalar(dataType="Displacement", dataComponent=datacomponent,)# 设置是否使用局部坐标系if usetracking == "True":        rescounter.useTracking = Trueprint("use tracking")    res.plot(rescounter)#  此处只是示例python 读取云图方法#  实际应用中hv.ResultDefinitionScalar(dataType="stress",dataComponent="vonMises", layer="Max")#  datatype,datacomponent,layer 可设置为函数的参数def counter_vonMises ():    import hw    import hw.hv as hv    ses = hw.Session()    page = ses.get(hw.Page)    win = ses.get(hw.Window)# 获取云图object    res = ses.get(hv.Result)# 设置云图类型    rescounter = hv.ResultDefinitionScalar(dataType="stress",dataComponent="vonMises", layer="Max")# 通过collection 选择需要读取云图的零件 此处通过id选择# 此处读取两个件 多个件可通过for循环 加入collection中#   col = hv.Collection(hv.Part,populate=False)#   col.addByID(hv.Part,2400013)#   col.addByID(hv.Part,2400011)#   rescounter.collection = col# 上面四句命令可以省略,默认读取整个模型的云图    res.plot(rescounter)# 设置counter legend# 获取legend object    leg = hv.LegendScalar()# 设置legend level (有几种颜色层级)    leg.numberOfLevels = 3# 设置数值格式 (auto, fixed, engineering and scientific.)    leg.numericFormat = "fixed"# 设置数值精度 例如保留两位小数    leg.numericPrecision = 2# 设置颜色通过rgb (level index,color)    leg.setLevelColor(3,(250,0,0))# 设置颜色通过颜色名 (level index,color)    leg.setLevelColor(2,"blue")# 设置颜色通过hv里面颜色id 8代表灰色 (level index,color)    leg.setLevelColor(1,8)# 设置云图数值    leg.setLevelValue(1,2)    leg.setLevelValue(2,5)# 设置云图 阈值    leg.thresholdMax = True    leg.thresholdMaxValue = 350def create_tracking_systems ():    import hw    import hw.hv as hv    ses = hw.Session()    page = ses.get(hw.Page)    win = ses.get(hw.Window)    model = ses.get(hv.Model)    hw.evalHWC('tracking create "Tracking System 1"')    hw.evalHWC('tracking "Tracking System 1" node 24031454')    hw.evalHWC('tracking makecurrent "Tracking System 1"')

最新文章

随机文章