青华模具培训学校

 找回密码
 注册

QQ登录

只需一步,快速开始

青华模具培训学院
查看: 962|回复: 0

[分享] UG二次开发实用入门教程_UG 对象类型及操作(3)_表达式

[复制链接]
发表于 2014-4-1 20:51 | 显示全部楼层 |阅读模式

ug/Open API 创建的表达式和UG的交互界面产生的表达式同样在‘表达式编辑器’中可见。

我们知道表达式提供UG中的参数化建模的机制,表达式能控制特征,特征也随表达式的变化而改变。一个表达式可在多个特征中使用,这样它的变化将能改变多个特征。

表达式的形式一般是: "name=value"。

表达式名的首字符必须是字母,其它字符可以是数字、字母、下画线等。表达式名是大小写敏感的。一个part文件中的表达式名应唯一。下面是一些合法和不合法的表达式名:

lengthValid
3sidesInvalid (begins with a numeric)
three_sidesValid

表达式值可以是数字和条件等式,表达式名可以用于表达式值中。下列是一些表达式值的例子:

"Length = 0.5 + 2 * cos (angle)"

"position = if(width <= 2) (0.5 * width) else (2)"

   表达式的使用

一般说来表达式的使用函数都在头文件 uf_modl.h中定义。

如果你表达式串中,仅仅提供表达式值UG会自动给它一个名字。如你的表达式串定义如下:

"diameter / 2"

UG会赋给它一个类似 "p0"的名字。当然我们建议按下列形式赋值:

"radius = diameter / 2"

你可以用函数 UF_MODL_create_exp 创建表达式。

其它的使用表达式的函数:

  • UF_MODL_dissect_exp_string. 分解名字和值返回名字、值和表达式的标签。
  • UF_MODL_ask_exp. Return a name-value pair for an expression from its name.
  • UF_MODL_eval_exp. Evaluate an expression's name and return its value.
  • UF_MODL_edit_exp. 用新的值替换表达式中原有的值。 使用后应用函数 UF_MODL_update来更新模型。
  • UF_MODL_rename_exp. Give an existing expression a new name.
    8 ?5 v/ e, ?& o: f1 j' R, S7 s

  • UF_MODL_ask_exps_of_feature. Returns the tags of all the expressions that control a feature.
  • UF_MODL_ask_exps_of_part. Returns the tags of all the expressions in a part.
    ; l. f( z/ V4 L6 l

UF_MODL_ask_exp_tag_string.

# L8 ^$ x/ N! G
QQ图片20140401204356.jpg
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-16 23:56 , Processed in 0.051420 second(s), 22 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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