1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-09-18 14:27:39 +03:00

0028055: Add UpdateAssemblies() method for top-down update of assembly compounds

- Implement top-down update for assemblies in XCAFDoc_ShapeTool
- Get rid of UpdateAssembly() method used for partial (parent-only) update
- Adjust STEP and IGES translators to use the top-down update after filling OCAF
- Implement XUpdateAssemblies Draw command
- Add test cases bug28055_1 and bug28055_2 for component removal and part update
- Update XDE documentation to mention the new UpdateAssemblies() method

Correction for issue CR28055
Adjusting of test case bugs/fclasses/bug28217
This commit is contained in:
ssv
2017-01-19 16:22:32 +03:00
committed by apn
parent 7755fe829e
commit acc909a893
11 changed files with 275 additions and 32 deletions

View File

@@ -286,8 +286,8 @@ public:
//! Removes a component from its assembly
Standard_EXPORT void RemoveComponent (const TDF_Label& comp) const;
//! Update an assembly at label <L>
Standard_EXPORT void UpdateAssembly (const TDF_Label& L) const;
//! Top-down update for all assembly compounds stored in the document.
Standard_EXPORT void UpdateAssemblies();
//! Finds a label for subshape <sub> of shape stored on
//! label shapeL
@@ -421,7 +421,12 @@ protected:
private:
//! Checks recursively if the given assembly item is modified. If so, its
//! associated compound is updated. Returns true if the assembly item is
//! modified, false -- otherwise.
Standard_EXPORT Standard_Boolean updateComponent(const TDF_Label& theAssmLabel,
TopoDS_Shape& theUpdatedShape) const;
//! Adds a new top-level (creates and returns a new label)
//! For internal use. Used by public method AddShape.
Standard_EXPORT TDF_Label addShape (const TopoDS_Shape& S, const Standard_Boolean makeAssembly = Standard_True);