Salome HOME
0019050 Test integration
[modules/geom.git] / src / GEOM_I / GEOM_IBasicOperations_i.hh
index e46f50431072a5c8441b2b6bc48484401f2c6629..60cc657cc30393816672272160d554fdfeec659a 100644 (file)
 // 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/
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 
 #ifndef _GEOM_IBasicOperations_i_HeaderFile
 #define _GEOM_IBasicOperations_i_HeaderFile
 
+#include "GEOMImpl_Gen.hxx"
 
 #include <SALOMEconfig.h>
 
@@ -30,7 +31,7 @@
 
 #include "GEOMImpl_IBasicOperations.hxx"
 
-class GEOM_IBasicOperations_i :
+class GEOM_I_EXPORT GEOM_IBasicOperations_i :
     public virtual POA_GEOM::GEOM_IBasicOperations,
     public virtual GEOM_IOperations_i
 {
@@ -52,6 +53,16 @@ class GEOM_IBasicOperations_i :
    GEOM::GEOM_Object_ptr MakePointOnCurve (GEOM::GEOM_Object_ptr theCurve,
                                           CORBA::Double theParameter);
 
+   GEOM::GEOM_Object_ptr MakePointOnSurface (GEOM::GEOM_Object_ptr theSurface,
+                                            CORBA::Double theUParameter,
+                                            CORBA::Double theVParameter);
+
+   GEOM::GEOM_Object_ptr MakePointOnLinesIntersection (GEOM::GEOM_Object_ptr theLine1,
+                                                      GEOM::GEOM_Object_ptr theLine2);
+
+   GEOM::GEOM_Object_ptr MakeTangentOnCurve (GEOM::GEOM_Object_ptr theRefCurve,
+                                            CORBA::Double theParameter);
+
    GEOM::GEOM_Object_ptr MakeVectorDXDYDZ (CORBA::Double theDX,
                                           CORBA::Double theDY,
                                           CORBA::Double theDZ);
@@ -65,6 +76,9 @@ class GEOM_IBasicOperations_i :
    GEOM::GEOM_Object_ptr MakeLineTwoPnt (GEOM::GEOM_Object_ptr thePnt1,
                                         GEOM::GEOM_Object_ptr thePnt2);
 
+   GEOM::GEOM_Object_ptr MakeLineTwoFaces (GEOM::GEOM_Object_ptr theFace1,
+                                          GEOM::GEOM_Object_ptr theFace2);
+
    GEOM::GEOM_Object_ptr MakePlaneThreePnt (GEOM::GEOM_Object_ptr thePnt1,
                                            GEOM::GEOM_Object_ptr thePnt2,
                                            GEOM::GEOM_Object_ptr thePnt3,
@@ -81,6 +95,11 @@ class GEOM_IBasicOperations_i :
                                     CORBA::Double theXDX, CORBA::Double theXDY, CORBA::Double theXDZ,
                                     CORBA::Double theYDX, CORBA::Double theYDY, CORBA::Double theYDZ);
 
+   GEOM::GEOM_Object_ptr MakeTangentPlaneOnFace (GEOM::GEOM_Object_ptr theFace, 
+                                                CORBA::Double theParameterU,
+                                                CORBA::Double theParameterV,
+                                                CORBA::Double theTrimSize);
+
    ::GEOMImpl_IBasicOperations* GetOperations() { return (::GEOMImpl_IBasicOperations*)GetImpl(); }
 };