楼主: 320382
收起左侧

[软件相关] Tribon快速建模二次开发免费赠送含视频(源码在19楼,tribon 全模块培训、二次开发)

  [复制链接]
发表于 2012-7-27 22:44 | 显示全部楼层 来自: 中国浙江杭州
lz牛人啊!
回复 支持 反对

使用道具 举报

龙船学院
发表于 2012-8-27 22:56 | 显示全部楼层 来自: 中国湖北孝感
224 发表于 2011-7-16 14:09
想学习啊

应网友要求,现贴出源码:
###################
import kcs_util,kcs_ui
import kcs_hullpan
import kcs_draft
import KcsPoint2D
import KcsModel
import KcsPoint3D
import KcsStat_point3D_req
import KcsStat_point2D_req
import kcs_hull

OK = kcs_util.success()
CANCEL = kcs_util.cancel()
group_given = 0
#------------------------------------------------------------------------------
#  getPanelGroups - get all groups \view from a panel
#------------------------------------------------------------------------------

def getPanelGroups(panel,group):
  groups = []
  if group > 0:
    groups.append(group)
  else:
    groupres = kcs_hull.pan_next_group( panel, -2, group)  #获取板架的组号
    res = groupres[0]
    while res == OK:
      group = groupres[1]
      groups.append(group)
      groupres = kcs_hull.pan_next_group( panel, 1, group)  #获取板架的下个组号
      res = groupres[0]
#      kcs_ui.message_confirm(str(group))
  return groups
#-----------------------------------------------------------------------------
#  Main body
#-----------------------------------------------------------------------------

stat=KcsStat_point2D_req.Stat_point2D_req()
stat.SetDefMode("ModeNode")     
point=KcsPoint2D.Point2D()   #initialise point

res = kcs_ui.point2D_req("Indicate origo",point,stat)
if res[0] !=kcs_util.ok():
   kcs_ui.message_confirm("user interrupt")
else:
  p3D1 = kcs_util.tra_coord_ship(point.X,point.Y,"")
  if p3D1[0] == 0:
    ORI = "%0.1f,%0.1f,%0.1f" % p3D1[1:]
    res1 = kcs_util.coord_to_pos(1,p3D1[1])
    if res1[0] == 0:
      p1 = "X=FR%s+%d" % res1[1:]
    res2 = kcs_util.coord_to_pos(2,p3D1[2])
    if res2[0] == 0:
      p2 = "Y=LP%s+%d" % res2[1:]
      p3 = "Z = %d" % p3D1[3]
      kcs_ui.message_confirm("ORI:"+p1 +","+p2+"," +p3)






res = kcs_ui.point2D_req("Indicate U-axis",point,stat)
if res[0] !=kcs_util.ok():
   kcs_ui.message_confirm("user interrupt")
else:
  p3D2 = kcs_util.tra_coord_ship(point.X,point.Y,"")
  if p3D2[0] == 0:
    UAX = "%0.1f,%0.1f,%0.1f" % p3D2[1:]
    res1 = kcs_util.coord_to_pos(1,p3D2[1])
    if res1[0] == 0:
      p1 = "X=FR%s+%d" % res1[1:]
    res2 = kcs_util.coord_to_pos(2,p3D2[2])
    if res2[0] == 0:
      p2 = "Y=LP%s+%d" % res2[1:]
      p3 = "Z = %d" % p3D2[3]
      kcs_ui.message_confirm("UAX:"+p1 +","+p2+"," +p3)



res = kcs_ui.point2D_req("Indicate V-axis",point,stat)
if res[0] !=kcs_util.ok():
   kcs_ui.message_confirm("user interrupt")
else:
  p3D3 = kcs_util.tra_coord_ship(point.X,point.Y,"")
  if p3D3[0] == 0:
    VAX = "%0.1f,%0.1f,%0.1f" % p3D3[1:]
    VAX = "%0.1f,%0.1f,%0.1f" % p3D3[1:]
    res1 = kcs_util.coord_to_pos(1,p3D3[1])
    if res1[0] == 0:
      p1 = "X=FR%s+%d" % res1[1:]
    res2 = kcs_util.coord_to_pos(2,p3D3[2])
    if res2[0] == 0:
      p2 = "Y=LP%s+%d" % res2[1:]
      p3 = "Z = %d" % p3D3[3]
      kcs_ui.message_confirm("VAX:"+p1 +","+p2+"," +p3)



mod = kcs_ui.req_pick_mod("Pick panel",0,0)  #点击得到一个板架
res = mod[0]
#kcs_ui.message_confirm(str(OK) + str(res)+mod[1])
if res == OK and mod[1] == "plane panel":
  panel = mod[2]
  res = kcs_hull.pan_modify(panel,2)         #激活一个板架,1=新;2=更新



