1 -- File: ShapeBuild_Edge.cdl
2 -- Created: Tue Jun 9 11:11:14 1998
3 -- Author: data exchange team
4 -- <det@toctox.nnov.matra-dtv.fr>
5 ---Copyright: Matra Datavision 1998
8 class Edge from ShapeBuild
10 ---Purpose: This class provides low-level operators for building an edge
11 -- 3d curve, copying edge with replaced vertices etc.
25 CopyReplaceVertices (me; edge: Edge from TopoDS; V1, V2: Vertex from TopoDS)
26 returns Edge from TopoDS;
27 ---Purpose: Copy edge and replace one or both its vertices to a given
28 -- one(s). Vertex V1 replaces FORWARD vertex, and V2 - REVERSED,
29 -- as they are found by TopoDS_Iterator.
30 -- If V1 or V2 is NULL, the original vertex is taken
32 CopyRanges (me; toedge, fromedge: Edge from TopoDS;
35 ---Purpose: Copies ranges for curve3d and all common pcurves from
36 -- edge <fromedge> into edge <toedge>.
38 SetRange3d (me; edge: Edge from TopoDS; first, last : Real);
39 ---Purpose: Sets range on 3d curve only.
41 CopyPCurves (me; toedge, fromedge: Edge from TopoDS);
42 ---Purpose: Makes a copy of pcurves from edge <fromedge> into edge
43 -- <toedge>. Pcurves which are already present in <toedge>,
44 -- are replaced by copies, other are copied. Ranges are also
47 Copy (me; edge: Edge from TopoDS; sharepcurves: Boolean = Standard_True)
48 returns Edge from TopoDS;
49 ---Purpose: Make a copy of <edge> by call to CopyReplaceVertices()
50 -- (i.e. construct new TEdge with the same pcurves and vertices).
51 -- If <sharepcurves> is False, pcurves are also replaced by
52 -- their copies with help of method CopyPCurves
54 RemovePCurve (me; edge: Edge from TopoDS; face: Face from TopoDS);
55 ---Purpose : Removes the PCurve(s) which could be recorded in an Edge for
58 RemovePCurve (me; edge: Edge from TopoDS; surf: Surface from Geom);
59 ---Purpose : Removes the PCurve(s) which could be recorded in an Edge for
62 RemovePCurve (me; edge: Edge from TopoDS; surf: Surface from Geom;
63 loc: Location from TopLoc);
64 ---Purpose : Removes the PCurve(s) which could be recorded in an Edge for
65 -- the given Surface, with given Location
67 ReplacePCurve (me; edge: Edge from TopoDS; pcurve: Curve from Geom2d;
68 face: Face from TopoDS);
69 ---Purpose : Replace the PCurve in an Edge for the given Face
70 -- In case if edge is seam, i.e. has 2 pcurves on that face,
71 -- only pcurve corresponding to the orientation of the edge is
74 ReassignPCurve (me; edge: Edge from TopoDS;
75 old, sub: Face from TopoDS)
77 ---Purpose: Reassign edge pcurve lying on face <old> to another face <sub>.
78 -- If edge has two pcurves on <old> face, only one of them will be
79 -- reassigned, and other will left alone. Similarly, if edge already
80 -- had a pcurve on face <sub>, it will have two pcurves on it.
81 -- Returns True if succeeded, False if no pcurve lying on <old> found.
83 TransformPCurve(me; pcurve: Curve from Geom2d;
84 trans : Trsf2d from gp;
88 returns Curve from Geom2d;
89 ---Purpose: Transforms the PCurve with given matrix and affinity U factor.
91 RemoveCurve3d (me; edge: Edge from TopoDS);
92 ---Purpose : Removes the Curve3D recorded in an Edge
94 BuildCurve3d (me; edge: Edge from TopoDS) returns Boolean;
95 ---Purpose: Calls BRepTools::BuildCurve3D
96 ---Returns: True if curve computed OK, False if any error occured
99 ---Extension of BRepAPI_MakeEdge
101 MakeEdge (me; edge : out Edge from TopoDS;
102 curve: Curve from Geom;
103 L : Location from TopLoc);
104 ---Purpose: Makes edge with curve and location
106 MakeEdge (me; edge : out Edge from TopoDS;
107 curve : Curve from Geom;
108 L : Location from TopLoc;
110 ---Purpose: Makes edge with curve, location and range [p1, p2]
112 MakeEdge (me; edge : out Edge from TopoDS;
113 pcurve: Curve from Geom2d;
114 face : Face from TopoDS) ;
115 ---Purpose: Makes edge with pcurve and face
117 MakeEdge (me; edge : out Edge from TopoDS;
118 pcurve: Curve from Geom2d;
119 face :Face from TopoDS;
121 ---Purpose: Makes edge with pcurve, face and range [p1, p2]
123 MakeEdge (me; edge : out Edge from TopoDS;
124 pcurve: Curve from Geom2d;
125 S : Surface from Geom;
126 L : Location from TopLoc) ;
127 ---Purpose: Makes edge with pcurve, surface and location
129 MakeEdge (me; edge : out Edge from TopoDS;
130 pcurve: Curve from Geom2d;
131 S : Surface from Geom;
132 L : Location from TopLoc;
134 ---Purpose: Makes edge with pcurve, surface, location and range [p1, p2]