如何更好地使用二次开发 函数曲面函数

只需一步,快速开始
春天-绿意盎然
秋天-金色丰收
夏天-火红夏日
秋天-秋日庭院
冬天-冬日私语
秋天-秋高气爽
秋-动漫家园
后使用快捷导航没有帐号?
NX11.0最新原创视频:
NX 最热视频教程:
NX入门学习视频:
NX 进阶实例视频:
NX 高级专题视频:
Teamcenter视频:
PLM之家合作业务:
查看: 1931|回复: 1
NX二次开发中,其他一些有用函数的使用大全
TA的每日心情无聊前天&13:32签到天数: 40 天[LV.5]常住居民I主题帖子积分
PLM之家mildcat
7,裁剪片体
tag_t&&*trim_2 c( v5 i3 ^. \5 K; a. @! j) ^1 ?
trim_objects =new tag_t[count];- M7 ^/ F* n* A3 v
trim_objects =bound_2 ?' \5 [- L6 U5 w6 k
voidtrim_sheet()
& && &UF_MODL_vector_t projection_9 @, k- z% Z3 K3 x2 p4 ?
& && &projection_method.reverse_vector=0;
& && &projection_method.vector_type=UF_MODL_VECTOR_DIRECTION;6 _4 z% d: k8 s
& && &UF_MODL_vector_defined_by_union_tdir1;; a: t2 v&&E+ E* d. {# i
& && &UF_MODL_vector_direction_t dir2;
& && &dir2.xyz [0]=dir[0];
& && &dir2.xyz [1]=dir[1];
& && &dir2.xyz [2]=dir[2];% W' E- R0 _, v
& && &dir1.direction=dir2;
: j% A" Y6 j7 I0 {9 T6 F, t# K
& && &projection_method.defined_by=dir1;
& && &double point_coords[3] ;9 n, i7 Y9 K9 \; S& Z) X& X( d
6 [7 C$ V1 @# c
& && &point_coords[0]=center[0];
& && &point_coords[1]=center[1];- l9 x% }&&O# q3 Y' l! C
& && &point_coords[2]=center[2];% s, O6 M0 p) b2 S7 z* s! o7 S- A2 k
& A! ?( M9 P) l
& && &int gap_point_
& && &double *gap_0 ?8 ~0 W, g% _8 T&&[
& && &tag_t feature_obj_8 @# T) H9 R" M' M6 H
& && &UF_MODL_create_trimmed_sheet(sel_sheet,edge_count,trim_objects,&projection_method,: i% A& `* j" W$ r
& && && && && && && && && && && && && && & 0,1,point_coords,0.1,&gap_point_count,&gap_points,&feature_obj_eid);
8,offset偏移+ q6 f1 C; j7 k% v) m' k
, H- d) {+ D4 Y( t
char& &distance_str[] = {&10.0&};//偏移的距离( W" E+ r4 V$ {7 \$ ]6 C. G
/ `3 d6 C/ A6 I6 C' w, E' j- {; j
tag_t *offset_
UF_CURVE_offset_distance_data_t&&offset_
offset_distance.distance= distance_+ w% H! ]. ?; D8 B0 v: o&&G
offset_distance.roh_type=1;) Z+ i! ]; C$ a3 Z&&b! z
UF_STRING_t& &input_
input_string.id=curve_//加入想要偏移的线
input_string.num=1; //偏移矢量方向数量
input_string.string=&string_//偏移线的数量
intstring_dir=UF_MODL_CURVE_START_FROM_END;; y$ g6 P- |' b3 y
input_string.dir=&string_
UF_CURVE_offset_data_toffset_6 E7 h+ k! k) k3 Y5 @4 y4 r3 v
offset_data.offset_def.distance_type1= &offset_4 l& b' Y2 @, A
offset_data.input_curves= &input_8 L0 j: q. c$ x" D1 k! n/ l+ g: ?, `
offset_data.approximation_tolerance= 0.01;
offset_data.string_tolerance=0.001;
offset_data.offset_def.distance_type1= &offset_- M) W3 u. Z! L$ X: C4 W; {5 }
offset_data.offset_type= UF_CURVE_OFFSET_DISTANCE_TANGENT;
UF_CALL(UF_CURVE_create_offset_curve(&offset_data,
&num_curves,&offset_curves));6 O4 j7 p% r* C, F: Y, J
9,创建平面# P% t1 C4 _6 N3 S; X9 N
UF_STRING_' O& h$ u: d7 G' }! Q6 K- |) Y# F3 R
UF_STRING_p_tge = &
+ @4 ]4 `; r9 t
UF_MODL_init_string_list(ge);( N2 {, N/ j1 }8 {5 ~
UF_MODL_create_string_list(1,12,ge);; y& V9 B9 ^' N5 m0 K
ge-&string[0]= 1;
ge-&dir[0]= 1;//指定线从开始到结束&&n& w% d& Z" }- ]9 P
ge-&id[0]= arc_//指定边界的id
doubletol[3];7 I+ j# ^0 ?2 |. g' @* D
tol[0] =.001;//直线公差
tol[1] = .5* (PI/180);//圆弧公差
tol[2] =.02;//不起作用2 Z: r3 o, u) E; O2 D5 ]" |- R
UF_CALL(UF_MODL_create_bplane(ge,tol,&bplane));
10,选择# g( j&&z4 V$ A! g/ |+ Q
1),点选择
tag_t point_
double point[3];7 @8 p7 e7 Q$ Q, M
& && & UF_UI_POINT_base_method_t&&base_method=UF_UI_POINT_INFERRED ;&&4 \, O2 c1 Y7 C( K' A- r: y
& && & intpoint_
UF_CALL(UF_UI_point_construct(&选择起点&,&base_method,&point_tag,; i: E" u0 P) j( S6 X/ ~9 O
point,&point_res));
if(point_res=UF_UI_OK&&NULL_TAG!=point_tag)
}/ a. W. h( w$ a8 g8 L. |/ D
2),向量选择
& &&&int&&mode = UF_UI_INFERRED ;
& &&&int&&disp_flag = UF_UI_DISP_TEMP_VECTOR;
double vec[3];, M; x* K5 V4 S7 C3 T&&T8 U" H% z
double vec_pnt[3];
int res_vec = 0;/ u7 m&&g. J) _
& &&&UF_initialize();&&
& &&&ifail=&&UF_UI_specify_vector( &Choose aVector&,&mode,disp_flag,! K8 f6 [/ @1 ]- R) e
& && && &&&vec,vec_pnt,&res_vec);
& &&&if( ifail != 0 || res_vec!= UF_UI_OK )& &( y% V* y/ C+ Z) A) q
& &&&{& &&&
& && && &&&UF_UI_ONT_refresh();
& && && &&&printf(&No vector selected \n& );
& &&&}2 B. a- O2 p' S- L* r/ E, z9 i4 l
& &&&else" W( Y3 x' \8 J$ D/ I3 \6 f2 |
& &&&{6 S6 j6 h8 i5 k
& && && &&&printf(&Vect base (%f, %f, %f), direction (%f, %f, %f) \n&,
& && && && && &&&vec_pnt[0],vec_pnt[1], vec_pnt[2], vec[0], vec[1], vec[2] );( C2 q( e5 E, \/ ~$ y/ k
3),平面选择& [# ^7 I1 _&&R$ E. @( \
tag_t plane_eid=NULL_TAG;
double orientation[9] ={0,0,0,0,0,0,0,0,0};
& &double origin[3] = {0,0,0};& [# ?) Y, z8 k# d" \
& &double pts[6] = {0,0,0,0,0,0};
& &int i, error_code = 0;
& &int mode, display,. X: n&&G/ N+ \, ^) G* u4 `
& &mode = 1;& && && && && && &&&/ c- s$ {+ K2 e4 u! `" A
display = 0;& && && X. t6 l8 t0 N& \/ G: V
UF_initialize();
& &error_code = UF_UI_specify_plane(
& && && &&Select Plane&, &mode, display,
& && && &&response, orientation, origin,&plane_eid);5 C3 |1 r, e, b( P' e9 @&&|
& v, R) x2 V" d! r& ~8 i6 V
& &if ( !error_code && response != 1&& response != 2)- N/ ]) g) J! r/ ~8 N&&`
& && && && && && && &for (i=0; i&3; i++)
& && && && && &pts = origin +
& && && && && && && &for (i=3; i&6; i++)
& && && && && &pts = origin[i-3] +% k) w( P; ^5 b# r/ {6 S% g
& && && &FTN(uf5374)(origin,pts,&pts[3],&plane_eid);" p2 Q. r! z1 W&&R4 ^6 P
11,临时点,线- p0 [- C% T) t: o3 \6 q
void display_temporary_point_line (double point1[3], double point2[3])
&&UF_DISP_view_type_twhich_views = UF_DISP_USE_WORK_VIEW;/ e" H% x9 I5 w9 |1 x7 C* D
&&UF_OBJ_disp_props_) f+ u" h( A8 v) n- _) @' b
&&color.layer= 201;
&&color.color= 186;" X; e" X) G. Z9 l* W
&&color.blank_status= UF_OBJ_NOT_BLANKED;
&&color.line_width= UF_OBJ_WIDTH_NORMAL;
&&color.font=0;: u4 C: n6 ~# H0 H: @0 N9 U
&&color.highlight_status= FALSE;9 ]$ |& C1 T& i+ G&&A! S: T&&D
&&UF_DISP_poly_marker_tmarker_type = UF_DISP_POINT;1 [$ `/ ^, z/ g1 s$ Q& D
4 W; q- ^& z" C# ?1 _! O1 L0 [
UF_DISP_display_temporary_point ( NULL,which_views, point1, &color, marker_type);2 V, y7 w/ c4 B4 C
UF_DISP_display_temporary_point ( NULL,which_views, point2, &color, marker_type);
UF_DISP_display_temporary_line ( NULL,which_views, point1, point2, &color);&&?' K) a' a% Q0 w
}6 X" l3 m# r! |7 b
12,WCS与绝对坐标转换
& && && && && && && && &voidcycs_wcs(double point[])/ l" o- K' x&&x1 Q5 s3 b
& && &tag_t&&wcs_id,matrix_9 P: F1 Y( X3 z( P7 o
& && &double matrix[ 9 ];
& && &//wcs_origin:工作坐标系原点,vec:工作坐标系轴向量,point_origin:点到原点的矢量
& && &double wcs_origin [3],vec[3][3],point_origin[3];6 Z, m2 H- g
& && &//1,得到工作坐标系7 G1 @5 Y: H& j& I
& && &UF_CSYS_ask_wcs(&wcs_id);
& && &UF_CSYS_ask_csys_info(wcs_id,&matrix_id,wcs_origin);& && && && && && &&&; x' v! R, A0 \! z
& && &UF_CSYS_ask_matrix_values(matrix_id,matrix);
& && &//2,得到工作坐标系轴向量1 x& _+ \/ g9 A4 i$ ]6 ]) o+ l8 F
& && &UF_MTX3_x_vec (matrix,vec[0]);1 Q0 `! ]7 b# o" ]1 t+ p5 [- W
& && &UF_MTX3_y_vec (matrix,vec[1]);4 i- }8 `6 }* ?
& && &UF_MTX3_z_vec (matrix,vec[2]);2 A4 M9 z7 n6 p! G9 T" a: `
2 d+ G- @, E' W&&t6 \9 m' g* d
& && &for(int i=0;i&3;i++)
& && &{& &&&: x. ~: j5 ^; T) S1 J&&t
& && && && &
//3,得到点到工作坐标系原点矢量3 d" J8 L3 p! z$ Y7 d
& && && && &UF_VEC3_unitize(vec,0.000001,&tol,vec);1 r' k# P* T( j0 {" k' W+ ]
//4,得到点到工作坐标系原点矢量
& && && && &point_origin=point-wcs_
& && &for(int j=0;j&3;j++)
& && &{&&q% G: M* `+ c2 Y1 n% \
& && && && &UF_VEC3_dot(point_origin,vec[j],&point[j]);5 g5 v0 h- g+ d8 G7 F
& && &}7 [& r& s) R: o. ^2 ?
13,三点求圆心5 Q/ h6 D&&^$ V: W
#include&iostream.h& + [" W: P+ Y3 L* n. o
#include&math.h&
6 |$ ~0 R8 u# J3 r8 N
int main()+ |9 T, q) \. u5 e! f/ j
{+ H) K% n' u8 q0 F+ G* O$ s: q
& && &int x1,y1,x3,y3;4 I2 R7 q. f8 w
& && &double a,b,c,d,e,f;
& && &doubler,k1,k2,x,y,x2,y2;
& && &cout&&&请输入x1,y1,x2,y2,x3,y3&&&6 f# n$ n& n+ G1 O3 `* y5 t" L
& && &cin&&x1&&y1&&x2&&y2&&x3&&y3;/ i1 i0 j- g* N7 P, }1 {! W6 H
& && &if((y1==y2)&&(y2==y3))/ e- K. s) Y. D) g: D
& && &{8 {. ^$ H% B! X5 c# _! I+ \
& && && && &cout&&&三点不构成圆!&&&5 n- e1 ]6 P/ |) k- F* w, f* W
& && && && &return 0;
& && &if((y1!=y2)&&(y2!=y3))! o/ ?1 j$ F0 M. \
& && && && &k1=(x2-x1)/(y2-y1);
& && && && &k2=(x3-x2)/(y3-y2);' n0 j! i9 H" y/ o$ e) A- }/ t
& && &if(k1==k2)* @, Q1 M- O3 s5 H6 ^6 V3 b# P
& && &{7 |6 w+ \6 Y$ x- q, k
& && && && &cout&&&三点不构成圆!&&&
& && && && &return 0;
& && &a=2*(x2-x1);2 e1 m" @7 l* a
& && &b=2*(y2-y1);
& && &c=x2*x2+y2*y2-x1*x1-y1*y1;
& && &d=2*(x3-x2);
& && &e=2*(y3-y2);
& && &f=x3*x3+y3*y3-x2*x2-y2*y2;1 n&&~/ A' v6 ~/ c
& && &x=(b*f-e*c)/(b*d-e*a);: m+ |7 f: p. |* y
& && &y=(d*c-a*f)/(b*d-e*a);; v* }' Z: z7 {
& && &cout&&&圆心为(&&&x&&&,&&&y&&&)&&&- u- d&&a& C3 \/ V! ]&&S
& && &r=sqrt((x-x1)*(x-x1)+(y-y1)*(y-y1));
& && &cout&&&半径为&&&r&&0 |: E; |" u! n1 v9 Q) K% x( r+ O
& && &return 0;
14,查找圆心9 D/ {( n1 f+ r& x# r6 B
& && && && &UF_EVAL_p_2 C&&y8 @, n, c
& && && && &UF_EVAL_arc_
& && && && &UF_EVAL_initialize(obj_tag,&evaluator);
& && && && &UF_EVAL_ask_arc(evaluator,&arc);
& && && && &UF_VEC3_copy(arc.center,point);& && && &&&
15, message_box
void message_box(int *res_mes)4 i. s: N6 D0 F9 ^/ d1 `! g
{; I" u$ {2 o$ X! B4 b
& && &UF_UI_message_buttons_& @7 Q$ m. \% }
& && &buttons.button1=TRUE;6 C5 ~# Z. b8 l( W
& && &buttons.button2=FALSE;&&K% M% K2 Z3 r' F# F# R
& && &buttons.button3=TRUE;
& && &buttons.label1=&OK&;4 j) q) \! ~& P, Z
& && &buttons.label3=&CANEL&;7 D7 f# g$ ~0 Z. Y+ A+ R' O8 a
& && &buttons.response1=UF_UI_OK;
& && &buttons.response3=UF_UI_CANCEL;8 u! `$ o, y4 [& u& v/ z
' U; Y: @8 D. L
& && &char *string_
& && &char*material_msg=&ALL selcted objects will be removed&;3 X1 ~+ T$ s/ m
& && &string_msg =material_
" D8 r/ _2 t6 w8 h. |+ ?
& && &UF_CALL(UF_UI_message_dialog(&&,
& && && && &UF_UI_MESSAGE_WARNING,3 n9 r&&t! v8 c# x, i" {
& && && & &material_msg,! y* H- _* o3 J. a! j
& && && && &1,
& && && && &TRUE,( O) C5 H/ J/ L+ P
& && && && &&buttons,
& && && && & res_mes ));
}" I1 O% \&&Z, |& d( v& @, q: g
16,选择过滤
static int init_add_face( UF_UI_selection_p_t select, void *client_data)
& && &int nums = 1;
& && &UF_UI_mask_t masks[] ={# N; i& ?% n9 y( p$ X+ i
& && && && &UF_solid_type, 0,UF_UI_SEL_FEATURE_ANY_FACE};
& && && && &if(
& && && && && && &(UF_UI_set_sel_mask(select,UF_UI_SEL_MASK_CLEAR_AND_ENABLE_SPECIFIC,nums,masks)==0). f8 w( Z9 E7 P% j
& && && && && && &&&(UF_UI_set_sel_procs(select,filter_proc_circle,NULL,client_data)==0)5 c3 {4 V&&Z9 o# S& J
& && && && && && &)
& && && && &{9 U7 A3 D% `4 h' d4 e
& && && && && && &return(UF_UI_SEL_SUCCESS);
& && && && &}( p, s2 W" B0 m1 g4 G&&N, C4 ]- A
& && && && &else! O% f- I- P$ }$ a6 k6 X% a' d&&d$ h) F
& && && && &{& &&&
& && && && && && &return(UF_UI_SEL_FAILURE);
& && && && &}
}6 O( _' Q: D0 h3 h+ P8 d
int find_tag(
& && && && && && &&&void * client_data,//用以传输过滤资料- t0 F0 S1 D6 s9 F$ @7 T' v7 u: _
& && && && && && & tag_t object//现在鼠标所选物体ID4 L4 F! I4 r# s5 J. }: c
& && && && && && & )
& && &user_data *
& && &obj=(user_data*)client_9 d* y5 ~8 n' a+ \+ B) `& ^+ V
& && &int find_face=//接受7 m4 U8 f8 ^! a
& && &char *string1;
& && &string1=newchar[133];
& && &string1=UF_TAG_ask_handle_of_tag(object);$ r&&T* v: x. V&&P: w6 S) W
& && &for(int i=0;i&过滤的数目;i++)
( ]1 O% G2 t9 f2 R6 f1 p+ [
& && && && &char *string2;
& && && && &string2=newchar[133];( U, s: s4 w* Q
& && && && &string2=UF_TAG_ask_handle_of_tag(物体ID);
& && && && &if(strcmp(string1,string2)==0)' I( `) U- Z- \
& && && && &{8 w7 }& ~+ q+ o* B2 D, N
& && && && && && &find_face=FALSE;//不接受
" H/ |* V9 G" O( ?
& && && && &}
& && && && &delete []string2;
& && &delete []string1;
& && &return find_# W& w9 U) F- n* L
}5 I5 r" E9 w5 \) e$ Z# C; c&&?
+ ?, g) o5 e9 ?! M: U&&~( c' j
PLM之家,专业的NX,Teamcenter学习视频网。PLM之家科技,承接二次开发,视频定制,实施培训等业务。 && --&--&欢迎联系我们--QQ
该用户从未签到主题帖子积分
新手上路, 积分 10, 距离下一级还需 40 积分
新手上路, 积分 10, 距离下一级还需 40 积分
z支持z支持z支持z支持z支持z支持z支持z支持z支持z支持z支持z支持z支持z支持z支持z支持z支持z支持z支持z支持z支持
plm之家第六批nx 二次开发培训报名接近尾声,下批培训将在2017年举行,早学早知道,再特加5名学员,预报从速!!原官方人员上课,名额有限,一次报名,不限次数参加培训!更有海量视频资料赠送,享受plm之家VIP待遇!详细了解内部开发技巧!
Powered byNX二次开发应用_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
NX二次开发应用
&&NX二次开发应用介绍
阅读已结束,下载文档到电脑
想免费下载更多文档?
定制HR最喜欢的简历
下载文档到电脑,方便使用
还剩11页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢UG NX二次开发中常用的ufun API函数大集合,熟悉这些就够了
我的图书馆
UG NX二次开发中常用的ufun API函数大集合,熟悉这些就够了
二次开发中常用的ufun API函数大集合,熟悉这些就够了
3 g2 @+ g, h2 h' y* e
这些函数是经常使用的,可以作为参考!
$ J3 Q! ]$ p' F. r4 t& }, E
(1)和Part有关% o* e" g&&l: J5 `&&c# W1 I- [& _' u
UF_PART_open1 S% Y5 b7 ]( I( T4 X1 k
UF_PART_close_all
UF_PART_save_all
UF_PART_ask_part_name
UF_PART_ask_part_tag6 A. m2 D6 M: [8 i+ H9 U
UF_PART_ask_units& l$ e- o) V3 g* Z5 Y. `* J' H
UF_PART_ask_display_part
UF_PART_set_display_part
UF_PART_is_modified0 p2 w& A. Y; V: R
(2)和菜单有关
uc1601 — Display a Simple Message on the Cue line
UF_UI_set_status- [&&Y5 E7 s( C$ u. c/ t' O
UF_UI_set_prompt8 ^. [* ~: Q: B, N( X
uc1603— Display Selection Menu
uc1605— Multiple Selection Menu+ D2 W% a) O- t
(3)和选择显示有关
UF_UI_set_select_mask&&E" V/ T0 P2 N0 @; t& _+ G/ n$ \
UF_UI_select_with_class_dialog5 b7 a6 j1 A' a/ F4 K% S6 S
UF_UI_select_with_single_dialog
UF_UI_set_sel_mask
UF_DISP_set_highlight
UF_DISP_set_display0 g9 r- o) y, ^) c
UF_DISP_add_item_to_display
UF_DISP_regenerate_display
UF_DISP_refresh
(4)和装配有关
UF_ASSEM_create_component_part
UF_ASSEM_create_mc_array
UF_ASSEM_ask_work_part! O8 [# [* {" r4 N% b# C6 O! H: E
UF_ASSEM_ask_component_data* N; m& t3 H2 y* j0 m4 t
UF_ASSEM_ask_mc_array_data1 \1 N2 n- |+ L1 Q2 u: w
UF_ASSEM_ask_assem_options
UF_ASSEM_is_occurrence
UF_ASSEM_is_part_occurrence
UF_ASSEM_ask_prototype_of_occ: i" Y$ b/ h9 d# w1 t
UF_ASSEM_ask_inst_of_part_occ" _. L0 W, t$ C
UF_ASSEM_ask_parent_of_instance
UF_ASSEM_ask_child_of_instance+ d' P! T9 o+ ^! z8 Y
UF_ASSEM_remove_instance# I0 S+ Z5 f2 Y- L
UF_ASSEM_ask_occs_of_entity+ O% d# i! V% p- x6 K% y% |; e
UF_ASSEM_ask_occs_of_part0 q&&H+ q# e8 P8 H: f6 n
UF_ASSEM_set_assem_options
UF_ASSEM_cycle_ents_in_part_occ: `/ K2 I5 g1 {1 H
(5)和图层有关
UF_LAYER_set_status! [4 N5 P+ F6 b* [
UF_LAYER_ask_ z4 g1 r. {&&F
UF_LAYER_cycle_by_layer
(6)和对象相关+ N+ D- S8 s&&H' E
& &UF_OBJ_delete_object
&&UF_OBJ_ask_status
&&UF_OBJ_set_def_cre_color. v! G8 j2 z& B
&&UF_OBJ_set_cre_color
&&UF_OBJ_ask_type_and_subtype* f3 t+ j' M7 p&&}# _* w# T* _
(7)和表达式相关
&&UF_MODL_create_exp) R: E+ b. b: k- ]1 ?. s&&p
&&UF_MODL_ask_exp
&&UF_MODL_edit_exp
&&UF_MODL_delete_exp
&&UF_MODL_eval_exp: Z) R; C) `2 ]$ u, r
&&UF_MODL_export_exp
&&UF_MODL_import_exp2 d# t) T) W&&p
&&UF_MODL_rename_exp0 {! f8 Y, y& L2 _&&L. h/ W
&&UF_MODL_create_exp_tag
&&UF_MODL_ask_exp_tag_value
&&UF_MODL_delete_exp_tag2 n2 t& o0 X; Z4 I: ~
&&UF_MODL_ask_exp_tag_ n+ E" t- g, u, f0 b& q
&&UF_MODL_dissect_exp_string3 N" ]( k&&m- W$ @! l6 X
&&UF_MODL_update
(8)和模型链表相关
UF_MODL_create_list' T+ ]&&t/ {6 X- |* |
&&UF_MODL_put_list_item! d: u6 t0 y6 b: h6 D
&&UF_MODL_ask_list_count0 x# T- v$ A# v&&E
&&UF_MODL_ask_list_item, R5 e% s&&?9 X) U
&&UF_MODL_ask_list_item
&&UF_MODL_delete_list$ [7 Y0 F+ S. d( V5 Q! ^
&&UF_MODL_delete_list_item
(9)和创建模型相关0 L* i0 T9 f+ u/ S) D
UF_MODL_create_block1
&&UF_MODL_create_blend
&&UF_MODL_create_cyl1
&&UF_MODL_create_hollow
&&UF_MODL_create_linear_iset$ X7 O4 n6 K3 k0 ?# I9 F7 F/ I
&&UF_MODL_create_rect_pocket' b1 M' `9 t: @; j6 _/ i
&&UF_MODL_create_rect_slot
&&UF_MODL_create_simple_hole* p4 o2 S: U: s4 I2 t( E
&&UF_MODL_operations- Y9 I6 \" v5 K
&&UF_MODL_active_part. ~% p* {7 G&&d- M. A/ E% ~* ~
(10)和模型查询相关+ d& U8 [/ B' ]8 P2 N; C8 a
&&UF_MODL_ask_feat_body
&&UF_MODL_ask_body_type
&&UF_MODL_ask_body_faces4 y$ W& `$ ^" f2 G. C" K6 Z; K
&&UF_MODL_ask_body_edges
&&UF_MODL_ask_edge_body" u. C4 {5 Q4 P4 p: _6 f
&&UF_MODL_ask_edge_faces&&[! I7 P( W& c4 ]- p* L&&M. s$ Y
&&UF_MODL_ask_edge_type
&&UF_MODL_ask_edge_verts
&&UF_MODL_ask_face_body
&&UF_MODL_ask_face_edges4 P&&a! o3 n&&\& f4 ^/ M
&&UF_MODL_ask_face_data/ V4 x6 C$ ?& M
&&UF_MODL_ask_feat_faces+ C1 u0 T. J9 y! i& N% E& P
&&UF_MODL_ask_block_parms: X+ r. w2 D$ I; \
&&UF_MODL_ask_minimum_ {; S( q' P3 J! u% F
&&UF_MODL_ask_simple_hole_parms1 B7 g3 l: ~5 K6 t0 Q! Y
(11)和对象名称相关) e& d: U8 u' q" b% r! P
&&UF_OBJ_set_name
&&UF_OBJ_ask_name
&&UF_OBJ_delete_name
&&UF_OBJ_cycle_by_name
(12)和制图尺寸相关
UF_DRF_ask_preferences4 y! n1 S&&l/ E) |( O- M& _
&&UF_DRF_set_preferences
&&UF_DRF_create_horizontal_dim
&&UF_DRF_init_object_structure
&&UF_DRF_create_vertical_dim
&&UF_DRF_create_note4 ?6 F: G&&s, a+ V# j+ |8 p
&&UF_DRF_create_label
&&UF_VIEW_ask_tag_of_view_name
&&UF_VIEW_expand_view
&&UF_VIEW_is_expanded
&&UF_VIEW_unexpand_work_view
(13)和视图相关* W0 z# {1 _2 k7 a: D
&&uc6476 //Set Drawing State2 U% R+ f- T, t
&&uc6477 //Retrieve Drawing State
&&uc6478 //Create Drawing
&&uc6479 //Read Drawing Size. s+ n" N8 k, F( `
&&uc6480 //Set Drawing Size
&&UF_DRAW_ask_drawing_info
&&UF_DRAW_set_drawing_info5 b2 `, T: S& Q; P3 b1 w/ Q5 g
&&UF_DRAW_import_view5 c: c: Y9 w5 n0 q& q
&&uc6481 //Add View to Drawing" t8 J; |+ J7 s) N&&b& l
&&uc6482 //Remove View from Drawing* W) ?3 S7 K9 M+ U5 Q- u
&&uc6483 //Read View Reference Point on Drawing
&&uc6484 //Set View Reference Point on Drawing' t( O# O/ b8 V$ l! A9 a, F
&&uc6485 //Read View Borders on Current Drawing: B( m4 e, J" S5 P
&&uc6486 //Set View Borders on Current Drawing) x5 o4 y- C8 s& m9 u
&&UF_DRAW_define_view_manual_rec t
&&UF_DRAW_update_one_view7 t% G& C! f* ~
&&uc6492 //Read Current Drawing Name: W) ^# C2 n/ r9 T; W
&&UF_DRAW_ask_current_drawing0 P2 @0 k% }1 l3 q
&&uc6496 //Rename Drawing+ S" R2 C" S+ F, t8 l
&&uc6495 //Delete Drawing
&&uc6499 //Cycle Views in Drawing
(14)和属性相关0 V7 v! X6 y2 e# J( z
&&UF_ATTR_ask_part_attribute5 Y1 ?3 B- N7 I* g, J
&&UF_ATTR_assign" j* _1 Z' H! G7 }4 k
&&UF_ATTR_ask_part_attrs
&&UF_ATTR_ask_part_attrs_in_fi le
&&UF_ATTR_read_value
&&UF_ATTR_cycle/ r! G9 B# h9 S, K
&&UF_ATTR_delete
&&UF_ATTR_delete_all
) ?& x+ t&&@; x4 w" c3 P8 u
TA的最新馆藏[转]&[转]&[转]&
喜欢该文的人也喜欢织梦模板建站、织梦仿站,推荐选跟版网(专业织梦模板定制下载站),您可以把织梦模板网:
跟版网(www.genban.org)是专业的DEDECMS模板下载和定制开发服务商!
自己动手添加一个函数 实现任意字段调用
& &以下内容您可能感兴趣: &
是否遇到过想调用某些自定义字段,却发现dedecms的标签底层模板字段不包括这个字段呢?这就大大限制了灵活性,但dede也不可能让所有字段都允许调用的,那样就会大大降低系统效率,所以今天分享的是一个比较完美解决这个问题的方法,配合dede标签,几乎可以说没有什么不能调用的了。
function table($table, $field, $id)
&&& global $
&&& $primarys = array();
&&& $table = strpos($table, '#@_') === false?(strpos($table, 'dede_') === false?'dede_'.$table:str_replace('dede_','dede_',$table)):$
&&& $dsql -& Execute(&me&,&SHOW COLUMNS FROM `$table`&);&&&
&&& while ($r = $dsql-&GetArray())
&&&&&&& if($r['Key'] == 'PRI') $primarys[] = $r['Field'];
&&& if(!empty($primarys))
&&&&&&& $primary = $primarys[0];
&&&&&&& $result = $dsql -& GetOne(&SELECT `$field` FROM `$table` WHERE `$primary`= $id&);
&&& return isset($result[$field])?$result[$field]:'';&&&
首先把上面代码放到 include/extend.func.php 里,如果没有这个文件就自己建立一个(放到 ?& 前面哦)
然后我们就可以在模板里任意使用了。
使用方法:
利用自定义函数对标签进行扩展
{dede:标记 function='table(&要调用的表名&,&要调用的字段&,@me)'/}
这里的&标记&就是要调用的表的主键的值,常见的就是id和aid、mid、uid之类的
标签底层模板内
[field:字段 function=table(&要调用的表名&,&要调用的字段&,@me)/]
例如arclist标签底层模板字段是没有body字段的,就是说不能用arclist把文章内容调用出来的,当然这种需求很少,但不是没有,现在我们就可以这样使用
{dede:arclist row='10' titlelen='24'}
[field:id function=table('addonarticle','body',@me)/]
{/dede:arclist}
还有很多作用,如type标签调用栏目简介,等等,自己去挖掘吧。
跟版网-专业织梦模板下载平台,转载请注明出处:
& &精心为您推荐: &
& &邀您关注: &
扫描左侧二维码即可在手机端访问此页面
扫描左侧二维码即可关注跟版网官方微信公众号,获取金币模板,还可以免费仿站哦!
扫描左侧二维码即可加入跟版网官方群,免费获取金币资源并可以与其他织梦高手共同交流学习
跟版网率先实现织梦的三网合一网站,从即日起()日,跟版网会陆续免费分享一批金币资源给需要的朋友,关注本站认证官方微信公众账号并回复相应的提取码,系统会自动将下载地址发送给您,同时这些金币资源也会分享在官方的QQ群中,欢迎各位朋友踊跃加入。另外本站后期会每周选择大家比较喜欢的网站仿制,并免费分享给大家,还有免费送金币活动哦!
- dede源码分享
售价:20金币
- 织梦html5模板
售价:40金币
- dede源码分享
售价:0金币
- 织梦html5模板
售价:100金币
- dede源码分享
售价:2金币
& & & 跟版网竭力打造中国最大的织梦源码和织梦模板商城,我们有一批经验丰富的设计师和程序员,发展五年,跟版网拥有丰富的织梦模板,欢迎您的咨询,我们将竭诚为您提供最优质的服务。
& & & 跟版网织梦源码商城坚持“创意+品质+服务”的高端理念,运用创意设计的理念为您塑造高品质的网络品牌形象。凭借五年的探索和实践,跟版网织梦源码商城拥有一支经验丰富、技术精湛、尽职尽责的网络服务团队。精品网站建设,从跟版网织梦源码商城建站开始。
& & & 跟版网织梦源码和模板可分为两种形式获得,一种是官方源码,另外一种是会员共享源码。两种源码都分为免费和收费两种形式。
& & & 跟版网官方收费源码可通过支付费用获得,具体操作流程可查看网址:。会员共享源码可通过共享模板获取金币下载。如觉得麻烦,可以联系客服QQ:进行金币充值,充值后可随意下载。

我要回帖

更多关于 qgis二次开发 的文章

 

随机推荐