Open CASCADE Technology  6.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Protected Member Functions | Protected Attributes
BRepSweep_Trsf Class Referenceabstract

This class is inherited from NumLinearRegularSweep
to implement the simple swept primitives built
moving a Shape with a Trsf. It often is possible
to build the constructed subshapes by a simple
move of the generating subshapes (shared topology
and geometry). So two ways of construction are
proposed :


More...

#include <BRepSweep_Trsf.hxx>

Inheritance diagram for BRepSweep_Trsf:
Inheritance graph
[legend]

Public Member Functions

virtual void Delete ()
 
virtual ~BRepSweep_Trsf ()
 
void Init ()
 ends the construction of the swept primitive
calling the virtual geometric functions that can't
be called in the initialize.
More...
 
Standard_Boolean Process (const TopoDS_Shape &aGenS, const Sweep_NumShape &aDirV)
 function called to analize the way of construction
of the shapes generated by aGenS and aDirV.
More...
 
virtual TopoDS_Shape MakeEmptyVertex (const TopoDS_Shape &aGenV, const Sweep_NumShape &aDirV)=0
 Builds the vertex addressed by [aGenV,aDirV], with its
geometric part, but without subcomponents.
More...
 
virtual TopoDS_Shape MakeEmptyDirectingEdge (const TopoDS_Shape &aGenV, const Sweep_NumShape &aDirE)=0
 Builds the edge addressed by [aGenV,aDirE], with its
geometric part, but without subcomponents.
More...
 
virtual TopoDS_Shape MakeEmptyGeneratingEdge (const TopoDS_Shape &aGenE, const Sweep_NumShape &aDirV)=0
 Builds the edge addressed by [aGenE,aDirV], with its
geometric part, but without subcomponents.
More...
 
virtual void SetParameters (const TopoDS_Shape &aNewFace, TopoDS_Shape &aNewVertex, const TopoDS_Shape &aGenF, const TopoDS_Shape &aGenV, const Sweep_NumShape &aDirV)=0
 Sets the parameters of the new vertex on the new
face. The new face and new vertex where generated
from aGenF, aGenV and aDirV .
More...
 
virtual void SetDirectingParameter (const TopoDS_Shape &aNewEdge, TopoDS_Shape &aNewVertex, const TopoDS_Shape &aGenV, const Sweep_NumShape &aDirE, const Sweep_NumShape &aDirV)=0
 Sets the parameter of the new vertex on the new
edge. The new edge and new vertex where generated
from aGenV aDirE, and aDirV.
More...
 
virtual void SetGeneratingParameter (const TopoDS_Shape &aNewEdge, TopoDS_Shape &aNewVertex, const TopoDS_Shape &aGenE, const TopoDS_Shape &aGenV, const Sweep_NumShape &aDirV)=0
 Sets the parameter of the new vertex on the new
edge. The new edge and new vertex where generated
from aGenE, aGenV and aDirV .
More...
 
virtual TopoDS_Shape MakeEmptyFace (const TopoDS_Shape &aGenS, const Sweep_NumShape &aDirS)=0
 Builds the face addressed by [aGenS,aDirS], with
its geometric part, but without subcomponents. The
couple aGenS, aDirS can be a "generating face and <br> a directing vertex" or "a generating edge and a <br> directing edge".
More...
 
virtual void SetPCurve (const TopoDS_Shape &aNewFace, TopoDS_Shape &aNewEdge, const TopoDS_Shape &aGenF, const TopoDS_Shape &aGenE, const Sweep_NumShape &aDirV, const TopAbs_Orientation orien)=0
 Sets the PCurve for a new edge on a new face. The
new edge and the new face were generated using
aGenF, aGenE and aDirV.
More...
 
virtual void SetGeneratingPCurve (const TopoDS_Shape &aNewFace, TopoDS_Shape &aNewEdge, const TopoDS_Shape &aGenE, const Sweep_NumShape &aDirE, const Sweep_NumShape &aDirV, const TopAbs_Orientation orien)=0
 Sets the PCurve for a new edge on a new face. The
new edge and the new face were generated using
aGenE, aDirE and aDirV.
More...
 
virtual void SetDirectingPCurve (const TopoDS_Shape &aNewFace, TopoDS_Shape &aNewEdge, const TopoDS_Shape &aGenE, const TopoDS_Shape &aGenV, const Sweep_NumShape &aDirE, const TopAbs_Orientation orien)=0
 Sets the PCurve for a new edge on a new face. The
new edge and the new face were generated using
aGenE, aDirE and aGenV.
More...
 
