OCCT3D OCCT 8.0.1
OCCT documentation

Search guides and API reference

Enter at least two characters.

    Open CASCADE Technology Reference Manual 8.0.1
    ShapeBuild_Edge Class Reference

    This class provides low-level operators for building an edge 3d curve, copying edge with replaced vertices etc. More...

    #include <ShapeBuild_Edge.hxx>

    Public Member Functions

    TopoDS_Edge CopyReplaceVertices (const TopoDS_Edge &edge, const TopoDS_Vertex &V1, const TopoDS_Vertex &V2) const
     Copy edge and replace one or both its vertices to a given one(s). Vertex V1 replaces FORWARD vertex, and V2 - REVERSED, as they are found by TopoDS_Iterator. If V1 or V2 is NULL, the original vertex is taken.
    void CopyRanges (const TopoDS_Edge &toedge, const TopoDS_Edge &fromedge, const double alphaalpha=0, const double beta=1) const
     Copies ranges for curve3d and all common pcurves from edge <fromedge> into edge <toedge>.
    void SetRange3d (const TopoDS_Edge &edge, const double firstfirst, const double last) const
     Sets range on 3d curve only.
    void CopyPCurves (const TopoDS_Edge &toedge, const TopoDS_Edge &fromedge) const
     Makes a copy of pcurves from edge <fromedge> into edge <toedge>. Pcurves which are already present in <toedge>, are replaced by copies, other are copied. Ranges are also copied.
    TopoDS_Edge Copy (const TopoDS_Edge &edge, const bool sharepcurves=true) const
     Make a copy of <edge> by call to CopyReplaceVertices() (i.e. construct new TEdge with the same pcurves and vertices). If <sharepcurves> is False, pcurves are also replaced by their copies with help of method CopyPCurves.
    void RemovePCurve (const TopoDS_Edge &edge, const TopoDS_Face &faceface) const
     Removes the PCurve(s) which could be recorded in an Edge for the given Face.
    void RemovePCurve (const TopoDS_Edge &edge, const occ::handle< Geom_Surface > &surf) const
     Removes the PCurve(s) which could be recorded in an Edge for the given Surface.
    void RemovePCurve (const TopoDS_Edge &edge, const occ::handle< Geom_Surface > &surf, const TopLoc_Location &loc) const
     Removes the PCurve(s) which could be recorded in an Edge for the given Surface, with given Location.
    void ReplacePCurve (const TopoDS_Edge &edge, const occ::handle< Geom2d_Curve > &pcurve, const TopoDS_Face &faceface) const
     Replace the PCurve in an Edge for the given Face In case if edge is seam, i.e. has 2 pcurves on that face, only pcurve corresponding to the orientation of the edge is replaced.
    bool ReassignPCurve (const TopoDS_Edge &edge, const TopoDS_Face &old, const TopoDS_Face &sub) const
     Reassign edge pcurve lying on face <old> to another face . If edge has two pcurves on <old> face, only one of them will be reassigned, and other will left alone. Similarly, if edge already had a pcurve on face , it will have two pcurves on it. Returns True if succeeded, False if no pcurve lying on <old> found.
    occ::handle< Geom2d_CurveTransformPCurve (const occ::handle< Geom2d_Curve > &pcurve, const gp_Trsf2d &trans, const double uFact, double &aFirst, double &aLast) const
     Transforms the PCurve with given matrix and affinity U factor.
    void RemoveCurve3d (const TopoDS_Edge &edge) const
     Removes the Curve3D recorded in an Edge.
    bool BuildCurve3d (const TopoDS_Edge &edge) const
     Calls BRepTools::BuildCurve3D.
    void MakeEdge (TopoDS_Edge &edge, const occ::handle< Geom_Curve > &curve, const TopLoc_Location &L) const
     Makes edge with curve and location.
    void MakeEdge (TopoDS_Edge &edge, const occ::handle< Geom_Curve > &curve, const TopLoc_Location &L, const double p1, const double p2) const
     Makes edge with curve, location and range [p1, p2].
    void MakeEdge (TopoDS_Edge &edge, const occ::handle< Geom2d_Curve > &pcurve, const TopoDS_Face &faceface) const
     Makes edge with pcurve and face.
    void MakeEdge (TopoDS_Edge &edge, const occ::handle< Geom2d_Curve > &pcurve, const TopoDS_Face &faceface, const double p1, const double p2) const
     Makes edge with pcurve, face and range [p1, p2].
    void MakeEdge (TopoDS_Edge &edge, const occ::handle< Geom2d_Curve > &pcurve, const occ::handle< Geom_Surface > &S, const TopLoc_Location &L) const
     Makes edge with pcurve, surface and location.
    void MakeEdge (TopoDS_Edge &edge, const occ::handle< Geom2d_Curve > &pcurve, const occ::handle< Geom_Surface > &S, const TopLoc_Location &L, const double p1, const double p2) const
     Makes edge with pcurve, surface, location and range [p1, p2].

    Detailed Description

    This class provides low-level operators for building an edge 3d curve, copying edge with replaced vertices etc.

    Member Function Documentation

    ◆ BuildCurve3d()

    bool ShapeBuild_Edge::BuildCurve3d ( const TopoDS_Edge & edge) const

    Calls BRepTools::BuildCurve3D.

    ◆ Copy()

    TopoDS_Edge ShapeBuild_Edge::Copy ( const TopoDS_Edge & edge,
    const bool sharepcurves = true ) const

    Make a copy of <edge> by call to CopyReplaceVertices() (i.e. construct new TEdge with the same pcurves and vertices). If <sharepcurves> is False, pcurves are also replaced by their copies with help of method CopyPCurves.

    ◆ CopyPCurves()

    void ShapeBuild_Edge::CopyPCurves ( const TopoDS_Edge & toedge,
    const TopoDS_Edge & fromedge ) const

    Makes a copy of pcurves from edge <fromedge> into edge <toedge>. Pcurves which are already present in <toedge>, are replaced by copies, other are copied. Ranges are also copied.

    ◆ CopyRanges()

    void ShapeBuild_Edge::CopyRanges ( const TopoDS_Edge & toedge,
    const TopoDS_Edge & fromedge,
    const double alpha = 0,
    const double beta = 1 ) const

    Copies ranges for curve3d and all common pcurves from edge <fromedge> into edge <toedge>.

    ◆ CopyReplaceVertices()

    TopoDS_Edge ShapeBuild_Edge::CopyReplaceVertices ( const TopoDS_Edge & edge,
    const TopoDS_Vertex & V1,
    const TopoDS_Vertex & V2 ) const

    Copy edge and replace one or both its vertices to a given one(s). Vertex V1 replaces FORWARD vertex, and V2 - REVERSED, as they are found by TopoDS_Iterator. If V1 or V2 is NULL, the original vertex is taken.

    ◆ MakeEdge() [1/6]

    void ShapeBuild_Edge::MakeEdge ( TopoDS_Edge & edge,
    const occ::handle< Geom2d_Curve > & pcurve,
    const occ::handle< Geom_Surface > & S,
    const TopLoc_Location & L ) const

    Makes edge with pcurve, surface and location.

    ◆ MakeEdge() [2/6]

    void ShapeBuild_Edge::MakeEdge ( TopoDS_Edge & edge,
    const occ::handle< Geom2d_Curve > & pcurve,
    const occ::handle< Geom_Surface > & S,
    const TopLoc_Location & L,
    const double p1,
    const double p2 ) const

    Makes edge with pcurve, surface, location and range [p1, p2].

    ◆ MakeEdge() [3/6]

    void ShapeBuild_Edge::MakeEdge ( TopoDS_Edge & edge,
    const occ::handle< Geom2d_Curve > & pcurve,
    const TopoDS_Face & face ) const

    Makes edge with pcurve and face.

    ◆ MakeEdge() [4/6]

    void ShapeBuild_Edge::MakeEdge ( TopoDS_Edge & edge,
    const occ::handle< Geom2d_Curve > & pcurve,
    const TopoDS_Face & face,
    const double p1,
    const double p2 ) const

    Makes edge with pcurve, face and range [p1, p2].

    ◆ MakeEdge() [5/6]

    void ShapeBuild_Edge::MakeEdge ( TopoDS_Edge & edge,
    const occ::handle< Geom_Curve > & curve,
    const TopLoc_Location & L ) const

    Makes edge with curve and location.

    ◆ MakeEdge() [6/6]

    void ShapeBuild_Edge::MakeEdge ( TopoDS_Edge & edge,
    const occ::handle< Geom_Curve > & curve,
    const TopLoc_Location & L,
    const double p1,
    const double p2 ) const

    Makes edge with curve, location and range [p1, p2].

    ◆ ReassignPCurve()

    bool ShapeBuild_Edge::ReassignPCurve ( const TopoDS_Edge & edge,
    const TopoDS_Face & old,
    const TopoDS_Face & sub ) const

    Reassign edge pcurve lying on face <old> to another face . If edge has two pcurves on <old> face, only one of them will be reassigned, and other will left alone. Similarly, if edge already had a pcurve on face , it will have two pcurves on it. Returns True if succeeded, False if no pcurve lying on <old> found.

    ◆ RemoveCurve3d()

    void ShapeBuild_Edge::RemoveCurve3d ( const TopoDS_Edge & edge) const

    Removes the Curve3D recorded in an Edge.

    ◆ RemovePCurve() [1/3]

    void ShapeBuild_Edge::RemovePCurve ( const TopoDS_Edge & edge,
    const occ::handle< Geom_Surface > & surf ) const

    Removes the PCurve(s) which could be recorded in an Edge for the given Surface.

    ◆ RemovePCurve() [2/3]

    void ShapeBuild_Edge::RemovePCurve ( const TopoDS_Edge & edge,
    const occ::handle< Geom_Surface > & surf,
    const TopLoc_Location & loc ) const

    Removes the PCurve(s) which could be recorded in an Edge for the given Surface, with given Location.

    ◆ RemovePCurve() [3/3]

    void ShapeBuild_Edge::RemovePCurve ( const TopoDS_Edge & edge,
    const TopoDS_Face & face ) const

    Removes the PCurve(s) which could be recorded in an Edge for the given Face.

    ◆ ReplacePCurve()

    void ShapeBuild_Edge::ReplacePCurve ( const TopoDS_Edge & edge,
    const occ::handle< Geom2d_Curve > & pcurve,
    const TopoDS_Face & face ) const

    Replace the PCurve in an Edge for the given Face In case if edge is seam, i.e. has 2 pcurves on that face, only pcurve corresponding to the orientation of the edge is replaced.

    ◆ SetRange3d()

    void ShapeBuild_Edge::SetRange3d ( const TopoDS_Edge & edge,
    const double first,
    const double last ) const

    Sets range on 3d curve only.

    ◆ TransformPCurve()

    occ::handle< Geom2d_Curve > ShapeBuild_Edge::TransformPCurve ( const occ::handle< Geom2d_Curve > & pcurve,
    const gp_Trsf2d & trans,
    const double uFact,
    double & aFirst,
    double & aLast ) const

    Transforms the PCurve with given matrix and affinity U factor.


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