PLM之家精品课程培训,联系电话:18301858168 QQ: 939801026

  • NX二次开培训

    NX二次开培训

    适合初级入门或想深入了解二次开发的工程师,本培训结合ufun,NXOpen C++,大量的实例及官方内部的开发技术对于老鸟也值得借鉴!.

    NX CAM二次开发培训报名 NX二次开发基础培训报名
  • PLM之家Catia CAA二次开发培训

    Catia二次开发培训

    Catia二次开发的市场大,这方面开发人才少,难度大。所以只要你掌握了开发,那么潜力巨大,随着时间的积累,你必将有所用武之地!

  • PLM之Teamcenter最佳学习方案

    Teamcenter培训

    用户应用基础培训,管理员基础培训,管理员高级培训,二次开发培训应有尽有,只要你感兴趣肯学习,专业多年经验大师级打造!

  • PLM之Tecnomatix制造领域培训

    Tecnomatix培训

    想了解制造领域数字化吗?想了解工厂,生产线设计吗?数字化双胞胎,工业4.0吗?我们的课程虚位以待!

PLM之家PLMHome-国产软件践行者

[二次开发源码] NX二次开发源码分享:显示面的法相方向

[复制链接]

2019-2-8 13:26:19 2707 1

admin 发表于 2019-2-8 12:58:52 |阅读模式

admin 楼主

2019-2-8 12:58:52

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

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

x
' H! y- P  z# R

# N# _0 Z3 ]! U1 b5 B0 V9 O& J经常能用的到,通过选择面,显示临时法线方向和点!
  f. s0 C2 R: F5 ^$ f; ?5 i2 S( ^7 _" g; k6 C! ]& n- i, d

3 E  Y! f9 ?- S' I4 l4 Z[mw_shl_code=cpp,true]  static bool DisplayNormal(Face theFace)1 i; P3 o2 Q. K  }% @9 i) K3 X
    {
/ S+ C* v3 T" t" O        double[] param = new double[2];+ X# F. g7 u2 ~0 V! W; P6 B
        double[] p1 = new double[3];& J* F2 v0 Q) ^$ I6 s9 y, g: n
        double[] u1 = new double[3];6 I) R2 r/ }- H
        double[] v1 = new double[3];
( |  y6 m) u0 [        double[] u2 = new double[3];! S) |+ s- Z: q6 I% Z
        double[] v2 = new double[3];
