OCCT 8.0.1
OCCT documentation

Search guides and API reference

Enter at least two characters.

    Open CASCADE Technology Reference Manual 8.0.1
    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:

    Public Member Functions

    void Init ()
     ends the construction of the swept primitive calling the virtual geometric functions that can't be called in the initialize.
    bool Process (const TopoDS_Shape &aGenS, const Sweep_NumShape &aDirV)
     function called to analyze the way of construction of the shapes generated by aGenS and aDirV.
    TopoDS_Shape MakeEmptyVertex (const TopoDS_Shape &aGenV, const Sweep_NumShape &aDirV) override=0
     Builds the vertex addressed by [aGenV,aDirV], with its geometric part, but without subcomponents.
    TopoDS_Shape MakeEmptyDirectingEdge (const TopoDS_Shape &aGenV, const Sweep_NumShape &aDirE) override=0
     Builds the edge addressed by [aGenV,aDirE], with its geometric part, but without subcomponents.
    TopoDS_Shape MakeEmptyGeneratingEdge (const TopoDS_Shape &aGenE, const Sweep_NumShape &aDirV) override=0
     Builds the edge addressed by [aGenE,aDirV], with its geometric part, but without subcomponents.
    void SetParameters (const TopoDS_Shape &aNewFace, TopoDS_Shape &aNewVertex, const TopoDS_Shape &aGenF, const TopoDS_Shape &aGenV, const Sweep_NumShape &aDirV) override=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.
    void SetDirectingParameter (const TopoDS_Shape &aNewEdge, TopoDS_Shape &aNewVertex, const TopoDS_Shape &aGenV, const Sweep_NumShape &aDirE, const Sweep_NumShape &aDirV) override=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.
    void SetGeneratingParameter (const TopoDS_Shape &aNewEdge, TopoDS_Shape &aNewVertex, const TopoDS_Shape &aGenE, const TopoDS_Shape &aGenV, const Sweep_NumShape &aDirV) override=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.
    TopoDS_Shape MakeEmptyFace (const TopoDS_Shape &aGenS, const Sweep_NumShape &aDirS) override=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 a directing vertex" or "a generating edge and a directing edge".
    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) override=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.
    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) override=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.
    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) override=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.
    bool GGDShapeIsToAdd (const TopoDS_Shape &aNewShape, const TopoDS_Shape &aNewSubShape, const TopoDS_Shape &aGenS, const TopoDS_Shape &aSubGenS, const Sweep_NumShape &aDirS) const override=0
     Returns true if aNewSubShape (addressed by aSubGenS and aDirS) must be added in aNewShape (addressed by aGenS and aDirS).
    bool GDDShapeIsToAdd (const TopoDS_Shape &aNewShape, const TopoDS_Shape &aNewSubShape, const TopoDS_Shape &aGenS, const Sweep_NumShape &aDirS, const Sweep_NumShape &aSubDirS) const override=0
     Returns true if aNewSubShape (addressed by aGenS and aSubDirS) must be added in aNewShape (addressed by aGenS and aDirS).
    bool SeparatedWires (const TopoDS_Shape &aNewShape, const TopoDS_Shape &aNewSubShape, const TopoDS_Shape &aGenS, const TopoDS_Shape &aSubGenS, const Sweep_NumShape &aDirS) const override=0
     In some particular cases the topology of a generated face must be composed of independent closed wires, in this case this function returns true.
    bool HasShape (const TopoDS_Shape &aGenS, const Sweep_NumShape &aDirS) const override=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.
    bool IsInvariant (const TopoDS_Shape &aGenS) const override=0
     Returns true if the geometry of aGenS is not modified by the trsf of the BRepSweep Trsf.
    void SetContinuity (const TopoDS_Shape &aGenS, const Sweep_NumShape &aDirS) override
     Called to propagate the continuity of every vertex between two edges of the generating wire aGenS on the generated edge and faces.
    Public Member Functions inherited from BRepSweep_NumLinearRegularSweep
    virtual ~BRepSweep_NumLinearRegularSweep ()
    virtual TopAbs_Orientation DirectSolid (const TopoDS_Shape &aGenS, const Sweep_NumShape &aDirS)=0
     Returns the Orientation of the shell in the solid generated by the face aGenS with the edge aDirS. It is REVERSED if the surface is swept in the direction of the normal.
    virtual TopoDS_Shape SplitShell (const TopoDS_Shape &aNewShape) const
     In some particular cases the topology of a generated Shell must be composed of independent closed Shells, in this case this function returns a Compound of independent Shells.
    TopoDS_Shape Shape (const TopoDS_Shape &aGenS, const Sweep_NumShape &aDirS)
     Returns the resulting Shape indexed by aDirS and aGenS.
    TopoDS_Shape Shape (const TopoDS_Shape &aGenS)
     Returns the resulting Shape indexed by myDirWire and aGenS.
    bool IsUsed (const TopoDS_Shape &aGenS) const
     Returns true if the initial shape aGenS is used in result shape.
    bool GenIsUsed (const TopoDS_Shape &theS) const
     Returns true if the shape, generated from theS is used in result shape.
    TopoDS_Shape Shape ()
     Returns the resulting Shape indexed by myDirWire and myGenShape.
    TopoDS_Shape FirstShape ()
     Returns the resulting Shape indexed by the first Vertex of myDirWire and myGenShape.
    TopoDS_Shape LastShape ()
     Returns the resulting Shape indexed by the last Vertex of myDirWire and myGenShape.
    TopoDS_Shape FirstShape (const TopoDS_Shape &aGenS)
     Returns the resulting Shape indexed by the first Vertex of myDirWire and aGenS.
    TopoDS_Shape LastShape (const TopoDS_Shape &aGenS)
     Returns the resulting Shape indexed by the last Vertex of myDirWire and aGenS.
    bool Closed () const

    Protected Member Functions

     BRepSweep_Trsf (const BRep_Builder &aBuilder, const TopoDS_Shape &aGenShape, const Sweep_NumShape &aDirWire, const TopLoc_Location &aLocation, const bool aCopy)
     Initialize the Trsf BrepSweep, if aCopy is true the basis elements are shared as often as possible, else everything is copied.
    Protected Member Functions inherited from BRepSweep_NumLinearRegularSweep
     BRepSweep_NumLinearRegularSweep (const BRepSweep_Builder &aBuilder, const TopoDS_Shape &aGenShape, const Sweep_NumShape &aDirWire)
     Creates a NumLinearRegularSweep. <aBuilder> gives basic topological services.

    Protected Attributes

    TopLoc_Location myLocation
    bool myCopy
    Protected Attributes inherited from BRepSweep_NumLinearRegularSweep
    BRepSweep_Builder myBuilder
    TopoDS_Shape myGenShape
    Sweep_NumShape myDirWire
    BRepSweep_Tool myGenShapeTool
    Sweep_NumShapeTool myDirShapeTool
    NCollection_Array2< TopoDS_Shape > myShapes
    NCollection_Array2< bool > myBuiltShapes
    NCollection_Array2< bool > myUsedShapes

    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 modified, for example PCurves can be added on faces);
    • copying everything.

    Constructor & Destructor Documentation

    ◆ BRepSweep_Trsf()

    BRepSweep_Trsf::BRepSweep_Trsf ( const BRep_Builder & aBuilder,
    const TopoDS_Shape & aGenShape,
    const Sweep_NumShape & aDirWire,
    const TopLoc_Location & aLocation,
    const bool aCopy )
    protected

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

    Member Function Documentation

    ◆ GDDShapeIsToAdd()

    bool BRepSweep_Trsf::GDDShapeIsToAdd ( const TopoDS_Shape & aNewShape,
    const TopoDS_Shape & aNewSubShape,
    const TopoDS_Shape & aGenS,
    const Sweep_NumShape & aDirS,
    const Sweep_NumShape & aSubDirS ) const
    overridepure 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.

    ◆ GGDShapeIsToAdd()

    bool BRepSweep_Trsf::GGDShapeIsToAdd ( const TopoDS_Shape & aNewShape,
    const TopoDS_Shape & aNewSubShape,
    const TopoDS_Shape & aGenS,
    const TopoDS_Shape & aSubGenS,
    const Sweep_NumShape & aDirS ) const
    overridepure 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.

    ◆ HasShape()

    bool BRepSweep_Trsf::HasShape ( const TopoDS_Shape & aGenS,
    const Sweep_NumShape & aDirS ) const
    overridepure 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.

    ◆ Init()

    void BRepSweep_Trsf::Init ( )

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

    ◆ IsInvariant()

    bool BRepSweep_Trsf::IsInvariant ( const TopoDS_Shape & aGenS) const
    overridepure virtual

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

    Implements BRepSweep_NumLinearRegularSweep.

    Implemented in BRepSweep_Rotation, and BRepSweep_Translation.

    ◆ MakeEmptyDirectingEdge()

    TopoDS_Shape BRepSweep_Trsf::MakeEmptyDirectingEdge ( const TopoDS_Shape & aGenV,
    const Sweep_NumShape & aDirE )
    overridepure 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.

    ◆ MakeEmptyFace()

    TopoDS_Shape BRepSweep_Trsf::MakeEmptyFace ( const TopoDS_Shape & aGenS,
    const Sweep_NumShape & aDirS )
    overridepure 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 a directing vertex" or "a generating edge and a directing edge".

    Implements BRepSweep_NumLinearRegularSweep.

    Implemented in BRepSweep_Rotation, and BRepSweep_Translation.

    ◆ MakeEmptyGeneratingEdge()

    TopoDS_Shape BRepSweep_Trsf::MakeEmptyGeneratingEdge ( const TopoDS_Shape & aGenE,
    const Sweep_NumShape & aDirV )
    overridepure 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.

    ◆ MakeEmptyVertex()

    TopoDS_Shape BRepSweep_Trsf::MakeEmptyVertex ( const TopoDS_Shape & aGenV,
    const Sweep_NumShape & aDirV )
    overridepure 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.

    ◆ Process()

    bool BRepSweep_Trsf::Process ( const TopoDS_Shape & aGenS,
    const Sweep_NumShape & aDirV )

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

    ◆ SeparatedWires()

    bool BRepSweep_Trsf::SeparatedWires ( const TopoDS_Shape & aNewShape,
    const TopoDS_Shape & aNewSubShape,
    const TopoDS_Shape & aGenS,
    const TopoDS_Shape & aSubGenS,
    const Sweep_NumShape & aDirS ) const
    overridepure virtual

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

    Implements BRepSweep_NumLinearRegularSweep.

    Implemented in BRepSweep_Rotation, and BRepSweep_Translation.

    ◆ SetContinuity()

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

    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.

    ◆ SetDirectingParameter()

    void BRepSweep_Trsf::SetDirectingParameter ( const TopoDS_Shape & aNewEdge,
    TopoDS_Shape & aNewVertex,
    const TopoDS_Shape & aGenV,
    const Sweep_NumShape & aDirE,
    const Sweep_NumShape & aDirV )
    overridepure 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.

    ◆ SetDirectingPCurve()

    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 )
    overridepure 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.

    ◆ SetGeneratingParameter()

    void BRepSweep_Trsf::SetGeneratingParameter ( const TopoDS_Shape & aNewEdge,
    TopoDS_Shape & aNewVertex,
    const TopoDS_Shape & aGenE,
    const TopoDS_Shape & aGenV,
    const Sweep_NumShape & aDirV )
    overridepure 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.

    ◆ SetGeneratingPCurve()

    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 )
    overridepure 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.

    ◆ SetParameters()

    void BRepSweep_Trsf::SetParameters ( const TopoDS_Shape & aNewFace,
    TopoDS_Shape & aNewVertex,
    const TopoDS_Shape & aGenF,
    const TopoDS_Shape & aGenV,
    const Sweep_NumShape & aDirV )
    overridepure 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.

    ◆ SetPCurve()

    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 )
    overridepure 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

    ◆ myCopy

    bool BRepSweep_Trsf::myCopy
    protected

    ◆ myLocation

    TopLoc_Location BRepSweep_Trsf::myLocation
    protected

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