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-国产软件践行者

[求助] 在制图中标准垂直尺寸,麻烦看下代码按书上的老出错

  [复制链接]

2014-8-13 21:53:12 4244 4

北方的候鸟 发表于 2014-8-13 11:23:26 |阅读模式

北方的候鸟 楼主

2014-8-13 11:23:26

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

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

x
extern DllExport void ufsta( char *param, int *returnCode, int rlen )& ?+ }# P7 ]$ A: @) T$ L; v( e
{
$ d; q! x/ w- n/ b+ q" c. C    /* Initialize the API environment */
$ S$ R0 [8 w9 N! g1 Q5 O    if( UF_CALL(UF_initialize()) ) 3 ?2 A# g5 J, W/ [
    {
! N8 e" p  u' j% I5 d6 x        /* Failed to initialize */
' b: t8 a: q3 ~! x+ `/ M+ O9 f        return;$ h; Z5 S- c- H& Q+ j' }) j2 _
    }
- d% G& N$ J6 r2 Z3 }    6 H) S/ Y( M+ J) Y% Z
    /* TODO: Add your application code here */
9 U5 l- Q' i4 L. `) `  i+ t        tag_t part_tag;/ ~( Y# T9 A& t$ @" A
        part_tag=UF_PART_ask_display_part() ;4 @: a4 ^2 A0 n: c* [+ {" e; X
        int num_views;
  _% X: Y: Q7 m        char message[MAX_LINE_SIZE];
: a7 H" C4 K& R: O) u, {; v* x) U        1 w) j$ X  J& e" d2 F
        char drawing_name[MAX_ENTITY_NAME_SIZE]="my_drawing";# M& H% v9 V- @
        UF_DRAW_info_t drawing_info;+ {) x( a% `  o
        tag_t drawing_tag =NULL_TAG;0 A8 ~6 m; A4 U' C9 Q! ]2 O) I
        tag_t view_tag=NULL_TAG;
: b. \) M3 \- U! m( V( m' V3 S$ ]% f8 y1 n3 w# F; T
        tag_t front_view_tag=NULL_TAG;$ i5 Y, }, y  c7 d2 K
        char *front_view_name="FRONT";$ K% ^& N6 L: c) b9 E
        double front_reference_point[2]={210,400};
) d6 k1 j! l) j& V/ P. P: x1 m- g# ~* E8 `: w2 b, u0 V
        tag_t tri_view_tag=NULL_TAG;
& |3 ]" H; E# G        char *tri_view_name="TFR-TRI";
( S6 g$ q2 ]' X# U  e! p; q        double tri_reference_point[2]={630,120};
5 h: |! T: I; P7 ]- Q9 [5 y; M* e" _% N3 J
        UF_DRAW_proj_dir_t botton_projection_direction=UF_DRAW_project_below;
6 v& i. L" n( o6 a/ n% ?9 Q        double botton_reference_piont[2]={210,120};; k" M& {" T% f" q! P8 k
        tag_t botton_view_tag=NULL_TAG;$ q& L: e3 o8 k

- p" c8 s4 S/ C- h# _        UF_DRAW_proj_dir_t left_projection_directiom=UF_DRAW_project_left;% X+ i9 x- \' ^+ `  i
        double left_reference_piont[2]={630,400};
5 V( L4 ~" ?+ T1 ~        tag_t left_view_tag=NULL_TAG;- k, k. h5 I9 W" D  s9 w9 v
! n6 f5 ^  B5 y9 x
        drawing_info.drawing_scale=1.0;4 {7 ]4 G& _' a& D
        drawing_info.projection_angle=UF_DRAW_THIRD_ANGLE_PROJECTION;
; l2 c% C5 A' Q; O/ m# N        drawing_info.size .metric_size_code=UF_DRAW_A1;
3 q0 X7 _0 x( p4 \! ?& ~& K  o        drawing_info.size_state=UF_DRAW_METRIC_SIZE;
* P. j4 U$ T0 b' Q5 {* H' ]        drawing_info.units =UF_PART_METRIC;5 d7 a  A8 ?# U2 J% `6 r# f
& ~& ]  I0 [3 b. X2 k  b: j% I
        UF_DRAW_create_drawing(drawing_name,&drawing_info,&drawing_tag);
; \7 C, a2 U- G        UF_DRAW_open_drawing(drawing_tag);
7 G0 C9 k1 R! F3 j$ ]0 S5 |5 p+ r" u
        UF_DRAW_view_info_t view_info;2 J" k" z% D3 @- ]- G
        UF_DRAW_initialize_view_info(&view_info);. E1 \7 c" T( Y* \
( c6 X# G0 r' J% u4 j
        view_info.view_status=UF_DRAW_ACTIVE_VIEW;7 [, s' Q5 H4 Z% S/ \8 x
        view_info.anchor_point=NULL_TAG;
. R+ R9 n9 q  W0 g0 n$ M- M! i        view_info.view_scale=1.0;0 ]0 Z  }9 I6 F4 r3 C) y& @
        view_info.use_ref_pt=TRUE;  S0 M8 g' s) _) U
        view_info.inherit_boundary=TRUE;
