NX Open C++ 参考指南 2406 v1.1
载入中...
搜索中...
未找到
NXOpen::Expression类 参考

表达式 更多...

#include <Expression.hxx>

类 NXOpen::Expression 继承关系图:
NXOpen::NXObject NXOpen::TaggedObject NXOpen::INXObject

Public 类型

enum  AttributeSourceType { AttributeSourceTypeObject , AttributeSourceTypePart }
enum  StatusOption {
  StatusOptionOutOfDate , StatusOptionUpToDate , StatusOptionLocked , StatusOptionDelayed ,
  StatusOptionBroken , StatusOptionUnknown
}
enum  UnitsOption { UnitsOptionBase , UnitsOptionExpression , UnitsOptionDataEntry , UnitsOptionInfo }
Public 类型 继承自 NXOpen::NXObject
enum  AttributeType {
  AttributeTypeInvalid , AttributeTypeNull , AttributeTypeBoolean , AttributeTypeInteger ,
  AttributeTypeReal , AttributeTypeString , AttributeTypeTime , AttributeTypeReference ,
  AttributeTypeAny = 100
}
enum  DateAndTimeFormat { DateAndTimeFormatNumeric , DateAndTimeFormatTextual }

Public 成员函数

bool BooleanValue ()
NXString Description ()
void EditComment (const char *newComment)
void EditComment (const NXString &newComment)
NXString Equation ()
NXString ExpressionString ()
NXString GetDescriptor ()
NXString GetFormula ()
void GetInterpartExpressionNames (NXString *partName, NXString *expName)
void GetNumberValueWithUnits (NXOpen::Expression::UnitsOption unitsOption, double *numberValue, NXOpen::Unit **unit)
NXOpen::Features::FeatureGetOwningFeature ()
NXOpen::Features::FeatureGetOwningRpoFeature ()
bool GetPersistentlyLocked ()
NXOpen::Point3d GetPointValueWithUnits (NXOpen::Expression::UnitsOption unitsOption)
NXOpen::NXObject::AttributeInformation GetReferencedAttribute ()
bool GetReferencingAttribute (NXOpen::Expression::AttributeSourceType attributeSourceType, NXOpen::NXObject::AttributeInformation *info)
std::vector< NXOpen::Expression * > GetReferencingExpressions ()
bool GetReferencingPartOrObjectAttribute (NXOpen::Expression::AttributeSourceType *attributeSourceType, NXOpen::NXObject::AttributeInformation *info)
std::vector< NXOpen::Features::Feature * > GetUsingFeatures ()
double GetValueUsingUnits (NXOpen::Expression::UnitsOption unitsOption)
NXOpen::Vector3d GetVectorValueWithUnits (NXOpen::Expression::UnitsOption unitsOption)
bool HasReferencedAttribute ()
bool HasReferencingObjectAttribute ()
bool HasReferencingPartAttribute ()
int IntegerValue ()
bool IsGeometricExpression ()
bool IsInterpartExpression ()
bool IsMassManagementExp ()
bool IsMeasurementExpression ()
bool IsNoEdit ()
bool IsNoUpdate ()
bool IsRightHandSideLockedFromEdit ()
bool IsUserLocked ()
bool IsUserSpecified ()
void MakeConstant ()
double NumberValue ()
NXOpen::Point3d PointValue ()
NXString RightHandSide ()
void SetFormula (const char *rightHandSide)
void SetFormula (const NXString &rightHandSide)
void SetMassManagementExp (bool isMassManagementExp)
void SetNoEdit (bool isNoEdit)
void SetNoUpdate (bool isNoUpdate)
void SetNumberValue (double expressionValue)
void SetNumberValueWithUnits (double numberValue, NXOpen::Unit *units)
void SetPersistentlyLocked (bool isLocked)
void SetRightHandSide (const char *rightHandSide)
void SetRightHandSide (const NXString &rightHandSide)
void SetUnits (NXOpen::Unit *unitType)
void SetUserLocked (bool isLocked)
void SetUserSpecified (bool isUserSpecified)
void SetValue (double expressionValue)
NXOpen::Expression::StatusOption Status ()
NXString StringValue ()
NXString Type ()
NXOpen::UnitUnits ()
double Value ()
NXOpen::Vector3d VectorValue ()
Public 成员函数 继承自 NXOpen::NXObject
NXOpen::AttributeIteratorCreateAttributeIterator ()
NX_DEPRECATED("Deprecated in NX8.0.0. Use DeleteUserAttribute instead.") void DeleteAttributeByTypeAndTitle(NXOpen void DeleteAttributeByTypeAndTitle (NXOpen::NXObject::AttributeType type, const char *title)
NX_DEPRECATED("Deprecated in NX8.0.0. Use DeleteUserAttribute instead.") void DeleteAttributeByTypeAndTitle(NXOpen void DeleteAttributeByTypeAndTitle (NXOpen::NXObject::AttributeType type, const char *title, NXOpen::Update::Option option)
void DeleteUserAttribute (NXOpen::NXObject::AttributeType type, const char *title, bool deleteEntireArray, NXOpen::Update::Option option)
void DeleteUserAttribute (NXOpen::NXObject::AttributeType type, const NXString &title, bool deleteEntireArray, NXOpen::Update::Option option)
void DeleteUserAttributes (NXOpen::AttributeIterator *iterator, NXOpen::Update::Option option)
void DeleteUserAttributes (NXOpen::NXObject::AttributeType type, NXOpen::Update::Option option)
virtual NXOpen::INXObjectFindObject (const char *journalIdentifier)
virtual NXOpen::INXObjectFindObject (const NXString &journalIdentifier)
bool GetBooleanUserAttribute (const char *title, int index)
bool GetBooleanUserAttribute (const NXString &title, int index)
NXOpen::NXObject::ComputationalTime GetComputationalTimeUserAttribute (const char *title, int index)
NXOpen::NXObject::ComputationalTime GetComputationalTimeUserAttribute (const NXString &title, int index)
int GetIntegerAttribute (const char *title)
int GetIntegerUserAttribute (const char *title, int index)
int GetIntegerUserAttribute (const NXString &title, int index)
bool GetNextUserAttribute (NXOpen::AttributeIterator *iterator, NXOpen::NXObject::AttributeInformation *info)
NXString GetPdmReferenceAttributeValue (const char *attributeTitle)
 获取指定对象的PDM参考属性值。 用户需提供属性标题,将返回UI显示的属性值。
NXString GetPdmReferenceAttributeValue (const NXString &attributeTitle)
 获取指定对象的PDM参考属性值。 用户需提供属性标题,将返回UI显示的属性值。
double GetRealAttribute (const char *title)
double GetRealUserAttribute (const char *title, int index)
double GetRealUserAttribute (const NXString &title, int index)
NXString GetReferenceAttribute (const char *title)
NXString GetStringAttribute (const char *title)
NXString GetStringUserAttribute (const char *title, int index)
NXString GetStringUserAttribute (const NXString &title, int index)
NX_DEPRECATED("Deprecated in NX8.0.0. Use GetUserAttribute instead.") NXString GetTimeAttribute(NXOpen NXString GetTimeAttribute (NXOpen::NXObject::DateAndTimeFormat format, const char *title)
NXString GetTimeUserAttribute (const char *title, int index)
NXString GetTimeUserAttribute (const NXString &title, int index)
NX_DEPRECATED("Deprecated in NX11.0.0. Use GetUserAttribute instead.") std std::vector< NXOpen::NXObject::AttributeInformationGetUserAttribute (const char *title, bool includeUnset, bool addStringValues, NXOpen::NXObject::AttributeType type)
NXOpen::NXObject::AttributeInformation GetUserAttribute (const char *title, NXOpen::NXObject::AttributeType type, int index)
NXOpen::NXObject::AttributeInformation GetUserAttribute (const NXString &title, NXOpen::NXObject::AttributeType type, int index)
NXString GetUserAttributeAsString (const char *title, NXOpen::NXObject::AttributeType type, int index)
NXString GetUserAttributeAsString (const NXString &title, NXOpen::NXObject::AttributeType type, int index)
int GetUserAttributeCount (NXOpen::AttributeIterator *iterator)
int GetUserAttributeCount (NXOpen::AttributeIterator *iterator, bool countArrayAsOneAttribute)
int GetUserAttributeCount (NXOpen::NXObject::AttributeType type)
int GetUserAttributeCount (NXOpen::NXObject::AttributeType type, bool includeUnset, bool countArrayAsOneAttribute)
bool GetUserAttributeLock (const char *title, NXOpen::NXObject::AttributeType type)
bool GetUserAttributeLock (const NXString &title, NXOpen::NXObject::AttributeType type)
std::vector< NXOpen::NXObject::AttributeInformationGetUserAttributes ()
std::vector< NXOpen::NXObject::AttributeInformationGetUserAttributes (bool includeUnset)
std::vector< NXOpen::NXObject::AttributeInformationGetUserAttributes (NXOpen::AttributeIterator *iterator)
int GetUserAttributeSize (const char *title, NXOpen::NXObject::AttributeType type)
int GetUserAttributeSize (const NXString &title, NXOpen::NXObject::AttributeType type)
std::vector< NXOpen::NXObject * > GetUserAttributeSourceObjects ()
bool HasUserAttribute (const char *title, NXOpen::NXObject::AttributeType type, int index)
bool HasUserAttribute (const NXString &title, NXOpen::NXObject::AttributeType type, int index)
bool HasUserAttribute (NXOpen::AttributeIterator *iterator)
virtual bool IsOccurrence ()
virtual NXString JournalIdentifier ()
virtual NXString Name ()
 NX_DEPRECATED ("Deprecated in NX8.0.0. Use GetUserAttribute instead.") double GetRealAttribute(const NXString &title)
 NX_DEPRECATED ("Deprecated in NX8.0.0. Use GetUserAttribute instead.") int GetIntegerAttribute(const NXString &title)
 NX_DEPRECATED ("Deprecated in NX8.0.0. Use GetUserAttribute instead.") NXString GetReferenceAttribute(const NXString &title)
 NX_DEPRECATED ("Deprecated in NX8.0.0. Use GetUserAttribute instead.") NXString GetStringAttribute(const NXString &title)
 NX_DEPRECATED ("Deprecated in NX8.0.0. Use SetUserAttribute instead.") void SetAttribute(const NXString &title
 NX_DEPRECATED ("Deprecated in NX8.0.0. Use SetUserAttribute instead.") void SetAttribute(const NXString &title
 NX_DEPRECATED ("Deprecated in NX8.0.0. Use SetUserAttribute instead.") void SetAttribute(const NXString &title
 NX_DEPRECATED ("Deprecated in NX8.0.0. Use SetUserAttribute instead.") void SetAttribute(const NXString &title
 NX_DEPRECATED ("Deprecated in NX8.0.0. Use SetUserAttribute instead.") void SetAttribute(const NXString &title
 NX_DEPRECATED ("Deprecated in NX8.0.0. Use SetUserAttribute instead.") void SetAttribute(const NXString &title
 NX_DEPRECATED ("Deprecated in NX8.0.0. Use SetUserAttribute instead.") void SetAttribute(const NXString &title
 NX_DEPRECATED ("Deprecated in NX8.0.0. Use SetUserAttribute instead.") void SetAttribute(const NXString &title)
 NX_DEPRECATED ("Deprecated in NX8.0.0. Use SetUserAttribute instead.") void SetReferenceAttribute(const NXString &title
 NX_DEPRECATED ("Deprecated in NX8.0.0. Use SetUserAttribute instead.") void SetReferenceAttribute(const NXString &title
 NX_DEPRECATED ("Deprecated in NX8.0.0. Use SetUserAttribute instead.") void SetTimeAttribute(const NXString &title
 NX_DEPRECATED ("Deprecated in NX8.0.0. Use SetUserAttribute instead.") void SetTimeAttribute(const NXString &title
virtual NXOpen::Assemblies::ComponentOwningComponent ()
virtual NXOpen::BasePartOwningPart ()
virtual void Print ()
virtual NXOpen::INXObjectPrototype ()
void SetAttribute (const char *title)
void SetAttribute (const char *title, const char *value)
void SetAttribute (const char *title, const char *value, NXOpen::Update::Option option)
void SetAttribute (const char *title, double value)
void SetAttribute (const char *title, double value, NXOpen::Update::Option option)
void SetAttribute (const char *title, int value)
void SetAttribute (const char *title, int value, NXOpen::Update::Option option)
void SetAttribute (const char *title, NXOpen::Update::Option option)
void SetBooleanUserAttribute (const char *title, int index, bool value, NXOpen::Update::Option option)
void SetBooleanUserAttribute (const NXString &title, int index, bool value, NXOpen::Update::Option option)
virtual void SetName (const char *name)
virtual void SetName (const NXString &name)
void SetPdmReferenceAttribute (const char *attributeTitle, const char *attributeValue)
 设置对象的PDM参考属性值。 用户需提供属性标题和UI显示的别名值。若参考属性为数组类型,此操作将被忽略。 别名字符串会转换为内部值(如会话标识符),并将该内部值设置到指定对象上。
创建于NX12.0.0。

许可要求:无
void SetPdmReferenceAttribute (const NXString &attributeTitle, const NXString &attributeValue)
 设置对象的PDM参考属性值。 用户需提供属性标题和UI显示的别名值。若参考属性为数组类型,此操作将被忽略。 别名字符串会转换为内部值(如会话标识符),并将该内部值设置到指定对象上。
创建于NX12.0.0。

许可要求:无
void SetReferenceAttribute (const char *title, const char *value)
void SetReferenceAttribute (const char *title, const char *value, NXOpen::Update::Option option)
void SetTimeAttribute (const char *title, const char *value)
void SetTimeAttribute (const char *title, const char *value, NXOpen::Update::Option option)
void SetTimeUserAttribute (const char *title, int index, const char *value, NXOpen::Update::Option option)
void SetTimeUserAttribute (const char *title, int index, const NXOpen::NXObject::ComputationalTime &value, NXOpen::Update::Option option)
void SetTimeUserAttribute (const NXString &title, int index, const NXOpen::NXObject::ComputationalTime &value, NXOpen::Update::Option option)
void SetTimeUserAttribute (const NXString &title, int index, const NXString &value, NXOpen::Update::Option option)
void SetUserAttribute (const char *title, int index, const char *value, NXOpen::Update::Option option)
void SetUserAttribute (const char *title, int index, double value, NXOpen::Update::Option option)
void SetUserAttribute (const char *title, int index, int value, NXOpen::Update::Option option)
void SetUserAttribute (const char *title, int index, NXOpen::Update::Option option)
void SetUserAttribute (const NXOpen::NXObject::AttributeInformation &info, NXOpen::Update::Option option)
void SetUserAttribute (const NXString &title, int index, const NXString &value, NXOpen::Update::Option option)
void SetUserAttribute (const NXString &title, int index, double value, NXOpen::Update::Option option)
void SetUserAttribute (const NXString &title, int index, int value, NXOpen::Update::Option option)
void SetUserAttribute (const NXString &title, int index, NXOpen::Update::Option option)
void SetUserAttributeLock (const char *title, NXOpen::NXObject::AttributeType type, bool lock)
void SetUserAttributeLock (const NXString &title, NXOpen::NXObject::AttributeType type, bool lock)
Public 成员函数 继承自 NXOpen::TaggedObject
tag_t Tag () const

友元

class _ExpressionBuilder

额外继承的成员函数

Public 属性 继承自 NXOpen::NXObject
NXOpen::Update::Option option
const NXString NXOpen::Update::Option option
double NXOpen::Update::Option option
int NXOpen::Update::Option option
const NXStringvalue
double value
int value

详细描述

表达式

表示一个表达式。
要创建此类的新实例,请使用 NXOpen::ExpressionCollection::CreateWithUnits

创建于 NX3.0.0.

成员枚举类型说明

◆ AttributeSourceType

属性的类型。

枚举值
AttributeSourceTypeObject 

NXOpen::NXObject 属性。

AttributeSourceTypePart 

NXOpen::Part 属性。

◆ StatusOption

表达式的状态。

枚举值
StatusOptionOutOfDate 

表达式已过时。

StatusOptionUpToDate 

表达式已更新。

StatusOptionLocked 

表达式状态已锁定。

StatusOptionDelayed 

表达式状态已延迟。

StatusOptionBroken 

表达式链接已断开。

StatusOptionUnknown 

无法确定表达式状态。

◆ UnitsOption

获取表达式值时使用的单位选项。

枚举值
UnitsOptionBase 

基础部件单位。内部存储值时使用的基础单位。这些单位是部件特定的。

UnitsOptionExpression 

表达式单位。表达式字符串左侧指定的单位。

UnitsOptionDataEntry 

由单位管理器设置的数据输入单位。

UnitsOptionInfo 

由单位管理器设置的对象信息单位

成员函数说明

◆ BooleanValue()

bool NXOpen::Expression::BooleanValue ( )

返回布尔表达式的值。
创建于 NX6.0.0。

许可要求:无

◆ Description()

NXString NXOpen::Expression::Description ( )

返回表达式的描述。 此方法可用于获取部件间表达式的"A"::x格式名称。
于 NX5.0.2 中创建。

许可证要求:无

◆ EditComment() [1/2]

void NXOpen::Expression::EditComment ( const char * newComment)

修改注释。
于NX4.0.0版本创建。

许可证要求:无

参数
newComment注释

◆ EditComment() [2/2]

void NXOpen::Expression::EditComment ( const NXString & newComment)

修改注释。
于NX4.0.0版本创建。

许可证要求:无

参数
newComment注释

◆ Equation()

NXString NXOpen::Expression::Equation ( )

返回表达式的字符串形式,格式为: "名称 = 公式"。 注意:在新应用代码中避免使用此函数。
若表达式涉及角度,此函数可能返回修改后的等式。 若表达式左右两侧的单位具有不匹配的角度维度,则旧系统要求按如下方式应用转换因子(无论弧角度使用何种单位): 该函数执行的修改在某些部件中可通过设置环境变量 UGII_KF_DONT_CONVERT_FORMULAS_FOR_RADIAN_UNITS 来抑制

[mm]arcRadius = 5 [degrees]arcAngle = 5 [mm]arcLength = arcRadius * arcAngle * pi() / 180.

这不再需要,实际上会给出错误结果。因此表达式在加载时会被修改以移除该转换因子(pi()/180.)。但是,调用此函数的旧代码会期望其存在,因此该函数会添加该因子,即使实际等式为:

[mm]arcLength = arcRadius * arcAngle

要返回所有表达式的实际等式,请改为使用 ExpressionString

创建于 NX3.0.0.

许可证要求:无

◆ ExpressionString()

NXString NXOpen::Expression::ExpressionString ( )

返回表达式的字符串形式,格式为: "名称 = 公式"。 替换 Equation 用于新应用代码。 此函数将返回所有表达式的表达式字符串。
创建于 NX1847.0.0.

许可证要求:无

◆ GetDescriptor()

NXString NXOpen::Expression::GetDescriptor ( )

返回表达式的描述符,若无描述符则返回 NULL。当前,仅特征表达式有描述符。

返回
表达式描述符。
于 NX4.0.0 中创建。

许可证要求:无

◆ GetFormula()

NXString NXOpen::Expression::GetFormula ( )

获取表达式字符串的公式部分:"name = formula"。 供新应用代码替代 RightHandSide 使用。

返回

于 NX1872.0.0 版本创建。

许可要求:无

◆ GetInterpartExpressionNames()

void NXOpen::Expression::GetInterpartExpressionNames ( NXString * partName,
NXString * expName )

部件间表达式的源部件名称和源表达式名称
于 NX10.0.0 中创建。

许可证要求:无

参数
partName部件名称
expName表达式名称

◆ GetNumberValueWithUnits()

void NXOpen::Expression::GetNumberValueWithUnits ( NXOpen::Expression::UnitsOption unitsOption,
double * numberValue,
NXOpen::Unit ** unit )

以指定单位获取数值表达式的数值。 值以该方法返回的指定单位返回。
创建于 NX1872.0.0。

许可要求:无

参数
unitsOption使用基单位、表达式单位、数据输入单位或对象信息单位。
numberValuenumbervalue
unitunit

◆ GetOwningFeature()

NXOpen::Features::Feature * NXOpen::Expression::GetOwningFeature ( )

返回创建指定表达式的特征。
这是在特征创建过程中创建该表达式的特征。例如,表达式“p0 = x”由特征“BLOCK(0)”拥有。

这适用于普通表达式和由几何表达式特征创建的表达式。

返回
拥有该表达式的特征或NULL
于NX4.0.0版本创建。

许可证要求:无

◆ GetOwningRpoFeature()

NXOpen::Features::Feature * NXOpen::Expression::GetOwningRpoFeature ( )

返回其rpo_transform创建了指定定位尺寸表达式的特征。
这是在定位特征过程中创建该表达式的特征。例如,表达式“p0 = x”由特征“Boss(2)”的Transform拥有。

这适用于由带rpo的特征创建的表达式。

返回
拥有该rpo表达式的特征或NULL
于NX7.5.0版本创建。

许可证要求:无

◆ GetPersistentlyLocked()

bool NXOpen::Expression::GetPersistentlyLocked ( )

检查表达式是否被持久锁定。

返回

于NX2306.0.0版本创建。

许可证要求:无

◆ GetPointValueWithUnits()

NXOpen::Point3d NXOpen::Expression::GetPointValueWithUnits ( NXOpen::Expression::UnitsOption unitsOption)

以指定单位获取点表达式的值。

返回

创建于 NX6.0.0。

许可要求:无
参数
unitsOption使用基单位、表达式单位、数据输入单位或对象信息单位。

◆ GetReferencedAttribute()

NXOpen::NXObject::AttributeInformation NXOpen::Expression::GetReferencedAttribute ( )

获取表达式引用的 NXOpen::NXObject::AttributeInformation

返回
释放结构中分配的元素。
于 NX2406.0.0 版本创建。

许可要求:无

◆ GetReferencingAttribute()

bool NXOpen::Expression::GetReferencingAttribute ( NXOpen::Expression::AttributeSourceType attributeSourceType,
NXOpen::NXObject::AttributeInformation * info )

获取引用表达式的对象的 NXOpen::NXObject::AttributeInformation

返回

于 NX2406.0.0 版本创建。

许可要求:无
参数
attributeSourceType参见 NXOpen::Expression::AttributeSourceType
info释放结构中分配的元素。

◆ GetReferencingExpressions()

std::vector< NXOpen::Expression * > NXOpen::Expression::GetReferencingExpressions ( )

返回该表达式的所有引用表达式
于 NX8.0.0 中创建。

许可证要求:无

◆ GetReferencingPartOrObjectAttribute()

bool NXOpen::Expression::GetReferencingPartOrObjectAttribute ( NXOpen::Expression::AttributeSourceType * attributeSourceType,
NXOpen::NXObject::AttributeInformation * info )

获取表达式的引用对象 NXOpen::NXObject::AttributeInformation

返回

于 NX2406.0.0 中创建。

许可证要求:无
参数
attributeSourceType请参阅 NXOpen::Expression::AttributeSourceType
info释放结构中的已分配元素。

◆ GetUsingFeatures()

std::vector< NXOpen::Features::Feature * > NXOpen::Expression::GetUsingFeatures ( )

返回使用指定表达式的特征数组。

返回
特征数组,或空数组
于NX4.0.0版本创建。

许可证要求:无

◆ GetValueUsingUnits()

double NXOpen::Expression::GetValueUsingUnits ( NXOpen::Expression::UnitsOption unitsOption)

以指定单位获取表达式的值。 注意:在新应用代码中避免使用此函数。 此方法只能用于数值表达式。
如果表达式的维度包含角度维度,且指定的选项为 Expression::UnitsOption::Base,则返回值会被转换,使角度维度以度为单位表示。 此处仅支持的另一个选项是 Expression::UnitsOption::Expression

要返回正确的基本单位值,请使用 GetNumberValueWithUnits 代替。

返回

于 NX4.0.0 版本创建。

许可要求:无
参数
unitsOption使用基本单位还是表达式单位

◆ GetVectorValueWithUnits()

NXOpen::Vector3d NXOpen::Expression::GetVectorValueWithUnits ( NXOpen::Expression::UnitsOption unitsOption)

获取矢量表达式在指定单位下的值。

返回

于NX6.0.0版本创建。

许可证要求:无
参数
unitsOption使用基本单位、表达式单位、数据录入单位或对象信息单位

◆ HasReferencedAttribute()

bool NXOpen::Expression::HasReferencedAttribute ( )

表达式是否引用属性?

返回

于 NX2406.0.0 版本创建。

许可要求:无

◆ HasReferencingObjectAttribute()

bool NXOpen::Expression::HasReferencingObjectAttribute ( )

对象属性是否引用表达式?

返回

于 NX2406.0.0 版本创建。

许可要求:无

◆ HasReferencingPartAttribute()

bool NXOpen::Expression::HasReferencingPartAttribute ( )

部件属性是否引用表达式?

返回

于 NX2406.0.0 版本创建。

许可要求:无

◆ IntegerValue()

int NXOpen::Expression::IntegerValue ( )

返回整数表达式的值。
创建于 NX6.0.0。

许可要求:无

◆ IsGeometricExpression()

bool NXOpen::Expression::IsGeometricExpression ( )

返回表达式是否为几何表达式。
于NX4.0.0版本创建。

许可证要求:无

◆ IsInterpartExpression()

bool NXOpen::Expression::IsInterpartExpression ( )

返回表达式是否为部件间表达式。
于 NX11.0.0 中创建。

许可证要求:无

◆ IsMassManagementExp()

bool NXOpen::Expression::IsMassManagementExp ( )

返回表达式是否由质量管理创建。
于 NX1980.0.0 版本创建。

许可要求:无

◆ IsMeasurementExpression()

bool NXOpen::Expression::IsMeasurementExpression ( )

返回表达式是否由测量结果拥有。
于 NX5.0.0 中创建。

许可证要求:无

◆ IsNoEdit()

bool NXOpen::Expression::IsNoEdit ( )

返回表达式是否被编辑锁定。若该属性为 false,则表达式可编辑(这是新创建表达式的默认状态)。若该属性为 true,则表达式不可编辑。这对应于交互操作中右键菜单的锁定公式/解锁公式选项。
于 NX8.5.0 中创建。

许可证要求:无

◆ IsNoUpdate()

bool NXOpen::Expression::IsNoUpdate ( )

返回表达式是否被更新锁定。若该属性为 false,则表达式可更新(这是新创建表达式的默认状态)。若该属性为 true,则表达式不可更新。
于 NX10.0.0 中创建。

许可证要求:无

◆ IsRightHandSideLockedFromEdit()

bool NXOpen::Expression::IsRightHandSideLockedFromEdit ( )

返回表达式公式是否被锁定,禁止用户编辑。锁定原因包括用户锁定、内部子系统锁定、测量或几何表达式的一部分,或由于部件间关系锁定。这对应于表达式对话框中“显示锁定公式的表达式”切换所控制的一组表达式。
于 NX11.0.0 版本创建。

许可要求:无

◆ IsUserLocked()

bool NXOpen::Expression::IsUserLocked ( )

返回表达式是否被用户锁定。如果该属性为false,则表达式可从其他部件覆盖。(这是新创建表达式的默认状态。)如果该属性为true,则不允许覆盖。这对应交互操作中的右键菜单“切换部件间覆盖锁定”选项。
注意:如果表达式当前已被覆盖,则无法设置其锁定属性。此时会抛出异常。

于NX4.0.0版本创建。

许可证要求:无

◆ IsUserSpecified()

bool NXOpen::Expression::IsUserSpecified ( )

返回表达式是否被标识为用户表达式进行显示。 这会影响表达式是否会在部件导航器中显示为用户表达式。系统、产品接口和 部件间表达式不能标记为用户指定。
于 NX1980.0.0 版本创建。

许可要求:无

◆ MakeConstant()

void NXOpen::Expression::MakeConstant ( )

将表达式设为常量。这会移除所有父项、部件间链接信息,并将公式更改为常量。
于 NX1847.0.0 版本创建。

许可要求:无

◆ NumberValue()

double NXOpen::Expression::NumberValue ( )

返回数值表达式的基单位值。 替换 Value SetValue 用于新应用代码。 注意:角度的基单位是弧度。
创建于 NX1872.0.0。

许可要求:无

◆ PointValue()

NXOpen::Point3d NXOpen::Expression::PointValue ( )

返回点表达式的基单位值。
创建于 NX6.0.0。

许可要求:无

◆ RightHandSide()

NXString NXOpen::Expression::RightHandSide ( )

返回表达式字符串的公式(右侧):"name = formula"。 注意:新应用代码应避免使用此函数。
设置/获取此属性时,若表达式涉及角度,该函数可能会设置/返回经过修改的公式。 若表达式左右两侧的单位没有匹配的角度维度,则旧系统要求应用如下转换因子(无论 arcAngle 使用什么单位): 这些函数执行的修改在某些零件需要时,可通过设置环境变量 UGII_KF_DONT_CONVERT_FORMULAS_FOR_RADIAN_UNITS 来抑制

[mm]arcRadius = 5 [degrees]arcAngle = 5 [mm]arcLength = arcRadius * arcAngle * pi() / 180.

这已不再需要,实际上会给出错误结果。表达式在加载时会被修改以移除该转换因子(pi()/180.)。但该函数的旧调用方会期望其存在,因此即使在返回公式时,该函数也会添加该因子:

[mm]arcLength = arcRadius * arcAngle

若要为所有表达式设置/获取实际的右侧内容,请改用 GetFormula

于 NX3.0.0 版本创建。

许可要求:无

◆ SetFormula() [1/2]

void NXOpen::Expression::SetFormula ( const char * rightHandSide)

设置表达式字符串的公式部分:"name = formula"。 供新应用代码替代 SetRightHandSide 使用。
于 NX1872.0.0 版本创建。

许可要求:无

参数
rightHandSide右侧内容

◆ SetFormula() [2/2]

void NXOpen::Expression::SetFormula ( const NXString & rightHandSide)

设置表达式字符串的公式部分:"name = formula"。 供新应用代码替代 SetRightHandSide 使用。
于 NX1872.0.0 版本创建。

许可要求:无

参数
rightHandSide右侧内容

◆ SetMassManagementExp()

void NXOpen::Expression::SetMassManagementExp ( bool isMassManagementExp)

设置表达式是否由质量管理创建。
于 NX1980.0.0 版本创建。

许可要求:无

参数
isMassManagementExp是否为质量管理表达式

◆ SetNoEdit()

void NXOpen::Expression::SetNoEdit ( bool isNoEdit)

设置表达式是否被编辑锁定。若该属性为 false,则表达式可编辑(这是新创建表达式的默认状态)。若该属性为 true,则表达式不可编辑。这对应于交互操作中右键菜单的锁定公式/解锁公式选项。
于 NX8.5.0 中创建。

许可证要求:无

参数
isNoEdit是否无编辑

◆ SetNoUpdate()

void NXOpen::Expression::SetNoUpdate ( bool isNoUpdate)

设置表达式是否被更新锁定。若该属性为 false,则表达式可更新(这是新创建表达式的默认状态)。若该属性为 true,则表达式不可更新。
于 NX10.0.0 中创建。

许可证要求:无

参数
isNoUpdate是否无更新

◆ SetNumberValue()

void NXOpen::Expression::SetNumberValue ( double expressionValue)

设置数值表达式的基单位值。 替换 Value SetValue 用于新应用代码。 注意:角度的基单位是弧度。
创建于 NX1872.0.0。

许可要求:无

参数
expressionValueexpressionvalue

◆ SetNumberValueWithUnits()

void NXOpen::Expression::SetNumberValueWithUnits ( double numberValue,
NXOpen::Unit * units )

以指定单位设置数值表达式的值。 指定的单位必须与表达式单位兼容,但不必相同。 如果指定的单位为 NULL,则值假定为表达式的单位,对应于如下表达式:
[mm]L = 5

创建于 NX1872.0.0。

许可要求:无

参数
numberValuenumbervalue
unitsunits

◆ SetPersistentlyLocked()

void NXOpen::Expression::SetPersistentlyLocked ( bool isLocked)

设置表达式的持久锁定状态。
于NX2306.0.0版本创建。

许可证要求:无

参数
isLocked是否锁定

◆ SetRightHandSide() [1/2]

void NXOpen::Expression::SetRightHandSide ( const char * rightHandSide)

设置表达式字符串的公式(右侧):"name = formula"。 注意:新应用代码应避免使用此函数。
设置/获取此属性时,若表达式涉及角度,该函数可能会设置/返回经过修改的公式。 若表达式左右两侧的单位没有匹配的角度维度,则旧系统要求应用如下转换因子(无论 arcAngle 使用什么单位): 这些函数执行的修改在某些零件需要时,可通过设置环境变量 UGII_KF_DONT_CONVERT_FORMULAS_FOR_RADIAN_UNITS 来抑制

[mm]arcRadius = 5 [degrees]arcAngle = 5 [mm]arcLength = arcRadius * arcAngle * pi() / 180.

这已不再需要,实际上会给出错误结果。表达式在加载时会被修改以移除该转换因子(pi()/180.)。但该函数的旧调用方会期望其存在,因此即使在返回公式时,该函数也会添加该因子:

[mm]arcLength = arcRadius * arcAngle

若要为所有表达式设置/获取实际的右侧内容,请改用 GetFormula

于 NX3.0.0 版本创建。

许可要求:无

参数
rightHandSide右侧内容

◆ SetRightHandSide() [2/2]

void NXOpen::Expression::SetRightHandSide ( const NXString & rightHandSide)

设置表达式字符串的公式(右侧):"name = formula"。 注意:新应用代码应避免使用此函数。
设置/获取此属性时,若表达式涉及角度,该函数可能会设置/返回经过修改的公式。 若表达式左右两侧的单位没有匹配的角度维度,则旧系统要求应用如下转换因子(无论 arcAngle 使用什么单位): 这些函数执行的修改在某些零件需要时,可通过设置环境变量 UGII_KF_DONT_CONVERT_FORMULAS_FOR_RADIAN_UNITS 来抑制

[mm]arcRadius = 5 [degrees]arcAngle = 5 [mm]arcLength = arcRadius * arcAngle * pi() / 180.

这已不再需要,实际上会给出错误结果。表达式在加载时会被修改以移除该转换因子(pi()/180.)。但该函数的旧调用方会期望其存在,因此即使在返回公式时,该函数也会添加该因子:

[mm]arcLength = arcRadius * arcAngle

若要为所有表达式设置/获取实际的右侧内容,请改用 GetFormula

于 NX3.0.0 版本创建。

许可要求:无

参数
rightHandSide右侧内容

◆ SetUnits()

void NXOpen::Expression::SetUnits ( NXOpen::Unit * unitType)

设置表达式的单位。此方法仅可用于数值表达式。
于 NX5.0.0 中创建。

许可证要求:无

参数
unitType单位类型

◆ SetUserLocked()

void NXOpen::Expression::SetUserLocked ( bool isLocked)

设置表达式是否被用户锁定。如果该属性为false,则表达式可从其他部件覆盖。(这是新创建表达式的默认状态。)如果该属性为true,则不允许覆盖。这对应交互操作中的右键菜单“切换部件间覆盖锁定”选项。
注意:如果表达式当前已被覆盖,则无法设置其锁定属性。此时会抛出异常。

于NX4.0.0版本创建。

许可证要求:无

参数
isLocked是否锁定

◆ SetUserSpecified()

void NXOpen::Expression::SetUserSpecified ( bool isUserSpecified)

设置表达式是否被标识为用户表达式进行显示。 这会影响表达式是否会在部件导航器中显示为用户表达式。系统、产品接口和 部件间表达式不能标记为用户指定。
于 NX1980.0.0 版本创建。

许可要求:无

参数
isUserSpecified是否为用户指定

◆ SetValue()

void NXOpen::Expression::SetValue ( double expressionValue)

设置数值表达式的基单位值(角度相关表达式除外 - 见下文)。 注意:在新应用代码中避免使用此函数。
如果表达式包含角度尺寸,则值按度计算,这不是基单位值。

要始终设置或获取实际基单位值,请使用 NumberValue SetNumberValue 代替。

创建于 NX6.0.1。

许可要求:无

参数
expressionValueexpressionvalue

◆ Status()

NXOpen::Expression::StatusOption NXOpen::Expression::Status ( )

返回表达式的 NXOpen::Expression::StatusOption 状态。
于 NX1847.0.0 版本创建。

许可要求:无

◆ StringValue()

NXString NXOpen::Expression::StringValue ( )

返回字符串表达式的值。
创建于 NX5.0.0。

许可要求:无

◆ Type()

NXString NXOpen::Expression::Type ( )

返回表达式的类型。将是以下字符串之一: "Number"、"String"、"Boolean"、"Integer"、"Point"、"Vector"、"List" 和 "Geometric"
于 NX5.0.0 中创建。

许可证要求:无

◆ Units()

NXOpen::Unit * NXOpen::Expression::Units ( )

返回表达式的单位。此方法仅可用于数值表达式。
于 NX4.0.0 中创建。

许可证要求:无

◆ Value()

double NXOpen::Expression::Value ( )

返回数值表达式的基单位值(角度相关表达式除外 - 见下文)。 注意:在新应用代码中避免使用此函数。
如果表达式包含角度尺寸,则值按度计算,这不是基单位值。

要始终设置或获取实际基单位值,请使用 NumberValue SetNumberValue 代替。

创建于 NX3.0.0。

许可要求:无

◆ VectorValue()

NXOpen::Vector3d NXOpen::Expression::VectorValue ( )

返回矢量表达式的基本单位值。
于NX6.0.0版本创建。

许可证要求:无