X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FGEOM_I_Superv%2FGEOM_Superv_i.cc;h=2762674fed62f3dbd53d1db0a1fe47146f51995f;hb=d2046800b5f3ab6a56c3b9a72766f5d317a235e7;hp=159bb6f4997a021ac5aa51250174cdb690ccab06;hpb=392885c1a8d50369708bbe5e6b44033ed8b8ba51;p=modules%2Fgeom.git diff --git a/src/GEOM_I_Superv/GEOM_Superv_i.cc b/src/GEOM_I_Superv/GEOM_Superv_i.cc index 159bb6f49..2762674fe 100644 --- a/src/GEOM_I_Superv/GEOM_Superv_i.cc +++ b/src/GEOM_I_Superv/GEOM_Superv_i.cc @@ -473,6 +473,20 @@ SALOMEDS::SObject_ptr GEOM_Superv_i::PublishInStudy(SALOMEDS::Study_ptr theStudy return myGeomEngine->PublishInStudy(theStudy, theSObject, theObject, theName); } +//============================================================================ +// function : PublishNamedShapesInStudy +// purpose : +//============================================================================ +GEOM::ListOfGO* +GEOM_Superv_i::PublishNamedShapesInStudy(SALOMEDS::Study_ptr theStudy, + //SALOMEDS::SObject_ptr theSObject, + CORBA::Object_ptr theObject) +{ + if (CORBA::is_nil(myGeomEngine)) + setGeomEngine(); + return myGeomEngine->PublishNamedShapesInStudy(theStudy, theObject); +} + //============================================================================ // function : CanCopy() // purpose : @@ -560,6 +574,58 @@ GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnCurve (GEOM::GEOM_Object_ptr the return anObj; } +//============================================================================= +// MakePointOnCurveByCoord +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnCurveByCoord (GEOM::GEOM_Object_ptr theRefCurve, + CORBA::Double theXParameter, + CORBA::Double theYParameter, + CORBA::Double theZParameter) +{ + beginService( " GEOM_Superv_i::MakePointOnCurveByCoord" ); + MESSAGE("GEOM_Superv_i::MakePointOnCurveByCoord"); + getBasicOp(); + GEOM::GEOM_Object_ptr anObj = + myBasicOp->MakePointOnCurveByCoord(theRefCurve, theXParameter, + theYParameter, theZParameter); + endService( " GEOM_Superv_i::MakePointOnCurveByCoord" ); + return anObj; +} + +//============================================================================= +// MakePointOnSurface: +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnSurface (GEOM::GEOM_Object_ptr theRefSurface, + CORBA::Double theUParameter, + CORBA::Double theVParameter) +{ + beginService( " GEOM_Superv_i::MakePointOnSurface" ); + MESSAGE("GEOM_Superv_i::MakePointOnSurface"); + getBasicOp(); + GEOM::GEOM_Object_ptr anObj = + myBasicOp->MakePointOnSurface(theRefSurface, theUParameter, theVParameter); + endService( " GEOM_Superv_i::MakePointOnSurface" ); + return anObj; +} + +//============================================================================= +// MakePointOnSurfaceByCoord +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnSurfaceByCoord (GEOM::GEOM_Object_ptr theRefSurface, + CORBA::Double theXParameter, + CORBA::Double theYParameter, + CORBA::Double theZParameter) +{ + beginService( " GEOM_Superv_i::MakePointOnSurfaceByCoord" ); + MESSAGE("GEOM_Superv_i::MakePointOnSurfaceByCoord"); + getBasicOp(); + GEOM::GEOM_Object_ptr anObj = + myBasicOp->MakePointOnSurfaceByCoord(theRefSurface, theXParameter, + theYParameter, theZParameter); + endService( " GEOM_Superv_i::MakePointOnSurfaceByCoord" ); + return anObj; +} + //============================================================================= // MakePointOnLinesIntersection: //============================================================================= @@ -690,6 +756,36 @@ GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePlaneFace (GEOM::GEOM_Object_ptr theFac return anObj; } +//============================================================================= +// MakePlane2Vec: +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePlane2Vec (GEOM::GEOM_Object_ptr theVec1, + GEOM::GEOM_Object_ptr theVec2, + CORBA::Double theTrimSize) +{ + beginService( " GEOM_Superv_i::MakePlane2Vec" ); + MESSAGE("GEOM_Superv_i::MakePlane2Vec"); + getBasicOp(); + GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePlane2Vec(theVec1, theVec2, theTrimSize); + endService( " GEOM_Superv_i::MakePlane2Vec" ); + return anObj; +} + +//============================================================================= +// MakePlaneLCS: +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePlaneLCS (GEOM::GEOM_Object_ptr theLCS, + CORBA::Double theTrimSize, + CORBA::Double theOrientation) +{ + beginService( " GEOM_Superv_i::MakePlaneLCS" ); + MESSAGE("GEOM_Superv_i::MakePlaneLCS"); + getBasicOp(); + GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePlaneLCS(theLCS, theTrimSize, theOrientation); + endService( " GEOM_Superv_i::MakePlaneLCS" ); + return anObj; +} + //============================================================================= // MakeMarker: //============================================================================= @@ -1856,14 +1952,15 @@ GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeEdge (GEOM::GEOM_Object_ptr thePnt1, //============================================================================= // MakeWire: //============================================================================= -GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeWire (GEOM::GEOM_List_ptr theEdgesAndWires) +GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeWire (GEOM::GEOM_List_ptr theEdgesAndWires, + CORBA::Double theTolerance) { beginService( " GEOM_Superv_i::MakeWire" ); MESSAGE("GEOM_Superv_i::MakeWire"); if (GEOM_List_i* aListImplEW = dynamic_cast*>(GetServant(theEdgesAndWires, myPOA).in())) { getShapesOp(); - GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeWire(aListImplEW->GetList()); + GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeWire(aListImplEW->GetList(), theTolerance); endService( " GEOM_Superv_i::MakeWire" ); return anObj; } @@ -2532,6 +2629,23 @@ GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeEllipse (GEOM::GEOM_Object_ptr theCente return anObj; } +//============================================================================= +// MakeEllipseVec: +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeEllipseVec (GEOM::GEOM_Object_ptr theCenter, + GEOM::GEOM_Object_ptr theVector, + CORBA::Double theRMajor, + CORBA::Double theRMinor, + GEOM::GEOM_Object_ptr theVectorMajor) +{ + beginService( " GEOM_Superv_i::MakeEllipseVec" ); + MESSAGE("GEOM_Superv_i::MakeEllipseVec"); + getCurvesOp(); + GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeEllipseVec(theCenter, theVector, theRMajor, theRMinor, theVectorMajor); + endService( " GEOM_Superv_i::MakeEllipseVec" ); + return anObj; +} + //============================================================================= // MakeArc: //============================================================================= @@ -2617,14 +2731,15 @@ GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSplineBezier (GEOM::GEOM_List_ptr thePo //============================================================================= // MakeSplineInterpolation: //============================================================================= -GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSplineInterpolation (GEOM::GEOM_List_ptr thePoints) +GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSplineInterpolation (GEOM::GEOM_List_ptr thePoints, + CORBA::Boolean theIsClosed) { beginService( " GEOM_Superv_i::MakeSplineInterpolation" ); MESSAGE("GEOM_Superv_i::MakeSplineInterpolation"); if (GEOM_List_i* aListImplP = dynamic_cast*>(GetServant(thePoints, myPOA).in())) { getCurvesOp(); - GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeSplineInterpolation(aListImplP->GetList()); + GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeSplineInterpolation(aListImplP->GetList(), theIsClosed); endService( " GEOM_Superv_i::MakeSplineInterpolation" ); return anObj; } @@ -2788,6 +2903,26 @@ GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFillet2D (GEOM::GEOM_Object_ptr theShap return NULL; } +//============================================================================= +// MakeFillet1D: +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFillet1D (GEOM::GEOM_Object_ptr theShape, + CORBA::Double theR, + GEOM::GEOM_List_ptr theVertexes) +{ + beginService( " GEOM_Superv_i::MakeFillet1D" ); + MESSAGE("GEOM_Superv_i::MakeFillet1D"); + if (GEOM_List_i* aListImplV = + dynamic_cast*>(GetServant(theVertexes, myPOA).in())) { + getLocalOp(); + GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFillet1D(theShape, theR, aListImplV->GetList()); + endService( " GEOM_Superv_i::MakeFillet1D" ); + return anObj; + } + endService( " GEOM_Superv_i::MakeFillet1D" ); + return NULL; +} + //============================================================================= // MakeChamferAll: //=============================================================================