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

更新操作接口 更多...

#include <Update.hxx>

Public 类型

enum  FailureOption {
  FailureOptionNoOption , FailureOptionUndo , FailureOptionSuppress , FailureOptionSuppressAll ,
  FailureOptionAccept , FailureOptionAcceptAll , FailureOptionDelete , FailureOptionDeleteDependents ,
  FailureOptionInterrupt
}
enum  Option { OptionNow , OptionLater }
 指定方法是否应执行更新。 选择不执行更新的方法,需要在后续调用 NXOpen::Update::DoUpdate 。通用API中的部分方法可能会执行更新。为提升性能, 这些方法会接收一个不执行更新的输入选项。例如,在循环中调用的方法可设置该选项为不更新, 待循环结束后再执行一次显式更新。
于NX5.0.1版本创建。
更多...

Public 成员函数

int AddObjectsToDeleteList (const std::vector< NXOpen::TaggedObject * > &objects)
 将对象添加到全局删除列表。 全局删除列表中的对象将在下次更新时被删除。 可通过NXOpen::Update::DoUpdate 方法执行更新。
注意: 若要从草图中移除对象,应使用NXOpen::Sketch::DeleteObjects 替代此方法。

int AddToDeleteList (NXOpen::TaggedObject *object)
 将对象添加至全局删除列表。 全局删除列表中的对象会在下次执行更新时被删除。 可通过 NXOpen::Update::DoUpdate 方法执行更新。
注意:若要从草图中移除对象,应使用 NXOpen::Sketch::DeleteObjects 替代此方法。

bool AssemblyConstraintsDelay ()
void ClearDeleteList ()
 清空全局删除列表的内容。 清空全局删除列表不会删除列表中的任何对象。
于NX3.0.0版本创建。

许可要求:无
void ClearErrorList ()
 清空更新错误列表。 有关更新错误列表的更多信息,请参见NXOpen::Update::ErrorList
于NX3.0.0版本创建。

许可要求:无
void DoAssemblyConstraintsUpdate (NXOpen::Session::UndoMarkId undoMarkId)
void DoAssemblyConstraintsUpdateInPart (NXOpen::Part *partTag, NXOpen::Session::UndoMarkId undoMarkId)
void DoInterpartUpdate (NXOpen::Session::UndoMarkId undoMark)
 执行部件间更新。 确保会话中的所有部件根据其他已加载部件的变更完成更新。注意,无论部件间更新延迟标志的状态如何,此更新都会执行。 参见 NXOpen::Update::InterpartDelay
创建于NX3.0.0。

许可要求:无
int DoUpdate (NXOpen::Session::UndoMarkId undoMark)
void EndLocalUpdate ()
 结束本地更新会话,并清除该会话的更新标记。 有关本地更新会话的详细信息,请参见NXOpen::Update::StartLocalUpdate
创建于NX7.5.1。

许可要求:无
NXOpen::ErrorListErrorList ()
NXOpen::Update::FailureOption GetDefaultUpdateFailureAction ()
 获取对象更新失败时的默认操作。 若对象更新失败,将执行默认的更新失败操作。即使该对象设置了特定的更新操作,默认更新失败操作仍会在更新失败的对象上执行。
std::vector< NXOpen::TaggedObject * > GetObjectsOnDeleteList ()
 获取全局删除列表中的对象。
bool GetUpdateLock ()
 获取更新锁状态。 另请参见NXOpen::Update::SetUpdateLock
bool InterpartDelay ()
void LogForUpdate (NXOpen::TaggedObject *objectToUpdate)
 记录待更新的对象。
创建于NX7.5.3。

许可要求:无
void MakeUpToDate (const std::vector< NXOpen::NXObject * > &objects, NXOpen::Session::UndoMarkId undoMarkId)
 NX_DEPRECATED ("Deprecated in NX1899.0.0. Use NXOpen::Preferences::SessionModeling::DelayModelUpdates and NXOpen::Preferences::SessionModeling::ModelDelayUpdateGranilarityinstead.") bool IntrapartPartModuleDelay()
 NX_DEPRECATED ("Deprecated in NX1899.0.0. Use NXOpen::Preferences::SessionModeling::SetDelayModelUpdateAndGranularity instead.") void SetIntrapartPartModuleDelay(bool delayed)
bool ProductInterfaceDelay ()
void RemoveObjectsFromDeleteList (const std::vector< NXOpen::TaggedObject * > &objects)
 从全局删除列表中移除对象。 注意: 若对象不在删除列表中,将被忽略,不会抛出异常。