#  groups = getPanelGroups( panel, group_given)  #获取板架的语句,因为是新加肘板,所以不要查找语句编号
  status, A = kcs_ui.int_req("A")
  if status == kcs_util.ok() :
    kcs_ui.message_confirm(A)
  status, B = kcs_ui.int_req("B")
  if status == kcs_util.ok() :
    kcs_ui.message_confirm(B)
  status, MAT = kcs_ui.int_req("MAT")
  if status == kcs_util.ok() :
    kcs_ui.message_confirm(MAT)
  status, H = kcs_ui.int_req("H")
  if status == kcs_util.ok() :
    kcs_ui.message_confirm(H)
  status, NOT = kcs_ui.string_req("NOT")
  if status == kcs_util.ok() :
    kcs_ui.message_confirm(NOT)
  status, PSI = kcs_ui.string_req("PSI")
  if status == kcs_util.ok() :
    kcs_ui.message_confirm(PSI)


      
  # Bracket parameters
  stBRA = "BRA, KLK, COR=0,COL=CYAN, MAT= %d, NOT= %s,  MSI=PS, A= %d, B= %d,H=%d,PSI= %s, V2= 90,  ORI = %s, UAX = %s, VAX = %s ;" % (MAT,NOT, A,  B, H, PSI, ORI, UAX,VAX) #定义属性
  try:
    kcs_hullpan.stmt_exec(0, stBRA) #新加语句时,语句的编号=0     
    kcs_hullpan.pan_store()              
    try:
      kcs_ui.pic_draw_mod('plane panel', panel, 0)  #重新生成(新)板架.   
    except:
      kcs_ui.message_confirm("bracket not gotten")
  finally:
      kcs_hullpan.pan_skip()   #skip (deactivate) the scheme
回复 支持 反对

使用道具 举报

发表于 2012-11-4 17:15 | 显示全部楼层 来自: 中国浙江舟山
楼主,请教一下,TRIBON的程序开发是基于哪种程序语言的?
回复 支持 反对

使用道具 举报

发表于 2012-11-4 18:01 | 显示全部楼层 来自: 中国广东清远
gbbestway 发表于 2012-11-4 17:15
楼主,请教一下,TRIBON的程序开发是基于哪种程序语言的?

接口语言是python,
然后你就可以想用什么语言都没有问题。
回复 支持 反对

使用道具 举报

发表于 2012-11-22 20:10 | 显示全部楼层 来自: 中国广东江门
不错,学习了,谢谢分享!
回复 支持 反对

使用道具 举报

发表于 2012-11-28 13:59 | 显示全部楼层 来自: 中国江苏南通
楼主好人
回复 支持 反对

使用道具 举报

发表于 2012-11-28 15:36 | 显示全部楼层 来自: 中国湖北武汉
高三就是高手呀
回复 支持 反对

使用道具 举报

发表于 2012-11-29 10:34 | 显示全部楼层 来自: 中国辽宁大连
强烈支持
回复 支持 反对

使用道具 举报

发表于 2012-11-29 12:35 | 显示全部楼层 来自: 中国江苏泰州
楼主很强大,下载下来学习一下
回复 支持 反对

使用道具 举报

发表于 2012-11-29 22:11 | 显示全部楼层 来自: 中国广东广州
高手
回复 支持 反对

使用道具 举报

发表于 2012-11-29 22:22 | 显示全部楼层 来自: 中国辽宁大连
好东西
回复 支持 反对

使用道具 举报

发表于 2012-12-10 20:33 | 显示全部楼层 来自: 中国江苏南京
这个组立关系是怎么体现的呢,是不是两块板子随便选择哪个作为第一块板架都可以建出来,件号还是得后期语句加吧~
回复 支持 反对

使用道具 举报

发表于 2012-12-12 10:22 | 显示全部楼层 来自: 中国福建厦门
很牛嘛~
回复 支持 反对

使用道具 举报

发表于 2013-1-4 11:15 | 显示全部楼层 来自: 中国广东惠州
顶一下!嘻嘻
回复 支持 反对

使用道具 举报

发表于 2013-1-6 17:12 | 显示全部楼层 来自: 中国广东清远
楼主牛X
回复 支持 反对

使用道具 举报

发表于 2013-1-7 15:47 | 显示全部楼层 来自: 中国江苏南通
lz威武,学习了
回复 支持 反对

使用道具 举报

发表于 2013-1-17 12:37 | 显示全部楼层 来自: 中国江苏南京
貌似剽窃
回复 支持 反对

使用道具 举报

发表于 2013-1-17 13:27 | 显示全部楼层 来自: 中国广东广州
lz牛人,学习了
回复 支持 反对

使用道具 举报

发表于 2013-1-18 14:03 | 显示全部楼层 来自: 中国上海
楼主不光是牛人,还是很慷慨的人!
回复 支持 反对

使用道具 举报

发表于 2013-1-22 16:59 | 显示全部楼层 来自: 中国河北保定
楼主有没有TRIBON软件,我现在急需,会加你QQ
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|标签|免责声明|龙船社区

GMT+8, 2024-9-20 00:20

Powered by Imarine

Copyright © 2006, 龙船社区

快速回复 返回顶部 返回列表