1 // Created on: 1995-06-22
2 // Created by: Christophe MARION
3 // Copyright (c) 1995-1999 Matra Datavision
4 // Copyright (c) 1999-2014 OPEN CASCADE SAS
6 // This file is part of Open CASCADE Technology software library.
8 // This library is free software; you can redistribute it and/or modify it under
9 // the terms of the GNU Lesser General Public License 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.
14 // Alternatively, this file may be used under the terms of Open CASCADE
15 // commercial license or contractual agreement.
22 #include <HLRAlgo_BiPoint.hxx>
24 //=======================================================================
25 //function : HLRAlgo_BiPoint
27 //=======================================================================
29 HLRAlgo_BiPoint::HLRAlgo_BiPoint (const Standard_Real X1,
30 const Standard_Real Y1,
31 const Standard_Real Z1,
32 const Standard_Real X2,
33 const Standard_Real Y2,
34 const Standard_Real Z2,
35 const Standard_Real XT1,
36 const Standard_Real YT1,
37 const Standard_Real ZT1,
38 const Standard_Real XT2,
39 const Standard_Real YT2,
40 const Standard_Real ZT2,
41 const Standard_Integer Index,
42 const Standard_Boolean reg1,
43 const Standard_Boolean regn,
44 const Standard_Boolean outl,
45 const Standard_Boolean intl)
47 myPoints.Pnt1.SetCoord(X1, Y1, Z1);
48 myPoints.Pnt2.SetCoord(X2, Y2, Z2);
49 myPoints.PntP1.SetCoord(XT1, YT1, ZT1);
50 myPoints.PntP2.SetCoord(XT2, YT2, ZT2);
51 myIndices.ShapeIndex = Index;
52 myIndices.FaceConex1 = myIndices.Face1Pt1 = myIndices.Face1Pt2 =
53 myIndices.FaceConex2 = myIndices.Face2Pt1 = myIndices.Face2Pt2 = 0;
54 myIndices.SegFlags = 0;
59 Hidden(Standard_False);
62 //=======================================================================
63 //function : HLRAlgo_BiPoint
65 //=======================================================================
67 HLRAlgo_BiPoint::HLRAlgo_BiPoint (const Standard_Real X1,
68 const Standard_Real Y1,
69 const Standard_Real Z1,
70 const Standard_Real X2,
71 const Standard_Real Y2,
72 const Standard_Real Z2,
73 const Standard_Real XT1,
74 const Standard_Real YT1,
75 const Standard_Real ZT1,
76 const Standard_Real XT2,
77 const Standard_Real YT2,
78 const Standard_Real ZT2,
79 const Standard_Integer Index,
80 const Standard_Integer flag)
82 myPoints.Pnt1 = gp_XYZ(X1, Y1, Z1);
83 myPoints.Pnt2 = gp_XYZ(X2, Y2, Z2);
84 myPoints.PntP1 = gp_XYZ(XT1, YT1, ZT1);
85 myPoints.PntP2 = gp_XYZ(XT2, YT2, ZT2);
86 myIndices.ShapeIndex = Index;
87 myIndices.FaceConex1 = myIndices.Face1Pt1 = myIndices.Face1Pt2 =
88 myIndices.FaceConex2 = myIndices.Face2Pt1 = myIndices.Face2Pt2 = 0;
89 myIndices.SegFlags = flag;
90 Hidden(Standard_False);
93 //=======================================================================
94 //function : HLRAlgo_BiPoint
96 //=======================================================================
98 HLRAlgo_BiPoint::HLRAlgo_BiPoint (const Standard_Real X1,
99 const Standard_Real Y1,
100 const Standard_Real Z1,
101 const Standard_Real X2,
102 const Standard_Real Y2,
103 const Standard_Real Z2,
104 const Standard_Real XT1,
105 const Standard_Real YT1,
106 const Standard_Real ZT1,
107 const Standard_Real XT2,
108 const Standard_Real YT2,
109 const Standard_Real ZT2,
110 const Standard_Integer Index,
111 const Standard_Integer i1,
112 const Standard_Integer i1p1,
113 const Standard_Integer i1p2,
114 const Standard_Boolean reg1,
115 const Standard_Boolean regn,
116 const Standard_Boolean outl,
117 const Standard_Boolean intl)
119 myPoints.Pnt1.SetCoord(X1, Y1, Z1);
120 myPoints.Pnt2.SetCoord(X2, Y2, Z2);
121 myPoints.PntP1.SetCoord(XT1, YT1, ZT1);
122 myPoints.PntP2.SetCoord(XT2, YT2, ZT2);
123 myIndices.ShapeIndex = Index;
124 myIndices.FaceConex1 = i1;
125 myIndices.Face1Pt1 = i1p1;
126 myIndices.Face1Pt2 = i1p2;
127 myIndices.FaceConex2 = myIndices.Face2Pt1 = myIndices.Face2Pt2 = 0;
128 myIndices.SegFlags = 0;
133 Hidden(Standard_False);
136 //=======================================================================
137 //function : HLRAlgo_BiPoint
139 //=======================================================================
141 HLRAlgo_BiPoint::HLRAlgo_BiPoint (const Standard_Real X1,
142 const Standard_Real Y1,
143 const Standard_Real Z1,
144 const Standard_Real X2,
145 const Standard_Real Y2,
146 const Standard_Real Z2,
147 const Standard_Real XT1,
148 const Standard_Real YT1,
149 const Standard_Real ZT1,
150 const Standard_Real XT2,
151 const Standard_Real YT2,
152 const Standard_Real ZT2,
153 const Standard_Integer Index,
154 const Standard_Integer i1,
155 const Standard_Integer i1p1,
156 const Standard_Integer i1p2,
157 const Standard_Integer flag)
159 myPoints.Pnt1.SetCoord(X1, Y1, Z1);
160 myPoints.Pnt2.SetCoord(X2, Y2, Z2);
161 myPoints.PntP1.SetCoord(XT1, YT1, ZT1);
162 myPoints.PntP2.SetCoord(XT2, YT2, ZT2);
163 myIndices.ShapeIndex = Index;
164 myIndices.FaceConex1 = i1;
165 myIndices.Face1Pt1 = i1p1;
166 myIndices.Face1Pt2 = i1p2;
167 myIndices.FaceConex2 = myIndices.Face2Pt1 = myIndices.Face2Pt2 = 0;
168 myIndices.SegFlags = flag;
169 Hidden(Standard_False);
172 //=======================================================================
173 //function : HLRAlgo_BiPoint
175 //=======================================================================
177 HLRAlgo_BiPoint::HLRAlgo_BiPoint (const Standard_Real X1,
178 const Standard_Real Y1,
179 const Standard_Real Z1,
180 const Standard_Real X2,
181 const Standard_Real Y2,
182 const Standard_Real Z2,
183 const Standard_Real XT1,
184 const Standard_Real YT1,
185 const Standard_Real ZT1,
186 const Standard_Real XT2,
187 const Standard_Real YT2,
188 const Standard_Real ZT2,
189 const Standard_Integer Index,
190 const Standard_Integer i1,
191 const Standard_Integer i1p1,
192 const Standard_Integer i1p2,
193 const Standard_Integer i2,
194 const Standard_Integer i2p1,
195 const Standard_Integer i2p2,
196 const Standard_Boolean reg1,
197 const Standard_Boolean regn,
198 const Standard_Boolean outl,
199 const Standard_Boolean intl)
201 myPoints.Pnt1.SetCoord(X1, Y1, Z1);
202 myPoints.Pnt2.SetCoord(X2, Y2, Z2);
203 myPoints.PntP1.SetCoord(XT1, YT1, ZT1);
204 myPoints.PntP2.SetCoord(XT2, YT2, ZT2);
205 myIndices.ShapeIndex = Index;
206 myIndices.FaceConex1 = i1;
207 myIndices.Face1Pt1 = i1p1;
208 myIndices.Face1Pt2 = i1p2;
209 myIndices.FaceConex2 = i2;
210 myIndices.Face2Pt1 = i2p1;
211 myIndices.Face2Pt2 = i2p2;
212 myIndices.SegFlags = 0;
217 Hidden(Standard_False);
220 //=======================================================================
221 //function : HLRAlgo_BiPoint
223 //=======================================================================
225 HLRAlgo_BiPoint::HLRAlgo_BiPoint (const Standard_Real X1,
226 const Standard_Real Y1,
227 const Standard_Real Z1,
228 const Standard_Real X2,
229 const Standard_Real Y2,
230 const Standard_Real Z2,
231 const Standard_Real XT1,
232 const Standard_Real YT1,
233 const Standard_Real ZT1,
234 const Standard_Real XT2,
235 const Standard_Real YT2,
236 const Standard_Real ZT2,
237 const Standard_Integer Index,
238 const Standard_Integer i1,
239 const Standard_Integer i1p1,
240 const Standard_Integer i1p2,
241 const Standard_Integer i2,
242 const Standard_Integer i2p1,
243 const Standard_Integer i2p2,
244 const Standard_Integer flag)
246 myPoints.Pnt1.SetCoord(X1, Y1, Z1);
247 myPoints.Pnt2.SetCoord(X2, Y2, Z2);
248 myPoints.PntP1.SetCoord(XT1, YT1, ZT1);
249 myPoints.PntP2.SetCoord(XT2, YT2, ZT2);
250 myIndices.ShapeIndex = Index;
251 myIndices.FaceConex1 = i1;
252 myIndices.Face1Pt1 = i1p1;
253 myIndices.Face1Pt2 = i1p2;
254 myIndices.FaceConex2 = i2;
255 myIndices.Face2Pt1 = i2p1;
256 myIndices.Face2Pt2 = i2p2;
257 myIndices.SegFlags = flag;
258 Hidden(Standard_False);