创建于NX11.0.0。

许可要求 : 无
void RemoveUpdateFailureAction (NXOpen::TaggedObject *object)
 移除指定对象的更新失败操作。
创建于NX7.5.0。

许可要求:无
void SetAssemblyConstraintsDelay (bool delayed)
void SetDefaultUpdateFailureAction (NXOpen::Update::FailureOption failureAction)
 设置对象更新失败时的默认操作。 若对象更新失败,将执行默认的更新失败操作。即使该对象设置了特定的更新操作,默认更新失败操作仍会在更新失败的对象上执行。
创建于NX9.0.0。

许可要求:无
void SetInterpartDelay (bool delayed)
void SetProductInterfaceDelay (bool delayed)
void SetPropagateDelete (bool propagateToDelete)
 设置更新时的传播删除
创建于NX12.0.0。

许可要求:无
void SetUpdateFailureAction (NXOpen::TaggedObject *object, NXOpen::Update::FailureOption failureAction)
 设置指定对象的更新失败操作。 若对象更新失败,将执行此更新失败操作。若已定义默认更新失败操作,该操作将覆盖为对象设置的任何特定更新失败操作。
创建于NX7.5.0。

许可要求:无
void SetUpdateLock (bool lock)
 设置更新锁以锁定或解锁更新。 锁定更新后,模型更新将被锁定,直到解锁更新。请注意,锁定更新需格外谨慎, 因为在更新锁定状态下执行操作可能会产生非预期结果或导致意外失败。
如果选择锁定更新,必须确保在操作完成后恢复锁定前的更新锁状态。 可通过NXOpen::Update::GetUpdateLock 获取锁状态。 此外,恢复锁状态后必须调用NXOpen::Update::DoUpdate, 以确保更新锁定期间添加到更新列表中的实体被更新。

创建于NX7.5.5。

许可要求:无
void StartLocalUpdate ()
 启动本地更新会话,并为该会话设置更新标记。 这可确保在清除标记前执行下一次更新时,仅更新自设置标记以来添加到更新列表中的实体。 如需执行更新,请使用NXOpen::Update::DoUpdate。 如需清除标记,请使用NXOpen::Update::EndLocalUpdate
注意:
tag_t Tag () const
void UndelayObjectUpdate (NXOpen::TaggedObject *objectToUpdate)
void UpdateAllLinkedPartModulesInPart (NXOpen::Part *partTag, NXOpen::Session::UndoMarkId undoMarkId)
void UpdateAllProductInterfaceInPart (NXOpen::Part *partTag, NXOpen::Session::UndoMarkId undoMarkId)

详细描述

更新操作接口

提供更新和删除相关方法。
要获取此类实例,请参考 NXOpen::Session

于NX3.0.0版本创建。

成员枚举类型说明

◆ FailureOption

指定对象更新失败时要执行的操作。
于NX7.5.0版本创建。

枚举值
FailureOptionNoOption 

无操作选项

FailureOptionUndo 

执行撤销

FailureOptionSuppress 

抑制更新失败的对象

FailureOptionSuppressAll 

抑制更新失败的对象及其后续对象

FailureOptionAccept 

接受对象更新失败

FailureOptionAcceptAll 

接受更新失败的对象及其后续对象的失败结果

FailureOptionDelete 

删除更新失败的对象

FailureOptionDeleteDependents 

删除更新失败的对象及其依赖对象

FailureOptionInterrupt 

更新失败时中断更新操作

◆ Option

指定方法是否应执行更新。 选择不执行更新的方法,需要在后续调用 NXOpen::Update::DoUpdate 。通用API中的部分方法可能会执行更新。为提升性能, 这些方法会接收一个不执行更新的输入选项。例如,在循环中调用的方法可设置该选项为不更新, 待循环结束后再执行一次显式更新。
于NX5.0.1版本创建。

枚举值
OptionNow 

立即执行更新

OptionLater 

不执行更新

成员函数说明

◆ AddObjectsToDeleteList()

int NXOpen::Update::AddObjectsToDeleteList ( const std::vector< NXOpen::TaggedObject * > & objects)

将对象添加到全局删除列表。 全局删除列表中的对象将在下次更新时被删除。 可通过NXOpen::Update::DoUpdate 方法执行更新。
注意: 若要从草图中移除对象,应使用NXOpen::Sketch::DeleteObjects 替代此方法。

返回
更新模块错误列表中的错误数量。若此方法执行过程中出错,错误将被添加到该列表。 要获取错误列表, 请使用NXOpen::Update::ErrorList
创建于NX11.0.0。

许可要求 : 无
参数
objects要删除的对象

◆ AddToDeleteList()

int NXOpen::Update::AddToDeleteList ( NXOpen::TaggedObject * object)

将对象添加至全局删除列表。 全局删除列表中的对象会在下次执行更新时被删除。 可通过 NXOpen::Update::DoUpdate 方法执行更新。
注意:若要从草图中移除对象,应使用 NXOpen::Sketch::DeleteObjects 替代此方法。

返回
更新模块错误列表中的错误数量。若此方法执行过程中出现错误,会被添加至该错误列表。 可通过 NXOpen::Update::ErrorList 获取错误列表。
弃用
于NX12.0.0版本弃用。请使用 Update::AddObjectsToDeleteList 替代。

于NX3.0.0版本创建。

许可要求:无

待删除的对象

将对象添加到全局删除列表。 全局删除列表中的对象将在下次更新时被删除。 可通过NXOpen::Update::DoUpdate 方法执行更新。
注意:若要从草图中移除对象,请改用NXOpen::Sketch::DeleteObjects

返回
更新模块错误列表中的错误数量。若调用此方法时发生错误,错误将被添加至该列表。 如需获取错误列表,请使用NXOpen::Update::ErrorList
于NX3.0.0版本创建。

许可要求:无
参数
object待删除的对象

◆ AssemblyConstraintsDelay()

bool NXOpen::Update::AssemblyConstraintsDelay ( )

获取装配约束延迟标志的状态。若为true,会话中所有装配约束的更新将被延迟;若为false,更新将在会话中所有部件间生效。
创建于NX7.5.0。

许可要求:无

◆ ClearDeleteList()

void NXOpen::Update::ClearDeleteList ( )

清空全局删除列表的内容。 清空全局删除列表不会删除列表中的任何对象。
于NX3.0.0版本创建。

许可要求:无

从全局删除列表中移除对象。 注意:若对象不在删除列表中,将被忽略,不会抛出异常。

弃用
于NX12.0.0版本弃用。请改用Update::RemoveObjectsFromDeleteList

于NX3.0.0版本创建。

许可要求:无

要从删除列表中移除的对象 获取全局删除列表

返回

弃用
于NX12.0.0版本弃用。请改用Update::GetObjectsOnDeleteList

于NX3.0.0版本创建。

许可要求:无

◆ DoAssemblyConstraintsUpdate()

void NXOpen::Update::DoAssemblyConstraintsUpdate ( NXOpen::Session::UndoMarkId undoMarkId)

执行装配约束更新。确保会话中所有包含过期装配约束的部件完成更新。
创建于NX7.5.0。

许可要求:无

参数
undoMarkId若更新出错,系统将回滚到此撤销标记。

◆ DoAssemblyConstraintsUpdateInPart()

void NXOpen::Update::DoAssemblyConstraintsUpdateInPart ( NXOpen::Part * partTag,
NXOpen::Session::UndoMarkId undoMarkId )

执行装配约束更新。确保包含过期装配约束的指定部件完成更新。
创建于NX7.5.0。

许可要求:无

参数
partTag部件标识
undoMarkId若更新出错,系统将回滚到此撤销标记。

◆ DoInterpartUpdate()

void NXOpen::Update::DoInterpartUpdate ( NXOpen::Session::UndoMarkId undoMark)

执行部件间更新。 确保会话中的所有部件根据其他已加载部件的变更完成更新。注意,无论部件间更新延迟标志的状态如何,此更新都会执行。 参见 NXOpen::Update::InterpartDelay
创建于NX3.0.0。

许可要求:无

参数
undoMark若更新出错,系统将回滚到此撤销标记。

◆ DoUpdate()

int NXOpen::Update::DoUpdate ( NXOpen::Session::UndoMarkId undoMark)

更新当前会话

返回
更新模块错误列表中的错误数量。 若更新过程中发生错误,错误将被添加至该列表。如需获取错误列表,请使用 NXOpen::Update::ErrorList
于NX3.0.0版本创建。

许可要求:无
参数
undoMark若发生更新错误,系统将回滚至此撤销标记并抛出异常。

◆ ErrorList()

NXOpen::ErrorList * NXOpen::Update::ErrorList ( )

获取自上次清空以来更新模块遇到的所有错误列表。如需清空列表,请使用NXOpen::Update::ClearErrorList
于NX3.0.0版本创建。

