1 // This file is generated by WOK (CPPExt).
2 // Please do not edit this file; modify original file instead.
3 // The copyright and license terms as defined for the original file apply to
4 // this header file considered to be the "object code" form of the original source.
6 #ifndef _BRepBuilderAPI_ModifyShape_21423_HeaderFile
7 #define _BRepBuilderAPI_ModifyShape_21423_HeaderFile
9 #ifndef _Standard_HeaderFile
10 #include <Standard.hxx>
12 #ifndef _Standard_Macro_HeaderFile
13 #include <Standard_Macro.hxx>
16 #ifndef _BRepTools_Modifier_21423_HeaderFile
17 #include <BRepTools_Modifier_21423.hxx>
19 #ifndef _TopoDS_Shape_HeaderFile
20 #include <TopoDS_Shape.hxx>
22 #ifndef _Handle_BRepTools_Modification_HeaderFile
23 #include <Handle_BRepTools_Modification.hxx>
25 #ifndef _BRepBuilderAPI_MakeShape_HeaderFile
26 #include <BRepBuilderAPI_MakeShape.hxx>
28 class BRepTools_Modification;
29 class Standard_NullObject;
30 class Standard_NoSuchObject;
32 class TopTools_ListOfShape;
35 //! Implements the methods of MakeShape for the <br>
36 //! constant topology modifications. The methods are <br>
37 //! implemented when the modification uses a Modifier <br>
38 //! from BRepTools. Some of them have to be redefined <br>
39 //! if the modification is implemented with another <br>
40 //! tool (see Transform from BRepBuilderAPI for example). <br>
41 //! The BRepBuilderAPI package provides the following <br>
42 //! frameworks to perform modifications of this sort: <br>
43 //! - BRepBuilderAPI_Copy to produce the copy of a shape, <br>
44 //! - BRepBuilderAPI_Transform and <br>
45 //! BRepBuilderAPI_GTransform to apply a geometric <br>
46 //! transformation to a shape, <br>
47 //! - BRepBuilderAPI_NurbsConvert_21423 to convert the <br>
48 //! whole geometry of a shape into NURBS geometry, <br>
49 //! - BRepOffsetAPI_DraftAngle to build a tapered shape. <br>
50 class BRepBuilderAPI_ModifyShape_21423 : public BRepBuilderAPI_MakeShape {
53 void* operator new(size_t,void* anAddress)
57 void* operator new(size_t size)
59 return Standard::Allocate(size);
61 void operator delete(void *anAddress)
63 if (anAddress) Standard::Free((Standard_Address&)anAddress);
66 //! Returns the list of shapes modified from the shape <br>
68 Standard_EXPORT virtual const TopTools_ListOfShape& Modified(const TopoDS_Shape& S) ;
69 //! Returns the modified shape corresponding to <S>. <br>
70 //! S can correspond to the entire initial shape or to its subshape. <br>
72 //! Standard_NoSuchObject if S is not the initial shape or <br>
73 //! a subshape of the initial shape to which the <br>
74 //! transformation has been applied. Raises NoSuchObject from Standard <br>
75 //! if S is not the initial shape or a sub-shape <br>
76 //! of the initial shape. <br>
77 Standard_EXPORT virtual const TopoDS_Shape& ModifiedShape(const TopoDS_Shape& S) const;
85 //! Empty constructor. <br>
86 Standard_EXPORT BRepBuilderAPI_ModifyShape_21423();
87 //! Initializes the modifier with the Shape <S>, and <br>
88 //! set the field <myInitialShape> to <S>. <br>
89 Standard_EXPORT BRepBuilderAPI_ModifyShape_21423(const TopoDS_Shape& S);
90 //! Set the field <myModification> with <M>. <br>
91 Standard_EXPORT BRepBuilderAPI_ModifyShape_21423(const Handle(BRepTools_Modification)& M);
92 //! Initializes the modifier with the Shape <S>, and <br>
93 //! set the field <myInitialShape> to <S>, and set the <br>
94 //! field <myModification> with <M>, the performs the <br>
95 //! modification. <br>
96 Standard_EXPORT BRepBuilderAPI_ModifyShape_21423(const TopoDS_Shape& S,const Handle(BRepTools_Modification)& M);
97 //! Performs the previously given modification on the <br>
99 Standard_EXPORT void DoModif(const TopoDS_Shape& S) ;
100 //! Performs the modification <M> on a previously <br>
101 //! given shape. <br>
102 Standard_EXPORT void DoModif(const Handle(BRepTools_Modification)& M) ;
103 //! Performs the modification <M> on the shape <S>. <br>
104 Standard_EXPORT void DoModif(const TopoDS_Shape& S,const Handle(BRepTools_Modification)& M) ;
107 BRepTools_Modifier_21423 myModifier;
108 TopoDS_Shape myInitialShape;
109 Handle_BRepTools_Modification myModification;
115 Standard_EXPORT void DoModif() ;
126 // other Inline functions and methods (like "C++: function call" methods)