Open CASCADE Technology  7.7.0.dev
Public Member Functions

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. More...
 
void CopyRanges (const TopoDS_Edge &toedge, const TopoDS_Edge &fromedge, const Standard_Real alpha=0, const Standard_Real beta=1) const
 Copies ranges for curve3d and all common pcurves from edge <fromedge> into edge <toedge>. More...
 
void SetRange3d (const TopoDS_Edge &edge, const Standard_Real first, const Standard_Real last) const
 Sets range on 3d curve only. More...
 
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. More...
 
TopoDS_Edge Copy (const TopoDS_Edge &edge, const Standard_Boolean sharepcurves=Standard_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. More...
 
void 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. More...
 
void RemovePCurve (const TopoDS_Edge &edge, const Handle< Geom_Surface > &surf) const
 Removes the PCurve(s) which could be recorded in an Edge for the given Surface. More...
 
void RemovePCurve (const TopoDS_Edge &edge, const 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. More...
 
void ReplacePCurve (const TopoDS_Edge &edge, const 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. More...
 
Standard_Boolean 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. More...
 
Handle< Geom2d_CurveTransformPCurve (const Handle< Geom2d_Curve > &pcurve, const gp_Trsf2d &trans, const Standard_Real uFact, Standard_Real &aFirst, Standard_Real &aLast) const
 Transforms the PCurve with given matrix and affinity U factor. More...
 
void RemoveCurve3d (const TopoDS_Edge &edge) const
 Removes the Curve3D recorded in an Edge. More...
 
Standard_Boolean BuildCurve3d (const TopoDS_Edge &edge) const
 Calls BRepTools::BuildCurve3D. More...
 
void MakeEdge (TopoDS_Edge &edge, const Handle< Geom_Curve > &curve, const TopLoc_Location &L) const
 Makes edge with curve and location. More...
 
void MakeEdge (TopoDS_Edge &edge, const Handle< Geom_Curve > &curve, const TopLoc_Location &L, const Standard_Real p1, const Standard_Real p2) const
 Makes edge with curve, location and range [p1, p2]. More...
 
void MakeEdge (TopoDS_Edge &edge, const Handle< Geom2d_Curve > &pcurve, const TopoDS_Face &face) const
 Makes edge with pcurve and face. More...
 
void MakeEdge (TopoDS_Edge &edge, const Handle< Geom2d_Curve > &pcurve, const TopoDS_Face &face, const Standard_Real p1, const Standard_Real p2) const
 Makes edge with pcurve, face and range [p1, p2]. More...
 
void MakeEdge (TopoDS_Edge &edge, const Handle< Geom2d_Curve > &pcurve, const Handle< Geom_Surface > &S, const TopLoc_Location &L) const
 Makes edge with pcurve, surface and location. More...
 
void MakeEdge (TopoDS_Edge &edge, const Handle< Geom2d_Curve > &pcurve, const Handle< Geom_Surface > &S, const TopLoc_Location &L, const Standard_Real p1, const Standard_Real p2) const
 Makes edge with pcurve, surface, location and range [p1, p2]. More...
 

Detailed Description

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

Member Function Documentation

◆ BuildCurve3d()

Standard_Boolean ShapeBuild_Edge::BuildCurve3d ( const TopoDS_Edge edge) const

Calls BRepTools::BuildCurve3D.

◆ Copy()

TopoDS_Edge ShapeBuild_Edge::Copy ( const TopoDS_Edge edge,
const Standard_Boolean  sharepcurves = Standard_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 Standard_Real  alpha = 0,
const Standard_Real  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 Handle< Geom2d_Curve > &  pcurve,
const 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 Handle< Geom2d_Curve > &  pcurve,
const Handle< Geom_Surface > &  S,
const TopLoc_Location L,
const Standard_Real  p1,
const Standard_Real  p2 
) const

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

◆ MakeEdge() [3/6]

void ShapeBuild_Edge::MakeEdge ( TopoDS_Edge edge,
const 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 Handle< Geom2d_Curve > &  pcurve,
const TopoDS_Face face,
const Standard_Real  p1,
const Standard_Real  p2 
) const

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

◆ MakeEdge() [5/6]

void ShapeBuild_Edge::MakeEdge ( TopoDS_Edge edge,
const 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 Handle< Geom_Curve > &  curve,
const TopLoc_Location L,
const Standard_Real  p1,
const Standard_Real  p2 
) const

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

◆ ReassignPCurve()

Standard_Boolean 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 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 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 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 Standard_Real  first,
const Standard_Real  last 
) const

Sets range on 3d curve only.

◆ TransformPCurve()

Handle< Geom2d_Curve > ShapeBuild_Edge::TransformPCurve ( const Handle< Geom2d_Curve > &  pcurve,
const gp_Trsf2d trans,
const Standard_Real  uFact,
Standard_Real aFirst,
Standard_Real aLast 
) const

Transforms the PCurve with given matrix and affinity U factor.


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