Version: 6.3.1

src/GEOM_I_Superv/GEOM_Superv_i.hh

Go to the documentation of this file.
00001 // Copyright (C) 2007-2011  CEA/DEN, EDF R&D, OPEN CASCADE
00002 //
00003 // Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
00004 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
00005 //
00006 // This library is free software; you can redistribute it and/or
00007 // modify it under the terms of the GNU Lesser General Public
00008 // License as published by the Free Software Foundation; either
00009 // version 2.1 of the License.
00010 //
00011 // This library is distributed in the hope that it will be useful,
00012 // but WITHOUT ANY WARRANTY; without even the implied warranty of
00013 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00014 // Lesser General Public License for more details.
00015 //
00016 // You should have received a copy of the GNU Lesser General Public
00017 // License along with this library; if not, write to the Free Software
00018 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
00019 //
00020 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
00021 //
00022 
00023 #ifndef __GEOM_SUPERV_I_H__
00024 #define __GEOM_SUPERV_I_H__
00025 
00026 // IDL headers
00027 #include <SALOMEconfig.h>
00028 #include CORBA_SERVER_HEADER(GEOM_Superv)
00029 
00030 #include "GEOM_Gen_i.hh"
00031 #include "GEOM_List_i.hh"
00032 
00033 class GEOM_Superv_i : public virtual POA_GEOM::GEOM_Superv,
00034                       public Engines_Component_i
00035 {
00036 public:
00037   GEOM_Superv_i(CORBA::ORB_ptr orb,
00038                 PortableServer::POA_ptr poa,
00039                 PortableServer::ObjectId * contId,
00040                 const char *instanceName,
00041                 const char *interfaceName);
00042   ~GEOM_Superv_i();
00043 
00044   // generic method to be put in a super class
00045   void register_name(char * name);
00046   void setGeomEngine();
00047 
00048   void getBasicOp();
00049   void get3DPrimOp();
00050   void getBoolOp();
00051   void getInsOp();
00052   void getTransfOp();
00053   void getShapesOp();
00054   void getBlocksOp();
00055   void getCurvesOp();
00056   void getLocalOp();
00057   void getGroupOp();
00058   void getAdvancedOp();
00059 
00060   PortableServer::ServantBase_var GetServant(CORBA::Object_ptr       theObject,
00061                                              PortableServer::POA_ptr thePOA);
00062 
00063   //-----------------------------------------------------------------------//
00064   // Set current stydy ID                                                  //
00065   //-----------------------------------------------------------------------//
00066   void SetStudyID( CORBA::Long theId );
00067 
00068   //-----------------------------------------------------------//
00069   // Create ListOfGO and add items to it                       //
00070   //-----------------------------------------------------------//
00071   GEOM::GEOM_List_ptr CreateListOfGO();
00072   void AddItemToListOfGO(GEOM::GEOM_List_ptr& theList,
00073                          GEOM::GEOM_Object_ptr theObject);
00074 
00075   //-----------------------------------------------------------//
00076   // Create ListOfLong and add items to it                     //
00077   //-----------------------------------------------------------//
00078   GEOM::GEOM_List_ptr CreateListOfLong();
00079   void AddItemToListOfLong(GEOM::GEOM_List_ptr& theList,
00080                            CORBA::Long theObject);
00081 
00082   //-----------------------------------------------------------//
00083   // Create ListOfDouble and add items to it                   //
00084   //-----------------------------------------------------------//
00085   GEOM::GEOM_List_ptr CreateListOfDouble();
00086   void AddItemToListOfDouble(GEOM::GEOM_List_ptr& theList,
00087                              CORBA::Double theObject);
00088 
00089   //-----------------------------------------------------------------------//
00090   // Inherited methods from SALOMEDS::Driver                               //
00091   //-----------------------------------------------------------------------//
00092 
00093   SALOMEDS::TMPFile* Save(SALOMEDS::SComponent_ptr theComponent,
00094                           const char* theURL,
00095                           CORBA::Boolean isMultiFile);
00096 
00097   SALOMEDS::TMPFile* SaveASCII(SALOMEDS::SComponent_ptr theComponent,
00098                                const char* theURL,
00099                                CORBA::Boolean isMultiFile);
00100 
00101   CORBA::Boolean Load(SALOMEDS::SComponent_ptr theComponent,
00102                       const SALOMEDS::TMPFile& theStream,
00103                       const char* theURL,
00104                       CORBA::Boolean isMultiFile);
00105 
00106   CORBA::Boolean LoadASCII(SALOMEDS::SComponent_ptr theComponent,
00107                            const SALOMEDS::TMPFile& theStream,
00108                            const char* theURL,
00109                            CORBA::Boolean isMultiFile);
00110 
00111   void Close(SALOMEDS::SComponent_ptr theComponent);
00112   char* ComponentDataType();
00113 
00114 
00115   char* IORToLocalPersistentID(SALOMEDS::SObject_ptr theSObject,
00116                                const char* IORString,
00117                                CORBA::Boolean isMultiFile,
00118                                CORBA::Boolean isASCII);
00119   char* LocalPersistentIDToIOR(SALOMEDS::SObject_ptr theSObject,
00120                                const char* aLocalPersistentID,
00121                                CORBA::Boolean isMultiFile,
00122                                CORBA::Boolean isASCII);
00123 
00124   CORBA::Boolean CanPublishInStudy(CORBA::Object_ptr theIOR);
00125   SALOMEDS::SObject_ptr PublishInStudy(SALOMEDS::Study_ptr theStudy,
00126                                        SALOMEDS::SObject_ptr theSObject,
00127                                        CORBA::Object_ptr theObject,
00128                                        const char* theName) throw (SALOME::SALOME_Exception) ;
00129 
00130   GEOM::ListOfGO* PublishNamedShapesInStudy(SALOMEDS::Study_ptr theStudy,
00131                                             //SALOMEDS::SObject_ptr theSObject,
00132                                             CORBA::Object_ptr theObject);
00133 
00134   CORBA::Boolean CanCopy(SALOMEDS::SObject_ptr theObject);
00135   SALOMEDS::TMPFile* CopyFrom(SALOMEDS::SObject_ptr theObject, CORBA::Long& theObjectID);
00136   CORBA::Boolean CanPaste(const char* theComponentName, CORBA::Long theObjectID);
00137   SALOMEDS::SObject_ptr PasteInto(const SALOMEDS::TMPFile& theStream,
00138                                   CORBA::Long theObjectID,
00139                                   SALOMEDS::SObject_ptr theObject);
00140 
00141   //-----------------------------------------------------------//
00142   // Primitives Construction : BasicOperations                 //
00143   //-----------------------------------------------------------//
00144   GEOM::GEOM_Object_ptr MakePointXYZ (CORBA::Double theX,
00145                                       CORBA::Double theY,
00146                                       CORBA::Double theZ);
00147   GEOM::GEOM_Object_ptr MakePointWithReference (GEOM::GEOM_Object_ptr theReference,
00148                                                 CORBA::Double theX,
00149                                                 CORBA::Double theY,
00150                                                 CORBA::Double theZ);
00151   GEOM::GEOM_Object_ptr MakePointOnCurve (GEOM::GEOM_Object_ptr theRefCurve,
00152                                           CORBA::Double theParameter);
00153   GEOM::GEOM_Object_ptr MakePointOnCurveByLength (GEOM::GEOM_Object_ptr theRefCurve,
00154                                                   CORBA::Double theLength,
00155                                                   GEOM::GEOM_Object_ptr theStartPoint);
00156   GEOM::GEOM_Object_ptr MakePointOnCurveByCoord (GEOM::GEOM_Object_ptr theRefCurve,
00157                                                  CORBA::Double theXParameter,
00158                                                  CORBA::Double theYParameter,
00159                                                  CORBA::Double theZParameter);
00160   GEOM::GEOM_Object_ptr MakePointOnSurface (GEOM::GEOM_Object_ptr theRefSurface,
00161                                             CORBA::Double theUParameter,
00162                                             CORBA::Double theVParameter);
00163   GEOM::GEOM_Object_ptr MakePointOnSurfaceByCoord (GEOM::GEOM_Object_ptr theRefSurface,
00164                                                    CORBA::Double theXParameter,
00165                                                    CORBA::Double theYParameter,
00166                                                    CORBA::Double theZParameter);
00167   GEOM::GEOM_Object_ptr MakePointOnLinesIntersection (GEOM::GEOM_Object_ptr theRefLine1,
00168                                                       GEOM::GEOM_Object_ptr theRefLine2);
00169   GEOM::GEOM_Object_ptr MakeTangentOnCurve (GEOM::GEOM_Object_ptr theRefCurve,
00170                                              CORBA::Double theParameter);
00171   GEOM::GEOM_Object_ptr MakeVectorDXDYDZ (CORBA::Double theDX,
00172                                           CORBA::Double theDY,
00173                                           CORBA::Double theDZ);
00174   GEOM::GEOM_Object_ptr MakeVectorTwoPnt (GEOM::GEOM_Object_ptr thePnt1,
00175                                           GEOM::GEOM_Object_ptr thePnt2);
00176   GEOM::GEOM_Object_ptr MakeLineTwoPnt (GEOM::GEOM_Object_ptr thePnt1,
00177                                         GEOM::GEOM_Object_ptr thePnt2);
00178   GEOM::GEOM_Object_ptr MakeLineTwoFaces (GEOM::GEOM_Object_ptr theFace1,
00179                                           GEOM::GEOM_Object_ptr theFace2);
00180   GEOM::GEOM_Object_ptr MakePlaneThreePnt (GEOM::GEOM_Object_ptr thePnt1,
00181                                            GEOM::GEOM_Object_ptr thePnt2,
00182                                            GEOM::GEOM_Object_ptr thePnt3,
00183                                            CORBA::Double theTrimSize);
00184   GEOM::GEOM_Object_ptr MakePlanePntVec (GEOM::GEOM_Object_ptr thePnt,
00185                                          GEOM::GEOM_Object_ptr theVec,
00186                                          CORBA::Double theTrimSize);
00187   GEOM::GEOM_Object_ptr MakePlaneFace (GEOM::GEOM_Object_ptr theFace,
00188                                        CORBA::Double theTrimSize);
00189   GEOM::GEOM_Object_ptr MakePlane2Vec (GEOM::GEOM_Object_ptr theVec1,
00190                                        GEOM::GEOM_Object_ptr theVec2,
00191                                        CORBA::Double theTrimSize);
00192   GEOM::GEOM_Object_ptr MakePlaneLCS (GEOM::GEOM_Object_ptr theLCS,
00193                                       CORBA::Double theTrimSize,
00194                                       CORBA::Double theOrientation);
00195   GEOM::GEOM_Object_ptr MakeMarker (CORBA::Double theOX , CORBA::Double theOY , CORBA::Double theOZ,
00196                                     CORBA::Double theXDX, CORBA::Double theXDY, CORBA::Double theXDZ,
00197                                     CORBA::Double theYDX, CORBA::Double theYDY, CORBA::Double theYDZ);
00198 
00199   GEOM::GEOM_Object_ptr MakeMarkerFromShape (GEOM::GEOM_Object_ptr theShape);
00200 
00201   GEOM::GEOM_Object_ptr MakeMarkerPntTwoVec (GEOM::GEOM_Object_ptr theOrigin,
00202                                              GEOM::GEOM_Object_ptr theXVec,
00203                                              GEOM::GEOM_Object_ptr theYVec);
00204 
00205   GEOM::GEOM_Object_ptr MakeTangentPlaneOnFace (GEOM::GEOM_Object_ptr theFace,
00206                                                  CORBA::Double theParameterU,
00207                                                  CORBA::Double theParameterV,
00208                                                  CORBA::Double theTrimSize);
00209 
00210   //-----------------------------------------------------------//
00211   // Primitives Construction : 3DPrimOperations                //
00212   //-----------------------------------------------------------//
00213   GEOM::GEOM_Object_ptr MakeBox (CORBA::Double theX1,
00214                                  CORBA::Double theY1,
00215                                  CORBA::Double theZ1,
00216                                  CORBA::Double theX2,
00217                                  CORBA::Double theY2,
00218                                  CORBA::Double theZ2);
00219   GEOM::GEOM_Object_ptr MakeBoxDXDYDZ (CORBA::Double theDX,
00220                                        CORBA::Double theDY,
00221                                        CORBA::Double theDZ);
00222   GEOM::GEOM_Object_ptr MakeBoxTwoPnt (GEOM::GEOM_Object_ptr thePnt1,
00223                                        GEOM::GEOM_Object_ptr thePnt2);
00224   GEOM::GEOM_Object_ptr MakeFaceHW (CORBA::Double theH,
00225                                     CORBA::Double theW,
00226                                     CORBA::Short  theOrientation);
00227   GEOM::GEOM_Object_ptr MakeFaceObjHW (GEOM::GEOM_Object_ptr theObj,
00228                                        CORBA::Double theH,
00229                                        CORBA::Double theW);
00230   GEOM::GEOM_Object_ptr MakeDiskPntVecR (GEOM::GEOM_Object_ptr theCenter,
00231                                          GEOM::GEOM_Object_ptr theVector,
00232                                          CORBA::Double theR);
00233   GEOM::GEOM_Object_ptr MakeDiskThreePnt (GEOM::GEOM_Object_ptr thePnt1,
00234                                           GEOM::GEOM_Object_ptr thePnt2,
00235                                           GEOM::GEOM_Object_ptr thePnt3);
00236   GEOM::GEOM_Object_ptr MakeDiskR (CORBA::Double theR,
00237                                    CORBA::Short  theOrientation);
00238   GEOM::GEOM_Object_ptr MakeCylinderPntVecRH (GEOM::GEOM_Object_ptr thePnt,
00239                                               GEOM::GEOM_Object_ptr theAxis,
00240                                               CORBA::Double theRadius,
00241                                               CORBA::Double theHeight);
00242   GEOM::GEOM_Object_ptr MakeCylinderRH (CORBA::Double theR,
00243                                         CORBA::Double theH);
00244   GEOM::GEOM_Object_ptr MakeSphere (CORBA::Double theX,
00245                                     CORBA::Double theY,
00246                                     CORBA::Double theZ,
00247                                     CORBA::Double theRadius);
00248   GEOM::GEOM_Object_ptr MakeSphereR (CORBA::Double theR);
00249   GEOM::GEOM_Object_ptr MakeSpherePntR (GEOM::GEOM_Object_ptr thePnt,
00250                                         CORBA::Double theR);
00251   GEOM::GEOM_Object_ptr MakeTorusPntVecRR (GEOM::GEOM_Object_ptr thePnt,
00252                                            GEOM::GEOM_Object_ptr theVec,
00253                                            CORBA::Double theRMajor,
00254                                            CORBA::Double theRMinor);
00255   GEOM::GEOM_Object_ptr MakeTorusRR (CORBA::Double theRMajor,
00256                                      CORBA::Double theRMinor);
00257   GEOM::GEOM_Object_ptr MakeConePntVecR1R2H (GEOM::GEOM_Object_ptr thePnt,
00258                                              GEOM::GEOM_Object_ptr theAxis,
00259                                              CORBA::Double theR1,
00260                                              CORBA::Double theR2,
00261                                              CORBA::Double theHeight);
00262   GEOM::GEOM_Object_ptr MakeConeR1R2H (CORBA::Double theR1,
00263                                        CORBA::Double theR2,
00264                                        CORBA::Double theHeight);
00265   GEOM::GEOM_Object_ptr MakePrismVecH (GEOM::GEOM_Object_ptr theBase,
00266                                        GEOM::GEOM_Object_ptr theVec,
00267                                        CORBA::Double         theH);
00268   GEOM::GEOM_Object_ptr MakePrismVecH2Ways (GEOM::GEOM_Object_ptr theBase,
00269                                             GEOM::GEOM_Object_ptr theVec,
00270                                             CORBA::Double         theH);
00271   GEOM::GEOM_Object_ptr MakePrismTwoPnt (GEOM::GEOM_Object_ptr theBase,
00272                                          GEOM::GEOM_Object_ptr thePoint1,
00273                                          GEOM::GEOM_Object_ptr thePoint2);
00274   GEOM::GEOM_Object_ptr MakePrismTwoPnt2Ways (GEOM::GEOM_Object_ptr theBase,
00275                                               GEOM::GEOM_Object_ptr thePoint1,
00276                                               GEOM::GEOM_Object_ptr thePoint2);
00277   GEOM::GEOM_Object_ptr MakePrismDXDYDZ (GEOM::GEOM_Object_ptr theBase,
00278                                          CORBA::Double         theDX,
00279                                          CORBA::Double         theDY,
00280                                          CORBA::Double         theDZ);
00281   GEOM::GEOM_Object_ptr MakePrismDXDYDZ2Ways (GEOM::GEOM_Object_ptr theBase,
00282                                               CORBA::Double         theDX,
00283                                               CORBA::Double         theDY,
00284                                               CORBA::Double         theDZ);
00285   GEOM::GEOM_Object_ptr MakePipe (GEOM::GEOM_Object_ptr theBase,
00286                                   GEOM::GEOM_Object_ptr thePath);
00287   GEOM::GEOM_Object_ptr MakeRevolutionAxisAngle (GEOM::GEOM_Object_ptr theBase,
00288                                                  GEOM::GEOM_Object_ptr theAxis,
00289                                                  CORBA::Double theAngle);
00290   GEOM::GEOM_Object_ptr MakeRevolutionAxisAngle2Ways (GEOM::GEOM_Object_ptr theBase,
00291                                                       GEOM::GEOM_Object_ptr theAxis,
00292                                                       CORBA::Double theAngle);
00293   GEOM::GEOM_Object_ptr MakeFilling (GEOM::GEOM_Object_ptr theShape,
00294                                      CORBA::Long theMinDeg, CORBA::Long theMaxDeg,
00295                                      CORBA::Double theTol2D, CORBA::Double theTol3D,
00296                                      CORBA::Long theNbIter,
00297                                      GEOM::filling_oper_method theMethod,
00298                                      CORBA::Boolean theApprox);
00299 
00300   GEOM::GEOM_Object_ptr MakeThruSections(const GEOM::ListOfGO& theSeqSections,
00301                                          CORBA::Boolean theModeSolid,
00302                                          CORBA::Double thePreci,
00303                                          CORBA::Boolean theRuled);
00304 
00305   GEOM::GEOM_Object_ptr MakePipeWithDifferentSections(const GEOM::ListOfGO& theBases,
00306                                                       const GEOM::ListOfGO& theLocations,
00307                                                       GEOM::GEOM_Object_ptr thePath,
00308                                                       CORBA::Boolean theWithContact,
00309                                                       CORBA::Boolean theWithCorrections);
00310 
00311   GEOM::GEOM_Object_ptr MakePipeWithShellSections(const GEOM::ListOfGO& theBases,
00312                                                   const GEOM::ListOfGO& theSubBases,
00313                                                   const GEOM::ListOfGO& theLocations,
00314                                                   GEOM::GEOM_Object_ptr thePath,
00315                                                   CORBA::Boolean theWithContact,
00316                                                   CORBA::Boolean theWithCorrections);
00317 
00318   GEOM::GEOM_Object_ptr MakePipeShellsWithoutPath(const GEOM::ListOfGO& theBases,
00319                                                   const GEOM::ListOfGO& theLocations);
00320 
00321   GEOM::GEOM_Object_ptr MakePipeBiNormalAlongVector (GEOM::GEOM_Object_ptr theBase,
00322                                                      GEOM::GEOM_Object_ptr thePath,
00323                                                      GEOM::GEOM_Object_ptr theVec);
00324 
00325   //-----------------------------------------------------------//
00326   // BooleanOperations                                         //
00327   //-----------------------------------------------------------//
00328   GEOM::GEOM_Object_ptr MakeBoolean (GEOM::GEOM_Object_ptr theShape1,
00329                                      GEOM::GEOM_Object_ptr theShape2,
00330                                      CORBA::Long theOperation);
00331   GEOM::GEOM_Object_ptr MakeFuse (GEOM::GEOM_Object_ptr theShape1,
00332                                   GEOM::GEOM_Object_ptr theShape2);
00333   GEOM::GEOM_Object_ptr MakePartition (GEOM::GEOM_List_ptr   theShapes,
00334                                        GEOM::GEOM_List_ptr   theTools,
00335                                        GEOM::GEOM_List_ptr   theKeepInside,
00336                                        GEOM::GEOM_List_ptr   theRemoveInside,
00337                                        CORBA::Short      theLimit,
00338                                        CORBA::Boolean    theRemoveWebs,
00339                                        GEOM::GEOM_List_ptr theMaterials,
00340                                        CORBA::Short theKeepNonlimitShapes);
00341   GEOM::GEOM_Object_ptr MakeHalfPartition (GEOM::GEOM_Object_ptr theShape,
00342                                            GEOM::GEOM_Object_ptr thePlane);
00343 
00344   //-----------------------------------------------------------//
00345   // InsertOperations                                          //
00346   //-----------------------------------------------------------//
00347   GEOM::GEOM_Object_ptr MakeCopy (GEOM::GEOM_Object_ptr theOriginal);
00348   void Export (GEOM::GEOM_Object_ptr theObject,
00349                const char*           theFileName,
00350                const char*           theFormatName);
00351   GEOM::GEOM_Object_ptr ImportFile (const char* theFileName,
00352                                     const char* theFormatName);
00353   void ImportTranslators (GEOM::string_array_out theFormats,
00354                           GEOM::string_array_out thePatterns);
00355   void ExportTranslators (GEOM::string_array_out theFormats,
00356                           GEOM::string_array_out thePatterns);
00357 
00358   //-----------------------------------------------------------//
00359   // TransformOperations                                       //
00360   //-----------------------------------------------------------//
00361   GEOM::GEOM_Object_ptr TranslateTwoPoints (GEOM::GEOM_Object_ptr theObject,
00362                                             GEOM::GEOM_Object_ptr thePoint1,
00363                                             GEOM::GEOM_Object_ptr thePoint2);
00364   GEOM::GEOM_Object_ptr TranslateTwoPointsCopy (GEOM::GEOM_Object_ptr theObject,
00365                                                 GEOM::GEOM_Object_ptr thePoint1,
00366                                                 GEOM::GEOM_Object_ptr thePoint2);
00367   GEOM::GEOM_Object_ptr TranslateDXDYDZ (GEOM::GEOM_Object_ptr theObject,
00368                                          CORBA::Double theDX,
00369                                          CORBA::Double theDY,
00370                                          CORBA::Double theDZ);
00371   GEOM::GEOM_Object_ptr TranslateDXDYDZCopy (GEOM::GEOM_Object_ptr theObject,
00372                                              CORBA::Double theDX,
00373                                              CORBA::Double theDY,
00374                                              CORBA::Double theDZ);
00375   GEOM::GEOM_Object_ptr TranslateVector (GEOM::GEOM_Object_ptr theObject,
00376                                          GEOM::GEOM_Object_ptr theVector);
00377   GEOM::GEOM_Object_ptr TranslateVectorCopy (GEOM::GEOM_Object_ptr theObject,
00378                                              GEOM::GEOM_Object_ptr theVector);
00379   GEOM::GEOM_Object_ptr TranslateVectorDistance (GEOM::GEOM_Object_ptr theObject,
00380                                                  GEOM::GEOM_Object_ptr theVector,
00381                                                  CORBA::Double theDistance,
00382                                                  CORBA::Boolean theCopy);
00383   GEOM::GEOM_Object_ptr MultiTranslate1D (GEOM::GEOM_Object_ptr theObject,
00384                                           GEOM::GEOM_Object_ptr theVector,
00385                                           CORBA::Double theStep,
00386                                           CORBA::Long theNbTimes);
00387   GEOM::GEOM_Object_ptr MultiTranslate2D (GEOM::GEOM_Object_ptr theObject,
00388                                           GEOM::GEOM_Object_ptr theVector1,
00389                                           CORBA::Double theStep1,
00390                                           CORBA::Long theNbTimes1,
00391                                           GEOM::GEOM_Object_ptr theVector2,
00392                                           CORBA::Double theStep2,
00393                                           CORBA::Long theNbTimes2);
00394   GEOM::GEOM_Object_ptr Rotate (GEOM::GEOM_Object_ptr theObject,
00395                                 GEOM::GEOM_Object_ptr theAxis,
00396                                 CORBA::Double theAngle);
00397   GEOM::GEOM_Object_ptr RotateCopy (GEOM::GEOM_Object_ptr theObject,
00398                                     GEOM::GEOM_Object_ptr theAxis,
00399                                     CORBA::Double theAngle);
00400 
00401   GEOM::GEOM_Object_ptr RotateThreePoints (GEOM::GEOM_Object_ptr theObject,
00402                                            GEOM::GEOM_Object_ptr theCentPoint,
00403                                            GEOM::GEOM_Object_ptr thePoint1,
00404                                            GEOM::GEOM_Object_ptr thePoint2);
00405 
00406   GEOM::GEOM_Object_ptr RotateThreePointsCopy (GEOM::GEOM_Object_ptr theObject,
00407                                                GEOM::GEOM_Object_ptr theCentPoint,
00408                                                GEOM::GEOM_Object_ptr thePoint1,
00409                                                GEOM::GEOM_Object_ptr thePoint2);
00410 
00411   GEOM::GEOM_Object_ptr MultiRotate1D (GEOM::GEOM_Object_ptr theObject,
00412                                        GEOM::GEOM_Object_ptr theAxis,
00413                                        CORBA::Long theNbTimes);
00414   GEOM::GEOM_Object_ptr MultiRotate2D (GEOM::GEOM_Object_ptr theObject,
00415                                        GEOM::GEOM_Object_ptr theAxis,
00416                                        CORBA::Double theAngle,
00417                                        CORBA::Long theNbTimes1,
00418                                        CORBA::Double theStep,
00419                                        CORBA::Long theNbTimes2);
00420   GEOM::GEOM_Object_ptr MirrorPlane (GEOM::GEOM_Object_ptr theObject,
00421                                      GEOM::GEOM_Object_ptr thePlane);
00422   GEOM::GEOM_Object_ptr MirrorPlaneCopy (GEOM::GEOM_Object_ptr theObject,
00423                                          GEOM::GEOM_Object_ptr thePlane);
00424   GEOM::GEOM_Object_ptr MirrorAxis (GEOM::GEOM_Object_ptr theObject,
00425                                     GEOM::GEOM_Object_ptr theAxis);
00426   GEOM::GEOM_Object_ptr MirrorAxisCopy (GEOM::GEOM_Object_ptr theObject,
00427                                         GEOM::GEOM_Object_ptr theAxis);
00428   GEOM::GEOM_Object_ptr MirrorPoint (GEOM::GEOM_Object_ptr theObject,
00429                                      GEOM::GEOM_Object_ptr thePoint);
00430   GEOM::GEOM_Object_ptr MirrorPointCopy (GEOM::GEOM_Object_ptr theObject,
00431                                          GEOM::GEOM_Object_ptr thePoint);
00432   GEOM::GEOM_Object_ptr OffsetShape (GEOM::GEOM_Object_ptr theObject,
00433                                      CORBA::Double theOffset);
00434   GEOM::GEOM_Object_ptr OffsetShapeCopy (GEOM::GEOM_Object_ptr theObject,
00435                                          CORBA::Double theOffset);
00436   GEOM::GEOM_Object_ptr ScaleShape (GEOM::GEOM_Object_ptr theObject,
00437                                     GEOM::GEOM_Object_ptr thePoint,
00438                                     CORBA::Double theFactor);
00439   GEOM::GEOM_Object_ptr ScaleShapeCopy (GEOM::GEOM_Object_ptr theObject,
00440                                         GEOM::GEOM_Object_ptr thePoint,
00441                                         CORBA::Double theFactor);
00442   GEOM::GEOM_Object_ptr ScaleShapeAlongAxes (GEOM::GEOM_Object_ptr theObject,
00443                                              GEOM::GEOM_Object_ptr thePoint,
00444                                              CORBA::Double theFactorX,
00445                                              CORBA::Double theFactorY,
00446                                              CORBA::Double theFactorZ);
00447   GEOM::GEOM_Object_ptr ScaleShapeAlongAxesCopy (GEOM::GEOM_Object_ptr theObject,
00448                                                  GEOM::GEOM_Object_ptr thePoint,
00449                                                  CORBA::Double theFactorX,
00450                                                  CORBA::Double theFactorY,
00451                                                  CORBA::Double theFactorZ);
00452   GEOM::GEOM_Object_ptr PositionShape (GEOM::GEOM_Object_ptr theObject,
00453                                        GEOM::GEOM_Object_ptr theStartLCS,
00454                                        GEOM::GEOM_Object_ptr theEndLCS);
00455   GEOM::GEOM_Object_ptr PositionShapeCopy (GEOM::GEOM_Object_ptr theObject,
00456                                            GEOM::GEOM_Object_ptr theStartLCS,
00457                                            GEOM::GEOM_Object_ptr theEndLCS);
00458   GEOM::GEOM_Object_ptr PositionAlongPath (GEOM::GEOM_Object_ptr theObject,
00459                                            GEOM::GEOM_Object_ptr thePath,
00460                                            CORBA::Double         theDistance,
00461                                            CORBA::Boolean        theCopy,
00462                                            CORBA::Boolean        theReverse);
00463 
00464   //-----------------------------------------------------------//
00465   // ShapesOperations                                          //
00466   //-----------------------------------------------------------//
00467   GEOM::GEOM_Object_ptr MakeEdge (GEOM::GEOM_Object_ptr thePnt1,
00468                                   GEOM::GEOM_Object_ptr thePnt2);
00469   GEOM::GEOM_Object_ptr MakeEdgeOnCurveByLength (GEOM::GEOM_Object_ptr theRefCurve,
00470                                                  CORBA::Double theLength,
00471                                                  GEOM::GEOM_Object_ptr theStartPoint);
00472   GEOM::GEOM_Object_ptr MakeWire (GEOM::GEOM_List_ptr theEdgesAndWires,
00473                                   CORBA::Double       theTolerance);
00474   GEOM::GEOM_Object_ptr MakeFace (GEOM::GEOM_Object_ptr theWire,
00475                                   CORBA::Boolean isPlanarWanted);
00476   GEOM::GEOM_Object_ptr MakeFaceWires (GEOM::GEOM_List_ptr theWires,
00477                                        CORBA::Boolean isPlanarWanted);
00478   GEOM::GEOM_Object_ptr MakeShell (GEOM::GEOM_List_ptr theFacesAndShells);
00479   GEOM::GEOM_Object_ptr MakeSolidShell (GEOM::GEOM_Object_ptr theShell);
00480   GEOM::GEOM_Object_ptr MakeSolidShells (GEOM::GEOM_List_ptr theShells);
00481   GEOM::GEOM_Object_ptr MakeCompound (GEOM::GEOM_List_ptr theShapes);
00482   GEOM::GEOM_Object_ptr MakeGlueFaces (GEOM::GEOM_Object_ptr theShape,
00483                                        CORBA::Double theTolerance,
00484                                        CORBA::Boolean doKeepNonSolids);
00485   GEOM::GEOM_List_ptr GetGlueFaces (GEOM::GEOM_Object_ptr theShape,
00486                                     CORBA::Double theTolerance);
00487   GEOM::GEOM_Object_ptr MakeGlueFacesByList (GEOM::GEOM_Object_ptr theShape,
00488                                              CORBA::Double theTolerance,
00489                                              const GEOM::ListOfGO& theFaces,
00490                                              CORBA::Boolean doKeepNonSolids,
00491                                              CORBA::Boolean doGlueAllEdges);
00492   GEOM::GEOM_List_ptr MakeExplode (GEOM::GEOM_Object_ptr theShape,
00493                                        CORBA::Long theShapeType,
00494                                        CORBA::Boolean isSorted);
00495   CORBA::Long NumberOfFaces (GEOM::GEOM_Object_ptr theShape);
00496   CORBA::Long NumberOfEdges (GEOM::GEOM_Object_ptr theShape);
00497   GEOM::GEOM_Object_ptr ChangeOrientation (GEOM::GEOM_Object_ptr theShape);
00498 
00499   GEOM::GEOM_List_ptr GetShapesOnShape (GEOM::GEOM_Object_ptr theCheckShape,
00500                                           GEOM::GEOM_Object_ptr theShape,
00501                                           CORBA::Short theShapeType,
00502                                           GEOM::shape_state theState);
00503   GEOM::GEOM_Object_ptr GetShapesOnShapeAsCompound
00504                                        (GEOM::GEOM_Object_ptr theCheckShape,
00505                                           GEOM::GEOM_Object_ptr theShape,
00506                                           CORBA::Short theShapeType,
00507                                           GEOM::shape_state theState);
00508 
00509 
00510   //-----------------------------------------------------------//
00511   // BlocksOperations                                          //
00512   //-----------------------------------------------------------//
00513   GEOM::GEOM_Object_ptr MakeQuad4Vertices (GEOM::GEOM_Object_ptr thePnt1,
00514                                            GEOM::GEOM_Object_ptr thePnt2,
00515                                            GEOM::GEOM_Object_ptr thePnt3,
00516                                            GEOM::GEOM_Object_ptr thePnt4);
00517   GEOM::GEOM_Object_ptr MakeQuad (GEOM::GEOM_Object_ptr theEdge1,
00518                                   GEOM::GEOM_Object_ptr theEdge2,
00519                                   GEOM::GEOM_Object_ptr theEdge3,
00520                                   GEOM::GEOM_Object_ptr theEdge4);
00521   GEOM::GEOM_Object_ptr MakeQuad2Edges (GEOM::GEOM_Object_ptr theEdge1,
00522                                         GEOM::GEOM_Object_ptr theEdge2);
00523   GEOM::GEOM_Object_ptr MakeHexa (GEOM::GEOM_Object_ptr theFace1,
00524                                   GEOM::GEOM_Object_ptr theFace2,
00525                                   GEOM::GEOM_Object_ptr theFace3,
00526                                   GEOM::GEOM_Object_ptr theFace4,
00527                                   GEOM::GEOM_Object_ptr theFace5,
00528                                   GEOM::GEOM_Object_ptr theFace6);
00529   GEOM::GEOM_Object_ptr MakeHexa2Faces (GEOM::GEOM_Object_ptr theFace1,
00530                                         GEOM::GEOM_Object_ptr theFace2);
00531   GEOM::GEOM_Object_ptr GetPoint (GEOM::GEOM_Object_ptr theShape,
00532                                   CORBA::Double   theX,
00533                                   CORBA::Double   theY,
00534                                   CORBA::Double   theZ,
00535                                   CORBA::Double   theEpsilon);
00536   GEOM::GEOM_Object_ptr GetEdge (GEOM::GEOM_Object_ptr theShape,
00537                                  GEOM::GEOM_Object_ptr thePoint1,
00538                                  GEOM::GEOM_Object_ptr thePoint2);
00539   GEOM::GEOM_Object_ptr GetEdgeNearPoint (GEOM::GEOM_Object_ptr theShape,
00540                                           GEOM::GEOM_Object_ptr thePoint);
00541   GEOM::GEOM_Object_ptr GetFaceByPoints (GEOM::GEOM_Object_ptr theShape,
00542                                          GEOM::GEOM_Object_ptr thePoint1,
00543                                          GEOM::GEOM_Object_ptr thePoint2,
00544                                          GEOM::GEOM_Object_ptr thePoint3,
00545                                          GEOM::GEOM_Object_ptr thePoint4);
00546   GEOM::GEOM_Object_ptr GetFaceByEdges (GEOM::GEOM_Object_ptr theShape,
00547                                         GEOM::GEOM_Object_ptr theEdge1,
00548                                         GEOM::GEOM_Object_ptr theEdge2);
00549   GEOM::GEOM_Object_ptr GetOppositeFace (GEOM::GEOM_Object_ptr theBlock,
00550                                          GEOM::GEOM_Object_ptr theFace);
00551   GEOM::GEOM_Object_ptr GetFaceNearPoint (GEOM::GEOM_Object_ptr theShape,
00552                                           GEOM::GEOM_Object_ptr thePoint);
00553   GEOM::GEOM_Object_ptr GetFaceByNormale (GEOM::GEOM_Object_ptr theBlock,
00554                                           GEOM::GEOM_Object_ptr theVector);
00555   CORBA::Boolean IsCompoundOfBlocks (GEOM::GEOM_Object_ptr theCompound,
00556                                      CORBA::Long     theMinNbFaces,
00557                                      CORBA::Long     theMaxNbFaces,
00558                                      CORBA::Long&          theNbBlocks);
00559   CORBA::Boolean CheckCompoundOfBlocks (GEOM::GEOM_Object_ptr theCompound,
00560                                         GEOM::GEOM_IBlocksOperations::BCErrors_out theErrors);
00561   char* PrintBCErrors (GEOM::GEOM_Object_ptr theCompound,
00562                        const GEOM::GEOM_IBlocksOperations::BCErrors& theErrors);
00563   GEOM::GEOM_List_ptr ExplodeCompoundOfBlocks (GEOM::GEOM_Object_ptr theCompound,
00564                                                    CORBA::Long     theMinNbFaces,
00565                                                    CORBA::Long     theMaxNbFaces);
00566   GEOM::GEOM_Object_ptr GetBlockNearPoint (GEOM::GEOM_Object_ptr theCompound,
00567                                            GEOM::GEOM_Object_ptr thePoint);
00568   GEOM::GEOM_Object_ptr GetBlockByParts (GEOM::GEOM_Object_ptr theCompound,
00569                                          GEOM::GEOM_List_ptr theParts);
00570   GEOM::GEOM_List_ptr GetBlocksByParts (GEOM::GEOM_Object_ptr theCompound,
00571                                             GEOM::GEOM_List_ptr theParts);
00572   GEOM::GEOM_Object_ptr MakeMultiTransformation1D (GEOM::GEOM_Object_ptr theBlock,
00573                                                    CORBA::Long     theDirFace1,
00574                                                    CORBA::Long     theDirFace2,
00575                                                    CORBA::Long     theNbTimes);
00576   GEOM::GEOM_Object_ptr MakeMultiTransformation2D (GEOM::GEOM_Object_ptr theBlock,
00577                                                    CORBA::Long     theDirFace1U,
00578                                                    CORBA::Long     theDirFace2U,
00579                                                    CORBA::Long     theNbTimesU,
00580                                                    CORBA::Long     theDirFace1V,
00581                                                    CORBA::Long     theDirFace2V,
00582                                                    CORBA::Long     theNbTimesV);
00583 
00584   //-----------------------------------------------------------//
00585   // CurvesOperations                                          //
00586   //-----------------------------------------------------------//
00587   GEOM::GEOM_Object_ptr MakeCirclePntVecR (GEOM::GEOM_Object_ptr theCenter,
00588                                            GEOM::GEOM_Object_ptr theVector,
00589                                            CORBA::Double theR);
00590   GEOM::GEOM_Object_ptr MakeCircleThreePnt (GEOM::GEOM_Object_ptr thePnt1,
00591                                             GEOM::GEOM_Object_ptr thePnt2,
00592                                             GEOM::GEOM_Object_ptr thePnt3);
00593   GEOM::GEOM_Object_ptr MakeCircleCenter2Pnt (GEOM::GEOM_Object_ptr thePnt1,
00594                                               GEOM::GEOM_Object_ptr thePnt2,
00595                                               GEOM::GEOM_Object_ptr thePnt3);
00596   GEOM::GEOM_Object_ptr MakeEllipse (GEOM::GEOM_Object_ptr theCenter,
00597                                      GEOM::GEOM_Object_ptr theVector,
00598                                      CORBA::Double theRMajor, CORBA::Double theRMinor);
00599   GEOM::GEOM_Object_ptr MakeEllipseVec (GEOM::GEOM_Object_ptr theCenter,
00600                                         GEOM::GEOM_Object_ptr theVector,
00601                                         CORBA::Double theRMajor, CORBA::Double theRMinor,
00602                                         GEOM::GEOM_Object_ptr theVectorMajor);
00603   GEOM::GEOM_Object_ptr MakeArc (GEOM::GEOM_Object_ptr thePnt1,
00604                                  GEOM::GEOM_Object_ptr thePnt2,
00605                                  GEOM::GEOM_Object_ptr thePnt3);
00606   GEOM::GEOM_Object_ptr MakeArcCenter (GEOM::GEOM_Object_ptr theCenter,
00607                                        GEOM::GEOM_Object_ptr thePnt1,
00608                                        GEOM::GEOM_Object_ptr thePnt2,
00609                                        CORBA::Boolean theSense);
00610   GEOM::GEOM_Object_ptr MakeArcOfEllipse (GEOM::GEOM_Object_ptr thePnt1,
00611                                           GEOM::GEOM_Object_ptr thePnt2,
00612                                           GEOM::GEOM_Object_ptr thePnt3);
00613   GEOM::GEOM_Object_ptr MakePolyline (GEOM::GEOM_List_ptr thePoints,
00614                                       CORBA::Boolean      theIsClosed);
00615   GEOM::GEOM_Object_ptr MakeSplineBezier (GEOM::GEOM_List_ptr thePoints,
00616                                           CORBA::Boolean      theIsClosed);
00617   GEOM::GEOM_Object_ptr MakeSplineInterpolation (GEOM::GEOM_List_ptr thePoints,
00618                                                  CORBA::Boolean      theIsClosed,
00619                                                  CORBA::Boolean      theDoReordering);
00620   GEOM::GEOM_Object_ptr MakeSketcher (const char* theCommand,
00621                                                 GEOM::GEOM_List_ptr theWorkingPlane);
00622   GEOM::GEOM_Object_ptr Make3DSketcher (GEOM::GEOM_List_ptr theCoordinates);
00623 
00624   //-----------------------------------------------------------//
00625   // LocalOperations                                           //
00626   //-----------------------------------------------------------//
00627   GEOM::GEOM_Object_ptr MakeFilletAll (GEOM::GEOM_Object_ptr theShape,
00628                                        CORBA::Double theR);
00629   GEOM::GEOM_Object_ptr MakeFilletEdges (GEOM::GEOM_Object_ptr theShape, CORBA::Double theR,
00630                                          GEOM::GEOM_List_ptr theEdges);
00631   GEOM::GEOM_Object_ptr MakeFilletEdgesR1R2 (GEOM::GEOM_Object_ptr theShape, CORBA::Double theR1,
00632                                              CORBA::Double theR2, GEOM::GEOM_List_ptr theEdges);
00633   GEOM::GEOM_Object_ptr MakeFilletFaces (GEOM::GEOM_Object_ptr theShape, CORBA::Double theR,
00634                                          GEOM::GEOM_List_ptr theFaces);
00635   GEOM::GEOM_Object_ptr MakeFilletFacesR1R2 (GEOM::GEOM_Object_ptr theShape, CORBA::Double theR1,
00636                                              CORBA::Double theR2, GEOM::GEOM_List_ptr theFaces);
00637   GEOM::GEOM_Object_ptr MakeFillet2D (GEOM::GEOM_Object_ptr theShape, CORBA::Double theR,
00638                                       GEOM::GEOM_List_ptr theVertexes);
00639   GEOM::GEOM_Object_ptr MakeFillet1D (GEOM::GEOM_Object_ptr theShape, CORBA::Double theR,
00640                                       GEOM::GEOM_List_ptr theVertexes);
00641   GEOM::GEOM_Object_ptr MakeChamferAll (GEOM::GEOM_Object_ptr theShape, CORBA::Double theD);
00642   GEOM::GEOM_Object_ptr MakeChamferEdge (GEOM::GEOM_Object_ptr theShape,
00643                                          CORBA::Double theD1, CORBA::Double theD2,
00644                                          CORBA::Long theFace1, CORBA::Long theFace2);
00645   GEOM::GEOM_Object_ptr MakeChamferEdgeAD (GEOM::GEOM_Object_ptr theShape,
00646                                             CORBA::Double theD, CORBA::Double theAngle,
00647                                            CORBA::Long theFace1, CORBA::Long theFace2);
00648   GEOM::GEOM_Object_ptr MakeChamferFaces (GEOM::GEOM_Object_ptr theShape,
00649                                           CORBA::Double theD1, CORBA::Double theD2,
00650                                           GEOM::GEOM_List_ptr theFaces);
00651   GEOM::GEOM_Object_ptr MakeChamferFacesAD (GEOM::GEOM_Object_ptr theShape,
00652                                             CORBA::Double theD, CORBA::Double theAngle,
00653                                             GEOM::GEOM_List_ptr theFaces);
00654   GEOM::GEOM_Object_ptr MakeChamferEdges (GEOM::GEOM_Object_ptr theShape,
00655                                           CORBA::Double theD1, CORBA::Double theD2,
00656                                           GEOM::GEOM_List_ptr theEdges);
00657   GEOM::GEOM_Object_ptr MakeChamferEdgesAD (GEOM::GEOM_Object_ptr theShape,
00658                                             CORBA::Double theD, CORBA::Double theAngle,
00659                                                GEOM::GEOM_List_ptr theEdges);
00660   GEOM::GEOM_Object_ptr MakeArchimede (GEOM::GEOM_Object_ptr theShape,
00661                                        CORBA::Double theWeight,
00662                                        CORBA::Double theWaterDensity,
00663                                        CORBA::Double theMeshingDeflection);
00664   CORBA::Long GetSubShapeIndex (GEOM::GEOM_Object_ptr theShape,
00665                                 GEOM::GEOM_Object_ptr theSubShape);
00666 
00667   //-----------------------------------------------------------//
00668   // GroupOperations                                           //
00669   //-----------------------------------------------------------//
00670   GEOM::GEOM_Object_ptr CreateGroup (GEOM::GEOM_Object_ptr theMainShape,
00671                                      CORBA::Long theShapeType);
00672   void AddObject (GEOM::GEOM_Object_ptr theGroup,
00673                   CORBA::Long theSubShapeId);
00674   void RemoveObject (GEOM::GEOM_Object_ptr theGroup,
00675                      CORBA::Long theSubShapeId);
00676   CORBA::Long GetType (GEOM::GEOM_Object_ptr theGroup);
00677   GEOM::GEOM_Object_ptr GetMainShape (GEOM::GEOM_Object_ptr theGroup);
00678   GEOM::GEOM_List_ptr GetObjects (GEOM::GEOM_Object_ptr theGroup);
00679 
00680   //-----------------------------------------------------------//
00681   // Advanced Operations                                       //
00682   //-----------------------------------------------------------//
00683   GEOM::GEOM_List_ptr MakePipeTShape (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
00684                                       CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
00685                                       CORBA::Boolean theHexMesh);
00686   GEOM::GEOM_List_ptr MakePipeTShapeWithPosition (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
00687                                                   CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
00688                                                   CORBA::Boolean theHexMesh,
00689                                                   GEOM::GEOM_Object_ptr theP1, GEOM::GEOM_Object_ptr theP2, GEOM::GEOM_Object_ptr theP3);
00690   GEOM::GEOM_List_ptr MakePipeTShapeChamfer (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
00691                                              CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
00692                                              CORBA::Double theH, CORBA::Double theW, CORBA::Boolean theHexMesh);
00693   GEOM::GEOM_List_ptr MakePipeTShapeChamferWithPosition (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
00694                                                          CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
00695                                                          CORBA::Double theH, CORBA::Double theW, CORBA::Boolean theHexMesh,
00696                                                          GEOM::GEOM_Object_ptr theP1, GEOM::GEOM_Object_ptr theP2, GEOM::GEOM_Object_ptr theP3);
00697   GEOM::GEOM_List_ptr MakePipeTShapeFillet (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
00698                                             CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
00699                                             CORBA::Double theRF, CORBA::Boolean theHexMesh);
00700   GEOM::GEOM_List_ptr MakePipeTShapeFilletWithPosition (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
00701                                                         CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
00702                                                         CORBA::Double theRF, CORBA::Boolean theHexMesh,
00703                                                         GEOM::GEOM_Object_ptr theP1, GEOM::GEOM_Object_ptr theP2, GEOM::GEOM_Object_ptr theP3);
00704   /*@@ insert new functions before this line @@ do not remove this line @@*/
00705 
00706 private:
00707   SALOME_NamingService *  name_service;
00708   GEOM::GEOM_Gen_var      myGeomEngine;
00709   CORBA::Long             myStudyID;
00710   CORBA::Long             myLastStudyID; // mkr : PAL10770
00711   PortableServer::POA_var myPOA;
00712 
00713   GEOM::GEOM_IBasicOperations_var     myBasicOp;
00714   GEOM::GEOM_I3DPrimOperations_var    my3DPrimOp;
00715   GEOM::GEOM_IBooleanOperations_var   myBoolOp;
00716   GEOM::GEOM_IInsertOperations_var    myInsOp;
00717   GEOM::GEOM_ITransformOperations_var myTransfOp;
00718   GEOM::GEOM_IShapesOperations_var    myShapesOp;
00719   GEOM::GEOM_IBlocksOperations_var    myBlocksOp;
00720   GEOM::GEOM_ICurvesOperations_var    myCurvesOp;
00721   GEOM::GEOM_ILocalOperations_var     myLocalOp;
00722   GEOM::GEOM_IGroupOperations_var     myGroupOp;
00723   GEOM::GEOM_IAdvancedOperations_var  myAdvancedOp;
00724 };
00725 
00726 #endif
Copyright © 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
Copyright © 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS