]> SALOME platform Git repositories - modules/geom.git/blob - src/GEOM_I/GEOM_IShapesOperations_i.hh
Salome HOME
Merge with OCC_development_01
[modules/geom.git] / src / GEOM_I / GEOM_IShapesOperations_i.hh
1
2 #ifndef _GEOM_IShapesOperations_i_HeaderFile
3 #define _GEOM_IShapesOperations_i_HeaderFile
4
5
6 #include <SALOMEconfig.h>
7
8 #include CORBA_SERVER_HEADER(GEOM_Gen)
9 #include "GEOM_IOperations_i.hh"
10 #include "GEOM_Object_i.hh"
11
12 #include "GEOMImpl_IShapesOperations.hxx"
13
14 class GEOM_IShapesOperations_i :
15     public virtual POA_GEOM::GEOM_IShapesOperations,
16     public virtual GEOM_IOperations_i
17 {
18  public:
19   GEOM_IShapesOperations_i (PortableServer::POA_ptr       thePOA,
20                             GEOM::GEOM_Gen_ptr            theEngine,
21                             ::GEOMImpl_IShapesOperations* theImpl);
22   ~GEOM_IShapesOperations_i();
23
24   GEOM::GEOM_Object_ptr MakeEdge (GEOM::GEOM_Object_ptr thePnt1,
25                                   GEOM::GEOM_Object_ptr thePnt2);
26
27   GEOM::GEOM_Object_ptr MakeWire (const GEOM::ListOfGO& theEdgesAndWires);
28
29   GEOM::GEOM_Object_ptr MakeFace (GEOM::GEOM_Object_ptr theWire,
30                                   const CORBA::Boolean  isPlanarWanted);
31
32   GEOM::GEOM_Object_ptr MakeFaceWires (const GEOM::ListOfGO& theWires,
33                                        const CORBA::Boolean  isPlanarWanted);
34
35   GEOM::GEOM_Object_ptr MakeShell (const GEOM::ListOfGO& theFacesAndShells);
36
37   GEOM::GEOM_Object_ptr MakeSolidShell (GEOM::GEOM_Object_ptr theShell);
38
39   GEOM::GEOM_Object_ptr MakeSolidShells (const GEOM::ListOfGO& theShells);
40
41   GEOM::GEOM_Object_ptr MakeCompound (const GEOM::ListOfGO& theShapes);
42
43   GEOM::GEOM_Object_ptr MakeGlueFaces (GEOM::GEOM_Object_ptr theShape,
44                                        const CORBA::Double   theTolerance);
45
46   GEOM::ListOfGO* MakeExplode (GEOM::GEOM_Object_ptr theShape,
47                                const CORBA::Long     theShapeType,
48                                const CORBA::Boolean  isSorted);
49
50   GEOM::ListOfLong* SubShapeAllIDs (GEOM::GEOM_Object_ptr theShape,
51                                     const CORBA::Long     theShapeType,
52                                     const CORBA::Boolean  isSorted);
53
54   GEOM::GEOM_Object_ptr GetSubShape (GEOM::GEOM_Object_ptr theMainShape,
55                                      const CORBA::Long     theID);
56
57   CORBA::Long NumberOfFaces (GEOM::GEOM_Object_ptr theShape);
58   CORBA::Long NumberOfEdges (GEOM::GEOM_Object_ptr theShape);
59
60   GEOM::GEOM_Object_ptr ChangeOrientation (GEOM::GEOM_Object_ptr theShape);
61
62   GEOM::ListOfLong* GetFreeFacesIDs (GEOM::GEOM_Object_ptr theShape);
63
64   GEOM::ListOfGO* GetSharedShapes (GEOM::GEOM_Object_ptr theShape1,
65                                    GEOM::GEOM_Object_ptr theShape2,
66                                    const CORBA::Long     theShapeType);
67
68   GEOM::GEOM_Object_ptr GetShapesOnPlane (GEOM::GEOM_Object_ptr theShape,
69                                           const CORBA::Long     theShapeType,
70                                           GEOM::GEOM_Object_ptr thePlane);
71
72   GEOM::GEOM_Object_ptr GetShapesOnCylinder (GEOM::GEOM_Object_ptr theShape,
73                                              const CORBA::Long     theShapeType,
74                                              GEOM::GEOM_Object_ptr theAxis,
75                                              const CORBA::Double   theRadius);
76
77   GEOM::GEOM_Object_ptr GetShapesOnSphere (GEOM::GEOM_Object_ptr theShape,
78                                            const CORBA::Long     theShapeType,
79                                            GEOM::GEOM_Object_ptr theCenter,
80                                            const CORBA::Double   theRadius);
81
82   GEOM::GEOM_Object_ptr GetInPlace (GEOM::GEOM_Object_ptr theShapeWhere,
83                                     GEOM::GEOM_Object_ptr theShapeWhat);
84
85   ::GEOMImpl_IShapesOperations* GetOperations()
86   { return (::GEOMImpl_IShapesOperations*)GetImpl(); }
87 };
88
89 #endif