青华模具培训学校

 找回密码
 注册

QQ登录

只需一步,快速开始

青华模具培训学院
查看: 2237|回复: 12

ug表达式

  [复制链接]
发表于 2012-1-14 09:50 | 显示全部楼层 |阅读模式
表达式的概念* |2 _7 W7 Q; v, [) L
表达式是算术或条件语句,用来控制零件特征。表达式可以用来定义或控制一个模型的多种尺寸,例如一个特征或一个草图的尺寸。
% k3 p) K% o6 L" {表达式在参数化设计中是十分有意义的,它可以用来控制同一个零件上的不同特征间的关系或一个装配中的不同零件间的关系。例如:我们可以用一个表达式来建立一个支架零件的厚度和长度之间的关系。当支架的长度改变之后,它的厚度自动更新。图2-1所示为表达式的一个实例。在创建表达式时必须注意以下几点:
2 q: A9 Q. N6 t! G" u( ^( u. Q( E4 w     ● 表达式左侧必须是一个简单变量,等式右侧是一个数学语句或一条件语句。
  M7 }9 Y# `, l+ ~$ ^0 W# `● 所有表达式均有一个值(实数或整数),该值被赋给表达式的左侧变量。
  H, \, i- g  V$ x! }7 u● 表达式等式的右侧可认是含有变量、数字、运算符和符号的组合或常数。
, C, S: r- n- h) t1 X5 D● 用于表达式等式右侧中的每一个变量,必须作为一个表达式名字出现在某处。1 ~( w) \7 |1 \  U- l/ v) S

9 U3 \" e/ v7 g3 y, q$ F7 x: t6 [1 z( A1 X4 G3 [
                         Length=.5+2*Cos(60)
