// This file is generated by WOK (CPPExt). // Please do not edit this file; modify original file instead. // The copyright and license terms as defined for the original file apply to // this header file considered to be the "object code" form of the original source. #ifndef _ShapeBuild_ReShape_HeaderFile #define _ShapeBuild_ReShape_HeaderFile #ifndef _Standard_HeaderFile #include #endif #ifndef _Standard_DefineHandle_HeaderFile #include #endif #ifndef _Handle_ShapeBuild_ReShape_HeaderFile #include #endif #ifndef _BRepTools_ReShape_HeaderFile #include #endif #ifndef _TopAbs_ShapeEnum_HeaderFile #include #endif #ifndef _Standard_Integer_HeaderFile #include #endif #ifndef _Standard_Boolean_HeaderFile #include #endif #ifndef _ShapeExtend_Status_HeaderFile #include #endif class TopoDS_Shape; //! Rebuilds a Shape by making pre-defined substitutions on some
//! of its components
class ShapeBuild_ReShape : public BRepTools_ReShape { public: //! Returns an empty Reshape
Standard_EXPORT ShapeBuild_ReShape(); //! Applies the substitutions requests to a shape
//!
//! gives the level of type until which requests are taken
//! into account. For subshapes of the type no rebuild
//! and futher exploring are done.
//! ACTUALLY, NOT IMPLEMENTED BELOW TopAbs_FACE
//!
//! says how to do on a SOLID,SHELL ... if one of its
//! sub-shapes has been changed:
//! 0: at least one Replace or Remove -> COMPOUND, else as such
//! 1: at least one Remove (Replace are ignored) -> COMPOUND
//! 2: Replace and Remove are both ignored
//! If Replace/Remove are ignored or absent, the result as same
//! type as the starting shape
Standard_EXPORT virtual TopoDS_Shape Apply(const TopoDS_Shape& shape,const TopAbs_ShapeEnum until,const Standard_Integer buildmode) ; //! Applies the substitutions requests to a shape.
//!
//! gives the level of type until which requests are taken
//! into account. For subshapes of the type no rebuild
//! and futher exploring are done.
Standard_EXPORT virtual TopoDS_Shape Apply(const TopoDS_Shape& shape,const TopAbs_ShapeEnum until = TopAbs_SHAPE) ; //! Returns a complete substitution status for a shape
//! 0 : not recorded, = original
//! < 0: to be removed, is NULL
//! > 0: to be replaced, is a new item
//! If is False, returns status and new shape recorded in
//! the map directly for the shape, if True and status > 0 then
//! recursively searches for the last status and new shape.
Standard_EXPORT virtual Standard_Integer Status(const TopoDS_Shape& shape,TopoDS_Shape& newsh,const Standard_Boolean last = Standard_False) ; //! Queries the status of last call to Apply(shape,enum)
//! OK : no (sub)shapes replaced or removed
//! DONE1: source (starting) shape replaced
//! DONE2: source (starting) shape removed
//! DONE3: some subshapes replaced
//! DONE4: some subshapes removed
//! FAIL1: some replacements not done because of bad type of subshape
Standard_EXPORT Standard_Boolean Status(const ShapeExtend_Status status) const; DEFINE_STANDARD_RTTI(ShapeBuild_ReShape) protected: private: }; // other Inline functions and methods (like "C++: function call" methods) #endif