geom/idl/GEOM_Superv.idl

688 lines
37 KiB
Plaintext
Raw Normal View History

2023-06-19 21:32:54 +05:00
// Copyright (C) 2007-2023 CEA, EDF, OPEN CASCADE
2004-12-01 15:39:14 +05:00
//
2012-08-09 13:58:02 +06:00
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
2004-12-01 15:39:14 +05:00
//
2012-08-09 13:58:02 +06:00
// 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
2014-02-18 12:44:41 +06:00
// version 2.1 of the License, or (at your option) any later version.
2009-02-13 17:16:39 +05:00
//
2012-08-09 13:58:02 +06:00
// 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.
2009-02-13 17:16:39 +05:00
//
2012-08-09 13:58:02 +06:00
// 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
2009-02-13 17:16:39 +05:00
//
2012-08-09 13:58:02 +06:00
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
2004-12-01 15:39:14 +05:00
//
// File : GEOM_Superv.idl
// Author : Lucien PIGNOLONI
2012-08-09 13:58:02 +06:00
2004-12-01 15:39:14 +05:00
#ifndef __GEOM_SUPERV__
#define __GEOM_SUPERV__
#include "GEOM_Gen.idl"
#include "AdvancedGEOM.idl"
2004-12-01 15:39:14 +05:00
module GEOM
{
2004-12-17 16:18:33 +05:00
interface GEOM_List
{ };
2012-08-09 13:58:02 +06:00
interface GEOM_Superv : Engines::EngineComponent,SALOMEDS::Driver
2004-12-01 15:39:14 +05:00
{
2004-12-17 16:18:33 +05:00
//-----------------------------------------------------------//
2012-08-09 13:58:02 +06:00
// Create ListOfGO and add items to it //
2004-12-17 16:18:33 +05:00
//-----------------------------------------------------------//
GEOM_List CreateListOfGO();
2012-08-09 13:58:02 +06:00
void AddItemToListOfGO( inout GEOM_List theList,
in GEOM_Object theObject);
2004-12-17 16:18:33 +05:00
//-----------------------------------------------------------//
2012-08-09 13:58:02 +06:00
// Create ListOfLong and add items to it //
2004-12-17 16:18:33 +05:00
//-----------------------------------------------------------//
GEOM_List CreateListOfLong();
2012-08-09 13:58:02 +06:00
void AddItemToListOfLong( inout GEOM_List theList,
in long theObject);
2004-12-17 16:18:33 +05:00
//-----------------------------------------------------------//
2012-08-09 13:58:02 +06:00
// Create ListOfDouble and add items to it //
2004-12-17 16:18:33 +05:00
//-----------------------------------------------------------//
GEOM_List CreateListOfDouble();
2012-08-09 13:58:02 +06:00
void AddItemToListOfDouble( inout GEOM_List theList,
in double theObject);
2004-12-17 16:18:33 +05:00
2004-12-01 15:39:14 +05:00
//-----------------------------------------------------------//
2012-08-09 13:58:02 +06:00
// Primitives Construction : BasicOperations //
2004-12-01 15:39:14 +05:00
//-----------------------------------------------------------//
GEOM_Object MakePointXYZ (in double theX,
2012-08-09 13:58:02 +06:00
in double theY,
in double theZ);
2004-12-01 15:39:14 +05:00
GEOM_Object MakePointWithReference (in GEOM_Object theReference,
2012-08-09 13:58:02 +06:00
in double theX,
in double theY,
in double theZ);
2004-12-01 15:39:14 +05:00
GEOM_Object MakePointOnCurve (in GEOM_Object theRefCurve,
2012-08-09 13:58:02 +06:00
in double theParameter);
GEOM_Object MakePointOnCurveByLength (in GEOM_Object theRefCurve,
in double theLength,
in GEOM_Object theStartPoint);
GEOM_Object MakeTangentOnCurve (in GEOM_Object theRefCurve,
2012-08-09 13:58:02 +06:00
in double theParameter);
2004-12-01 15:39:14 +05:00
GEOM_Object MakeVectorDXDYDZ (in double theDX,
2012-08-09 13:58:02 +06:00
in double theDY,
in double theDZ) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MakeVectorTwoPnt (in GEOM_Object thePnt1,
2012-08-09 13:58:02 +06:00
in GEOM_Object thePnt2) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MakeLineTwoPnt (in GEOM_Object thePnt1,
2012-08-09 13:58:02 +06:00
in GEOM_Object thePnt2) ;
GEOM_Object MakeLineTwoFaces (in GEOM_Object theFace1,
2012-08-09 13:58:02 +06:00
in GEOM_Object theFace2) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MakePlaneThreePnt (in GEOM_Object thePnt1,
2012-08-09 13:58:02 +06:00
in GEOM_Object thePnt2,
in GEOM_Object thePnt3,
in double theTrimSize) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MakePlanePntVec (in GEOM_Object thePnt,
2012-08-09 13:58:02 +06:00
in GEOM_Object theVec,
in double theTrimSize) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MakePlaneFace (in GEOM_Object theFace,
2012-08-09 13:58:02 +06:00
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) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MakeMarker (in double theOX , in double theOY , in double theOZ,
2012-08-09 13:58:02 +06:00
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) ;
2004-12-01 15:39:14 +05:00
/*!
* Create a tangent plane to specified face in the point with specified parameters.
* Values of parameters should be between 0. and 1.0
2012-08-09 13:58:02 +06:00
* \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,
2012-08-09 13:58:02 +06:00
in double theParameterU,
in double theParameterV,
in double theTrimSize);
2004-12-01 15:39:14 +05:00
//-----------------------------------------------------------//
// Primitives Construction : 3DPrimOperations //
//-----------------------------------------------------------//
GEOM_Object MakeBox (in double theX1,
2012-08-09 13:58:02 +06:00
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) ;
2009-02-13 17:16:39 +05:00
GEOM_Object MakeDiskPntVecR (in GEOM_Object thePnt,
2012-08-09 13:58:02 +06:00
in GEOM_Object theVec,
in double theR) ;
2009-02-13 17:16:39 +05:00
GEOM_Object MakeDiskThreePnt (in GEOM_Object thePnt1,
2012-08-09 13:58:02 +06:00
in GEOM_Object thePnt2,
in GEOM_Object thePnt3) ;
GEOM_Object MakeDiskR (in double theR,
in short theOrientation) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MakeCylinderPntVecRH (in GEOM_Object thePnt,
2012-08-09 13:58:02 +06:00
in GEOM_Object theAxis,
in double theRadius,
in double theHeight) ;
2012-08-09 13:58:02 +06:00
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) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MakeSphere (in double theX,
2012-08-09 13:58:02 +06:00
in double theY,
in double theZ,
in double theRadius) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MakeSphereR (in double theR) ;
2012-08-09 13:58:02 +06:00
GEOM_Object MakeSpherePntR (in GEOM_Object thePnt,
in double theR) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MakeTorusPntVecRR (in GEOM_Object thePnt,
2012-08-09 13:58:02 +06:00
in GEOM_Object theVec,
in double theRMajor,
in double theRMinor) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MakeTorusRR (in double theRMajor,
2012-08-09 13:58:02 +06:00
in double theRMinor) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MakeConePntVecR1R2H (in GEOM_Object thePnt,
2012-08-09 13:58:02 +06:00
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) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MakePrismVecH (in GEOM_Object theBase,
2012-08-09 13:58:02 +06:00
in GEOM_Object theVec,
in double theH) ;
GEOM_Object MakePrismVecH2Ways (in GEOM_Object theBase,
2012-08-09 13:58:02 +06:00
in GEOM_Object theVec,
in double theH) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MakePrismTwoPnt (in GEOM_Object theBase,
2012-08-09 13:58:02 +06:00
in GEOM_Object thePoint1,
in GEOM_Object thePoint2) ;
GEOM_Object MakePrismTwoPnt2Ways (in GEOM_Object theBase,
2012-08-09 13:58:02 +06:00
in GEOM_Object thePoint1,
in GEOM_Object thePoint2) ;
GEOM_Object MakePipe (in GEOM_Object theBase,
in GEOM_Object thePath) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MakeRevolutionAxisAngle (in GEOM_Object theBase,
2012-08-09 13:58:02 +06:00
in GEOM_Object theAxis,
in double theAngle) ;
GEOM_Object MakeRevolutionAxisAngle2Ways (in GEOM_Object theBase,
2012-08-09 13:58:02 +06:00
in GEOM_Object theAxis,
in double theAngle) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MakeFilling (in GEOM_Object theShape,
2012-08-09 13:58:02 +06:00
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,
2012-08-09 13:58:02 +06:00
in boolean theModeSolid,
in double thePreci,
in boolean theRuled);
2004-12-01 15:39:14 +05:00
GEOM_Object MakePipeWithDifferentSections (in ListOfGO theSeqBases,
2012-08-09 13:58:02 +06:00
in ListOfGO theLocations,
in GEOM_Object thePath,
in boolean theWithContact ,
in boolean theWithCorrection );
GEOM_Object MakePipeWithShellSections (in ListOfGO theSeqBases,
2012-08-09 13:58:02 +06:00
in ListOfGO theSeqSubBases,
in ListOfGO theLocations,
in GEOM_Object thePath,
in boolean theWithContact ,
in boolean theWithCorrection );
GEOM_Object MakePipeShellsWithoutPath (in ListOfGO theSeqBases,
2012-08-09 13:58:02 +06:00
in ListOfGO theLocations );
2012-08-09 13:58:02 +06:00
GEOM_Object MakePipeBiNormalAlongVector (in GEOM_Object theBase,
in GEOM_Object thePath,
in GEOM_Object theVec);
2009-02-13 17:16:39 +05:00
2004-12-01 15:39:14 +05:00
//-----------------------------------------------------------//
// BooleanOperations //
//-----------------------------------------------------------//
GEOM_Object MakeBoolean (in GEOM_Object theShape1,
2012-08-09 13:58:02 +06:00
in GEOM_Object theShape2,
in long theOperation) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MakeFuse (in GEOM_Object theShape1,
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) ;
2004-12-17 16:18:33 +05:00
GEOM_Object MakePartition (in GEOM_List theShapes,
2012-08-09 13:58:02 +06:00
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);
2004-12-01 15:39:14 +05:00
GEOM_Object MakeHalfPartition (in GEOM_Object theShape,
2012-08-09 13:58:02 +06:00
in GEOM_Object thePlane) ;
2004-12-01 15:39:14 +05:00
//-----------------------------------------------------------//
// InsertOperations //
//-----------------------------------------------------------//
GEOM_Object MakeCopy (in GEOM_Object theOriginal) ;
void Export (in GEOM_Object theObject, in string theFileName, in string theFormatName) ;
2012-08-09 13:58:02 +06:00
GEOM_Object ImportFile (in string theFileName, in string theFormatName) ;
2004-12-01 15:39:14 +05:00
//-----------------------------------------------------------//
// TransformOperations //
//-----------------------------------------------------------//
GEOM_Object TranslateTwoPoints (in GEOM_Object theObject,
2012-08-09 13:58:02 +06:00
in GEOM_Object thePoint1,
in GEOM_Object thePoint2) ;
2004-12-01 15:39:14 +05:00
GEOM_Object TranslateTwoPointsCopy (in GEOM_Object theObject,
2012-08-09 13:58:02 +06:00
in GEOM_Object thePoint1,
2004-12-01 15:39:14 +05:00
in GEOM_Object thePoint2) ;
GEOM_Object TranslateDXDYDZ (in GEOM_Object theObject,
2012-08-09 13:58:02 +06:00
in double theDX,
in double theDY,
in double theDZ) ;
2004-12-01 15:39:14 +05:00
GEOM_Object TranslateDXDYDZCopy (in GEOM_Object theObject,
2012-08-09 13:58:02 +06:00
in double theDX,
in double theDY,
in double theDZ) ;
2004-12-01 15:39:14 +05:00
GEOM_Object TranslateVector (in GEOM_Object theObject,
2012-08-09 13:58:02 +06:00
in GEOM_Object theVector) ;
2004-12-01 15:39:14 +05:00
GEOM_Object TranslateVectorCopy (in GEOM_Object theObject,
2012-08-09 13:58:02 +06:00
in GEOM_Object theVector) ;
2009-02-13 17:16:39 +05:00
GEOM_Object TranslateVectorDistance (in GEOM_Object theObject,
2012-08-09 13:58:02 +06:00
in GEOM_Object theVector,
in double theDistance,
in boolean theCopy) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MultiTranslate1D (in GEOM_Object theObject,
2012-08-09 13:58:02 +06:00
in GEOM_Object theVector,
in double theStep,
in long theNbTimes) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MultiTranslate2D (in GEOM_Object theObject,
2012-08-09 13:58:02 +06:00
in GEOM_Object theVector1,
in double theStep1,
in long theNbTimes1,
in GEOM_Object theVector2,
in double theStep2,
in long theNbTimes2) ;
2004-12-01 15:39:14 +05:00
GEOM_Object Rotate (in GEOM_Object theObject,
2012-08-09 13:58:02 +06:00
in GEOM_Object theAxis,
in double theAngle) ;
2004-12-01 15:39:14 +05:00
GEOM_Object RotateCopy (in GEOM_Object theObject,
2012-08-09 13:58:02 +06:00
in GEOM_Object theAxis,
in double theAngle) ;
GEOM_Object RotateThreePoints (in GEOM_Object theObject,
2012-08-09 13:58:02 +06:00
in GEOM_Object theCentPoint,
in GEOM_Object thePoint1,
in GEOM_Object thePoint2);
GEOM_Object RotateThreePointsCopy (in GEOM_Object theObject,
2012-08-09 13:58:02 +06:00
in GEOM_Object theCentPoint,
in GEOM_Object thePoint1,
in GEOM_Object thePoint2);
2004-12-01 15:39:14 +05:00
GEOM_Object MultiRotate1D (in GEOM_Object theObject,
2012-08-09 13:58:02 +06:00
in GEOM_Object theAxis,
in long theNbTimes) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MultiRotate2D (in GEOM_Object theObject,
2012-08-09 13:58:02 +06:00
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) ;
2009-02-13 17:16:39 +05:00
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);
2004-12-01 15:39:14 +05:00
GEOM_Object PositionShape (in GEOM_Object theObject,
2012-08-09 13:58:02 +06:00
in GEOM_Object theStartLCS,
in GEOM_Object theEndLCS) ;
2004-12-01 15:39:14 +05:00
GEOM_Object PositionShapeCopy (in GEOM_Object theObject,
2012-08-09 13:58:02 +06:00
in GEOM_Object theStartLCS,
in GEOM_Object theEndLCS) ;
2009-02-13 17:16:39 +05:00
GEOM_Object PositionAlongPath (in GEOM_Object theObject,
2012-08-09 13:58:02 +06:00
in GEOM_Object thePath,
in double theDistance,
in boolean theCopy,
in boolean theReverse);
2004-12-01 15:39:14 +05:00
//-----------------------------------------------------------//
// ShapesOperations //
//-----------------------------------------------------------//
2012-08-09 13:58:02 +06:00
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);
2004-12-17 16:18:33 +05:00
GEOM_Object MakeShell (in GEOM_List theFacesAndShells) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MakeSolidShell (in GEOM_Object theShell) ;
2004-12-17 16:18:33 +05:00
GEOM_Object MakeSolidShells (in GEOM_List theShells) ;
GEOM_Object MakeCompound (in GEOM_List theShapes) ;
GEOM_Object MakeSolidFromConnectedFaces (in GEOM_List theFacesOrShells,
in boolean isIntersect);
2012-08-09 13:58:02 +06:00
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);
2004-12-17 16:18:33 +05:00
GEOM_List MakeExplode (in GEOM_Object theShape,
2012-08-09 13:58:02 +06:00
in long theShapeType,
in boolean isSorted) ;
2004-12-01 15:39:14 +05:00
long NumberOfFaces (in GEOM_Object theShape) ;
long NumberOfEdges (in GEOM_Object theShape) ;
GEOM_Object ChangeOrientation (in GEOM_Object theShape) ;
2009-02-13 17:16:39 +05:00
GEOM_List GetShapesOnShape (in GEOM_Object theCheckShape,
2012-08-09 13:58:02 +06:00
in GEOM_Object theShape,
in short theShapeType,
in shape_state theState);
2009-02-13 17:16:39 +05:00
GEOM_Object GetShapesOnShapeAsCompound (in GEOM_Object theCheckShape,
2012-08-09 13:58:02 +06:00
in GEOM_Object theShape,
in short theShapeType,
in shape_state theState);
2009-02-13 17:16:39 +05:00
2004-12-01 15:39:14 +05:00
//-----------------------------------------------------------//
// BlocksOperations //
//-----------------------------------------------------------//
GEOM_Object MakeQuad4Vertices (in GEOM_Object thePnt1,
2012-08-09 13:58:02 +06:00
in GEOM_Object thePnt2,
in GEOM_Object thePnt3,
in GEOM_Object thePnt4) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MakeQuad (in GEOM_Object theEdge1,
2012-08-09 13:58:02 +06:00
in GEOM_Object theEdge2,
in GEOM_Object theEdge3,
in GEOM_Object theEdge4) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MakeQuad2Edges (in GEOM_Object theEdge1,
2012-08-09 13:58:02 +06:00
in GEOM_Object theEdge2) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MakeHexa (in GEOM_Object theFace1,
2012-08-09 13:58:02 +06:00
in GEOM_Object theFace2,
in GEOM_Object theFace3,
in GEOM_Object theFace4,
in GEOM_Object theFace5,
in GEOM_Object theFace6) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MakeHexa2Faces (in GEOM_Object theFace1,
2012-08-09 13:58:02 +06:00
in GEOM_Object theFace2) ;
2004-12-01 15:39:14 +05:00
GEOM_Object GetPoint (in GEOM_Object theShape,
2012-08-09 13:58:02 +06:00
in double theX,
in double theY,
in double theZ,
in double theEpsilon) ;
2004-12-01 15:39:14 +05:00
GEOM_Object GetEdge (in GEOM_Object theShape,
2012-08-09 13:58:02 +06:00
in GEOM_Object thePoint1,
in GEOM_Object thePoint2) ;
2004-12-01 15:39:14 +05:00
GEOM_Object GetEdgeNearPoint (in GEOM_Object theShape,
2012-08-09 13:58:02 +06:00
in GEOM_Object thePoint) ;
2004-12-01 15:39:14 +05:00
GEOM_Object GetFaceByPoints (in GEOM_Object theShape,
2012-08-09 13:58:02 +06:00
in GEOM_Object thePoint1,
in GEOM_Object thePoint2,
in GEOM_Object thePoint3,
in GEOM_Object thePoint4) ;
2004-12-01 15:39:14 +05:00
GEOM_Object GetFaceByEdges (in GEOM_Object theShape,
2012-08-09 13:58:02 +06:00
in GEOM_Object theEdge1,
in GEOM_Object theEdge2) ;
2004-12-01 15:39:14 +05:00
GEOM_Object GetOppositeFace (in GEOM_Object theBlock,
2012-08-09 13:58:02 +06:00
in GEOM_Object theFace) ;
2004-12-01 15:39:14 +05:00
GEOM_Object GetFaceNearPoint (in GEOM_Object theShape,
2012-08-09 13:58:02 +06:00
in GEOM_Object thePoint) ;
2004-12-01 15:39:14 +05:00
GEOM_Object GetFaceByNormale (in GEOM_Object theBlock,
2012-08-09 13:58:02 +06:00
in GEOM_Object theVector) ;
2004-12-01 15:39:14 +05:00
boolean IsCompoundOfBlocks (in GEOM_Object theCompound,
2012-08-09 13:58:02 +06:00
in long theMinNbFaces,
in long theMaxNbFaces,
out long theNbBlocks) ;
2004-12-01 15:39:14 +05:00
boolean CheckCompoundOfBlocks (in GEOM_Object theCompound,
2012-08-09 13:58:02 +06:00
out GEOM_IBlocksOperations::BCErrors theErrors) ;
2004-12-01 15:39:14 +05:00
string PrintBCErrors (in GEOM_Object theCompound,
2012-08-09 13:58:02 +06:00
in GEOM_IBlocksOperations::BCErrors theErrors) ;
2004-12-17 16:18:33 +05:00
GEOM_List ExplodeCompoundOfBlocks (in GEOM_Object theCompound,
2012-08-09 13:58:02 +06:00
in long theMinNbFaces,
in long theMaxNbFaces) ;
2004-12-01 15:39:14 +05:00
GEOM_Object GetBlockNearPoint (in GEOM_Object theCompound,
2012-08-09 13:58:02 +06:00
in GEOM_Object thePoint) ;
2004-12-01 15:39:14 +05:00
GEOM_Object GetBlockByParts (in GEOM_Object theCompound,
2012-08-09 13:58:02 +06:00
in GEOM_List theParts) ;
2004-12-17 16:18:33 +05:00
GEOM_List GetBlocksByParts (in GEOM_Object theCompound,
2012-08-09 13:58:02 +06:00
in GEOM_List theParts) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MakeMultiTransformation1D (in GEOM_Object theBlock,
2012-08-09 13:58:02 +06:00
in long theDirFace1,
in long theDirFace2,
in long theNbTimes) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MakeMultiTransformation2D (in GEOM_Object theBlock,
2012-08-09 13:58:02 +06:00
in long theDirFace1U,
in long theDirFace2U,
in long theNbTimesU,
in long theDirFace1V,
in long theDirFace2V,
in long theNbTimesV) ;
2004-12-01 15:39:14 +05:00
//-----------------------------------------------------------//
// CurvesOperations //
//-----------------------------------------------------------//
GEOM_Object MakeCirclePntVecR (in GEOM_Object thePnt,
2012-08-09 13:58:02 +06:00
in GEOM_Object theVec,
in double theR) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MakeCircleThreePnt (in GEOM_Object thePnt1,
2012-08-09 13:58:02 +06:00
in GEOM_Object thePnt2,
in GEOM_Object thePnt3) ;
GEOM_Object MakeCircleCenter2Pnt (in GEOM_Object thePnt1,
2012-08-09 13:58:02 +06:00
in GEOM_Object thePnt2,
in GEOM_Object thePnt3) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MakeEllipse (in GEOM_Object thePnt,
2012-08-09 13:58:02 +06:00
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) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MakeArc (in GEOM_Object thePnt1,
2012-08-09 13:58:02 +06:00
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) ;
2009-02-13 17:16:39 +05:00
GEOM_Object MakeArcOfEllipse (in GEOM_Object theCenter,
2012-08-09 13:58:02 +06:00
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) ;
2004-12-01 15:39:14 +05:00
//-----------------------------------------------------------//
// LocalOperations //
//-----------------------------------------------------------//
GEOM_Object MakeFilletAll (in GEOM_Object theShape,
2012-08-09 13:58:02 +06:00
in double theR) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MakeFilletEdges (in GEOM_Object theShape,
2012-08-09 13:58:02 +06:00
in double theR,
in GEOM_List theEdges) ;
GEOM_Object MakeFilletEdgesR1R2 (in GEOM_Object theShape,
2012-08-09 13:58:02 +06:00
in double theR1,
in double theR2,
in GEOM_List theEdges) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MakeFilletFaces (in GEOM_Object theShape,
2012-08-09 13:58:02 +06:00
in double theR,
in GEOM_List theFaces) ;
GEOM_Object MakeFilletFacesR1R2 (in GEOM_Object theShape,
2012-08-09 13:58:02 +06:00
in double theR1,
in double theR2,
in GEOM_List theFaces) ;
2009-02-13 17:16:39 +05:00
GEOM_Object MakeFillet2D (in GEOM_Object theShape,
2012-08-09 13:58:02 +06:00
in double theR,
in GEOM_List theVertexes) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MakeChamferAll (in GEOM_Object theShape,
2012-08-09 13:58:02 +06:00
in double theD) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MakeChamferEdge (in GEOM_Object theShape,
2012-08-09 13:58:02 +06:00
in double theD1, in double theD2,
in long theFace1, in long theFace2) ;
GEOM_Object MakeChamferEdgeAD (in GEOM_Object theShape,
2012-08-09 13:58:02 +06:00
in double theD, in double theAngle,
in long theFace1, in long theFace2) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MakeChamferFaces (in GEOM_Object theShape,
2012-08-09 13:58:02 +06:00
in double theD1, in double theD2,
in GEOM_List theFaces) ;
GEOM_Object MakeChamferFacesAD (in GEOM_Object theShape,
2012-08-09 13:58:02 +06:00
in double theD, in double theAngle,
in GEOM_List theFaces) ;
GEOM_Object MakeChamferEdges (in GEOM_Object theShape,
2012-08-09 13:58:02 +06:00
in double theD1, in double theD2,
in GEOM_List theEdges) ;
GEOM_Object MakeChamferEdgesAD (in GEOM_Object theShape,
2012-08-09 13:58:02 +06:00
in double theD, in double theAngle,
in GEOM_List theEdges) ;
2004-12-01 15:39:14 +05:00
GEOM_Object MakeArchimede (in GEOM_Object theShape,
2012-08-09 13:58:02 +06:00
in double theWeight,
in double theWaterDensity,
in double theMeshDeflection) ;
long GetSubShapeIndex (in GEOM_Object theShape,
in GEOM_Object theSubShape) ;
2004-12-01 15:39:14 +05:00
//-----------------------------------------------------------//
// GroupOperations //
//-----------------------------------------------------------//
2012-08-09 13:58:02 +06:00
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) ;
2004-12-01 15:39:14 +05:00
long GetType (in GEOM_Object theGroup) ;
GEOM_Object GetMainShape(in GEOM_Object theGroup) ;
2004-12-17 16:18:33 +05:00
GEOM_List GetObjects(in GEOM_Object theGroup) ;
2004-12-01 15:39:14 +05:00
2012-08-09 13:58:02 +06:00
//-----------------------------------------------------------//
// 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 );
//-----------------------------------------------------------//
// Measure Operations //
//-----------------------------------------------------------//
GEOM_List PatchFace(in GEOM_Object theShape);
2012-08-09 13:58:02 +06:00
/*@@ insert new functions before this line @@ do not remove this line @@*/
};
2004-12-01 15:39:14 +05:00
};
#endif