1 // Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
3 // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
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.
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.
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
20 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
22 // File : GEOM_Superv.idl
23 // Author : Lucien PIGNOLONI
25 #ifndef __GEOM_SUPERV__
26 #define __GEOM_SUPERV__
28 #include "GEOM_Gen.idl"
35 interface GEOM_Superv : Engines::EngineComponent,SALOMEDS::Driver
37 //-----------------------------------------------------------//
38 // Set current study ID //
39 //-----------------------------------------------------------//
40 void SetStudyID (in long theStudyID) ;
42 //-----------------------------------------------------------//
43 // Create ListOfGO and add items to it //
44 //-----------------------------------------------------------//
45 GEOM_List CreateListOfGO();
46 void AddItemToListOfGO( inout GEOM_List theList,
47 in GEOM_Object theObject);
49 //-----------------------------------------------------------//
50 // Create ListOfLong and add items to it //
51 //-----------------------------------------------------------//
52 GEOM_List CreateListOfLong();
53 void AddItemToListOfLong( inout GEOM_List theList,
56 //-----------------------------------------------------------//
57 // Create ListOfDouble and add items to it //
58 //-----------------------------------------------------------//
59 GEOM_List CreateListOfDouble();
60 void AddItemToListOfDouble( inout GEOM_List theList,
63 //-----------------------------------------------------------//
64 // Primitives Construction : BasicOperations //
65 //-----------------------------------------------------------//
66 GEOM_Object MakePointXYZ (in double theX,
69 GEOM_Object MakePointWithReference (in GEOM_Object theReference,
73 GEOM_Object MakePointOnCurve (in GEOM_Object theRefCurve,
74 in double theParameter);
75 GEOM_Object MakePointOnCurveByLength (in GEOM_Object theRefCurve,
77 in GEOM_Object theStartPoint);
79 GEOM_Object MakeTangentOnCurve (in GEOM_Object theRefCurve,
80 in double theParameter);
82 GEOM_Object MakeVectorDXDYDZ (in double theDX,
85 GEOM_Object MakeVectorTwoPnt (in GEOM_Object thePnt1,
86 in GEOM_Object thePnt2) ;
87 GEOM_Object MakeLineTwoPnt (in GEOM_Object thePnt1,
88 in GEOM_Object thePnt2) ;
89 GEOM_Object MakeLineTwoFaces (in GEOM_Object theFace1,
90 in GEOM_Object theFace2) ;
91 GEOM_Object MakePlaneThreePnt (in GEOM_Object thePnt1,
92 in GEOM_Object thePnt2,
93 in GEOM_Object thePnt3,
94 in double theTrimSize) ;
95 GEOM_Object MakePlanePntVec (in GEOM_Object thePnt,
96 in GEOM_Object theVec,
97 in double theTrimSize) ;
98 GEOM_Object MakePlaneFace (in GEOM_Object theFace,
99 in double theTrimSize) ;
100 GEOM_Object MakePlane2Vec (in GEOM_Object theVec1,
101 in GEOM_Object theVec2,
102 in double theTrimSize) ;
103 GEOM_Object MakePlaneLCS (in GEOM_Object theLCS,
104 in double theTrimSize,
105 in double theOrientation) ;
106 GEOM_Object MakeMarker (in double theOX , in double theOY , in double theOZ,
107 in double theXDX, in double theXDY, in double theXDZ,
108 in double theYDX, in double theYDY, in double theYDZ) ;
110 GEOM_Object MakeMarkerFromShape (in GEOM_Object theShape) ;
112 GEOM_Object MakeMarkerPntTwoVec (in GEOM_Object theOrigin,
113 in GEOM_Object theXVec,
114 in GEOM_Object theYVec) ;
117 * Create a tangent plane to specified face in the point with specified parameters.
118 * Values of parameters should be between 0. and 1.0
119 * \param theFace - face for which tangent plane shuold be built.
120 * \param theParameterU - value of parameter by U
121 * \param theParameterV - value of parameter Vthe
122 * \param theTrimSize - defines sizes of created face
123 * \return New GEOM_Object, containing the face built on tangent plane.
125 GEOM_Object MakeTangentPlaneOnFace(in GEOM_Object theFace,
126 in double theParameterU,
127 in double theParameterV,
128 in double theTrimSize);
130 //-----------------------------------------------------------//
131 // Primitives Construction : 3DPrimOperations //
132 //-----------------------------------------------------------//
133 GEOM_Object MakeBox (in double theX1,
139 GEOM_Object MakeBoxDXDYDZ (in double theDX,
142 GEOM_Object MakeBoxTwoPnt (in GEOM_Object thePnt1,
143 in GEOM_Object thePnt2) ;
144 GEOM_Object MakeFaceHW (in double theH,
146 in short theOrientation) ;
147 GEOM_Object MakeFaceObjHW (in GEOM_Object theObj,
150 GEOM_Object MakeDiskPntVecR (in GEOM_Object thePnt,
151 in GEOM_Object theVec,
153 GEOM_Object MakeDiskThreePnt (in GEOM_Object thePnt1,
154 in GEOM_Object thePnt2,
155 in GEOM_Object thePnt3) ;
156 GEOM_Object MakeDiskR (in double theR,
157 in short theOrientation) ;
158 GEOM_Object MakeCylinderPntVecRH (in GEOM_Object thePnt,
159 in GEOM_Object theAxis,
161 in double theHeight) ;
162 GEOM_Object MakeCylinderRH (in double theR,
164 GEOM_Object MakeSphere (in double theX,
167 in double theRadius) ;
168 GEOM_Object MakeSphereR (in double theR) ;
169 GEOM_Object MakeSpherePntR (in GEOM_Object thePnt,
171 GEOM_Object MakeTorusPntVecRR (in GEOM_Object thePnt,
172 in GEOM_Object theVec,
174 in double theRMinor) ;
175 GEOM_Object MakeTorusRR (in double theRMajor,
176 in double theRMinor) ;
177 GEOM_Object MakeConePntVecR1R2H (in GEOM_Object thePnt,
178 in GEOM_Object theAxis,
181 in double theHeight) ;
182 GEOM_Object MakeConeR1R2H (in double theR1,
184 in double theHeight) ;
185 GEOM_Object MakePrismVecH (in GEOM_Object theBase,
186 in GEOM_Object theVec,
188 GEOM_Object MakePrismVecH2Ways (in GEOM_Object theBase,
189 in GEOM_Object theVec,
191 GEOM_Object MakePrismTwoPnt (in GEOM_Object theBase,
192 in GEOM_Object thePoint1,
193 in GEOM_Object thePoint2) ;
194 GEOM_Object MakePrismTwoPnt2Ways (in GEOM_Object theBase,
195 in GEOM_Object thePoint1,
196 in GEOM_Object thePoint2) ;
197 GEOM_Object MakePipe (in GEOM_Object theBase,
198 in GEOM_Object thePath) ;
199 GEOM_Object MakeRevolutionAxisAngle (in GEOM_Object theBase,
200 in GEOM_Object theAxis,
201 in double theAngle) ;
202 GEOM_Object MakeRevolutionAxisAngle2Ways (in GEOM_Object theBase,
203 in GEOM_Object theAxis,
204 in double theAngle) ;
205 GEOM_Object MakeFilling (in GEOM_Object theShape,
206 in long theMinDeg, in long theMaxDeg,
207 in double theTol2D, in double theTol3D,
209 in filling_oper_method theMethod,
210 in boolean theApprox) ;
211 GEOM_Object MakeThruSections(in ListOfGO theSeqSections,
212 in boolean theModeSolid,
214 in boolean theRuled);
216 GEOM_Object MakePipeWithDifferentSections (in ListOfGO theSeqBases,
217 in ListOfGO theLocations,
218 in GEOM_Object thePath,
219 in boolean theWithContact ,
220 in boolean theWithCorrection );
222 GEOM_Object MakePipeWithShellSections (in ListOfGO theSeqBases,
223 in ListOfGO theSeqSubBases,
224 in ListOfGO theLocations,
225 in GEOM_Object thePath,
226 in boolean theWithContact ,
227 in boolean theWithCorrection );
229 GEOM_Object MakePipeShellsWithoutPath (in ListOfGO theSeqBases,
230 in ListOfGO theLocations );
232 GEOM_Object MakePipeBiNormalAlongVector (in GEOM_Object theBase,
233 in GEOM_Object thePath,
234 in GEOM_Object theVec);
236 //-----------------------------------------------------------//
237 // BooleanOperations //
238 //-----------------------------------------------------------//
239 GEOM_Object MakeBoolean (in GEOM_Object theShape1,
240 in GEOM_Object theShape2,
241 in long theOperation,
242 in boolean IsCheckSelfInte) ;
243 GEOM_Object MakeFuse (in GEOM_Object theShape1,
244 in GEOM_Object theShape2,
245 in boolean IsCheckSelfInte) ;
246 GEOM_Object MakePartition (in GEOM_List theShapes,
247 in GEOM_List theTools,
248 in GEOM_List theKeepInside,
249 in GEOM_List theRemoveInside,
251 in boolean theRemoveWebs,
252 in GEOM_List theMaterials,
253 in short theKeepNonlimitShapes);
254 GEOM_Object MakeHalfPartition (in GEOM_Object theShape,
255 in GEOM_Object thePlane) ;
257 //-----------------------------------------------------------//
258 // InsertOperations //
259 //-----------------------------------------------------------//
260 GEOM_Object MakeCopy (in GEOM_Object theOriginal) ;
261 void Export (in GEOM_Object theObject, in string theFileName, in string theFormatName) ;
262 GEOM_Object ImportFile (in string theFileName, in string theFormatName) ;
263 void ImportTranslators (out string_array theFormats,
264 out string_array thePatterns) ;
265 void ExportTranslators (out string_array theFormats,
266 out string_array thePatterns) ;
267 boolean ExportXAO(in GEOM_Object shape,
268 in ListOfGO groups, in ListOfGO fields,
269 in string author, in string fileName);
270 boolean ImportXAO(in string fileName, out GEOM_Object shape,
271 out ListOfGO subShapes, out ListOfGO groups, out ListOfGO fields);
273 //-----------------------------------------------------------//
274 // TransformOperations //
275 //-----------------------------------------------------------//
276 GEOM_Object TranslateTwoPoints (in GEOM_Object theObject,
277 in GEOM_Object thePoint1,
278 in GEOM_Object thePoint2) ;
279 GEOM_Object TranslateTwoPointsCopy (in GEOM_Object theObject,
280 in GEOM_Object thePoint1,
281 in GEOM_Object thePoint2) ;
282 GEOM_Object TranslateDXDYDZ (in GEOM_Object theObject,
286 GEOM_Object TranslateDXDYDZCopy (in GEOM_Object theObject,
290 GEOM_Object TranslateVector (in GEOM_Object theObject,
291 in GEOM_Object theVector) ;
292 GEOM_Object TranslateVectorCopy (in GEOM_Object theObject,
293 in GEOM_Object theVector) ;
294 GEOM_Object TranslateVectorDistance (in GEOM_Object theObject,
295 in GEOM_Object theVector,
296 in double theDistance,
297 in boolean theCopy) ;
298 GEOM_Object MultiTranslate1D (in GEOM_Object theObject,
299 in GEOM_Object theVector,
301 in long theNbTimes) ;
302 GEOM_Object MultiTranslate2D (in GEOM_Object theObject,
303 in GEOM_Object theVector1,
306 in GEOM_Object theVector2,
308 in long theNbTimes2) ;
309 GEOM_Object Rotate (in GEOM_Object theObject,
310 in GEOM_Object theAxis,
311 in double theAngle) ;
312 GEOM_Object RotateCopy (in GEOM_Object theObject,
313 in GEOM_Object theAxis,
314 in double theAngle) ;
315 GEOM_Object RotateThreePoints (in GEOM_Object theObject,
316 in GEOM_Object theCentPoint,
317 in GEOM_Object thePoint1,
318 in GEOM_Object thePoint2);
319 GEOM_Object RotateThreePointsCopy (in GEOM_Object theObject,
320 in GEOM_Object theCentPoint,
321 in GEOM_Object thePoint1,
322 in GEOM_Object thePoint2);
323 GEOM_Object MultiRotate1D (in GEOM_Object theObject,
324 in GEOM_Object theAxis,
325 in long theNbTimes) ;
326 GEOM_Object MultiRotate2D (in GEOM_Object theObject,
327 in GEOM_Object theAxis,
331 in long theNbTimes2) ;
332 GEOM_Object MirrorPlane (in GEOM_Object theObject,
333 in GEOM_Object thePlane) ;
334 GEOM_Object MirrorPlaneCopy (in GEOM_Object theObject,
335 in GEOM_Object thePlane) ;
336 GEOM_Object MirrorAxis (in GEOM_Object theObject,
337 in GEOM_Object theAxis) ;
338 GEOM_Object MirrorAxisCopy (in GEOM_Object theObject,
339 in GEOM_Object theAxis) ;
340 GEOM_Object MirrorPoint (in GEOM_Object theObject,
341 in GEOM_Object thePoint) ;
342 GEOM_Object MirrorPointCopy (in GEOM_Object theObject,
343 in GEOM_Object thePoint) ;
344 GEOM_Object OffsetShape (in GEOM_Object theObject,
345 in double theOffset) ;
346 GEOM_Object OffsetShapeCopy (in GEOM_Object theObject,
347 in double theOffset) ;
348 GEOM_Object ScaleShape (in GEOM_Object theObject,
349 in GEOM_Object thePoint,
350 in double theFactor) ;
351 GEOM_Object ScaleShapeCopy (in GEOM_Object theObject,
352 in GEOM_Object thePoint,
353 in double theFactor) ;
354 GEOM_Object ScaleShapeAlongAxes (in GEOM_Object theObject,
355 in GEOM_Object thePoint,
356 in double theFactorX,
357 in double theFactorY,
358 in double theFactorZ);
359 GEOM_Object ScaleShapeAlongAxesCopy (in GEOM_Object theObject,
360 in GEOM_Object thePoint,
361 in double theFactorX,
362 in double theFactorY,
363 in double theFactorZ);
364 GEOM_Object PositionShape (in GEOM_Object theObject,
365 in GEOM_Object theStartLCS,
366 in GEOM_Object theEndLCS) ;
367 GEOM_Object PositionShapeCopy (in GEOM_Object theObject,
368 in GEOM_Object theStartLCS,
369 in GEOM_Object theEndLCS) ;
370 GEOM_Object PositionAlongPath (in GEOM_Object theObject,
371 in GEOM_Object thePath,
372 in double theDistance,
374 in boolean theReverse);
376 //-----------------------------------------------------------//
377 // ShapesOperations //
378 //-----------------------------------------------------------//
379 GEOM_Object MakeEdge (in GEOM_Object thePnt1,
380 in GEOM_Object thePnt2) ;
381 GEOM_Object MakeEdgeOnCurveByLength (in GEOM_Object theRefCurve,
383 in GEOM_Object theStartPoint);
384 GEOM_Object MakeWire (in GEOM_List theEdgesAndWires,
385 in double theTolerance) ;
386 GEOM_Object MakeFace (in GEOM_Object theWire,
387 in boolean isPlanarWanted) ;
388 GEOM_Object MakeFaceWires (in GEOM_List theWires,
389 in boolean isPlanarWanted) ;
390 GEOM_Object MakeShell (in GEOM_List theFacesAndShells) ;
391 GEOM_Object MakeSolidShell (in GEOM_Object theShell) ;
392 GEOM_Object MakeSolidShells (in GEOM_List theShells) ;
393 GEOM_Object MakeCompound (in GEOM_List theShapes) ;
394 GEOM_Object MakeGlueFaces (in GEOM_Object theShape,
395 in double theTolerance,
396 in boolean doKeepNonSolids);
397 GEOM_List GetGlueFaces (in GEOM_Object theShape,
398 in double theTolerance);
399 GEOM_Object MakeGlueFacesByList (in GEOM_Object theShape,
400 in double theTolerance,
401 in ListOfGO theFaces,
402 in boolean doKeepNonSolids,
403 in boolean doGlueAllEdges);
404 GEOM_List MakeExplode (in GEOM_Object theShape,
405 in long theShapeType,
406 in boolean isSorted) ;
407 long NumberOfFaces (in GEOM_Object theShape) ;
408 long NumberOfEdges (in GEOM_Object theShape) ;
409 GEOM_Object ChangeOrientation (in GEOM_Object theShape) ;
411 GEOM_List GetShapesOnShape (in GEOM_Object theCheckShape,
412 in GEOM_Object theShape,
413 in short theShapeType,
414 in shape_state theState);
415 GEOM_Object GetShapesOnShapeAsCompound (in GEOM_Object theCheckShape,
416 in GEOM_Object theShape,
417 in short theShapeType,
418 in shape_state theState);
420 //-----------------------------------------------------------//
421 // BlocksOperations //
422 //-----------------------------------------------------------//
423 GEOM_Object MakeQuad4Vertices (in GEOM_Object thePnt1,
424 in GEOM_Object thePnt2,
425 in GEOM_Object thePnt3,
426 in GEOM_Object thePnt4) ;
427 GEOM_Object MakeQuad (in GEOM_Object theEdge1,
428 in GEOM_Object theEdge2,
429 in GEOM_Object theEdge3,
430 in GEOM_Object theEdge4) ;
431 GEOM_Object MakeQuad2Edges (in GEOM_Object theEdge1,
432 in GEOM_Object theEdge2) ;
433 GEOM_Object MakeHexa (in GEOM_Object theFace1,
434 in GEOM_Object theFace2,
435 in GEOM_Object theFace3,
436 in GEOM_Object theFace4,
437 in GEOM_Object theFace5,
438 in GEOM_Object theFace6) ;
439 GEOM_Object MakeHexa2Faces (in GEOM_Object theFace1,
440 in GEOM_Object theFace2) ;
441 GEOM_Object GetPoint (in GEOM_Object theShape,
445 in double theEpsilon) ;
446 GEOM_Object GetEdge (in GEOM_Object theShape,
447 in GEOM_Object thePoint1,
448 in GEOM_Object thePoint2) ;
449 GEOM_Object GetEdgeNearPoint (in GEOM_Object theShape,
450 in GEOM_Object thePoint) ;
451 GEOM_Object GetFaceByPoints (in GEOM_Object theShape,
452 in GEOM_Object thePoint1,
453 in GEOM_Object thePoint2,
454 in GEOM_Object thePoint3,
455 in GEOM_Object thePoint4) ;
456 GEOM_Object GetFaceByEdges (in GEOM_Object theShape,
457 in GEOM_Object theEdge1,
458 in GEOM_Object theEdge2) ;
459 GEOM_Object GetOppositeFace (in GEOM_Object theBlock,
460 in GEOM_Object theFace) ;
461 GEOM_Object GetFaceNearPoint (in GEOM_Object theShape,
462 in GEOM_Object thePoint) ;
463 GEOM_Object GetFaceByNormale (in GEOM_Object theBlock,
464 in GEOM_Object theVector) ;
465 boolean IsCompoundOfBlocks (in GEOM_Object theCompound,
466 in long theMinNbFaces,
467 in long theMaxNbFaces,
468 out long theNbBlocks) ;
469 boolean CheckCompoundOfBlocks (in GEOM_Object theCompound,
470 out GEOM_IBlocksOperations::BCErrors theErrors) ;
471 string PrintBCErrors (in GEOM_Object theCompound,
472 in GEOM_IBlocksOperations::BCErrors theErrors) ;
473 GEOM_List ExplodeCompoundOfBlocks (in GEOM_Object theCompound,
474 in long theMinNbFaces,
475 in long theMaxNbFaces) ;
476 GEOM_Object GetBlockNearPoint (in GEOM_Object theCompound,
477 in GEOM_Object thePoint) ;
478 GEOM_Object GetBlockByParts (in GEOM_Object theCompound,
479 in GEOM_List theParts) ;
480 GEOM_List GetBlocksByParts (in GEOM_Object theCompound,
481 in GEOM_List theParts) ;
482 GEOM_Object MakeMultiTransformation1D (in GEOM_Object theBlock,
485 in long theNbTimes) ;
486 GEOM_Object MakeMultiTransformation2D (in GEOM_Object theBlock,
487 in long theDirFace1U,
488 in long theDirFace2U,
490 in long theDirFace1V,
491 in long theDirFace2V,
492 in long theNbTimesV) ;
494 //-----------------------------------------------------------//
495 // CurvesOperations //
496 //-----------------------------------------------------------//
497 GEOM_Object MakeCirclePntVecR (in GEOM_Object thePnt,
498 in GEOM_Object theVec,
500 GEOM_Object MakeCircleThreePnt (in GEOM_Object thePnt1,
501 in GEOM_Object thePnt2,
502 in GEOM_Object thePnt3) ;
503 GEOM_Object MakeCircleCenter2Pnt (in GEOM_Object thePnt1,
504 in GEOM_Object thePnt2,
505 in GEOM_Object thePnt3) ;
506 GEOM_Object MakeEllipse (in GEOM_Object thePnt,
507 in GEOM_Object theVec,
509 in double theRMinor) ;
510 GEOM_Object MakeEllipseVec (in GEOM_Object thePnt,
511 in GEOM_Object theVec,
514 in GEOM_Object theVecMaj) ;
515 GEOM_Object MakeArc (in GEOM_Object thePnt1,
516 in GEOM_Object thePnt2,
517 in GEOM_Object thePnt3) ;
518 GEOM_Object MakeArcCenter (in GEOM_Object theCenter,
519 in GEOM_Object thePnt1,
520 in GEOM_Object thePnt2,
521 in boolean theSense) ;
522 GEOM_Object MakeArcOfEllipse (in GEOM_Object theCenter,
523 in GEOM_Object thePnt1,
524 in GEOM_Object thePnt2) ;
525 GEOM_Object MakePolyline (in GEOM_List thePoints,
526 in boolean theIsClosed) ;
527 GEOM_Object MakeSplineBezier (in GEOM_List thePoints,
528 in boolean theIsClosed) ;
529 GEOM_Object MakeSplineInterpolation (in GEOM_List thePoints,
530 in boolean theIsClosed,
531 in boolean theDoReordering) ;
532 GEOM_Object MakeSketcher (in string theCommand,
533 in GEOM_List theWorkingPlane) ;
535 //-----------------------------------------------------------//
536 // LocalOperations //
537 //-----------------------------------------------------------//
538 GEOM_Object MakeFilletAll (in GEOM_Object theShape,
540 GEOM_Object MakeFilletEdges (in GEOM_Object theShape,
542 in GEOM_List theEdges) ;
543 GEOM_Object MakeFilletEdgesR1R2 (in GEOM_Object theShape,
546 in GEOM_List theEdges) ;
547 GEOM_Object MakeFilletFaces (in GEOM_Object theShape,
549 in GEOM_List theFaces) ;
550 GEOM_Object MakeFilletFacesR1R2 (in GEOM_Object theShape,
553 in GEOM_List theFaces) ;
554 GEOM_Object MakeFillet2D (in GEOM_Object theShape,
556 in GEOM_List theVertexes) ;
557 GEOM_Object MakeChamferAll (in GEOM_Object theShape,
559 GEOM_Object MakeChamferEdge (in GEOM_Object theShape,
560 in double theD1, in double theD2,
561 in long theFace1, in long theFace2) ;
562 GEOM_Object MakeChamferEdgeAD (in GEOM_Object theShape,
563 in double theD, in double theAngle,
564 in long theFace1, in long theFace2) ;
565 GEOM_Object MakeChamferFaces (in GEOM_Object theShape,
566 in double theD1, in double theD2,
567 in GEOM_List theFaces) ;
568 GEOM_Object MakeChamferFacesAD (in GEOM_Object theShape,
569 in double theD, in double theAngle,
570 in GEOM_List theFaces) ;
571 GEOM_Object MakeChamferEdges (in GEOM_Object theShape,
572 in double theD1, in double theD2,
573 in GEOM_List theEdges) ;
574 GEOM_Object MakeChamferEdgesAD (in GEOM_Object theShape,
575 in double theD, in double theAngle,
576 in GEOM_List theEdges) ;
577 GEOM_Object MakeArchimede (in GEOM_Object theShape,
579 in double theWaterDensity,
580 in double theMeshDeflection) ;
581 long GetSubShapeIndex (in GEOM_Object theShape,
582 in GEOM_Object theSubShape) ;
584 //-----------------------------------------------------------//
585 // GroupOperations //
586 //-----------------------------------------------------------//
587 GEOM_Object CreateGroup (in GEOM_Object theMainShape,
588 in long theShapeType) ;
589 void AddObject (in GEOM_Object theGroup,
590 in long theSubShapeId) ;
591 void RemoveObject (in GEOM_Object theGroup,
592 in long theSubShapeId) ;
593 long GetType (in GEOM_Object theGroup) ;
594 GEOM_Object GetMainShape(in GEOM_Object theGroup) ;
595 GEOM_List GetObjects(in GEOM_Object theGroup) ;
597 //-----------------------------------------------------------//
598 // AdvancedOperations //
599 //-----------------------------------------------------------//
600 GEOM_List MakePipeTShape (in double theR1, in double theW1, in double theL1,
601 in double theR2, in double theW2, in double theL2,
602 in boolean theHexMesh);
604 GEOM_List MakePipeTShapeWithPosition (in double theR1, in double theW1, in double theL1,
605 in double theR2, in double theW2, in double theL2,
606 in boolean theHexMesh,
607 in GEOM_Object theP1, in GEOM_Object theP2, in GEOM_Object theP3);
609 GEOM_List MakePipeTShapeChamfer (in double theR1, in double theW1, in double theL1,
610 in double theR2, in double theW2, in double theL2,
611 in double theH, in double theW, in boolean theHexMesh);
613 GEOM_List MakePipeTShapeChamferWithPosition (in double theR1, in double theW1, in double theL1,
614 in double theR2, in double theW2, in double theL2,
615 in double theH, in double theW, in boolean theHexMesh,
616 in GEOM_Object theP1, in GEOM_Object theP2, in GEOM_Object theP3);
618 GEOM_List MakePipeTShapeFillet (in double theR1, in double theW1, in double theL1,
619 in double theR2, in double theW2, in double theL2,
620 in double theRF, in boolean theHexMesh);
622 GEOM_List MakePipeTShapeFilletWithPosition (in double theR1, in double theW1, in double theL1,
623 in double theR2, in double theW2, in double theL2,
624 in double theRF, in boolean theHexMesh,
625 in GEOM_Object theP1, in GEOM_Object theP2, in GEOM_Object theP3);
627 GEOM_Object MakeDividedDisk (in double theR, in double theRatio, in short theOrientation,
628 in pattern thePattern);
630 GEOM_Object MakeDividedCylinder (in double theR, in double theH,
631 in pattern thePattern);
633 GEOM_Object MakeSmoothingSurface (in GEOM_List thelPoints);
635 /*@@ insert new functions before this line @@ do not remove this line @@*/