virtual Standard_Boolean GGDShapeIsToAdd (const TopoDS_Shape &aNewShape, const TopoDS_Shape &aNewSubShape, const TopoDS_Shape &aGenS, const TopoDS_Shape &aSubGenS, const Sweep_NumShape &aDirS) const =0
 Returns true if aNewSubShape (addressed by
aSubGenS and aDirS) must be added in aNewShape
(addressed by aGenS and aDirS).
More...
 
virtual Standard_Boolean GDDShapeIsToAdd (const TopoDS_Shape &aNewShape, const TopoDS_Shape &aNewSubShape, const TopoDS_Shape &aGenS, const Sweep_NumShape &aDirS, const Sweep_NumShape &aSubDirS) const =0
 Returns true if aNewSubShape (addressed by
aGenS and aSubDirS) must be added in aNewShape
(addressed by aGenS and aDirS).
More...
 
virtual Standard_Boolean SeparatedWires (const TopoDS_Shape &aNewShape, const TopoDS_Shape &aNewSubShape, const TopoDS_Shape &aGenS, const TopoDS_Shape &aSubGenS, const Sweep_NumShape &aDirS) const =0
 In some particular cases the topology of a
generated face must be composed of independant
closed wires, in this case this function returns
true.
More...
 
virtual Standard_Boolean HasShape (const TopoDS_Shape &aGenS, const Sweep_NumShape &aDirS) const =0
 Returns true if aDirS and aGenS addresses a
resulting Shape. In some specific cases the shape
can be geometrically inexsistant, then this
function returns false.
More...
 
virtual Standard_Boolean IsInvariant (const TopoDS_Shape &aGenS) const =0
 Returns true if the geometry of aGenS is not
modified by the trsf of the BRepSweep Trsf.
More...
 
void SetContinuity (const TopoDS_Shape &aGenS, const Sweep_NumShape &aDirS)
 Called to propagate the continuity of every vertex
between two edges of the generating wire aGenS on
the generated edge and faces.
More...
 
- Public Member Functions inherited from BRepSweep_NumLinearRegularSweep
virtual ~BRepSweep_NumLinearRegularSweep ()
 
virtual TopAbs_Orientation DirectSolid (const TopoDS_Shape &aGenS, const Sweep_NumShape &aDirS)=0
 
virtual TopoDS_Shape SplitShell (const TopoDS_Shape &aNewShape) const
 
TopoDS_Shape Shape (const TopoDS_Shape &aGenS, const Sweep_NumShape &aDirS)
 
TopoDS_Shape Shape (const TopoDS_Shape &aGenS)
 
TopoDS_Shape Shape ()
 
TopoDS_Shape FirstShape ()
 
TopoDS_Shape LastShape ()
 
TopoDS_Shape FirstShape (const TopoDS_Shape &aGenS)
 
TopoDS_Shape LastShape (const TopoDS_Shape &aGenS)
 
Standard_Boolean Closed () const
 

Protected Member Functions

 BRepSweep_Trsf (const BRep_Builder &aBuilder, const TopoDS_Shape &aGenShape, const Sweep_NumShape &aDirWire, const TopLoc_Location &aLocation, const Standard_Boolean aCopy)
 
 Initialize  the Trsf BrepSweep, if  aCopy  is true <br>
     the  basis elements  are    shared  as   often  as <br>
     possible, else everything is copied. <br>


More...

 
- Protected Member Functions inherited from BRepSweep_NumLinearRegularSweep
 BRepSweep_NumLinearRegularSweep (const BRepSweep_Builder &aBuilder, const TopoDS_Shape &aGenShape, const Sweep_NumShape &aDirWire)
 

Protected Attributes

TopLoc_Location myLocation
 
Standard_Boolean myCopy
 
- Protected Attributes inherited from BRepSweep_NumLinearRegularSweep
BRepSweep_Builder myBuilder
 
TopoDS_Shape myGenShape
 
Sweep_NumShape myDirWire
 
BRepSweep_Tool myGenShapeTool
 
Sweep_NumShapeTool myDirShapeTool
 
BRepSweep_Array2OfShapesOfNumLinearRegularSweep myShapes
 
TColStd_Array2OfBoolean myBuiltShapes
 

Detailed Description

This class is inherited from NumLinearRegularSweep
to implement the simple swept primitives built
moving a Shape with a Trsf. It often is possible
to build the constructed subshapes by a simple
move of the generating subshapes (shared topology
and geometry). So two ways of construction are
proposed :


     - sharing  basis elements  (the generatrice can be <br>
     modified , for  exemples  PCurves can be added  on <br>
     faces); <br>


Constructor & Destructor Documentation

