Open CASCADE Technology
7.7.0
|
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_Curve > | 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. 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... | |
This class provides low-level operators for building an edge 3d curve, copying edge with replaced vertices etc.
Standard_Boolean ShapeBuild_Edge::BuildCurve3d | ( | const TopoDS_Edge & | edge | ) | const |
Calls BRepTools::BuildCurve3D.
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.
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.
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>.
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.
void ShapeBuild_Edge::MakeEdge | ( | TopoDS_Edge & | edge, |
const Handle< Geom_Curve > & | curve, | ||
const TopLoc_Location & | L | ||
) | const |
Makes edge with curve and location.
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].
void ShapeBuild_Edge::MakeEdge | ( | TopoDS_Edge & | edge, |
const Handle< Geom2d_Curve > & | pcurve, | ||
const TopoDS_Face & | face | ||
) | const |
Makes edge with pcurve and face.
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].
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.
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].
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.
void ShapeBuild_Edge::RemoveCurve3d | ( | const TopoDS_Edge & | edge | ) | const |
Removes the Curve3D recorded in an Edge.
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.
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.
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.
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.
void ShapeBuild_Edge::SetRange3d | ( | const TopoDS_Edge & | edge, |
const Standard_Real | first, | ||
const Standard_Real | last | ||
) | const |
Sets range on 3d curve only.
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.