mirror of
https://git.salome-platform.org/gitpub/modules/geom.git
synced 2024-12-28 02:10:36 +05:00
687 lines
37 KiB
Plaintext
687 lines
37 KiB
Plaintext
// 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
|
|
|
|
#ifndef __GEOM_SUPERV__
|
|
#define __GEOM_SUPERV__
|
|
|
|
#include "GEOM_Gen.idl"
|
|
#include "AdvancedGEOM.idl"
|
|
|
|
module GEOM
|
|
{
|
|
interface GEOM_List
|
|
{ };
|
|
|
|
interface GEOM_Superv : Engines::EngineComponent,SALOMEDS::Driver
|
|
{
|
|
//-----------------------------------------------------------//
|
|
// 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 //
|
|
//-----------------------------------------------------------//
|
|
GEOM_Object MakePointXYZ (in double theX,
|
|
in double theY,
|
|
in double theZ);
|
|
GEOM_Object MakePointWithReference (in GEOM_Object theReference,
|
|
in double theX,
|
|
in double theY,
|
|
in double theZ);
|
|
GEOM_Object MakePointOnCurve (in GEOM_Object theRefCurve,
|
|
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) ;
|
|
GEOM_Object MakeVectorTwoPnt (in GEOM_Object thePnt1,
|
|
in GEOM_Object thePnt2) ;
|
|
GEOM_Object MakeLineTwoPnt (in GEOM_Object thePnt1,
|
|
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) ;
|
|
GEOM_Object MakePlanePntVec (in GEOM_Object thePnt,
|
|
in GEOM_Object theVec,
|
|
in double theTrimSize) ;
|
|
GEOM_Object MakePlaneFace (in GEOM_Object theFace,
|
|
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) ;
|
|
|
|
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) ;
|
|
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) ;
|
|
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) ;
|
|
GEOM_Object MakeSphereR (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) ;
|
|
GEOM_Object MakeTorusRR (in double theRMajor,
|
|
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) ;
|
|
GEOM_Object MakePrismVecH (in GEOM_Object theBase,
|
|
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 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) ;
|
|
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 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) ;
|
|
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) ;
|
|
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) ;
|
|
|
|
//-----------------------------------------------------------//
|
|
// InsertOperations //
|
|
//-----------------------------------------------------------//
|
|
GEOM_Object MakeCopy (in GEOM_Object theOriginal) ;
|
|
void Export (in GEOM_Object theObject, in string theFileName, in string theFormatName) ;
|
|
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) ;
|
|
GEOM_Object TranslateTwoPointsCopy (in GEOM_Object theObject,
|
|
in GEOM_Object thePoint1,
|
|
in GEOM_Object thePoint2) ;
|
|
GEOM_Object TranslateDXDYDZ (in GEOM_Object theObject,
|
|
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) ;
|
|
GEOM_Object TranslateVector (in GEOM_Object theObject,
|
|
in GEOM_Object theVector) ;
|
|
GEOM_Object TranslateVectorCopy (in GEOM_Object theObject,
|
|
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) ;
|
|
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) ;
|
|
GEOM_Object Rotate (in GEOM_Object theObject,
|
|
in GEOM_Object theAxis,
|
|
in double theAngle) ;
|
|
GEOM_Object RotateCopy (in GEOM_Object theObject,
|
|
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) ;
|
|
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) ;
|
|
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) ;
|
|
GEOM_Object PositionShapeCopy (in GEOM_Object theObject,
|
|
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 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 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) ;
|
|
GEOM_Object MakeQuad (in GEOM_Object theEdge1,
|
|
in GEOM_Object theEdge2,
|
|
in GEOM_Object theEdge3,
|
|
in GEOM_Object theEdge4) ;
|
|
GEOM_Object MakeQuad2Edges (in GEOM_Object theEdge1,
|
|
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) ;
|
|
GEOM_Object MakeHexa2Faces (in GEOM_Object theFace1,
|
|
in GEOM_Object theFace2) ;
|
|
GEOM_Object GetPoint (in GEOM_Object theShape,
|
|
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) ;
|
|
GEOM_Object GetEdgeNearPoint (in GEOM_Object theShape,
|
|
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) ;
|
|
GEOM_Object GetFaceByEdges (in GEOM_Object theShape,
|
|
in GEOM_Object theEdge1,
|
|
in GEOM_Object theEdge2) ;
|
|
GEOM_Object GetOppositeFace (in GEOM_Object theBlock,
|
|
in GEOM_Object theFace) ;
|
|
GEOM_Object GetFaceNearPoint (in GEOM_Object theShape,
|
|
in GEOM_Object thePoint) ;
|
|
GEOM_Object GetFaceByNormale (in GEOM_Object theBlock,
|
|
in GEOM_Object theVector) ;
|
|
boolean IsCompoundOfBlocks (in GEOM_Object theCompound,
|
|
in long theMinNbFaces,
|
|
in long theMaxNbFaces,
|
|
out long theNbBlocks) ;
|
|
boolean CheckCompoundOfBlocks (in GEOM_Object theCompound,
|
|
out GEOM_IBlocksOperations::BCErrors theErrors) ;
|
|
string PrintBCErrors (in GEOM_Object theCompound,
|
|
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) ;
|
|
GEOM_Object GetBlockByParts (in GEOM_Object theCompound,
|
|
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) ;
|
|
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) ;
|
|
|
|
//-----------------------------------------------------------//
|
|
// CurvesOperations //
|
|
//-----------------------------------------------------------//
|
|
GEOM_Object MakeCirclePntVecR (in GEOM_Object thePnt,
|
|
in GEOM_Object theVec,
|
|
in double theR) ;
|
|
GEOM_Object MakeCircleThreePnt (in GEOM_Object thePnt1,
|
|
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) ;
|
|
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 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) ;
|
|
GEOM_Object MakeFilletEdges (in GEOM_Object theShape,
|
|
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 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) ;
|
|
GEOM_Object MakeChamferEdge (in GEOM_Object theShape,
|
|
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 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) ;
|
|
|
|
//-----------------------------------------------------------//
|
|
// 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) ;
|
|
long GetType (in GEOM_Object theGroup) ;
|
|
GEOM_Object GetMainShape(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 );
|
|
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
|