virtual BRepSweep_Trsf::~BRepSweep_Trsf ( )
inlinevirtual
BRepSweep_Trsf::BRepSweep_Trsf ( const BRep_Builder aBuilder,
const TopoDS_Shape aGenShape,
const Sweep_NumShape aDirWire,
const TopLoc_Location aLocation,
const Standard_Boolean  aCopy 
)
protected

 Initialize  the Trsf BrepSweep, if  aCopy  is true <br>
     the  basis elements  are    shared  as   often  as <br>
     possible, else everything is copied. <br>


Member Function Documentation

virtual void BRepSweep_Trsf::Delete ( )
virtual

Reimplemented from BRepSweep_NumLinearRegularSweep.

Reimplemented in BRepSweep_Translation.

virtual Standard_Boolean BRepSweep_Trsf::GDDShapeIsToAdd ( const TopoDS_Shape aNewShape,
const TopoDS_Shape aNewSubShape,
const TopoDS_Shape aGenS,
const Sweep_NumShape aDirS,
const Sweep_NumShape aSubDirS 
) const
pure virtual

Returns true if aNewSubShape (addressed by
aGenS and aSubDirS) must be added in aNewShape
(addressed by aGenS and aDirS).

Implements BRepSweep_NumLinearRegularSweep.

Implemented in BRepSweep_Rotation, and BRepSweep_Translation.

virtual Standard_Boolean BRepSweep_Trsf::GGDShapeIsToAdd ( const TopoDS_Shape aNewShape,
const TopoDS_Shape aNewSubShape,
const TopoDS_Shape aGenS,
const TopoDS_Shape aSubGenS,
const Sweep_NumShape aDirS 
) const
pure virtual

Returns true if aNewSubShape (addressed by
aSubGenS and aDirS) must be added in aNewShape
(addressed by aGenS and aDirS).

Implements BRepSweep_NumLinearRegularSweep.

Implemented in BRepSweep_Rotation, and BRepSweep_Translation.

virtual Standard_Boolean BRepSweep_Trsf::HasShape ( const TopoDS_Shape aGenS,
const Sweep_NumShape aDirS 
) const
pure virtual

Returns true if aDirS and aGenS addresses a
resulting Shape. In some specific cases the shape
can be geometrically inexsistant, then this
function returns false.

Implements BRepSweep_NumLinearRegularSweep.

Implemented in BRepSweep_Rotation, and BRepSweep_Translation.

void BRepSweep_Trsf::Init ( )

ends the construction of the swept primitive
calling the virtual geometric functions that can't
be called in the initialize.

virtual Standard_Boolean BRepSweep_Trsf::IsInvariant ( const TopoDS_Shape aGenS) const
pure virtual

Returns true if the geometry of aGenS is not
modified by the trsf of the BRepSweep Trsf.

Implemented in BRepSweep_Rotation, and BRepSweep_Translation.

virtual TopoDS_Shape BRepSweep_Trsf::MakeEmptyDirectingEdge ( const TopoDS_Shape aGenV,
const Sweep_NumShape aDirE 
)
pure virtual

Builds the edge addressed by [aGenV,aDirE], with its
geometric part, but without subcomponents.

Implements BRepSweep_NumLinearRegularSweep.

Implemented in BRepSweep_Rotation, and BRepSweep_Translation.

virtual TopoDS_Shape BRepSweep_Trsf::MakeEmptyFace ( const TopoDS_Shape aGenS,
const Sweep_NumShape aDirS 
)
pure virtual

Builds the face addressed by [aGenS,aDirS], with
its geometric part, but without subcomponents. The
couple aGenS, aDirS can be a "generating face and <br> a directing vertex" or "a generating edge and a <br> directing edge".

Implements BRepSweep_NumLinearRegularSweep.

Implemented in BRepSweep_Rotation, and BRepSweep_Translation.

virtual TopoDS_Shape BRepSweep_Trsf::MakeEmptyGeneratingEdge ( const TopoDS_Shape aGenE,
const Sweep_NumShape aDirV 
)
pure virtual

Builds the edge addressed by [aGenE,aDirV], with its
geometric part, but without subcomponents.

Implements BRepSweep_NumLinearRegularSweep.

Implemented in BRepSweep_Rotation, and BRepSweep_Translation.

virtual TopoDS_Shape BRepSweep_Trsf::MakeEmptyVertex ( const TopoDS_Shape aGenV,
const Sweep_NumShape aDirV 
)
pure virtual

Builds the vertex addressed by [aGenV,aDirV], with its
geometric part, but without subcomponents.

Implements BRepSweep_NumLinearRegularSweep.

Implemented in BRepSweep_Rotation, and BRepSweep_Translation.

