b311480e |
1 | -- Created on: 1994-11-14 |
2 | -- Created by: Bruno DUMORTIER |
3 | -- Copyright (c) 1994-1999 Matra Datavision |
973c2be1 |
4 | -- Copyright (c) 1999-2014 OPEN CASCADE SAS |
b311480e |
5 | -- |
973c2be1 |
6 | -- This file is part of Open CASCADE Technology software library. |
b311480e |
7 | -- |
973c2be1 |
8 | -- This library is free software; you can redistribute it and / or modify it |
9 | -- under the terms of the GNU Lesser General Public version 2.1 as published |
10 | -- by the Free Software Foundation, with special exception defined in the file |
11 | -- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT |
12 | -- distribution for complete text of the license and disclaimer of any warranty. |
b311480e |
13 | -- |
973c2be1 |
14 | -- Alternatively, this file may be used under the terms of Open CASCADE |
15 | -- commercial license or contractual agreement. |
7fd59977 |
16 | |
17 | private class MultiLine from BRepFill |
18 | |
19 | ---Purpose: Private class used to compute the 3d curve and the |
20 | -- two 2d curves resulting from the intersection of a |
21 | -- surface of linear extrusion( Bissec, Dz) and the 2 |
22 | -- faces. |
23 | -- This 3 curves will have the same parametrization |
24 | -- as the Bissectrice. |
25 | -- This class is to be send to an approximation |
26 | -- routine. |
27 | |
28 | uses |
29 | Face from TopoDS, |
30 | Edge from TopoDS, |
31 | Curve from Geom, |
32 | Curve from Geom2d, |
33 | Curve from Geom2dAdaptor, |
34 | Pnt from gp, |
35 | Pnt2d from gp, |
36 | Shape from GeomAbs |
37 | |
38 | raises |
39 | DomainError from Standard |
40 | |
41 | is |
42 | Create; |
43 | |
44 | Create( Face1, Face2 : Face from TopoDS; |
45 | Edge1, Edge2 : Edge from TopoDS; |
46 | Inv1 , Inv2 : Boolean from Standard; |
47 | Bissec : Curve from Geom2d ); |
48 | |
49 | IsParticularCase(me) |
50 | returns Boolean from Standard |
51 | ---Purpose: Search if the Projection of the Bissectrice on the |
52 | -- faces needs an approximation or not. |
53 | -- Returns true if the approximation is not needed. |
54 | is static; |
55 | |
56 | Continuity (me) returns Shape from GeomAbs |
57 | ---Purpose: Returns the continuity betwwen the two faces |
58 | -- seShape from GeomAbsparated by myBis. |
59 | is static; |
60 | |
61 | Curves(me; Curve : in out Curve from Geom; |
62 | PCurve1 : in out Curve from Geom2d; |
63 | PCurve2 : in out Curve from Geom2d) |
64 | raises |
65 | DomainError from Standard |
66 | ---Purpose: raises if IsParticularCase is <False>. |
67 | is static; |
68 | |
69 | FirstParameter(me) |
70 | ---Purpose: returns the first parameter of the Bissectrice. |
71 | returns Real from Standard is static; |
72 | |
73 | LastParameter(me) |
74 | ---Purpose: returns the last parameter of the Bissectrice. |
75 | returns Real from Standard is static; |
76 | |
77 | Value ( me; U : Real from Standard) |
78 | ---Purpose: Returns the current point on the 3d curve |
79 | returns Pnt from gp is static; |
80 | |
81 | ValueOnF1(me; U : Real from Standard) |
82 | ---Purpose: returns the current point on the PCurve of the |
83 | -- first face |
84 | returns Pnt2d from gp is static; |
85 | |
86 | ValueOnF2(me; U : Real from Standard) |
87 | ---Purpose: returns the current point on the PCurve of the |
88 | -- first face |
89 | returns Pnt2d from gp is static; |
90 | |
91 | Value3dOnF1OnF2(me; |
92 | U : Real from Standard; |
93 | P3d : in out Pnt from gp; |
94 | PF1 : in out Pnt2d from gp; |
95 | PF2 : in out Pnt2d from gp) |
96 | is static; |
97 | |
98 | |
99 | fields |
100 | myFace1 : Face from TopoDS; |
101 | myFace2 : Face from TopoDS; |
102 | myU1 : Curve from Geom2dAdaptor; |
103 | myV1 : Curve from Geom2dAdaptor; |
104 | myU2 : Curve from Geom2dAdaptor; |
105 | myV2 : Curve from Geom2dAdaptor; |
106 | myIsoU1 : Boolean from Standard; |
107 | myIsoU2 : Boolean from Standard; |
108 | myBis : Curve from Geom2dAdaptor; |
109 | myKPart : Integer from Standard; |
110 | myCont : Shape from GeomAbs; |
111 | |
112 | end MultiLine; |