' P  Z7 i" }" f! T. n. R        double[] unit_norm = new double[3];
2 x( T6 H& b/ j0 i7 r        double[] radii = new double[2];
+ L# L2 w! h4 u0 `! k# o        double[] uv_min_max = new double[4];/ _) q+ X4 T. F  S8 D. A0 f
9 `* I5 ^7 |$ b$ a, `
        theUFSession.Modl.AskFaceUvMinmax(theFace.Tag, uv_min_max);
9 }: }, ^% z5 v* d2 |) C+ y$ l3 B- z8 w        param[0] = (uv_min_max[0]+uv_min_max[1]) / 2;
4 e2 G" A" Q9 Y) n        param[1] = (uv_min_max[2]+uv_min_max[3]) / 2; 1 W( |' Z" E& h; v& R4 L
        theUFSession.Modl.AskFaceProps(theFace.Tag, param, p1, u1, v1, u2, v2, unit_norm, radii);
, U$ ]) [$ e" w/ c$ f. E7 N* ~4 }
        DisplayTemporaryPoint(p1);, E" m' d# {, Q1 t- A' ~
        DisplayConehead(p1, unit_norm);- N  t7 s3 n/ _% l2 r1 p  z

, [" @  H/ k$ ]9 r- ^) l        return true;
: [6 G( s! C( ]3 @    }/ M# H7 g0 X, q4 s" F- l
    ' a7 V! K* O9 S/ ]
    static void DisplayTemporaryPoint(Double[] loc)
' b- w( C3 r' L2 V, g    {
4 J. d9 t* i# ]* V        UFObj.DispProps color = new UFObj.DispProps();
; \7 b5 s' y0 x8 T* r1 A% b" G        color.color = 6;
0 m( j; [4 j1 b2 D9 k        theUFSession.Disp.DisplayTemporaryPoint(Tag.Null, UFDisp.ViewType.UseWorkView,
/ w7 ^# o! r+ y7 |            loc, ref color, UFDisp.PolyMarker.FilledCircle);
& M- Q, P4 c' v4 G1 |6 {$ R$ {: ]    }# B, E& t8 j. V6 @4 A1 ~6 O- j* ~
- f& @: ~, e4 G2 N
    static void DisplayConehead(Double[] loc, Double[] dir)) @  ^' r3 w  p# V
    {( G" H2 F( V7 u5 C% p/ u; C
        theUFSession.Disp.Conehead(UFConstants.UF_DISP_WORK_VIEW_ONLY, loc, dir, 0);- H! ~* y; l( V. w# S) E
    }- t, q! k1 H4 P$ T2 q$ _$ E5 j
[/mw_shl_code]& Y! r' p5 E* N+ V' G9 ?' W  r: g8 N
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

全部回复1

admin 发表于 2019-2-8 13:26:19

admin 沙发

2019-2-8 13:26:19

如果使用ufun的函数基本如下:
" q# m# D/ u6 S# e1 A+ E! s8 |//获取面的uv极值
4 r+ @  }! \/ ^+ a2 b( m4 d6 iint UF_MODL_ask_face_uv_minmax) V9 r5 Z- Y% n. a
(3 H- q; y' y+ ~1 B9 u2 J% @4 ~) k

5 A6 @' @: y0 t0 D0 a+ h, qtag_t face_tag,
: e, g- |5 p7 ]double uv_min_max [ 4 ]
# b" g. {# \( X! X$ L% V+ ?# _# N
)+ z! L9 c* c) j4 }7 x! h
5 W4 j# g+ L: A
//获取位置点信息--double param [ 2 ] 的输入就是上一步的输出
* \; I9 K# U2 R9 ?* n. K/ r  D# p5 C
int UF_MODL_ask_face_props! f% K$ s. x+ e8 X$ d
( t+ Q$ g& c2 H; K  @
(
: V$ P& v1 ^5 E6 t( Z8 ytag_t face_id, ' Z/ L! [) M6 ~& k7 i( b1 A/ f6 r
double param [ 2 ] , % A% B' [* K- o# f1 z0 N) g
double point [ 3 ] , 8 f# p6 ~' `3 |: E9 l( s3 H2 ]
double u1 [ 3 ] , $ u3 O0 @) z( z: n
double v1 [ 3 ] ,
% j3 }- N; l, U1 r6 g* Rdouble u2 [ 3 ] , ; l. d* F2 O& M
double v2 [ 3 ] ,
) Y5 [5 t& ~) U# w0 Z4 Ddouble unit_norm [ 3 ] , / z2 M) P5 {$ M6 s% ~9 F
double radii [ 2 ] 8 r/ e. `. W. e2 k
" c7 `! O7 Y# f' g, ~! O
)3 m, |2 `3 `9 D. R

7 N/ p9 F  p+ C//将点输入到显示临时的函数中) h9 U4 P& t+ D" T, P* W
) K9 N- E$ n, x7 ~# H% l5 M/ p
int UF_DISP_display_temporary_point- F; T0 `$ z* q
; X, ?6 }$ S" H
(
& P& _/ b' x9 a" Qtag_t view_tag,
: I% _" J1 T- U7 ]UF_DISP_view_type_t which_views, " n% j* m2 g, m  m
double markerpos [ 3 ] , + }- ^+ ^0 X& t, e6 @
UF_OBJ_disp_props_t * color, : R0 U! L4 [) r5 L" g/ ~/ a9 O0 K
UF_DISP_poly_marker_t marker_type ( u+ B- `" B$ ]

& F/ j# b2 O! D! m& }0 L)
/ v# \& j, n8 ]  Z- O* p: U( {% k: h8 a# B  i6 U/ e; L
//显示8 ?+ K2 T6 \5 x: _  @# y  g4 ~

/ U1 F' E' n0 s$ R+ T8 Nvoid UF_DISP_conehead
$ e8 B% h* c- Z1 R+ t(
" `" T  W2 ]6 h4 J0 |) d# C* M" ~0 H
int display_flag,
+ O! j* A: g6 m) K. Ndouble coord [ 3 ] ,
9 \7 C9 V; {! \double vector [ 3 ] ,
2 x; G1 Q9 U! x! }) Q, t. u' Gint anchor_flag
5 x; C4 M$ X  E' a5 Q& h3 S" u: T5 [) p
)
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

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

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

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

    我知道了