Class Hierarchy
AcRxObject AcGiDrawable AcDbObject AcDbAssocDependency AcDbAssocGeomDependency
C++
class AcDbAssocGeomDependency : public AcDbAssocDependency;
File
AcDbAssocGeomDependency.h
Description
This class represents a dependency on a subentity (face/edge/vertex) of a geometric entity. It keeps an AcDbAssocPersSubentId that persistently identifies the subentity and provides a new protocol to set the referenced subentity and get/set the subentity geometry.
This class may also optionally cache the geometry of the referenced subentity that then allows the filtering-out of irrelevant change notifications that do no affect the referenced subentity. The caching is controlled by the setCachingSubentityGeometry() method.
By default the dependency does not cache the geometry of the referenced subentity. The isRelevantChange() predicate uses the base class implementation which calls AcDbAssocAction::isRelevantDependencyChange() of the owning action, letting the action that owns the dependency decide, such as by caching the geometry of the referenced subentity and comparing it with the current subentity geometry.
When the dependency caches the geometry of the referenced subentity, the isRelevantChange() predicate returns false if the geometry of the referenced subentity is the same as the cached geometry. This is how the dependency can filter-out irrelevant change notifications when the referenced subentity geometry does not really change, when something else changes.