X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=idl%2FGEOM_Superv.idl;h=003c8210bbe23f5a204ea42710331cbcff0f23e0;hb=1bb74b43ea0b5238e756df0b46f413e38ac2427e;hp=d50c74abe7800808f0a11051bfa90e33a3f68edb;hpb=d3dd282390888d7dc091ba2c2ffe7923bd7458e6;p=modules%2Fgeom.git diff --git a/idl/GEOM_Superv.idl b/idl/GEOM_Superv.idl index d50c74abe..003c8210b 100644 --- a/idl/GEOM_Superv.idl +++ b/idl/GEOM_Superv.idl @@ -1,23 +1,23 @@ -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE // +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // // File : GEOM_Superv.idl // Author : Lucien PIGNOLONI @@ -26,350 +26,662 @@ #define __GEOM_SUPERV__ #include "GEOM_Gen.idl" +#include "AdvancedGEOM.idl" module GEOM { - interface GEOM_Superv : Engines::Component,SALOMEDS::Driver + interface GEOM_List + { }; + + interface GEOM_Superv : Engines::EngineComponent,SALOMEDS::Driver { //-----------------------------------------------------------// - // Set current study ID // + // Set current study ID // //-----------------------------------------------------------// void SetStudyID (in long theStudyID) ; - + + //-----------------------------------------------------------// + // Create ListOfGO and add items to it // + //-----------------------------------------------------------// + GEOM_List CreateListOfGO(); + void AddItemToListOfGO( inout GEOM_List theList, + in GEOM_Object theObject); + + //-----------------------------------------------------------// + // Create ListOfLong and add items to it // + //-----------------------------------------------------------// + GEOM_List CreateListOfLong(); + void AddItemToListOfLong( inout GEOM_List theList, + in long theObject); + + //-----------------------------------------------------------// + // Create ListOfDouble and add items to it // + //-----------------------------------------------------------// + GEOM_List CreateListOfDouble(); + void AddItemToListOfDouble( inout GEOM_List theList, + in double theObject); + //-----------------------------------------------------------// - // Primitives Construction : BasicOperations // + // Primitives Construction : BasicOperations // //-----------------------------------------------------------// GEOM_Object MakePointXYZ (in double theX, - in double theY, - in double theZ) ; + in double theY, + in double theZ); GEOM_Object MakePointWithReference (in GEOM_Object theReference, - in double theX, - in double theY, - in double theZ) ; + in double theX, + in double theY, + in double theZ); GEOM_Object MakePointOnCurve (in GEOM_Object theRefCurve, - in double theParameter) ; + in double theParameter); + GEOM_Object MakePointOnCurveByLength (in GEOM_Object theRefCurve, + in double theLength, + in GEOM_Object theStartPoint); + + GEOM_Object MakeTangentOnCurve (in GEOM_Object theRefCurve, + in double theParameter); + GEOM_Object MakeVectorDXDYDZ (in double theDX, - in double theDY, - in double theDZ) ; + in double theDY, + in double theDZ) ; GEOM_Object MakeVectorTwoPnt (in GEOM_Object thePnt1, - in GEOM_Object thePnt2) ; + in GEOM_Object thePnt2) ; GEOM_Object MakeLineTwoPnt (in GEOM_Object thePnt1, - in GEOM_Object thePnt2) ; + in GEOM_Object thePnt2) ; + GEOM_Object MakeLineTwoFaces (in GEOM_Object theFace1, + in GEOM_Object theFace2) ; GEOM_Object MakePlaneThreePnt (in GEOM_Object thePnt1, - in GEOM_Object thePnt2, - in GEOM_Object thePnt3, - in double theTrimSize) ; + in GEOM_Object thePnt2, + in GEOM_Object thePnt3, + in double theTrimSize) ; GEOM_Object MakePlanePntVec (in GEOM_Object thePnt, - in GEOM_Object theVec, - in double theTrimSize) ; + in GEOM_Object theVec, + in double theTrimSize) ; GEOM_Object MakePlaneFace (in GEOM_Object theFace, - in double theTrimSize) ; + in double theTrimSize) ; + GEOM_Object MakePlane2Vec (in GEOM_Object theVec1, + in GEOM_Object theVec2, + in double theTrimSize) ; + GEOM_Object MakePlaneLCS (in GEOM_Object theLCS, + in double theTrimSize, + in double theOrientation) ; GEOM_Object MakeMarker (in double theOX , in double theOY , in double theOZ, - in double theXDX, in double theXDY, in double theXDZ, - in double theYDX, in double theYDY, in double theYDZ) ; + in double theXDX, in double theXDY, in double theXDZ, + in double theYDX, in double theYDY, in double theYDZ) ; + + GEOM_Object MakeMarkerFromShape (in GEOM_Object theShape) ; + + GEOM_Object MakeMarkerPntTwoVec (in GEOM_Object theOrigin, + in GEOM_Object theXVec, + in GEOM_Object theYVec) ; + + /*! + * Create a tangent plane to specified face in the point with specified parameters. + * Values of parameters should be between 0. and 1.0 + * \param theFace - face for which tangent plane shuold be built. + * \param theParameterU - value of parameter by U + * \param theParameterV - value of parameter Vthe + * \param theTrimSize - defines sizes of created face + * \return New GEOM_Object, containing the face built on tangent plane. + */ + GEOM_Object MakeTangentPlaneOnFace(in GEOM_Object theFace, + in double theParameterU, + in double theParameterV, + in double theTrimSize); //-----------------------------------------------------------// // Primitives Construction : 3DPrimOperations // //-----------------------------------------------------------// GEOM_Object MakeBox (in double theX1, - in double theY1, - in double theZ1, - in double theX2, - in double theY2, - in double theZ2) ; - GEOM_Object MakeBoxDXDYDZ (in double theDX, - in double theDY, - in double theDZ) ; - GEOM_Object MakeBoxTwoPnt (in GEOM_Object thePnt1, - in GEOM_Object thePnt2) ; + in double theY1, + in double theZ1, + in double theX2, + in double theY2, + in double theZ2) ; + GEOM_Object MakeBoxDXDYDZ (in double theDX, + in double theDY, + in double theDZ) ; + GEOM_Object MakeBoxTwoPnt (in GEOM_Object thePnt1, + in GEOM_Object thePnt2) ; + GEOM_Object MakeFaceHW (in double theH, + in double theW, + in short theOrientation) ; + GEOM_Object MakeFaceObjHW (in GEOM_Object theObj, + in double theH, + in double theW) ; + GEOM_Object MakeDiskPntVecR (in GEOM_Object thePnt, + in GEOM_Object theVec, + in double theR) ; + GEOM_Object MakeDiskThreePnt (in GEOM_Object thePnt1, + in GEOM_Object thePnt2, + in GEOM_Object thePnt3) ; + GEOM_Object MakeDiskR (in double theR, + in short theOrientation) ; GEOM_Object MakeCylinderPntVecRH (in GEOM_Object thePnt, - in GEOM_Object theAxis, - in double theRadius, - in double theHeight) ; - GEOM_Object MakeCylinderRH (in double theR, - in double theH) ; + in GEOM_Object theAxis, + in double theRadius, + in double theHeight) ; + GEOM_Object MakeCylinderRH (in double theR, + in double theH) ; + GEOM_Object MakeCylinderPntVecRHA (in GEOM_Object thePnt, + in GEOM_Object theAxis, + in double theRadius, + in double theHeight, + in double theAngle) ; + GEOM_Object MakeCylinderRHA (in double theR, + in double theH, + in double theA) ; GEOM_Object MakeSphere (in double theX, - in double theY, - in double theZ, - in double theRadius) ; + in double theY, + in double theZ, + in double theRadius) ; GEOM_Object MakeSphereR (in double theR) ; - GEOM_Object MakeSpherePntR (in GEOM_Object thePnt, - in double theR) ; + GEOM_Object MakeSpherePntR (in GEOM_Object thePnt, + in double theR) ; GEOM_Object MakeTorusPntVecRR (in GEOM_Object thePnt, - in GEOM_Object theVec, - in double theRMajor, - in double theRMinor) ; + in GEOM_Object theVec, + in double theRMajor, + in double theRMinor) ; GEOM_Object MakeTorusRR (in double theRMajor, - in double theRMinor) ; + in double theRMinor) ; GEOM_Object MakeConePntVecR1R2H (in GEOM_Object thePnt, - in GEOM_Object theAxis, - in double theR1, - in double theR2, - in double theHeight) ; - GEOM_Object MakeConeR1R2H (in double theR1, - in double theR2, - in double theHeight) ; + in GEOM_Object theAxis, + in double theR1, + in double theR2, + in double theHeight) ; + GEOM_Object MakeConeR1R2H (in double theR1, + in double theR2, + in double theHeight) ; GEOM_Object MakePrismVecH (in GEOM_Object theBase, - in GEOM_Object theVec, - in double theH) ; + in GEOM_Object theVec, + in double theH) ; + GEOM_Object MakePrismVecH2Ways (in GEOM_Object theBase, + in GEOM_Object theVec, + in double theH) ; GEOM_Object MakePrismTwoPnt (in GEOM_Object theBase, - in GEOM_Object thePoint1, - in GEOM_Object thePoint2) ; - GEOM_Object MakePipe (in GEOM_Object theBase, - in GEOM_Object thePath) ; + in GEOM_Object thePoint1, + in GEOM_Object thePoint2) ; + GEOM_Object MakePrismTwoPnt2Ways (in GEOM_Object theBase, + in GEOM_Object thePoint1, + in GEOM_Object thePoint2) ; + GEOM_Object MakePipe (in GEOM_Object theBase, + in GEOM_Object thePath) ; GEOM_Object MakeRevolutionAxisAngle (in GEOM_Object theBase, - in GEOM_Object theAxis, - in double theAngle) ; + in GEOM_Object theAxis, + in double theAngle) ; + GEOM_Object MakeRevolutionAxisAngle2Ways (in GEOM_Object theBase, + in GEOM_Object theAxis, + in double theAngle) ; GEOM_Object MakeFilling (in GEOM_Object theShape, - in long theMinDeg, in long theMaxDeg, - in double theTol2D, in double theTol3D, - in long theNbIter) ; + in long theMinDeg, in long theMaxDeg, + in double theTol2D, in double theTol3D, + in long theNbIter, + in filling_oper_method theMethod, + in boolean theApprox) ; + GEOM_Object MakeThruSections(in ListOfGO theSeqSections, + in boolean theModeSolid, + in double thePreci, + in boolean theRuled); + + GEOM_Object MakePipeWithDifferentSections (in ListOfGO theSeqBases, + in ListOfGO theLocations, + in GEOM_Object thePath, + in boolean theWithContact , + in boolean theWithCorrection ); + + GEOM_Object MakePipeWithShellSections (in ListOfGO theSeqBases, + in ListOfGO theSeqSubBases, + in ListOfGO theLocations, + in GEOM_Object thePath, + in boolean theWithContact , + in boolean theWithCorrection ); + + GEOM_Object MakePipeShellsWithoutPath (in ListOfGO theSeqBases, + in ListOfGO theLocations ); + + GEOM_Object MakePipeBiNormalAlongVector (in GEOM_Object theBase, + in GEOM_Object thePath, + in GEOM_Object theVec); //-----------------------------------------------------------// // BooleanOperations // //-----------------------------------------------------------// GEOM_Object MakeBoolean (in GEOM_Object theShape1, - in GEOM_Object theShape2, - in long theOperation) ; + in GEOM_Object theShape2, + in long theOperation) ; GEOM_Object MakeFuse (in GEOM_Object theShape1, - in GEOM_Object theShape2) ; - GEOM_Object MakePartition (in ListOfGO theShapes, - in ListOfGO theTools, - in ListOfGO theKeepInside, - in ListOfGO theRemoveInside, - in short theLimit, - in boolean theRemoveWebs, - in ListOfLong theMaterials) ; + in GEOM_Object theShape2) ; + GEOM_Object MakeCommon (in GEOM_Object theShape1, + in GEOM_Object theShape2) ; + GEOM_Object MakeCut (in GEOM_Object theShape1, + in GEOM_Object theShape2) ; + GEOM_Object MakeSection (in GEOM_Object theShape1, + in GEOM_Object theShape2) ; + GEOM_Object MakePartition (in GEOM_List theShapes, + in GEOM_List theTools, + in GEOM_List theKeepInside, + in GEOM_List theRemoveInside, + in short theLimit, + in boolean theRemoveWebs, + in GEOM_List theMaterials, + in short theKeepNonlimitShapes); GEOM_Object MakeHalfPartition (in GEOM_Object theShape, - in GEOM_Object thePlane) ; + in GEOM_Object thePlane) ; //-----------------------------------------------------------// // InsertOperations // //-----------------------------------------------------------// GEOM_Object MakeCopy (in GEOM_Object theOriginal) ; void Export (in GEOM_Object theObject, in string theFileName, in string theFormatName) ; - GEOM_Object Import (in string theFileName, in string theFormatName) ; - void ImportTranslators (out string_array theFormats, - out string_array thePatterns) ; - void ExportTranslators (out string_array theFormats, - out string_array thePatterns) ; + GEOM_Object ImportFile (in string theFileName, in string theFormatName) ; //-----------------------------------------------------------// // TransformOperations // //-----------------------------------------------------------// GEOM_Object TranslateTwoPoints (in GEOM_Object theObject, - in GEOM_Object thePoint1, - in GEOM_Object thePoint2) ; + in GEOM_Object thePoint1, + in GEOM_Object thePoint2) ; GEOM_Object TranslateTwoPointsCopy (in GEOM_Object theObject, - in GEOM_Object thePoint1, + in GEOM_Object thePoint1, in GEOM_Object thePoint2) ; GEOM_Object TranslateDXDYDZ (in GEOM_Object theObject, - in double theDX, - in double theDY, - in double theDZ) ; + in double theDX, + in double theDY, + in double theDZ) ; GEOM_Object TranslateDXDYDZCopy (in GEOM_Object theObject, - in double theDX, - in double theDY, - in double theDZ) ; + in double theDX, + in double theDY, + in double theDZ) ; GEOM_Object TranslateVector (in GEOM_Object theObject, - in GEOM_Object theVector) ; + in GEOM_Object theVector) ; GEOM_Object TranslateVectorCopy (in GEOM_Object theObject, - in GEOM_Object theVector) ; + in GEOM_Object theVector) ; + GEOM_Object TranslateVectorDistance (in GEOM_Object theObject, + in GEOM_Object theVector, + in double theDistance, + in boolean theCopy) ; GEOM_Object MultiTranslate1D (in GEOM_Object theObject, - in GEOM_Object theVector, - in double theStep, - in long theNbTimes) ; + in GEOM_Object theVector, + in double theStep, + in long theNbTimes) ; GEOM_Object MultiTranslate2D (in GEOM_Object theObject, - in GEOM_Object theVector1, - in double theStep1, - in long theNbTimes1, - in GEOM_Object theVector2, - in double theStep2, - in long theNbTimes2) ; + in GEOM_Object theVector1, + in double theStep1, + in long theNbTimes1, + in GEOM_Object theVector2, + in double theStep2, + in long theNbTimes2) ; GEOM_Object Rotate (in GEOM_Object theObject, - in GEOM_Object theAxis, - in double theAngle) ; + in GEOM_Object theAxis, + in double theAngle) ; GEOM_Object RotateCopy (in GEOM_Object theObject, - in GEOM_Object theAxis, - in double theAngle) ; + in GEOM_Object theAxis, + in double theAngle) ; + GEOM_Object RotateThreePoints (in GEOM_Object theObject, + in GEOM_Object theCentPoint, + in GEOM_Object thePoint1, + in GEOM_Object thePoint2); + GEOM_Object RotateThreePointsCopy (in GEOM_Object theObject, + in GEOM_Object theCentPoint, + in GEOM_Object thePoint1, + in GEOM_Object thePoint2); GEOM_Object MultiRotate1D (in GEOM_Object theObject, - in GEOM_Object theAxis, - in long theNbTimes) ; + in GEOM_Object theAxis, + in long theNbTimes) ; GEOM_Object MultiRotate2D (in GEOM_Object theObject, - in GEOM_Object theAxis, - in double theAngle, - in long theNbTimes1, - in double theStep, - in long theNbTimes2) ; - GEOM_Object MirrorPlane (in GEOM_Object theObject, in GEOM_Object thePlane) ; - GEOM_Object MirrorPlaneCopy (in GEOM_Object theObject, in GEOM_Object thePlane) ; - GEOM_Object MirrorAxis (in GEOM_Object theObject, in GEOM_Object theAxis) ; - GEOM_Object MirrorAxisCopy (in GEOM_Object theObject, in GEOM_Object theAxis) ; - GEOM_Object MirrorPoint (in GEOM_Object theObject, in GEOM_Object thePoint) ; - GEOM_Object MirrorPointCopy (in GEOM_Object theObject, in GEOM_Object thePoint) ; - GEOM_Object OffsetShape (in GEOM_Object theObject, in double theOffset) ; - GEOM_Object OffsetShapeCopy (in GEOM_Object theObject, in double theOffset) ; - GEOM_Object ScaleShape (in GEOM_Object theObject, in GEOM_Object thePoint, - in double theFactor) ; - GEOM_Object ScaleShapeCopy (in GEOM_Object theObject, in GEOM_Object thePoint, - in double theFactor) ; + in GEOM_Object theAxis, + in double theAngle, + in long theNbTimes1, + in double theStep, + in long theNbTimes2) ; + GEOM_Object MirrorPlane (in GEOM_Object theObject, + in GEOM_Object thePlane) ; + GEOM_Object MirrorPlaneCopy (in GEOM_Object theObject, + in GEOM_Object thePlane) ; + GEOM_Object MirrorAxis (in GEOM_Object theObject, + in GEOM_Object theAxis) ; + GEOM_Object MirrorAxisCopy (in GEOM_Object theObject, + in GEOM_Object theAxis) ; + GEOM_Object MirrorPoint (in GEOM_Object theObject, + in GEOM_Object thePoint) ; + GEOM_Object MirrorPointCopy (in GEOM_Object theObject, + in GEOM_Object thePoint) ; + GEOM_Object OffsetShape (in GEOM_Object theObject, + in double theOffset) ; + GEOM_Object OffsetShapeCopy (in GEOM_Object theObject, + in double theOffset) ; + GEOM_Object ScaleShape (in GEOM_Object theObject, + in GEOM_Object thePoint, + in double theFactor) ; + GEOM_Object ScaleShapeCopy (in GEOM_Object theObject, + in GEOM_Object thePoint, + in double theFactor) ; + GEOM_Object ScaleShapeAlongAxes (in GEOM_Object theObject, + in GEOM_Object thePoint, + in double theFactorX, + in double theFactorY, + in double theFactorZ); + GEOM_Object ScaleShapeAlongAxesCopy (in GEOM_Object theObject, + in GEOM_Object thePoint, + in double theFactorX, + in double theFactorY, + in double theFactorZ); GEOM_Object PositionShape (in GEOM_Object theObject, - in GEOM_Object theStartLCS, - in GEOM_Object theEndLCS) ; + in GEOM_Object theStartLCS, + in GEOM_Object theEndLCS) ; GEOM_Object PositionShapeCopy (in GEOM_Object theObject, - in GEOM_Object theStartLCS, - in GEOM_Object theEndLCS) ; + in GEOM_Object theStartLCS, + in GEOM_Object theEndLCS) ; + GEOM_Object PositionAlongPath (in GEOM_Object theObject, + in GEOM_Object thePath, + in double theDistance, + in boolean theCopy, + in boolean theReverse); //-----------------------------------------------------------// // ShapesOperations // //-----------------------------------------------------------// - GEOM_Object MakeEdge (in GEOM_Object thePnt1, in GEOM_Object thePnt2) ; - GEOM_Object MakeWire (in ListOfGO theEdgesAndWires) ; - GEOM_Object MakeFace (in GEOM_Object theWire, in boolean isPlanarWanted) ; - GEOM_Object MakeFaceWires (in ListOfGO theWires, in boolean isPlanarWanted) ; - GEOM_Object MakeShell (in ListOfGO theFacesAndShells) ; + GEOM_Object MakeEdge (in GEOM_Object thePnt1, + in GEOM_Object thePnt2) ; + GEOM_Object MakeEdgeOnCurveByLength (in GEOM_Object theRefCurve, + in double theLength, + in GEOM_Object theStartPoint); + GEOM_Object MakeWire (in GEOM_List theEdgesAndWires, + in double theTolerance) ; + GEOM_Object MakeFace (in GEOM_Object theWire, + in boolean isPlanarWanted) ; + GEOM_Object MakeFaceWires (in GEOM_List theWires, + in boolean isPlanarWanted) ; + GEOM_Object MakeFaceWithConstraints(in GEOM_List theConstraints); + GEOM_Object MakeShell (in GEOM_List theFacesAndShells) ; GEOM_Object MakeSolidShell (in GEOM_Object theShell) ; - GEOM_Object MakeSolidShells (in ListOfGO theShells) ; - GEOM_Object MakeCompound (in ListOfGO theShapes) ; - GEOM_Object MakeGlueFaces (in GEOM_Object theShape, in double theTolerance) ; - ListOfGO MakeExplode (in GEOM_Object theShape, - in long theShapeType, - in boolean isSorted) ; + GEOM_Object MakeSolidShells (in GEOM_List theShells) ; + GEOM_Object MakeCompound (in GEOM_List theShapes) ; + GEOM_Object MakeSolidFromConnectedFaces (in GEOM_List theFacesOrShells, + in boolean isIntersect); + GEOM_Object MakeGlueFaces (in GEOM_Object theShape, + in double theTolerance, + in boolean doKeepNonSolids); + GEOM_List GetGlueFaces (in GEOM_Object theShape, + in double theTolerance); + GEOM_Object MakeGlueFacesByList (in GEOM_Object theShape, + in double theTolerance, + in ListOfGO theFaces, + in boolean doKeepNonSolids, + in boolean doGlueAllEdges); + GEOM_List MakeExplode (in GEOM_Object theShape, + in long theShapeType, + in boolean isSorted) ; long NumberOfFaces (in GEOM_Object theShape) ; long NumberOfEdges (in GEOM_Object theShape) ; GEOM_Object ChangeOrientation (in GEOM_Object theShape) ; + GEOM_List GetShapesOnShape (in GEOM_Object theCheckShape, + in GEOM_Object theShape, + in short theShapeType, + in shape_state theState); + GEOM_Object GetShapesOnShapeAsCompound (in GEOM_Object theCheckShape, + in GEOM_Object theShape, + in short theShapeType, + in shape_state theState); + //-----------------------------------------------------------// // BlocksOperations // //-----------------------------------------------------------// GEOM_Object MakeQuad4Vertices (in GEOM_Object thePnt1, - in GEOM_Object thePnt2, - in GEOM_Object thePnt3, - in GEOM_Object thePnt4) ; + in GEOM_Object thePnt2, + in GEOM_Object thePnt3, + in GEOM_Object thePnt4) ; GEOM_Object MakeQuad (in GEOM_Object theEdge1, - in GEOM_Object theEdge2, - in GEOM_Object theEdge3, - in GEOM_Object theEdge4) ; + in GEOM_Object theEdge2, + in GEOM_Object theEdge3, + in GEOM_Object theEdge4) ; GEOM_Object MakeQuad2Edges (in GEOM_Object theEdge1, - in GEOM_Object theEdge2) ; + in GEOM_Object theEdge2) ; GEOM_Object MakeHexa (in GEOM_Object theFace1, - in GEOM_Object theFace2, - in GEOM_Object theFace3, - in GEOM_Object theFace4, - in GEOM_Object theFace5, - in GEOM_Object theFace6) ; + in GEOM_Object theFace2, + in GEOM_Object theFace3, + in GEOM_Object theFace4, + in GEOM_Object theFace5, + in GEOM_Object theFace6) ; GEOM_Object MakeHexa2Faces (in GEOM_Object theFace1, - in GEOM_Object theFace2) ; + in GEOM_Object theFace2) ; GEOM_Object GetPoint (in GEOM_Object theShape, - in double theX, - in double theY, - in double theZ, - in double theEpsilon) ; + in double theX, + in double theY, + in double theZ, + in double theEpsilon) ; GEOM_Object GetEdge (in GEOM_Object theShape, - in GEOM_Object thePoint1, - in GEOM_Object thePoint2) ; + in GEOM_Object thePoint1, + in GEOM_Object thePoint2) ; GEOM_Object GetEdgeNearPoint (in GEOM_Object theShape, - in GEOM_Object thePoint) ; + in GEOM_Object thePoint) ; GEOM_Object GetFaceByPoints (in GEOM_Object theShape, - in GEOM_Object thePoint1, - in GEOM_Object thePoint2, - in GEOM_Object thePoint3, - in GEOM_Object thePoint4) ; + in GEOM_Object thePoint1, + in GEOM_Object thePoint2, + in GEOM_Object thePoint3, + in GEOM_Object thePoint4) ; GEOM_Object GetFaceByEdges (in GEOM_Object theShape, - in GEOM_Object theEdge1, - in GEOM_Object theEdge2) ; + in GEOM_Object theEdge1, + in GEOM_Object theEdge2) ; GEOM_Object GetOppositeFace (in GEOM_Object theBlock, - in GEOM_Object theFace) ; + in GEOM_Object theFace) ; GEOM_Object GetFaceNearPoint (in GEOM_Object theShape, - in GEOM_Object thePoint) ; + in GEOM_Object thePoint) ; GEOM_Object GetFaceByNormale (in GEOM_Object theBlock, - in GEOM_Object theVector) ; + in GEOM_Object theVector) ; boolean IsCompoundOfBlocks (in GEOM_Object theCompound, - in long theMinNbFaces, - in long theMaxNbFaces, - out long theNbBlocks) ; + in long theMinNbFaces, + in long theMaxNbFaces, + out long theNbBlocks) ; boolean CheckCompoundOfBlocks (in GEOM_Object theCompound, - out GEOM_IBlocksOperations::BCErrors theErrors) ; + out GEOM_IBlocksOperations::BCErrors theErrors) ; string PrintBCErrors (in GEOM_Object theCompound, - in GEOM_IBlocksOperations::BCErrors theErrors) ; - ListOfGO ExplodeCompoundOfBlocks (in GEOM_Object theCompound, - in long theMinNbFaces, - in long theMaxNbFaces) ; + in GEOM_IBlocksOperations::BCErrors theErrors) ; + GEOM_List ExplodeCompoundOfBlocks (in GEOM_Object theCompound, + in long theMinNbFaces, + in long theMaxNbFaces) ; GEOM_Object GetBlockNearPoint (in GEOM_Object theCompound, - in GEOM_Object thePoint) ; + in GEOM_Object thePoint) ; GEOM_Object GetBlockByParts (in GEOM_Object theCompound, - in ListOfGO theParts) ; - ListOfGO GetBlocksByParts (in GEOM_Object theCompound, - in ListOfGO theParts) ; + in GEOM_List theParts) ; + GEOM_List GetBlocksByParts (in GEOM_Object theCompound, + in GEOM_List theParts) ; GEOM_Object MakeMultiTransformation1D (in GEOM_Object theBlock, - in long theDirFace1, - in long theDirFace2, - in long theNbTimes) ; + in long theDirFace1, + in long theDirFace2, + in long theNbTimes) ; GEOM_Object MakeMultiTransformation2D (in GEOM_Object theBlock, - in long theDirFace1U, - in long theDirFace2U, - in long theNbTimesU, - in long theDirFace1V, - in long theDirFace2V, - in long theNbTimesV) ; + in long theDirFace1U, + in long theDirFace2U, + in long theNbTimesU, + in long theDirFace1V, + in long theDirFace2V, + in long theNbTimesV) ; //-----------------------------------------------------------// // CurvesOperations // //-----------------------------------------------------------// GEOM_Object MakeCirclePntVecR (in GEOM_Object thePnt, - in GEOM_Object theVec, - in double theR) ; + in GEOM_Object theVec, + in double theR) ; GEOM_Object MakeCircleThreePnt (in GEOM_Object thePnt1, - in GEOM_Object thePnt2, - in GEOM_Object thePnt3) ; + in GEOM_Object thePnt2, + in GEOM_Object thePnt3) ; + GEOM_Object MakeCircleCenter2Pnt (in GEOM_Object thePnt1, + in GEOM_Object thePnt2, + in GEOM_Object thePnt3) ; GEOM_Object MakeEllipse (in GEOM_Object thePnt, - in GEOM_Object theVec, - in double theRMajor, - in double theRMinor) ; + in GEOM_Object theVec, + in double theRMajor, + in double theRMinor) ; + GEOM_Object MakeEllipseVec (in GEOM_Object thePnt, + in GEOM_Object theVec, + in double theRMajor, + in double theRMinor, + in GEOM_Object theVecMaj) ; GEOM_Object MakeArc (in GEOM_Object thePnt1, - in GEOM_Object thePnt2, - in GEOM_Object thePnt3) ; - GEOM_Object MakePolyline (in ListOfGO thePoints) ; - GEOM_Object MakeSplineBezier (in ListOfGO thePoints) ; - GEOM_Object MakeSplineInterpolation (in ListOfGO thePoints) ; - GEOM_Object MakeSketcher (in string theCommand, in ListOfDouble theWorkingPlane) ; - + in GEOM_Object thePnt2, + in GEOM_Object thePnt3) ; + GEOM_Object MakeArcCenter (in GEOM_Object theCenter, + in GEOM_Object thePnt1, + in GEOM_Object thePnt2, + in boolean theSense) ; + GEOM_Object MakeArcOfEllipse (in GEOM_Object theCenter, + in GEOM_Object thePnt1, + in GEOM_Object thePnt2) ; + GEOM_Object MakePolyline (in GEOM_List thePoints, + in boolean theIsClosed) ; + GEOM_Object MakeSplineBezier (in GEOM_List thePoints, + in boolean theIsClosed) ; + GEOM_Object MakeSplineInterpolation (in GEOM_List thePoints, + in boolean theIsClosed, + in boolean theDoReordering) ; + GEOM_Object MakeSketcher (in string theCommand, + in GEOM_List theWorkingPlane) ; + //-----------------------------------------------------------// // LocalOperations // //-----------------------------------------------------------// GEOM_Object MakeFilletAll (in GEOM_Object theShape, - in double theR) ; + in double theR) ; GEOM_Object MakeFilletEdges (in GEOM_Object theShape, - in double theR, - in ListOfLong theEdges) ; + in double theR, + in GEOM_List theEdges) ; + GEOM_Object MakeFilletEdgesR1R2 (in GEOM_Object theShape, + in double theR1, + in double theR2, + in GEOM_List theEdges) ; GEOM_Object MakeFilletFaces (in GEOM_Object theShape, - in double theR, - in ListOfLong theFaces) ; + in double theR, + in GEOM_List theFaces) ; + GEOM_Object MakeFilletFacesR1R2 (in GEOM_Object theShape, + in double theR1, + in double theR2, + in GEOM_List theFaces) ; + GEOM_Object MakeFillet2D (in GEOM_Object theShape, + in double theR, + in GEOM_List theVertexes) ; GEOM_Object MakeChamferAll (in GEOM_Object theShape, - in double theD) ; + in double theD) ; GEOM_Object MakeChamferEdge (in GEOM_Object theShape, - in double theD1, in double theD2, - in long theFace1, in long theFace2) ; + in double theD1, in double theD2, + in long theFace1, in long theFace2) ; + GEOM_Object MakeChamferEdgeAD (in GEOM_Object theShape, + in double theD, in double theAngle, + in long theFace1, in long theFace2) ; GEOM_Object MakeChamferFaces (in GEOM_Object theShape, - in double theD1, in double theD2, - in ListOfLong theFaces) ; + in double theD1, in double theD2, + in GEOM_List theFaces) ; + GEOM_Object MakeChamferFacesAD (in GEOM_Object theShape, + in double theD, in double theAngle, + in GEOM_List theFaces) ; + GEOM_Object MakeChamferEdges (in GEOM_Object theShape, + in double theD1, in double theD2, + in GEOM_List theEdges) ; + GEOM_Object MakeChamferEdgesAD (in GEOM_Object theShape, + in double theD, in double theAngle, + in GEOM_List theEdges) ; GEOM_Object MakeArchimede (in GEOM_Object theShape, - in double theWeight, - in double theWaterDensity, - in double theMeshDeflection) ; - long GetSubShapeIndex (in GEOM_Object theShape, in GEOM_Object theSubShape) ; + in double theWeight, + in double theWaterDensity, + in double theMeshDeflection) ; + long GetSubShapeIndex (in GEOM_Object theShape, + in GEOM_Object theSubShape) ; //-----------------------------------------------------------// // GroupOperations // //-----------------------------------------------------------// - GEOM_Object CreateGroup (in GEOM_Object theMainShape, in long theShapeType) ; - void AddObject (in GEOM_Object theGroup, in long theSubShapeId) ; - void RemoveObject (in GEOM_Object theGroup, in long theSubShapeId) ; + GEOM_Object CreateGroup (in GEOM_Object theMainShape, + in long theShapeType) ; + void AddObject (in GEOM_Object theGroup, + in long theSubShapeId) ; + void RemoveObject (in GEOM_Object theGroup, + in long theSubShapeId) ; long GetType (in GEOM_Object theGroup) ; GEOM_Object GetMainShape(in GEOM_Object theGroup) ; - ListOfLong GetObjects(in GEOM_Object theGroup) ; + GEOM_List GetObjects(in GEOM_Object theGroup) ; + + //-----------------------------------------------------------// + // AdvancedOperations // + //-----------------------------------------------------------// + GEOM_List MakePipeTShape (in double theR1, in double theW1, in double theL1, + in double theR2, in double theW2, in double theL2, + in boolean theHexMesh); + + GEOM_List MakePipeTShapeWithPosition (in double theR1, in double theW1, in double theL1, + in double theR2, in double theW2, in double theL2, + in boolean theHexMesh, + in GEOM_Object theP1, in GEOM_Object theP2, in GEOM_Object theP3); + + GEOM_List MakePipeTShapeChamfer (in double theR1, in double theW1, in double theL1, + in double theR2, in double theW2, in double theL2, + in double theH, in double theW, in boolean theHexMesh); + + GEOM_List MakePipeTShapeChamferWithPosition (in double theR1, in double theW1, in double theL1, + in double theR2, in double theW2, in double theL2, + in double theH, in double theW, in boolean theHexMesh, + in GEOM_Object theP1, in GEOM_Object theP2, in GEOM_Object theP3); + + GEOM_List MakePipeTShapeFillet (in double theR1, in double theW1, in double theL1, + in double theR2, in double theW2, in double theL2, + in double theRF, in boolean theHexMesh); + + GEOM_List MakePipeTShapeFilletWithPosition (in double theR1, in double theW1, in double theL1, + in double theR2, in double theW2, in double theL2, + in double theRF, in boolean theHexMesh, + in GEOM_Object theP1, in GEOM_Object theP2, in GEOM_Object theP3); + + GEOM_Object MakeDividedDisk (in double theR, in double theRatio, in short theOrientation, + in pattern thePattern); + + GEOM_Object MakeDividedCylinder (in double theR, in double theH, + in pattern thePattern); + + GEOM_Object MakeSmoothingSurface (in GEOM_List thelPoints); + + //-----------------------------------------------------------// + // Import/Export Operations // + //-----------------------------------------------------------// + void ExportSTL( in GEOM::GEOM_Object theObject, + in string theFileName, + in boolean theIsASCII, + in double theDeflection, + in boolean theIsRelative ); + GEOM_Object ImportSTL( in string theFileName ); + + void ExportBREP( in GEOM::GEOM_Object theObject, + in string theFileName ); + GEOM_Object ImportBREP( in string theFileName ); + + void ExportSTEP( in GEOM::GEOM_Object theObject, + in string theFileName ); + GEOM_Object ImportSTEP( in string theFileName, + in boolean theIsIgnoreUnits ); + + void ExportIGES( in GEOM::GEOM_Object theObject, + in string theFileName, + in string theVersion ); + GEOM_Object ImportIGES( in string theFileName, + in boolean theIsIgnoreUnits ); + + boolean ExportXAO( in GEOM_Object shape, + in ListOfGO groups, + in ListOfFields fields, + in string author, + in string fileName, + in string shapeFileName ); + boolean ImportXAO( in string fileName, + out GEOM_Object shape, + out ListOfGO subShapes, + out ListOfGO groups, + out ListOfFields fields ); + + void ExportVTK( in GEOM::GEOM_Object theObject, + in string theFileName, + in double theDeflection ); - }; + /*@@ insert new functions before this line @@ do not remove this line @@*/ + }; }; #endif