许可要求:无

◆ GetDefaultUpdateFailureAction()

NXOpen::Update::FailureOption NXOpen::Update::GetDefaultUpdateFailureAction ( )

获取对象更新失败时的默认操作。 若对象更新失败,将执行默认的更新失败操作。即使该对象设置了特定的更新操作,默认更新失败操作仍会在更新失败的对象上执行。

返回
默认的更新失败操作
创建于NX9.0.0。

许可要求:无

◆ GetObjectsOnDeleteList()

std::vector< NXOpen::TaggedObject * > NXOpen::Update::GetObjectsOnDeleteList ( )

获取全局删除列表中的对象。

返回
全局删除列表中的对象
创建于NX11.0.0。

许可要求 : 无

◆ GetUpdateLock()

bool NXOpen::Update::GetUpdateLock ( )

获取更新锁状态。 另请参见NXOpen::Update::SetUpdateLock

返回
锁状态
创建于NX7.5.5。

许可要求:无

◆ InterpartDelay()

bool NXOpen::Update::InterpartDelay ( )

获取部件间延迟更新标志的状态。若开启部件间延迟更新,更新将不会传播至工作部件之外;若关闭,更新将应用于会话中的所有部件。
于NX3.0.0版本创建。

许可要求:无

◆ LogForUpdate()

void NXOpen::Update::LogForUpdate ( NXOpen::TaggedObject * objectToUpdate)

记录待更新的对象。
创建于NX7.5.3。

许可要求:无

参数
objectToUpdate待更新的对象

◆ MakeUpToDate()

void NXOpen::Update::MakeUpToDate ( const std::vector< NXOpen::NXObject * > & objects,
NXOpen::Session::UndoMarkId undoMarkId )

更新所有过期的内部部件模块

弃用
于NX1899.0.0弃用。请改用Update::UpdateModel

创建于NX9.0.0。

许可要求:无

部件标识 若发生更新错误,系统将回滚到此撤销标记。 更新所有指定的过期特征或表达式,使其变为最新状态
创建于NX9.0.0。

许可要求 : 无

参数
objects要更新为最新状态的对象
undoMarkId若更新出错,系统将回滚到此撤销标记

◆ NX_DEPRECATED() [1/2]

NXOpen::Update::NX_DEPRECATED ( "Deprecated in NX1899.0.0. Use NXOpen::Preferences::SessionModeling::DelayModelUpdates and NXOpen::Preferences::SessionModeling::ModelDelayUpdateGranilarityinstead." )

获取内部部件模块的延迟更新状态

弃用
于NX1899.0.0弃用。请改用NXOpen::Preferences::SessionModeling::DelayModelUpdatesNXOpen::Preferences::SessionModeling::ModelDelayUpdateGranilarity

创建于NX9.0.0。

许可要求:无

◆ NX_DEPRECATED() [2/2]

NXOpen::Update::NX_DEPRECATED ( "Deprecated in NX1899.0.0. Use NXOpen::Preferences::SessionModeling::SetDelayModelUpdateAndGranularity instead." )

设置内部部件模块的延迟更新状态

弃用
于NX1899.0.0弃用。请改用NXOpen::Preferences::SessionModeling::SetDelayModelUpdateAndGranularity

创建于NX9.0.0。

许可要求:无

内部部件延迟标记的新状态。

◆ ProductInterfaceDelay()

bool NXOpen::Update::ProductInterfaceDelay ( )

获取产品接口延迟的延迟状态
创建于NX11.0.1。

许可要求 : 无

◆ RemoveObjectsFromDeleteList()

void NXOpen::Update::RemoveObjectsFromDeleteList ( const std::vector< NXOpen::TaggedObject * > & objects)

从全局删除列表中移除对象。 注意: 若对象不在删除列表中,将被忽略,不会抛出异常。
创建于NX11.0.0。

许可要求 : 无

参数
objects要从删除列表中移除的对象

◆ RemoveUpdateFailureAction()

void NXOpen::Update::RemoveUpdateFailureAction ( NXOpen::TaggedObject * object)

移除指定对象的更新失败操作。
创建于NX7.5.0。

许可要求:无

参数
object更新失败的对象

◆ SetAssemblyConstraintsDelay()

void NXOpen::Update::SetAssemblyConstraintsDelay ( bool delayed)

设置装配约束延迟标志的状态。若为true,会话中所有装配约束的更新将被延迟;若为false,更新将在会话中所有部件间生效。
创建于NX7.5.0。

许可要求:无

