1 // Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE
3 // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
6 // This library is free software; you can redistribute it and/or
7 // modify it under the terms of the GNU Lesser General Public
8 // License as published by the Free Software Foundation; either
9 // version 2.1 of the License.
11 // This library is distributed in the hope that it will be useful,
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 // Lesser General Public License for more details.
16 // You should have received a copy of the GNU Lesser General Public
17 // License along with this library; if not, write to the Free Software
18 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
22 #include "GEOM_Superv_i.hh"
23 #include "SALOME_LifeCycleCORBA.hxx"
25 #include CORBA_SERVER_HEADER(SALOME_Session)
26 #include "SALOMEDSClient_ClientFactory.hxx"
28 #define isNewStudy(a,b) (a > 0 && a != b)
31 //=============================================================================
33 //=============================================================================
34 GEOM_Superv_i::GEOM_Superv_i(CORBA::ORB_ptr orb,
35 PortableServer::POA_ptr poa,
36 PortableServer::ObjectId * contId,
37 const char *instanceName,
38 const char *interfaceName) :
39 Engines_Component_i(orb, poa, contId, instanceName, interfaceName)
41 MESSAGE("GEOM_Superv_i::GEOM_Superv_i");
44 _id = _poa->activate_object(_thisObj);
45 name_service = new SALOME_NamingService(_orb);
46 //get RootPOA (the default)
47 //myPOA = PortableServer::RefCountServantBase::_default_POA();
48 CORBA::Object_var anObj = _orb->resolve_initial_references("RootPOA");
49 myPOA = PortableServer::POA::_narrow(anObj);
56 myBasicOp = GEOM::GEOM_IBasicOperations::_nil();
57 my3DPrimOp = GEOM::GEOM_I3DPrimOperations::_nil();
58 myBoolOp = GEOM::GEOM_IBooleanOperations::_nil();
59 myInsOp = GEOM::GEOM_IInsertOperations::_nil();
60 myTransfOp = GEOM::GEOM_ITransformOperations::_nil();
61 myShapesOp = GEOM::GEOM_IShapesOperations::_nil();
62 myBlocksOp = GEOM::GEOM_IBlocksOperations::_nil();
63 myCurvesOp = GEOM::GEOM_ICurvesOperations::_nil();
64 myLocalOp = GEOM::GEOM_ILocalOperations::_nil();
65 myGroupOp = GEOM::GEOM_IGroupOperations::_nil();
68 //=============================================================================
70 //=============================================================================
71 GEOM_Superv_i::~GEOM_Superv_i()
73 MESSAGE("GEOM_Superv_i::~GEOM_Superv_i");
74 if (!CORBA::is_nil(myBasicOp))
76 if (!CORBA::is_nil(myBoolOp))
78 if (!CORBA::is_nil(my3DPrimOp))
79 my3DPrimOp->Destroy();
83 //============================================================================
84 // function : register()
85 // purpose : register 'name' in 'name_service'
86 //============================================================================
87 void GEOM_Superv_i::register_name(char * name)
89 GEOM::GEOM_Superv_var g = _this();
90 name_service->Register(g, name);
93 //=============================================================================
95 //=============================================================================
96 void GEOM_Superv_i::setGeomEngine()
98 if ( !CORBA::is_nil(myGeomEngine) )
101 // get GEOM_Gen engine
102 Engines::Container_var cont=GetContainerRef();
103 CORBA::String_var container_name=cont->name();
104 std::string shortName=container_name.in();
105 shortName=shortName.substr(12); // substract "/Containers/"
106 SALOME_LifeCycleCORBA* lcc = new SALOME_LifeCycleCORBA( name_service );
107 Engines::Component_var comp = lcc->FindOrLoad_Component( shortName.c_str(), "GEOM" );
110 myGeomEngine = GEOM::GEOM_Gen::_narrow(comp);
113 //=============================================================================
115 //=============================================================================
116 void GEOM_Superv_i::SetStudyID( CORBA::Long theId )
118 // mkr : PAL10770 -->
119 myLastStudyID = myStudyID;
121 CORBA::Object_ptr anObject = name_service->Resolve("/Kernel/Session");
122 if ( !CORBA::is_nil(anObject) ) {
123 SALOME::Session_var aSession = SALOME::Session::_narrow(anObject);
124 if ( !CORBA::is_nil(aSession) ) {
125 int aStudyID = aSession->GetActiveStudyId();
126 if ( theId != aStudyID && aStudyID > 0) { // mkr : IPAL12128
127 MESSAGE("Warning : given study ID theId="<<theId<<" is wrong and will be replaced by the value "<<aStudyID);
128 myStudyID = aStudyID;
131 myStudyID = theId; // mkr : IPAL12128
135 if ( isNewStudy(myLastStudyID,myStudyID) ) {
136 if (CORBA::is_nil(myGeomEngine)) setGeomEngine();
137 string anEngine = _orb->object_to_string( myGeomEngine );
139 CORBA::Object_var anObj = name_service->Resolve("/myStudyManager");
140 if ( !CORBA::is_nil(anObj) ) {
141 SALOMEDS::StudyManager_var aStudyManager = SALOMEDS::StudyManager::_narrow(anObj);
142 if ( !CORBA::is_nil(aStudyManager) ) {
143 _PTR(Study) aDSStudy = ClientFactory::Study(aStudyManager->GetStudyByID(myStudyID));
145 _PTR(SComponent) aSCO = aDSStudy->FindComponent(myGeomEngine->ComponentDataType());
147 _PTR(StudyBuilder) aBuilder = aDSStudy->NewBuilder();
148 if ( aBuilder ) aBuilder->LoadWith( aSCO, anEngine );
154 // mkr : PAL10770 <--
157 //=============================================================================
159 //=============================================================================
160 GEOM::GEOM_List_ptr GEOM_Superv_i::CreateListOfGO()
162 MESSAGE("GEOM_Superv_i::CreateListOfGO()");
163 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>();
164 return aListPtr->_this();
167 //=============================================================================
168 // AddItemToListOfGO:
169 //=============================================================================
170 void GEOM_Superv_i::AddItemToListOfGO(GEOM::GEOM_List_ptr& theList,
171 GEOM::GEOM_Object_ptr theObject)
173 MESSAGE("GEOM_Superv_i::AddItemToListOfGO(...)");
174 if (GEOM_List_i<GEOM::ListOfGO>* aList =
175 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theList, myPOA).in())) {
176 aList->AddObject(theObject);
177 MESSAGE(" NewLength = "<<aList->GetList().length());
181 //=============================================================================
183 //=============================================================================
184 GEOM::GEOM_List_ptr GEOM_Superv_i::CreateListOfLong()
186 MESSAGE("GEOM_Superv_i::CreateListOfLong()");
187 GEOM_List_i<GEOM::ListOfLong>* aListPtr = new GEOM_List_i<GEOM::ListOfLong>();
188 return aListPtr->_this();
191 //=============================================================================
192 // AddItemToListOfLong:
193 //=============================================================================
194 void GEOM_Superv_i::AddItemToListOfLong(GEOM::GEOM_List_ptr& theList,
195 CORBA::Long theObject)
197 MESSAGE("GEOM_Superv_i::AddItemToListOfLong(...)");
198 if (GEOM_List_i<GEOM::ListOfLong>* aList =
199 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theList, myPOA).in())) {
200 aList->AddObject(theObject);
201 MESSAGE(" NewLength = "<<aList->GetList().length());
205 //=============================================================================
206 // CreateListOfDouble:
207 //=============================================================================
208 GEOM::GEOM_List_ptr GEOM_Superv_i::CreateListOfDouble()
210 MESSAGE("GEOM_Superv_i::CreateListOfDouble()");
211 GEOM_List_i<GEOM::ListOfDouble>* aListPtr = new GEOM_List_i<GEOM::ListOfDouble>();
212 return aListPtr->_this();
215 //=============================================================================
216 // AddItemToListOfDouble:
217 //=============================================================================
218 void GEOM_Superv_i::AddItemToListOfDouble(GEOM::GEOM_List_ptr& theList,
219 CORBA::Double theObject)
221 MESSAGE("GEOM_Superv_i::AddItemToListOfDouble(...)");
222 if (GEOM_List_i<GEOM::ListOfDouble>* aList =
223 dynamic_cast<GEOM_List_i<GEOM::ListOfDouble>*>(GetServant(theList, myPOA).in())) {
224 aList->AddObject(theObject);
225 MESSAGE(" NewLength = "<<aList->GetList().length());
229 //=============================================================================
231 //=============================================================================
232 void GEOM_Superv_i::getBasicOp()
234 if (CORBA::is_nil(myGeomEngine))
236 // get GEOM_IBasicOperations interface
237 if (CORBA::is_nil(myBasicOp) || isNewStudy(myLastStudyID,myStudyID))
238 myBasicOp = myGeomEngine->GetIBasicOperations(myStudyID);
241 //=============================================================================
243 //=============================================================================
244 void GEOM_Superv_i::get3DPrimOp()
246 if (CORBA::is_nil(myGeomEngine))
248 // get GEOM_I3DPrimOperations interface
249 if (CORBA::is_nil(my3DPrimOp) || isNewStudy(myLastStudyID,myStudyID))
250 my3DPrimOp = myGeomEngine->GetI3DPrimOperations(myStudyID);
253 //=============================================================================
255 //=============================================================================
256 void GEOM_Superv_i::getBoolOp()
258 if (CORBA::is_nil(myGeomEngine))
260 // get GEOM_IBooleanOperations interface
261 if (CORBA::is_nil(myBoolOp) || isNewStudy(myLastStudyID,myStudyID))
262 myBoolOp = myGeomEngine->GetIBooleanOperations(myStudyID);
265 //=============================================================================
267 //=============================================================================
268 void GEOM_Superv_i::getInsOp()
270 if (CORBA::is_nil(myGeomEngine))
272 // get GEOM_IInsertOperations interface
273 if (CORBA::is_nil(myInsOp) || isNewStudy(myLastStudyID,myStudyID))
274 myInsOp = myGeomEngine->GetIInsertOperations(myStudyID);
277 //=============================================================================
279 //=============================================================================
280 void GEOM_Superv_i::getTransfOp()
282 if (CORBA::is_nil(myGeomEngine))
284 // get GEOM_ITransformOperations interface
285 if (CORBA::is_nil(myTransfOp) || isNewStudy(myLastStudyID,myStudyID))
286 myTransfOp = myGeomEngine->GetITransformOperations(myStudyID);
289 //=============================================================================
291 //=============================================================================
292 void GEOM_Superv_i::getShapesOp()
294 if (CORBA::is_nil(myGeomEngine))
296 // get GEOM_IShapesOperations interface
297 if (CORBA::is_nil(myShapesOp) || isNewStudy(myLastStudyID,myStudyID))
298 myShapesOp = myGeomEngine->GetIShapesOperations(myStudyID);
301 //=============================================================================
303 //=============================================================================
304 void GEOM_Superv_i::getBlocksOp()
306 if (CORBA::is_nil(myGeomEngine))
308 // get GEOM_IBlocksOperations interface
309 if (CORBA::is_nil(myBlocksOp) || isNewStudy(myLastStudyID,myStudyID))
310 myBlocksOp = myGeomEngine->GetIBlocksOperations(myStudyID);
313 //=============================================================================
315 //=============================================================================
316 void GEOM_Superv_i::getCurvesOp()
318 if (CORBA::is_nil(myGeomEngine))
320 // get GEOM_ICurvesOperations interface
321 if (CORBA::is_nil(myCurvesOp) || isNewStudy(myLastStudyID,myStudyID))
322 myCurvesOp = myGeomEngine->GetICurvesOperations(myStudyID);
325 //=============================================================================
327 //=============================================================================
328 void GEOM_Superv_i::getLocalOp()
330 if (CORBA::is_nil(myGeomEngine))
332 // get GEOM_ILocalOperations interface
333 if (CORBA::is_nil(myLocalOp) || isNewStudy(myLastStudyID,myStudyID))
334 myLocalOp = myGeomEngine->GetILocalOperations(myStudyID);
337 //=============================================================================
339 //=============================================================================
340 void GEOM_Superv_i::getGroupOp()
342 if (CORBA::is_nil(myGeomEngine))
344 // get GEOM_IGroupOperations interface
345 if (CORBA::is_nil(myGroupOp) || isNewStudy(myLastStudyID,myStudyID))
346 myGroupOp = myGeomEngine->GetIGroupOperations(myStudyID);
349 //=============================================================================
351 //=============================================================================
352 PortableServer::ServantBase_var GEOM_Superv_i::GetServant(CORBA::Object_ptr theObject,
353 PortableServer::POA_ptr thePOA)
355 if(CORBA::is_nil(theObject)) return NULL;
356 PortableServer::Servant aServant = thePOA->reference_to_servant(theObject);
360 //============================================================================
362 // purpose : save OCAF/Geom document
363 //============================================================================
364 SALOMEDS::TMPFile* GEOM_Superv_i::Save(SALOMEDS::SComponent_ptr theComponent,
366 CORBA::Boolean isMultiFile)
368 SALOMEDS::TMPFile_var aStreamFile;
369 return aStreamFile._retn();
372 //============================================================================
373 // function : SaveASCII()
375 //============================================================================
376 SALOMEDS::TMPFile* GEOM_Superv_i::SaveASCII(SALOMEDS::SComponent_ptr theComponent,
378 CORBA::Boolean isMultiFile)
380 SALOMEDS::TMPFile_var aStreamFile;
381 return aStreamFile._retn();
384 //============================================================================
387 //============================================================================
388 CORBA::Boolean GEOM_Superv_i::Load(SALOMEDS::SComponent_ptr theComponent,
389 const SALOMEDS::TMPFile& theStream,
391 CORBA::Boolean isMultiFile)
396 //============================================================================
397 // function : LoadASCII()
399 //============================================================================
400 CORBA::Boolean GEOM_Superv_i::LoadASCII(SALOMEDS::SComponent_ptr theComponent,
401 const SALOMEDS::TMPFile& theStream,
403 CORBA::Boolean isMultiFile)
408 //============================================================================
409 // function : Close()
411 //============================================================================
412 void GEOM_Superv_i::Close(SALOMEDS::SComponent_ptr theComponent)
416 //============================================================================
417 // function : ComponentDataType()
419 //============================================================================
420 char* GEOM_Superv_i::ComponentDataType()
425 //============================================================================
426 // function : IORToLocalPersistentID()
428 //============================================================================
429 char* GEOM_Superv_i::IORToLocalPersistentID(SALOMEDS::SObject_ptr theSObject,
430 const char* IORString,
431 CORBA::Boolean isMultiFile,
432 CORBA::Boolean isASCII)
437 //============================================================================
438 // function : LocalPersistentIDToIOR()
439 // purpose : Create/Load CORBA object from a persistent ref (an entry)
440 // : Used when a study is loaded
441 // : The IOR (IORName) of object created is returned
442 //============================================================================
443 char* GEOM_Superv_i::LocalPersistentIDToIOR(SALOMEDS::SObject_ptr theSObject,
444 const char* aLocalPersistentID,
445 CORBA::Boolean isMultiFile,
446 CORBA::Boolean isASCII)
451 //============================================================================
452 // function : CanPublishInStudy
454 //============================================================================
455 CORBA::Boolean GEOM_Superv_i::CanPublishInStudy(CORBA::Object_ptr theIOR)
457 if (CORBA::is_nil(myGeomEngine))
459 return myGeomEngine->CanPublishInStudy(theIOR);
462 //============================================================================
463 // function : PublishInStudy
465 //============================================================================
466 SALOMEDS::SObject_ptr GEOM_Superv_i::PublishInStudy(SALOMEDS::Study_ptr theStudy,
467 SALOMEDS::SObject_ptr theSObject,
468 CORBA::Object_ptr theObject,
469 const char* theName) throw (SALOME::SALOME_Exception)
471 if (CORBA::is_nil(myGeomEngine))
473 return myGeomEngine->PublishInStudy(theStudy, theSObject, theObject, theName);
476 //============================================================================
477 // function : PublishNamedShapesInStudy
479 //============================================================================
481 GEOM_Superv_i::PublishNamedShapesInStudy(SALOMEDS::Study_ptr theStudy,
482 //SALOMEDS::SObject_ptr theSObject,
483 CORBA::Object_ptr theObject)
485 if (CORBA::is_nil(myGeomEngine))
487 return myGeomEngine->PublishNamedShapesInStudy(theStudy, theObject);
490 //============================================================================
491 // function : CanCopy()
493 //============================================================================
494 CORBA::Boolean GEOM_Superv_i::CanCopy(SALOMEDS::SObject_ptr theObject)
499 //============================================================================
500 // function : CopyFrom()
502 //============================================================================
503 SALOMEDS::TMPFile* GEOM_Superv_i::CopyFrom(SALOMEDS::SObject_ptr theObject, CORBA::Long& theObjectID)
505 SALOMEDS::TMPFile_var aStreamFile;
506 return aStreamFile._retn();
509 //============================================================================
510 // function : CanPaste()
512 //============================================================================
513 CORBA::Boolean GEOM_Superv_i::CanPaste(const char* theComponentName, CORBA::Long theObjectID)
518 //============================================================================
519 // function : PasteInto()
521 //============================================================================
522 SALOMEDS::SObject_ptr GEOM_Superv_i::PasteInto(const SALOMEDS::TMPFile& theStream,
523 CORBA::Long theObjectID,
524 SALOMEDS::SObject_ptr theObject)
526 SALOMEDS::SObject_var aNewSO;
527 return aNewSO._retn();
530 //================= Primitives Construction : BasicOperations =================
531 //=============================================================================
533 //=============================================================================
534 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointXYZ(CORBA::Double theX,
538 beginService( " GEOM_Superv_i::MakePointXYZ" );
539 MESSAGE("GEOM_Superv_i::MakePointXYZ");
541 // make vertex and return
542 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePointXYZ(theX, theY, theZ);
543 endService( " GEOM_Superv_i::MakePointXYZ" );
547 //=============================================================================
548 // MakePointWithReference:
549 //=============================================================================
550 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointWithReference (GEOM::GEOM_Object_ptr theReference,
555 beginService( " GEOM_Superv_i::MakePointWithReference" );
556 MESSAGE("GEOM_Superv_i::MakePointWithReference");
558 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePointWithReference(theReference, theX, theY, theZ);
559 endService( " GEOM_Superv_i::MakePointWithReference" );
563 //=============================================================================
565 //=============================================================================
566 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnCurve (GEOM::GEOM_Object_ptr theRefCurve,
567 CORBA::Double theParameter)
569 beginService( " GEOM_Superv_i::MakePointOnCurve" );
570 MESSAGE("GEOM_Superv_i::MakePointOnCurve");
572 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePointOnCurve(theRefCurve, theParameter);
573 endService( " GEOM_Superv_i::MakePointOnCurve" );
577 //=============================================================================
578 // MakePointOnCurveByCoord
579 //=============================================================================
580 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnCurveByCoord (GEOM::GEOM_Object_ptr theRefCurve,
581 CORBA::Double theXParameter,
582 CORBA::Double theYParameter,
583 CORBA::Double theZParameter)
585 beginService( " GEOM_Superv_i::MakePointOnCurveByCoord" );
586 MESSAGE("GEOM_Superv_i::MakePointOnCurveByCoord");
588 GEOM::GEOM_Object_ptr anObj =
589 myBasicOp->MakePointOnCurveByCoord(theRefCurve, theXParameter,
590 theYParameter, theZParameter);
591 endService( " GEOM_Superv_i::MakePointOnCurveByCoord" );
595 //=============================================================================
596 // MakePointOnSurface:
597 //=============================================================================
598 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnSurface (GEOM::GEOM_Object_ptr theRefSurface,
599 CORBA::Double theUParameter,
600 CORBA::Double theVParameter)
602 beginService( " GEOM_Superv_i::MakePointOnSurface" );
603 MESSAGE("GEOM_Superv_i::MakePointOnSurface");
605 GEOM::GEOM_Object_ptr anObj =
606 myBasicOp->MakePointOnSurface(theRefSurface, theUParameter, theVParameter);
607 endService( " GEOM_Superv_i::MakePointOnSurface" );
611 //=============================================================================
612 // MakePointOnSurfaceByCoord
613 //=============================================================================
614 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnSurfaceByCoord (GEOM::GEOM_Object_ptr theRefSurface,
615 CORBA::Double theXParameter,
616 CORBA::Double theYParameter,
617 CORBA::Double theZParameter)
619 beginService( " GEOM_Superv_i::MakePointOnSurfaceByCoord" );
620 MESSAGE("GEOM_Superv_i::MakePointOnSurfaceByCoord");
622 GEOM::GEOM_Object_ptr anObj =
623 myBasicOp->MakePointOnSurfaceByCoord(theRefSurface, theXParameter,
624 theYParameter, theZParameter);
625 endService( " GEOM_Superv_i::MakePointOnSurfaceByCoord" );
629 //=============================================================================
630 // MakePointOnLinesIntersection:
631 //=============================================================================
632 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnLinesIntersection (GEOM::GEOM_Object_ptr theRefLine1,
633 GEOM::GEOM_Object_ptr theRefLine2)
635 beginService( " GEOM_Superv_i::MakePointOnLinesIntersection" );
636 MESSAGE("GEOM_Superv_i::MakePointOnLinesIntersection");
638 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePointOnLinesIntersection(theRefLine1, theRefLine2);
639 endService( " GEOM_Superv_i::MakePointOnLinesIntersection" );
643 //=============================================================================
644 // MakeTangentOnCurve:
645 //=============================================================================
646 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeTangentOnCurve (GEOM::GEOM_Object_ptr theRefCurve,
647 CORBA::Double theParameter)
649 beginService( " GEOM_Superv_i::MakeTangentOnCurve" );
650 MESSAGE("GEOM_Superv_i::MakeTangentOnCurve");
652 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeTangentOnCurve(theRefCurve, theParameter);
653 endService( " GEOM_Superv_i::MakeTangentOnCurve" );
657 //=============================================================================
659 //=============================================================================
660 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeVectorDXDYDZ (CORBA::Double theDX,
664 beginService( " GEOM_Superv_i::MakeVectorDXDYDZ" );
665 MESSAGE("GEOM_Superv_i::MakeVectorDXDYDZ");
667 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeVectorDXDYDZ(theDX, theDY, theDZ);
668 endService( " GEOM_Superv_i::MakeVectorDXDYDZ" );
672 //=============================================================================
674 //=============================================================================
675 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeVectorTwoPnt (GEOM::GEOM_Object_ptr thePnt1,
676 GEOM::GEOM_Object_ptr thePnt2)
678 beginService( " GEOM_Superv_i::MakeVectorTwoPnt" );
679 MESSAGE("GEOM_Superv_i::MakeVector");
681 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeVectorTwoPnt(thePnt1, thePnt2);
682 endService( " GEOM_Superv_i::MakeVectorTwoPnt" );
686 //=============================================================================
688 //=============================================================================
689 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeLineTwoPnt (GEOM::GEOM_Object_ptr thePnt1,
690 GEOM::GEOM_Object_ptr thePnt2)
692 beginService( " GEOM_Superv_i::MakeLineTwoPnt");
693 MESSAGE("GEOM_Superv_i::MakeLineTwoPnt");
695 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeLineTwoPnt(thePnt1, thePnt2);
696 endService( " GEOM_Superv_i::MakeLineTwoPnt");
700 //=============================================================================
702 //=============================================================================
703 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeLineTwoFaces (GEOM::GEOM_Object_ptr theFace1,
704 GEOM::GEOM_Object_ptr theFace2)
706 beginService( " GEOM_Superv_i::MakeLineTwoFaces");
707 MESSAGE("GEOM_Superv_i::MakeLineTwoFaces");
709 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeLineTwoFaces(theFace1, theFace2);
710 endService( " GEOM_Superv_i::MakeLineTwoFaces");
714 //=============================================================================
715 // MakePlaneThreePnt:
716 //=============================================================================
717 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePlaneThreePnt (GEOM::GEOM_Object_ptr thePnt1,
718 GEOM::GEOM_Object_ptr thePnt2,
719 GEOM::GEOM_Object_ptr thePnt3,
720 CORBA::Double theTrimSize)
722 beginService( " GEOM_Superv_i::MakePlaneThreePnt");
723 MESSAGE("GEOM_Superv_i::MakePlaneThreePnt");
725 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePlaneThreePnt(thePnt1, thePnt2, thePnt3, theTrimSize);
726 endService( " GEOM_Superv_i::MakePlaneThreePnt");
730 //=============================================================================
732 //=============================================================================
733 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePlanePntVec (GEOM::GEOM_Object_ptr thePnt,
734 GEOM::GEOM_Object_ptr theVec,
735 CORBA::Double theTrimSize)
737 beginService( " GEOM_Superv_i::MakePlanePntVec" );
738 MESSAGE("GEOM_Superv_i::MakePlanePntVec");
740 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePlanePntVec(thePnt, theVec, theTrimSize);
741 endService( " GEOM_Superv_i::MakePlanePntVec" );
745 //=============================================================================
747 //=============================================================================
748 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePlaneFace (GEOM::GEOM_Object_ptr theFace,
749 CORBA::Double theTrimSize)
751 beginService( " GEOM_Superv_i::MakePlaneFace" );
752 MESSAGE("GEOM_Superv_i::MakePlaneFace");
754 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePlaneFace(theFace, theTrimSize);
755 endService( " GEOM_Superv_i::MakePlaneFace" );
759 //=============================================================================
761 //=============================================================================
762 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePlane2Vec (GEOM::GEOM_Object_ptr theVec1,
763 GEOM::GEOM_Object_ptr theVec2,
764 CORBA::Double theTrimSize)
766 beginService( " GEOM_Superv_i::MakePlane2Vec" );
767 MESSAGE("GEOM_Superv_i::MakePlane2Vec");
769 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePlane2Vec(theVec1, theVec2, theTrimSize);
770 endService( " GEOM_Superv_i::MakePlane2Vec" );
774 //=============================================================================
776 //=============================================================================
777 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePlaneLCS (GEOM::GEOM_Object_ptr theLCS,
778 CORBA::Double theTrimSize,
779 CORBA::Double theOrientation)
781 beginService( " GEOM_Superv_i::MakePlaneLCS" );
782 MESSAGE("GEOM_Superv_i::MakePlaneLCS");
784 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePlaneLCS(theLCS, theTrimSize, theOrientation);
785 endService( " GEOM_Superv_i::MakePlaneLCS" );
789 //=============================================================================
791 //=============================================================================
792 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeMarker
793 (CORBA::Double theOX , CORBA::Double theOY , CORBA::Double theOZ,
794 CORBA::Double theXDX, CORBA::Double theXDY, CORBA::Double theXDZ,
795 CORBA::Double theYDX, CORBA::Double theYDY, CORBA::Double theYDZ)
797 beginService( " GEOM_Superv_i::MakeMarker" );
798 MESSAGE("GEOM_Superv_i::MakeMarker");
800 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeMarker(theOX, theOY, theOZ, theXDX, theXDY, theXDZ, theYDX, theYDY, theYDZ);
801 endService( " GEOM_Superv_i::MakeMarker" );
805 //=============================================================================
806 // MakeMarkerFromShape:
807 //=============================================================================
808 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeMarkerFromShape (GEOM::GEOM_Object_ptr theShape)
810 beginService( " GEOM_Superv_i::MakeMarkerFromShape" );
811 MESSAGE("GEOM_Superv_i::MakeMarkerFromShape");
813 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeMarkerFromShape(theShape);
814 endService( " GEOM_Superv_i::MakeMarkerFromShape" );
818 //=============================================================================
819 // MakeMarkerPntTwoVec:
820 //=============================================================================
821 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeMarkerPntTwoVec (GEOM::GEOM_Object_ptr theOrigin,
822 GEOM::GEOM_Object_ptr theXVec,
823 GEOM::GEOM_Object_ptr theYVec)
825 beginService( " GEOM_Superv_i::MakeMarkerPntTwoVec" );
826 MESSAGE("GEOM_Superv_i::MakeMarkerPntTwoVec");
828 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeMarkerPntTwoVec(theOrigin, theXVec, theYVec);
829 endService( " GEOM_Superv_i::MakeMarkerPntTwoVec" );
833 //=============================================================================
834 // MakeTangentPlaneOnFace:
835 //=============================================================================
836 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeTangentPlaneOnFace (GEOM::GEOM_Object_ptr theFace,
837 CORBA::Double theParameterU,
838 CORBA::Double theParameterV,
839 CORBA::Double theTrimSize)
841 beginService( " GEOM_Superv_i::MakeTangentPlaneOnFace" );
842 MESSAGE("GEOM_Superv_i::MakeTangentPlaneOnFace");
844 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeTangentPlaneOnFace(theFace, theParameterU,theParameterV,theTrimSize);
845 endService( " GEOM_Superv_i::MakeTangentPlaneOnFace" );
849 //================= Primitives Construction : 3DPrimOperations ================
850 //=============================================================================
852 //=============================================================================
853 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeBox (CORBA::Double theX1,
860 beginService( " GEOM_Superv_i::MakeBox" );
861 MESSAGE("GEOM_Superv_i::MakeBox");
864 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeBoxTwoPnt(myBasicOp->MakePointXYZ(theX1, theY1, theZ1),
865 myBasicOp->MakePointXYZ(theX2, theY2, theZ2));
866 endService( " GEOM_Superv_i::MakeBox" );
870 //=============================================================================
872 //=============================================================================
873 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeBoxDXDYDZ (CORBA::Double theDX,
877 beginService( " GEOM_Superv_i::MakeBoxDXDYDZ" );
878 MESSAGE("GEOM_Superv_i::MakeBoxDXDYDZ");
880 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeBoxDXDYDZ(theDX, theDY, theDZ);
881 endService( " GEOM_Superv_i::MakeBoxDXDYDZ" );
885 //=============================================================================
887 //=============================================================================
888 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeBoxTwoPnt (GEOM::GEOM_Object_ptr thePnt1,
889 GEOM::GEOM_Object_ptr thePnt2)
891 beginService( " GEOM_Superv_i::MakeBoxTwoPnt" );
892 MESSAGE("GEOM_Superv_i::MakeBoxTwoPnt");
894 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeBoxTwoPnt(thePnt1, thePnt2);
895 endService( " GEOM_Superv_i::MakeBoxTwoPnt" );
899 //=============================================================================
901 //=============================================================================
902 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFaceHW (CORBA::Double theH,
904 CORBA::Short theOrientation)
906 beginService( " GEOM_Superv_i::MakeFaceHW" );
907 MESSAGE("GEOM_Superv_i::MakeFaceHW");
909 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeFaceHW(theH, theW, theOrientation);
910 endService( " GEOM_Superv_i::MakeFaceHW" );
914 //=============================================================================
916 //=============================================================================
917 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFaceObjHW (GEOM::GEOM_Object_ptr theObj,
921 beginService( " GEOM_Superv_i::MakeFaceObjHW" );
922 MESSAGE("GEOM_Superv_i::MakeFaceObjHW");
924 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeFaceObjHW(theObj, theH, theW);
925 endService( " GEOM_Superv_i::MakeFaceObjHW" );
929 //=============================================================================
931 //=============================================================================
932 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeDiskPntVecR (GEOM::GEOM_Object_ptr theCenter,
933 GEOM::GEOM_Object_ptr theVector,
936 beginService( " GEOM_Superv_i::MakeDiskPntVecR" );
937 MESSAGE("GEOM_Superv_i::MakeDiskPntVecR");
939 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeDiskPntVecR(theCenter, theVector, theR);
940 endService( " GEOM_Superv_i::MakeDiskPntVecR" );
944 //=============================================================================
946 //=============================================================================
947 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeDiskThreePnt (GEOM::GEOM_Object_ptr thePnt1,
948 GEOM::GEOM_Object_ptr thePnt2,
949 GEOM::GEOM_Object_ptr thePnt3)
951 beginService( " GEOM_Superv_i::MakeDiskThreePnt" );
952 MESSAGE("GEOM_Superv_i::MakeDiskThreePnt");
954 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeDiskThreePnt(thePnt1, thePnt2, thePnt3);
955 endService( " GEOM_Superv_i::MakeDiskThreePnt" );
959 //=============================================================================
961 //=============================================================================
962 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeDiskR (CORBA::Double theR,
963 CORBA::Short theOrientation)
965 beginService( " GEOM_Superv_i::MakeDiskR" );
966 MESSAGE("GEOM_Superv_i::MakeDiskR");
968 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeDiskR(theR, theOrientation);
969 endService( " GEOM_Superv_i::MakeDiskR" );
973 //=============================================================================
974 // MakeCylinderPntVecRH:
975 //=============================================================================
976 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCylinderPntVecRH (GEOM::GEOM_Object_ptr thePnt,
977 GEOM::GEOM_Object_ptr theAxis,
978 CORBA::Double theRadius,
979 CORBA::Double theHeight)
981 beginService( " GEOM_Superv_i::MakeCylinderPntVecRH" );
982 MESSAGE("GEOM_Superv_i::MakeCylinderPntVecRH");
984 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeCylinderPntVecRH(thePnt, theAxis, theRadius, theHeight);
985 endService( " GEOM_Superv_i::MakeCylinderPntVecRH" );
989 //=============================================================================
991 //=============================================================================
992 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCylinderRH (CORBA::Double theR,
995 beginService( " GEOM_Superv_i::MakeCylinderRH" );
996 MESSAGE("GEOM_Superv_i::MakeCylinderRH");
998 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeCylinderRH(theR, theH);
999 endService( " GEOM_Superv_i::MakeCylinderRH" );
1003 //=============================================================================
1005 //=============================================================================
1006 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSphere (CORBA::Double theX,
1009 CORBA::Double theRadius)
1011 beginService( " GEOM_Superv_i::MakeSphepe" );
1012 MESSAGE("GEOM_Superv_i::MakeSphepe");
1015 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeSpherePntR(myBasicOp->MakePointXYZ(theX, theY, theZ), theRadius);
1016 endService( " GEOM_Superv_i::MakeSphepe" );
1020 //=============================================================================
1022 //=============================================================================
1023 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSphereR (CORBA::Double theR)
1025 beginService( " GEOM_Superv_i::MakeSphereR" );
1026 MESSAGE("GEOM_Superv_i::MakeSphereR");
1028 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeSphereR(theR);
1029 endService( " GEOM_Superv_i::MakeSphereR" );
1033 //=============================================================================
1035 //=============================================================================
1036 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSpherePntR (GEOM::GEOM_Object_ptr thePnt,
1039 beginService( " GEOM_Superv_i::MakeSpherePntR" );
1040 MESSAGE("GEOM_Superv_i::MakeSpherePntR");
1042 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeSpherePntR(thePnt, theR);
1043 endService( " GEOM_Superv_i::MakeSpherePntR" );
1047 //=============================================================================
1048 // MakeTorusPntVecRR:
1049 //=============================================================================
1050 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeTorusPntVecRR (GEOM::GEOM_Object_ptr thePnt,
1051 GEOM::GEOM_Object_ptr theVec,
1052 CORBA::Double theRMajor,
1053 CORBA::Double theRMinor)
1055 beginService( " GEOM_Superv_i::MakeTorusPntVecRR" );
1056 MESSAGE("GEOM_Superv_i::MakeTorusPntVecRR");
1058 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeTorusPntVecRR(thePnt, theVec, theRMajor, theRMinor);
1059 endService( " GEOM_Superv_i::MakeTorusPntVecRR" );
1063 //=============================================================================
1065 //=============================================================================
1066 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeTorusRR (CORBA::Double theRMajor,
1067 CORBA::Double theRMinor)
1069 beginService( " GEOM_Superv_i::MakeTorusRR" );
1070 MESSAGE("GEOM_Superv_i::MakeTorusRR");
1072 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeTorusRR(theRMajor, theRMinor);
1073 endService( " GEOM_Superv_i::MakeTorusRR" );
1077 //=============================================================================
1078 // MakeConePntVecR1R2H:
1079 //=============================================================================
1080 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeConePntVecR1R2H (GEOM::GEOM_Object_ptr thePnt,
1081 GEOM::GEOM_Object_ptr theAxis,
1082 CORBA::Double theR1,
1083 CORBA::Double theR2,
1084 CORBA::Double theHeight)
1086 beginService( " GEOM_Superv_i::MakeConePntVecR1R2H" );
1087 MESSAGE("GEOM_Superv_i::MakeConePntVecR1R2H");
1089 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeConePntVecR1R2H(thePnt, theAxis, theR1, theR2, theHeight);
1090 endService( " GEOM_Superv_i::MakeConePntVecR1R2H" );
1094 //=============================================================================
1096 //=============================================================================
1097 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeConeR1R2H (CORBA::Double theR1,
1098 CORBA::Double theR2,
1099 CORBA::Double theHeight)
1101 beginService( " GEOM_Superv_i::MakeConeR1R2H" );
1102 MESSAGE("GEOM_Superv_i::MakeConeR1R2H");
1104 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeConeR1R2H(theR1, theR2, theHeight);
1105 endService( " GEOM_Superv_i::MakeConeR1R2H" );
1109 //=============================================================================
1111 //=============================================================================
1112 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismVecH (GEOM::GEOM_Object_ptr theBase,
1113 GEOM::GEOM_Object_ptr theVec,
1116 beginService( " GEOM_Superv_i::MakePrismVecH" );
1117 MESSAGE("GEOM_Superv_i::MakePrismVecH");
1119 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismVecH(theBase, theVec, theH);
1120 endService( " GEOM_Superv_i::MakePrismVecH" );
1124 //=============================================================================
1125 // MakePrismVecH2Ways:
1126 //=============================================================================
1127 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismVecH2Ways (GEOM::GEOM_Object_ptr theBase,
1128 GEOM::GEOM_Object_ptr theVec,
1131 beginService( " GEOM_Superv_i::MakePrismVecH2Ways" );
1132 MESSAGE("GEOM_Superv_i::MakePrismVecH2Ways");
1134 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismVecH2Ways(theBase, theVec, theH);
1135 endService( " GEOM_Superv_i::MakePrismVecH2Ways" );
1139 //=============================================================================
1141 //=============================================================================
1142 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismTwoPnt (GEOM::GEOM_Object_ptr theBase,
1143 GEOM::GEOM_Object_ptr thePoint1,
1144 GEOM::GEOM_Object_ptr thePoint2)
1146 beginService( " GEOM_Superv_i::MakePrismTwoPnt" );
1147 MESSAGE("GEOM_Superv_i::MakePrismTwoPnt");
1149 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismTwoPnt(theBase, thePoint1, thePoint2);
1150 endService( " GEOM_Superv_i::MakePrismTwoPnt" );
1154 //=============================================================================
1155 // MakePrismTwoPnt2Ways:
1156 //=============================================================================
1157 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismTwoPnt2Ways (GEOM::GEOM_Object_ptr theBase,
1158 GEOM::GEOM_Object_ptr thePoint1,
1159 GEOM::GEOM_Object_ptr thePoint2)
1161 beginService( " GEOM_Superv_i::MakePrismTwoPnt2Ways" );
1162 MESSAGE("GEOM_Superv_i::MakePrismTwoPnt2Ways");
1164 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismTwoPnt2Ways(theBase, thePoint1, thePoint2);
1165 endService( " GEOM_Superv_i::MakePrismTwoPnt2Ways" );
1169 //=============================================================================
1171 //=============================================================================
1172 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismDXDYDZ (GEOM::GEOM_Object_ptr theBase,
1173 CORBA::Double theDX, CORBA::Double theDY, CORBA::Double theDZ)
1175 beginService( " GEOM_Superv_i::MakePrismDXDYDZ" );
1176 MESSAGE("GEOM_Superv_i::MakePrismDXDYDZ");
1178 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismDXDYDZ(theBase, theDX, theDY, theDZ);
1179 endService( " GEOM_Superv_i::MakePrismDXDYDZ" );
1183 //=============================================================================
1185 //=============================================================================
1186 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismDXDYDZ2Ways (GEOM::GEOM_Object_ptr theBase,
1187 CORBA::Double theDX, CORBA::Double theDY, CORBA::Double theDZ)
1189 beginService( " GEOM_Superv_i::MakePrismDXDYDZ2Ways" );
1190 MESSAGE("GEOM_Superv_i::MakePrismDXDYDZ2Ways");
1192 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismDXDYDZ2Ways(theBase, theDX, theDY, theDZ);
1193 endService( " GEOM_Superv_i::MakePrismDXDYDZ2Ways" );
1197 //=============================================================================
1199 //=============================================================================
1200 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePipe (GEOM::GEOM_Object_ptr theBase,
1201 GEOM::GEOM_Object_ptr thePath)
1203 beginService( " GEOM_Superv_i::MakePipe" );
1204 MESSAGE("GEOM_Superv_i::MakePipe");
1206 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePipe(theBase, thePath);
1207 endService( " GEOM_Superv_i::MakePipe" );
1211 //=============================================================================
1212 // MakeRevolutionAxisAngle:
1213 //=============================================================================
1214 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeRevolutionAxisAngle (GEOM::GEOM_Object_ptr theBase,
1215 GEOM::GEOM_Object_ptr theAxis,
1216 CORBA::Double theAngle)
1218 beginService( " GEOM_Superv_i::MakeRevolutionAxisAngle" );
1219 MESSAGE("GEOM_Superv_i::MakeRevolutionAxisAngle");
1221 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeRevolutionAxisAngle(theBase, theAxis, theAngle);
1222 endService( " GEOM_Superv_i::MakeRevolutionAxisAngle" );
1226 //=============================================================================
1227 // MakeRevolutionAxisAngle:
1228 //=============================================================================
1229 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeRevolutionAxisAngle2Ways (GEOM::GEOM_Object_ptr theBase,
1230 GEOM::GEOM_Object_ptr theAxis,
1231 CORBA::Double theAngle)
1233 beginService( " GEOM_Superv_i::MakeRevolutionAxisAngle2Ways" );
1234 MESSAGE("GEOM_Superv_i::MakeRevolutionAxisAngle2Ways");
1236 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeRevolutionAxisAngle2Ways(theBase, theAxis, theAngle);
1237 endService( " GEOM_Superv_i::MakeRevolutionAxisAngle2Ways" );
1241 //=============================================================================
1243 //=============================================================================
1244 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilling (GEOM::GEOM_Object_ptr theShape,
1245 CORBA::Long theMinDeg, CORBA::Long theMaxDeg,
1246 CORBA::Double theTol2D, CORBA::Double theTol3D,
1247 CORBA::Long theNbIter, CORBA::Boolean theApprox)
1249 beginService( " GEOM_Superv_i::MakeFilling" );
1250 MESSAGE("GEOM_Superv_i::MakeFilling");
1252 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeFilling(theShape, theMinDeg, theMaxDeg, theTol2D, theTol3D, theNbIter, theApprox);
1253 endService( " GEOM_Superv_i::MakeFilling" );
1257 //============================= BooleanOperations =============================
1258 //=============================================================================
1260 //=============================================================================
1261 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeBoolean (GEOM::GEOM_Object_ptr theShape1,
1262 GEOM::GEOM_Object_ptr theShape2,
1263 CORBA::Long theOperation)
1265 beginService( " GEOM_Superv_i::MakeBoolean" );
1266 // theOperation indicates the operation to be done:
1267 // 1 - Common, 2 - Cut, 3 - Fuse, 4 - Section
1268 MESSAGE("GEOM_Superv_i::MakeBoolean");
1270 GEOM::GEOM_Object_ptr anObj = myBoolOp->MakeBoolean(theShape1, theShape2, theOperation);
1271 endService( " GEOM_Superv_i::MakeBoolean" );
1275 //=============================================================================
1276 // MakeThruSections:
1277 //=============================================================================
1278 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeThruSections(const GEOM::ListOfGO& theSeqSections,
1279 CORBA::Boolean theModeSolid,
1280 CORBA::Double thePreci,
1281 CORBA::Boolean theRuled)
1283 beginService( " GEOM_Superv_i::MakeThruSections" );
1284 MESSAGE("GEOM_Superv_i::MakeThruSections");
1286 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeThruSections(theSeqSections, theModeSolid,thePreci,theRuled);
1287 endService( " GEOM_Superv_i::MakeThruSections" );
1291 //=============================================================================
1293 //=============================================================================
1294 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePipeWithDifferentSections
1295 (const GEOM::ListOfGO& theBases,
1296 const GEOM::ListOfGO& theLocations,
1297 GEOM::GEOM_Object_ptr thePath,
1298 CORBA::Boolean theWithContact,
1299 CORBA::Boolean theWithCorrections)
1301 beginService( " GEOM_Superv_i::MakePipeWithDifferentSections" );
1302 MESSAGE("GEOM_Superv_i::MakePipeWithDifferentSections");
1304 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePipeWithDifferentSections(theBases,theLocations, thePath,theWithContact,theWithCorrections);
1305 endService( " GEOM_Superv_i::MakePipeWithDifferentSections" );
1310 //=============================================================================
1312 //=============================================================================
1313 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePipeWithShellSections
1314 (const GEOM::ListOfGO& theBases,
1315 const GEOM::ListOfGO& theSubBases,
1316 const GEOM::ListOfGO& theLocations,
1317 GEOM::GEOM_Object_ptr thePath,
1318 CORBA::Boolean theWithContact,
1319 CORBA::Boolean theWithCorrections)
1321 beginService( " GEOM_Superv_i::MakePipeWithShellSections" );
1322 MESSAGE("GEOM_Superv_i::MakePipeWithShellSections");
1324 GEOM::GEOM_Object_ptr anObj =
1325 my3DPrimOp->MakePipeWithShellSections(theBases, theSubBases,
1326 theLocations, thePath,
1327 theWithContact, theWithCorrections);
1328 endService( " GEOM_Superv_i::MakePipeWithShellSections" );
1333 //=============================================================================
1335 //=============================================================================
1336 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePipeShellsWithoutPath
1337 (const GEOM::ListOfGO& theBases,
1338 const GEOM::ListOfGO& theLocations)
1340 beginService( " GEOM_Superv_i::MakePipeShellsWithoutPath" );
1341 MESSAGE("GEOM_Superv_i::MakePipeShellsWithoutPath");
1343 GEOM::GEOM_Object_ptr anObj =
1344 my3DPrimOp->MakePipeShellsWithoutPath(theBases,theLocations);
1345 endService( " GEOM_Superv_i::MakePipeShellsWithoutPath" );
1350 //=============================================================================
1352 //=============================================================================
1353 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePipeBiNormalAlongVector
1354 (GEOM::GEOM_Object_ptr theBase,
1355 GEOM::GEOM_Object_ptr thePath,
1356 GEOM::GEOM_Object_ptr theVec)
1358 beginService( " GEOM_Superv_i::MakePipeBiNormalAlongVector" );
1359 MESSAGE("GEOM_Superv_i::MakePipeBiNormalAlongVector");
1361 GEOM::GEOM_Object_ptr anObj =
1362 my3DPrimOp->MakePipeBiNormalAlongVector(theBase, thePath, theVec);
1363 endService( " GEOM_Superv_i::MakePipeBiNormalAlongVector" );
1368 //=============================================================================
1370 //=============================================================================
1371 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFuse (GEOM::GEOM_Object_ptr theShape1,
1372 GEOM::GEOM_Object_ptr theShape2)
1374 beginService( " GEOM_Superv_i::MakeFuse" );
1375 MESSAGE("GEOM_Superv_i::MakeFuse");
1377 GEOM::GEOM_Object_ptr anObj = myBoolOp->MakeBoolean(theShape1, theShape2, 3);
1378 endService( " GEOM_Superv_i::MakeFuse" );
1382 //=============================================================================
1384 //=============================================================================
1385 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePartition (GEOM::GEOM_List_ptr theShapes,
1386 GEOM::GEOM_List_ptr theTools,
1387 GEOM::GEOM_List_ptr theKeepInside,
1388 GEOM::GEOM_List_ptr theRemoveInside,
1389 CORBA::Short theLimit,
1390 CORBA::Boolean theRemoveWebs,
1391 GEOM::GEOM_List_ptr theMaterials,
1392 CORBA::Short theKeepNonlimitShapes)
1394 beginService( " GEOM_Superv_i::MakePartition" );
1395 MESSAGE("GEOM_Superv_i::MakePartition");
1396 GEOM_List_i<GEOM::ListOfGO>* aListImplS =
1397 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theShapes, myPOA).in());
1398 GEOM_List_i<GEOM::ListOfGO>* aListImplT =
1399 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theTools, myPOA).in());
1400 GEOM_List_i<GEOM::ListOfGO>* aListImplKI =
1401 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theKeepInside, myPOA).in());
1402 GEOM_List_i<GEOM::ListOfGO>* aListImplRI =
1403 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theRemoveInside, myPOA).in());
1404 GEOM_List_i<GEOM::ListOfLong>* aListImplM =
1405 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theMaterials, myPOA).in());
1406 if (aListImplS && aListImplT && aListImplKI && aListImplRI && aListImplM) {
1408 GEOM::GEOM_Object_ptr anObj =
1409 myBoolOp->MakePartition(aListImplS->GetList(), aListImplT->GetList(),
1410 aListImplKI->GetList(), aListImplRI->GetList(),
1411 theLimit, theRemoveWebs, aListImplM->GetList(),
1412 theKeepNonlimitShapes);
1413 endService( " GEOM_Superv_i::MakePartition" );
1416 endService( " GEOM_Superv_i::MakePartition" );
1420 //=============================================================================
1421 // MakeHalfPartition:
1422 //=============================================================================
1423 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeHalfPartition (GEOM::GEOM_Object_ptr theShape,
1424 GEOM::GEOM_Object_ptr thePlane)
1426 beginService( " GEOM_Superv_i::MakeHalfPartition" );
1427 MESSAGE("GEOM_Superv_i::MakeHalfPartition");
1429 GEOM::GEOM_Object_ptr anObj = myBoolOp->MakeHalfPartition(theShape, thePlane);
1430 endService( " GEOM_Superv_i::MakeHalfPartition" );
1434 //============================== InsertOperations =============================
1435 //=============================================================================
1437 //=============================================================================
1438 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCopy (GEOM::GEOM_Object_ptr theOriginal)
1440 beginService( " GEOM_Superv_i::MakeCopy" );
1441 MESSAGE("GEOM_Superv_i::MakeCopy");
1443 GEOM::GEOM_Object_ptr anObj = myInsOp->MakeCopy(theOriginal);
1444 endService( " GEOM_Superv_i::MakeCopy" );
1448 //=============================================================================
1450 //=============================================================================
1451 void GEOM_Superv_i::Export (GEOM::GEOM_Object_ptr theObject,
1452 const char* theFileName,
1453 const char* theFormatName)
1455 beginService( " GEOM_Superv_i::Export" );
1456 MESSAGE("GEOM_Superv_i::Export");
1458 myInsOp->Export(theObject, theFileName, theFormatName);
1459 endService( " GEOM_Superv_i::Export" );
1462 //=============================================================================
1464 //=============================================================================
1465 GEOM::GEOM_Object_ptr GEOM_Superv_i::Import (const char* theFileName,
1466 const char* theFormatName)
1468 beginService( " GEOM_Superv_i::Import" );
1469 MESSAGE("GEOM_Superv_i::Import");
1471 GEOM::GEOM_Object_ptr anObj = myInsOp->Import(theFileName, theFormatName);
1472 endService( " GEOM_Superv_i::Import" );
1476 //=============================================================================
1477 // ImportTranslators:
1478 //=============================================================================
1479 void GEOM_Superv_i::ImportTranslators (GEOM::string_array_out theFormats,
1480 GEOM::string_array_out thePatterns)
1482 beginService( " GEOM_Superv_i::ImportTranslators" );
1483 MESSAGE("GEOM_Superv_i::ImportTranslators");
1485 myInsOp->ImportTranslators(theFormats, thePatterns);
1486 endService( " GEOM_Superv_i::ImportTranslators" );
1489 //=============================================================================
1490 // ExportTranslators:
1491 //=============================================================================
1492 void GEOM_Superv_i::ExportTranslators (GEOM::string_array_out theFormats,
1493 GEOM::string_array_out thePatterns)
1495 beginService( " GEOM_Superv_i::ExportTranslators" );
1496 MESSAGE("GEOM_Superv_i::ExportTranslators");
1498 myInsOp->ExportTranslators(theFormats, thePatterns);
1499 endService( " GEOM_Superv_i::ExportTranslators" );
1502 //============================= TransformOperations ===========================
1503 //=============================================================================
1504 // TranslateTwoPoints:
1505 //=============================================================================
1506 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateTwoPoints (GEOM::GEOM_Object_ptr theObject,
1507 GEOM::GEOM_Object_ptr thePoint1,
1508 GEOM::GEOM_Object_ptr thePoint2)
1510 beginService( " GEOM_Superv_i::TranslateTwoPoints" );
1511 MESSAGE("GEOM_Superv_i::TranslateTwoPoints");
1513 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateTwoPoints(theObject, thePoint1, thePoint2);
1514 endService( " GEOM_Superv_i::TranslateTwoPoints" );
1518 //=============================================================================
1519 // TranslateTwoPointsCopy:
1520 //=============================================================================
1521 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateTwoPointsCopy (GEOM::GEOM_Object_ptr theObject,
1522 GEOM::GEOM_Object_ptr thePoint1,
1523 GEOM::GEOM_Object_ptr thePoint2)
1525 beginService( " GEOM_Superv_i::TranslateTwoPointsCopy" );
1526 MESSAGE("GEOM_Superv_i::TranslateTwoPointsCopy");
1528 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateTwoPointsCopy(theObject, thePoint1, thePoint2);
1529 endService( " GEOM_Superv_i::TranslateTwoPointsCopy" );
1533 //=============================================================================
1535 //=============================================================================
1536 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateDXDYDZ (GEOM::GEOM_Object_ptr theObject,
1537 CORBA::Double theDX,
1538 CORBA::Double theDY,
1539 CORBA::Double theDZ)
1541 beginService( " GEOM_Superv_i::TranslateDXDYDZ" );
1542 MESSAGE("GEOM_Superv_i::TranslateDXDYDZ");
1544 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateDXDYDZ(theObject, theDX, theDY, theDZ);
1545 endService( " GEOM_Superv_i::TranslateDXDYDZ" );
1549 //=============================================================================
1550 // TranslateDXDYDZCopy:
1551 //=============================================================================
1552 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateDXDYDZCopy (GEOM::GEOM_Object_ptr theObject,
1553 CORBA::Double theDX,
1554 CORBA::Double theDY,
1555 CORBA::Double theDZ)
1557 beginService( " GEOM_Superv_i::TranslateDXDYDZCopy" );
1558 MESSAGE("GEOM_Superv_i::TranslateDXDYDZCopy");
1560 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateDXDYDZCopy(theObject, theDX, theDY, theDZ);
1561 endService( " GEOM_Superv_i::TranslateDXDYDZCopy" );
1565 //=============================================================================
1567 //=============================================================================
1568 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateVector (GEOM::GEOM_Object_ptr theObject,
1569 GEOM::GEOM_Object_ptr theVector)
1571 beginService( " GEOM_Superv_i::TranslateVector" );
1572 MESSAGE("GEOM_Superv_i::TranslateVector");
1574 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateVector(theObject, theVector);
1575 endService( " GEOM_Superv_i::TranslateVector" );
1579 //=============================================================================
1580 // TranslateVectorCopy:
1581 //=============================================================================
1582 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateVectorCopy (GEOM::GEOM_Object_ptr theObject,
1583 GEOM::GEOM_Object_ptr theVector)
1585 beginService( " GEOM_Superv_i::TranslateVectorCopy" );
1586 MESSAGE("GEOM_Superv_i::TranslateVectorCopy");
1588 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateVectorCopy(theObject, theVector);
1589 endService( " GEOM_Superv_i::TranslateVectorCopy" );
1593 //=============================================================================
1594 // TranslateVectorDistance:
1595 //=============================================================================
1596 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateVectorDistance (GEOM::GEOM_Object_ptr theObject,
1597 GEOM::GEOM_Object_ptr theVector,
1598 CORBA::Double theDistance,
1599 CORBA::Boolean theCopy)
1601 beginService( " GEOM_Superv_i::TranslateVectorDistance" );
1602 MESSAGE("GEOM_Superv_i::TranslateVectorDistance");
1604 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateVectorDistance(theObject,
1605 theVector, theDistance, theCopy);
1606 endService( " GEOM_Superv_i::TranslateVectorDistance" );
1610 //=============================================================================
1611 // MultiTranslate1D:
1612 //=============================================================================
1613 GEOM::GEOM_Object_ptr GEOM_Superv_i::MultiTranslate1D (GEOM::GEOM_Object_ptr theObject,
1614 GEOM::GEOM_Object_ptr theVector,
1615 CORBA::Double theStep,
1616 CORBA::Long theNbTimes)
1618 beginService( " GEOM_Superv_i::MultiTranslate1D" );
1619 MESSAGE("GEOM_Superv_i::MultiTranslate1D");
1621 GEOM::GEOM_Object_ptr anObj = myTransfOp->MultiTranslate1D(theObject, theVector, theStep, theNbTimes);
1622 endService( " GEOM_Superv_i::MultiTranslate1D" );
1626 //=============================================================================
1627 // MultiTranslate2D:
1628 //=============================================================================
1629 GEOM::GEOM_Object_ptr GEOM_Superv_i::MultiTranslate2D (GEOM::GEOM_Object_ptr theObject,
1630 GEOM::GEOM_Object_ptr theVector1,
1631 CORBA::Double theStep1,
1632 CORBA::Long theNbTimes1,
1633 GEOM::GEOM_Object_ptr theVector2,
1634 CORBA::Double theStep2,
1635 CORBA::Long theNbTimes2)
1637 beginService( " GEOM_Superv_i::MultiTranslate2D" );
1638 MESSAGE("GEOM_Superv_i::MultiTranslate2D");
1640 GEOM::GEOM_Object_ptr anObj = myTransfOp->MultiTranslate2D(theObject, theVector1, theStep1, theNbTimes1,
1641 theVector2, theStep2, theNbTimes2);
1642 endService( " GEOM_Superv_i::MultiTranslate2D" );
1646 //=============================================================================
1648 //=============================================================================
1649 GEOM::GEOM_Object_ptr GEOM_Superv_i::Rotate (GEOM::GEOM_Object_ptr theObject,
1650 GEOM::GEOM_Object_ptr theAxis,
1651 CORBA::Double theAngle)
1653 beginService( " GEOM_Superv_i::Rotate" );
1654 MESSAGE("GEOM_Superv_i::Rotate");
1656 GEOM::GEOM_Object_ptr anObj = myTransfOp->Rotate(theObject, theAxis, theAngle);
1657 endService( " GEOM_Superv_i::Rotate" );
1661 //=============================================================================
1663 //=============================================================================
1664 GEOM::GEOM_Object_ptr GEOM_Superv_i::RotateCopy (GEOM::GEOM_Object_ptr theObject,
1665 GEOM::GEOM_Object_ptr theAxis,
1666 CORBA::Double theAngle)
1668 beginService( " GEOM_Superv_i::RotateCopy" );
1669 MESSAGE("GEOM_Superv_i::RotateCopy");
1671 GEOM::GEOM_Object_ptr anObj = myTransfOp->RotateCopy(theObject, theAxis, theAngle);
1672 endService( " GEOM_Superv_i::RotateCopy" );
1675 //=============================================================================
1676 // RotateThreePoints:
1677 //=============================================================================
1678 GEOM::GEOM_Object_ptr GEOM_Superv_i::RotateThreePoints (GEOM::GEOM_Object_ptr theObject,
1679 GEOM::GEOM_Object_ptr theCentPoint,
1680 GEOM::GEOM_Object_ptr thePoint1,
1681 GEOM::GEOM_Object_ptr thePoint2)
1683 beginService( " GEOM_Superv_i::RotateThreePoints" );
1684 MESSAGE("GEOM_Superv_i::RotateThreePoints");
1686 GEOM::GEOM_Object_ptr anObj = myTransfOp->RotateThreePoints(theObject, theCentPoint, thePoint1, thePoint2);
1687 endService( " GEOM_Superv_i::RotateThreePoints" );
1691 //=============================================================================
1692 // RotateThreePointsCopy:
1693 //=============================================================================
1694 GEOM::GEOM_Object_ptr GEOM_Superv_i::RotateThreePointsCopy (GEOM::GEOM_Object_ptr theObject,
1695 GEOM::GEOM_Object_ptr theCentPoint,
1696 GEOM::GEOM_Object_ptr thePoint1,
1697 GEOM::GEOM_Object_ptr thePoint2)
1699 beginService( " GEOM_Superv_i::RotateThreePointsCopy" );
1700 MESSAGE("GEOM_Superv_i::RotateThreePointsCopy");
1702 GEOM::GEOM_Object_ptr anObj = myTransfOp->RotateThreePointsCopy(theObject, theCentPoint, thePoint1, thePoint2);
1703 endService( " GEOM_Superv_i::RotateThreePointsCopy" );
1707 //=============================================================================
1709 //=============================================================================
1710 GEOM::GEOM_Object_ptr GEOM_Superv_i::MultiRotate1D (GEOM::GEOM_Object_ptr theObject,
1711 GEOM::GEOM_Object_ptr theAxis,
1712 CORBA::Long theNbTimes)
1714 beginService( " GEOM_Superv_i::MultiRotate1D" );
1715 MESSAGE("GEOM_Superv_i::MultiRotate1D");
1717 GEOM::GEOM_Object_ptr anObj = myTransfOp->MultiRotate1D(theObject, theAxis, theNbTimes);
1718 endService( " GEOM_Superv_i::MultiRotate1D" );
1722 //=============================================================================
1724 //=============================================================================
1725 GEOM::GEOM_Object_ptr GEOM_Superv_i::MultiRotate2D (GEOM::GEOM_Object_ptr theObject,
1726 GEOM::GEOM_Object_ptr theAxis,
1727 CORBA::Double theAngle,
1728 CORBA::Long theNbTimes1,
1729 CORBA::Double theStep,
1730 CORBA::Long theNbTimes2)
1732 beginService( " GEOM_Superv_i::MultiRotate2D" );
1733 MESSAGE("GEOM_Superv_i::MultiRotate2D");
1735 GEOM::GEOM_Object_ptr anObj = myTransfOp->MultiRotate2D(theObject, theAxis, theAngle, theNbTimes1, theStep, theNbTimes2);
1736 endService( " GEOM_Superv_i::MultiRotate2D" );
1740 //=============================================================================
1742 //=============================================================================
1743 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorPlane (GEOM::GEOM_Object_ptr theObject,
1744 GEOM::GEOM_Object_ptr thePlane)
1746 beginService( " GEOM_Superv_i::MirrorPlane" );
1747 MESSAGE("GEOM_Superv_i::MirrorPlane");
1749 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorPlane(theObject, thePlane);
1750 endService( " GEOM_Superv_i::MirrorPlane" );
1754 //=============================================================================
1756 //=============================================================================
1757 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorPlaneCopy (GEOM::GEOM_Object_ptr theObject,
1758 GEOM::GEOM_Object_ptr thePlane)
1760 beginService( " GEOM_Superv_i::MirrorPlaneCopy" );
1761 MESSAGE("GEOM_Superv_i::MirrorPlaneCopy");
1763 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorPlaneCopy(theObject, thePlane);
1764 endService( " GEOM_Superv_i::MirrorPlaneCopy" );
1768 //=============================================================================
1770 //=============================================================================
1771 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorAxis (GEOM::GEOM_Object_ptr theObject,
1772 GEOM::GEOM_Object_ptr theAxis)
1774 beginService( " GEOM_Superv_i::MirrorAxis" );
1775 MESSAGE("GEOM_Superv_i::MirrorAxis");
1777 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorAxis(theObject, theAxis);
1778 endService( " GEOM_Superv_i::MirrorAxis" );
1782 //=============================================================================
1784 //=============================================================================
1785 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorAxisCopy (GEOM::GEOM_Object_ptr theObject,
1786 GEOM::GEOM_Object_ptr theAxis)
1788 beginService( " GEOM_Superv_i::MirrorAxisCopy" );
1789 MESSAGE("GEOM_Superv_i::MirrorAxisCopy");
1791 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorAxisCopy(theObject, theAxis);
1792 endService( " GEOM_Superv_i::MirrorAxisCopy" );
1796 //=============================================================================
1798 //=============================================================================
1799 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorPoint (GEOM::GEOM_Object_ptr theObject,
1800 GEOM::GEOM_Object_ptr thePoint)
1802 beginService( " GEOM_Superv_i::MirrorPoint" );
1803 MESSAGE("GEOM_Superv_i::MirrorPoint");
1805 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorPoint(theObject, thePoint);
1806 endService( " GEOM_Superv_i::MirrorPoint" );
1810 //=============================================================================
1812 //=============================================================================
1813 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorPointCopy (GEOM::GEOM_Object_ptr theObject,
1814 GEOM::GEOM_Object_ptr thePoint)
1816 beginService( " GEOM_Superv_i::MirrorPoint" );
1817 MESSAGE("GEOM_Superv_i::MirrorPointCopy");
1819 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorPointCopy(theObject, thePoint);
1820 endService( " GEOM_Superv_i::MirrorPoint" );
1824 //=============================================================================
1826 //=============================================================================
1827 GEOM::GEOM_Object_ptr GEOM_Superv_i::OffsetShape (GEOM::GEOM_Object_ptr theObject,
1828 CORBA::Double theOffset)
1830 beginService( " GEOM_Superv_i::OffsetShape" );
1831 MESSAGE("GEOM_Superv_i::OffsetShape");
1833 GEOM::GEOM_Object_ptr anObj = myTransfOp->OffsetShape(theObject, theOffset);
1834 endService( " GEOM_Superv_i::OffsetShape" );
1838 //=============================================================================
1840 //=============================================================================
1841 GEOM::GEOM_Object_ptr GEOM_Superv_i::OffsetShapeCopy (GEOM::GEOM_Object_ptr theObject,
1842 CORBA::Double theOffset)
1844 beginService( " GEOM_Superv_i::OffsetShapeCopy" );
1845 MESSAGE("GEOM_Superv_i::OffsetShapeCopy");
1847 GEOM::GEOM_Object_ptr anObj = myTransfOp->OffsetShapeCopy(theObject, theOffset);
1848 endService( " GEOM_Superv_i::OffsetShapeCopy" );
1852 //=============================================================================
1854 //=============================================================================
1855 GEOM::GEOM_Object_ptr GEOM_Superv_i::ScaleShape (GEOM::GEOM_Object_ptr theObject,
1856 GEOM::GEOM_Object_ptr thePoint,
1857 CORBA::Double theFactor)
1859 beginService( " GEOM_Superv_i::ScaleShape" );
1860 MESSAGE("GEOM_Superv_i::ScaleShape");
1862 GEOM::GEOM_Object_ptr anObj = myTransfOp->ScaleShape(theObject, thePoint, theFactor);
1863 endService( " GEOM_Superv_i::ScaleShape" );
1867 //=============================================================================
1869 //=============================================================================
1870 GEOM::GEOM_Object_ptr GEOM_Superv_i::ScaleShapeCopy (GEOM::GEOM_Object_ptr theObject,
1871 GEOM::GEOM_Object_ptr thePoint,
1872 CORBA::Double theFactor)
1874 beginService( " GEOM_Superv_i::ScaleShapeCopy" );
1875 MESSAGE("GEOM_Superv_i::ScaleShapeCopy");
1877 GEOM::GEOM_Object_ptr anObj = myTransfOp->ScaleShapeCopy(theObject, thePoint, theFactor);
1878 endService( " GEOM_Superv_i::ScaleShapeCopy" );
1882 //=============================================================================
1883 // ScaleShapeAlongAxes:
1884 //=============================================================================
1885 GEOM::GEOM_Object_ptr GEOM_Superv_i::ScaleShapeAlongAxes (GEOM::GEOM_Object_ptr theObject,
1886 GEOM::GEOM_Object_ptr thePoint,
1887 CORBA::Double theFactorX,
1888 CORBA::Double theFactorY,
1889 CORBA::Double theFactorZ)
1891 beginService( " GEOM_Superv_i::ScaleShapeAlongAxes" );
1892 MESSAGE("GEOM_Superv_i::ScaleShapeAlongAxes");
1894 GEOM::GEOM_Object_ptr anObj = myTransfOp->ScaleShapeAlongAxes
1895 (theObject, thePoint, theFactorX, theFactorY, theFactorZ);
1896 endService( " GEOM_Superv_i::ScaleShapeAlongAxes" );
1900 //=============================================================================
1901 // ScaleShapeAlongAxesCopy:
1902 //=============================================================================
1903 GEOM::GEOM_Object_ptr GEOM_Superv_i::ScaleShapeAlongAxesCopy (GEOM::GEOM_Object_ptr theObject,
1904 GEOM::GEOM_Object_ptr thePoint,
1905 CORBA::Double theFactorX,
1906 CORBA::Double theFactorY,
1907 CORBA::Double theFactorZ)
1909 beginService( " GEOM_Superv_i::ScaleShapeAlongAxesCopy" );
1910 MESSAGE("GEOM_Superv_i::ScaleShapeAlongAxesCopy");
1912 GEOM::GEOM_Object_ptr anObj = myTransfOp->ScaleShapeAlongAxesCopy
1913 (theObject, thePoint, theFactorX, theFactorY, theFactorZ);
1914 endService( " GEOM_Superv_i::ScaleShapeAlongAxesCopy" );
1918 //=============================================================================
1920 //=============================================================================
1921 GEOM::GEOM_Object_ptr GEOM_Superv_i::PositionShape (GEOM::GEOM_Object_ptr theObject,
1922 GEOM::GEOM_Object_ptr theStartLCS,
1923 GEOM::GEOM_Object_ptr theEndLCS)
1925 beginService( " GEOM_Superv_i::PositionShape" );
1926 MESSAGE("GEOM_Superv_i::PositionShape");
1928 GEOM::GEOM_Object_ptr anObj = myTransfOp->PositionShape(theObject, theStartLCS, theEndLCS);
1929 endService( " GEOM_Superv_i::PositionShape" );
1933 //=============================================================================
1934 // PositionShapeCopy:
1935 //=============================================================================
1936 GEOM::GEOM_Object_ptr GEOM_Superv_i::PositionShapeCopy (GEOM::GEOM_Object_ptr theObject,
1937 GEOM::GEOM_Object_ptr theStartLCS,
1938 GEOM::GEOM_Object_ptr theEndLCS)
1940 beginService( " GEOM_Superv_i::PositionShapeCopy" );
1941 MESSAGE("GEOM_Superv_i::PositionShapeCopy");
1943 GEOM::GEOM_Object_ptr anObj = myTransfOp->PositionShapeCopy(theObject, theStartLCS, theEndLCS);
1944 endService( " GEOM_Superv_i::PositionShapeCopy" );
1948 //=============================================================================
1949 // PositionAlongPath:
1950 //=============================================================================
1951 GEOM::GEOM_Object_ptr GEOM_Superv_i::PositionAlongPath (GEOM::GEOM_Object_ptr theObject,
1952 GEOM::GEOM_Object_ptr thePath,
1953 CORBA::Double theDistance,
1954 CORBA::Boolean theCopy,
1955 CORBA::Boolean theReverse)
1957 beginService( " GEOM_Superv_i::PositionAlongPath" );
1958 MESSAGE("GEOM_Superv_i::PositionAlongPath");
1960 GEOM::GEOM_Object_ptr anObj = myTransfOp->PositionAlongPath(theObject, thePath, theDistance, theCopy, theReverse);
1961 endService( " GEOM_Superv_i::PositionAlongPath" );
1965 //=============================== ShapesOperations ============================
1966 //=============================================================================
1968 //=============================================================================
1969 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeEdge (GEOM::GEOM_Object_ptr thePnt1,
1970 GEOM::GEOM_Object_ptr thePnt2)
1972 beginService( " GEOM_Superv_i::MakeEdge" );
1973 MESSAGE("GEOM_Superv_i::MakeEdge");
1975 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeEdge(thePnt1, thePnt2);
1976 endService( " GEOM_Superv_i::MakeEdge" );
1980 //=============================================================================
1982 //=============================================================================
1983 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeWire (GEOM::GEOM_List_ptr theEdgesAndWires,
1984 CORBA::Double theTolerance)
1986 beginService( " GEOM_Superv_i::MakeWire" );
1987 MESSAGE("GEOM_Superv_i::MakeWire");
1988 if (GEOM_List_i<GEOM::ListOfGO>* aListImplEW =
1989 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theEdgesAndWires, myPOA).in())) {
1991 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeWire(aListImplEW->GetList(), theTolerance);
1992 endService( " GEOM_Superv_i::MakeWire" );
1995 endService( " GEOM_Superv_i::MakeWire" );
1999 //=============================================================================
2001 //=============================================================================
2002 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFace (GEOM::GEOM_Object_ptr theWire,
2003 CORBA::Boolean isPlanarWanted)
2005 beginService( " GEOM_Superv_i::MakeFace" );
2006 MESSAGE("GEOM_Superv_i::MakeFace");
2008 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeFace(theWire, isPlanarWanted);
2009 endService( " GEOM_Superv_i::MakeFace" );
2013 //=============================================================================
2015 //=============================================================================
2016 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFaceWires (GEOM::GEOM_List_ptr theWires,
2017 CORBA::Boolean isPlanarWanted)
2019 beginService( " GEOM_Superv_i::MakeFaceWires" );
2020 MESSAGE("GEOM_Superv_i::MakeFaceWires");
2021 if (GEOM_List_i<GEOM::ListOfGO>* aListImplW =
2022 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theWires, myPOA).in())) {
2024 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeFaceWires(aListImplW->GetList(), isPlanarWanted);
2025 endService( " GEOM_Superv_i::MakeFaceWires" );
2028 endService( " GEOM_Superv_i::MakeFaceWires" );
2032 //=============================================================================
2034 //=============================================================================
2035 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeShell (GEOM::GEOM_List_ptr theFacesAndShells)
2037 beginService( " GEOM_Superv_i::MakeShell" );
2038 MESSAGE("GEOM_Superv_i::MakeShell");
2039 if (GEOM_List_i<GEOM::ListOfGO>* aListImplFS =
2040 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theFacesAndShells, myPOA).in())) {
2042 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeShell(aListImplFS->GetList());
2043 endService( " GEOM_Superv_i::MakeShell" );
2046 endService( " GEOM_Superv_i::MakeShell" );
2050 //=============================================================================
2052 //=============================================================================
2053 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSolidShell (GEOM::GEOM_Object_ptr theShell)
2055 beginService( " GEOM_Superv_i::MakeSolidShell" );
2056 MESSAGE("GEOM_Superv_i::MakeSolidShell");
2058 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeSolidShell(theShell);
2059 endService( " GEOM_Superv_i::MakeSolidShell" );
2063 //=============================================================================
2065 //=============================================================================
2066 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSolidShells (GEOM::GEOM_List_ptr theShells)
2068 beginService( " GEOM_Superv_i::MakeSolidShells" );
2069 MESSAGE("GEOM_Superv_i::MakeSolidShells");
2070 if (GEOM_List_i<GEOM::ListOfGO>* aListImplS =
2071 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theShells, myPOA).in())) {
2073 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeSolidShells(aListImplS->GetList());
2074 endService( " GEOM_Superv_i::MakeSolidShells" );
2077 endService( " GEOM_Superv_i::MakeSolidShells" );
2081 //=============================================================================
2083 //=============================================================================
2084 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCompound (GEOM::GEOM_List_ptr theShapes)
2086 beginService( " GEOM_Superv_i::MakeCompound" );
2087 MESSAGE("GEOM_Superv_i::MakeCompound");
2088 if (GEOM_List_i<GEOM::ListOfGO>* aListImpl =
2089 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theShapes, myPOA).in())) {
2091 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeCompound(aListImpl->GetList());
2092 endService( " GEOM_Superv_i::MakeCompound" );
2095 endService( " GEOM_Superv_i::MakeCompound" );
2099 //=============================================================================
2101 //=============================================================================
2102 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeGlueFaces (GEOM::GEOM_Object_ptr theShape,
2103 CORBA::Double theTolerance,
2104 CORBA::Boolean doKeepNonSolids)
2106 beginService( " GEOM_Superv_i::MakeGlueFaces" );
2107 MESSAGE("GEOM_Superv_i::MakeGlueFaces");
2109 GEOM::GEOM_Object_ptr anObj =
2110 myShapesOp->MakeGlueFaces(theShape, theTolerance, doKeepNonSolids);
2111 endService( " GEOM_Superv_i::MakeGlueFaces" );
2115 //=============================================================================
2117 //=============================================================================
2118 GEOM::GEOM_List_ptr GEOM_Superv_i::GetGlueFaces (GEOM::GEOM_Object_ptr theShape,
2119 CORBA::Double theTolerance)
2121 beginService( " GEOM_Superv_i::GetGlueFaces" );
2122 MESSAGE("GEOM_Superv_i::GetGlueFaces");
2124 GEOM::ListOfGO* aList = myShapesOp->GetGlueFaces(theShape, theTolerance);
2125 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aList));
2126 MESSAGE(" List of "<<aListPtr->GetList().length()<<" element(s)");
2127 endService( " GEOM_Superv_i::GetGlueFaces" );
2128 return aListPtr->_this();
2131 //=============================================================================
2132 // MakeGlueFacesByList:
2133 //=============================================================================
2134 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeGlueFacesByList (GEOM::GEOM_Object_ptr theShape,
2135 CORBA::Double theTolerance,
2136 const GEOM::ListOfGO& theFaces,
2137 CORBA::Boolean doKeepNonSolids)
2139 beginService( " GEOM_Superv_i::MakeGlueFacesByList" );
2140 MESSAGE("GEOM_Superv_i::MakeGlueFacesByList");
2142 GEOM::GEOM_Object_ptr anObj =
2143 myShapesOp->MakeGlueFacesByList(theShape, theTolerance, theFaces, doKeepNonSolids);
2144 endService( " GEOM_Superv_i::MakeGlueFacesByList" );
2148 //=============================================================================
2150 //=============================================================================
2151 GEOM::GEOM_List_ptr GEOM_Superv_i::MakeExplode (GEOM::GEOM_Object_ptr theShape,
2152 CORBA::Long theShapeType,
2153 CORBA::Boolean isSorted)
2155 beginService( " GEOM_Superv_i::MakeExplode" );
2156 MESSAGE("GEOM_Superv_i::MakeExplode");
2159 GEOM::ListOfGO* aList = myShapesOp->MakeExplode(theShape, theShapeType, isSorted);
2160 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aList));
2161 MESSAGE(" List of "<<aListPtr->GetList().length()<<" element(s)");
2162 endService( " GEOM_Superv_i::MakeExplode" );
2163 return aListPtr->_this();
2166 //=============================================================================
2168 //=============================================================================
2169 CORBA::Long GEOM_Superv_i::NumberOfFaces (GEOM::GEOM_Object_ptr theShape)
2171 beginService( " GEOM_Superv_i::NumberOfFaces" );
2172 MESSAGE("GEOM_Superv_i::NumberOfFaces");
2174 CORBA::Long aRes = myShapesOp->NumberOfFaces(theShape);
2175 endService( " GEOM_Superv_i::NumberOfFaces" );
2179 //=============================================================================
2181 //=============================================================================
2182 CORBA::Long GEOM_Superv_i::NumberOfEdges (GEOM::GEOM_Object_ptr theShape)
2184 beginService( " GEOM_Superv_i::NumberOfEdges" );
2185 MESSAGE("GEOM_Superv_i::NumberOfEdges");
2187 CORBA::Long aRes = myShapesOp->NumberOfEdges(theShape);
2188 endService( " GEOM_Superv_i::NumberOfEdges" );
2193 //=============================================================================
2194 // ChangeOrientation:
2195 //=============================================================================
2196 GEOM::GEOM_Object_ptr GEOM_Superv_i::ChangeOrientation (GEOM::GEOM_Object_ptr theShape)
2198 beginService( " GEOM_Superv_i::ChangeOrientation" );
2199 MESSAGE("GEOM_Superv_i::ChangeOrientation");
2201 GEOM::GEOM_Object_ptr anObj = myShapesOp->ChangeOrientation(theShape);
2202 endService( " GEOM_Superv_i::ChangeOrientation" );
2207 //=============================================================================
2208 // GetShapesOnShape:
2209 //=============================================================================
2210 GEOM::GEOM_List_ptr GEOM_Superv_i::GetShapesOnShape
2211 (GEOM::GEOM_Object_ptr theCheckShape,
2212 GEOM::GEOM_Object_ptr theShape,
2213 CORBA::Short theShapeType,
2214 GEOM::shape_state theState)
2216 beginService( " GEOM_Superv_i::GetShapesOnShape" );
2217 MESSAGE("GEOM_Superv_i::GetShapesOnShape");
2219 GEOM::ListOfGO* aList =
2220 myShapesOp->GetShapesOnShape(theCheckShape, theShape, theShapeType, theState);
2221 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aList));
2222 MESSAGE(" List of "<<aListPtr->GetList().length()<<" element(s)");
2223 endService( " GEOM_Superv_i::GetShapesOnShape" );
2224 return aListPtr->_this();
2228 //=============================================================================
2229 // GetShapesOnShapeAsCompound:
2230 //=============================================================================
2231 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetShapesOnShapeAsCompound
2232 (GEOM::GEOM_Object_ptr theCheckShape,
2233 GEOM::GEOM_Object_ptr theShape,
2234 CORBA::Short theShapeType,
2235 GEOM::shape_state theState)
2237 beginService( " GEOM_Superv_i::GetShapesOnShapeAsCompound" );
2238 MESSAGE("GEOM_Superv_i::GetShapesOnShapeAsCompound");
2240 GEOM::GEOM_Object_ptr anObj =
2241 myShapesOp->GetShapesOnShapeAsCompound(theCheckShape, theShape, theShapeType, theState);
2242 endService( " GEOM_Superv_i::GetShapesOnShapeAsCompound" );
2247 //=============================== BlocksOperations ============================
2248 //=============================================================================
2249 // MakeQuad4Vertices:
2250 //=============================================================================
2251 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeQuad4Vertices (GEOM::GEOM_Object_ptr thePnt1,
2252 GEOM::GEOM_Object_ptr thePnt2,
2253 GEOM::GEOM_Object_ptr thePnt3,
2254 GEOM::GEOM_Object_ptr thePnt4)
2256 beginService( " GEOM_Superv_i::MakeQuad4Vertices" );
2257 MESSAGE("GEOM_Superv_i::MakeQuad4Vertices");
2259 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeQuad4Vertices(thePnt1, thePnt2, thePnt3, thePnt4);
2260 endService( " GEOM_Superv_i::MakeQuad4Vertices" );
2264 //=============================================================================
2266 //=============================================================================
2267 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeQuad (GEOM::GEOM_Object_ptr theEdge1,
2268 GEOM::GEOM_Object_ptr theEdge2,
2269 GEOM::GEOM_Object_ptr theEdge3,
2270 GEOM::GEOM_Object_ptr theEdge4)
2272 beginService( " GEOM_Superv_i::MakeQuad" );
2273 MESSAGE("GEOM_Superv_i::MakeQuad");
2275 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeQuad(theEdge1, theEdge2, theEdge3, theEdge4);
2276 endService( " GEOM_Superv_i::MakeQuad" );
2280 //=============================================================================
2282 //=============================================================================
2283 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeQuad2Edges (GEOM::GEOM_Object_ptr theEdge1,
2284 GEOM::GEOM_Object_ptr theEdge2)
2286 beginService( " GEOM_Superv_i::MakeQuad2Edges" );
2287 MESSAGE("GEOM_Superv_i::MakeQuad2Edges");
2289 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeQuad2Edges(theEdge1, theEdge2);
2290 endService( " GEOM_Superv_i::MakeQuad2Edges" );
2294 //=============================================================================
2296 //=============================================================================
2297 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeHexa (GEOM::GEOM_Object_ptr theFace1,
2298 GEOM::GEOM_Object_ptr theFace2,
2299 GEOM::GEOM_Object_ptr theFace3,
2300 GEOM::GEOM_Object_ptr theFace4,
2301 GEOM::GEOM_Object_ptr theFace5,
2302 GEOM::GEOM_Object_ptr theFace6)
2304 beginService( " GEOM_Superv_i::MakeHexa" );
2305 MESSAGE("GEOM_Superv_i::MakeHexa");
2307 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeHexa(theFace1, theFace2, theFace3, theFace4, theFace5, theFace6);
2308 endService( " GEOM_Superv_i::MakeHexa" );
2312 //=============================================================================
2314 //=============================================================================
2315 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeHexa2Faces (GEOM::GEOM_Object_ptr theFace1,
2316 GEOM::GEOM_Object_ptr theFace2)
2318 beginService( " GEOM_Superv_i::MakeHexa2Faces" );
2319 MESSAGE("GEOM_Superv_i::MakeHexa2Faces");
2321 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeHexa2Faces(theFace1, theFace2);
2322 endService( " GEOM_Superv_i::MakeHexa2Faces" );
2326 //=============================================================================
2328 //=============================================================================
2329 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetPoint (GEOM::GEOM_Object_ptr theShape,
2333 CORBA::Double theEpsilon)
2335 beginService( " GEOM_Superv_i::GetPoint" );
2336 MESSAGE("GEOM_Superv_i::GetPoint");
2338 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetPoint(theShape, theX, theY, theZ, theEpsilon);
2339 endService( " GEOM_Superv_i::GetPoint" );
2343 //=============================================================================
2345 //=============================================================================
2346 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetEdge (GEOM::GEOM_Object_ptr theShape,
2347 GEOM::GEOM_Object_ptr thePoint1,
2348 GEOM::GEOM_Object_ptr thePoint2)
2350 beginService( " GEOM_Superv_i::GetEdge" );
2351 MESSAGE("GEOM_Superv_i::GetEdge");
2353 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetEdge(theShape, thePoint1, thePoint2);
2354 endService( " GEOM_Superv_i::GetEdge" );
2358 //=============================================================================
2359 // GetEdgeNearPoint:
2360 //=============================================================================
2361 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetEdgeNearPoint (GEOM::GEOM_Object_ptr theShape,
2362 GEOM::GEOM_Object_ptr thePoint)
2364 beginService( " GEOM_Superv_i::GetEdgeNearPoint" );
2365 MESSAGE("GEOM_Superv_i::GetEdgeNearPoint");
2367 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetEdgeNearPoint(theShape, thePoint);
2368 endService( " GEOM_Superv_i::GetEdgeNearPoint" );
2372 //=============================================================================
2374 //=============================================================================
2375 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetFaceByPoints (GEOM::GEOM_Object_ptr theShape,
2376 GEOM::GEOM_Object_ptr thePoint1,
2377 GEOM::GEOM_Object_ptr thePoint2,
2378 GEOM::GEOM_Object_ptr thePoint3,
2379 GEOM::GEOM_Object_ptr thePoint4)
2381 beginService( " GEOM_Superv_i::GetFaceByPoints" );
2382 MESSAGE("GEOM_Superv_i::GetFaceByPoints");
2384 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetFaceByPoints(theShape, thePoint1, thePoint2, thePoint3, thePoint4);
2385 endService( " GEOM_Superv_i::GetFaceByPoints" );
2389 //=============================================================================
2391 //=============================================================================
2392 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetFaceByEdges (GEOM::GEOM_Object_ptr theShape,
2393 GEOM::GEOM_Object_ptr theEdge1,
2394 GEOM::GEOM_Object_ptr theEdge2)
2396 beginService( " GEOM_Superv_i::GetFaceByEdges" );
2397 MESSAGE("GEOM_Superv_i::GetFaceByEdges");
2399 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetFaceByEdges(theShape, theEdge1, theEdge2);
2400 endService( " GEOM_Superv_i::GetFaceByEdges" );
2404 //=============================================================================
2406 //=============================================================================
2407 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetOppositeFace (GEOM::GEOM_Object_ptr theBlock,
2408 GEOM::GEOM_Object_ptr theFace)
2410 beginService( " GEOM_Superv_i::GetOppositeFace" );
2411 MESSAGE("GEOM_Superv_i::GetOppositeFace");
2413 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetOppositeFace(theBlock, theFace);
2414 endService( " GEOM_Superv_i::GetOppositeFace" );
2418 //=============================================================================
2419 // GetFaceNearPoint:
2420 //=============================================================================
2421 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetFaceNearPoint (GEOM::GEOM_Object_ptr theShape,
2422 GEOM::GEOM_Object_ptr thePoint)
2424 beginService( " GEOM_Superv_i::GetFaceNearPoint" );
2425 MESSAGE("GEOM_Superv_i::GetFaceNearPoint");
2427 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetFaceNearPoint(theShape, thePoint);
2428 endService( " GEOM_Superv_i::GetFaceNearPoint" );
2432 //=============================================================================
2433 // GetFaceByNormale:
2434 //=============================================================================
2435 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetFaceByNormale (GEOM::GEOM_Object_ptr theBlock,
2436 GEOM::GEOM_Object_ptr theVector)
2438 beginService( " GEOM_Superv_i::GetFaceByNormale" );
2439 MESSAGE("GEOM_Superv_i::GetFaceByNormale");
2441 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetFaceByNormale(theBlock, theVector);
2442 endService( " GEOM_Superv_i::GetFaceByNormale" );
2446 //=============================================================================
2447 // IsCompoundOfBlocks:
2448 //=============================================================================
2449 CORBA::Boolean GEOM_Superv_i::IsCompoundOfBlocks (GEOM::GEOM_Object_ptr theCompound,
2450 CORBA::Long theMinNbFaces,
2451 CORBA::Long theMaxNbFaces,
2452 CORBA::Long& theNbBlocks)
2454 beginService( " GEOM_Superv_i::IsCompoundOfBlocks" );
2455 MESSAGE("GEOM_Superv_i::IsCompoundOfBlocks");
2457 CORBA::Boolean aRes = myBlocksOp->IsCompoundOfBlocks(theCompound, theMinNbFaces, theMaxNbFaces, theNbBlocks);
2458 endService( " GEOM_Superv_i::IsCompoundOfBlocks" );
2462 //=============================================================================
2463 // CheckCompoundOfBlocks:
2464 //=============================================================================
2465 CORBA::Boolean GEOM_Superv_i::CheckCompoundOfBlocks
2466 (GEOM::GEOM_Object_ptr theCompound,
2467 GEOM::GEOM_IBlocksOperations::BCErrors_out theErrors)
2469 beginService( " GEOM_Superv_i::CheckCompoundOfBlocks" );
2470 MESSAGE("GEOM_Superv_i::CheckCompoundOfBlocks");
2472 CORBA::Boolean aRes = myBlocksOp->CheckCompoundOfBlocks(theCompound, theErrors);
2473 endService( " GEOM_Superv_i::CheckCompoundOfBlocks" );
2477 //=============================================================================
2479 //=============================================================================
2480 char* GEOM_Superv_i::PrintBCErrors (GEOM::GEOM_Object_ptr theCompound,
2481 const GEOM::GEOM_IBlocksOperations::BCErrors& theErrors)
2483 beginService( " GEOM_Superv_i::PrintBCErrors" );
2484 MESSAGE("GEOM_Superv_i::PrintBCErrors");
2486 char* anErrors = myBlocksOp->PrintBCErrors(theCompound, theErrors);
2487 endService( " GEOM_Superv_i::PrintBCErrors" );
2491 //=============================================================================
2492 // ExplodeCompoundOfBlocks:
2493 //=============================================================================
2494 GEOM::GEOM_List_ptr GEOM_Superv_i::ExplodeCompoundOfBlocks (GEOM::GEOM_Object_ptr theCompound,
2495 CORBA::Long theMinNbFaces,
2496 CORBA::Long theMaxNbFaces)
2498 beginService( " GEOM_Superv_i::ExplodeCompoundOfBlocks" );
2499 MESSAGE("GEOM_Superv_i::ExplodeCompoundOfBlocks");
2501 GEOM::ListOfGO* aBlocks = myBlocksOp->ExplodeCompoundOfBlocks(theCompound, theMinNbFaces, theMaxNbFaces);
2502 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aBlocks));
2503 endService( " GEOM_Superv_i::ExplodeCompoundOfBlocks" );
2504 return aListPtr->_this();
2507 //=============================================================================
2508 // GetBlockNearPoint:
2509 //=============================================================================
2510 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetBlockNearPoint (GEOM::GEOM_Object_ptr theCompound,
2511 GEOM::GEOM_Object_ptr thePoint)
2513 beginService( " GEOM_Superv_i::GetBlockNearPoint" );
2514 MESSAGE("GEOM_Superv_i::GetBlockNearPoint");
2516 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetBlockNearPoint(theCompound, thePoint);
2517 endService( " GEOM_Superv_i::GetBlockNearPoint" );
2521 //=============================================================================
2523 //=============================================================================
2524 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetBlockByParts (GEOM::GEOM_Object_ptr theCompound,
2525 GEOM::GEOM_List_ptr theParts)
2527 beginService( " GEOM_Superv_i::GetBlockByParts" );
2528 MESSAGE("GEOM_Superv_i::GetBlockByParts");
2529 if (GEOM_List_i<GEOM::ListOfGO>* aListImplP =
2530 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theParts, myPOA).in())) {
2532 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetBlockByParts(theCompound, aListImplP->GetList());
2533 endService( " GEOM_Superv_i::GetBlockByParts" );
2536 endService( " GEOM_Superv_i::GetBlockByParts" );
2540 //=============================================================================
2541 // GetBlocksByParts:
2542 //=============================================================================
2543 GEOM::GEOM_List_ptr GEOM_Superv_i::GetBlocksByParts (GEOM::GEOM_Object_ptr theCompound,
2544 GEOM::GEOM_List_ptr theParts)
2546 beginService( " GEOM_Superv_i::GetBlocksByParts" );
2547 MESSAGE("GEOM_Superv_i::GetBlocksByParts");
2548 if (GEOM_List_i<GEOM::ListOfGO>* aListImplP =
2549 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theParts, myPOA).in())) {
2552 GEOM::ListOfGO* aBlocks = myBlocksOp->GetBlocksByParts(theCompound, aListImplP->GetList());
2553 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aBlocks));
2554 endService( " GEOM_Superv_i::GetBlocksByParts" );
2555 return aListPtr->_this();
2557 endService( " GEOM_Superv_i::GetBlocksByParts" );
2561 //=============================================================================
2562 // MakeMultiTransformation1D:
2563 //=============================================================================
2564 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeMultiTransformation1D (GEOM::GEOM_Object_ptr theBlock,
2565 CORBA::Long theDirFace1,
2566 CORBA::Long theDirFace2,
2567 CORBA::Long theNbTimes)
2569 beginService( " GEOM_Superv_i::MakeMultiTransformation1D" );
2570 MESSAGE("GEOM_Superv_i::MakeMultiTransformation1D");
2572 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeMultiTransformation1D(theBlock, theDirFace1, theDirFace2, theNbTimes);
2573 endService( " GEOM_Superv_i::MakeMultiTransformation1D" );
2577 //=============================================================================
2578 // MakeMultiTransformation2D:
2579 //=============================================================================
2580 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeMultiTransformation2D
2581 (GEOM::GEOM_Object_ptr theBlock,
2582 CORBA::Long theDirFace1U,
2583 CORBA::Long theDirFace2U,
2584 CORBA::Long theNbTimesU,
2585 CORBA::Long theDirFace1V,
2586 CORBA::Long theDirFace2V,
2587 CORBA::Long theNbTimesV)
2589 beginService( " GEOM_Superv_i::MakeMultiTransformation2D" );
2590 MESSAGE("GEOM_Superv_i::MakeMultiTransformation2D");
2592 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeMultiTransformation2D(theBlock,
2593 theDirFace1U, theDirFace2U, theNbTimesU,
2594 theDirFace1V, theDirFace2V, theNbTimesV);
2595 endService( " GEOM_Superv_i::MakeMultiTransformation2D" );
2599 //=============================== CurvesOperations ============================
2600 //=============================================================================
2601 // MakeCirclePntVecR:
2602 //=============================================================================
2603 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCirclePntVecR (GEOM::GEOM_Object_ptr theCenter,
2604 GEOM::GEOM_Object_ptr theVector,
2607 beginService( " GEOM_Superv_i::MakeCirclePntVecR" );
2608 MESSAGE("GEOM_Superv_i::MakeCirclePntVecR");
2610 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeCirclePntVecR(theCenter, theVector, theR);
2611 endService( " GEOM_Superv_i::MakeCirclePntVecR" );
2615 //=============================================================================
2616 // MakeCircleThreePnt:
2617 //=============================================================================
2618 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCircleThreePnt (GEOM::GEOM_Object_ptr thePnt1,
2619 GEOM::GEOM_Object_ptr thePnt2,
2620 GEOM::GEOM_Object_ptr thePnt3)
2622 beginService( " GEOM_Superv_i::MakeCircleThreePnt" );
2623 MESSAGE("GEOM_Superv_i::MakeCircleThreePnt");
2625 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeCircleThreePnt(thePnt1, thePnt2, thePnt3);
2626 endService( " GEOM_Superv_i::MakeCircleThreePnt" );
2629 //=============================================================================
2630 // MakeCircleCenter2Pnt:
2631 //=============================================================================
2632 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCircleCenter2Pnt (GEOM::GEOM_Object_ptr thePnt1,
2633 GEOM::GEOM_Object_ptr thePnt2,
2634 GEOM::GEOM_Object_ptr thePnt3)
2636 beginService( " GEOM_Superv_i::MakeCircleCenter2Pnt" );
2637 MESSAGE("GEOM_Superv_i::MakeCircleCenter2Pnt");
2639 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeCircleCenter2Pnt(thePnt1, thePnt2, thePnt3);
2640 endService( " GEOM_Superv_i::MakeCircleCenter2Pnt" );
2644 //=============================================================================
2646 //=============================================================================
2647 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeEllipse (GEOM::GEOM_Object_ptr theCenter,
2648 GEOM::GEOM_Object_ptr theVector,
2649 CORBA::Double theRMajor,
2650 CORBA::Double theRMinor)
2652 beginService( " GEOM_Superv_i::MakeEllipse" );
2653 MESSAGE("GEOM_Superv_i::MakeEllipse");
2655 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeEllipse(theCenter, theVector, theRMajor, theRMinor);
2656 endService( " GEOM_Superv_i::MakeEllipse" );
2660 //=============================================================================
2662 //=============================================================================
2663 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeEllipseVec (GEOM::GEOM_Object_ptr theCenter,
2664 GEOM::GEOM_Object_ptr theVector,
2665 CORBA::Double theRMajor,
2666 CORBA::Double theRMinor,
2667 GEOM::GEOM_Object_ptr theVectorMajor)
2669 beginService( " GEOM_Superv_i::MakeEllipseVec" );
2670 MESSAGE("GEOM_Superv_i::MakeEllipseVec");
2672 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeEllipseVec(theCenter, theVector, theRMajor, theRMinor, theVectorMajor);
2673 endService( " GEOM_Superv_i::MakeEllipseVec" );
2677 //=============================================================================
2679 //=============================================================================
2680 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeArc (GEOM::GEOM_Object_ptr thePnt1,
2681 GEOM::GEOM_Object_ptr thePnt2,
2682 GEOM::GEOM_Object_ptr thePnt3)
2684 beginService( " GEOM_Superv_i::MakeArc" );
2685 MESSAGE("GEOM_Superv_i::MakeArc");
2687 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeArc(thePnt1, thePnt2, thePnt3);
2688 endService( " GEOM_Superv_i::MakeArc" );
2692 //=============================================================================
2694 //=============================================================================
2695 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeArcCenter (GEOM::GEOM_Object_ptr theCenter,
2696 GEOM::GEOM_Object_ptr thePnt1,
2697 GEOM::GEOM_Object_ptr thePnt2,
2698 CORBA::Boolean theSense)
2700 beginService( " GEOM_Superv_i::MakeArcCenter" );
2701 MESSAGE("GEOM_Superv_i::MakeArcCenter");
2703 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeArcCenter(theCenter, thePnt1, thePnt2,theSense);
2704 endService( " GEOM_Superv_i::MakeArcCenter" );
2708 //=============================================================================
2709 // MakeArcOfEllipse:
2710 //=============================================================================
2711 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeArcOfEllipse (GEOM::GEOM_Object_ptr thePnt1,
2712 GEOM::GEOM_Object_ptr thePnt2,
2713 GEOM::GEOM_Object_ptr thePnt3)
2715 beginService( " GEOM_Superv_i::MakeArcOfEllipse" );
2716 MESSAGE("GEOM_Superv_i::MakeArcOfEllipse");
2718 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeArcOfEllipse(thePnt1, thePnt2, thePnt3);
2719 endService( " GEOM_Superv_i::MakeArcOfEllipse" );
2723 //=============================================================================
2725 //=============================================================================
2726 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePolyline (GEOM::GEOM_List_ptr thePoints)
2728 beginService( " GEOM_Superv_i::MakePolyline" );
2729 MESSAGE("GEOM_Superv_i::MakePolyline");
2730 if (GEOM_List_i<GEOM::ListOfGO>* aListImplP =
2731 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(thePoints, myPOA).in())) {
2733 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakePolyline(aListImplP->GetList());
2734 endService( " GEOM_Superv_i::MakePolyline" );
2737 endService( " GEOM_Superv_i::MakePolyline" );
2741 //=============================================================================
2742 // MakeSplineBezier:
2743 //=============================================================================
2744 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSplineBezier (GEOM::GEOM_List_ptr thePoints)
2746 beginService( " GEOM_Superv_i::MakeSplineBezier" );
2747 MESSAGE("GEOM_Superv_i::MakeSplineBezier");
2748 if (GEOM_List_i<GEOM::ListOfGO>* aListImplP =
2749 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(thePoints, myPOA).in())) {
2751 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeSplineBezier(aListImplP->GetList());
2752 endService( " GEOM_Superv_i::MakeSplineBezier" );
2755 endService( " GEOM_Superv_i::MakeSplineBezier" );
2759 //=============================================================================
2760 // MakeSplineInterpolation:
2761 //=============================================================================
2762 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSplineInterpolation (GEOM::GEOM_List_ptr thePoints,
2763 CORBA::Boolean theIsClosed)
2765 beginService( " GEOM_Superv_i::MakeSplineInterpolation" );
2766 MESSAGE("GEOM_Superv_i::MakeSplineInterpolation");
2767 if (GEOM_List_i<GEOM::ListOfGO>* aListImplP =
2768 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(thePoints, myPOA).in())) {
2770 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeSplineInterpolation(aListImplP->GetList(), theIsClosed);
2771 endService( " GEOM_Superv_i::MakeSplineInterpolation" );
2774 endService( " GEOM_Superv_i::MakeSplineInterpolation" );
2778 //=============================================================================
2780 //=============================================================================
2781 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSketcher (const char* theCommand,
2782 GEOM::GEOM_List_ptr theWorkingPlane)
2784 beginService( " GEOM_Superv_i::MakeSketcher" );
2785 MESSAGE("GEOM_Superv_i::MakeSketcher");
2786 if (GEOM_List_i<GEOM::ListOfDouble>* aListImplWP =
2787 dynamic_cast<GEOM_List_i<GEOM::ListOfDouble>*>(GetServant(theWorkingPlane, myPOA).in())) {
2789 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeSketcher(theCommand, aListImplWP->GetList());
2790 endService( " GEOM_Superv_i::MakeSketcher" );
2793 endService( " GEOM_Superv_i::MakeSketcher" );
2797 //=============================================================================
2799 //=============================================================================
2800 GEOM::GEOM_Object_ptr GEOM_Superv_i::Make3DSketcher ( GEOM::GEOM_List_ptr theCoordinates)
2802 beginService( " GEOM_Superv_i::Make3DSketcher" );
2803 MESSAGE("GEOM_Superv_i::Make3DSketcher");
2804 if (GEOM_List_i<GEOM::ListOfDouble>* aListImpl =
2805 dynamic_cast<GEOM_List_i<GEOM::ListOfDouble>*>(GetServant(theCoordinates, myPOA).in())) {
2807 GEOM::GEOM_Object_ptr anObj = myCurvesOp->Make3DSketcher(aListImpl->GetList());
2808 endService( " GEOM_Superv_i::Make3DSketcher" );
2811 endService( " GEOM_Superv_i::Make3DSketcher" );
2815 //=============================== LocalOperations =============================
2816 //=============================================================================
2818 //=============================================================================
2819 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilletAll (GEOM::GEOM_Object_ptr theShape,
2822 beginService( " GEOM_Superv_i::MakeFilletAll" );
2823 MESSAGE("GEOM_Superv_i::MakeFilletAllMakeSketcher");
2825 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFilletAll(theShape, theR);
2826 endService( " GEOM_Superv_i::MakeFilletAll" );
2830 //=============================================================================
2832 //=============================================================================
2833 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilletEdges (GEOM::GEOM_Object_ptr theShape,
2835 GEOM::GEOM_List_ptr theEdges)
2837 beginService( " GEOM_Superv_i::MakeFilletEdges" );
2838 MESSAGE("GEOM_Superv_i::MakeFilletEdges");
2839 if (GEOM_List_i<GEOM::ListOfLong>* aListImplE =
2840 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theEdges, myPOA).in())) {
2842 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFilletEdges(theShape, theR, aListImplE->GetList());
2843 endService( " GEOM_Superv_i::MakeFilletEdges" );
2846 endService( " GEOM_Superv_i::MakeFilletEdges" );
2850 //=============================================================================
2851 // MakeFilletEdges R1 R2:
2852 //=============================================================================
2853 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilletEdgesR1R2 (GEOM::GEOM_Object_ptr theShape,
2854 CORBA::Double theR1,
2855 CORBA::Double theR2,
2856 GEOM::GEOM_List_ptr theEdges)
2858 beginService( " GEOM_Superv_i::MakeFilletEdgesR1R2" );
2859 MESSAGE("GEOM_Superv_i::MakeFilletEdgesR1R2");
2860 if (GEOM_List_i<GEOM::ListOfLong>* aListImplE =
2861 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theEdges, myPOA).in())) {
2863 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFilletEdgesR1R2(theShape, theR1,
2864 theR2, aListImplE->GetList());
2865 endService( " GEOM_Superv_i::MakeFilletEdgesR1R2" );
2868 endService( " GEOM_Superv_i::MakeFilletEdgesR1R2" );
2872 //=============================================================================
2874 //=============================================================================
2875 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilletFaces (GEOM::GEOM_Object_ptr theShape,
2877 GEOM::GEOM_List_ptr theFaces)
2879 beginService( " GEOM_Superv_i::MakeFilletFaces" );
2880 MESSAGE("GEOM_Superv_i::MakeFilletFaces");
2881 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
2882 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theFaces, myPOA).in())) {
2884 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFilletFaces(theShape, theR, aListImplF->GetList());
2885 endService( " GEOM_Superv_i::MakeFilletFaces" );
2888 endService( " GEOM_Superv_i::MakeFilletFaces" );
2892 //=============================================================================
2893 // MakeFilletFaces R1 R2:
2894 //=============================================================================
2895 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilletFacesR1R2 (GEOM::GEOM_Object_ptr theShape,
2896 CORBA::Double theR1,
2897 CORBA::Double theR2,
2898 GEOM::GEOM_List_ptr theFaces)
2900 beginService( " GEOM_Superv_i::MakeFilletFacesR1R2" );
2901 MESSAGE("GEOM_Superv_i::MakeFilletFacesR1R2");
2902 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
2903 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theFaces, myPOA).in())) {
2905 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFilletFacesR1R2(theShape, theR1, theR2,
2906 aListImplF->GetList());
2907 endService( " GEOM_Superv_i::MakeFilletFacesR1R2" );
2910 endService( " GEOM_Superv_i::MakeFilletFacesR1R2" );
2914 //=============================================================================
2916 //=============================================================================
2917 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFillet2D (GEOM::GEOM_Object_ptr theShape,
2919 GEOM::GEOM_List_ptr theVertexes)
2921 beginService( " GEOM_Superv_i::MakeFillet2D" );
2922 MESSAGE("GEOM_Superv_i::MakeFillet2D");
2923 if (GEOM_List_i<GEOM::ListOfLong>* aListImplV =
2924 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theVertexes, myPOA).in())) {
2926 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFillet2D(theShape, theR, aListImplV->GetList());
2927 endService( " GEOM_Superv_i::MakeFillet2D" );
2930 endService( " GEOM_Superv_i::MakeFillet2D" );
2934 //=============================================================================
2936 //=============================================================================
2937 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFillet1D (GEOM::GEOM_Object_ptr theShape,
2939 GEOM::GEOM_List_ptr theVertexes)
2941 beginService( " GEOM_Superv_i::MakeFillet1D" );
2942 MESSAGE("GEOM_Superv_i::MakeFillet1D");
2943 if (GEOM_List_i<GEOM::ListOfLong>* aListImplV =
2944 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theVertexes, myPOA).in())) {
2946 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFillet1D(theShape, theR, aListImplV->GetList());
2947 endService( " GEOM_Superv_i::MakeFillet1D" );
2950 endService( " GEOM_Superv_i::MakeFillet1D" );
2954 //=============================================================================
2956 //=============================================================================
2957 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferAll (GEOM::GEOM_Object_ptr theShape, CORBA::Double theD)
2959 beginService( " GEOM_Superv_i::MakeChamferAll" );
2960 MESSAGE("GEOM_Superv_i::MakeChamferAll");
2962 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferAll(theShape, theD);
2963 endService( " GEOM_Superv_i::MakeChamferAll" );
2967 //=============================================================================
2969 //=============================================================================
2970 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferEdge (GEOM::GEOM_Object_ptr theShape,
2971 CORBA::Double theD1, CORBA::Double theD2,
2972 CORBA::Long theFace1, CORBA::Long theFace2)
2974 beginService( " GEOM_Superv_i::MakeChamferEdge" );
2975 MESSAGE("GEOM_Superv_i::MakeChamferEdge");
2977 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferEdge(theShape, theD1, theD2, theFace1, theFace2);
2978 endService( " GEOM_Superv_i::MakeChamferEdge" );
2982 //=============================================================================
2983 // MakeChamferEdgeAD:
2984 //=============================================================================
2985 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferEdgeAD (GEOM::GEOM_Object_ptr theShape,
2986 CORBA::Double theD, CORBA::Double theAngle,
2987 CORBA::Long theFace1, CORBA::Long theFace2)
2989 beginService( " GEOM_Superv_i::MakeChamferEdgeAD" );
2990 MESSAGE("GEOM_Superv_i::MakeChamferEdgeAD");
2992 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferEdgeAD(theShape, theD, theAngle, theFace1, theFace2);
2993 endService( " GEOM_Superv_i::MakeChamferEdgeAD" );
2997 //=============================================================================
2998 // MakeChamferFaces:
2999 //=============================================================================
3000 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferFaces (GEOM::GEOM_Object_ptr theShape,
3001 CORBA::Double theD1, CORBA::Double theD2,
3002 GEOM::GEOM_List_ptr theFaces)
3004 beginService( " GEOM_Superv_i::MakeChamferFaces" );
3005 MESSAGE("GEOM_Superv_i::MakeChamferFaces");
3006 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
3007 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theFaces, myPOA).in())) {
3009 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferFaces(theShape, theD1, theD2, aListImplF->GetList());
3010 endService( " GEOM_Superv_i::MakeChamferFaces" );
3013 endService( " GEOM_Superv_i::MakeChamferFaces" );
3017 //=============================================================================
3018 // MakeChamferFacesAD:
3019 //=============================================================================
3020 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferFacesAD (GEOM::GEOM_Object_ptr theShape,
3021 CORBA::Double theD, CORBA::Double theAngle,
3022 GEOM::GEOM_List_ptr theFaces)
3024 beginService( " GEOM_Superv_i::MakeChamferFacesAD" );
3025 MESSAGE("GEOM_Superv_i::MakeChamferFacesAD");
3026 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
3027 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theFaces, myPOA).in())) {
3029 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferFacesAD(theShape, theD, theAngle, aListImplF->GetList());
3030 endService( " GEOM_Superv_i::MakeChamferFacesAD" );
3033 endService( " GEOM_Superv_i::MakeChamferFacesAD" );
3037 //=============================================================================
3038 // MakeChamferEdges:
3039 //=============================================================================
3040 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferEdges (GEOM::GEOM_Object_ptr theShape,
3041 CORBA::Double theD1, CORBA::Double theD2,
3042 GEOM::GEOM_List_ptr theEdges)
3044 beginService( " GEOM_Superv_i::MakeChamferEdges" );
3045 MESSAGE("GEOM_Superv_i::MakeChamferEdges");
3046 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
3047 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theEdges, myPOA).in())) {
3049 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferEdges(theShape, theD1, theD2, aListImplF->GetList());
3050 endService( " GEOM_Superv_i::MakeChamferEdges" );
3053 endService( " GEOM_Superv_i::MakeChamferEdges" );
3057 //=============================================================================
3058 // MakeChamferEdgesAD:
3059 //=============================================================================
3060 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferEdgesAD (GEOM::GEOM_Object_ptr theShape,
3061 CORBA::Double theD, CORBA::Double theAngle,
3062 GEOM::GEOM_List_ptr theEdges)
3064 beginService( " GEOM_Superv_i::MakeChamferEdgesAD" );
3065 MESSAGE("GEOM_Superv_i::MakeChamferEdgesAD");
3066 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
3067 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theEdges, myPOA).in())) {
3069 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferEdgesAD(theShape, theD, theAngle, aListImplF->GetList());
3070 endService( " GEOM_Superv_i::MakeChamferEdgesAD" );
3073 endService( " GEOM_Superv_i::MakeChamferEdgesAD" );
3077 //=============================================================================
3079 //=============================================================================
3080 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeArchimede (GEOM::GEOM_Object_ptr theShape,
3081 CORBA::Double theWeight,
3082 CORBA::Double theWaterDensity,
3083 CORBA::Double theMeshingDeflection)
3085 beginService( " GEOM_Superv_i::MakeArchimede" );
3086 MESSAGE("GEOM_Superv_i::MakeArchimede");
3088 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeArchimede(theShape, theWeight, theWaterDensity, theMeshingDeflection);
3089 endService( " GEOM_Superv_i::MakeArchimede" );
3093 //=============================================================================
3094 // GetSubShapeIndexMakeFilletAll:
3095 //=============================================================================
3096 CORBA::Long GEOM_Superv_i::GetSubShapeIndex (GEOM::GEOM_Object_ptr theShape,
3097 GEOM::GEOM_Object_ptr theSubShape)
3099 beginService( " GEOM_Superv_i::GetSubShapeIndex" );
3100 MESSAGE("GEOM_Superv_i::GetSubShapeIndexMakeArchimede");
3102 CORBA::Long aRes = myLocalOp->GetSubShapeIndex(theShape, theSubShape);
3103 endService( " GEOM_Superv_i::GetSubShapeIndex" );
3107 //=============================== GroupOperations =============================
3108 //=============================================================================
3110 //=============================================================================
3111 GEOM::GEOM_Object_ptr GEOM_Superv_i::CreateGroup (GEOM::GEOM_Object_ptr theMainShape,
3112 CORBA::Long theShapeType)
3114 beginService( " GEOM_Superv_i::CreateGroup" );
3115 MESSAGE("GEOM_Superv_i::CreateGroup");
3117 GEOM::GEOM_Object_ptr anObj = myGroupOp->CreateGroup(theMainShape, theShapeType);
3118 endService( " GEOM_Superv_i::CreateGroup" );
3122 //=============================================================================
3124 //=============================================================================
3125 void GEOM_Superv_i::AddObject (GEOM::GEOM_Object_ptr theGroup,
3126 CORBA::Long theSubShapeId)
3128 beginService( " GEOM_Superv_i::AddObject" );
3129 MESSAGE("GEOM_Superv_i::AddObject");
3131 myGroupOp->AddObject(theGroup, theSubShapeId);
3132 endService( " GEOM_Superv_i::AddObject" );
3135 //=============================================================================
3137 //=============================================================================
3138 void GEOM_Superv_i::RemoveObject (GEOM::GEOM_Object_ptr theGroup,
3139 CORBA::Long theSubShapeId)
3141 beginService( " GEOM_Superv_i::RemoveObject" );
3142 MESSAGE("GEOM_Superv_i::RemoveObject");
3144 myGroupOp->RemoveObject(theGroup, theSubShapeId);
3145 endService( " GEOM_Superv_i::RemoveObject" );
3148 //=============================================================================
3150 //=============================================================================
3151 CORBA::Long GEOM_Superv_i::GetType (GEOM::GEOM_Object_ptr theGroup)
3153 beginService( " GEOM_Superv_i::GetType" );
3154 MESSAGE("GEOM_Superv_i::GetType");
3156 CORBA::Long aResult = myGroupOp->GetType(theGroup);
3157 endService( " GEOM_Superv_i::GetType" );
3161 //=============================================================================
3163 //=============================================================================
3164 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetMainShape (GEOM::GEOM_Object_ptr theGroup)
3166 beginService( " GEOM_Superv_i::GetMainShape" );
3167 MESSAGE("GEOM_Superv_i::GetMainShape");
3169 GEOM::GEOM_Object_ptr anObj = myGroupOp->GetMainShape(theGroup);
3170 endService( " GEOM_Superv_i::GetMainShape" );
3174 //=============================================================================
3176 //=============================================================================
3177 GEOM::GEOM_List_ptr GEOM_Superv_i::GetObjects (GEOM::GEOM_Object_ptr theGroup)
3179 beginService( " GEOM_Superv_i::GetObjects" );
3180 MESSAGE("GEOM_Superv_i::GetObjects");
3183 GEOM::ListOfLong* aList = myGroupOp->GetObjects(theGroup);
3184 GEOM_List_i<GEOM::ListOfLong>* aListPtr = new GEOM_List_i<GEOM::ListOfLong>(*(aList));
3185 MESSAGE(" List of "<<aListPtr->GetList().length()<<" element(s)");
3186 endService( " GEOM_Superv_i::GetObjects" );
3187 return aListPtr->_this();
3190 //=====================================================================================
3192 //=====================================================================================
3195 PortableServer::ObjectId * GEOM_SupervEngine_factory(CORBA::ORB_ptr orb,
3196 PortableServer::POA_ptr poa,
3197 PortableServer::ObjectId * contId,
3198 const char *instanceName,
3199 const char * interfaceName)
3201 GEOM_Superv_i * myGEOM_Superv_i = new GEOM_Superv_i(orb, poa, contId, instanceName, interfaceName);
3202 //Don't understand the reason why this component is registered ???
3203 // myGEOM_Superv_i->register_name("/myGEOM_Superv");
3204 return myGEOM_Superv_i->getId() ;