Version: 8.3.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
GEOM_Superv.idl
Go to the documentation of this file.
1 // Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE
2 //
3 // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
5 //
6 // This library is free software; you can redistribute it and/or
7 // modify it under the terms of the GNU Lesser General Public
8 // License as published by the Free Software Foundation; either
9 // version 2.1 of the License, or (at your option) any later version.
10 //
11 // This library is distributed in the hope that it will be useful,
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 // Lesser General Public License for more details.
15 //
16 // You should have received a copy of the GNU Lesser General Public
17 // License along with this library; if not, write to the Free Software
18 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19 //
20 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
21 //
22 // File : GEOM_Superv.idl
23 // Author : Lucien PIGNOLONI
24 
25 #ifndef __GEOM_SUPERV__
26 #define __GEOM_SUPERV__
27 
28 #include "GEOM_Gen.idl"
29 #include "AdvancedGEOM.idl"
30 
31 module GEOM
32 {
33  interface GEOM_List
34  { };
35 
36  interface GEOM_Superv : Engines::EngineComponent,SALOMEDS::Driver
37  {
38  //-----------------------------------------------------------//
39  // Set current study ID //
40  //-----------------------------------------------------------//
41  void SetStudyID (in long theStudyID) ;
42 
43  //-----------------------------------------------------------//
44  // Create ListOfGO and add items to it //
45  //-----------------------------------------------------------//
46  GEOM_List CreateListOfGO();
47  void AddItemToListOfGO( inout GEOM_List theList,
48  in GEOM_Object theObject);
49 
50  //-----------------------------------------------------------//
51  // Create ListOfLong and add items to it //
52  //-----------------------------------------------------------//
53  GEOM_List CreateListOfLong();
54  void AddItemToListOfLong( inout GEOM_List theList,
55  in long theObject);
56 
57  //-----------------------------------------------------------//
58  // Create ListOfDouble and add items to it //
59  //-----------------------------------------------------------//
60  GEOM_List CreateListOfDouble();
61  void AddItemToListOfDouble( inout GEOM_List theList,
62  in double theObject);
63 
64  //-----------------------------------------------------------//
65  // Primitives Construction : BasicOperations //
66  //-----------------------------------------------------------//
67  GEOM_Object MakePointXYZ (in double theX,
68  in double theY,
69  in double theZ);
70  GEOM_Object MakePointWithReference (in GEOM_Object theReference,
71  in double theX,
72  in double theY,
73  in double theZ);
74  GEOM_Object MakePointOnCurve (in GEOM_Object theRefCurve,
75  in double theParameter);
76  GEOM_Object MakePointOnCurveByLength (in GEOM_Object theRefCurve,
77  in double theLength,
78  in GEOM_Object theStartPoint);
79 
80  GEOM_Object MakeTangentOnCurve (in GEOM_Object theRefCurve,
81  in double theParameter);
82 
83  GEOM_Object MakeVectorDXDYDZ (in double theDX,
84  in double theDY,
85  in double theDZ) ;
86  GEOM_Object MakeVectorTwoPnt (in GEOM_Object thePnt1,
87  in GEOM_Object thePnt2) ;
88  GEOM_Object MakeLineTwoPnt (in GEOM_Object thePnt1,
89  in GEOM_Object thePnt2) ;
90  GEOM_Object MakeLineTwoFaces (in GEOM_Object theFace1,
91  in GEOM_Object theFace2) ;
92  GEOM_Object MakePlaneThreePnt (in GEOM_Object thePnt1,
93  in GEOM_Object thePnt2,
94  in GEOM_Object thePnt3,
95  in double theTrimSize) ;
96  GEOM_Object MakePlanePntVec (in GEOM_Object thePnt,
97  in GEOM_Object theVec,
98  in double theTrimSize) ;
99  GEOM_Object MakePlaneFace (in GEOM_Object theFace,
100  in double theTrimSize) ;
101  GEOM_Object MakePlane2Vec (in GEOM_Object theVec1,
102  in GEOM_Object theVec2,
103  in double theTrimSize) ;
104  GEOM_Object MakePlaneLCS (in GEOM_Object theLCS,
105  in double theTrimSize,
106  in double theOrientation) ;
107  GEOM_Object MakeMarker (in double theOX , in double theOY , in double theOZ,
108  in double theXDX, in double theXDY, in double theXDZ,
109  in double theYDX, in double theYDY, in double theYDZ) ;
110 
111  GEOM_Object MakeMarkerFromShape (in GEOM_Object theShape) ;
112 
113  GEOM_Object MakeMarkerPntTwoVec (in GEOM_Object theOrigin,
114  in GEOM_Object theXVec,
115  in GEOM_Object theYVec) ;
116 
126  GEOM_Object MakeTangentPlaneOnFace(in GEOM_Object theFace,
127  in double theParameterU,
128  in double theParameterV,
129  in double theTrimSize);
130 
131  //-----------------------------------------------------------//
132  // Primitives Construction : 3DPrimOperations //
133  //-----------------------------------------------------------//
134  GEOM_Object MakeBox (in double theX1,
135  in double theY1,
136  in double theZ1,
137  in double theX2,
138  in double theY2,
139  in double theZ2) ;
140  GEOM_Object MakeBoxDXDYDZ (in double theDX,
141  in double theDY,
142  in double theDZ) ;
143  GEOM_Object MakeBoxTwoPnt (in GEOM_Object thePnt1,
144  in GEOM_Object thePnt2) ;
145  GEOM_Object MakeFaceHW (in double theH,
146  in double theW,
147  in short theOrientation) ;
148  GEOM_Object MakeFaceObjHW (in GEOM_Object theObj,
149  in double theH,
150  in double theW) ;
151  GEOM_Object MakeDiskPntVecR (in GEOM_Object thePnt,
152  in GEOM_Object theVec,
153  in double theR) ;
154  GEOM_Object MakeDiskThreePnt (in GEOM_Object thePnt1,
155  in GEOM_Object thePnt2,
156  in GEOM_Object thePnt3) ;
157  GEOM_Object MakeDiskR (in double theR,
158  in short theOrientation) ;
159  GEOM_Object MakeCylinderPntVecRH (in GEOM_Object thePnt,
160  in GEOM_Object theAxis,
161  in double theRadius,
162  in double theHeight) ;
163  GEOM_Object MakeCylinderRH (in double theR,
164  in double theH) ;
165  GEOM_Object MakeCylinderPntVecRHA (in GEOM_Object thePnt,
166  in GEOM_Object theAxis,
167  in double theRadius,
168  in double theHeight,
169  in double theAngle) ;
170  GEOM_Object MakeCylinderRHA (in double theR,
171  in double theH,
172  in double theA) ;
173  GEOM_Object MakeSphere (in double theX,
174  in double theY,
175  in double theZ,
176  in double theRadius) ;
177  GEOM_Object MakeSphereR (in double theR) ;
178  GEOM_Object MakeSpherePntR (in GEOM_Object thePnt,
179  in double theR) ;
180  GEOM_Object MakeTorusPntVecRR (in GEOM_Object thePnt,
181  in GEOM_Object theVec,
182  in double theRMajor,
183  in double theRMinor) ;
184  GEOM_Object MakeTorusRR (in double theRMajor,
185  in double theRMinor) ;
186  GEOM_Object MakeConePntVecR1R2H (in GEOM_Object thePnt,
187  in GEOM_Object theAxis,
188  in double theR1,
189  in double theR2,
190  in double theHeight) ;
191  GEOM_Object MakeConeR1R2H (in double theR1,
192  in double theR2,
193  in double theHeight) ;
194  GEOM_Object MakePrismVecH (in GEOM_Object theBase,
195  in GEOM_Object theVec,
196  in double theH) ;
197  GEOM_Object MakePrismVecH2Ways (in GEOM_Object theBase,
198  in GEOM_Object theVec,
199  in double theH) ;
200  GEOM_Object MakePrismTwoPnt (in GEOM_Object theBase,
201  in GEOM_Object thePoint1,
202  in GEOM_Object thePoint2) ;
203  GEOM_Object MakePrismTwoPnt2Ways (in GEOM_Object theBase,
204  in GEOM_Object thePoint1,
205  in GEOM_Object thePoint2) ;
206  GEOM_Object MakePipe (in GEOM_Object theBase,
207  in GEOM_Object thePath) ;
208  GEOM_Object MakeRevolutionAxisAngle (in GEOM_Object theBase,
209  in GEOM_Object theAxis,
210  in double theAngle) ;
211  GEOM_Object MakeRevolutionAxisAngle2Ways (in GEOM_Object theBase,
212  in GEOM_Object theAxis,
213  in double theAngle) ;
214  GEOM_Object MakeFilling (in GEOM_Object theShape,
215  in long theMinDeg, in long theMaxDeg,
216  in double theTol2D, in double theTol3D,
217  in long theNbIter,
218  in filling_oper_method theMethod,
219  in boolean theApprox) ;
220  GEOM_Object MakeThruSections(in ListOfGO theSeqSections,
221  in boolean theModeSolid,
222  in double thePreci,
223  in boolean theRuled);
224 
225  GEOM_Object MakePipeWithDifferentSections (in ListOfGO theSeqBases,
226  in ListOfGO theLocations,
227  in GEOM_Object thePath,
228  in boolean theWithContact ,
229  in boolean theWithCorrection );
230 
231  GEOM_Object MakePipeWithShellSections (in ListOfGO theSeqBases,
232  in ListOfGO theSeqSubBases,
233  in ListOfGO theLocations,
234  in GEOM_Object thePath,
235  in boolean theWithContact ,
236  in boolean theWithCorrection );
237 
238  GEOM_Object MakePipeShellsWithoutPath (in ListOfGO theSeqBases,
239  in ListOfGO theLocations );
240 
241  GEOM_Object MakePipeBiNormalAlongVector (in GEOM_Object theBase,
242  in GEOM_Object thePath,
243  in GEOM_Object theVec);
244 
245  //-----------------------------------------------------------//
246  // BooleanOperations //
247  //-----------------------------------------------------------//
248  GEOM_Object MakeBoolean (in GEOM_Object theShape1,
249  in GEOM_Object theShape2,
250  in long theOperation) ;
251  GEOM_Object MakeFuse (in GEOM_Object theShape1,
252  in GEOM_Object theShape2) ;
253  GEOM_Object MakeCommon (in GEOM_Object theShape1,
254  in GEOM_Object theShape2) ;
255  GEOM_Object MakeCut (in GEOM_Object theShape1,
256  in GEOM_Object theShape2) ;
257  GEOM_Object MakeSection (in GEOM_Object theShape1,
258  in GEOM_Object theShape2) ;
259  GEOM_Object MakePartition (in GEOM_List theShapes,
260  in GEOM_List theTools,
261  in GEOM_List theKeepInside,
262  in GEOM_List theRemoveInside,
263  in short theLimit,
264  in boolean theRemoveWebs,
265  in GEOM_List theMaterials,
266  in short theKeepNonlimitShapes);
267  GEOM_Object MakeHalfPartition (in GEOM_Object theShape,
268  in GEOM_Object thePlane) ;
269 
270  //-----------------------------------------------------------//
271  // InsertOperations //
272  //-----------------------------------------------------------//
273  GEOM_Object MakeCopy (in GEOM_Object theOriginal) ;
274  void Export (in GEOM_Object theObject, in string theFileName, in string theFormatName) ;
275  GEOM_Object ImportFile (in string theFileName, in string theFormatName) ;
276 
277  //-----------------------------------------------------------//
278  // TransformOperations //
279  //-----------------------------------------------------------//
280  GEOM_Object TranslateTwoPoints (in GEOM_Object theObject,
281  in GEOM_Object thePoint1,
282  in GEOM_Object thePoint2) ;
283  GEOM_Object TranslateTwoPointsCopy (in GEOM_Object theObject,
284  in GEOM_Object thePoint1,
285  in GEOM_Object thePoint2) ;
286  GEOM_Object TranslateDXDYDZ (in GEOM_Object theObject,
287  in double theDX,
288  in double theDY,
289  in double theDZ) ;
290  GEOM_Object TranslateDXDYDZCopy (in GEOM_Object theObject,
291  in double theDX,
292  in double theDY,
293  in double theDZ) ;
294  GEOM_Object TranslateVector (in GEOM_Object theObject,
295  in GEOM_Object theVector) ;
296  GEOM_Object TranslateVectorCopy (in GEOM_Object theObject,
297  in GEOM_Object theVector) ;
298  GEOM_Object TranslateVectorDistance (in GEOM_Object theObject,
299  in GEOM_Object theVector,
300  in double theDistance,
301  in boolean theCopy) ;
302  GEOM_Object MultiTranslate1D (in GEOM_Object theObject,
303  in GEOM_Object theVector,
304  in double theStep,
305  in long theNbTimes) ;
306  GEOM_Object MultiTranslate2D (in GEOM_Object theObject,
307  in GEOM_Object theVector1,
308  in double theStep1,
309  in long theNbTimes1,
310  in GEOM_Object theVector2,
311  in double theStep2,
312  in long theNbTimes2) ;
313  GEOM_Object Rotate (in GEOM_Object theObject,
314  in GEOM_Object theAxis,
315  in double theAngle) ;
316  GEOM_Object RotateCopy (in GEOM_Object theObject,
317  in GEOM_Object theAxis,
318  in double theAngle) ;
319  GEOM_Object RotateThreePoints (in GEOM_Object theObject,
320  in GEOM_Object theCentPoint,
321  in GEOM_Object thePoint1,
322  in GEOM_Object thePoint2);
323  GEOM_Object RotateThreePointsCopy (in GEOM_Object theObject,
324  in GEOM_Object theCentPoint,
325  in GEOM_Object thePoint1,
326  in GEOM_Object thePoint2);
327  GEOM_Object MultiRotate1D (in GEOM_Object theObject,
328  in GEOM_Object theAxis,
329  in long theNbTimes) ;
330  GEOM_Object MultiRotate2D (in GEOM_Object theObject,
331  in GEOM_Object theAxis,
332  in double theAngle,
333  in long theNbTimes1,
334  in double theStep,
335  in long theNbTimes2) ;
336  GEOM_Object MirrorPlane (in GEOM_Object theObject,
337  in GEOM_Object thePlane) ;
338  GEOM_Object MirrorPlaneCopy (in GEOM_Object theObject,
339  in GEOM_Object thePlane) ;
340  GEOM_Object MirrorAxis (in GEOM_Object theObject,
341  in GEOM_Object theAxis) ;
342  GEOM_Object MirrorAxisCopy (in GEOM_Object theObject,
343  in GEOM_Object theAxis) ;
344  GEOM_Object MirrorPoint (in GEOM_Object theObject,
345  in GEOM_Object thePoint) ;
346  GEOM_Object MirrorPointCopy (in GEOM_Object theObject,
347  in GEOM_Object thePoint) ;
348  GEOM_Object OffsetShape (in GEOM_Object theObject,
349  in double theOffset) ;
350  GEOM_Object OffsetShapeCopy (in GEOM_Object theObject,
351  in double theOffset) ;
352  GEOM_Object ScaleShape (in GEOM_Object theObject,
353  in GEOM_Object thePoint,
354  in double theFactor) ;
355  GEOM_Object ScaleShapeCopy (in GEOM_Object theObject,
356  in GEOM_Object thePoint,
357  in double theFactor) ;
358  GEOM_Object ScaleShapeAlongAxes (in GEOM_Object theObject,
359  in GEOM_Object thePoint,
360  in double theFactorX,
361  in double theFactorY,
362  in double theFactorZ);
363  GEOM_Object ScaleShapeAlongAxesCopy (in GEOM_Object theObject,
364  in GEOM_Object thePoint,
365  in double theFactorX,
366  in double theFactorY,
367  in double theFactorZ);
368  GEOM_Object PositionShape (in GEOM_Object theObject,
369  in GEOM_Object theStartLCS,
370  in GEOM_Object theEndLCS) ;
371  GEOM_Object PositionShapeCopy (in GEOM_Object theObject,
372  in GEOM_Object theStartLCS,
373  in GEOM_Object theEndLCS) ;
374  GEOM_Object PositionAlongPath (in GEOM_Object theObject,
375  in GEOM_Object thePath,
376  in double theDistance,
377  in boolean theCopy,
378  in boolean theReverse);
379 
380  //-----------------------------------------------------------//
381  // ShapesOperations //
382  //-----------------------------------------------------------//
383  GEOM_Object MakeEdge (in GEOM_Object thePnt1,
384  in GEOM_Object thePnt2) ;
385  GEOM_Object MakeEdgeOnCurveByLength (in GEOM_Object theRefCurve,
386  in double theLength,
387  in GEOM_Object theStartPoint);
388  GEOM_Object MakeWire (in GEOM_List theEdgesAndWires,
389  in double theTolerance) ;
390  GEOM_Object MakeFace (in GEOM_Object theWire,
391  in boolean isPlanarWanted) ;
392  GEOM_Object MakeFaceWires (in GEOM_List theWires,
393  in boolean isPlanarWanted) ;
394  GEOM_Object MakeFaceWithConstraints(in GEOM_List theConstraints);
395  GEOM_Object MakeShell (in GEOM_List theFacesAndShells) ;
396  GEOM_Object MakeSolidShell (in GEOM_Object theShell) ;
397  GEOM_Object MakeSolidShells (in GEOM_List theShells) ;
398  GEOM_Object MakeCompound (in GEOM_List theShapes) ;
399  GEOM_Object MakeSolidFromConnectedFaces (in GEOM_List theFacesOrShells,
400  in boolean isIntersect);
401  GEOM_Object MakeGlueFaces (in GEOM_Object theShape,
402  in double theTolerance,
403  in boolean doKeepNonSolids);
404  GEOM_List GetGlueFaces (in GEOM_Object theShape,
405  in double theTolerance);
406  GEOM_Object MakeGlueFacesByList (in GEOM_Object theShape,
407  in double theTolerance,
408  in ListOfGO theFaces,
409  in boolean doKeepNonSolids,
410  in boolean doGlueAllEdges);
411  GEOM_List MakeExplode (in GEOM_Object theShape,
412  in long theShapeType,
413  in boolean isSorted) ;
414  long NumberOfFaces (in GEOM_Object theShape) ;
415  long NumberOfEdges (in GEOM_Object theShape) ;
416  GEOM_Object ChangeOrientation (in GEOM_Object theShape) ;
417 
418  GEOM_List GetShapesOnShape (in GEOM_Object theCheckShape,
419  in GEOM_Object theShape,
420  in short theShapeType,
421  in shape_state theState);
422  GEOM_Object GetShapesOnShapeAsCompound (in GEOM_Object theCheckShape,
423  in GEOM_Object theShape,
424  in short theShapeType,
425  in shape_state theState);
426 
427  //-----------------------------------------------------------//
428  // BlocksOperations //
429  //-----------------------------------------------------------//
430  GEOM_Object MakeQuad4Vertices (in GEOM_Object thePnt1,
431  in GEOM_Object thePnt2,
432  in GEOM_Object thePnt3,
433  in GEOM_Object thePnt4) ;
434  GEOM_Object MakeQuad (in GEOM_Object theEdge1,
435  in GEOM_Object theEdge2,
436  in GEOM_Object theEdge3,
437  in GEOM_Object theEdge4) ;
438  GEOM_Object MakeQuad2Edges (in GEOM_Object theEdge1,
439  in GEOM_Object theEdge2) ;
440  GEOM_Object MakeHexa (in GEOM_Object theFace1,
441  in GEOM_Object theFace2,
442  in GEOM_Object theFace3,
443  in GEOM_Object theFace4,
444  in GEOM_Object theFace5,
445  in GEOM_Object theFace6) ;
446  GEOM_Object MakeHexa2Faces (in GEOM_Object theFace1,
447  in GEOM_Object theFace2) ;
448  GEOM_Object GetPoint (in GEOM_Object theShape,
449  in double theX,
450  in double theY,
451  in double theZ,
452  in double theEpsilon) ;
453  GEOM_Object GetEdge (in GEOM_Object theShape,
454  in GEOM_Object thePoint1,
455  in GEOM_Object thePoint2) ;
457  in GEOM_Object thePoint) ;
458  GEOM_Object GetFaceByPoints (in GEOM_Object theShape,
459  in GEOM_Object thePoint1,
460  in GEOM_Object thePoint2,
461  in GEOM_Object thePoint3,
462  in GEOM_Object thePoint4) ;
463  GEOM_Object GetFaceByEdges (in GEOM_Object theShape,
464  in GEOM_Object theEdge1,
465  in GEOM_Object theEdge2) ;
466  GEOM_Object GetOppositeFace (in GEOM_Object theBlock,
467  in GEOM_Object theFace) ;
468  GEOM_Object GetFaceNearPoint (in GEOM_Object theShape,
469  in GEOM_Object thePoint) ;
470  GEOM_Object GetFaceByNormale (in GEOM_Object theBlock,
471  in GEOM_Object theVector) ;
472  boolean IsCompoundOfBlocks (in GEOM_Object theCompound,
473  in long theMinNbFaces,
474  in long theMaxNbFaces,
475  out long theNbBlocks) ;
476  boolean CheckCompoundOfBlocks (in GEOM_Object theCompound,
477  out GEOM_IBlocksOperations::BCErrors theErrors) ;
478  string PrintBCErrors (in GEOM_Object theCompound,
479  in GEOM_IBlocksOperations::BCErrors theErrors) ;
480  GEOM_List ExplodeCompoundOfBlocks (in GEOM_Object theCompound,
481  in long theMinNbFaces,
482  in long theMaxNbFaces) ;
483  GEOM_Object GetBlockNearPoint (in GEOM_Object theCompound,
484  in GEOM_Object thePoint) ;
485  GEOM_Object GetBlockByParts (in GEOM_Object theCompound,
486  in GEOM_List theParts) ;
487  GEOM_List GetBlocksByParts (in GEOM_Object theCompound,
488  in GEOM_List theParts) ;
489  GEOM_Object MakeMultiTransformation1D (in GEOM_Object theBlock,
490  in long theDirFace1,
491  in long theDirFace2,
492  in long theNbTimes) ;
493  GEOM_Object MakeMultiTransformation2D (in GEOM_Object theBlock,
494  in long theDirFace1U,
495  in long theDirFace2U,
496  in long theNbTimesU,
497  in long theDirFace1V,
498  in long theDirFace2V,
499  in long theNbTimesV) ;
500 
501  //-----------------------------------------------------------//
502  // CurvesOperations //
503  //-----------------------------------------------------------//
504  GEOM_Object MakeCirclePntVecR (in GEOM_Object thePnt,
505  in GEOM_Object theVec,
506  in double theR) ;
507  GEOM_Object MakeCircleThreePnt (in GEOM_Object thePnt1,
508  in GEOM_Object thePnt2,
509  in GEOM_Object thePnt3) ;
510  GEOM_Object MakeCircleCenter2Pnt (in GEOM_Object thePnt1,
511  in GEOM_Object thePnt2,
512  in GEOM_Object thePnt3) ;
513  GEOM_Object MakeEllipse (in GEOM_Object thePnt,
514  in GEOM_Object theVec,
515  in double theRMajor,
516  in double theRMinor) ;
517  GEOM_Object MakeEllipseVec (in GEOM_Object thePnt,
518  in GEOM_Object theVec,
519  in double theRMajor,
520  in double theRMinor,
521  in GEOM_Object theVecMaj) ;
522  GEOM_Object MakeArc (in GEOM_Object thePnt1,
523  in GEOM_Object thePnt2,
524  in GEOM_Object thePnt3) ;
525  GEOM_Object MakeArcCenter (in GEOM_Object theCenter,
526  in GEOM_Object thePnt1,
527  in GEOM_Object thePnt2,
528  in boolean theSense) ;
529  GEOM_Object MakeArcOfEllipse (in GEOM_Object theCenter,
530  in GEOM_Object thePnt1,
531  in GEOM_Object thePnt2) ;
532  GEOM_Object MakePolyline (in GEOM_List thePoints,
533  in boolean theIsClosed) ;
534  GEOM_Object MakeSplineBezier (in GEOM_List thePoints,
535  in boolean theIsClosed) ;
536  GEOM_Object MakeSplineInterpolation (in GEOM_List thePoints,
537  in boolean theIsClosed,
538  in boolean theDoReordering) ;
539  GEOM_Object MakeSketcher (in string theCommand,
540  in GEOM_List theWorkingPlane) ;
541 
542  //-----------------------------------------------------------//
543  // LocalOperations //
544  //-----------------------------------------------------------//
545  GEOM_Object MakeFilletAll (in GEOM_Object theShape,
546  in double theR) ;
547  GEOM_Object MakeFilletEdges (in GEOM_Object theShape,
548  in double theR,
549  in GEOM_List theEdges) ;
550  GEOM_Object MakeFilletEdgesR1R2 (in GEOM_Object theShape,
551  in double theR1,
552  in double theR2,
553  in GEOM_List theEdges) ;
554  GEOM_Object MakeFilletFaces (in GEOM_Object theShape,
555  in double theR,
556  in GEOM_List theFaces) ;
557  GEOM_Object MakeFilletFacesR1R2 (in GEOM_Object theShape,
558  in double theR1,
559  in double theR2,
560  in GEOM_List theFaces) ;
561  GEOM_Object MakeFillet2D (in GEOM_Object theShape,
562  in double theR,
563  in GEOM_List theVertexes) ;
564  GEOM_Object MakeChamferAll (in GEOM_Object theShape,
565  in double theD) ;
566  GEOM_Object MakeChamferEdge (in GEOM_Object theShape,
567  in double theD1, in double theD2,
568  in long theFace1, in long theFace2) ;
569  GEOM_Object MakeChamferEdgeAD (in GEOM_Object theShape,
570  in double theD, in double theAngle,
571  in long theFace1, in long theFace2) ;
572  GEOM_Object MakeChamferFaces (in GEOM_Object theShape,
573  in double theD1, in double theD2,
574  in GEOM_List theFaces) ;
575  GEOM_Object MakeChamferFacesAD (in GEOM_Object theShape,
576  in double theD, in double theAngle,
577  in GEOM_List theFaces) ;
578  GEOM_Object MakeChamferEdges (in GEOM_Object theShape,
579  in double theD1, in double theD2,
580  in GEOM_List theEdges) ;
581  GEOM_Object MakeChamferEdgesAD (in GEOM_Object theShape,
582  in double theD, in double theAngle,
583  in GEOM_List theEdges) ;
584  GEOM_Object MakeArchimede (in GEOM_Object theShape,
585  in double theWeight,
586  in double theWaterDensity,
587  in double theMeshDeflection) ;
588  long GetSubShapeIndex (in GEOM_Object theShape,
589  in GEOM_Object theSubShape) ;
590 
591  //-----------------------------------------------------------//
592  // GroupOperations //
593  //-----------------------------------------------------------//
594  GEOM_Object CreateGroup (in GEOM_Object theMainShape,
595  in long theShapeType) ;
596  void AddObject (in GEOM_Object theGroup,
597  in long theSubShapeId) ;
598  void RemoveObject (in GEOM_Object theGroup,
599  in long theSubShapeId) ;
600  long GetType (in GEOM_Object theGroup) ;
601  GEOM_Object GetMainShape(in GEOM_Object theGroup) ;
602  GEOM_List GetObjects(in GEOM_Object theGroup) ;
603 
604  //-----------------------------------------------------------//
605  // AdvancedOperations //
606  //-----------------------------------------------------------//
607  GEOM_List MakePipeTShape (in double theR1, in double theW1, in double theL1,
608  in double theR2, in double theW2, in double theL2,
609  in boolean theHexMesh);
610 
611  GEOM_List MakePipeTShapeWithPosition (in double theR1, in double theW1, in double theL1,
612  in double theR2, in double theW2, in double theL2,
613  in boolean theHexMesh,
614  in GEOM_Object theP1, in GEOM_Object theP2, in GEOM_Object theP3);
615 
616  GEOM_List MakePipeTShapeChamfer (in double theR1, in double theW1, in double theL1,
617  in double theR2, in double theW2, in double theL2,
618  in double theH, in double theW, in boolean theHexMesh);
619 
620  GEOM_List MakePipeTShapeChamferWithPosition (in double theR1, in double theW1, in double theL1,
621  in double theR2, in double theW2, in double theL2,
622  in double theH, in double theW, in boolean theHexMesh,
623  in GEOM_Object theP1, in GEOM_Object theP2, in GEOM_Object theP3);
624 
625  GEOM_List MakePipeTShapeFillet (in double theR1, in double theW1, in double theL1,
626  in double theR2, in double theW2, in double theL2,
627  in double theRF, in boolean theHexMesh);
628 
629  GEOM_List MakePipeTShapeFilletWithPosition (in double theR1, in double theW1, in double theL1,
630  in double theR2, in double theW2, in double theL2,
631  in double theRF, in boolean theHexMesh,
632  in GEOM_Object theP1, in GEOM_Object theP2, in GEOM_Object theP3);
633 
634  GEOM_Object MakeDividedDisk (in double theR, in double theRatio, in short theOrientation,
635  in pattern thePattern);
636 
637  GEOM_Object MakeDividedCylinder (in double theR, in double theH,
638  in pattern thePattern);
639 
640  GEOM_Object MakeSmoothingSurface (in GEOM_List thelPoints);
641 
642  //-----------------------------------------------------------//
643  // Import/Export Operations //
644  //-----------------------------------------------------------//
645  void ExportSTL( in GEOM::GEOM_Object theObject,
646  in string theFileName,
647  in boolean theIsASCII,
648  in double theDeflection,
649  in boolean theIsRelative );
650  GEOM_Object ImportSTL( in string theFileName );
651 
652  void ExportBREP( in GEOM::GEOM_Object theObject,
653  in string theFileName );
654  GEOM_Object ImportBREP( in string theFileName );
655 
656  void ExportSTEP( in GEOM::GEOM_Object theObject,
657  in string theFileName );
658  GEOM_Object ImportSTEP( in string theFileName,
659  in boolean theIsIgnoreUnits );
660 
661  void ExportIGES( in GEOM::GEOM_Object theObject,
662  in string theFileName,
663  in string theVersion );
664  GEOM_Object ImportIGES( in string theFileName,
665  in boolean theIsIgnoreUnits );
666 
667  boolean ExportXAO( in GEOM_Object shape,
668  in ListOfGO groups,
669  in ListOfFields fields,
670  in string author,
671  in string fileName,
672  in string shapeFileName );
673  boolean ImportXAO( in string fileName,
674  out GEOM_Object shape,
675  out ListOfGO subShapes,
676  out ListOfGO groups,
677  out ListOfFields fields );
678 
679  void ExportVTK( in GEOM::GEOM_Object theObject,
680  in string theFileName,
681  in double theDeflection );
682 
683  /*@@ insert new functions before this line @@ do not remove this line @@*/
684  };
685 };
686 
687 #endif