参数
delayed装配约束延迟标志的新状态。

◆ SetDefaultUpdateFailureAction()

void NXOpen::Update::SetDefaultUpdateFailureAction ( NXOpen::Update::FailureOption failureAction)

设置对象更新失败时的默认操作。 若对象更新失败,将执行默认的更新失败操作。即使该对象设置了特定的更新操作,默认更新失败操作仍会在更新失败的对象上执行。
创建于NX9.0.0。

许可要求:无

参数
failureAction默认的更新失败操作

◆ SetInterpartDelay()

void NXOpen::Update::SetInterpartDelay ( bool delayed)

设置部件间延迟更新标志的状态。若开启部件间延迟更新,更新将不会传播至工作部件之外;若关闭,更新将应用于会话中的所有部件。
于NX3.0.0版本创建。

许可要求:无

参数
delayed部件间延迟更新标志的新状态。

◆ SetProductInterfaceDelay()

void NXOpen::Update::SetProductInterfaceDelay ( bool delayed)

设置产品接口延迟的延迟状态
创建于NX11.0.1。

许可要求 : 无

参数
delayed产品接口延迟标志的新状态

◆ SetPropagateDelete()

void NXOpen::Update::SetPropagateDelete ( bool propagateToDelete)

设置更新时的传播删除
创建于NX12.0.0。

许可要求:无

参数
propagateToDelete传播删除开关

◆ SetUpdateFailureAction()

void NXOpen::Update::SetUpdateFailureAction ( NXOpen::TaggedObject * object,
NXOpen::Update::FailureOption failureAction )

设置指定对象的更新失败操作。 若对象更新失败,将执行此更新失败操作。若已定义默认更新失败操作,该操作将覆盖为对象设置的任何特定更新失败操作。
创建于NX7.5.0。

许可要求:无

参数
object更新失败的对象
failureAction更新失败操作

◆ SetUpdateLock()

void NXOpen::Update::SetUpdateLock ( bool lock)

设置更新锁以锁定或解锁更新。 锁定更新后,模型更新将被锁定,直到解锁更新。请注意,锁定更新需格外谨慎, 因为在更新锁定状态下执行操作可能会产生非预期结果或导致意外失败。
如果选择锁定更新,必须确保在操作完成后恢复锁定前的更新锁状态。 可通过NXOpen::Update::GetUpdateLock 获取锁状态。 此外,恢复锁状态后必须调用NXOpen::Update::DoUpdate, 以确保更新锁定期间添加到更新列表中的实体被更新。

创建于NX7.5.5。

许可要求:无

参数
lock锁状态

◆ StartLocalUpdate()

void NXOpen::Update::StartLocalUpdate ( )

启动本地更新会话,并为该会话设置更新标记。 这可确保在清除标记前执行下一次更新时,仅更新自设置标记以来添加到更新列表中的实体。 如需执行更新,请使用NXOpen::Update::DoUpdate。 如需清除标记,请使用NXOpen::Update::EndLocalUpdate
注意:

  1. 在标记生效期间已更新的实体,即使依赖于新恢复列表中的实体,也不会在下次更新时被更新。
  2. 本地更新不支持嵌套,即如果一个本地更新流程已启动但尚未结束,则无法启动另一个。



创建于NX7.5.1。

许可要求:无

◆ Tag()

tag_t NXOpen::Update::Tag ( ) const

返回此对象的标识。

◆ UndelayObjectUpdate()

void NXOpen::Update::UndelayObjectUpdate ( NXOpen::TaggedObject * objectToUpdate)

取消对象的延迟更新
创建于NX7.5.3。

许可要求:无

参数
objectToUpdate要取消延迟更新的对象

◆ UpdateAllLinkedPartModulesInPart()

void NXOpen::Update::UpdateAllLinkedPartModulesInPart ( NXOpen::Part * partTag,
NXOpen::Session::UndoMarkId undoMarkId )

更新部件中所有关联部件模块
创建于NX10.0.0。

许可要求 : usr_defined_features ("用户自定义特征")

参数
partTag部件标识
undoMarkId若更新出错,系统将回滚到此撤销标记

◆ UpdateAllProductInterfaceInPart()

void NXOpen::Update::UpdateAllProductInterfaceInPart ( NXOpen::Part * partTag,
NXOpen::Session::UndoMarkId undoMarkId )

更新所有过期的产品接口
创建于NX11.0.1。

许可要求 : 无

参数
partTag部件标识
undoMarkId若更新出错,系统将回滚到此撤销标记