A3DMiscCascadedAttributesPush

A3DStatus A3DMiscCascadedAttributesPush(A3DMiscCascadedAttributes *pAttr, const A3DRootBaseWithGraphics *pBase, const A3DMiscCascadedAttributes *pFather)
A3DStatus A3DMiscCascadedAttributesPush(A3DMiscCascadedAttributes* pAttr, const A3DRootBaseWithGraphics* pBase, const A3DMiscCascadedAttributes* pFather)

Computes the result of cascaded attribute propagation from a parent node.

2.0

In the context of a model file node hierarchy, cascaded describes the way an application using HOOPS Exchange will resolve conflicting attributes. Attributes are propagated downstream, by overriding current attributes with the parent node’s ones according to specific inheritance rules defined in Bit Field for Behavior on Graphics.

Although properties propagation can be manually applied if those rules are known, HOOPS Exchange provides #A3DMiscCascadedAttributesPush as a convenience function.

#A3DMiscCascadedAttributesPush computes the result of propagating attributes from pFather to pBase and writes them into pAttr, which data can then be retrieves using #A3DMiscCascadedAttributesGet.

pBase can be any instance of #A3DTopoFace #A3DTopoShell, #A3DTopoConnex, #A3DRiRepresentationItem, #A3DAsmPartDefinition or #A3DAsmProductOccurrence.

Parameters

pAttr: A handle to the resulting cascaded attributes

pBase: The child node the attributes are computed from

pFather: The attributes held by the parent node

Returns

A3D_SUCCESS or an error code in case of failure.