1 // Copyright (C) 2007-2010 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
23 #include "GEOM_Superv_i.hh"
24 #include "SALOME_LifeCycleCORBA.hxx"
26 #include CORBA_SERVER_HEADER(SALOME_Session)
27 #include "SALOMEDSClient_ClientFactory.hxx"
29 #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 std::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 GEOM::GEOM_Object_var anObj = GEOM::GEOM_Object::_duplicate(theObject);
175 if (GEOM_List_i<GEOM::ListOfGO>* aList =
176 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theList, myPOA).in())) {
177 aList->AddObject(anObj);
178 MESSAGE(" NewLength = "<<aList->GetList().length());
182 //=============================================================================
184 //=============================================================================
185 GEOM::GEOM_List_ptr GEOM_Superv_i::CreateListOfLong()
187 MESSAGE("GEOM_Superv_i::CreateListOfLong()");
188 GEOM_List_i<GEOM::ListOfLong>* aListPtr = new GEOM_List_i<GEOM::ListOfLong>();
189 return aListPtr->_this();
192 //=============================================================================
193 // AddItemToListOfLong:
194 //=============================================================================
195 void GEOM_Superv_i::AddItemToListOfLong(GEOM::GEOM_List_ptr& theList,
196 CORBA::Long theObject)
198 MESSAGE("GEOM_Superv_i::AddItemToListOfLong(...)");
199 if (GEOM_List_i<GEOM::ListOfLong>* aList =
200 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theList, myPOA).in())) {
201 aList->AddObject(theObject);
202 MESSAGE(" NewLength = "<<aList->GetList().length());
206 //=============================================================================
207 // CreateListOfDouble:
208 //=============================================================================
209 GEOM::GEOM_List_ptr GEOM_Superv_i::CreateListOfDouble()
211 MESSAGE("GEOM_Superv_i::CreateListOfDouble()");
212 GEOM_List_i<GEOM::ListOfDouble>* aListPtr = new GEOM_List_i<GEOM::ListOfDouble>();
213 return aListPtr->_this();
216 //=============================================================================
217 // AddItemToListOfDouble:
218 //=============================================================================
219 void GEOM_Superv_i::AddItemToListOfDouble(GEOM::GEOM_List_ptr& theList,
220 CORBA::Double theObject)
222 MESSAGE("GEOM_Superv_i::AddItemToListOfDouble(...)");
223 if (GEOM_List_i<GEOM::ListOfDouble>* aList =
224 dynamic_cast<GEOM_List_i<GEOM::ListOfDouble>*>(GetServant(theList, myPOA).in())) {
225 aList->AddObject(theObject);
226 MESSAGE(" NewLength = "<<aList->GetList().length());
230 //=============================================================================
232 //=============================================================================
233 void GEOM_Superv_i::getBasicOp()
235 if (CORBA::is_nil(myGeomEngine))
237 // get GEOM_IBasicOperations interface
238 if (CORBA::is_nil(myBasicOp) || isNewStudy(myLastStudyID,myStudyID))
239 myBasicOp = myGeomEngine->GetIBasicOperations(myStudyID);
242 //=============================================================================
244 //=============================================================================
245 void GEOM_Superv_i::get3DPrimOp()
247 if (CORBA::is_nil(myGeomEngine))
249 // get GEOM_I3DPrimOperations interface
250 if (CORBA::is_nil(my3DPrimOp) || isNewStudy(myLastStudyID,myStudyID))
251 my3DPrimOp = myGeomEngine->GetI3DPrimOperations(myStudyID);
254 //=============================================================================
256 //=============================================================================
257 void GEOM_Superv_i::getBoolOp()
259 if (CORBA::is_nil(myGeomEngine))
261 // get GEOM_IBooleanOperations interface
262 if (CORBA::is_nil(myBoolOp) || isNewStudy(myLastStudyID,myStudyID))
263 myBoolOp = myGeomEngine->GetIBooleanOperations(myStudyID);
266 //=============================================================================
268 //=============================================================================
269 void GEOM_Superv_i::getInsOp()
271 if (CORBA::is_nil(myGeomEngine))
273 // get GEOM_IInsertOperations interface
274 if (CORBA::is_nil(myInsOp) || isNewStudy(myLastStudyID,myStudyID))
275 myInsOp = myGeomEngine->GetIInsertOperations(myStudyID);
278 //=============================================================================
280 //=============================================================================
281 void GEOM_Superv_i::getTransfOp()
283 if (CORBA::is_nil(myGeomEngine))
285 // get GEOM_ITransformOperations interface
286 if (CORBA::is_nil(myTransfOp) || isNewStudy(myLastStudyID,myStudyID))
287 myTransfOp = myGeomEngine->GetITransformOperations(myStudyID);
290 //=============================================================================
292 //=============================================================================
293 void GEOM_Superv_i::getShapesOp()
295 if (CORBA::is_nil(myGeomEngine))
297 // get GEOM_IShapesOperations interface
298 if (CORBA::is_nil(myShapesOp) || isNewStudy(myLastStudyID,myStudyID))
299 myShapesOp = myGeomEngine->GetIShapesOperations(myStudyID);
302 //=============================================================================
304 //=============================================================================
305 void GEOM_Superv_i::getBlocksOp()
307 if (CORBA::is_nil(myGeomEngine))
309 // get GEOM_IBlocksOperations interface
310 if (CORBA::is_nil(myBlocksOp) || isNewStudy(myLastStudyID,myStudyID))
311 myBlocksOp = myGeomEngine->GetIBlocksOperations(myStudyID);
314 //=============================================================================
316 //=============================================================================
317 void GEOM_Superv_i::getCurvesOp()
319 if (CORBA::is_nil(myGeomEngine))
321 // get GEOM_ICurvesOperations interface
322 if (CORBA::is_nil(myCurvesOp) || isNewStudy(myLastStudyID,myStudyID))
323 myCurvesOp = myGeomEngine->GetICurvesOperations(myStudyID);
326 //=============================================================================
328 //=============================================================================
329 void GEOM_Superv_i::getLocalOp()
331 if (CORBA::is_nil(myGeomEngine))
333 // get GEOM_ILocalOperations interface
334 if (CORBA::is_nil(myLocalOp) || isNewStudy(myLastStudyID,myStudyID))
335 myLocalOp = myGeomEngine->GetILocalOperations(myStudyID);
338 //=============================================================================
340 //=============================================================================
341 void GEOM_Superv_i::getGroupOp()
343 if (CORBA::is_nil(myGeomEngine))
345 // get GEOM_IGroupOperations interface
346 if (CORBA::is_nil(myGroupOp) || isNewStudy(myLastStudyID,myStudyID))
347 myGroupOp = myGeomEngine->GetIGroupOperations(myStudyID);
350 //=============================================================================
352 //=============================================================================
353 void GEOM_Superv_i::getAdvancedOp()
355 if (CORBA::is_nil(myGeomEngine))
357 // get GEOM_IAdvancedOperations interface
358 if (CORBA::is_nil(myAdvancedOp) || isNewStudy(myLastStudyID,myStudyID))
359 myAdvancedOp = myGeomEngine->GetIAdvancedOperations(myStudyID);
362 //=============================================================================
364 //=============================================================================
365 PortableServer::ServantBase_var GEOM_Superv_i::GetServant(CORBA::Object_ptr theObject,
366 PortableServer::POA_ptr thePOA)
368 if(CORBA::is_nil(theObject)) return NULL;
369 PortableServer::Servant aServant = thePOA->reference_to_servant(theObject);
373 //============================================================================
375 // purpose : save OCAF/Geom document
376 //============================================================================
377 SALOMEDS::TMPFile* GEOM_Superv_i::Save(SALOMEDS::SComponent_ptr theComponent,
379 CORBA::Boolean isMultiFile)
381 SALOMEDS::TMPFile_var aStreamFile;
382 return aStreamFile._retn();
385 //============================================================================
386 // function : SaveASCII()
388 //============================================================================
389 SALOMEDS::TMPFile* GEOM_Superv_i::SaveASCII(SALOMEDS::SComponent_ptr theComponent,
391 CORBA::Boolean isMultiFile)
393 SALOMEDS::TMPFile_var aStreamFile;
394 return aStreamFile._retn();
397 //============================================================================
400 //============================================================================
401 CORBA::Boolean GEOM_Superv_i::Load(SALOMEDS::SComponent_ptr theComponent,
402 const SALOMEDS::TMPFile& theStream,
404 CORBA::Boolean isMultiFile)
409 //============================================================================
410 // function : LoadASCII()
412 //============================================================================
413 CORBA::Boolean GEOM_Superv_i::LoadASCII(SALOMEDS::SComponent_ptr theComponent,
414 const SALOMEDS::TMPFile& theStream,
416 CORBA::Boolean isMultiFile)
421 //============================================================================
422 // function : Close()
424 //============================================================================
425 void GEOM_Superv_i::Close(SALOMEDS::SComponent_ptr theComponent)
429 //============================================================================
430 // function : ComponentDataType()
432 //============================================================================
433 char* GEOM_Superv_i::ComponentDataType()
438 //============================================================================
439 // function : IORToLocalPersistentID()
441 //============================================================================
442 char* GEOM_Superv_i::IORToLocalPersistentID(SALOMEDS::SObject_ptr theSObject,
443 const char* IORString,
444 CORBA::Boolean isMultiFile,
445 CORBA::Boolean isASCII)
450 //============================================================================
451 // function : LocalPersistentIDToIOR()
452 // purpose : Create/Load CORBA object from a persistent ref (an entry)
453 // : Used when a study is loaded
454 // : The IOR (IORName) of object created is returned
455 //============================================================================
456 char* GEOM_Superv_i::LocalPersistentIDToIOR(SALOMEDS::SObject_ptr theSObject,
457 const char* aLocalPersistentID,
458 CORBA::Boolean isMultiFile,
459 CORBA::Boolean isASCII)
464 //============================================================================
465 // function : CanPublishInStudy
467 //============================================================================
468 CORBA::Boolean GEOM_Superv_i::CanPublishInStudy(CORBA::Object_ptr theIOR)
470 if (CORBA::is_nil(myGeomEngine))
472 return myGeomEngine->CanPublishInStudy(theIOR);
475 //============================================================================
476 // function : PublishInStudy
478 //============================================================================
479 SALOMEDS::SObject_ptr GEOM_Superv_i::PublishInStudy(SALOMEDS::Study_ptr theStudy,
480 SALOMEDS::SObject_ptr theSObject,
481 CORBA::Object_ptr theObject,
482 const char* theName) throw (SALOME::SALOME_Exception)
484 if (CORBA::is_nil(myGeomEngine))
486 return myGeomEngine->PublishInStudy(theStudy, theSObject, theObject, theName);
489 //============================================================================
490 // function : PublishNamedShapesInStudy
492 //============================================================================
494 GEOM_Superv_i::PublishNamedShapesInStudy(SALOMEDS::Study_ptr theStudy,
495 //SALOMEDS::SObject_ptr theSObject,
496 CORBA::Object_ptr theObject)
498 if (CORBA::is_nil(myGeomEngine))
500 return myGeomEngine->PublishNamedShapesInStudy(theStudy, theObject);
503 //============================================================================
504 // function : CanCopy()
506 //============================================================================
507 CORBA::Boolean GEOM_Superv_i::CanCopy(SALOMEDS::SObject_ptr theObject)
512 //============================================================================
513 // function : CopyFrom()
515 //============================================================================
516 SALOMEDS::TMPFile* GEOM_Superv_i::CopyFrom(SALOMEDS::SObject_ptr theObject, CORBA::Long& theObjectID)
518 SALOMEDS::TMPFile_var aStreamFile;
519 return aStreamFile._retn();
522 //============================================================================
523 // function : CanPaste()
525 //============================================================================
526 CORBA::Boolean GEOM_Superv_i::CanPaste(const char* theComponentName, CORBA::Long theObjectID)
531 //============================================================================
532 // function : PasteInto()
534 //============================================================================
535 SALOMEDS::SObject_ptr GEOM_Superv_i::PasteInto(const SALOMEDS::TMPFile& theStream,
536 CORBA::Long theObjectID,
537 SALOMEDS::SObject_ptr theObject)
539 SALOMEDS::SObject_var aNewSO;
540 return aNewSO._retn();
543 //================= Primitives Construction : BasicOperations =================
544 //=============================================================================
546 //=============================================================================
547 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointXYZ(CORBA::Double theX,
551 beginService( " GEOM_Superv_i::MakePointXYZ" );
552 MESSAGE("GEOM_Superv_i::MakePointXYZ");
554 // make vertex and return
555 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePointXYZ(theX, theY, theZ);
556 endService( " GEOM_Superv_i::MakePointXYZ" );
560 //=============================================================================
561 // MakePointWithReference:
562 //=============================================================================
563 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointWithReference (GEOM::GEOM_Object_ptr theReference,
568 beginService( " GEOM_Superv_i::MakePointWithReference" );
569 MESSAGE("GEOM_Superv_i::MakePointWithReference");
571 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePointWithReference(theReference, theX, theY, theZ);
572 endService( " GEOM_Superv_i::MakePointWithReference" );
576 //=============================================================================
578 //=============================================================================
579 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnCurve (GEOM::GEOM_Object_ptr theRefCurve,
580 CORBA::Double theParameter)
582 beginService( " GEOM_Superv_i::MakePointOnCurve" );
583 MESSAGE("GEOM_Superv_i::MakePointOnCurve");
585 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePointOnCurve(theRefCurve, theParameter);
586 endService( " GEOM_Superv_i::MakePointOnCurve" );
590 //=============================================================================
591 // MakePointOnCurveByLength:
592 //=============================================================================
593 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnCurveByLength (GEOM::GEOM_Object_ptr theRefCurve,
594 CORBA::Double theLength,
595 CORBA::Double theDirection)
597 beginService( " GEOM_Superv_i::MakePointOnCurveByLength" );
598 MESSAGE("GEOM_Superv_i::MakePointOnCurveByLength");
600 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePointOnCurveByLength(theRefCurve, theLength, theDirection);
601 endService( " GEOM_Superv_i::MakePointOnCurveByLength" );
605 //=============================================================================
606 // MakePointOnCurveByCoord
607 //=============================================================================
608 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnCurveByCoord (GEOM::GEOM_Object_ptr theRefCurve,
609 CORBA::Double theXParameter,
610 CORBA::Double theYParameter,
611 CORBA::Double theZParameter)
613 beginService( " GEOM_Superv_i::MakePointOnCurveByCoord" );
614 MESSAGE("GEOM_Superv_i::MakePointOnCurveByCoord");
616 GEOM::GEOM_Object_ptr anObj =
617 myBasicOp->MakePointOnCurveByCoord(theRefCurve, theXParameter,
618 theYParameter, theZParameter);
619 endService( " GEOM_Superv_i::MakePointOnCurveByCoord" );
623 //=============================================================================
624 // MakePointOnSurface:
625 //=============================================================================
626 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnSurface (GEOM::GEOM_Object_ptr theRefSurface,
627 CORBA::Double theUParameter,
628 CORBA::Double theVParameter)
630 beginService( " GEOM_Superv_i::MakePointOnSurface" );
631 MESSAGE("GEOM_Superv_i::MakePointOnSurface");
633 GEOM::GEOM_Object_ptr anObj =
634 myBasicOp->MakePointOnSurface(theRefSurface, theUParameter, theVParameter);
635 endService( " GEOM_Superv_i::MakePointOnSurface" );
639 //=============================================================================
640 // MakePointOnSurfaceByCoord
641 //=============================================================================
642 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnSurfaceByCoord (GEOM::GEOM_Object_ptr theRefSurface,
643 CORBA::Double theXParameter,
644 CORBA::Double theYParameter,
645 CORBA::Double theZParameter)
647 beginService( " GEOM_Superv_i::MakePointOnSurfaceByCoord" );
648 MESSAGE("GEOM_Superv_i::MakePointOnSurfaceByCoord");
650 GEOM::GEOM_Object_ptr anObj =
651 myBasicOp->MakePointOnSurfaceByCoord(theRefSurface, theXParameter,
652 theYParameter, theZParameter);
653 endService( " GEOM_Superv_i::MakePointOnSurfaceByCoord" );
657 //=============================================================================
658 // MakePointOnLinesIntersection:
659 //=============================================================================
660 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnLinesIntersection (GEOM::GEOM_Object_ptr theRefLine1,
661 GEOM::GEOM_Object_ptr theRefLine2)
663 beginService( " GEOM_Superv_i::MakePointOnLinesIntersection" );
664 MESSAGE("GEOM_Superv_i::MakePointOnLinesIntersection");
666 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePointOnLinesIntersection(theRefLine1, theRefLine2);
667 endService( " GEOM_Superv_i::MakePointOnLinesIntersection" );
671 //=============================================================================
672 // MakeTangentOnCurve:
673 //=============================================================================
674 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeTangentOnCurve (GEOM::GEOM_Object_ptr theRefCurve,
675 CORBA::Double theParameter)
677 beginService( " GEOM_Superv_i::MakeTangentOnCurve" );
678 MESSAGE("GEOM_Superv_i::MakeTangentOnCurve");
680 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeTangentOnCurve(theRefCurve, theParameter);
681 endService( " GEOM_Superv_i::MakeTangentOnCurve" );
685 //=============================================================================
687 //=============================================================================
688 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeVectorDXDYDZ (CORBA::Double theDX,
692 beginService( " GEOM_Superv_i::MakeVectorDXDYDZ" );
693 MESSAGE("GEOM_Superv_i::MakeVectorDXDYDZ");
695 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeVectorDXDYDZ(theDX, theDY, theDZ);
696 endService( " GEOM_Superv_i::MakeVectorDXDYDZ" );
700 //=============================================================================
702 //=============================================================================
703 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeVectorTwoPnt (GEOM::GEOM_Object_ptr thePnt1,
704 GEOM::GEOM_Object_ptr thePnt2)
706 beginService( " GEOM_Superv_i::MakeVectorTwoPnt" );
707 MESSAGE("GEOM_Superv_i::MakeVector");
709 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeVectorTwoPnt(thePnt1, thePnt2);
710 endService( " GEOM_Superv_i::MakeVectorTwoPnt" );
714 //=============================================================================
716 //=============================================================================
717 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeLineTwoPnt (GEOM::GEOM_Object_ptr thePnt1,
718 GEOM::GEOM_Object_ptr thePnt2)
720 beginService( " GEOM_Superv_i::MakeLineTwoPnt");
721 MESSAGE("GEOM_Superv_i::MakeLineTwoPnt");
723 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeLineTwoPnt(thePnt1, thePnt2);
724 endService( " GEOM_Superv_i::MakeLineTwoPnt");
728 //=============================================================================
730 //=============================================================================
731 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeLineTwoFaces (GEOM::GEOM_Object_ptr theFace1,
732 GEOM::GEOM_Object_ptr theFace2)
734 beginService( " GEOM_Superv_i::MakeLineTwoFaces");
735 MESSAGE("GEOM_Superv_i::MakeLineTwoFaces");
737 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeLineTwoFaces(theFace1, theFace2);
738 endService( " GEOM_Superv_i::MakeLineTwoFaces");
742 //=============================================================================
743 // MakePlaneThreePnt:
744 //=============================================================================
745 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePlaneThreePnt (GEOM::GEOM_Object_ptr thePnt1,
746 GEOM::GEOM_Object_ptr thePnt2,
747 GEOM::GEOM_Object_ptr thePnt3,
748 CORBA::Double theTrimSize)
750 beginService( " GEOM_Superv_i::MakePlaneThreePnt");
751 MESSAGE("GEOM_Superv_i::MakePlaneThreePnt");
753 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePlaneThreePnt(thePnt1, thePnt2, thePnt3, theTrimSize);
754 endService( " GEOM_Superv_i::MakePlaneThreePnt");
758 //=============================================================================
760 //=============================================================================
761 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePlanePntVec (GEOM::GEOM_Object_ptr thePnt,
762 GEOM::GEOM_Object_ptr theVec,
763 CORBA::Double theTrimSize)
765 beginService( " GEOM_Superv_i::MakePlanePntVec" );
766 MESSAGE("GEOM_Superv_i::MakePlanePntVec");
768 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePlanePntVec(thePnt, theVec, theTrimSize);
769 endService( " GEOM_Superv_i::MakePlanePntVec" );
773 //=============================================================================
775 //=============================================================================
776 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePlaneFace (GEOM::GEOM_Object_ptr theFace,
777 CORBA::Double theTrimSize)
779 beginService( " GEOM_Superv_i::MakePlaneFace" );
780 MESSAGE("GEOM_Superv_i::MakePlaneFace");
782 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePlaneFace(theFace, theTrimSize);
783 endService( " GEOM_Superv_i::MakePlaneFace" );
787 //=============================================================================
789 //=============================================================================
790 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePlane2Vec (GEOM::GEOM_Object_ptr theVec1,
791 GEOM::GEOM_Object_ptr theVec2,
792 CORBA::Double theTrimSize)
794 beginService( " GEOM_Superv_i::MakePlane2Vec" );
795 MESSAGE("GEOM_Superv_i::MakePlane2Vec");
797 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePlane2Vec(theVec1, theVec2, theTrimSize);
798 endService( " GEOM_Superv_i::MakePlane2Vec" );
802 //=============================================================================
804 //=============================================================================
805 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePlaneLCS (GEOM::GEOM_Object_ptr theLCS,
806 CORBA::Double theTrimSize,
807 CORBA::Double theOrientation)
809 beginService( " GEOM_Superv_i::MakePlaneLCS" );
810 MESSAGE("GEOM_Superv_i::MakePlaneLCS");
812 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePlaneLCS(theLCS, theTrimSize, theOrientation);
813 endService( " GEOM_Superv_i::MakePlaneLCS" );
817 //=============================================================================
819 //=============================================================================
820 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeMarker
821 (CORBA::Double theOX , CORBA::Double theOY , CORBA::Double theOZ,
822 CORBA::Double theXDX, CORBA::Double theXDY, CORBA::Double theXDZ,
823 CORBA::Double theYDX, CORBA::Double theYDY, CORBA::Double theYDZ)
825 beginService( " GEOM_Superv_i::MakeMarker" );
826 MESSAGE("GEOM_Superv_i::MakeMarker");
828 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeMarker(theOX, theOY, theOZ, theXDX, theXDY, theXDZ, theYDX, theYDY, theYDZ);
829 endService( " GEOM_Superv_i::MakeMarker" );
833 //=============================================================================
834 // MakeMarkerFromShape:
835 //=============================================================================
836 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeMarkerFromShape (GEOM::GEOM_Object_ptr theShape)
838 beginService( " GEOM_Superv_i::MakeMarkerFromShape" );
839 MESSAGE("GEOM_Superv_i::MakeMarkerFromShape");
841 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeMarkerFromShape(theShape);
842 endService( " GEOM_Superv_i::MakeMarkerFromShape" );
846 //=============================================================================
847 // MakeMarkerPntTwoVec:
848 //=============================================================================
849 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeMarkerPntTwoVec (GEOM::GEOM_Object_ptr theOrigin,
850 GEOM::GEOM_Object_ptr theXVec,
851 GEOM::GEOM_Object_ptr theYVec)
853 beginService( " GEOM_Superv_i::MakeMarkerPntTwoVec" );
854 MESSAGE("GEOM_Superv_i::MakeMarkerPntTwoVec");
856 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeMarkerPntTwoVec(theOrigin, theXVec, theYVec);
857 endService( " GEOM_Superv_i::MakeMarkerPntTwoVec" );
861 //=============================================================================
862 // MakeTangentPlaneOnFace:
863 //=============================================================================
864 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeTangentPlaneOnFace (GEOM::GEOM_Object_ptr theFace,
865 CORBA::Double theParameterU,
866 CORBA::Double theParameterV,
867 CORBA::Double theTrimSize)
869 beginService( " GEOM_Superv_i::MakeTangentPlaneOnFace" );
870 MESSAGE("GEOM_Superv_i::MakeTangentPlaneOnFace");
872 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeTangentPlaneOnFace(theFace, theParameterU,theParameterV,theTrimSize);
873 endService( " GEOM_Superv_i::MakeTangentPlaneOnFace" );
877 //================= Primitives Construction : 3DPrimOperations ================
878 //=============================================================================
880 //=============================================================================
881 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeBox (CORBA::Double theX1,
888 beginService( " GEOM_Superv_i::MakeBox" );
889 MESSAGE("GEOM_Superv_i::MakeBox");
892 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeBoxTwoPnt(myBasicOp->MakePointXYZ(theX1, theY1, theZ1),
893 myBasicOp->MakePointXYZ(theX2, theY2, theZ2));
894 endService( " GEOM_Superv_i::MakeBox" );
898 //=============================================================================
900 //=============================================================================
901 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeBoxDXDYDZ (CORBA::Double theDX,
905 beginService( " GEOM_Superv_i::MakeBoxDXDYDZ" );
906 MESSAGE("GEOM_Superv_i::MakeBoxDXDYDZ");
908 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeBoxDXDYDZ(theDX, theDY, theDZ);
909 endService( " GEOM_Superv_i::MakeBoxDXDYDZ" );
913 //=============================================================================
915 //=============================================================================
916 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeBoxTwoPnt (GEOM::GEOM_Object_ptr thePnt1,
917 GEOM::GEOM_Object_ptr thePnt2)
919 beginService( " GEOM_Superv_i::MakeBoxTwoPnt" );
920 MESSAGE("GEOM_Superv_i::MakeBoxTwoPnt");
922 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeBoxTwoPnt(thePnt1, thePnt2);
923 endService( " GEOM_Superv_i::MakeBoxTwoPnt" );
927 //=============================================================================
929 //=============================================================================
930 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFaceHW (CORBA::Double theH,
932 CORBA::Short theOrientation)
934 beginService( " GEOM_Superv_i::MakeFaceHW" );
935 MESSAGE("GEOM_Superv_i::MakeFaceHW");
937 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeFaceHW(theH, theW, theOrientation);
938 endService( " GEOM_Superv_i::MakeFaceHW" );
942 //=============================================================================
944 //=============================================================================
945 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFaceObjHW (GEOM::GEOM_Object_ptr theObj,
949 beginService( " GEOM_Superv_i::MakeFaceObjHW" );
950 MESSAGE("GEOM_Superv_i::MakeFaceObjHW");
952 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeFaceObjHW(theObj, theH, theW);
953 endService( " GEOM_Superv_i::MakeFaceObjHW" );
957 //=============================================================================
959 //=============================================================================
960 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeDiskPntVecR (GEOM::GEOM_Object_ptr theCenter,
961 GEOM::GEOM_Object_ptr theVector,
964 beginService( " GEOM_Superv_i::MakeDiskPntVecR" );
965 MESSAGE("GEOM_Superv_i::MakeDiskPntVecR");
967 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeDiskPntVecR(theCenter, theVector, theR);
968 endService( " GEOM_Superv_i::MakeDiskPntVecR" );
972 //=============================================================================
974 //=============================================================================
975 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeDiskThreePnt (GEOM::GEOM_Object_ptr thePnt1,
976 GEOM::GEOM_Object_ptr thePnt2,
977 GEOM::GEOM_Object_ptr thePnt3)
979 beginService( " GEOM_Superv_i::MakeDiskThreePnt" );
980 MESSAGE("GEOM_Superv_i::MakeDiskThreePnt");
982 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeDiskThreePnt(thePnt1, thePnt2, thePnt3);
983 endService( " GEOM_Superv_i::MakeDiskThreePnt" );
987 //=============================================================================
989 //=============================================================================
990 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeDiskR (CORBA::Double theR,
991 CORBA::Short theOrientation)
993 beginService( " GEOM_Superv_i::MakeDiskR" );
994 MESSAGE("GEOM_Superv_i::MakeDiskR");
996 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeDiskR(theR, theOrientation);
997 endService( " GEOM_Superv_i::MakeDiskR" );
1001 //=============================================================================
1002 // MakeCylinderPntVecRH:
1003 //=============================================================================
1004 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCylinderPntVecRH (GEOM::GEOM_Object_ptr thePnt,
1005 GEOM::GEOM_Object_ptr theAxis,
1006 CORBA::Double theRadius,
1007 CORBA::Double theHeight)
1009 beginService( " GEOM_Superv_i::MakeCylinderPntVecRH" );
1010 MESSAGE("GEOM_Superv_i::MakeCylinderPntVecRH");
1012 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeCylinderPntVecRH(thePnt, theAxis, theRadius, theHeight);
1013 endService( " GEOM_Superv_i::MakeCylinderPntVecRH" );
1017 //=============================================================================
1019 //=============================================================================
1020 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCylinderRH (CORBA::Double theR,
1023 beginService( " GEOM_Superv_i::MakeCylinderRH" );
1024 MESSAGE("GEOM_Superv_i::MakeCylinderRH");
1026 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeCylinderRH(theR, theH);
1027 endService( " GEOM_Superv_i::MakeCylinderRH" );
1031 //=============================================================================
1033 //=============================================================================
1034 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSphere (CORBA::Double theX,
1037 CORBA::Double theRadius)
1039 beginService( " GEOM_Superv_i::MakeSphepe" );
1040 MESSAGE("GEOM_Superv_i::MakeSphepe");
1043 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeSpherePntR(myBasicOp->MakePointXYZ(theX, theY, theZ), theRadius);
1044 endService( " GEOM_Superv_i::MakeSphepe" );
1048 //=============================================================================
1050 //=============================================================================
1051 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSphereR (CORBA::Double theR)
1053 beginService( " GEOM_Superv_i::MakeSphereR" );
1054 MESSAGE("GEOM_Superv_i::MakeSphereR");
1056 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeSphereR(theR);
1057 endService( " GEOM_Superv_i::MakeSphereR" );
1061 //=============================================================================
1063 //=============================================================================
1064 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSpherePntR (GEOM::GEOM_Object_ptr thePnt,
1067 beginService( " GEOM_Superv_i::MakeSpherePntR" );
1068 MESSAGE("GEOM_Superv_i::MakeSpherePntR");
1070 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeSpherePntR(thePnt, theR);
1071 endService( " GEOM_Superv_i::MakeSpherePntR" );
1075 //=============================================================================
1076 // MakeTorusPntVecRR:
1077 //=============================================================================
1078 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeTorusPntVecRR (GEOM::GEOM_Object_ptr thePnt,
1079 GEOM::GEOM_Object_ptr theVec,
1080 CORBA::Double theRMajor,
1081 CORBA::Double theRMinor)
1083 beginService( " GEOM_Superv_i::MakeTorusPntVecRR" );
1084 MESSAGE("GEOM_Superv_i::MakeTorusPntVecRR");
1086 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeTorusPntVecRR(thePnt, theVec, theRMajor, theRMinor);
1087 endService( " GEOM_Superv_i::MakeTorusPntVecRR" );
1091 //=============================================================================
1093 //=============================================================================
1094 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeTorusRR (CORBA::Double theRMajor,
1095 CORBA::Double theRMinor)
1097 beginService( " GEOM_Superv_i::MakeTorusRR" );
1098 MESSAGE("GEOM_Superv_i::MakeTorusRR");
1100 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeTorusRR(theRMajor, theRMinor);
1101 endService( " GEOM_Superv_i::MakeTorusRR" );
1105 //=============================================================================
1106 // MakeConePntVecR1R2H:
1107 //=============================================================================
1108 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeConePntVecR1R2H (GEOM::GEOM_Object_ptr thePnt,
1109 GEOM::GEOM_Object_ptr theAxis,
1110 CORBA::Double theR1,
1111 CORBA::Double theR2,
1112 CORBA::Double theHeight)
1114 beginService( " GEOM_Superv_i::MakeConePntVecR1R2H" );
1115 MESSAGE("GEOM_Superv_i::MakeConePntVecR1R2H");
1117 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeConePntVecR1R2H(thePnt, theAxis, theR1, theR2, theHeight);
1118 endService( " GEOM_Superv_i::MakeConePntVecR1R2H" );
1122 //=============================================================================
1124 //=============================================================================
1125 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeConeR1R2H (CORBA::Double theR1,
1126 CORBA::Double theR2,
1127 CORBA::Double theHeight)
1129 beginService( " GEOM_Superv_i::MakeConeR1R2H" );
1130 MESSAGE("GEOM_Superv_i::MakeConeR1R2H");
1132 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeConeR1R2H(theR1, theR2, theHeight);
1133 endService( " GEOM_Superv_i::MakeConeR1R2H" );
1137 //=============================================================================
1139 //=============================================================================
1140 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismVecH (GEOM::GEOM_Object_ptr theBase,
1141 GEOM::GEOM_Object_ptr theVec,
1144 beginService( " GEOM_Superv_i::MakePrismVecH" );
1145 MESSAGE("GEOM_Superv_i::MakePrismVecH");
1147 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismVecH(theBase, theVec, theH);
1148 endService( " GEOM_Superv_i::MakePrismVecH" );
1152 //=============================================================================
1153 // MakePrismVecH2Ways:
1154 //=============================================================================
1155 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismVecH2Ways (GEOM::GEOM_Object_ptr theBase,
1156 GEOM::GEOM_Object_ptr theVec,
1159 beginService( " GEOM_Superv_i::MakePrismVecH2Ways" );
1160 MESSAGE("GEOM_Superv_i::MakePrismVecH2Ways");
1162 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismVecH2Ways(theBase, theVec, theH);
1163 endService( " GEOM_Superv_i::MakePrismVecH2Ways" );
1167 //=============================================================================
1169 //=============================================================================
1170 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismTwoPnt (GEOM::GEOM_Object_ptr theBase,
1171 GEOM::GEOM_Object_ptr thePoint1,
1172 GEOM::GEOM_Object_ptr thePoint2)
1174 beginService( " GEOM_Superv_i::MakePrismTwoPnt" );
1175 MESSAGE("GEOM_Superv_i::MakePrismTwoPnt");
1177 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismTwoPnt(theBase, thePoint1, thePoint2);
1178 endService( " GEOM_Superv_i::MakePrismTwoPnt" );
1182 //=============================================================================
1183 // MakePrismTwoPnt2Ways:
1184 //=============================================================================
1185 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismTwoPnt2Ways (GEOM::GEOM_Object_ptr theBase,
1186 GEOM::GEOM_Object_ptr thePoint1,
1187 GEOM::GEOM_Object_ptr thePoint2)
1189 beginService( " GEOM_Superv_i::MakePrismTwoPnt2Ways" );
1190 MESSAGE("GEOM_Superv_i::MakePrismTwoPnt2Ways");
1192 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismTwoPnt2Ways(theBase, thePoint1, thePoint2);
1193 endService( " GEOM_Superv_i::MakePrismTwoPnt2Ways" );
1197 //=============================================================================
1199 //=============================================================================
1200 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismDXDYDZ (GEOM::GEOM_Object_ptr theBase,
1201 CORBA::Double theDX, CORBA::Double theDY, CORBA::Double theDZ)
1203 beginService( " GEOM_Superv_i::MakePrismDXDYDZ" );
1204 MESSAGE("GEOM_Superv_i::MakePrismDXDYDZ");
1206 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismDXDYDZ(theBase, theDX, theDY, theDZ);
1207 endService( " GEOM_Superv_i::MakePrismDXDYDZ" );
1211 //=============================================================================
1213 //=============================================================================
1214 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismDXDYDZ2Ways (GEOM::GEOM_Object_ptr theBase,
1215 CORBA::Double theDX, CORBA::Double theDY, CORBA::Double theDZ)
1217 beginService( " GEOM_Superv_i::MakePrismDXDYDZ2Ways" );
1218 MESSAGE("GEOM_Superv_i::MakePrismDXDYDZ2Ways");
1220 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismDXDYDZ2Ways(theBase, theDX, theDY, theDZ);
1221 endService( " GEOM_Superv_i::MakePrismDXDYDZ2Ways" );
1225 //=============================================================================
1227 //=============================================================================
1228 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePipe (GEOM::GEOM_Object_ptr theBase,
1229 GEOM::GEOM_Object_ptr thePath)
1231 beginService( " GEOM_Superv_i::MakePipe" );
1232 MESSAGE("GEOM_Superv_i::MakePipe");
1234 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePipe(theBase, thePath);
1235 endService( " GEOM_Superv_i::MakePipe" );
1239 //=============================================================================
1240 // MakeRevolutionAxisAngle:
1241 //=============================================================================
1242 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeRevolutionAxisAngle (GEOM::GEOM_Object_ptr theBase,
1243 GEOM::GEOM_Object_ptr theAxis,
1244 CORBA::Double theAngle)
1246 beginService( " GEOM_Superv_i::MakeRevolutionAxisAngle" );
1247 MESSAGE("GEOM_Superv_i::MakeRevolutionAxisAngle");
1249 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeRevolutionAxisAngle(theBase, theAxis, theAngle);
1250 endService( " GEOM_Superv_i::MakeRevolutionAxisAngle" );
1254 //=============================================================================
1255 // MakeRevolutionAxisAngle:
1256 //=============================================================================
1257 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeRevolutionAxisAngle2Ways (GEOM::GEOM_Object_ptr theBase,
1258 GEOM::GEOM_Object_ptr theAxis,
1259 CORBA::Double theAngle)
1261 beginService( " GEOM_Superv_i::MakeRevolutionAxisAngle2Ways" );
1262 MESSAGE("GEOM_Superv_i::MakeRevolutionAxisAngle2Ways");
1264 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeRevolutionAxisAngle2Ways(theBase, theAxis, theAngle);
1265 endService( " GEOM_Superv_i::MakeRevolutionAxisAngle2Ways" );
1269 //=============================================================================
1271 //=============================================================================
1272 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilling (GEOM::GEOM_Object_ptr theShape,
1273 CORBA::Long theMinDeg,
1274 CORBA::Long theMaxDeg,
1275 CORBA::Double theTol2D,
1276 CORBA::Double theTol3D,
1277 CORBA::Long theNbIter,
1278 GEOM::filling_oper_method theMethod,
1279 CORBA::Boolean theApprox)
1281 beginService( " GEOM_Superv_i::MakeFilling" );
1282 MESSAGE("GEOM_Superv_i::MakeFilling");
1284 GEOM::GEOM_Object_ptr anObj =
1285 my3DPrimOp->MakeFilling(theShape, theMinDeg, theMaxDeg, theTol2D, theTol3D,
1286 theNbIter, theMethod, theApprox);
1287 endService( " GEOM_Superv_i::MakeFilling" );
1291 //============================= BooleanOperations =============================
1292 //=============================================================================
1294 //=============================================================================
1295 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeBoolean (GEOM::GEOM_Object_ptr theShape1,
1296 GEOM::GEOM_Object_ptr theShape2,
1297 CORBA::Long theOperation)
1299 beginService( " GEOM_Superv_i::MakeBoolean" );
1300 // theOperation indicates the operation to be done:
1301 // 1 - Common, 2 - Cut, 3 - Fuse, 4 - Section
1302 MESSAGE("GEOM_Superv_i::MakeBoolean");
1304 GEOM::GEOM_Object_ptr anObj = myBoolOp->MakeBoolean(theShape1, theShape2, theOperation);
1305 endService( " GEOM_Superv_i::MakeBoolean" );
1309 //=============================================================================
1310 // MakeThruSections:
1311 //=============================================================================
1312 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeThruSections(const GEOM::ListOfGO& theSeqSections,
1313 CORBA::Boolean theModeSolid,
1314 CORBA::Double thePreci,
1315 CORBA::Boolean theRuled)
1317 beginService( " GEOM_Superv_i::MakeThruSections" );
1318 MESSAGE("GEOM_Superv_i::MakeThruSections");
1320 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeThruSections(theSeqSections, theModeSolid,thePreci,theRuled);
1321 endService( " GEOM_Superv_i::MakeThruSections" );
1325 //=============================================================================
1327 //=============================================================================
1328 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePipeWithDifferentSections
1329 (const GEOM::ListOfGO& theBases,
1330 const GEOM::ListOfGO& theLocations,
1331 GEOM::GEOM_Object_ptr thePath,
1332 CORBA::Boolean theWithContact,
1333 CORBA::Boolean theWithCorrections)
1335 beginService( " GEOM_Superv_i::MakePipeWithDifferentSections" );
1336 MESSAGE("GEOM_Superv_i::MakePipeWithDifferentSections");
1338 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePipeWithDifferentSections(theBases,theLocations, thePath,theWithContact,theWithCorrections);
1339 endService( " GEOM_Superv_i::MakePipeWithDifferentSections" );
1344 //=============================================================================
1346 //=============================================================================
1347 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePipeWithShellSections
1348 (const GEOM::ListOfGO& theBases,
1349 const GEOM::ListOfGO& theSubBases,
1350 const GEOM::ListOfGO& theLocations,
1351 GEOM::GEOM_Object_ptr thePath,
1352 CORBA::Boolean theWithContact,
1353 CORBA::Boolean theWithCorrections)
1355 beginService( " GEOM_Superv_i::MakePipeWithShellSections" );
1356 MESSAGE("GEOM_Superv_i::MakePipeWithShellSections");
1358 GEOM::GEOM_Object_ptr anObj =
1359 my3DPrimOp->MakePipeWithShellSections(theBases, theSubBases,
1360 theLocations, thePath,
1361 theWithContact, theWithCorrections);
1362 endService( " GEOM_Superv_i::MakePipeWithShellSections" );
1367 //=============================================================================
1369 //=============================================================================
1370 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePipeShellsWithoutPath
1371 (const GEOM::ListOfGO& theBases,
1372 const GEOM::ListOfGO& theLocations)
1374 beginService( " GEOM_Superv_i::MakePipeShellsWithoutPath" );
1375 MESSAGE("GEOM_Superv_i::MakePipeShellsWithoutPath");
1377 GEOM::GEOM_Object_ptr anObj =
1378 my3DPrimOp->MakePipeShellsWithoutPath(theBases,theLocations);
1379 endService( " GEOM_Superv_i::MakePipeShellsWithoutPath" );
1384 //=============================================================================
1386 //=============================================================================
1387 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePipeBiNormalAlongVector
1388 (GEOM::GEOM_Object_ptr theBase,
1389 GEOM::GEOM_Object_ptr thePath,
1390 GEOM::GEOM_Object_ptr theVec)
1392 beginService( " GEOM_Superv_i::MakePipeBiNormalAlongVector" );
1393 MESSAGE("GEOM_Superv_i::MakePipeBiNormalAlongVector");
1395 GEOM::GEOM_Object_ptr anObj =
1396 my3DPrimOp->MakePipeBiNormalAlongVector(theBase, thePath, theVec);
1397 endService( " GEOM_Superv_i::MakePipeBiNormalAlongVector" );
1402 //=============================================================================
1404 //=============================================================================
1405 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFuse (GEOM::GEOM_Object_ptr theShape1,
1406 GEOM::GEOM_Object_ptr theShape2)
1408 beginService( " GEOM_Superv_i::MakeFuse" );
1409 MESSAGE("GEOM_Superv_i::MakeFuse");
1411 GEOM::GEOM_Object_ptr anObj = myBoolOp->MakeBoolean(theShape1, theShape2, 3);
1412 endService( " GEOM_Superv_i::MakeFuse" );
1416 //=============================================================================
1418 //=============================================================================
1419 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePartition (GEOM::GEOM_List_ptr theShapes,
1420 GEOM::GEOM_List_ptr theTools,
1421 GEOM::GEOM_List_ptr theKeepInside,
1422 GEOM::GEOM_List_ptr theRemoveInside,
1423 CORBA::Short theLimit,
1424 CORBA::Boolean theRemoveWebs,
1425 GEOM::GEOM_List_ptr theMaterials,
1426 CORBA::Short theKeepNonlimitShapes)
1428 beginService( " GEOM_Superv_i::MakePartition" );
1429 MESSAGE("GEOM_Superv_i::MakePartition");
1430 GEOM_List_i<GEOM::ListOfGO>* aListImplS =
1431 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theShapes, myPOA).in());
1432 GEOM_List_i<GEOM::ListOfGO>* aListImplT =
1433 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theTools, myPOA).in());
1434 GEOM_List_i<GEOM::ListOfGO>* aListImplKI =
1435 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theKeepInside, myPOA).in());
1436 GEOM_List_i<GEOM::ListOfGO>* aListImplRI =
1437 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theRemoveInside, myPOA).in());
1438 GEOM_List_i<GEOM::ListOfLong>* aListImplM =
1439 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theMaterials, myPOA).in());
1440 if (aListImplS && aListImplT && aListImplKI && aListImplRI && aListImplM) {
1442 GEOM::GEOM_Object_ptr anObj =
1443 myBoolOp->MakePartition(aListImplS->GetList(), aListImplT->GetList(),
1444 aListImplKI->GetList(), aListImplRI->GetList(),
1445 theLimit, theRemoveWebs, aListImplM->GetList(),
1446 theKeepNonlimitShapes);
1447 endService( " GEOM_Superv_i::MakePartition" );
1450 endService( " GEOM_Superv_i::MakePartition" );
1454 //=============================================================================
1455 // MakeHalfPartition:
1456 //=============================================================================
1457 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeHalfPartition (GEOM::GEOM_Object_ptr theShape,
1458 GEOM::GEOM_Object_ptr thePlane)
1460 beginService( " GEOM_Superv_i::MakeHalfPartition" );
1461 MESSAGE("GEOM_Superv_i::MakeHalfPartition");
1463 GEOM::GEOM_Object_ptr anObj = myBoolOp->MakeHalfPartition(theShape, thePlane);
1464 endService( " GEOM_Superv_i::MakeHalfPartition" );
1468 //============================== InsertOperations =============================
1469 //=============================================================================
1471 //=============================================================================
1472 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCopy (GEOM::GEOM_Object_ptr theOriginal)
1474 beginService( " GEOM_Superv_i::MakeCopy" );
1475 MESSAGE("GEOM_Superv_i::MakeCopy");
1477 GEOM::GEOM_Object_ptr anObj = myInsOp->MakeCopy(theOriginal);
1478 endService( " GEOM_Superv_i::MakeCopy" );
1482 //=============================================================================
1484 //=============================================================================
1485 void GEOM_Superv_i::Export (GEOM::GEOM_Object_ptr theObject,
1486 const char* theFileName,
1487 const char* theFormatName)
1489 beginService( " GEOM_Superv_i::Export" );
1490 MESSAGE("GEOM_Superv_i::Export");
1492 myInsOp->Export(theObject, theFileName, theFormatName);
1493 endService( " GEOM_Superv_i::Export" );
1496 //=============================================================================
1498 //=============================================================================
1499 GEOM::GEOM_Object_ptr GEOM_Superv_i::Import (const char* theFileName,
1500 const char* theFormatName)
1502 beginService( " GEOM_Superv_i::Import" );
1503 MESSAGE("GEOM_Superv_i::Import");
1505 GEOM::GEOM_Object_ptr anObj = myInsOp->Import(theFileName, theFormatName);
1506 endService( " GEOM_Superv_i::Import" );
1510 //=============================================================================
1511 // ImportTranslators:
1512 //=============================================================================
1513 void GEOM_Superv_i::ImportTranslators (GEOM::string_array_out theFormats,
1514 GEOM::string_array_out thePatterns)
1516 beginService( " GEOM_Superv_i::ImportTranslators" );
1517 MESSAGE("GEOM_Superv_i::ImportTranslators");
1519 myInsOp->ImportTranslators(theFormats, thePatterns);
1520 endService( " GEOM_Superv_i::ImportTranslators" );
1523 //=============================================================================
1524 // ExportTranslators:
1525 //=============================================================================
1526 void GEOM_Superv_i::ExportTranslators (GEOM::string_array_out theFormats,
1527 GEOM::string_array_out thePatterns)
1529 beginService( " GEOM_Superv_i::ExportTranslators" );
1530 MESSAGE("GEOM_Superv_i::ExportTranslators");
1532 myInsOp->ExportTranslators(theFormats, thePatterns);
1533 endService( " GEOM_Superv_i::ExportTranslators" );
1536 //============================= TransformOperations ===========================
1537 //=============================================================================
1538 // TranslateTwoPoints:
1539 //=============================================================================
1540 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateTwoPoints (GEOM::GEOM_Object_ptr theObject,
1541 GEOM::GEOM_Object_ptr thePoint1,
1542 GEOM::GEOM_Object_ptr thePoint2)
1544 beginService( " GEOM_Superv_i::TranslateTwoPoints" );
1545 MESSAGE("GEOM_Superv_i::TranslateTwoPoints");
1547 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateTwoPoints(theObject, thePoint1, thePoint2);
1548 endService( " GEOM_Superv_i::TranslateTwoPoints" );
1552 //=============================================================================
1553 // TranslateTwoPointsCopy:
1554 //=============================================================================
1555 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateTwoPointsCopy (GEOM::GEOM_Object_ptr theObject,
1556 GEOM::GEOM_Object_ptr thePoint1,
1557 GEOM::GEOM_Object_ptr thePoint2)
1559 beginService( " GEOM_Superv_i::TranslateTwoPointsCopy" );
1560 MESSAGE("GEOM_Superv_i::TranslateTwoPointsCopy");
1562 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateTwoPointsCopy(theObject, thePoint1, thePoint2);
1563 endService( " GEOM_Superv_i::TranslateTwoPointsCopy" );
1567 //=============================================================================
1569 //=============================================================================
1570 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateDXDYDZ (GEOM::GEOM_Object_ptr theObject,
1571 CORBA::Double theDX,
1572 CORBA::Double theDY,
1573 CORBA::Double theDZ)
1575 beginService( " GEOM_Superv_i::TranslateDXDYDZ" );
1576 MESSAGE("GEOM_Superv_i::TranslateDXDYDZ");
1578 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateDXDYDZ(theObject, theDX, theDY, theDZ);
1579 endService( " GEOM_Superv_i::TranslateDXDYDZ" );
1583 //=============================================================================
1584 // TranslateDXDYDZCopy:
1585 //=============================================================================
1586 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateDXDYDZCopy (GEOM::GEOM_Object_ptr theObject,
1587 CORBA::Double theDX,
1588 CORBA::Double theDY,
1589 CORBA::Double theDZ)
1591 beginService( " GEOM_Superv_i::TranslateDXDYDZCopy" );
1592 MESSAGE("GEOM_Superv_i::TranslateDXDYDZCopy");
1594 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateDXDYDZCopy(theObject, theDX, theDY, theDZ);
1595 endService( " GEOM_Superv_i::TranslateDXDYDZCopy" );
1599 //=============================================================================
1601 //=============================================================================
1602 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateVector (GEOM::GEOM_Object_ptr theObject,
1603 GEOM::GEOM_Object_ptr theVector)
1605 beginService( " GEOM_Superv_i::TranslateVector" );
1606 MESSAGE("GEOM_Superv_i::TranslateVector");
1608 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateVector(theObject, theVector);
1609 endService( " GEOM_Superv_i::TranslateVector" );
1613 //=============================================================================
1614 // TranslateVectorCopy:
1615 //=============================================================================
1616 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateVectorCopy (GEOM::GEOM_Object_ptr theObject,
1617 GEOM::GEOM_Object_ptr theVector)
1619 beginService( " GEOM_Superv_i::TranslateVectorCopy" );
1620 MESSAGE("GEOM_Superv_i::TranslateVectorCopy");
1622 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateVectorCopy(theObject, theVector);
1623 endService( " GEOM_Superv_i::TranslateVectorCopy" );
1627 //=============================================================================
1628 // TranslateVectorDistance:
1629 //=============================================================================
1630 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateVectorDistance (GEOM::GEOM_Object_ptr theObject,
1631 GEOM::GEOM_Object_ptr theVector,
1632 CORBA::Double theDistance,
1633 CORBA::Boolean theCopy)
1635 beginService( " GEOM_Superv_i::TranslateVectorDistance" );
1636 MESSAGE("GEOM_Superv_i::TranslateVectorDistance");
1638 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateVectorDistance(theObject,
1639 theVector, theDistance, theCopy);
1640 endService( " GEOM_Superv_i::TranslateVectorDistance" );
1644 //=============================================================================
1645 // MultiTranslate1D:
1646 //=============================================================================
1647 GEOM::GEOM_Object_ptr GEOM_Superv_i::MultiTranslate1D (GEOM::GEOM_Object_ptr theObject,
1648 GEOM::GEOM_Object_ptr theVector,
1649 CORBA::Double theStep,
1650 CORBA::Long theNbTimes)
1652 beginService( " GEOM_Superv_i::MultiTranslate1D" );
1653 MESSAGE("GEOM_Superv_i::MultiTranslate1D");
1655 GEOM::GEOM_Object_ptr anObj = myTransfOp->MultiTranslate1D(theObject, theVector, theStep, theNbTimes);
1656 endService( " GEOM_Superv_i::MultiTranslate1D" );
1660 //=============================================================================
1661 // MultiTranslate2D:
1662 //=============================================================================
1663 GEOM::GEOM_Object_ptr GEOM_Superv_i::MultiTranslate2D (GEOM::GEOM_Object_ptr theObject,
1664 GEOM::GEOM_Object_ptr theVector1,
1665 CORBA::Double theStep1,
1666 CORBA::Long theNbTimes1,
1667 GEOM::GEOM_Object_ptr theVector2,
1668 CORBA::Double theStep2,
1669 CORBA::Long theNbTimes2)
1671 beginService( " GEOM_Superv_i::MultiTranslate2D" );
1672 MESSAGE("GEOM_Superv_i::MultiTranslate2D");
1674 GEOM::GEOM_Object_ptr anObj = myTransfOp->MultiTranslate2D(theObject, theVector1, theStep1, theNbTimes1,
1675 theVector2, theStep2, theNbTimes2);
1676 endService( " GEOM_Superv_i::MultiTranslate2D" );
1680 //=============================================================================
1682 //=============================================================================
1683 GEOM::GEOM_Object_ptr GEOM_Superv_i::Rotate (GEOM::GEOM_Object_ptr theObject,
1684 GEOM::GEOM_Object_ptr theAxis,
1685 CORBA::Double theAngle)
1687 beginService( " GEOM_Superv_i::Rotate" );
1688 MESSAGE("GEOM_Superv_i::Rotate");
1690 GEOM::GEOM_Object_ptr anObj = myTransfOp->Rotate(theObject, theAxis, theAngle);
1691 endService( " GEOM_Superv_i::Rotate" );
1695 //=============================================================================
1697 //=============================================================================
1698 GEOM::GEOM_Object_ptr GEOM_Superv_i::RotateCopy (GEOM::GEOM_Object_ptr theObject,
1699 GEOM::GEOM_Object_ptr theAxis,
1700 CORBA::Double theAngle)
1702 beginService( " GEOM_Superv_i::RotateCopy" );
1703 MESSAGE("GEOM_Superv_i::RotateCopy");
1705 GEOM::GEOM_Object_ptr anObj = myTransfOp->RotateCopy(theObject, theAxis, theAngle);
1706 endService( " GEOM_Superv_i::RotateCopy" );
1709 //=============================================================================
1710 // RotateThreePoints:
1711 //=============================================================================
1712 GEOM::GEOM_Object_ptr GEOM_Superv_i::RotateThreePoints (GEOM::GEOM_Object_ptr theObject,
1713 GEOM::GEOM_Object_ptr theCentPoint,
1714 GEOM::GEOM_Object_ptr thePoint1,
1715 GEOM::GEOM_Object_ptr thePoint2)
1717 beginService( " GEOM_Superv_i::RotateThreePoints" );
1718 MESSAGE("GEOM_Superv_i::RotateThreePoints");
1720 GEOM::GEOM_Object_ptr anObj = myTransfOp->RotateThreePoints(theObject, theCentPoint, thePoint1, thePoint2);
1721 endService( " GEOM_Superv_i::RotateThreePoints" );
1725 //=============================================================================
1726 // RotateThreePointsCopy:
1727 //=============================================================================
1728 GEOM::GEOM_Object_ptr GEOM_Superv_i::RotateThreePointsCopy (GEOM::GEOM_Object_ptr theObject,
1729 GEOM::GEOM_Object_ptr theCentPoint,
1730 GEOM::GEOM_Object_ptr thePoint1,
1731 GEOM::GEOM_Object_ptr thePoint2)
1733 beginService( " GEOM_Superv_i::RotateThreePointsCopy" );
1734 MESSAGE("GEOM_Superv_i::RotateThreePointsCopy");
1736 GEOM::GEOM_Object_ptr anObj = myTransfOp->RotateThreePointsCopy(theObject, theCentPoint, thePoint1, thePoint2);
1737 endService( " GEOM_Superv_i::RotateThreePointsCopy" );
1741 //=============================================================================
1743 //=============================================================================
1744 GEOM::GEOM_Object_ptr GEOM_Superv_i::MultiRotate1D (GEOM::GEOM_Object_ptr theObject,
1745 GEOM::GEOM_Object_ptr theAxis,
1746 CORBA::Long theNbTimes)
1748 beginService( " GEOM_Superv_i::MultiRotate1D" );
1749 MESSAGE("GEOM_Superv_i::MultiRotate1D");
1751 GEOM::GEOM_Object_ptr anObj = myTransfOp->MultiRotate1D(theObject, theAxis, theNbTimes);
1752 endService( " GEOM_Superv_i::MultiRotate1D" );
1756 //=============================================================================
1758 //=============================================================================
1759 GEOM::GEOM_Object_ptr GEOM_Superv_i::MultiRotate2D (GEOM::GEOM_Object_ptr theObject,
1760 GEOM::GEOM_Object_ptr theAxis,
1761 CORBA::Double theAngle,
1762 CORBA::Long theNbTimes1,
1763 CORBA::Double theStep,
1764 CORBA::Long theNbTimes2)
1766 beginService( " GEOM_Superv_i::MultiRotate2D" );
1767 MESSAGE("GEOM_Superv_i::MultiRotate2D");
1769 GEOM::GEOM_Object_ptr anObj = myTransfOp->MultiRotate2D(theObject, theAxis, theAngle, theNbTimes1, theStep, theNbTimes2);
1770 endService( " GEOM_Superv_i::MultiRotate2D" );
1774 //=============================================================================
1776 //=============================================================================
1777 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorPlane (GEOM::GEOM_Object_ptr theObject,
1778 GEOM::GEOM_Object_ptr thePlane)
1780 beginService( " GEOM_Superv_i::MirrorPlane" );
1781 MESSAGE("GEOM_Superv_i::MirrorPlane");
1783 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorPlane(theObject, thePlane);
1784 endService( " GEOM_Superv_i::MirrorPlane" );
1788 //=============================================================================
1790 //=============================================================================
1791 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorPlaneCopy (GEOM::GEOM_Object_ptr theObject,
1792 GEOM::GEOM_Object_ptr thePlane)
1794 beginService( " GEOM_Superv_i::MirrorPlaneCopy" );
1795 MESSAGE("GEOM_Superv_i::MirrorPlaneCopy");
1797 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorPlaneCopy(theObject, thePlane);
1798 endService( " GEOM_Superv_i::MirrorPlaneCopy" );
1802 //=============================================================================
1804 //=============================================================================
1805 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorAxis (GEOM::GEOM_Object_ptr theObject,
1806 GEOM::GEOM_Object_ptr theAxis)
1808 beginService( " GEOM_Superv_i::MirrorAxis" );
1809 MESSAGE("GEOM_Superv_i::MirrorAxis");
1811 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorAxis(theObject, theAxis);
1812 endService( " GEOM_Superv_i::MirrorAxis" );
1816 //=============================================================================
1818 //=============================================================================
1819 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorAxisCopy (GEOM::GEOM_Object_ptr theObject,
1820 GEOM::GEOM_Object_ptr theAxis)
1822 beginService( " GEOM_Superv_i::MirrorAxisCopy" );
1823 MESSAGE("GEOM_Superv_i::MirrorAxisCopy");
1825 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorAxisCopy(theObject, theAxis);
1826 endService( " GEOM_Superv_i::MirrorAxisCopy" );
1830 //=============================================================================
1832 //=============================================================================
1833 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorPoint (GEOM::GEOM_Object_ptr theObject,
1834 GEOM::GEOM_Object_ptr thePoint)
1836 beginService( " GEOM_Superv_i::MirrorPoint" );
1837 MESSAGE("GEOM_Superv_i::MirrorPoint");
1839 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorPoint(theObject, thePoint);
1840 endService( " GEOM_Superv_i::MirrorPoint" );
1844 //=============================================================================
1846 //=============================================================================
1847 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorPointCopy (GEOM::GEOM_Object_ptr theObject,
1848 GEOM::GEOM_Object_ptr thePoint)
1850 beginService( " GEOM_Superv_i::MirrorPoint" );
1851 MESSAGE("GEOM_Superv_i::MirrorPointCopy");
1853 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorPointCopy(theObject, thePoint);
1854 endService( " GEOM_Superv_i::MirrorPoint" );
1858 //=============================================================================
1860 //=============================================================================
1861 GEOM::GEOM_Object_ptr GEOM_Superv_i::OffsetShape (GEOM::GEOM_Object_ptr theObject,
1862 CORBA::Double theOffset)
1864 beginService( " GEOM_Superv_i::OffsetShape" );
1865 MESSAGE("GEOM_Superv_i::OffsetShape");
1867 GEOM::GEOM_Object_ptr anObj = myTransfOp->OffsetShape(theObject, theOffset);
1868 endService( " GEOM_Superv_i::OffsetShape" );
1872 //=============================================================================
1874 //=============================================================================
1875 GEOM::GEOM_Object_ptr GEOM_Superv_i::OffsetShapeCopy (GEOM::GEOM_Object_ptr theObject,
1876 CORBA::Double theOffset)
1878 beginService( " GEOM_Superv_i::OffsetShapeCopy" );
1879 MESSAGE("GEOM_Superv_i::OffsetShapeCopy");
1881 GEOM::GEOM_Object_ptr anObj = myTransfOp->OffsetShapeCopy(theObject, theOffset);
1882 endService( " GEOM_Superv_i::OffsetShapeCopy" );
1886 //=============================================================================
1888 //=============================================================================
1889 GEOM::GEOM_Object_ptr GEOM_Superv_i::ScaleShape (GEOM::GEOM_Object_ptr theObject,
1890 GEOM::GEOM_Object_ptr thePoint,
1891 CORBA::Double theFactor)
1893 beginService( " GEOM_Superv_i::ScaleShape" );
1894 MESSAGE("GEOM_Superv_i::ScaleShape");
1896 GEOM::GEOM_Object_ptr anObj = myTransfOp->ScaleShape(theObject, thePoint, theFactor);
1897 endService( " GEOM_Superv_i::ScaleShape" );
1901 //=============================================================================
1903 //=============================================================================
1904 GEOM::GEOM_Object_ptr GEOM_Superv_i::ScaleShapeCopy (GEOM::GEOM_Object_ptr theObject,
1905 GEOM::GEOM_Object_ptr thePoint,
1906 CORBA::Double theFactor)
1908 beginService( " GEOM_Superv_i::ScaleShapeCopy" );
1909 MESSAGE("GEOM_Superv_i::ScaleShapeCopy");
1911 GEOM::GEOM_Object_ptr anObj = myTransfOp->ScaleShapeCopy(theObject, thePoint, theFactor);
1912 endService( " GEOM_Superv_i::ScaleShapeCopy" );
1916 //=============================================================================
1917 // ScaleShapeAlongAxes:
1918 //=============================================================================
1919 GEOM::GEOM_Object_ptr GEOM_Superv_i::ScaleShapeAlongAxes (GEOM::GEOM_Object_ptr theObject,
1920 GEOM::GEOM_Object_ptr thePoint,
1921 CORBA::Double theFactorX,
1922 CORBA::Double theFactorY,
1923 CORBA::Double theFactorZ)
1925 beginService( " GEOM_Superv_i::ScaleShapeAlongAxes" );
1926 MESSAGE("GEOM_Superv_i::ScaleShapeAlongAxes");
1928 GEOM::GEOM_Object_ptr anObj = myTransfOp->ScaleShapeAlongAxes
1929 (theObject, thePoint, theFactorX, theFactorY, theFactorZ);
1930 endService( " GEOM_Superv_i::ScaleShapeAlongAxes" );
1934 //=============================================================================
1935 // ScaleShapeAlongAxesCopy:
1936 //=============================================================================
1937 GEOM::GEOM_Object_ptr GEOM_Superv_i::ScaleShapeAlongAxesCopy (GEOM::GEOM_Object_ptr theObject,
1938 GEOM::GEOM_Object_ptr thePoint,
1939 CORBA::Double theFactorX,
1940 CORBA::Double theFactorY,
1941 CORBA::Double theFactorZ)
1943 beginService( " GEOM_Superv_i::ScaleShapeAlongAxesCopy" );
1944 MESSAGE("GEOM_Superv_i::ScaleShapeAlongAxesCopy");
1946 GEOM::GEOM_Object_ptr anObj = myTransfOp->ScaleShapeAlongAxesCopy
1947 (theObject, thePoint, theFactorX, theFactorY, theFactorZ);
1948 endService( " GEOM_Superv_i::ScaleShapeAlongAxesCopy" );
1952 //=============================================================================
1954 //=============================================================================
1955 GEOM::GEOM_Object_ptr GEOM_Superv_i::PositionShape (GEOM::GEOM_Object_ptr theObject,
1956 GEOM::GEOM_Object_ptr theStartLCS,
1957 GEOM::GEOM_Object_ptr theEndLCS)
1959 beginService( " GEOM_Superv_i::PositionShape" );
1960 MESSAGE("GEOM_Superv_i::PositionShape");
1962 GEOM::GEOM_Object_ptr anObj = myTransfOp->PositionShape(theObject, theStartLCS, theEndLCS);
1963 endService( " GEOM_Superv_i::PositionShape" );
1967 //=============================================================================
1968 // PositionShapeCopy:
1969 //=============================================================================
1970 GEOM::GEOM_Object_ptr GEOM_Superv_i::PositionShapeCopy (GEOM::GEOM_Object_ptr theObject,
1971 GEOM::GEOM_Object_ptr theStartLCS,
1972 GEOM::GEOM_Object_ptr theEndLCS)
1974 beginService( " GEOM_Superv_i::PositionShapeCopy" );
1975 MESSAGE("GEOM_Superv_i::PositionShapeCopy");
1977 GEOM::GEOM_Object_ptr anObj = myTransfOp->PositionShapeCopy(theObject, theStartLCS, theEndLCS);
1978 endService( " GEOM_Superv_i::PositionShapeCopy" );
1982 //=============================================================================
1983 // PositionAlongPath:
1984 //=============================================================================
1985 GEOM::GEOM_Object_ptr GEOM_Superv_i::PositionAlongPath (GEOM::GEOM_Object_ptr theObject,
1986 GEOM::GEOM_Object_ptr thePath,
1987 CORBA::Double theDistance,
1988 CORBA::Boolean theCopy,
1989 CORBA::Boolean theReverse)
1991 beginService( " GEOM_Superv_i::PositionAlongPath" );
1992 MESSAGE("GEOM_Superv_i::PositionAlongPath");
1994 GEOM::GEOM_Object_ptr anObj = myTransfOp->PositionAlongPath(theObject, thePath, theDistance, theCopy, theReverse);
1995 endService( " GEOM_Superv_i::PositionAlongPath" );
1999 //=============================== ShapesOperations ============================
2000 //=============================================================================
2002 //=============================================================================
2003 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeEdge (GEOM::GEOM_Object_ptr thePnt1,
2004 GEOM::GEOM_Object_ptr thePnt2)
2006 beginService( " GEOM_Superv_i::MakeEdge" );
2007 MESSAGE("GEOM_Superv_i::MakeEdge");
2009 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeEdge(thePnt1, thePnt2);
2010 endService( " GEOM_Superv_i::MakeEdge" );
2014 //=============================================================================
2016 //=============================================================================
2017 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeWire (GEOM::GEOM_List_ptr theEdgesAndWires,
2018 CORBA::Double theTolerance)
2020 beginService( " GEOM_Superv_i::MakeWire" );
2021 MESSAGE("GEOM_Superv_i::MakeWire");
2022 if (GEOM_List_i<GEOM::ListOfGO>* aListImplEW =
2023 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theEdgesAndWires, myPOA).in())) {
2025 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeWire(aListImplEW->GetList(), theTolerance);
2026 endService( " GEOM_Superv_i::MakeWire" );
2029 endService( " GEOM_Superv_i::MakeWire" );
2033 //=============================================================================
2035 //=============================================================================
2036 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFace (GEOM::GEOM_Object_ptr theWire,
2037 CORBA::Boolean isPlanarWanted)
2039 beginService( " GEOM_Superv_i::MakeFace" );
2040 MESSAGE("GEOM_Superv_i::MakeFace");
2042 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeFace(theWire, isPlanarWanted);
2043 endService( " GEOM_Superv_i::MakeFace" );
2047 //=============================================================================
2049 //=============================================================================
2050 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFaceWires (GEOM::GEOM_List_ptr theWires,
2051 CORBA::Boolean isPlanarWanted)
2053 beginService( " GEOM_Superv_i::MakeFaceWires" );
2054 MESSAGE("GEOM_Superv_i::MakeFaceWires");
2055 if (GEOM_List_i<GEOM::ListOfGO>* aListImplW =
2056 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theWires, myPOA).in())) {
2058 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeFaceWires(aListImplW->GetList(), isPlanarWanted);
2059 endService( " GEOM_Superv_i::MakeFaceWires" );
2062 endService( " GEOM_Superv_i::MakeFaceWires" );
2066 //=============================================================================
2068 //=============================================================================
2069 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeShell (GEOM::GEOM_List_ptr theFacesAndShells)
2071 beginService( " GEOM_Superv_i::MakeShell" );
2072 MESSAGE("GEOM_Superv_i::MakeShell");
2073 if (GEOM_List_i<GEOM::ListOfGO>* aListImplFS =
2074 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theFacesAndShells, myPOA).in())) {
2076 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeShell(aListImplFS->GetList());
2077 endService( " GEOM_Superv_i::MakeShell" );
2080 endService( " GEOM_Superv_i::MakeShell" );
2084 //=============================================================================
2086 //=============================================================================
2087 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSolidShell (GEOM::GEOM_Object_ptr theShell)
2089 beginService( " GEOM_Superv_i::MakeSolidShell" );
2090 MESSAGE("GEOM_Superv_i::MakeSolidShell");
2092 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeSolidShell(theShell);
2093 endService( " GEOM_Superv_i::MakeSolidShell" );
2097 //=============================================================================
2099 //=============================================================================
2100 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSolidShells (GEOM::GEOM_List_ptr theShells)
2102 beginService( " GEOM_Superv_i::MakeSolidShells" );
2103 MESSAGE("GEOM_Superv_i::MakeSolidShells");
2104 if (GEOM_List_i<GEOM::ListOfGO>* aListImplS =
2105 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theShells, myPOA).in())) {
2107 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeSolidShells(aListImplS->GetList());
2108 endService( " GEOM_Superv_i::MakeSolidShells" );
2111 endService( " GEOM_Superv_i::MakeSolidShells" );
2115 //=============================================================================
2117 //=============================================================================
2118 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCompound (GEOM::GEOM_List_ptr theShapes)
2120 beginService( " GEOM_Superv_i::MakeCompound" );
2121 MESSAGE("GEOM_Superv_i::MakeCompound");
2122 if (GEOM_List_i<GEOM::ListOfGO>* aListImpl =
2123 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theShapes, myPOA).in())) {
2125 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeCompound(aListImpl->GetList());
2126 endService( " GEOM_Superv_i::MakeCompound" );
2129 endService( " GEOM_Superv_i::MakeCompound" );
2133 //=============================================================================
2135 //=============================================================================
2136 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeGlueFaces (GEOM::GEOM_Object_ptr theShape,
2137 CORBA::Double theTolerance,
2138 CORBA::Boolean doKeepNonSolids)
2140 beginService( " GEOM_Superv_i::MakeGlueFaces" );
2141 MESSAGE("GEOM_Superv_i::MakeGlueFaces");
2143 GEOM::GEOM_Object_ptr anObj =
2144 myShapesOp->MakeGlueFaces(theShape, theTolerance, doKeepNonSolids);
2145 endService( " GEOM_Superv_i::MakeGlueFaces" );
2149 //=============================================================================
2151 //=============================================================================
2152 GEOM::GEOM_List_ptr GEOM_Superv_i::GetGlueFaces (GEOM::GEOM_Object_ptr theShape,
2153 CORBA::Double theTolerance)
2155 beginService( " GEOM_Superv_i::GetGlueFaces" );
2156 MESSAGE("GEOM_Superv_i::GetGlueFaces");
2158 GEOM::ListOfGO* aList = myShapesOp->GetGlueFaces(theShape, theTolerance);
2159 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aList));
2160 MESSAGE(" List of "<<aListPtr->GetList().length()<<" element(s)");
2161 endService( " GEOM_Superv_i::GetGlueFaces" );
2162 return aListPtr->_this();
2165 //=============================================================================
2166 // MakeGlueFacesByList:
2167 //=============================================================================
2168 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeGlueFacesByList (GEOM::GEOM_Object_ptr theShape,
2169 CORBA::Double theTolerance,
2170 const GEOM::ListOfGO& theFaces,
2171 CORBA::Boolean doKeepNonSolids)
2173 beginService( " GEOM_Superv_i::MakeGlueFacesByList" );
2174 MESSAGE("GEOM_Superv_i::MakeGlueFacesByList");
2176 GEOM::GEOM_Object_ptr anObj =
2177 myShapesOp->MakeGlueFacesByList(theShape, theTolerance, theFaces, doKeepNonSolids);
2178 endService( " GEOM_Superv_i::MakeGlueFacesByList" );
2182 //=============================================================================
2184 //=============================================================================
2185 GEOM::GEOM_List_ptr GEOM_Superv_i::MakeExplode (GEOM::GEOM_Object_ptr theShape,
2186 CORBA::Long theShapeType,
2187 CORBA::Boolean isSorted)
2189 beginService( " GEOM_Superv_i::MakeExplode" );
2190 MESSAGE("GEOM_Superv_i::MakeExplode");
2193 GEOM::ListOfGO* aList = myShapesOp->MakeExplode(theShape, theShapeType, isSorted);
2194 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aList));
2195 MESSAGE(" List of "<<aListPtr->GetList().length()<<" element(s)");
2196 endService( " GEOM_Superv_i::MakeExplode" );
2197 return aListPtr->_this();
2200 //=============================================================================
2202 //=============================================================================
2203 CORBA::Long GEOM_Superv_i::NumberOfFaces (GEOM::GEOM_Object_ptr theShape)
2205 beginService( " GEOM_Superv_i::NumberOfFaces" );
2206 MESSAGE("GEOM_Superv_i::NumberOfFaces");
2208 CORBA::Long aRes = myShapesOp->NumberOfFaces(theShape);
2209 endService( " GEOM_Superv_i::NumberOfFaces" );
2213 //=============================================================================
2215 //=============================================================================
2216 CORBA::Long GEOM_Superv_i::NumberOfEdges (GEOM::GEOM_Object_ptr theShape)
2218 beginService( " GEOM_Superv_i::NumberOfEdges" );
2219 MESSAGE("GEOM_Superv_i::NumberOfEdges");
2221 CORBA::Long aRes = myShapesOp->NumberOfEdges(theShape);
2222 endService( " GEOM_Superv_i::NumberOfEdges" );
2227 //=============================================================================
2228 // ChangeOrientation:
2229 //=============================================================================
2230 GEOM::GEOM_Object_ptr GEOM_Superv_i::ChangeOrientation (GEOM::GEOM_Object_ptr theShape)
2232 beginService( " GEOM_Superv_i::ChangeOrientation" );
2233 MESSAGE("GEOM_Superv_i::ChangeOrientation");
2235 GEOM::GEOM_Object_ptr anObj = myShapesOp->ChangeOrientation(theShape);
2236 endService( " GEOM_Superv_i::ChangeOrientation" );
2241 //=============================================================================
2242 // GetShapesOnShape:
2243 //=============================================================================
2244 GEOM::GEOM_List_ptr GEOM_Superv_i::GetShapesOnShape
2245 (GEOM::GEOM_Object_ptr theCheckShape,
2246 GEOM::GEOM_Object_ptr theShape,
2247 CORBA::Short theShapeType,
2248 GEOM::shape_state theState)
2250 beginService( " GEOM_Superv_i::GetShapesOnShape" );
2251 MESSAGE("GEOM_Superv_i::GetShapesOnShape");
2253 GEOM::ListOfGO* aList =
2254 myShapesOp->GetShapesOnShape(theCheckShape, theShape, theShapeType, theState);
2255 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aList));
2256 MESSAGE(" List of "<<aListPtr->GetList().length()<<" element(s)");
2257 endService( " GEOM_Superv_i::GetShapesOnShape" );
2258 return aListPtr->_this();
2262 //=============================================================================
2263 // GetShapesOnShapeAsCompound:
2264 //=============================================================================
2265 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetShapesOnShapeAsCompound
2266 (GEOM::GEOM_Object_ptr theCheckShape,
2267 GEOM::GEOM_Object_ptr theShape,
2268 CORBA::Short theShapeType,
2269 GEOM::shape_state theState)
2271 beginService( " GEOM_Superv_i::GetShapesOnShapeAsCompound" );
2272 MESSAGE("GEOM_Superv_i::GetShapesOnShapeAsCompound");
2274 GEOM::GEOM_Object_ptr anObj =
2275 myShapesOp->GetShapesOnShapeAsCompound(theCheckShape, theShape, theShapeType, theState);
2276 endService( " GEOM_Superv_i::GetShapesOnShapeAsCompound" );
2281 //=============================== BlocksOperations ============================
2282 //=============================================================================
2283 // MakeQuad4Vertices:
2284 //=============================================================================
2285 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeQuad4Vertices (GEOM::GEOM_Object_ptr thePnt1,
2286 GEOM::GEOM_Object_ptr thePnt2,
2287 GEOM::GEOM_Object_ptr thePnt3,
2288 GEOM::GEOM_Object_ptr thePnt4)
2290 beginService( " GEOM_Superv_i::MakeQuad4Vertices" );
2291 MESSAGE("GEOM_Superv_i::MakeQuad4Vertices");
2293 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeQuad4Vertices(thePnt1, thePnt2, thePnt3, thePnt4);
2294 endService( " GEOM_Superv_i::MakeQuad4Vertices" );
2298 //=============================================================================
2300 //=============================================================================
2301 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeQuad (GEOM::GEOM_Object_ptr theEdge1,
2302 GEOM::GEOM_Object_ptr theEdge2,
2303 GEOM::GEOM_Object_ptr theEdge3,
2304 GEOM::GEOM_Object_ptr theEdge4)
2306 beginService( " GEOM_Superv_i::MakeQuad" );
2307 MESSAGE("GEOM_Superv_i::MakeQuad");
2309 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeQuad(theEdge1, theEdge2, theEdge3, theEdge4);
2310 endService( " GEOM_Superv_i::MakeQuad" );
2314 //=============================================================================
2316 //=============================================================================
2317 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeQuad2Edges (GEOM::GEOM_Object_ptr theEdge1,
2318 GEOM::GEOM_Object_ptr theEdge2)
2320 beginService( " GEOM_Superv_i::MakeQuad2Edges" );
2321 MESSAGE("GEOM_Superv_i::MakeQuad2Edges");
2323 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeQuad2Edges(theEdge1, theEdge2);
2324 endService( " GEOM_Superv_i::MakeQuad2Edges" );
2328 //=============================================================================
2330 //=============================================================================
2331 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeHexa (GEOM::GEOM_Object_ptr theFace1,
2332 GEOM::GEOM_Object_ptr theFace2,
2333 GEOM::GEOM_Object_ptr theFace3,
2334 GEOM::GEOM_Object_ptr theFace4,
2335 GEOM::GEOM_Object_ptr theFace5,
2336 GEOM::GEOM_Object_ptr theFace6)
2338 beginService( " GEOM_Superv_i::MakeHexa" );
2339 MESSAGE("GEOM_Superv_i::MakeHexa");
2341 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeHexa(theFace1, theFace2, theFace3, theFace4, theFace5, theFace6);
2342 endService( " GEOM_Superv_i::MakeHexa" );
2346 //=============================================================================
2348 //=============================================================================
2349 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeHexa2Faces (GEOM::GEOM_Object_ptr theFace1,
2350 GEOM::GEOM_Object_ptr theFace2)
2352 beginService( " GEOM_Superv_i::MakeHexa2Faces" );
2353 MESSAGE("GEOM_Superv_i::MakeHexa2Faces");
2355 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeHexa2Faces(theFace1, theFace2);
2356 endService( " GEOM_Superv_i::MakeHexa2Faces" );
2360 //=============================================================================
2362 //=============================================================================
2363 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetPoint (GEOM::GEOM_Object_ptr theShape,
2367 CORBA::Double theEpsilon)
2369 beginService( " GEOM_Superv_i::GetPoint" );
2370 MESSAGE("GEOM_Superv_i::GetPoint");
2372 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetPoint(theShape, theX, theY, theZ, theEpsilon);
2373 endService( " GEOM_Superv_i::GetPoint" );
2377 //=============================================================================
2379 //=============================================================================
2380 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetEdge (GEOM::GEOM_Object_ptr theShape,
2381 GEOM::GEOM_Object_ptr thePoint1,
2382 GEOM::GEOM_Object_ptr thePoint2)
2384 beginService( " GEOM_Superv_i::GetEdge" );
2385 MESSAGE("GEOM_Superv_i::GetEdge");
2387 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetEdge(theShape, thePoint1, thePoint2);
2388 endService( " GEOM_Superv_i::GetEdge" );
2392 //=============================================================================
2393 // GetEdgeNearPoint:
2394 //=============================================================================
2395 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetEdgeNearPoint (GEOM::GEOM_Object_ptr theShape,
2396 GEOM::GEOM_Object_ptr thePoint)
2398 beginService( " GEOM_Superv_i::GetEdgeNearPoint" );
2399 MESSAGE("GEOM_Superv_i::GetEdgeNearPoint");
2401 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetEdgeNearPoint(theShape, thePoint);
2402 endService( " GEOM_Superv_i::GetEdgeNearPoint" );
2406 //=============================================================================
2408 //=============================================================================
2409 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetFaceByPoints (GEOM::GEOM_Object_ptr theShape,
2410 GEOM::GEOM_Object_ptr thePoint1,
2411 GEOM::GEOM_Object_ptr thePoint2,
2412 GEOM::GEOM_Object_ptr thePoint3,
2413 GEOM::GEOM_Object_ptr thePoint4)
2415 beginService( " GEOM_Superv_i::GetFaceByPoints" );
2416 MESSAGE("GEOM_Superv_i::GetFaceByPoints");
2418 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetFaceByPoints(theShape, thePoint1, thePoint2, thePoint3, thePoint4);
2419 endService( " GEOM_Superv_i::GetFaceByPoints" );
2423 //=============================================================================
2425 //=============================================================================
2426 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetFaceByEdges (GEOM::GEOM_Object_ptr theShape,
2427 GEOM::GEOM_Object_ptr theEdge1,
2428 GEOM::GEOM_Object_ptr theEdge2)
2430 beginService( " GEOM_Superv_i::GetFaceByEdges" );
2431 MESSAGE("GEOM_Superv_i::GetFaceByEdges");
2433 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetFaceByEdges(theShape, theEdge1, theEdge2);
2434 endService( " GEOM_Superv_i::GetFaceByEdges" );
2438 //=============================================================================
2440 //=============================================================================
2441 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetOppositeFace (GEOM::GEOM_Object_ptr theBlock,
2442 GEOM::GEOM_Object_ptr theFace)
2444 beginService( " GEOM_Superv_i::GetOppositeFace" );
2445 MESSAGE("GEOM_Superv_i::GetOppositeFace");
2447 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetOppositeFace(theBlock, theFace);
2448 endService( " GEOM_Superv_i::GetOppositeFace" );
2452 //=============================================================================
2453 // GetFaceNearPoint:
2454 //=============================================================================
2455 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetFaceNearPoint (GEOM::GEOM_Object_ptr theShape,
2456 GEOM::GEOM_Object_ptr thePoint)
2458 beginService( " GEOM_Superv_i::GetFaceNearPoint" );
2459 MESSAGE("GEOM_Superv_i::GetFaceNearPoint");
2461 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetFaceNearPoint(theShape, thePoint);
2462 endService( " GEOM_Superv_i::GetFaceNearPoint" );
2466 //=============================================================================
2467 // GetFaceByNormale:
2468 //=============================================================================
2469 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetFaceByNormale (GEOM::GEOM_Object_ptr theBlock,
2470 GEOM::GEOM_Object_ptr theVector)
2472 beginService( " GEOM_Superv_i::GetFaceByNormale" );
2473 MESSAGE("GEOM_Superv_i::GetFaceByNormale");
2475 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetFaceByNormale(theBlock, theVector);
2476 endService( " GEOM_Superv_i::GetFaceByNormale" );
2480 //=============================================================================
2481 // IsCompoundOfBlocks:
2482 //=============================================================================
2483 CORBA::Boolean GEOM_Superv_i::IsCompoundOfBlocks (GEOM::GEOM_Object_ptr theCompound,
2484 CORBA::Long theMinNbFaces,
2485 CORBA::Long theMaxNbFaces,
2486 CORBA::Long& theNbBlocks)
2488 beginService( " GEOM_Superv_i::IsCompoundOfBlocks" );
2489 MESSAGE("GEOM_Superv_i::IsCompoundOfBlocks");
2491 CORBA::Boolean aRes = myBlocksOp->IsCompoundOfBlocks(theCompound, theMinNbFaces, theMaxNbFaces, theNbBlocks);
2492 endService( " GEOM_Superv_i::IsCompoundOfBlocks" );
2496 //=============================================================================
2497 // CheckCompoundOfBlocks:
2498 //=============================================================================
2499 CORBA::Boolean GEOM_Superv_i::CheckCompoundOfBlocks
2500 (GEOM::GEOM_Object_ptr theCompound,
2501 GEOM::GEOM_IBlocksOperations::BCErrors_out theErrors)
2503 beginService( " GEOM_Superv_i::CheckCompoundOfBlocks" );
2504 MESSAGE("GEOM_Superv_i::CheckCompoundOfBlocks");
2506 CORBA::Boolean aRes = myBlocksOp->CheckCompoundOfBlocks(theCompound, theErrors);
2507 endService( " GEOM_Superv_i::CheckCompoundOfBlocks" );
2511 //=============================================================================
2513 //=============================================================================
2514 char* GEOM_Superv_i::PrintBCErrors (GEOM::GEOM_Object_ptr theCompound,
2515 const GEOM::GEOM_IBlocksOperations::BCErrors& theErrors)
2517 beginService( " GEOM_Superv_i::PrintBCErrors" );
2518 MESSAGE("GEOM_Superv_i::PrintBCErrors");
2520 char* anErrors = myBlocksOp->PrintBCErrors(theCompound, theErrors);
2521 endService( " GEOM_Superv_i::PrintBCErrors" );
2525 //=============================================================================
2526 // ExplodeCompoundOfBlocks:
2527 //=============================================================================
2528 GEOM::GEOM_List_ptr GEOM_Superv_i::ExplodeCompoundOfBlocks (GEOM::GEOM_Object_ptr theCompound,
2529 CORBA::Long theMinNbFaces,
2530 CORBA::Long theMaxNbFaces)
2532 beginService( " GEOM_Superv_i::ExplodeCompoundOfBlocks" );
2533 MESSAGE("GEOM_Superv_i::ExplodeCompoundOfBlocks");
2535 GEOM::ListOfGO* aBlocks = myBlocksOp->ExplodeCompoundOfBlocks(theCompound, theMinNbFaces, theMaxNbFaces);
2536 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aBlocks));
2537 endService( " GEOM_Superv_i::ExplodeCompoundOfBlocks" );
2538 return aListPtr->_this();
2541 //=============================================================================
2542 // GetBlockNearPoint:
2543 //=============================================================================
2544 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetBlockNearPoint (GEOM::GEOM_Object_ptr theCompound,
2545 GEOM::GEOM_Object_ptr thePoint)
2547 beginService( " GEOM_Superv_i::GetBlockNearPoint" );
2548 MESSAGE("GEOM_Superv_i::GetBlockNearPoint");
2550 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetBlockNearPoint(theCompound, thePoint);
2551 endService( " GEOM_Superv_i::GetBlockNearPoint" );
2555 //=============================================================================
2557 //=============================================================================
2558 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetBlockByParts (GEOM::GEOM_Object_ptr theCompound,
2559 GEOM::GEOM_List_ptr theParts)
2561 beginService( " GEOM_Superv_i::GetBlockByParts" );
2562 MESSAGE("GEOM_Superv_i::GetBlockByParts");
2563 if (GEOM_List_i<GEOM::ListOfGO>* aListImplP =
2564 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theParts, myPOA).in())) {
2566 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetBlockByParts(theCompound, aListImplP->GetList());
2567 endService( " GEOM_Superv_i::GetBlockByParts" );
2570 endService( " GEOM_Superv_i::GetBlockByParts" );
2574 //=============================================================================
2575 // GetBlocksByParts:
2576 //=============================================================================
2577 GEOM::GEOM_List_ptr GEOM_Superv_i::GetBlocksByParts (GEOM::GEOM_Object_ptr theCompound,
2578 GEOM::GEOM_List_ptr theParts)
2580 beginService( " GEOM_Superv_i::GetBlocksByParts" );
2581 MESSAGE("GEOM_Superv_i::GetBlocksByParts");
2582 if (GEOM_List_i<GEOM::ListOfGO>* aListImplP =
2583 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theParts, myPOA).in())) {
2586 GEOM::ListOfGO* aBlocks = myBlocksOp->GetBlocksByParts(theCompound, aListImplP->GetList());
2587 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aBlocks));
2588 endService( " GEOM_Superv_i::GetBlocksByParts" );
2589 return aListPtr->_this();
2591 endService( " GEOM_Superv_i::GetBlocksByParts" );
2595 //=============================================================================
2596 // MakeMultiTransformation1D:
2597 //=============================================================================
2598 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeMultiTransformation1D (GEOM::GEOM_Object_ptr theBlock,
2599 CORBA::Long theDirFace1,
2600 CORBA::Long theDirFace2,
2601 CORBA::Long theNbTimes)
2603 beginService( " GEOM_Superv_i::MakeMultiTransformation1D" );
2604 MESSAGE("GEOM_Superv_i::MakeMultiTransformation1D");
2606 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeMultiTransformation1D(theBlock, theDirFace1, theDirFace2, theNbTimes);
2607 endService( " GEOM_Superv_i::MakeMultiTransformation1D" );
2611 //=============================================================================
2612 // MakeMultiTransformation2D:
2613 //=============================================================================
2614 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeMultiTransformation2D
2615 (GEOM::GEOM_Object_ptr theBlock,
2616 CORBA::Long theDirFace1U,
2617 CORBA::Long theDirFace2U,
2618 CORBA::Long theNbTimesU,
2619 CORBA::Long theDirFace1V,
2620 CORBA::Long theDirFace2V,
2621 CORBA::Long theNbTimesV)
2623 beginService( " GEOM_Superv_i::MakeMultiTransformation2D" );
2624 MESSAGE("GEOM_Superv_i::MakeMultiTransformation2D");
2626 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeMultiTransformation2D(theBlock,
2627 theDirFace1U, theDirFace2U, theNbTimesU,
2628 theDirFace1V, theDirFace2V, theNbTimesV);
2629 endService( " GEOM_Superv_i::MakeMultiTransformation2D" );
2633 //=============================== CurvesOperations ============================
2634 //=============================================================================
2635 // MakeCirclePntVecR:
2636 //=============================================================================
2637 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCirclePntVecR (GEOM::GEOM_Object_ptr theCenter,
2638 GEOM::GEOM_Object_ptr theVector,
2641 beginService( " GEOM_Superv_i::MakeCirclePntVecR" );
2642 MESSAGE("GEOM_Superv_i::MakeCirclePntVecR");
2644 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeCirclePntVecR(theCenter, theVector, theR);
2645 endService( " GEOM_Superv_i::MakeCirclePntVecR" );
2649 //=============================================================================
2650 // MakeCircleThreePnt:
2651 //=============================================================================
2652 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCircleThreePnt (GEOM::GEOM_Object_ptr thePnt1,
2653 GEOM::GEOM_Object_ptr thePnt2,
2654 GEOM::GEOM_Object_ptr thePnt3)
2656 beginService( " GEOM_Superv_i::MakeCircleThreePnt" );
2657 MESSAGE("GEOM_Superv_i::MakeCircleThreePnt");
2659 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeCircleThreePnt(thePnt1, thePnt2, thePnt3);
2660 endService( " GEOM_Superv_i::MakeCircleThreePnt" );
2663 //=============================================================================
2664 // MakeCircleCenter2Pnt:
2665 //=============================================================================
2666 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCircleCenter2Pnt (GEOM::GEOM_Object_ptr thePnt1,
2667 GEOM::GEOM_Object_ptr thePnt2,
2668 GEOM::GEOM_Object_ptr thePnt3)
2670 beginService( " GEOM_Superv_i::MakeCircleCenter2Pnt" );
2671 MESSAGE("GEOM_Superv_i::MakeCircleCenter2Pnt");
2673 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeCircleCenter2Pnt(thePnt1, thePnt2, thePnt3);
2674 endService( " GEOM_Superv_i::MakeCircleCenter2Pnt" );
2678 //=============================================================================
2680 //=============================================================================
2681 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeEllipse (GEOM::GEOM_Object_ptr theCenter,
2682 GEOM::GEOM_Object_ptr theVector,
2683 CORBA::Double theRMajor,
2684 CORBA::Double theRMinor)
2686 beginService( " GEOM_Superv_i::MakeEllipse" );
2687 MESSAGE("GEOM_Superv_i::MakeEllipse");
2689 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeEllipse(theCenter, theVector, theRMajor, theRMinor);
2690 endService( " GEOM_Superv_i::MakeEllipse" );
2694 //=============================================================================
2696 //=============================================================================
2697 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeEllipseVec (GEOM::GEOM_Object_ptr theCenter,
2698 GEOM::GEOM_Object_ptr theVector,
2699 CORBA::Double theRMajor,
2700 CORBA::Double theRMinor,
2701 GEOM::GEOM_Object_ptr theVectorMajor)
2703 beginService( " GEOM_Superv_i::MakeEllipseVec" );
2704 MESSAGE("GEOM_Superv_i::MakeEllipseVec");
2706 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeEllipseVec(theCenter, theVector, theRMajor, theRMinor, theVectorMajor);
2707 endService( " GEOM_Superv_i::MakeEllipseVec" );
2711 //=============================================================================
2713 //=============================================================================
2714 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeArc (GEOM::GEOM_Object_ptr thePnt1,
2715 GEOM::GEOM_Object_ptr thePnt2,
2716 GEOM::GEOM_Object_ptr thePnt3)
2718 beginService( " GEOM_Superv_i::MakeArc" );
2719 MESSAGE("GEOM_Superv_i::MakeArc");
2721 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeArc(thePnt1, thePnt2, thePnt3);
2722 endService( " GEOM_Superv_i::MakeArc" );
2726 //=============================================================================
2728 //=============================================================================
2729 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeArcCenter (GEOM::GEOM_Object_ptr theCenter,
2730 GEOM::GEOM_Object_ptr thePnt1,
2731 GEOM::GEOM_Object_ptr thePnt2,
2732 CORBA::Boolean theSense)
2734 beginService( " GEOM_Superv_i::MakeArcCenter" );
2735 MESSAGE("GEOM_Superv_i::MakeArcCenter");
2737 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeArcCenter(theCenter, thePnt1, thePnt2,theSense);
2738 endService( " GEOM_Superv_i::MakeArcCenter" );
2742 //=============================================================================
2743 // MakeArcOfEllipse:
2744 //=============================================================================
2745 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeArcOfEllipse (GEOM::GEOM_Object_ptr thePnt1,
2746 GEOM::GEOM_Object_ptr thePnt2,
2747 GEOM::GEOM_Object_ptr thePnt3)
2749 beginService( " GEOM_Superv_i::MakeArcOfEllipse" );
2750 MESSAGE("GEOM_Superv_i::MakeArcOfEllipse");
2752 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeArcOfEllipse(thePnt1, thePnt2, thePnt3);
2753 endService( " GEOM_Superv_i::MakeArcOfEllipse" );
2757 //=============================================================================
2759 //=============================================================================
2760 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePolyline (GEOM::GEOM_List_ptr thePoints)
2762 beginService( " GEOM_Superv_i::MakePolyline" );
2763 MESSAGE("GEOM_Superv_i::MakePolyline");
2764 if (GEOM_List_i<GEOM::ListOfGO>* aListImplP =
2765 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(thePoints, myPOA).in())) {
2767 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakePolyline(aListImplP->GetList());
2768 endService( " GEOM_Superv_i::MakePolyline" );
2771 endService( " GEOM_Superv_i::MakePolyline" );
2775 //=============================================================================
2776 // MakeSplineBezier:
2777 //=============================================================================
2778 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSplineBezier (GEOM::GEOM_List_ptr thePoints)
2780 beginService( " GEOM_Superv_i::MakeSplineBezier" );
2781 MESSAGE("GEOM_Superv_i::MakeSplineBezier");
2782 if (GEOM_List_i<GEOM::ListOfGO>* aListImplP =
2783 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(thePoints, myPOA).in())) {
2785 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeSplineBezier(aListImplP->GetList());
2786 endService( " GEOM_Superv_i::MakeSplineBezier" );
2789 endService( " GEOM_Superv_i::MakeSplineBezier" );
2793 //=============================================================================
2794 // MakeSplineInterpolation:
2795 //=============================================================================
2796 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSplineInterpolation (GEOM::GEOM_List_ptr thePoints,
2797 CORBA::Boolean theIsClosed)
2799 beginService( " GEOM_Superv_i::MakeSplineInterpolation" );
2800 MESSAGE("GEOM_Superv_i::MakeSplineInterpolation");
2801 if (GEOM_List_i<GEOM::ListOfGO>* aListImplP =
2802 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(thePoints, myPOA).in())) {
2804 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeSplineInterpolation(aListImplP->GetList(), theIsClosed);
2805 endService( " GEOM_Superv_i::MakeSplineInterpolation" );
2808 endService( " GEOM_Superv_i::MakeSplineInterpolation" );
2812 //=============================================================================
2814 //=============================================================================
2815 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSketcher (const char* theCommand,
2816 GEOM::GEOM_List_ptr theWorkingPlane)
2818 beginService( " GEOM_Superv_i::MakeSketcher" );
2819 MESSAGE("GEOM_Superv_i::MakeSketcher");
2820 if (GEOM_List_i<GEOM::ListOfDouble>* aListImplWP =
2821 dynamic_cast<GEOM_List_i<GEOM::ListOfDouble>*>(GetServant(theWorkingPlane, myPOA).in())) {
2823 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeSketcher(theCommand, aListImplWP->GetList());
2824 endService( " GEOM_Superv_i::MakeSketcher" );
2827 endService( " GEOM_Superv_i::MakeSketcher" );
2831 //=============================================================================
2833 //=============================================================================
2834 GEOM::GEOM_Object_ptr GEOM_Superv_i::Make3DSketcher ( GEOM::GEOM_List_ptr theCoordinates)
2836 beginService( " GEOM_Superv_i::Make3DSketcher" );
2837 MESSAGE("GEOM_Superv_i::Make3DSketcher");
2838 if (GEOM_List_i<GEOM::ListOfDouble>* aListImpl =
2839 dynamic_cast<GEOM_List_i<GEOM::ListOfDouble>*>(GetServant(theCoordinates, myPOA).in())) {
2841 GEOM::GEOM_Object_ptr anObj = myCurvesOp->Make3DSketcher(aListImpl->GetList());
2842 endService( " GEOM_Superv_i::Make3DSketcher" );
2845 endService( " GEOM_Superv_i::Make3DSketcher" );
2849 //=============================== LocalOperations =============================
2850 //=============================================================================
2852 //=============================================================================
2853 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilletAll (GEOM::GEOM_Object_ptr theShape,
2856 beginService( " GEOM_Superv_i::MakeFilletAll" );
2857 MESSAGE("GEOM_Superv_i::MakeFilletAllMakeSketcher");
2859 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFilletAll(theShape, theR);
2860 endService( " GEOM_Superv_i::MakeFilletAll" );
2864 //=============================================================================
2866 //=============================================================================
2867 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilletEdges (GEOM::GEOM_Object_ptr theShape,
2869 GEOM::GEOM_List_ptr theEdges)
2871 beginService( " GEOM_Superv_i::MakeFilletEdges" );
2872 MESSAGE("GEOM_Superv_i::MakeFilletEdges");
2873 if (GEOM_List_i<GEOM::ListOfLong>* aListImplE =
2874 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theEdges, myPOA).in())) {
2876 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFilletEdges(theShape, theR, aListImplE->GetList());
2877 endService( " GEOM_Superv_i::MakeFilletEdges" );
2880 endService( " GEOM_Superv_i::MakeFilletEdges" );
2884 //=============================================================================
2885 // MakeFilletEdges R1 R2:
2886 //=============================================================================
2887 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilletEdgesR1R2 (GEOM::GEOM_Object_ptr theShape,
2888 CORBA::Double theR1,
2889 CORBA::Double theR2,
2890 GEOM::GEOM_List_ptr theEdges)
2892 beginService( " GEOM_Superv_i::MakeFilletEdgesR1R2" );
2893 MESSAGE("GEOM_Superv_i::MakeFilletEdgesR1R2");
2894 if (GEOM_List_i<GEOM::ListOfLong>* aListImplE =
2895 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theEdges, myPOA).in())) {
2897 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFilletEdgesR1R2(theShape, theR1,
2898 theR2, aListImplE->GetList());
2899 endService( " GEOM_Superv_i::MakeFilletEdgesR1R2" );
2902 endService( " GEOM_Superv_i::MakeFilletEdgesR1R2" );
2906 //=============================================================================
2908 //=============================================================================
2909 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilletFaces (GEOM::GEOM_Object_ptr theShape,
2911 GEOM::GEOM_List_ptr theFaces)
2913 beginService( " GEOM_Superv_i::MakeFilletFaces" );
2914 MESSAGE("GEOM_Superv_i::MakeFilletFaces");
2915 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
2916 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theFaces, myPOA).in())) {
2918 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFilletFaces(theShape, theR, aListImplF->GetList());
2919 endService( " GEOM_Superv_i::MakeFilletFaces" );
2922 endService( " GEOM_Superv_i::MakeFilletFaces" );
2926 //=============================================================================
2927 // MakeFilletFaces R1 R2:
2928 //=============================================================================
2929 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilletFacesR1R2 (GEOM::GEOM_Object_ptr theShape,
2930 CORBA::Double theR1,
2931 CORBA::Double theR2,
2932 GEOM::GEOM_List_ptr theFaces)
2934 beginService( " GEOM_Superv_i::MakeFilletFacesR1R2" );
2935 MESSAGE("GEOM_Superv_i::MakeFilletFacesR1R2");
2936 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
2937 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theFaces, myPOA).in())) {
2939 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFilletFacesR1R2(theShape, theR1, theR2,
2940 aListImplF->GetList());
2941 endService( " GEOM_Superv_i::MakeFilletFacesR1R2" );
2944 endService( " GEOM_Superv_i::MakeFilletFacesR1R2" );
2948 //=============================================================================
2950 //=============================================================================
2951 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFillet2D (GEOM::GEOM_Object_ptr theShape,
2953 GEOM::GEOM_List_ptr theVertexes)
2955 beginService( " GEOM_Superv_i::MakeFillet2D" );
2956 MESSAGE("GEOM_Superv_i::MakeFillet2D");
2957 if (GEOM_List_i<GEOM::ListOfLong>* aListImplV =
2958 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theVertexes, myPOA).in())) {
2960 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFillet2D(theShape, theR, aListImplV->GetList());
2961 endService( " GEOM_Superv_i::MakeFillet2D" );
2964 endService( " GEOM_Superv_i::MakeFillet2D" );
2968 //=============================================================================
2970 //=============================================================================
2971 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFillet1D (GEOM::GEOM_Object_ptr theShape,
2973 GEOM::GEOM_List_ptr theVertexes)
2975 beginService( " GEOM_Superv_i::MakeFillet1D" );
2976 MESSAGE("GEOM_Superv_i::MakeFillet1D");
2977 if (GEOM_List_i<GEOM::ListOfLong>* aListImplV =
2978 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theVertexes, myPOA).in())) {
2980 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFillet1D(theShape, theR, aListImplV->GetList());
2981 endService( " GEOM_Superv_i::MakeFillet1D" );
2984 endService( " GEOM_Superv_i::MakeFillet1D" );
2988 //=============================================================================
2990 //=============================================================================
2991 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferAll (GEOM::GEOM_Object_ptr theShape, CORBA::Double theD)
2993 beginService( " GEOM_Superv_i::MakeChamferAll" );
2994 MESSAGE("GEOM_Superv_i::MakeChamferAll");
2996 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferAll(theShape, theD);
2997 endService( " GEOM_Superv_i::MakeChamferAll" );
3001 //=============================================================================
3003 //=============================================================================
3004 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferEdge (GEOM::GEOM_Object_ptr theShape,
3005 CORBA::Double theD1, CORBA::Double theD2,
3006 CORBA::Long theFace1, CORBA::Long theFace2)
3008 beginService( " GEOM_Superv_i::MakeChamferEdge" );
3009 MESSAGE("GEOM_Superv_i::MakeChamferEdge");
3011 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferEdge(theShape, theD1, theD2, theFace1, theFace2);
3012 endService( " GEOM_Superv_i::MakeChamferEdge" );
3016 //=============================================================================
3017 // MakeChamferEdgeAD:
3018 //=============================================================================
3019 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferEdgeAD (GEOM::GEOM_Object_ptr theShape,
3020 CORBA::Double theD, CORBA::Double theAngle,
3021 CORBA::Long theFace1, CORBA::Long theFace2)
3023 beginService( " GEOM_Superv_i::MakeChamferEdgeAD" );
3024 MESSAGE("GEOM_Superv_i::MakeChamferEdgeAD");
3026 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferEdgeAD(theShape, theD, theAngle, theFace1, theFace2);
3027 endService( " GEOM_Superv_i::MakeChamferEdgeAD" );
3031 //=============================================================================
3032 // MakeChamferFaces:
3033 //=============================================================================
3034 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferFaces (GEOM::GEOM_Object_ptr theShape,
3035 CORBA::Double theD1, CORBA::Double theD2,
3036 GEOM::GEOM_List_ptr theFaces)
3038 beginService( " GEOM_Superv_i::MakeChamferFaces" );
3039 MESSAGE("GEOM_Superv_i::MakeChamferFaces");
3040 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
3041 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theFaces, myPOA).in())) {
3043 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferFaces(theShape, theD1, theD2, aListImplF->GetList());
3044 endService( " GEOM_Superv_i::MakeChamferFaces" );
3047 endService( " GEOM_Superv_i::MakeChamferFaces" );
3051 //=============================================================================
3052 // MakeChamferFacesAD:
3053 //=============================================================================
3054 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferFacesAD (GEOM::GEOM_Object_ptr theShape,
3055 CORBA::Double theD, CORBA::Double theAngle,
3056 GEOM::GEOM_List_ptr theFaces)
3058 beginService( " GEOM_Superv_i::MakeChamferFacesAD" );
3059 MESSAGE("GEOM_Superv_i::MakeChamferFacesAD");
3060 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
3061 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theFaces, myPOA).in())) {
3063 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferFacesAD(theShape, theD, theAngle, aListImplF->GetList());
3064 endService( " GEOM_Superv_i::MakeChamferFacesAD" );
3067 endService( " GEOM_Superv_i::MakeChamferFacesAD" );
3071 //=============================================================================
3072 // MakeChamferEdges:
3073 //=============================================================================
3074 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferEdges (GEOM::GEOM_Object_ptr theShape,
3075 CORBA::Double theD1, CORBA::Double theD2,
3076 GEOM::GEOM_List_ptr theEdges)
3078 beginService( " GEOM_Superv_i::MakeChamferEdges" );
3079 MESSAGE("GEOM_Superv_i::MakeChamferEdges");
3080 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
3081 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theEdges, myPOA).in())) {
3083 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferEdges(theShape, theD1, theD2, aListImplF->GetList());
3084 endService( " GEOM_Superv_i::MakeChamferEdges" );
3087 endService( " GEOM_Superv_i::MakeChamferEdges" );
3091 //=============================================================================
3092 // MakeChamferEdgesAD:
3093 //=============================================================================
3094 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferEdgesAD (GEOM::GEOM_Object_ptr theShape,
3095 CORBA::Double theD, CORBA::Double theAngle,
3096 GEOM::GEOM_List_ptr theEdges)
3098 beginService( " GEOM_Superv_i::MakeChamferEdgesAD" );
3099 MESSAGE("GEOM_Superv_i::MakeChamferEdgesAD");
3100 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
3101 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theEdges, myPOA).in())) {
3103 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferEdgesAD(theShape, theD, theAngle, aListImplF->GetList());
3104 endService( " GEOM_Superv_i::MakeChamferEdgesAD" );
3107 endService( " GEOM_Superv_i::MakeChamferEdgesAD" );
3111 //=============================================================================
3113 //=============================================================================
3114 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeArchimede (GEOM::GEOM_Object_ptr theShape,
3115 CORBA::Double theWeight,
3116 CORBA::Double theWaterDensity,
3117 CORBA::Double theMeshingDeflection)
3119 beginService( " GEOM_Superv_i::MakeArchimede" );
3120 MESSAGE("GEOM_Superv_i::MakeArchimede");
3122 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeArchimede(theShape, theWeight, theWaterDensity, theMeshingDeflection);
3123 endService( " GEOM_Superv_i::MakeArchimede" );
3127 //=============================================================================
3128 // GetSubShapeIndexMakeFilletAll:
3129 //=============================================================================
3130 CORBA::Long GEOM_Superv_i::GetSubShapeIndex (GEOM::GEOM_Object_ptr theShape,
3131 GEOM::GEOM_Object_ptr theSubShape)
3133 beginService( " GEOM_Superv_i::GetSubShapeIndex" );
3134 MESSAGE("GEOM_Superv_i::GetSubShapeIndexMakeArchimede");
3136 CORBA::Long aRes = myLocalOp->GetSubShapeIndex(theShape, theSubShape);
3137 endService( " GEOM_Superv_i::GetSubShapeIndex" );
3141 //=============================== GroupOperations =============================
3142 //=============================================================================
3144 //=============================================================================
3145 GEOM::GEOM_Object_ptr GEOM_Superv_i::CreateGroup (GEOM::GEOM_Object_ptr theMainShape,
3146 CORBA::Long theShapeType)
3148 beginService( " GEOM_Superv_i::CreateGroup" );
3149 MESSAGE("GEOM_Superv_i::CreateGroup");
3151 GEOM::GEOM_Object_ptr anObj = myGroupOp->CreateGroup(theMainShape, theShapeType);
3152 endService( " GEOM_Superv_i::CreateGroup" );
3156 //=============================================================================
3158 //=============================================================================
3159 void GEOM_Superv_i::AddObject (GEOM::GEOM_Object_ptr theGroup,
3160 CORBA::Long theSubShapeId)
3162 beginService( " GEOM_Superv_i::AddObject" );
3163 MESSAGE("GEOM_Superv_i::AddObject");
3165 myGroupOp->AddObject(theGroup, theSubShapeId);
3166 endService( " GEOM_Superv_i::AddObject" );
3169 //=============================================================================
3171 //=============================================================================
3172 void GEOM_Superv_i::RemoveObject (GEOM::GEOM_Object_ptr theGroup,
3173 CORBA::Long theSubShapeId)
3175 beginService( " GEOM_Superv_i::RemoveObject" );
3176 MESSAGE("GEOM_Superv_i::RemoveObject");
3178 myGroupOp->RemoveObject(theGroup, theSubShapeId);
3179 endService( " GEOM_Superv_i::RemoveObject" );
3182 //=============================================================================
3184 //=============================================================================
3185 CORBA::Long GEOM_Superv_i::GetType (GEOM::GEOM_Object_ptr theGroup)
3187 beginService( " GEOM_Superv_i::GetType" );
3188 MESSAGE("GEOM_Superv_i::GetType");
3190 CORBA::Long aResult = myGroupOp->GetType(theGroup);
3191 endService( " GEOM_Superv_i::GetType" );
3195 //=============================================================================
3197 //=============================================================================
3198 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetMainShape (GEOM::GEOM_Object_ptr theGroup)
3200 beginService( " GEOM_Superv_i::GetMainShape" );
3201 MESSAGE("GEOM_Superv_i::GetMainShape");
3203 GEOM::GEOM_Object_ptr anObj = myGroupOp->GetMainShape(theGroup);
3204 endService( " GEOM_Superv_i::GetMainShape" );
3208 //=============================================================================
3210 //=============================================================================
3211 GEOM::GEOM_List_ptr GEOM_Superv_i::GetObjects (GEOM::GEOM_Object_ptr theGroup)
3213 beginService( " GEOM_Superv_i::GetObjects" );
3214 MESSAGE("GEOM_Superv_i::GetObjects");
3217 GEOM::ListOfLong* aList = myGroupOp->GetObjects(theGroup);
3218 GEOM_List_i<GEOM::ListOfLong>* aListPtr = new GEOM_List_i<GEOM::ListOfLong>(*(aList));
3219 MESSAGE(" List of "<<aListPtr->GetList().length()<<" element(s)");
3220 endService( " GEOM_Superv_i::GetObjects" );
3221 return aListPtr->_this();
3224 //=============================== Advanced Operations =============================
3225 //=============================================================================
3227 //=============================================================================
3228 GEOM::GEOM_List_ptr GEOM_Superv_i::MakePipeTShape (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
3229 CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2, CORBA::Boolean theHexMesh)
3231 beginService( " GEOM_Superv_i::MakePipeTShape" );
3232 MESSAGE("GEOM_Superv_i::MakePipeTShape");
3235 GEOM::ListOfGO* aSeq = myAdvancedOp->MakePipeTShape(theR1, theW1, theL1, theR2, theW2, theL2, theHexMesh);
3236 GEOM_List_i<GEOM::ListOfGO>* aSeqPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aSeq));
3237 MESSAGE(" List of "<<aSeqPtr->GetList().length()<<" element(s)");
3238 endService( " GEOM_Superv_i::MakePipeTShape" );
3239 return aSeqPtr->_this();
3242 //=============================================================================
3243 // MakePipeTShapeWithPosition
3244 //=============================================================================
3245 GEOM::GEOM_List_ptr GEOM_Superv_i::MakePipeTShapeWithPosition (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
3246 CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2, CORBA::Boolean theHexMesh,
3247 GEOM::GEOM_Object_ptr theP1, GEOM::GEOM_Object_ptr theP2, GEOM::GEOM_Object_ptr theP3)
3249 beginService( " GEOM_Superv_i::MakePipeTShapeWithPosition" );
3250 MESSAGE("GEOM_Superv_i::MakePipeTShapeWithPosition");
3253 GEOM::ListOfGO* aSeq = myAdvancedOp->MakePipeTShapeWithPosition(theR1, theW1, theL1, theR2, theW2, theL2, theHexMesh, theP1, theP2, theP3);
3254 GEOM_List_i<GEOM::ListOfGO>* aSeqPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aSeq));
3255 MESSAGE(" List of "<<aSeqPtr->GetList().length()<<" element(s)");
3256 endService( " GEOM_Superv_i::MakePipeTShapeWithPosition" );
3257 return aSeqPtr->_this();
3260 //=============================================================================
3261 // MakePipeTShapeChamfer
3262 //=============================================================================
3263 GEOM::GEOM_List_ptr GEOM_Superv_i::MakePipeTShapeChamfer (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
3264 CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
3265 CORBA::Double theH, CORBA::Double theW, CORBA::Boolean theHexMesh)
3267 beginService( " GEOM_Superv_i::MakePipeTShapeChamfer" );
3268 MESSAGE("GEOM_Superv_i::MakePipeTShapeChamfer");
3271 GEOM::ListOfGO* aSeq = myAdvancedOp->MakePipeTShapeChamfer(theR1, theW1, theL1, theR2, theW2, theL2, theH, theW, theHexMesh);
3272 GEOM_List_i<GEOM::ListOfGO>* aSeqPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aSeq));
3273 MESSAGE(" List of "<<aSeqPtr->GetList().length()<<" element(s)");
3274 endService( " GEOM_Superv_i::MakePipeTShapeChamfer" );
3275 return aSeqPtr->_this();
3278 //=============================================================================
3279 // MakePipeTShapeChamferWithPosition
3280 //=============================================================================
3281 GEOM::GEOM_List_ptr GEOM_Superv_i::MakePipeTShapeChamferWithPosition (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
3282 CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
3283 CORBA::Double theH, CORBA::Double theW, CORBA::Boolean theHexMesh,
3284 GEOM::GEOM_Object_ptr theP1, GEOM::GEOM_Object_ptr theP2, GEOM::GEOM_Object_ptr theP3)
3286 beginService( " GEOM_Superv_i::MakePipeTShapeChamferWithPosition" );
3287 MESSAGE("GEOM_Superv_i::MakePipeTShapeChamferWithPosition");
3290 GEOM::ListOfGO* aSeq = myAdvancedOp->MakePipeTShapeChamferWithPosition(theR1, theW1, theL1, theR2, theW2, theL2, theH, theW, theHexMesh, theP1, theP2, theP3);
3291 GEOM_List_i<GEOM::ListOfGO>* aSeqPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aSeq));
3292 MESSAGE(" List of "<<aSeqPtr->GetList().length()<<" element(s)");
3293 endService( " GEOM_Superv_i::MakePipeTShapeChamferWithPosition" );
3294 return aSeqPtr->_this();
3297 //=============================================================================
3298 // MakePipeTShapeFillet
3299 //=============================================================================
3300 GEOM::GEOM_List_ptr GEOM_Superv_i::MakePipeTShapeFillet (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
3301 CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
3302 CORBA::Double theRF, CORBA::Boolean theHexMesh)
3304 beginService( " GEOM_Superv_i::MakePipeTShapeFillet" );
3305 MESSAGE("GEOM_Superv_i::MakePipeTShapeFillet");
3308 GEOM::ListOfGO* aSeq = myAdvancedOp->MakePipeTShapeFillet(theR1, theW1, theL1, theR2, theW2, theL2, theRF, theHexMesh);
3309 GEOM_List_i<GEOM::ListOfGO>* aSeqPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aSeq));
3310 MESSAGE(" List of "<<aSeqPtr->GetList().length()<<" element(s)");
3311 endService( " GEOM_Superv_i::MakePipeTShapeFillet" );
3312 return aSeqPtr->_this();
3315 //=============================================================================
3316 // MakePipeTShapeFilletWithPosition
3317 //=============================================================================
3318 GEOM::GEOM_List_ptr GEOM_Superv_i::MakePipeTShapeFilletWithPosition (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
3319 CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
3320 CORBA::Double theRF, CORBA::Boolean theHexMesh,
3321 GEOM::GEOM_Object_ptr theP1, GEOM::GEOM_Object_ptr theP2, GEOM::GEOM_Object_ptr theP3)
3323 beginService( " GEOM_Superv_i::MakePipeTShapeFilletWithPosition" );
3324 MESSAGE("GEOM_Superv_i::MakePipeTShapeFilletWithPosition");
3327 GEOM::ListOfGO* aSeq = myAdvancedOp->MakePipeTShapeFilletWithPosition(theR1, theW1, theL1, theR2, theW2, theL2, theRF, theHexMesh, theP1, theP2, theP3);
3328 GEOM_List_i<GEOM::ListOfGO>* aSeqPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aSeq));
3329 MESSAGE(" List of "<<aSeqPtr->GetList().length()<<" element(s)");
3330 endService( " GEOM_Superv_i::MakePipeTShapeFilletWithPosition" );
3331 return aSeqPtr->_this();
3334 /*@@ insert new functions before this line @@ do not remove this line @@*/
3336 //=====================================================================================
3338 //=====================================================================================
3341 PortableServer::ObjectId * GEOM_SupervEngine_factory(CORBA::ORB_ptr orb,
3342 PortableServer::POA_ptr poa,
3343 PortableServer::ObjectId * contId,
3344 const char *instanceName,
3345 const char * interfaceName)
3347 GEOM_Superv_i * myGEOM_Superv_i = new GEOM_Superv_i(orb, poa, contId, instanceName, interfaceName);
3348 //Don't understand the reason why this component is registered ???
3349 // myGEOM_Superv_i->register_name("/myGEOM_Superv");
3350 return myGEOM_Superv_i->getId() ;