Standard_Boolean BRepSweep_Trsf::Process ( const TopoDS_Shape aGenS,
const Sweep_NumShape aDirV 
)

function called to analize the way of construction
of the shapes generated by aGenS and aDirV.

virtual Standard_Boolean BRepSweep_Trsf::SeparatedWires ( const TopoDS_Shape aNewShape,
const TopoDS_Shape aNewSubShape,
const TopoDS_Shape aGenS,
const TopoDS_Shape aSubGenS,
const Sweep_NumShape aDirS 
) const
pure virtual

In some particular cases the topology of a
generated face must be composed of independant
closed wires, in this case this function returns
true.

Implements BRepSweep_NumLinearRegularSweep.

Implemented in BRepSweep_Rotation, and BRepSweep_Translation.

void BRepSweep_Trsf::SetContinuity ( const TopoDS_Shape aGenS,
const Sweep_NumShape aDirS 
)
virtual

Called to propagate the continuity of every vertex
between two edges of the generating wire aGenS on
the generated edge and faces.

Implements BRepSweep_NumLinearRegularSweep.

virtual void BRepSweep_Trsf::SetDirectingParameter ( const TopoDS_Shape aNewEdge,
TopoDS_Shape aNewVertex,
const TopoDS_Shape aGenV,
const Sweep_NumShape aDirE,
const Sweep_NumShape aDirV 
)
pure virtual

Sets the parameter of the new vertex on the new
edge. The new edge and new vertex where generated
from aGenV aDirE, and aDirV.

Implements BRepSweep_NumLinearRegularSweep.

Implemented in BRepSweep_Rotation, and BRepSweep_Translation.

virtual void BRepSweep_Trsf::SetDirectingPCurve ( const TopoDS_Shape aNewFace,
TopoDS_Shape aNewEdge,
const TopoDS_Shape aGenE,
const TopoDS_Shape aGenV,
const Sweep_NumShape aDirE,
const TopAbs_Orientation  orien 
)
pure virtual

Sets the PCurve for a new edge on a new face. The
new edge and the new face were generated using
aGenE, aDirE and aGenV.

Implements BRepSweep_NumLinearRegularSweep.

Implemented in BRepSweep_Rotation, and BRepSweep_Translation.

virtual void BRepSweep_Trsf::SetGeneratingParameter ( const TopoDS_Shape aNewEdge,
TopoDS_Shape aNewVertex,
const TopoDS_Shape aGenE,
const TopoDS_Shape aGenV,
const Sweep_NumShape aDirV 
)
pure virtual

Sets the parameter of the new vertex on the new
edge. The new edge and new vertex where generated
from aGenE, aGenV and aDirV .

Implements BRepSweep_NumLinearRegularSweep.

Implemented in BRepSweep_Rotation, and BRepSweep_Translation.

virtual void BRepSweep_Trsf::SetGeneratingPCurve ( const TopoDS_Shape aNewFace,
TopoDS_Shape aNewEdge,
const TopoDS_Shape aGenE,
const Sweep_NumShape aDirE,
const Sweep_NumShape aDirV,
const TopAbs_Orientation  orien 
)
pure virtual

Sets the PCurve for a new edge on a new face. The
new edge and the new face were generated using
aGenE, aDirE and aDirV.

Implements BRepSweep_NumLinearRegularSweep.

Implemented in BRepSweep_Rotation, and BRepSweep_Translation.

virtual void BRepSweep_Trsf::SetParameters ( const TopoDS_Shape aNewFace,
TopoDS_Shape aNewVertex,
const TopoDS_Shape aGenF,
const TopoDS_Shape aGenV,
const Sweep_NumShape aDirV 
)
pure virtual

Sets the parameters of the new vertex on the new
face. The new face and new vertex where generated
from aGenF, aGenV and aDirV .

Implements BRepSweep_NumLinearRegularSweep.

Implemented in BRepSweep_Rotation, and BRepSweep_Translation.

virtual void BRepSweep_Trsf::SetPCurve ( const TopoDS_Shape aNewFace,
TopoDS_Shape aNewEdge,
const TopoDS_Shape aGenF,
const TopoDS_Shape aGenE,
const Sweep_NumShape aDirV,
const TopAbs_Orientation  orien 
)
pure virtual

Sets the PCurve for a new edge on a new face. The
new edge and the new face were generated using
aGenF, aGenE and aDirV.

Implements BRepSweep_NumLinearRegularSweep.

Implemented in BRepSweep_Rotation, and BRepSweep_Translation.

Field Documentation

Standard_Boolean BRepSweep_Trsf::myCopy
protected
TopLoc_Location BRepSweep_Trsf::myLocation
protected

The documentation for this class was generated from the following file: