Share

AcDbAssocGeomDependency Class

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.

Links

AcDbAssocGeomDependency Methods

Was this information helpful?