PLM之家精品课程培训

PLM之家精品课程培训

联系电话:18301858168   |   QQ咨询:939801026
NX二次开发培训

NX二次开发培训

UFUN/NXOpen C++和实战案例

适合初级入门或想深入了解二次开发的工程师,本培训结合ufun,NXOpen C++,大量的实例及官方内部的开发技术。
公众号二维码

关注公众号

点击扫描二维码免费在线高清教程

课程详情
Catia二次开发培训

Catia二次开发培训

市场需求大,掌握核心技术前景广阔

Catia二次开发的市场需求大,人才稀缺。掌握开发技能潜力巨大,随着经验积累将在汽车、航空等领域有所作为。
B站二维码

在线原创B站视频

点击关注工业软件传道士主页

课程详情
Teamcenter培训

Teamcenter培训

全方位培训,从基础应用到高级开发全覆盖

涵盖用户应用基础培训、管理员基础培训、管理员高级培训及二次开发培训等全方位内容,由多年经验讲师打造。
QQ群二维码

加入同行交流

点击扫描二维码加入QQ群

课程详情
×

PLM之家plmhome公众号

课程涵盖: PLM之家所有原创视频

×

关注B站视频

所有高清视频一览无余,全部在线播放学习

×

加入PLM之家QQ群

同行交流,疑问解答,更多互助

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

[交作业] NX9二次开发培训作业001_使用ufcre入口函数

  [复制链接]

2021-8-23 16:29:12 3571 1

清江 发表于 2014-11-17 16:45:55 |阅读模式

清江 楼主

2014-11-17 16:45:55

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

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

x
本帖最后由 清江 于 2014-11-19 10:45 编辑 , H: d: [8 |. a' [
; y5 f6 N" _! {& |# D

4 H/ w! N6 f- y; Q' S# P6 m11月16日培训课程的作业,运行效果如下图:
# x+ X4 @+ Q/ T7 k4 Y test001.jpg
! O. o4 c# f0 R" `" o4 o! Y, H$ f) u; y+ L. Z9 ]+ ~
开发代码如下:
5 Y: }% r2 N0 ^; e2 Z* }7 F  V' L- ^( T9 V
/* Include files */. `1 _$ k- k* b3 u! b) F
#include <stdio.h>( W) h- F' _$ q" v
#include <stdarg.h>! B! i7 P7 X) E/ M/ x
#include <uf.h>
, a' _# c4 h+ W#include <uf_ui.h>
  s$ T2 Q) n3 }9 V# ~5 _3 s1 p- S* C0 X
static void ECHO(char *format, ...)
, n7 }8 p3 v( o6 q5 a$ T1 y{( V+ ]: O' J( f4 Q
    char msg[UF_UI_MAX_STRING_LEN+1];5 x' p" C% w6 @
    va_list args;
" @3 l5 W/ I1 N8 q8 |3 ^    va_start(args, format);! y8 e5 {1 }4 Y
    vsnprintf_s(msg, sizeof(msg), UF_UI_MAX_STRING_LEN, format, args);
* w% ]' e5 f9 H. n5 V$ w& h+ U5 q    va_end(args);
4 [1 e# ?# Z* V( n: s$ ?. ^    UF_UI_open_listing_window();. R" [7 `) Z% I/ Y% Q$ ?
    UF_UI_write_listing_window(msg);$ {: }; L2 X" {. g, [# ]0 M) ~
    UF_print_syslog(msg, FALSE);
, x- `" O  w- C8 m: W}0 Y2 J7 X  H5 N

1 ]2 N+ F: S9 H, E: n#define UF_CALL(X) (report_error( __FILE__, __LINE__, #X, (X)))9 k; W, r/ p2 g9 U. P  t
2 \  N+ ^" k/ j8 i5 \
static int report_error( char *file, int line, char *call, int irc)$ D! [6 O( m8 L3 L4 r" h# e
{
2 K  k9 r' ~5 K* T% u  d5 C. a    if (irc): |+ S' @. }1 @* o  i
    {
; o9 t) t+ x. E; @5 x( h        char err[133];
) L$ o* |: R6 ~% p# x
1 ]/ q0 M0 K( O+ N' n4 H( W        UF_get_fail_message(irc, err);/ e. r. L, A1 ^! Q# R( D
        ECHO("*** ERROR code %d at line %d in %s:\n",
( S* r2 {" o. P! X( M) V+ x            irc, line, file);- |( P/ ~* i) D8 _- R+ N& J5 e. \  B, S
        ECHO("+++ %s\n", err);2 f$ `# f' C& j: B: w( A
        ECHO("%s;\n", call);- Z9 r5 X) Y- t* _
    }6 R% U! i! f* p$ z+ k