! A9 X4 [6 N, P  r2 P# b. M  x, y8 A
 楼主| 发表于 2012-1-14 09:51 | 显示全部楼层
创建表达式的方法
0 D1 ~9 F2 g/ V: M" m0 v1.手工创建表达式6 w; {7 b  W: o8 l# d! p5 e
●选择下拉菜单Tool→Expression或按快捷键Ctrl+E0 K" G5 Q0 Z7 |( H% L0 T2 U; \
●改变一个已存在的表达式的名字,可选择下拉菜单Tool→Expression,选取已存在的表达式,然后单击Rename。; h8 W4 N3 S5 o7 V, u7 s* v5 f; E) M
●将文本文件中存在的表达式引入到UG中,可选择下拉菜单Tool→Expression→Import。
$ X2 M/ }4 Z1 z% ]4 ~2.  系统自动建立表达式, E9 Z( t1 R% U9 G& a$ U6 ]
当用户作下列操作时,系统自动地建立表达式,其名字用一个小写字母p开始。/ r7 {( |2 W. S- b2 n
●建立一个特征(Create a Feature)时,系统对特征的每个参数建立一个表达式。. \. ]& ^- |) }5 V) Q
●建立一个草图(Create a Sketch)时,系统对定义草图基准的XC和YC坐标建立两个表达式。例如:p1_YDATUM_V1=02 A; v# {. |, U0 H# m
●标注草图尺寸(Dimension a Sketch)后,系统对草图的每一个尺寸都建立一个相应的表达式。
0 [% \5 k7 S. a# @●定位一个特征或一个草图(Position a feature or sketch)时,系统对每一个定位尺寸都建立一个相应的表达式。" y6 H$ B0 i! w
●生成一个匹配条件(Create a mating)时,系统会自动建立相应的表达式。
* r- d$ D# s, _% e& v" o. H表达式可应用于多个方面,它可以用来控制草图和特征尺寸和约束;可用来定义一个常量,如pi=3.1415926;也可被其它表达式调用,如expression1=expression2+expression3,这对于缩短一个很长的数字表达式十分有效,并且能表达它们之间的关系。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-1-14 09:52 | 显示全部楼层
2.1.3  为什么使用表达式. O2 ]$ Q4 m2 {& S6 K: {2 ~/ E( `
表达式是一个功能强大的工具,可以使UG实现参数化设计。运用表达式,可十分简便地对模型进行编辑;同时,通过更改控制某一特定参数的表达式,可以改变一实体模型的特征尺寸或对其重新定位。! O; [+ A% V2 @; d$ }
使用表达式也可产生一个零件族。通过改变表达式值,可将一个零件转为一个带有同样拓朴关系的新零件。
% V2 k3 v8 I3 C2.1.4  表达式分类" F+ ^9 B7 A* `9 R& t7 D+ b* O
表达式可分为三种类型:数学表达式、条件表达式、几何表达式。) g* T( E. F$ N1 _6 [/ |
1.  数学表达式: W1 Y6 [: Y1 {  w# b* \' v9 g4 \
可用数学方法对表达式等式左端进行定义。下表2-1列出一些数学表达式:
  @; g1 M& W9 N4 T表2-1  数学表达式
' x4 f, i( R+ K5 A' i数学含义        例子1 Z+ h: K2 M4 n) e* r) x1 P+ B
+        加法        p2=p5+p37 `, g  t3 O3 P9 [8 x1 ?( E5 D8 s
—        减法        p2=p5-p3
* w4 b; i$ `% \+ s* D* G/ e# B*        乘法        p2=p5*p39 J. Z7 C9 A7 _2 R* p
/        除法        p2=p5/p3
- e  e  K" ?; P- x+ G0 i1 X/ U%        系数        p2=p5%p37 g$ f  u, q1 k" b
^        指数        p2=p5^2% I' Y6 L. U# p5 z' o6 n
=        相等        p2=p5
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-1-14 09:53 | 显示全部楼层
2.  条件表达式4 m! P1 s; Q; l5 o
通过对表达式指定不同的条件来定义变量。利用if/else结构建立表达式,其句法为:' o3 F/ A& ]. t9 c; C
VAR=if (exp1) (exp2) else (exp3)
0 e: Z* w0 K5 ?# {  U7 s例width=if (length<8) (2) else(3)
1 F2 P: j: }$ c6 f' }7 p, [" M其含义为:如果length小于8,则width为2,否则为3。
" o$ z( e2 l; X3.  几何表达式( e1 S) V& T; L+ g1 ?' D
几何表达式是通过定义几何约束特性来实现对特征参数的控制。几何表达式有以下三种类型:( [9 N4 ^; E# p) {  S& w
1)距离:指定两物体之间、一点到一个物体之间或两点之间的最小距离。1 L- H, T4 s9 c2 `
2)长度:指定一条曲线或一条边的长度。
# q1 g& r, h4 }3)角度:指定两条线、平面、直边、基准面之间的角度。
) w- m' `; V3 Q5 d  \- q4 z几何表达式如下例:p2=length(20)( L, Z, u( v" A5 t. r
                       p3=distance(22)' G! w8 `/ g! h2 w# I4 Z' [
                       p4=angle(25)
( e' n1 f5 b* r+ e4 i) D( V2.1.5  表达式语言
, |8 |$ E0 P: ^: p, y表达式有自己的语法,它通常模仿编程语言下面介绍表达式语言的下列元素:变量名、运算符、运算符的优先顺序和相关性、机内函数及条件表达式。4 v' u4 |0 T" v- y* [
1.  变量名
* z. R, `1 f- e4 h7 F变量名是字母与数字组成的字符串,但必须以一个字母开始,变量名可含下划线“_”,变量名的长度限制在32个字符内。
# S- U; f4 @! n. M8 K( a2.  运算符( t$ O7 G8 v; G2 ?8 |& l
UG表达式运算符分为算术运算符、关系及逻辑运算符,与其它计算机书中介绍的内容相同。各运算符的优先级别及相关性如表2-2所示。在表2-2中,同一毛的运算符的优先级别相同,上一毛的运算符优先级别高于下一行的运算符。
0 @+ o6 |3 n. K% r0 H表2-2   各运算符的优先级别及相关性
; u- F# D0 b4 z# L$ t运算符        相关性        运算符        相关性/ P, ?8 A) P5 x- _; [: j& ?
∧        右到左        > < > = < =        左到右1 l4 @1 \' \6 s; f! L, C/ n
-(负号)!        右到左        = = ! =        左到右; o4 ~2 b" q% w! i
* / %        左到右        &&        左到右
( f2 n$ k5 h  w5 |4 @+ -        左到右        ‖        右到左
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-1-14 09:54 | 显示全部楼层
机内函数: C: P) h+ R) K2 w( z$ B; q4 B
表达式中允许使用机内函数,表2-3为部分常用函数
& ]* I+ @8 T# j" F; Q& s5 F                                 表2-3   机内函数1 F8 x5 ~7 w; P7 h% j
机内函数        含义        示例4 ]; O  N- S8 t
Abs        绝对值        abs(-3)(其值为3)
8 o* ?- T& X8 ~6 x( BAsin        反正弦        asin(1/2)(其值为0.5236rad)
: e. ^8 `; o- e, j1 sAcos        反余弦        acos(1/2)(其值为1.0472)
  {! r" ?2 z* i7 `# GAtan        反正切(atan(x))        atan(1)(其值为0.7854rad)! J: `2 Q+ y# U9 H
Atan2        反正切(atan2(x,y)为x/y的反正切)        atan(1,0)(其值为1.5708rad)9 {0 K) P  O8 a; K; b
Ceil        向上取整        ceil l(3,12)(其值为4)& _. v* f, p2 m/ j7 N
Floor        向下取整        floor(3,12) (其值为3)% a: O1 @8 f4 x. f' x/ B9 k6 j! q5 j8 _
Sin        正弦        sin(30)(30为角度值,其值为0.5)( }$ {8 P- l5 f; Q* F2 O) j
Cos        余弦        cos(60) (60为角度值,其值为0.5)
/ C7 {* c( m, d. J1 r# w- @Tan        正切        tan(45)(45为角度值,其值为0.5)
- v1 f/ X& e/ j/ KExp        幂(以e为底数)        exp(1)(其值为2.7183)5 T4 ~+ U* V! l- y! ^4 X
Log        自然对数        log(2.7183)(其值为1)
4 I3 I* {. L6 tLog10        对数(以10为底数)        log10(10)(其值为1)
9 L- t0 I$ H% |$ g; L* ^* iSqrt        平方根        sqrt(4)(其值为2)
3 I. Y) E& w- U$ tpi()        机内常数(π)        
  `8 p' e8 ]/ EDeg        弧度向角度的转换函数        deg(atan(1))(其值为45)
8 u  g$ i& ?; m( k  L) `Rad        角度向弧度的转换函数        rad(180)(其值为3.14159)  p- [# @( o6 ?
Fact        阶乘        fact(4)(其值为24)
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-1-14 09:55 | 显示全部楼层
4.  表达式注解
. D% c! `! c/ Z* j可在表达式中产生一段注解。在注解前用双斜线进行区分“//”。“//”将提示系统忽略它后面的语句。用回车键中止注解。如果注解与表达式在同一行,则需先写表达式内容。
5 ~$ `4 o) Z* ~1 l# k5 y8 Z* ?9 C如下例:length=2*width//comment   有效
$ O* V2 b$ R& H5 ^        //comment//width=5        无效
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-1-14 09:56 | 显示全部楼层
说明一下,在别的地方看到的,发帖,一方面给大家做个参考,另一方面自己保存。
回复 支持 反对

使用道具 举报

发表于 2012-7-19 11:44 | 显示全部楼层
哇,这么多。想理解得几个月啊
回复 支持 反对

使用道具 举报

发表于 2012-11-1 12:15 | 显示全部楼层
送人玫瑰,手留余香
回复 支持 反对

使用道具 举报

发表于 2012-11-3 09:35 | 显示全部楼层
谢谢,学习了。。。。
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|关于我们|sitemap|小黑屋|Archiver|手机版|UG网-UG技术论坛-青华数控模具培训学校 ( 粤ICP备15108561号 )

GMT+8, 2024-9-22 18:17 , Processed in 0.046002 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表