; f% G* z% S) x) c5 ^/ w& R/ Z! Q8 I$ `2 ]
        UF_OBJ_cycle_by_name_and_type(part_tag,front_view_name,UF_view_type,TRUE,&view_tag);3 s. y) s5 ]# Q- E: c
        if (view_tag!=NULL_TAG)
! W$ i. t9 x: N% T' I        {
" s& `$ w/ }% q9 D$ {                UF_DRAW_import_view(drawing_tag,view_tag,front_reference_point,&view_info,&front_view_tag);# d" ?7 K5 R# v7 c$ ^5 \% E
                UF_DRAW_define_view_auto_rect(front_view_tag);
2 O0 f0 u% ~5 }2 P        }$ J4 Q  \3 @- H/ \. N
        view_tag=NULL_TAG;9 B' S- }& Z; M3 k1 t% U
1 [. h- f$ W$ w, V6 O
        UF_OBJ_cycle_by_name_and_type(part_tag,tri_view_name,UF_view_type,TRUE,&view_tag);
% D* D9 f, F7 r0 r/ C9 U        if (view_tag!=NULL_TAG)
* R1 z" C1 i# @, O9 G& w        {
0 L7 t! V/ u8 n: W; G2 a7 O( g6 _                UF_DRAW_import_view(drawing_tag,view_tag,tri_reference_point,&view_info,&tri_view_tag);
% k/ y8 x7 K3 @# x; E4 i                UF_DRAW_define_view_auto_rect(tri_view_tag);9 T& R3 ~" N6 P4 `  b- F
        }  ~7 m5 W( Q# [
    if (front_view_tag!=NULL_TAG)
7 r0 w; L: j/ y6 V9 f    {
& R$ w/ t2 e! f) c                UF_DRAW_add_orthographic_view(drawing_tag,front_view_tag,botton_projection_direction,botton_reference_piont,&botton_view_tag);
# N/ F, D, ~9 q- M                UF_DRAW_define_view_auto_rect(botton_view_tag);
7 G0 |6 f: I6 b; _, {! g         }2 H- k% P8 o8 u1 Y
        if (front_view_tag!=NULL_TAG)7 B2 ~4 P. e; |/ `* B
        {
' ~0 n8 T# t" |* m; D7 {4 l) I- A' K                UF_DRAW_add_orthographic_view(drawing_tag,front_view_tag,left_projection_directiom,left_reference_piont,&left_view_tag);
( s5 t/ Z& B, F                UF_DRAW_define_view_auto_rect(left_view_tag);
  F  |: P4 U" h9 O        }
8 l: y* `. t* V7 a. N6 \, T1 u! L/ _" S+ _
7 _. g$ X' H$ i: K, ~9 b% P3 C0 d3 m
        UF_DRAW_ask_num_views(NULL_TAG,&num_views);
' h# i8 E6 x- f4 L& r        UF_UI_open_listing_window();
" e! N2 c+ O& E% d! i" U$ R% w        sprintf(message,"当前图纸共有:%d个视图 ",num_views);
3 B6 ^2 l$ p7 |- R' H" w( }        UF_UI_write_listing_window(message);) q* R. }5 p4 W, T+ I

  B0 E( p, Y+ ^2 W8 I8 H8 w
& \- Z+ o! }/ {
7 I; n- R0 s% N        tag_t object=NULL_TAG, front_objects[6];
6 h/ D0 a- [8 u4 ~* V0 o        int    subtype, type, count=0;
' J  h& |, B9 v        UF_VIEW_cycle_objects( front_view_tag, UF_VIEW_VISIBLE_OBJECTS, &object );
- Q7 q7 d6 t7 W        while(object!=NULL_TAG)
0 k, Q7 k: Y( Y, K6 z        {/ b' c9 N3 U  h: O
                UF_OBJ_ask_type_and_subtype (object,&type, &subtype );2 r& _4 r" U* _- `- c4 Q
                if(type==UF_solid_type  && subtype==UF_solid_edge_subtype )& U9 h3 d, I; _/ N
                {
) h2 L8 L, ~; D7 B& v                        front_objects[count] = object;. N# Y3 k, O6 U$ F, a* Y& J6 l: x
                        count++;
, L' `/ U5 n4 ]3 M- R0 g                }% q1 M4 \1 v3 {
                UF_VIEW_cycle_objects( front_view_tag, UF_VIEW_VISIBLE_OBJECTS, &object );
; F- w. A6 N6 I% c. O        }        % _0 [& w! [+ Y4 k- e9 U
        UF_DRF_object_t object1;
4 I; [6 O$ D; B        UF_DRF_object_t object2;
/ O$ z$ {9 D6 h- V; f5 C        UF_DRF_init_object_structure( &object1 );
5 W. c0 C; H, q# p# q* u* G        UF_DRF_init_object_structure( &object2 );
1 T: s1 c6 c# B# ]$ D. [& k        object1.object_tag = front_objects[ 0 ];
) c% I% L6 E% Y- B5 r2 e2 R        object1.object_assoc_type = UF_DRF_end_point;$ J7 }( |" b6 q* Z9 X
        object1.object_assoc_modifier = UF_DRF_first_end_point;
& a) x/ t9 H, u8 D1 ^/ E# h% E% o) X        object1.object_view_tag = front_view_tag;! |3 `  {7 X3 V/ U' I/ |9 E( s
        object2.object_tag = front_objects[ 1 ];
0 B& Q& C; U" R; T" `        object2.object_assoc_type = UF_DRF_end_point;; m$ ?$ n% `8 W. T$ x! H
        object2.object_assoc_modifier = UF_DRF_first_end_point;
* e* O; A3 f9 b. n' a: G        object2.object_view_tag = front_view_tag;
; T: d. \% R7 {        UF_DRF_text_t dim_text;
2 w2 y5 V% J! M& Z; z6 X        dim_text.lines_app_text = 0;+ }' Z: A4 r! a: y" ~. o6 t) s( P
        dim_text.appended_text = NULL;
% i/ |; i1 C: Y6 L0 O        dim_text.user_dim_text = NULL;8 L! X' z4 d# H
        double dimension_3d_origin[ 3 ] = { 360, 400, 0.0 };6 |% |. a3 d* c5 N* j$ K
        tag_t dimension_tag=NULL_TAG;
7 F5 B, Y9 Y; ~9 X        UF_DRF_create_vertical_dim( &object1, &object2,, ?$ N( m6 u2 b$ ~! H: V- n
                &dim_text, dimension_3d_origin, &dimension_tag );    y$ V: z7 `! C" S  B

. L8 h% h0 [3 l! t! W# S7 ~- ~/ \+ P; ~! u- B) {- `) O# N
        UF_DRAW_upd_out_of_date_views(drawing_tag);
3 m! o5 U2 A, Y9 G2 {0 Z    /* Terminate the API environment */8 }( s# m2 {& D5 E
    UF_CALL(UF_terminate());! T# d% [* Y! o
}
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

全部回复4

admin 发表于 2014-8-13 15:15:49

admin 沙发

2014-8-13 15:15:49

第一 确定你编译的版本 和 你说的 书上的 是不是 同一个版本
9 U) E  R, F, f, o" L* c7 N; P2 m
5 M6 C: H5 s; l& O如果是 & r- }4 K- z7 ]: S/ h1 [
那就是书有问题 ,或者是你看书设置的环境有问题,那里报错,看code  debug下
/ T/ d2 ?$ S$ a5 @" V3 F1 X( f. t* v
如果版本不一致,那很有可能, 这种问题 你自己通过报错哪一行解决了
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

北方的候鸟 发表于 2014-8-13 19:08:40

北方的候鸟 板凳

2014-8-13 19:08:40

UF_DRF_create_vertical_dim( &object1, &object2, &dim_text, dimension_3d_origin, &dimension_tag );  8 V% z( b% Z" b7 m) }: ?# H# c& X* c

9 u2 O* u+ l8 w% e9 T1 K$ f0 v+ z" V书上用的是NX7.5我用的是NX8.5,就知道这行出错了。这一行错误但是我找不错误原因。
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

北方的候鸟 发表于 2014-8-13 20:43:32

北方的候鸟 地板

2014-8-13 20:43:32

[img]C:\Users\pc\Desktop\捕获.PNG[/img
& A% X1 s+ i1 ?0 f6 F2 c4 U( u当前图纸共有:4个视图 *** ERROR code 68 at line 207 in drawing_view.cpp:6 q+ I; ~2 N4 K0 b$ R- {  P2 _
+++ Encountered unexpected NULL pointer. See system log for details
+ V6 f9 `# t+ }. w' TUF_DRF_create_vertical_dim( &object1, &object2, &dim_text, dimension_3d_origin, &dimension_tag );' X. ^. D6 Q# R8 c# w# R) ^" t
空指针,还是没找到!
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

mildcat 发表于 2014-8-13 21:53:12

mildcat 5#

2014-8-13 21:53:12

北方的候鸟 发表于 2014-8-13 20:43
* s* U* l: j- l0 U0 {+ S( F+ }C:\Users\pc\Desktop\捕获.PNG[/img
+ F# S' r1 N0 d1 P0 h  q当前图纸共有:4个视图 *** ERROR code 68 at line 207 in drawing_vie ...
2 N  f7 H( S, t  l* s$ g+ F
那就分析这个地方啦  4 b  j; G/ e) J8 A
  @: S* [) O2 x/ b! U7 o
我没法给你解答 没时间给你调试这个4 X$ M" v0 I, f! \! W  a* E
* l3 x& ^! q; u7 A
你多看看 我录的 NX9 的二次开发视频教程吧  书上的都是比较老的东西了
该会员没有填写今日想说内容.
回复 支持 反对

使用道具 举报

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

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

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

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

    我知道了