+ b$ P4 i% Z* L. y$ P% F4 l" i    return(irc);
5 }' y. M1 U0 m+ f( ?9 z+ W8 @}  A. {. N3 `/ X3 e3 T

- ~" {* g# |* l2 [' X8 m- V+ A* m8 X
* R$ }" n) S% c. X( y8 ^/*****************************************************************************; N, I( |0 ?6 \
**  Activation Methods9 U: H+ f$ C  {2 O1 i4 \& ?
*****************************************************************************/
3 A  Y- y( W. g& p% _8 w/*  New Part6 p, C" T: w7 `; |8 u& c
**      This user exit is invoked after the following menu item is activated:
: i6 d3 x% J; Y8 T1 G**      "File->New" */4 I3 H0 V- \' ~& b
extern DllExport void ufcre( char *param, int *returnCode, int rlen )* M+ h0 q1 m+ ?( x' c) s
{# T- r( x  P0 E  v* g
    /* Initialize the API environment */' t  c2 j; e3 R* o: E, L
    if( UF_CALL(UF_initialize()) ) 7 M. O: D! k/ O' j6 r' C3 b8 d
    {
( w3 ]# ?# o3 B        /* Failed to initialize */
0 u$ D( v9 z, [' V* Y! n+ U+ N2 `3 w        return;
% c; N9 x& N" t& j8 K$ f# a    }
1 |) B$ t( p  I) B# @0 R, J; ?" c" s& m3 w: w3 ^! s7 b# h* K. j
    /* TODO: Add your application code here */7 L, [8 n. y. V" F  l
/ U- \! G. p" M8 F( U! ]3 q# b9 X
        uc1601("新建部件名称规则:XjfXXX(Xjf000)",1);
, m( R0 U& J6 m8 o6 C+ C0 s  V1 K7 I8 g1 e
    /* Terminate the API environment */. Z; \$ j9 y- {- V9 e3 t5 M
    UF_CALL(UF_terminate());- q8 y% }) q7 x
}
" F/ ?; s# U' o' j# [+ [. ^" d/ ?* |! T7 S; g/ h" N
/*****************************************************************************
/ P* {# I# Z2 o. Q9 `**  Utilities+ N0 f4 W' Z" B! J: @# C9 D
*****************************************************************************/
' @: {* ^0 ]) s, O) n) S3 D( S
. ~* @* M% e; m/* Unload Handler
) N9 m( r9 ?4 }. C**     This function specifies when to unload your application from Unigraphics.
& L, U) Z: q2 @" H8 K# g**     If your application registers a callback (from a MenuScript item or a8 [# _9 p# n, n; ~  x. w7 G! f
**     User Defined Object for example), this function MUST return8 \  T+ c3 _0 _) B5 }: h) A
**     "UF_UNLOAD_UG_TERMINATE". */1 R" ^/ S' m* `2 ~# ?; K% {
extern int ufusr_ask_unload( void )6 l  v8 O# \1 F8 g, l- u0 J
{
6 a: r0 u! `9 @# ?) S    return( UF_UNLOAD_IMMEDIATELY );* n5 w/ K. O1 t, A5 G
}. J" b  G. G5 F, o! c4 k
, K$ d# L& G6 a* k* z
6 [; i3 k. J. o8 h1 U
6 X% Q+ k% U! y/ p+ u3 c

& ~1 z) [7 A6 x2 H9 F2 \1 [

评分

参与人数 1PLM币 +5 收起 理由
admin + 5 很给力!

查看全部评分

上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

全部回复1

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

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

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

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

    我知道了