查看: 3438|回复: 4
收起左侧

[Tribon] tribon二次开发功能:选择两点,自动显示X变量与Y变量以及夹角

[复制链接]
发表于 2015-9-24 21:25 | 显示全部楼层 |阅读模式 来自: 中国广东东莞
import kcs_ui
import kcs_util
import kcs_draft
import KcsTransformation2D
import KcsPoint2D
import math
import KcsStat_point2D_req
import KcsCursorType
def run(*args):
    while 1:#如果不点击完成或者按回车键或者ESC键,进入循环。
        sp = KcsPoint2D.Point2D()
        ep = KcsPoint2D.Point2D()
        stp=KcsStat_point2D_req.Stat_point2D_req()
        stp.SetDefMode("ModeAuto")#2D选点模式,自动捕捉点
        transf = KcsTransformation2D.Transformation2D()
        res1,sp= kcs_ui.point2D_req("指定第一点",sp,stp)
        if res1==kcs_util.operation_complete() or res1==kcs_util.cancel() :#点击完成或者按回车键或者ESC键,退出循环。
            return 1
        else:
            res2,ep = kcs_ui.point2D_req("指定第二点",ep,stp)
            if res2==kcs_util.operation_complete()or res2==kcs_util.cancel():#点击完成或者按回车键或者ESC键,退出循环。
                return 1
            else:
               
                try:
                    handle = kcs_draft.view_identify(sp)#点选视图句柄
                    kcs_draft.element_transformation_get(handle, transf)#视图句柄获取transf
                    scale = transf.GetScale() #获取视图比例因子
                    dx=(ep.X-sp.X)/scale[0]#水平间距
                    dy=(ep.Y-sp.Y)/scale[0]#垂直间距
                    l=math.sqrt(dx*dx+dy*dy)#两点距离
                    if dx==0:#垂直情况不能用反三角计算,给出垂直判定。
                        a=90.0#水平倾角
                    else:
                        a=abs(math.atan(dy/dx)*180/3.14159265)#水平倾角
                    kcs_ui.message_noconfirm("*"*120)
                    kcs_ui.message_noconfirm(("水平增量:=%10.0f;垂直增量=%10.0f;水平倾角=%10.0f;距离=%10.0f,视图比例=%10.0f"%(dx,dy,a,l,1/scale[0])) )
                    kcs_ui.message_noconfirm("*"*120)
                except:
                    kcs_ui.message_noconfirm(kcs_draft.error)
                        
                    
                    
            
            
            
            
            
           
   
   
回复

使用道具 举报

龙船学院
发表于 2015-9-24 22:37 | 显示全部楼层 来自: 中国山东青岛
这个是做什么用的呢?
回复 支持 反对

使用道具 举报

发表于 2015-9-25 20:17 来自手机 | 显示全部楼层 来自: 中国安徽芜湖
林妹子又出来献宝了!
回复 支持 反对

使用道具 举报

发表于 2015-9-29 15:19 来自手机 | 显示全部楼层 来自: 中国湖北
搞点有用的撒
回复 支持 反对

使用道具 举报

发表于 2015-9-29 21:57 | 显示全部楼层 来自: 中国浙江嘉兴

能帮忙解决一个问题吗?WIN7不能用这个Tribon M3 DB Server Maint,update后报错,主进程rundll32已停止工作,怎么解决?谢谢
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-9-21 00:47

Powered by Imarine

Copyright © 2006, 龙船社区

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