PLM之家PLMHome-工业软件践行者

[二次开发源码] NX二次开发源码分享: 在绝对坐标系和视图上点映射

  [复制链接]

2018-3-4 09:36:09 2647 0

2470

主题

1275

回帖

8万

积分

管理员

PLM之家站长

积分
82170
QQ
发表于 2018-3-4 09:36:09 | 显示全部楼层 |阅读模式

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

您需要 登录 才可以下载或查看,没有账号?注册

x
3 S' W8 f6 ?- O
NX二次开发源码分享: 在绝对坐标系和视图上点映射1 B: w. {& v" I2 D9 S
; X- \2 r/ ~* T, T7 E: l

$ S$ T7 v( }/ a. E( @[mw_shl_code=c,true]( Z1 {( {4 h5 \- o
    Function MapView2Abs(ByVal aView As View, ByVal coords As Point3d)
1 V1 m$ s; M' ^9 y& W        Dim vmx As Matrix3x3 = aView.Matrix+ i0 u$ H0 p2 w
        Dim vw() As Double = {0, 0, 0, vmx.Xx, vmx.Xy, vmx.Xz, vmx.Yx, vmx.Yy, vmx.Yz}
" b- U1 f  W. R1 n. @& O/ ^        Dim abs() As Double = {0, 0, 0, 1, 0, 0, 0, 1, 0}
# `% s6 I5 \6 z$ W5 n8 H' ]        Dim mx(11) As Double2 G2 v6 ~' H5 O, M5 n' N
        Dim irc As Integer* G$ ]: ^$ \7 I- U& f7 B$ T& p5 U
        Dim c() As Double = {coords.X, coords.Y, coords.Z}
# i0 A2 L* M& @+ c
+ Q! m8 u6 Z  ?/ S. j5 e8 a        ufs.Trns.CreateCsysMappingMatrix(vw, abs, mx, irc)' q5 C; g& o7 @$ z$ Y
        ufs.Trns.MapPosition(c, mx): {, d5 i+ X' c
/ i* m$ ?2 b0 T" S) W- u" W" K' z
        MapView2Abs = New Point3d(c(0), c(1), c(2))+ _$ Y! X+ W; t& V/ f! P
    End Function
/ R. n$ y( e8 p) E2 H' X( l, T( c% K; [& U+ i2 k' z/ f
    Function MapAbs2View(ByVal aView As View, ByVal coords As Point3d)
0 F$ H. D' b0 ~( I6 `% Z0 M. m        Dim vmx As Matrix3x3 = aView.Matrix/ R8 Z0 u5 n8 x* j8 H6 F* L
        Dim vw() As Double = {0, 0, 0, vmx.Xx, vmx.Xy, vmx.Xz, vmx.Yx, vmx.Yy, vmx.Yz}
* N# f+ o+ d! o& u+ O3 [$ ~; p        Dim abs() As Double = {0, 0, 0, 1, 0, 0, 0, 1, 0}
+ w: V2 a9 H* Q  }% _8 S        Dim mx(11) As Double
7 v, a9 L5 k  ?        Dim irc As Integer
0 f' S1 l+ ?# |& e! ~. @        Dim c() As Double = {coords.X, coords.Y, coords.Z}: Y5 @0 t3 Q: m5 n+ D" E3 p; P! l

8 K9 V* P( s+ L8 @! x: `7 {% f        ufs.Trns.CreateCsysMappingMatrix(abs, vw, mx, irc)
# K( i% \9 ~. P7 z) ~5 K8 Z        ufs.Trns.MapPosition(c, mx)+ A! X$ {* M" H( r# I. ?1 k
) o# o+ M3 Q2 b8 c) \+ G
        MapAbs2View = New Point3d(c(0), c(1), c(2))% ?1 _1 }2 {+ }# z
    End Function
* g- t* I, K3 w* X[/mw_shl_code]* J5 e4 \2 u& l. m  \+ v1 q" r
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了